ghc package update
Signed-off-by: basebuilder_pel7ppc64lebuilder0 <basebuilder@powerel.org>master
parent
2fea12f36e
commit
bda13e5cce
|
@ -0,0 +1,20 @@
|
|||
--- ghc-8.2.2/libraries/Cabal/Cabal/Distribution/Simple/Install.hs~ 2017-05-05 16:51:43.000000000 +0200
|
||||
+++ ghc-8.2.2/libraries/Cabal/Cabal/Distribution/Simple/Install.hs 2018-01-23 23:05:47.047081056 +0100
|
||||
@@ -36,7 +36,7 @@
|
||||
import Distribution.Simple.Utils
|
||||
( createDirectoryIfMissingVerbose
|
||||
, installDirectoryContents, installOrdinaryFile, isInSearchPath
|
||||
- , die', info, noticeNoWrap, warn, matchDirFileGlob )
|
||||
+ , die', info, noticeNoWrap, warn, matchDirFileGlob, debug )
|
||||
import Distribution.Simple.Compiler
|
||||
( CompilerFlavor(..), compilerFlavor )
|
||||
import Distribution.Simple.Setup
|
||||
@@ -215,7 +215,7 @@
|
||||
++ " in " ++ binPref)
|
||||
inPath <- isInSearchPath binPref
|
||||
when (not inPath) $
|
||||
- warn verbosity ("The directory " ++ binPref
|
||||
+ debug verbosity ("The directory " ++ binPref
|
||||
++ " is not in the system search path.")
|
||||
case compilerFlavor (compiler lbi) of
|
||||
GHC -> GHC.installExe verbosity lbi binPref buildPref progFix pkg_descr exe
|
|
@ -0,0 +1,22 @@
|
|||
Description: Do not emit a warning if the .haddock file is missing
|
||||
As it is quite common on Debian installations to install the -dev package
|
||||
without the -doc package.
|
||||
Author: Joachim Breitner <nomeata@debian.org>
|
||||
|
||||
Index: ghc-8.0.2/utils/ghc-pkg/Main.hs
|
||||
===================================================================
|
||||
--- ghc-8.0.2.orig/utils/ghc-pkg/Main.hs
|
||||
+++ ghc-8.0.2/utils/ghc-pkg/Main.hs
|
||||
@@ -1588,8 +1588,10 @@
|
||||
mapM_ (checkDir True "dynamic-library-dirs") (libraryDynDirs pkg)
|
||||
mapM_ (checkDir True "include-dirs") (includeDirs pkg)
|
||||
mapM_ (checkDir True "framework-dirs") (frameworkDirs pkg)
|
||||
- mapM_ (checkFile True "haddock-interfaces") (haddockInterfaces pkg)
|
||||
- mapM_ (checkDirURL True "haddock-html") (haddockHTMLs pkg)
|
||||
+ -- In Debian, it is quite normal that the package is installed without the
|
||||
+ -- documentation. Do not print a warning there.
|
||||
+ -- mapM_ (checkFile True "haddock-interfaces") (haddockInterfaces pkg)
|
||||
+ -- mapM_ (checkDirURL True "haddock-html") (haddockHTMLs pkg)
|
||||
checkDuplicateModules pkg
|
||||
checkExposedModules db_stack pkg
|
||||
checkOtherModules pkg
|
|
@ -0,0 +1,43 @@
|
|||
This is an attempt to make GHC build reproducible. The name of .c files may end
|
||||
up in the resulting binary (in the debug section), but not the directory.
|
||||
|
||||
Instead of using the process id, create a hash from the command line arguments,
|
||||
and assume that is going to be unique.
|
||||
|
||||
Index: ghc-8.0.2/compiler/main/SysTools.hs
|
||||
===================================================================
|
||||
--- ghc-8.0.2.orig/compiler/main/SysTools.hs
|
||||
+++ ghc-8.0.2/compiler/main/SysTools.hs
|
||||
@@ -65,6 +65,7 @@
|
||||
import Util
|
||||
import DynFlags
|
||||
import Exception
|
||||
+import Fingerprint
|
||||
|
||||
import LlvmCodeGen.Base (llvmVersionStr, supportedLlvmVersion)
|
||||
|
||||
@@ -1145,8 +1146,8 @@
|
||||
mapping <- readIORef dir_ref
|
||||
case Map.lookup tmp_dir mapping of
|
||||
Nothing -> do
|
||||
- pid <- getProcessID
|
||||
- let prefix = tmp_dir </> "ghc" ++ show pid ++ "_"
|
||||
+ pid <- getStableProcessID
|
||||
+ let prefix = tmp_dir </> "ghc" ++ pid ++ "_"
|
||||
mask_ $ mkTempDir prefix
|
||||
Just dir -> return dir
|
||||
where
|
||||
@@ -1562,6 +1563,13 @@
|
||||
getProcessID = System.Posix.Internals.c_getpid >>= return . fromIntegral
|
||||
#endif
|
||||
|
||||
+-- Debian-specific hack to get reproducible output, by not using the "random"
|
||||
+-- pid, but rather something determinisic
|
||||
+getStableProcessID :: IO String
|
||||
+getStableProcessID = do
|
||||
+ args <- getArgs
|
||||
+ return $ take 4 $ show $ fingerprintString $ unwords args
|
||||
+
|
||||
-- Divvy up text stream into lines, taking platform dependent
|
||||
-- line termination into account.
|
||||
linesPlatform :: String -> [String]
|
|
@ -0,0 +1,27 @@
|
|||
Description: Use native x86_64 instructions on x32
|
||||
This patch enables a few native 64-bit integer instructions
|
||||
on x32 which are available on this architecture despite using
|
||||
32-bit pointers. These instructions are present on x86_64 but
|
||||
not on x86 and ghc checks the size of (void *) to determine
|
||||
that. This method fails on x32 since despite using 32-bit
|
||||
pointers and hence sizeof(void *) == 4, it still uses the
|
||||
full x86_64 instruction set and software-emulated variants
|
||||
of the aforementioned 64-bit integer instructions are
|
||||
therefore not present in the toolchain which will make ghc
|
||||
fail to build on x32.
|
||||
See: https://ghc.haskell.org/trac/ghc/ticket/11571
|
||||
.
|
||||
|
||||
Index: ghc-8.0.2/rts/RtsSymbols.c
|
||||
===================================================================
|
||||
--- ghc-8.0.2.orig/rts/RtsSymbols.c
|
||||
+++ ghc-8.0.2/rts/RtsSymbols.c
|
||||
@@ -857,7 +857,7 @@
|
||||
|
||||
|
||||
// 64-bit support functions in libgcc.a
|
||||
-#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32)
|
||||
+#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32) && !(defined(__x86_64__) && defined(__ILP32__))
|
||||
#define RTS_LIBGCC_SYMBOLS \
|
||||
SymI_NeedsProto(__divdi3) \
|
||||
SymI_NeedsProto(__udivdi3) \
|
|
@ -0,0 +1,11 @@
|
|||
--- ghc-7.8.3/aclocal.m4~ 2014-07-10 13:27:16.000000000 +0900
|
||||
+++ ghc-7.8.3/aclocal.m4 2014-11-05 12:19:08.530044128 +0900
|
||||
@@ -408,7 +408,7 @@
|
||||
)],
|
||||
[changequote(, )dnl
|
||||
ARM_ISA=ARMv7
|
||||
- ARM_ISA_EXT="[VFPv3,NEON]"
|
||||
+ ARM_ISA_EXT="[VFPv3D16]"
|
||||
changequote([, ])dnl
|
||||
])
|
||||
])
|
|
@ -0,0 +1,11 @@
|
|||
--- ghc-8.2.2/configure.ac~ 2017-11-21 05:22:42.000000000 +0900
|
||||
+++ ghc-8.2.2/configure.ac 2018-05-28 12:37:35.296728423 +0900
|
||||
@@ -745,7 +745,7 @@
|
||||
AC_CACHE_CHECK([for version of sphinx-build], fp_cv_sphinx_version,
|
||||
changequote(, )dnl
|
||||
[if test -n "$SPHINXBUILD"; then
|
||||
- fp_cv_sphinx_version=`"$SPHINXBUILD" --version 2>&1 | sed 's/Sphinx\( (sphinx-build)\)\? v\?\([0-9]\.[0-9]\.[0-9]\)/\2/' | head -n1`;
|
||||
+ fp_cv_sphinx_version=`"$SPHINXBUILD" --version 2>&1 | sed 's/.* v\?\([0-9]\.[0-9]\.[0-9]\)/\1/' | head -n1`;
|
||||
fi;
|
||||
changequote([, ])dnl
|
||||
])
|
|
@ -0,0 +1,10 @@
|
|||
--- ghc-7.6.3/libraries/gen_contents_index~ 2013-04-19 06:22:46.000000000 +0900
|
||||
+++ ghc-7.6.3/libraries/gen_contents_index 2013-04-22 12:07:48.922152864 +0900
|
||||
@@ -60,6 +60,6 @@
|
||||
done
|
||||
else
|
||||
- HADDOCK=../../../../../bin/haddock
|
||||
+ HADDOCK=/usr/bin/haddock
|
||||
# We don't want the GHC API to swamp the index
|
||||
HADDOCK_FILES=`ls -1 */*.haddock | grep -v '/ghc\.haddock' | sort`
|
||||
HADDOCK_ARGS="-p prologue.txt"
|
|
@ -0,0 +1,12 @@
|
|||
--- ghc-8.4.3/mk/warnings.mk~ 2018-02-04 02:30:11.000000000 +0900
|
||||
+++ ghc-8.4.3/mk/warnings.mk 2018-09-29 14:33:37.607884921 +0900
|
||||
@@ -1,6 +1,6 @@
|
||||
# See Note [Order of warning flags].
|
||||
-SRC_CC_OPTS += -Wall $(WERROR)
|
||||
+#SRC_CC_OPTS += -Wall $(WERROR)
|
||||
SRC_HC_OPTS += -Wall
|
||||
# Don't add -Werror to SRC_HC_OPTS_STAGE0 (or SRC_HC_OPTS), because otherwise
|
||||
# validate may unnecessarily fail when booting with an older compiler.
|
||||
# It would be better to only exclude certain warnings from becoming errors
|
||||
|
||||
Diff finished. Sat Sep 29 14:35:43 2018
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue