X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=sidebyside;f=ghc%2Fmk%2Fversion.mk;h=33d12fc1ea8d1d4b2a21969827d266b72a35f653;hb=eddc44f9fa38b6258f116121553142477efa6bc6;hp=5c62e6dc4d0888237aa1104dc0e502b47edd0824;hpb=d089f01c26759e700f84d5faf934c1ccedcfea3e;p=ghc-hetmet.git diff --git a/ghc/mk/version.mk b/ghc/mk/version.mk index 5c62e6d..33d12fc 100644 --- a/ghc/mk/version.mk +++ b/ghc/mk/version.mk @@ -16,34 +16,44 @@ # # Ghc project settings: # -# *ProjectVersion is treated as a *string* -# *ProjectVersionInt is treated as an *integer* (for cpp defines) +# ProjectVersion is treated as a *string* +# ProjectVersionInt is treated as an *integer* (for cpp defines) + +# Versioning scheme: A.BB.C +# A: major version, any number of digits +# B: minor version, two digits padded with leading zeros +# C: patchlevel, one digit, omitted if zero. +# +# ProjectVersionInt does *not* contain the patchlevel (rationale: this +# figure is used for conditional compilations, and library interfaces +# etc. are not supposed to change between patchlevels). +# +# The ProjectVersionInt is included in interface files, and GHC +# checks that it's reading interface generated by the same ProjectVersion +# as itself. It does this even though interface file syntax may not +# change between versions. Rationale: calling conventions or other +# random .o-file stuff might change even if the .hi syntax doesn't ProjectName = The Glorious Glasgow Haskell Compilation System ProjectNameShort = ghc -ProjectVersion = 4.03 -ProjectVersionInt = 403 -ProjectPatchLevel = 0 +ProjectVersion = 5.03 +ProjectVersionInt = 503 +# Interface file version (hi-boot files only) # -# Optionally, you can get the compiler driver to check the -# version consistency between the object files being linked. -# -# Major numbers must always agree, minor disagreements yield a warning. -# -# These version numbers are currently separate from the project -# version - one (semi-valid) reason for having them separate is that -# object files produced by different versions of the compiler need -# not be incompatible.. -HscMajorVersion=40 -HscMinorVersion=0 -CcMajorVersion=36 -CcMinorVersion=1 - +# A GHC built with HscIfaceFileVersion=n will look for +# M.hi-boot-n, and only then for +# M.hi-boot. +# (It'll be happy with the latter if the former doesn't exist.) # -# Interface file version # -# If you should happen to make changes to the interface file format -# that will break compatibility with older versions, up this variable. -# +# This variable is used ONLY for hi-boot files. Its only purpose is +# to allow you to have a single directory with multiple .hi-boot files +# for the same module, each corresponding to a different version of +# GHC. +# +# HscIfaceFileVersion is propagated to hsc via +# ghc/compiler/main/Config.hs, which is automatically generated by +# ghc/compiler/Makefile. + HscIfaceFileVersion=5