aboutsummaryrefslogtreecommitdiffstats
path: root/testing/ghc-bootstrap/bootstrap.patch
diff options
context:
space:
mode:
Diffstat (limited to 'testing/ghc-bootstrap/bootstrap.patch')
-rw-r--r--testing/ghc-bootstrap/bootstrap.patch112
1 files changed, 112 insertions, 0 deletions
diff --git a/testing/ghc-bootstrap/bootstrap.patch b/testing/ghc-bootstrap/bootstrap.patch
new file mode 100644
index 0000000000..7e5fc95432
--- /dev/null
+++ b/testing/ghc-bootstrap/bootstrap.patch
@@ -0,0 +1,112 @@
+diff --git a/compiler/main/DynFlags.hs b/compiler/main/DynFlags.hs
+index fa1141e..6ff2ac4 100644
+--- a/compiler/main/DynFlags.hs
++++ b/compiler/main/DynFlags.hs
+@@ -2448,8 +2448,7 @@ dynamic_flags_deps = [
+ , make_ord_flag defGhcFlag "dynload" (hasArg parseDynLibLoaderMode)
+ , make_ord_flag defGhcFlag "dylib-install-name" (hasArg setDylibInstallName)
+ -- -dll-split is an internal flag, used only during the GHC build
+- , make_ord_flag defHiddenFlag "dll-split"
+- (hasArg (\f d -> d { dllSplitFile = Just f, dllSplit = Nothing }))
++ , make_ord_flag defHiddenFlag "dll-split" (NoArg (addWarn "ignoring -dll-split"))
+
+ ------- Libraries ---------------------------------------------------
+ , make_ord_flag defFlag "L" (Prefix addLibraryPath)
+diff --git a/ghc.mk b/ghc.mk
+index 5e4ecc6..a07ff73 100644
+--- a/ghc.mk
++++ b/ghc.mk
+@@ -433,7 +433,7 @@ else # CLEANING
+ PACKAGES_STAGE0 = binary Cabal/Cabal hpc ghc-boot hoopl transformers template-haskell
+ ifeq "$(Windows_Host)" "NO"
+ ifneq "$(HostOS_CPP)" "ios"
+-PACKAGES_STAGE0 += terminfo
++PACKAGES_STAGE0 +=
+ endif
+ endif
+
+@@ -471,7 +471,7 @@ endif
+
+ ifeq "$(Windows_Target)" "NO"
+ ifneq "$(TargetOS_CPP)" "ios"
+-PACKAGES_STAGE1 += terminfo
++PACKAGES_STAGE1 +=
+ endif
+ endif
+ PACKAGES_STAGE1 += haskeline
+@@ -968,8 +968,8 @@ INSTALLED_PACKAGE_CONF=$(DESTDIR)$(topdir)/package.conf.d
+ # Install packages in the right order, so that ghc-pkg doesn't complain.
+ # Also, install ghc-pkg first.
+ ifeq "$(Windows_Host)" "NO"
+-INSTALLED_GHC_REAL=$(DESTDIR)$(ghclibexecdir)/bin/ghc
+-INSTALLED_GHC_PKG_REAL=$(DESTDIR)$(ghclibexecdir)/bin/ghc-pkg
++INSTALLED_GHC_REAL=$(CURDIR)/inplace/bin/ghc-stage1
++INSTALLED_GHC_PKG_REAL=$(CURDIR)/utils/ghc-pkg/dist/build/tmp/ghc-pkg
+ else
+ INSTALLED_GHC_REAL=$(DESTDIR)$(bindir)/ghc.exe
+ INSTALLED_GHC_PKG_REAL=$(DESTDIR)$(bindir)/ghc-pkg.exe
+diff --git a/rules/build-package-way.mk b/rules/build-package-way.mk
+index 905b7f0..3e23b1f 100644
+--- a/rules/build-package-way.mk
++++ b/rules/build-package-way.mk
+@@ -62,17 +62,6 @@ $1_$2_$3_ALL_OBJS = $$($1_$2_$3_HS_OBJS) $$($1_$2_$3_NON_HS_OBJS)
+
+ ifeq "$3" "dyn"
+
+-ifneq "$$($1_$2_dll0_MODULES)" ""
+-$$($1_$2_$3_LIB) : $1/$2/dll-split.stamp
+-ifneq "$$($1_$2_$3_LIB0)" ""
+-$$($1_$2_$3_LIB0) : $1/$2/dll-split.stamp
+-endif
+-endif
+-
+-$1/$2/dll-split.stamp: $$($1_$2_depfile_haskell) $$$$(dll-split_INPLACE)
+- $$(dll-split_INPLACE) $$< "$$($1_$2_dll0_START_MODULE)" "$$($1_$2_dll0_MODULES)"
+- touch $$@
+-
+ # Link a dynamic library
+ # On windows we have to supply the extra libs this one links to when building it.
+ ifeq "$$(HostOS_CPP)" "mingw32"
+diff --git a/rules/distdir-way-opts.mk b/rules/distdir-way-opts.mk
+index f099d4e..6dcf911 100644
+--- a/rules/distdir-way-opts.mk
++++ b/rules/distdir-way-opts.mk
+@@ -160,13 +160,6 @@ $1_$2_$3_ALL_HC_OPTS = \
+ $$(if $$(findstring YES,$$($1_$2_SplitSections)),$$(if $$(findstring dyn,$3),,-split-sections),) \
+ $$(if $$(findstring YES,$$($1_$2_DYNAMIC_TOO)),$$(if $$(findstring v,$3),-dynamic-too))
+
+-ifeq "$3" "dyn"
+-ifeq "$$(HostOS_CPP)" "mingw32"
+-ifneq "$$($1_$2_dll0_MODULES)" ""
+-$1_$2_$3_ALL_HC_OPTS += -dll-split $1/$2/dll-split
+-endif
+-endif
+-endif
+
+ $1_$2_$3_ALL_CC_OPTS = \
+ $$(WAY_$3_CC_OPTS) \
+diff --git a/utils/ghc-pkg/Main.hs b/utils/ghc-pkg/Main.hs
+index af3032d..1c38e8e 100644
+--- a/utils/ghc-pkg/Main.hs
++++ b/utils/ghc-pkg/Main.hs
+@@ -1,5 +1,6 @@
+ {-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances #-}
+ {-# OPTIONS_GHC -fno-warn-orphans #-}
++#define BOOTSTRAPPING
+ -----------------------------------------------------------------------------
+ --
+ -- (c) The University of Glasgow 2004-2009.
+diff --git a/utils/ghc-pkg/ghc-pkg.cabal b/utils/ghc-pkg/ghc-pkg.cabal
+index 5f76e1b..2f9b558 100644
+--- a/utils/ghc-pkg/ghc-pkg.cabal
++++ b/utils/ghc-pkg/ghc-pkg.cabal
+@@ -31,7 +31,7 @@ Executable ghc-pkg
+ ghc-boot,
+ bytestring
+ if !os(windows)
+- Build-Depends: unix,
+- terminfo
++ Build-Depends: unix
++
+ if os(windows)
+ c-sources: CRT_noglob.c