Accepting request 356034 from devel:languages:haskell:lts

- update Cabal to 1.22.7.0
- refresh u_Cabal_update.patch 
* Backport #3012 to the 1.22 branch
* Add foldl' import
* The Cabal part for fully gcc-like response files

OBS-URL: https://build.opensuse.org/request/show/356034
OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc?expand=0&rev=207
This commit is contained in:
Ondřej Súkup 2016-01-26 12:15:10 +00:00 committed by Git OBS Bridge
parent e08f7219d2
commit 6d6f02086b
3 changed files with 89 additions and 5 deletions

View File

@ -1,3 +1,12 @@
-------------------------------------------------------------------
Tue Jan 26 08:22:59 UTC 2016 - mimi.vx@gmail.com
- update Cabal to 1.22.7.0
- refresh u_Cabal_update.patch
* Backport #3012 to the 1.22 branch
* Add foldl' import
* The Cabal part for fully gcc-like response files
-------------------------------------------------------------------
Tue Jan 5 18:54:25 UTC 2016 - peter.trommler@ohm-hochschule.de

View File

@ -125,7 +125,7 @@ To install all of GHC install package ghc.
%global ghc_pkg_c_deps ghc-compiler = %{ghc_version_override}-%{release}
%if %{defined ghclibdir}
%ghc_lib_subpackage Cabal 1.22.6.0
%ghc_lib_subpackage Cabal 1.22.7.0
%ghc_lib_subpackage array 0.5.1.0
%ghc_lib_subpackage -c gmp-devel,libffi-devel base 4.8.2.0
%ghc_lib_subpackage binary 0.7.5.0

View File

