# # Project-specific version information. # # Note: # this config file is intended to centralise all # project version information. To bump up the version # info on your package, edit this file and recompile # all the dependents. This file lives in the source tree. # # In the case of the ghc/ project, if you make changes # to this file, you'll *have to* to rebuild the driver # in your build tree(s). The ghc/driver/Makefile has got # a dependency that will force such rebuilding to happen, # but it does require you to do a 'make' in ghc/driver. # # Ghc project settings: # # 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.11 ProjectVersionInt = 411 # # 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 # Interface file version (hi-boot files only) # # 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.) # # 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. # # It is propagated to hsc like this: # * This file is included in ghc/Makefile # * ghc/Makefile has a main/Constants.lhs-specific flag # -DHscIfaceFileVersion=$(HscIfaceFileVersion) # * main/Constants.lhs defines # interfaceFileFormatVersion = HscIfaceFileVersion # So there! HscIfaceFileVersion=5