Repair ghc bootstrap which broke for ghc-9.2
The ffi header files should be excluded. Moved the bootstrap.mk into a file instead of echoing into it repeatedly. kili@: can't get worse
This commit is contained in:
parent
71ffdc9b8a
commit
58db17fa94
@ -170,7 +170,7 @@ do-test:
|
||||
# It doesn't matter whether this is the actual date of the bootstrapper
|
||||
# build. It's just used to get different distfiles whenever new
|
||||
# bootstrappers have to be built.
|
||||
BOOTSTRAP_DATE = 20210429
|
||||
BOOTSTRAP_DATE = 20220830
|
||||
|
||||
# Create a bootstrapper. This compiles a stripped-down version of
|
||||
# ghc and creates a `bindist', i.e. a tarball with binaries that
|
||||
@ -180,8 +180,8 @@ bootstrap: patch
|
||||
echo Please install autoconf-${AUTOCONF_VERSION}.; \
|
||||
false; \
|
||||
fi
|
||||
@if [ ! -x ${LOCALBASE}/bin/automake-1.4 ]; then \
|
||||
echo Please install automake-1.4.; \
|
||||
@if [ ! -x ${LOCALBASE}/bin/automake-${AUTOMAKE_VERSION} ]; then \
|
||||
echo Please install automake-${AUTOMAKE_VERSION}; \
|
||||
false; \
|
||||
fi
|
||||
|
||||
@ -190,29 +190,12 @@ bootstrap: patch
|
||||
env CONFIGURE_ENV=RELEASE=NO ${MAKE} configure
|
||||
|
||||
${MAKE} build ALL_TARGET="all binary-dist" \
|
||||
AUTOCONF_VERSION=${AUTOCONF_VERSION} AUTOMAKE_VERSION=1.4
|
||||
AUTOCONF_VERSION=${AUTOCONF_VERSION} AUTOMAKE_VERSION=${AUTOMAKE_VERSION}
|
||||
|
||||
$(_PBUILD) $(MAKE) _bootstrap_finish
|
||||
|
||||
_bootstrap_prepare:
|
||||
echo HSCOLOUR_SRCS=NO > ${WRKSRC}/mk/build.mk
|
||||
echo GhcLibHcOpts=-O -fasm >> ${WRKSRC}/mk/build.mk
|
||||
echo GhcStage1HcOpts=-O -fasm >> ${WRKSRC}/mk/build.mk
|
||||
echo GhcStage2HcOpts=-O -fasm >> ${WRKSRC}/mk/build.mk
|
||||
echo SplitObjs=NO >> ${WRKSRC}/mk/build.mk
|
||||
echo GhcLibWays=v >> ${WRKSRC}/mk/build.mk
|
||||
echo GhcRTSWays=thr >> ${WRKSRC}/mk/build.mk
|
||||
echo GhcWithInterpreter=NO >> ${WRKSRC}/mk/build.mk
|
||||
echo GhcThreaded=YES >> ${WRKSRC}/mk/build.mk
|
||||
echo INTEGER_LIBRARY=integer-simple >> ${WRKSRC}/mk/build.mk
|
||||
echo SRC_CC_OPTS+=-g -O0 >> ${WRKSRC}/mk/build.mk
|
||||
echo HADDOCK_DOCS=NO >> ${WRKSRC}/mk/build.mk
|
||||
echo BUILD_SPHINX_HTML=NO >> ${WRKSRC}/mk/build.mk
|
||||
echo BUILD_SPHINX_PDF=NO >> ${WRKSRC}/mk/build.mk
|
||||
echo GhcWithSMP=NO >> ${WRKSRC}/mk/build.mk
|
||||
echo LD_OPTS=-optl-static -optl-s >> ${WRKSRC}/mk/build.mk
|
||||
echo DYNAMIC_GHC_PROGRAMS=No >> ${WRKSRC}/mk/build.mk
|
||||
|
||||
cp ${FILESDIR}/bootstrap.mk ${WRKSRC}/mk/build.mk
|
||||
echo ${BOOTSTRAP_DATE} > ${WRKSRC}/VERSION_DATE
|
||||
|
||||
_bootstrap_finish:
|
||||
|
17
lang/ghc/files/bootstrap.mk
Normal file
17
lang/ghc/files/bootstrap.mk
Normal file
@ -0,0 +1,17 @@
|
||||
HSCOLOUR_SRCS=NO
|
||||
GhcLibHcOpts=-O -fasm
|
||||
GhcStage1HcOpts=-O -fasm
|
||||
GhcStage2HcOpts=-O -fasm
|
||||
SplitObjs=NO
|
||||
GhcLibWays=v
|
||||
GhcRTSWays=thr thr_l
|
||||
GhcWithInterpreter=NO
|
||||
GhcThreaded=YES
|
||||
INTEGER_LIBRARY=integer-simple
|
||||
SRC_CC_OPTS+=-g -O0
|
||||
HADDOCK_DOCS=NO
|
||||
BUILD_SPHINX_HTML=NO
|
||||
BUILD_SPHINX_PDF=NO
|
||||
GhcWithSMP=NO
|
||||
LD_OPTS=-optl-static -optl-s
|
||||
DYNAMIC_GHC_PROGRAMS=No
|
16
lang/ghc/patches/patch-ghc_mk
Normal file
16
lang/ghc/patches/patch-ghc_mk
Normal file
@ -0,0 +1,16 @@
|
||||
Avoids picking up non-existent FFI headers. The logic for their
|
||||
inclusion into bindist should be conditional, but we don't care about
|
||||
fixing this better. In ghc 9.4 bindist is bulit via Hadrian and so
|
||||
this patch becomes irrelevant.
|
||||
|
||||
Index: ghc.mk
|
||||
--- ghc.mk.orig
|
||||
+++ ghc.mk
|
||||
@@ -1049,7 +1049,6 @@ $(eval $(call bindist-list,.,\
|
||||
$(includes_1_H_VERSION) \
|
||||
$(includes_DERIVEDCONSTANTS) \
|
||||
$(includes_GHCCONSTANTS) \
|
||||
- $(libffi_HEADERS) \
|
||||
$(INSTALL_LIBEXECS) \
|
||||
$(INSTALL_LIBEXEC_SCRIPTS) \
|
||||
$(INSTALL_BINS) \
|
Loading…
x
Reference in New Issue
Block a user