diff --git a/Build/BuildVersion.hs b/Build/BuildVersion.hs new file mode 100644 index 0000000000..0093f5b5b1 --- /dev/null +++ b/Build/BuildVersion.hs @@ -0,0 +1,6 @@ +{- Outputs the version of git-annex that was built, for use by + - autobuilders. Note that this includes the git rev. -} + +import Build.Version + +main = putStr =<< getVersion diff --git a/Build/Configure.hs b/Build/Configure.hs index 116a44215f..70cce74a56 100644 --- a/Build/Configure.hs +++ b/Build/Configure.hs @@ -17,7 +17,7 @@ import qualified Git.Version tests :: [TestCase] tests = - [ TestCase "version" getVersion + [ TestCase "version" (Config "packageversion" . StringConfig <$> getVersion) , TestCase "UPGRADE_LOCATION" getUpgradeLocation , TestCase "git" $ requireCmd "git" "git --version >/dev/null" , TestCase "git version" getGitVersion diff --git a/Build/Version.hs b/Build/Version.hs index 7ff2fe662e..0bcb4a520e 100644 --- a/Build/Version.hs +++ b/Build/Version.hs @@ -25,10 +25,10 @@ isReleaseBuild = isJust <$> catchMaybeIO (getEnv "RELEASE_BUILD") - - If git or a git repo is not available, or something goes wrong, - or this is a release build, just use the version from the changelog. -} -getVersion :: Test +getVersion :: IO String getVersion = do changelogversion <- getChangelogVersion - version <- ifM (isReleaseBuild) + ifM (isReleaseBuild) ( return changelogversion , catchDefaultIO changelogversion $ do let major = takeWhile (/= '.') changelogversion @@ -40,7 +40,6 @@ getVersion = do then return changelogversion else return $ concat [ major, ".", autoversion ] ) - return $ Config "packageversion" (StringConfig version) getChangelogVersion :: IO String getChangelogVersion = do diff --git a/Makefile b/Makefile index e56cd7cdaf..5692542997 100644 --- a/Makefile +++ b/Makefile @@ -83,7 +83,8 @@ clean: rm -rf tmp dist git-annex $(mans) configure *.tix .hpc \ doc/.ikiwiki html dist tags Build/SysConfig.hs build-stamp \ Setup Build/InstallDesktopFile Build/EvilSplicer \ - Build/Standalone Build/OSXMkLibs Build/LinuxMkLibs Build/DistributionUpdate \ + Build/Standalone Build/OSXMkLibs Build/LinuxMkLibs \ + Build/DistributionUpdate Build/BuildVersion \ git-union-merge .tasty-rerun-log find . -name \*.o -exec rm {} \; find . -name \*.hi -exec rm {} \;