Skip to content
Commits on Source (20)
ghc (8.2.2-3) unstable; urgency=medium
* Upload to unstable.
-- Clint Adams <clint@debian.org> Sun, 08 Apr 2018 16:24:00 -0400
ghc (8.2.2-2) experimental; urgency=medium
* Merge 8.0.2-12 unreleased changes.
-- Clint Adams <clint@debian.org> Sat, 07 Apr 2018 08:08:41 -0400
ghc (8.2.2-1) experimental; urgency=medium
* Merge 8.0.2-11 unreleased changes
* New upstream release, patch refresh
* Fixup regex fix in watch file
-- Gianfranco Costamagna <locutusofborg@debian.org> Mon, 27 Nov 2017 12:08:38 +0100
ghc (8.2.1-2) experimental; urgency=medium
[ Sean Whitton ]
* Upload to experimental again, after merging in changes from unstable.
- Refresh patches.
- Drop osdecommitmemory-compat.patch from series file
Merged upstream.
[ Clint Adams ]
* Drop avoid-CrossCompilerPrefix-stage2.patch.
-- Clint Adams <clint@debian.org> Sun, 17 Sep 2017 07:52:14 -0400
ghc (8.2.1-1) experimental; urgency=medium
* New upstream release
-- Sean Whitton <spwhitton@spwhitton.name> Fri, 15 Sep 2017 17:15:49 -0700
ghc (8.2.0~20170507-3) experimental; urgency=medium
* 8.2.1-rc2.
- Switches to LLVM 3.9.
-- Clint Adams <clint@debian.org> Wed, 12 Jul 2017 17:51:16 -0400
ghc (8.0.2-12) UNRELEASED; urgency=medium
[ Ilias Tsitsimpis ]
......@@ -60,6 +106,19 @@ ghc (8.0.2-6) unstable; urgency=medium
-- Clint Adams <clint@debian.org> Fri, 25 Aug 2017 08:36:53 -0400
ghc (8.2.0~20170507-2) experimental; urgency=medium
* 8.2.1-rc2.
- Switches to LLVM 3.9.
-- Clint Adams <clint@debian.org> Wed, 12 Jul 2017 17:51:16 -0400
ghc (8.2.0~20170507-1) experimental; urgency=medium
* 8.2.1-rc2.
-- Clint Adams <clint@debian.org> Wed, 12 Jul 2017 17:51:16 -0400
ghc (8.0.2-5) unstable; urgency=medium
* Patch from James Clarke to fix powerpc breakage caused by
......
......@@ -12,7 +12,7 @@ Build-Depends:
pkg-config,
ghc:native (>= 7.8),
libgmp-dev,
llvm-3.7 [arm64 armel armhf],
llvm-3.9 [arm64 armel armhf],
libffi-dev,
binutils [arm64 armel armhf],
libncurses5-dev,
......@@ -31,7 +31,7 @@ Vcs-Browser: https://salsa.debian.org/haskell-team/DHG_packages/tree/master/p/gh
Package: ghc
Architecture: any
Depends:
llvm-3.7 [arm64 armel armhf],
llvm-3.9 [arm64 armel armhf],
gcc,
libgmp-dev,
libffi-dev,
......@@ -53,7 +53,7 @@ Provides:
Replaces: ghc6 (<< 7), ghc-dynamic (<< 7.8), ghc-haddock (<< 7.10)
Conflicts: ghc6 (<< 7), ghc-dynamic (<< 7.8), libghc-cabal-dev (<< 1.24.2.1), ${conflicting-devs}
Breaks: cabal-install (<< 1.22), haskell-devscripts (<< 0.8.13), ghc-doc (<< 7.10), ghc-haddock (<< 7.10)
Suggests: perl, ghc-prof, ghc-doc, haskell-doc, llvm-3.7
Suggests: perl, ghc-prof, ghc-doc, haskell-doc, llvm-3.9
Description: The Glasgow Haskell Compilation system
The Glorious Glasgow Haskell Compilation system (GHC) is a compiler for
Haskell.
......
......@@ -6,11 +6,9 @@ Author: Jani Monoses <jani@ubuntu.com>
Upstream-Bug: https://ghc.haskell.org/trac/ghc/ticket/5914
Launchpad-Bug: https://ghc.haskell.org/trac/ghc/ticket/5914
Index: ghc/aclocal.m4
===================================================================
--- ghc.orig/aclocal.m4 2016-01-14 16:19:24.858462215 +0100
+++ ghc/aclocal.m4 2016-01-14 16:19:24.854462134 +0100
@@ -420,7 +420,7 @@
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -417,7 +417,7 @@ AC_DEFUN([GET_ARM_ISA],
)],
[changequote(, )dnl
ARM_ISA=ARMv7
......
......@@ -9,9 +9,9 @@ Description: Revert ghci ARM improvements (ticket #10375) on armel
armel with the help of debian/rules.
.
--- ghc-7.10.3.orig/aclocal.m4
+++ ghc-7.10.3/aclocal.m4
@@ -577,18 +577,10 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS],
--- ghc-8.2.1.orig/aclocal.m4 2017-09-17 10:46:45.000000000 +0200
+++ ghc-8.2.1/aclocal.m4 2017-09-17 11:57:40.681870101 +0200
@@ -621,16 +621,8 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS],
$3="$$3 -D_HPUX_SOURCE"
$5="$$5 -D_HPUX_SOURCE"
;;
......@@ -20,23 +20,19 @@ Description: Revert ghci ARM improvements (ticket #10375) on armel
- # instructions (ie not Thumb) and to link using the gold linker.
- # Forcing LD to be ld.gold is done in FIND_LD m4 macro.
- $2="$$2 -marm"
- $3="$$3 -fuse-ld=gold -Wl,-z,noexecstack"
- $3="$$3 -Wl,-z,noexecstack"
- $4="$$4 -z noexecstack"
- ;;
-
- aarch64*linux*)
- # On aarch64/linux and aarch64/android, tell gcc to link using the
- # gold linker.
+ arm*linux* | \
+ aarch64*linux* )
+ # On arm/linux, aarch64/linux, arm/android and aarch64/android, tell
+ # gcc to link using the gold linker.
# Forcing LD to be ld.gold is done in FIND_LD m4 macro.
$3="$$3 -fuse-ld=gold -Wl,-z,noexecstack"
$3="$$3 -Wl,-z,noexecstack"
$4="$$4 -z noexecstack"
;;
--- ghc-7.10.3.orig/libraries/ghci/GHCi/InfoTable.hsc
+++ ghc-7.10.3/libraries/ghci/GHCi/InfoTable.hsc
@@ -184,17 +184,17 @@ mkJumpToAddr dflags a = case platformArc
@@ -245,17 +245,17 @@ mkJumpToAddr dflags a = case platformArc
, fromIntegral ((w64 `shiftR` 32) .&. 0x0000FFFF) ]
ArchARM { } ->
......
Description: Don't use cross-compile prefix for stage2 cross-builds
Origin: http://git.haskell.org/ghc.git/commitdiff/f2685df3b10e13f142736f28835e9064334bc143
Note: Can be dropped for 8.2.0
Last-Update: 2017-08-02
--- ghc-8.0.2.orig/mk/config.mk.in
+++ ghc-8.0.2/mk/config.mk.in
@@ -518,11 +518,6 @@ SUPPORTS_THIS_UNIT_ID = @SUPPORTS_THIS_U
WhatGccIsCalled = @WhatGccIsCalled@
GccVersion = @GccVersion@
-ifeq "$(phase)" "0"
-CrossCompilePrefix =
-else
-CrossCompilePrefix = @CrossCompilePrefix@
-endif
# TargetPlatformFull retains the string passed to configure so we have it in
# the necessary format to pass to libffi's configure.
TargetPlatformFull = @TargetPlatformFull@
@@ -557,6 +552,11 @@ CrossCompiling = @CrossCompiling@
# See Note [Stage1Only vs stage=1]
Stage1Only = NO
+# Installed tools prefix:
+# we add prefix to crosscompiler GHC only (ghc-stage1),
+# not cross-built GHC (not ghc-stage2).
+CrossCompilePrefix = $(if $(filter YES,$(Stage1Only)),@CrossCompilePrefix@,)
+
# Install stage 2 by default, or stage 1 in the cross compiler
# case. Can be changed to 3
INSTALL_GHC_STAGE= $(if $(filter YES,$(Stage1Only)),1,2)
......@@ -2,10 +2,8 @@ Description: Build unlit and hp2ps twice
Author: Thomas Miedema <thomasmiedema@gmail.com>
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Index: ghc-8.0.1/utils/ghc-pkg/ghc.mk
===================================================================
--- ghc-8.0.1.orig/utils/ghc-pkg/ghc.mk
+++ ghc-8.0.1/utils/ghc-pkg/ghc.mk
--- a/utils/ghc-pkg/ghc.mk
+++ b/utils/ghc-pkg/ghc.mk
@@ -27,7 +27,7 @@ utils/ghc-pkg_PACKAGE = ghc-pkg
# Note [Why build certain utils twice?]
#
......@@ -27,22 +25,22 @@ Index: ghc-8.0.1/utils/ghc-pkg/ghc.mk
# Therefore we build fresh copies, using the stage1 compiler, and install them
# when you run 'make install'. They are not used for any other purpose.
Index: ghc-8.0.1/utils/hp2ps/ghc.mk
===================================================================
--- ghc-8.0.1.orig/utils/hp2ps/ghc.mk
+++ ghc-8.0.1/utils/hp2ps/ghc.mk
@@ -17,10 +17,23 @@ utils/hp2ps_dist_C_SRCS = AreaB
--- a/utils/hp2ps/ghc.mk
+++ b/utils/hp2ps/ghc.mk
@@ -17,7 +17,7 @@ utils/hp2ps_dist_C_SRCS = AreaB
Utilities.c
utils/hp2ps_dist_EXTRA_LIBRARIES = m
utils/hp2ps_dist_PROGNAME = $(CrossCompilePrefix)hp2ps
utils/hp2ps_dist_PROGNAME = hp2ps
-utils/hp2ps_dist_INSTALL = YES
+utils/hp2ps_dist_INSTALL = NO
utils/hp2ps_dist_INSTALL_INPLACE = YES
utils/hp2ps_dist_SHELL_WRAPPER = YES
utils/hp2ps_dist_INSTALL_SHELL_WRAPPER_NAME = hp2ps
@@ -25,3 +25,17 @@ utils/hp2ps_dist_INSTALL_SHELL_WRAPPER_N
utils/hp2ps_CC_OPTS += $(addprefix -I,$(GHC_INCLUDE_DIRS))
$(eval $(call build-prog,utils/hp2ps,dist,0))
+
+utils/hp2ps_dist-install_C_SRCS = AreaBelow.c Curves.c Error.c Main.c \
+ Reorder.c TopTwenty.c AuxFile.c Deviation.c \
+ HpFile.c Marks.c Scale.c TraceElement.c \
......@@ -56,10 +54,8 @@ Index: ghc-8.0.1/utils/hp2ps/ghc.mk
+
+# See Note [Why build certain utils twice?].
+$(eval $(call build-prog,utils/hp2ps,dist-install,1))
Index: ghc-8.0.1/utils/unlit/ghc.mk
===================================================================
--- ghc-8.0.1.orig/utils/unlit/ghc.mk
+++ ghc-8.0.1/utils/unlit/ghc.mk
--- a/utils/unlit/ghc.mk
+++ b/utils/unlit/ghc.mk
@@ -13,8 +13,16 @@
utils/unlit_dist_C_SRCS = unlit.c
utils/unlit_dist_PROGNAME = unlit
......
Forwarded to https://ghc.haskell.org/trac/ghc/ticket/10424
Index: ghc/compiler/iface/MkIface.hs
===================================================================
--- ghc.orig/compiler/iface/MkIface.hs 2016-04-19 09:26:40.075170754 +0200
+++ ghc/compiler/iface/MkIface.hs 2016-04-19 09:26:40.071170684 +0200
@@ -556,7 +556,7 @@
--- a/compiler/iface/MkIface.hs
+++ b/compiler/iface/MkIface.hs
@@ -681,7 +681,7 @@ addFingerprints hsc_env mb_old_fingerpri
iface_hash <- computeFingerprint putNameLiterally
(mod_hash,
ann_fn (mkVarOcc "module"), -- See mkIfaceAnnCache
......@@ -13,7 +11,7 @@ Index: ghc/compiler/iface/MkIface.hs
sorted_deps,
mi_hpc iface0)
@@ -589,6 +589,9 @@
@@ -714,6 +714,9 @@ addFingerprints hsc_env mb_old_fingerpri
(non_orph_fis, orph_fis) = mkOrphMap ifFamInstOrph (mi_fam_insts iface0)
fix_fn = mi_fix_fn iface0
ann_fn = mkIfaceAnnCache (mi_anns iface0)
......@@ -21,5 +19,5 @@ Index: ghc/compiler/iface/MkIface.hs
+ usages = [ case u of UsageFile _ fp -> UsageFile "" fp; _ -> u | u <- mi_usages iface0 ]
+
getOrphanHashes :: HscEnv -> [Module] -> IO [Fingerprint]
getOrphanHashes hsc_env mods = do
-- | Retrieve the orphan hashes 'mi_orphan_hash' for a list of modules
-- (in particular, the orphan modules which are transitively imported by the
--- a/compiler/cmm/PprC.hs
+++ b/compiler/cmm/PprC.hs
@@ -1114,6 +1114,8 @@ cLoad expr rep
bewareLoadStoreAlignment ArchMipsel = True
bewareLoadStoreAlignment (ArchARM {}) = True
bewareLoadStoreAlignment ArchARM64 = True
+ bewareLoadStoreAlignment ArchSPARC = True
+ bewareLoadStoreAlignment ArchSPARC64 = True
-- Pessimistically assume that they will also cause problems
-- on unknown arches
bewareLoadStoreAlignment ArchUnknown = True
......@@ -3,11 +3,9 @@ Description: Do not use $SHELL
leak into the wrapper scripts.
Author: Joachim Breitner <nomeata@debian.org>
Index: ghc/driver/ghci/ghc.mk
===================================================================
--- ghc.orig/driver/ghci/ghc.mk 2016-07-07 12:40:40.690866042 +0200
+++ ghc/driver/ghci/ghc.mk 2016-07-07 12:40:40.686863966 +0200
@@ -21,7 +21,7 @@
--- a/driver/ghci/ghc.mk
+++ b/driver/ghci/ghc.mk
@@ -21,7 +21,7 @@ install_driver_ghci:
$(INSTALL_DIR) "$(DESTDIR)$(bindir)"
$(call removeFiles, "$(WRAPPER)")
$(CREATE_SCRIPT) "$(WRAPPER)"
......@@ -16,7 +14,7 @@ Index: ghc/driver/ghci/ghc.mk
echo 'exec "$(bindir)/ghc-$(ProjectVersion)" --interactive "$$@"' >> "$(WRAPPER)"
$(EXECUTABLE_FILE) "$(WRAPPER)"
$(call removeFiles,"$(DESTDIR)$(bindir)/ghci")
@@ -56,7 +56,7 @@
@@ -56,7 +56,7 @@ install_driver_ghcii: GHCII_SCRIPT_VERSI
install_driver_ghcii:
$(INSTALL_DIR) "$(DESTDIR)$(bindir)"
$(call removeFiles,"$(GHCII_SCRIPT)")
......@@ -25,11 +23,9 @@ Index: ghc/driver/ghci/ghc.mk
echo 'exec "$$(dirname "$$0")"/ghc --interactive "$$@"' >> $(GHCII_SCRIPT)
$(EXECUTABLE_FILE) $(GHCII_SCRIPT)
cp $(GHCII_SCRIPT) $(GHCII_SCRIPT_VERSIONED)
Index: ghc/rules/shell-wrapper.mk
===================================================================
--- ghc.orig/rules/shell-wrapper.mk 2016-07-07 12:40:40.690866042 +0200
+++ ghc/rules/shell-wrapper.mk 2016-07-07 12:40:40.686863966 +0200
@@ -41,7 +41,7 @@
--- a/rules/shell-wrapper.mk
+++ b/rules/shell-wrapper.mk
@@ -41,7 +41,7 @@ $$($1_$2_INPLACE_WRAPPER): $$($1_$2_SHEL
endif
$$($1_$2_INPLACE_WRAPPER): $$($1_$2_INPLACE)
$$(call removeFiles, $$@)
......@@ -38,7 +34,7 @@ Index: ghc/rules/shell-wrapper.mk
echo 'executablename="$$(TOP)/$$<"' >> $$@
echo 'datadir="$$(TOP)/$$(INPLACE_LIB)"' >> $$@
echo 'bindir="$$(TOP)/$$(INPLACE_BIN)"' >> $$@
@@ -80,7 +80,7 @@
@@ -80,7 +80,7 @@ install_$1_$2_wrapper:
$$(INSTALL_DIR) "$$(DESTDIR)$$(bindir)"
$$(call removeFiles, "$$(WRAPPER)")
$$(CREATE_SCRIPT) "$$(WRAPPER)"
......@@ -47,7 +43,7 @@ Index: ghc/rules/shell-wrapper.mk
echo 'exedir="$$(ghclibexecdir)/bin"' >> "$$(WRAPPER)"
echo 'exeprog="$$($1_$2_PROG)"' >> "$$(WRAPPER)"
echo 'executablename="$$$$exedir/$$$$exeprog"' >> "$$(WRAPPER)"
@@ -106,7 +106,7 @@
@@ -106,7 +106,7 @@ BINDIST_EXTRAS += $$($1_$2_BINDIST_WRAPP
$$($1_$2_BINDIST_WRAPPER): $1/$2/build/tmp/$$($1_$2_PROG)
$$(call removeFiles, $$@)
......@@ -56,11 +52,9 @@ Index: ghc/rules/shell-wrapper.mk
ifeq "$$(DYNAMIC_GHC_PROGRAMS)" "YES"
echo '$$(call prependLibraryPath,$$($1_$2_DEP_LIB_REL_DIRS_SEARCHPATH))' >> $$@
endif
Index: ghc/utils/mkdirhier/ghc.mk
===================================================================
--- ghc.orig/utils/mkdirhier/ghc.mk 2016-07-07 12:40:40.690866042 +0200
+++ ghc/utils/mkdirhier/ghc.mk 2016-07-07 12:40:40.686863966 +0200
@@ -14,7 +14,7 @@
--- a/utils/mkdirhier/ghc.mk
+++ b/utils/mkdirhier/ghc.mk
@@ -14,7 +14,7 @@ $(MKDIRHIER) : utils/mkdirhier/mkdirhier
mkdir -p $(INPLACE_BIN)
mkdir -p $(INPLACE_LIB)
$(call removeFiles,$@)
......
......@@ -14,9 +14,9 @@ This fixes #574.
--- a/utils/haddock/haddock-api/src/Haddock/Interface/Rename.hs
+++ b/utils/haddock/haddock-api/src/Haddock/Interface/Rename.hs
@@ -263,10 +263,21 @@ renameType t = case t of
@@ -264,10 +264,21 @@
HsCoreTy a -> pure (HsCoreTy a)
HsExplicitListTy a b -> HsExplicitListTy a <$> mapM renameLType b
HsExplicitListTy i a b -> HsExplicitListTy i a <$> mapM renameLType b
HsExplicitTupleTy a b -> HsExplicitTupleTy a <$> mapM renameLType b
- HsSpliceTy _ _ -> error "renameType: HsSpliceTy"
+ HsSpliceTy s _ -> renameHsSpliceTy s
......
Provided by “Pino” via Samuel Thibault. Not yet pushed upstream.
Index: ghc/aclocal.m4
===================================================================
--- ghc.orig/aclocal.m4 2016-01-14 16:20:19.683572714 +0100
+++ ghc/aclocal.m4 2016-01-14 16:21:18.024754631 +0100
@@ -277,7 +277,7 @@
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -274,7 +274,7 @@ AC_DEFUN([FPTOOLS_SET_HASKELL_PLATFORM_V
nto-qnx)
test -z "[$]2" || eval "[$]2=OSQNXNTO"
;;
- dragonfly|osf1|hpux|linuxaout|freebsd2|gnu|nextstep2|nextstep3|sunos4|ultrix|irix)
+ dragonfly|osf1|hpux|linuxaout|freebsd2|nextstep2|nextstep3|sunos4|ultrix|irix)
- dragonfly|hpux|linuxaout|freebsd2|gnu|nextstep2|nextstep3|sunos4|ultrix)
+ dragonfly|hpux|linuxaout|freebsd2|nextstep2|nextstep3|sunos4|ultrix)
test -z "[$]2" || eval "[$]2=OSUnknown"
;;
aix)
@@ -286,6 +286,9 @@
@@ -283,6 +283,9 @@ AC_DEFUN([FPTOOLS_SET_HASKELL_PLATFORM_V
linux-android)
test -z "[$]2" || eval "[$]2=OSAndroid"
;;
......@@ -23,11 +21,9 @@ Index: ghc/aclocal.m4
*)
echo "Unknown OS '[$]1'"
exit 1
Index: ghc/compiler/utils/Platform.hs
===================================================================
--- ghc.orig/compiler/utils/Platform.hs 2016-01-14 16:20:19.683572714 +0100
+++ ghc/compiler/utils/Platform.hs 2016-01-14 16:20:40.067985654 +0100
@@ -88,6 +88,7 @@
--- a/compiler/utils/Platform.hs
+++ b/compiler/utils/Platform.hs
@@ -88,6 +88,7 @@ data OS
| OSQNXNTO
| OSAndroid
| OSAIX
......@@ -35,7 +31,7 @@ Index: ghc/compiler/utils/Platform.hs
deriving (Read, Show, Eq)
-- | ARM Instruction Set Architecture, Extensions and ABI
@@ -141,6 +142,7 @@
@@ -139,6 +140,7 @@ osElfTarget OSHaiku = True
osElfTarget OSQNXNTO = False
osElfTarget OSAndroid = True
osElfTarget OSAIX = False
......
Description: mk/config.mk.in: lower -O2 optimization down to -O1 on UNREG
Author: Sergei Trofimovich <slyfox@gentoo.org>
Origin: upstream, http://git.haskell.org/ghc.git/commitdiff/432a1f18327a50d7b2bbdbe6b004473fe1b0b0b9
Last-Update: 2018-02-17
Description: mk/config.mk.in: lower GhcLibHcOpts -O2 optimization down to -O1 on UNREG
Last-Update: 2018-04-07
--- ghc-8.0.2.orig/mk/config.mk.in
+++ ghc-8.0.2/mk/config.mk.in
@@ -70,15 +70,6 @@ GhcStage1HcOpts=
--- a/mk/config.mk.in
+++ b/mk/config.mk.in
@@ -70,16 +70,6 @@
GhcStage2HcOpts=-O2
GhcStage3HcOpts=-O2
-# Disable -O2 optimization. Otherwise amount of generated C code
-# makes things very slow to compile (~5 minutes on core-i7 for 'compiler/hsSyn/HsExpr.lhs')
-# makes things very slow to compile (~5 minutes on core-i7 for 'compiler/hsSyn/HsExpr.hs')
-# and sometimes not compile at all (powerpc64 overflows something
-# on 'compiler/hsSyn/HsExpr.lhs').
-# on 'compiler/hsSyn/HsExpr.hs').
-ifeq "$(GhcUnregisterised)" "YES"
-GhcStage1HcOpts=
-GhcStage2HcOpts=
-GhcStage3HcOpts=
-endif
-
# Note [Stage number in build variables].
#
@@ -892,3 +883,15 @@ GMP_LIB_DIRS = @GMP_LIB_DIRS@
# There are (unfortunately) two different naming schemes for build variables
@@ -326,6 +316,17 @@
GhcLibHcOpts=-O2
CURSES_INCLUDE_DIRS = @CURSES_INCLUDE_DIRS@
CURSES_LIB_DIRS = @CURSES_LIB_DIRS@
+
+# Disable -O2 optimization. Otherwise amount of generated C code
+# makes things very slow to compile (~5 minutes on core-i7 for 'compiler/hsSyn/HsExpr.lhs')
+# makes things very slow to compile (~5 minutes on core-i7 for 'compiler/hsSyn/HsExpr.hs')
+# and sometimes not compile at all (powerpc64 overflows something
+# on 'compiler/hsSyn/HsExpr.lhs').
+# on 'compiler/hsSyn/HsExpr.hs').
+ifeq "$(GhcUnregisterised)" "YES"
+GhcStage1HcOpts=
+GhcStage2HcOpts=
+GhcStage3HcOpts=
+
+GhcLibHcOpts=
+endif
+
# Strip local symbols from libraries? This can make the libraries smaller,
# but makes debugging somewhat more difficult. Doesn't work with all ld's.
#
......@@ -3,11 +3,9 @@ Description: Do not emit a warning if the .haddock file is missing
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 @@
--- a/utils/ghc-pkg/Main.hs
+++ b/utils/ghc-pkg/Main.hs
@@ -1773,8 +1773,10 @@ checkPackageConfig pkg verbosity db_stac
mapM_ (checkDir True "dynamic-library-dirs") (libraryDynDirs pkg)
mapM_ (checkDir True "include-dirs") (includeDirs pkg)
mapM_ (checkDir True "framework-dirs") (frameworkDirs pkg)
......
Description: rts: Ensure we always give MADV_DONTNEED a chance in osDecommitMemory
Author: Ben Gamari <bgamari.foss@gmail.com>
Origin: upstream, https://phabricator.haskell.org/D2780
Bug: https://ghc.haskell.org/trac/ghc/ticket/12865
Bug-Debian: https://bugs.debian.org/847677
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
Index: ghc-8.0.2/rts/posix/OSMem.c
===================================================================
--- ghc-8.0.2.orig/rts/posix/OSMem.c
+++ ghc-8.0.2/rts/posix/OSMem.c
@@ -522,11 +522,24 @@
#ifdef MADV_FREE
// Try MADV_FREE first, FreeBSD has both and MADV_DONTNEED
- // just swaps memory out
+ // just swaps memory out. Linux >= 4.5 has both DONTNEED and FREE; either
+ // will work as they both allow the system to free anonymous pages.
+ // It is important that we try both methods as the kernel which we were
+ // built on may differ from the kernel we are now running on.
r = madvise(at, size, MADV_FREE);
-#else
- r = madvise(at, size, MADV_DONTNEED);
+ if(r < 0) {
+ if (errno == EINVAL) {
+ // Perhaps the system doesn't support MADV_FREE; fall-through and
+ // try MADV_DONTNEED.
+ } else {
+ sysErrorBelch("unable to decommit memory");
+ }
+ } else {
+ return;
+ }
#endif
+
+ r = madvise(at, size, MADV_DONTNEED);
if(r < 0)
sysErrorBelch("unable to decommit memory");
}
......@@ -4,11 +4,9 @@ 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 @@
--- a/compiler/main/SysTools.hs
+++ b/compiler/main/SysTools.hs
@@ -68,6 +68,7 @@ import Platform
import Util
import DynFlags
import Exception
......@@ -16,7 +14,7 @@ Index: ghc-8.0.2/compiler/main/SysTools.hs
import LlvmCodeGen.Base (llvmVersionStr, supportedLlvmVersion)
@@ -1145,8 +1146,8 @@
@@ -1121,8 +1122,8 @@ getTempDir dflags = do
mapping <- readIORef dir_ref
case Map.lookup tmp_dir mapping of
Nothing -> do
......@@ -27,7 +25,7 @@ Index: ghc-8.0.2/compiler/main/SysTools.hs
mask_ $ mkTempDir prefix
Just dir -> return dir
where
@@ -1562,6 +1563,13 @@
@@ -1558,6 +1559,13 @@ getProcessID :: IO Int
getProcessID = System.Posix.Internals.c_getpid >>= return . fromIntegral
#endif
......
......@@ -5,11 +5,8 @@ hurd.diff
buildpath-abi-stability.patch
reproducible-tmp-names
do-not-use-SHELL
compiler-cmm-PprC-sparc-alignment.patch
x32-use-native-x86_64-insn.patch
osdecommitmemory-compat.patch
use-stage1-binaries-for-install.patch
build-unlit-and-hp2ps-twice.patch
avoid-CrossCompilerPrefix-stage2.patch
fix-hssplicety.patch
lower-optimization-for-unreg.patch
Index: ghc/ghc.mk
===================================================================
--- ghc.orig/ghc.mk 2016-05-21 17:05:28.794690704 +0200
+++ ghc/ghc.mk 2016-05-21 17:05:28.790690606 +0200
@@ -824,7 +824,6 @@
--- a/ghc.mk
+++ b/ghc.mk
@@ -829,7 +829,6 @@ endif
# Build the Haddock contents and index
ifeq "$(HADDOCK_DOCS)" "YES"
libraries/dist-haddock/index.html: $(haddock_INPLACE) $(ALL_HADDOCK_FILES)
......@@ -10,7 +8,7 @@ Index: ghc/ghc.mk
ifeq "$(phase)" "final"
$(eval $(call all-target,library_doc_index,libraries/dist-haddock/index.html))
endif
@@ -945,12 +944,8 @@
@@ -950,12 +949,8 @@ endif
$(INSTALL_DIR) "$(DESTDIR)$(docdir)/html"
$(INSTALL_DOC) $(INSTALL_OPTS) docs/index.html "$(DESTDIR)$(docdir)/html"
ifneq "$(INSTALL_LIBRARY_DOCS)" ""
......@@ -24,7 +22,7 @@ Index: ghc/ghc.mk
endif
ifneq "$(INSTALL_HTML_DOC_DIRS)" ""
for i in $(INSTALL_HTML_DOC_DIRS); do \
@@ -1059,7 +1054,6 @@
@@ -1067,7 +1062,6 @@ $(eval $(call bindist-list,.,\
mk/project.mk \
mk/install.mk.in \
bindist.mk \
......
......@@ -7,9 +7,9 @@ Description: Use the stage1 binaries for install
Author: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Last-Update: 2017-01-29
--- ghc-8.0.1.orig/ghc.mk
+++ ghc-8.0.1/ghc.mk
@@ -958,8 +958,12 @@ INSTALLED_PACKAGE_CONF=$(DESTDIR)$(topdi
--- a/ghc.mk
+++ b/ghc.mk
@@ -963,8 +963,12 @@ INSTALLED_PACKAGE_CONF=$(DESTDIR)$(topdi
# Install packages in the right order, so that ghc-pkg doesn't complain.
# Also, install ghc-pkg first.
ifeq "$(Windows_Host)" "NO"
......
......@@ -12,11 +12,9 @@ Description: Use native x86_64 instructions 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 @@
--- a/rts/RtsSymbols.c
+++ b/rts/RtsSymbols.c
@@ -917,7 +917,7 @@
// 64-bit support functions in libgcc.a
......