@ -1,14 +1,23 @@
diff --git a/ghc-7.10.3.old/libraries/Cabal/Cabal/Cabal.cabal b/ghc-7.10.3/libraries/Cabal/Cabal/Cabal.cabal
index b498ca0..f3b3c32 100644
index b498ca0..bf64bd5 100644
--- a/ghc-7.10.3.old/libraries/Cabal/Cabal/Cabal.cabal
+++ b/ghc-7.10.3/libraries/Cabal/Cabal/Cabal.cabal
@@ -1,5 +1,5 @@
name: Cabal
-version: 1.22.5.0
+version: 1.22.6.0
+version: 1.22.7.0
copyright: 2003-2006, Isaac Jones
2005-2011, Duncan Coutts
license: BSD3
@@ -19,7 +19,7 @@ description:
organizing, and cataloging Haskell libraries and tools.
category: Distribution
cabal-version: >=1.10
-build-type: Custom
+build-type: Simple
-- Even though we do use the default Setup.lhs it's vital to bootstrapping
-- that we build Setup.lhs using our own local Cabal source code.
@@ -145,7 +145,7 @@ library
if flag(bundled-binary-generic)
build-depends: binary >= 0.5 && < 0.7
@ -77,6 +86,66 @@ index 444c851..270e2c3 100644
-- Build static/dynamic object files for TH, if needed.
when compileForTH $
diff --git a/ghc-7.10.3.old/libraries/Cabal/Cabal/Distribution/Simple/Haddock.hs b/ghc-7.10.3/libraries/Cabal/Cabal/Distribution/Simple/Haddock.hs
index 095d6b8..2d09292 100644
--- a/ghc-7.10.3.old/libraries/Cabal/Cabal/Distribution/Simple/Haddock.hs
+++ b/ghc-7.10.3/libraries/Cabal/Cabal/Distribution/Simple/Haddock.hs
@@ -84,14 +84,16 @@ import Language.Haskell.Extension
import Control.Monad ( when, forM_ )
+import Data.Char ( isSpace )
import Data.Either ( rights )
import Data.Monoid
+import Data.Foldable ( foldl' )
import Data.Maybe ( fromMaybe, listToMaybe )
import System.Directory (doesFileExist)
import System.FilePath ( (</>), (<.>)
, normalise, splitPath, joinPath, isAbsolute )
-import System.IO (hClose, hPutStrLn, hSetEncoding, utf8)
+import System.IO (hClose, hPutStr, hPutStrLn, hSetEncoding, utf8)
import Distribution.Version
-- ------------------------------------------------------------------------------
@@ -467,7 +469,7 @@ renderArgs :: Verbosity
-> IO a
renderArgs verbosity tmpFileOpts version comp args k = do
let haddockSupportsUTF8 = version >= Version [2,14,4] []
- haddockSupportsResponseFiles = version > Version [2,16,1] []
+ haddockSupportsResponseFiles = version > Version [2,16,2] []
createDirectoryIfMissingVerbose verbosity True outputDir
withTempFileEx tmpFileOpts outputDir "haddock-prologue.txt" $
\prologueFileName h -> do
@@ -482,7 +484,7 @@ renderArgs verbosity tmpFileOpts version comp args k = do
withTempFileEx tmpFileOpts outputDir "haddock-response.txt" $
\responseFileName hf -> do
when haddockSupportsUTF8 (hSetEncoding hf utf8)
- mapM_ (hPutStrLn hf) renderedArgs
+ hPutStr hf $ unlines $ map escapeArg renderedArgs
hClose hf
let respFile = "@" ++ responseFileName
k ([respFile], result)
@@ -500,6 +502,19 @@ renderArgs verbosity tmpFileOpts version comp args k = do
pkgstr = display $ packageName pkgid
pkgid = arg argPackageName
arg f = fromFlag $ f args
+ -- Support a gcc-like response file syntax. Each separate
+ -- argument and its possible parameter(s), will be separated in the
+ -- response file by an actual newline; all other whitespace,
+ -- single quotes, double quotes, and the character used for escaping
+ -- (backslash) are escaped. The called program will need to do a similar
+ -- inverse operation to de-escape and re-constitute the argument list.
+ escape cs c
+ | isSpace c
+ || '\\' == c
+ || '\'' == c
+ || '"' == c = c:'\\':cs -- n.b., our caller must reverse the result
+ | otherwise = c:cs
+ escapeArg = reverse . foldl' escape []
renderPureArgs :: Version -> Compiler -> HaddockArgs -> [String]
renderPureArgs version comp args = concat
diff --git a/ghc-7.10.3.old/libraries/Cabal/Cabal/Distribution/Version.hs b/ghc-7.10.3/libraries/Cabal/Cabal/Distribution/Version.hs
index 1123749..e5c2e28 100644
--- a/ghc-7.10.3.old/libraries/Cabal/Cabal/Distribution/Version.hs
@ -124,10 +193,16 @@ index 1123749..e5c2e28 100644
{-# DEPRECATED AnyVersion "Use 'anyVersion', 'foldVersionRange' or 'asVersionIntervals'" #-}
{-# DEPRECATED ThisVersion "use 'thisVersion', 'foldVersionRange' or 'asVersionIntervals'" #-}
diff --git a/ghc-7.10.3.old/libraries/Cabal/Cabal/changelog b/ghc-7.10.3/libraries/Cabal/Cabal/changelog
index f5fb8ff..e3ab68c 100644
index f5fb8ff..57b3450 100644
--- a/ghc-7.10.3.old/libraries/Cabal/Cabal/changelog
+++ b/ghc-7.10.3/libraries/Cabal/Cabal/changelog
@@ -1,3 +1,6 @@
@@ -1,3 +1,12 @@
+1.22.7.0 Ryan Thomas <ryan@ryant.org> January 2016
+ * Backport #3012 to the 1.22 branch
+ * Cabal.cabal: change build-type to Simple
+ * Add foldl' import
+ * The Cabal part for fully gcc-like response files
+
+1.22.6.0
+ * Relax upper bound to allow upcoming binary-0.8
+