diff options
author | Herbert Valerio Riedel <hvr@gnu.org> | 2014-04-15 11:09:45 +0200 |
---|---|---|
committer | Herbert Valerio Riedel <hvr@gnu.org> | 2014-04-16 17:00:40 +0200 |
commit | 8992d5269804b727fb77249511e89df678526907 (patch) | |
tree | d39461686c7a22c8415b0a8dd630a4457a983ba7 | |
parent | a107737f84f6738a9fa572ec9c5da49c9db8a8b5 (diff) | |
download | haskell-8992d5269804b727fb77249511e89df678526907.tar.gz |
Update Cabal submodule to tip of v1.20 branch
This corresponds to the RC of the soon-to-be Cabal 1.20 release
One noteworthy change is the removal of the `--with-ranlib` flag
requiring a small adaptation in the GHC build system.
Moreover two new licences were added, MPL and BSD2.
Due to https://github.com/haskell/cabal/issues/1622 Cabal-1.20 now
allows to strip libraries as well, this doesn't work well with
`ghc-cabal copy` being fed a `":"` strip-command argument which was
simply ignored in the past. The current code tries to retain this
semantics as backward compat. However, this needs more investigation as
I'm not sure if/why the `test_bindist` step doesn't want the libraries
to be stripped on installation.
Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
m--------- | libraries/Cabal | 0 | ||||
-rw-r--r-- | libraries/bin-package-db/Distribution/InstalledPackageInfo/Binary.hs | 6 | ||||
-rw-r--r-- | libraries/bin-package-db/bin-package-db.cabal | 2 | ||||
-rw-r--r-- | rules/build-package-data.mk | 1 | ||||
-rw-r--r-- | utils/ghc-cabal/Main.hs | 10 | ||||
-rw-r--r-- | utils/ghc-cabal/ghc-cabal.cabal | 2 | ||||
-rw-r--r-- | utils/ghctags/Main.hs | 4 | ||||
-rw-r--r-- | utils/ghctags/ghctags.cabal | 2 |
8 files changed, 19 insertions, 8 deletions
diff --git a/libraries/Cabal b/libraries/Cabal -Subproject c226c0de042999bbe4c5c339c6c28a9be7f0c6d +Subproject aaa6183dba81d77637dff84f83136639d40f268 diff --git a/libraries/bin-package-db/Distribution/InstalledPackageInfo/Binary.hs b/libraries/bin-package-db/Distribution/InstalledPackageInfo/Binary.hs index 27e23d8959..ab7fcf5652 100644 --- a/libraries/bin-package-db/Distribution/InstalledPackageInfo/Binary.hs +++ b/libraries/bin-package-db/Distribution/InstalledPackageInfo/Binary.hs @@ -132,7 +132,9 @@ instance Binary License where put OtherLicense = do putWord8 7 put (Apache v) = do putWord8 8; put v put (AGPL v) = do putWord8 9; put v - put (UnknownLicense str) = do putWord8 10; put str + put BSD2 = do putWord8 10 + put (MPL v) = do putWord8 11; put v + put (UnknownLicense str) = do putWord8 12; put str get = do n <- getWord8 @@ -147,6 +149,8 @@ instance Binary License where 7 -> return OtherLicense 8 -> do v <- get; return (Apache v) 9 -> do v <- get; return (AGPL v) + 10 -> return BSD2 + 11 -> do v <- get; return (MPL v) _ -> do str <- get; return (UnknownLicense str) instance Binary Version where diff --git a/libraries/bin-package-db/bin-package-db.cabal b/libraries/bin-package-db/bin-package-db.cabal index 1d3054ce85..44408a77b6 100644 --- a/libraries/bin-package-db/bin-package-db.cabal +++ b/libraries/bin-package-db/bin-package-db.cabal @@ -19,7 +19,7 @@ Library { build-depends: base >= 4 && < 5 build-depends: binary >= 0.5 && < 0.8, - Cabal >= 1.18 && < 1.19 + Cabal >= 1.20 && < 1.21 extensions: CPP } diff --git a/rules/build-package-data.mk b/rules/build-package-data.mk index aea2adbeb5..2e610014a2 100644 --- a/rules/build-package-data.mk +++ b/rules/build-package-data.mk @@ -94,7 +94,6 @@ endif $1_$2_CONFIGURE_OPTS += --configure-option=--with-cc="$$(CC_STAGE$3)" $1_$2_CONFIGURE_OPTS += --with-ar="$$(AR_STAGE$3)" -$1_$2_CONFIGURE_OPTS += --with-ranlib="$$(REAL_RANLIB_CMD)" $1_$2_CONFIGURE_OPTS += $$(if $$(ALEX),--with-alex="$$(ALEX)") $1_$2_CONFIGURE_OPTS += $$(if $$(HAPPY),--with-happy="$$(HAPPY)") diff --git a/utils/ghc-cabal/Main.hs b/utils/ghc-cabal/Main.hs index a7d9e60051..cfd3d27990 100644 --- a/utils/ghc-cabal/Main.hs +++ b/utils/ghc-cabal/Main.hs @@ -12,6 +12,7 @@ import Distribution.Simple.Configure import Distribution.Simple.LocalBuildInfo import Distribution.Simple.Program import Distribution.Simple.Program.HcPkg +import Distribution.Simple.Setup (ConfigFlags(configStripLibs), fromFlag, toFlag) import Distribution.Simple.Utils (defaultPackageDesc, writeFileAtomic, toUTF8) import Distribution.Simple.Build (writeAutogenFiles) import Distribution.Simple.Register @@ -174,8 +175,17 @@ doCopy directory distDir let lbi' = lbi { withPrograms = progs', installDirTemplates = idts, + configFlags = cfg, + stripLibs = fromFlag (configStripLibs cfg), withSharedLib = withSharedLibs } + + -- This hack allows to interpret the "strip" + -- command-line argument being set to ':' to signify + -- disabled library stripping + cfg | strip == ":" = (configFlags lbi) { configStripLibs = toFlag False } + | otherwise = configFlags lbi + f pd lbi' us flags doRegister :: FilePath -> FilePath -> FilePath -> FilePath diff --git a/utils/ghc-cabal/ghc-cabal.cabal b/utils/ghc-cabal/ghc-cabal.cabal index 10d6e0a9e4..74399ce390 100644 --- a/utils/ghc-cabal/ghc-cabal.cabal +++ b/utils/ghc-cabal/ghc-cabal.cabal @@ -17,7 +17,7 @@ Executable ghc-cabal Build-Depends: base >= 3 && < 5, bytestring >= 0.10 && < 0.11, - Cabal >= 1.18 && < 1.19, + Cabal >= 1.20 && < 1.21, directory >= 1.1 && < 1.3, filepath >= 1.2 && < 1.4 diff --git a/utils/ghctags/Main.hs b/utils/ghctags/Main.hs index 9bf1a2d0c3..a67891e16a 100644 --- a/utils/ghctags/Main.hs +++ b/utils/ghctags/Main.hs @@ -20,7 +20,6 @@ import SrcLoc import Distribution.Simple.GHC ( componentGhcOptions ) import Distribution.Simple.Configure ( getPersistBuildConfig ) -import Distribution.Simple.Compiler ( compilerVersion ) import Distribution.Simple.Program.GHC ( renderGhcOptions ) import Distribution.PackageDescription ( library, libBuildInfo ) import Distribution.Simple.LocalBuildInfo @@ -191,8 +190,7 @@ flagsFromCabal distPref = do let bi = libBuildInfo lib odir = buildDir lbi opts = componentGhcOptions V.normal lbi bi clbi odir - version = compilerVersion (compiler lbi) - in return $ renderGhcOptions version opts + in return $ renderGhcOptions (compiler lbi) opts _ -> error "no library" ---------------------------------------------------------------- diff --git a/utils/ghctags/ghctags.cabal b/utils/ghctags/ghctags.cabal index 07221d3e08..0e97ccade6 100644 --- a/utils/ghctags/ghctags.cabal +++ b/utils/ghctags/ghctags.cabal @@ -17,6 +17,6 @@ Executable ghctags Build-Depends: base >= 4 && < 5, containers, - Cabal, + Cabal >= 1.20 && <1.21, ghc |