aboutsummaryrefslogtreecommitdiffstats
path: root/community/ghc/0004-reproducible-tmp-names.patch
diff options
context:
space:
mode:
authorMitch Tishmack <mitch.tishmack@gmail.com>2017-07-30 11:39:11 -0500
committerNatanael Copa <ncopa@alpinelinux.org>2018-06-12 07:36:35 +0000
commit0194bb7bf46305018dcebec6f44468c28da2c401 (patch)
treef28364d33aff2c323a02aab15c4d38ba15c55827 /community/ghc/0004-reproducible-tmp-names.patch
parent32571b1d45067ededceb0ca113967b9d9ee0ab37 (diff)
downloadaports-0194bb7bf46305018dcebec6f44468c28da2c401.tar.bz2
aports-0194bb7bf46305018dcebec6f44468c28da2c401.tar.xz
community/ghc: upgrade to 8.4.2
There is only one package that depends on ghc right now, and that is community/cabal. Removed armhf support for now as there appear to be overall issues with that architecture across libc's. Additionally, for 8.6 to build we will need to update to at least 8.2. As such, dropping support for armhf makes the most sense for right now. I'll continue working with upstream to fix it. Removed the haskell-* provides as that was originally a plan to follow what arch was doing for their haskell setup. In lieu of that not providing value removing them entirely. The ghc test suite was updated to use python 3 from python 2. Finally really late in the release candidate cycle a change to ld detection necessitated the need to pass --disable-ld-override to the configure of ghc. Without that in place there appears to be some shenanigans going on in exported symbols. Ghc upstream ticket: https://ghc.haskell.org/trac/ghc/ticket/13958 Offending commmit: https://git.haskell.org/ghc.git/commitdiff/2785ef0e31a123400da950ffafebe6cb1ce3f4eb
Diffstat (limited to 'community/ghc/0004-reproducible-tmp-names.patch')
-rw-r--r--community/ghc/0004-reproducible-tmp-names.patch43
1 files changed, 0 insertions, 43 deletions
diff --git a/community/ghc/0004-reproducible-tmp-names.patch b/community/ghc/0004-reproducible-tmp-names.patch
deleted file mode 100644
index a0417f145d..0000000000
--- a/community/ghc/0004-reproducible-tmp-names.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-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/compiler/main/SysTools.hs
-===================================================================
---- ghc.orig/compiler/main/SysTools.hs 2016-04-23 17:57:12.812255430 +0200
-+++ ghc/compiler/main/SysTools.hs 2016-04-23 17:57:12.808255337 +0200
-@@ -65,6 +65,7 @@
- import Util
- import DynFlags
- import Exception
-+import Fingerprint
-
- import LlvmCodeGen.Base (llvmVersionStr, supportedLlvmVersion)
-
-@@ -1158,8 +1159,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
-@@ -1575,6 +1576,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]