X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fmk%2Fversion.mk;h=ec5ef862d50c910a1e5bf8bfebf2a0bf079e0b64;hb=d70fa1fd91bfab699ac28173d397d0fed893b9c0;hp=cfda63ae7733cb3e0601667663fdd9a87119fe56;hpb=f1553c47e89e858cd4576732582e6230730adf53;p=ghc-hetmet.git diff --git a/ghc/mk/version.mk b/ghc/mk/version.mk index cfda63a..ec5ef86 100644 --- a/ghc/mk/version.mk +++ b/ghc/mk/version.mk @@ -19,43 +19,42 @@ # 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 +# Versioning scheme: A.B.C +# A: major version, decimal, any number of digits +# B: minor version, decimal, any number of digits # 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.07 -ProjectVersionInt = 407 +ProjectVersion = @PACKAGE_VERSION@ +ProjectVersionInt = @ProjectVersionInt@ +ProjectPatchLevel = 0 +# 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. -# -HscIfaceFileVersion=5 -# But watch out: interface file format after Simon's renamer -# hacking isn't the same as before, but it may not make -# any difference for the GHC boot files. -# May 1999 +# 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=6