summaryrefslogtreecommitdiff
path: root/lang/ghc
diff options
context:
space:
mode:
authorTobias C. Berner <tcberner@FreeBSD.org>2018-05-25 21:44:12 +0000
committerTobias C. Berner <tcberner@FreeBSD.org>2018-05-25 21:44:12 +0000
commitfff1aa535b4a18a05d872de7c9afb3dbf9f6013b (patch)
tree86e71c0056b8414191c8b421101694a177fec03e /lang/ghc
parentRename net/bird-devel to net/bird2 (diff)
Update lang/ghc 8.4.2 and the hs-* ports the newer versions
* Update lang/ghc to 8.4.2 * Update the boostrap compiler to 8.4.1 * Update the many hs-* ports * Bump the rest Thanks a lot to arrowd for doing all the heavy lifting :) PR: 227968 Exp-run by: antoine Submitted by: arrowd Differential Revision: https://reviews.freebsd.org/D15005
Notes
Notes: svn path=/head/; revision=470870
Diffstat (limited to 'lang/ghc')
-rw-r--r--lang/ghc/Makefile57
-rw-r--r--lang/ghc/bsd.cabal.options.mk4
-rw-r--r--lang/ghc/bsd.hackage.mk27
-rw-r--r--lang/ghc/distinfo18
-rw-r--r--lang/ghc/files/patch-compiler_main_SysTools.hs12
-rw-r--r--lang/ghc/files/patch-configure.ac22
-rw-r--r--lang/ghc/files/patch-ghc.mk10
-rw-r--r--lang/ghc/files/patch-includes_rts_storage_ClosureMacros.h22
-rw-r--r--lang/ghc/files/patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs11
-rw-r--r--lang/ghc/files/patch-libraries__Cabal__Cabal__Distribution__Simple__Program__Builtin.hs12
-rw-r--r--lang/ghc/files/patch-rts_Linker.c11
11 files changed, 83 insertions, 123 deletions
diff --git a/lang/ghc/Makefile b/lang/ghc/Makefile
index 3e85d90e757f..0f3e5a770ae9 100644
--- a/lang/ghc/Makefile
+++ b/lang/ghc/Makefile
@@ -3,10 +3,9 @@
PORTNAME= ghc
PORTVERSION= ${GHC_VERSION}
-PORTREVISION= 3
CATEGORIES= lang haskell
MASTER_SITES= http://www.haskell.org/ghc/dist/${PORTVERSION}/:source \
- LOCAL/pgj/:boot
+ LOCAL/arrowd/:boot
DISTFILES= ghc-${PORTVERSION}-src${EXTRACT_SUFX}:source
MAINTAINER= haskell@FreeBSD.org
@@ -17,13 +16,13 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
ONLY_FOR_ARCHS= i386 amd64
-GHC_VERSION= 8.0.2
-HSCOLOUR_VERSION= 1.24.1
+GHC_VERSION= 8.4.2
+HSCOLOUR_VERSION= 1.24.4
DATADIR= ${PREFIX}/share/ghc-${GHC_VERSION}
EXAMPLESDIR= ${PREFIX}/share/examples/ghc-${GHC_VERSION}
-CONFLICTS= ghc-7.4.* ghc-7.6.* ghc-7.8.* ghc-7.10.*
+CONFLICTS= ghc-7.4.* ghc-7.6.* ghc-7.8.* ghc-7.10.* ghc-8.0.*
LIB_DEPENDS+= libgmp.so:math/gmp
@@ -38,8 +37,7 @@ NO_CCACHE= ccache: error: Failed to create directory /nonexistent/.ccache/tmp: P
# This is better fixed in files/build.mk.in
GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --with-ld=${LD} \
- --with-gmp-includes=${LOCALBASE}/include \
+CONFIGURE_ARGS= --with-gmp-includes=${LOCALBASE}/include \
--with-gmp-libraries=${LOCALBASE}/lib \
--with-iconv-includes=${LOCALBASE}/include \
--with-iconv-libraries=${LOCALBASE}/lib
@@ -47,7 +45,7 @@ CONFIGURE_ARGS= --with-ld=${LD} \
SUB_FILES= build.mk \
build.boot.mk
SUB_LIST= GHC_VERSION=${GHC_VERSION} \
- NCURSESINC="${NCURSESINC}" NCURSESLIB="${NCURSESLIB}" \
+ NCURSESINC="${NCURSESBASE}/include" NCURSESLIB="${NCURSESLIB}" \
CFLAGS="${CFLAGS}"
OPTIONS_GROUP= BOOTSTRAP
@@ -90,14 +88,17 @@ LOCALBASE?= /usr/local
.include <bsd.port.options.mk>
.if empty(PORT_OPTIONS:MBOOT)
-BOOT_GHC_VERSION= 7.10.2
+BOOT_GHC_VERSION= 8.4.2
DISTFILES+= ghc-${BOOT_GHC_VERSION}-boot-${ARCH}-freebsd${EXTRACT_SUFX}:boot
.endif # MBOOT
-CONFIGURE_ARGS+= -with-gcc=${CC}
-.if empty(PORT_OPTIONS:MBOOT)
-CONFIGURE_ARGS_BOOT+= --with-gcc=${CC}
+.if ${OSVERSION} < 1200000
+USE_GCC= yes
+CONFIGURE_ARGS+= --enable-dtrace=0
+.else
+LD= ld.bfd
.endif
+CONFIGURE_ENV+= CC=${CC} LD=${LD}
DOCSDIR= ${PREFIX}/share/doc/${DISTNAME}
GHC_LIBDIR= ${STAGEDIR}${PREFIX}/lib/ghc-${GHC_VERSION}
@@ -115,7 +116,7 @@ BOOT_HSC2HS= ${BOOT_DIR}/bin/hsc2hs
SLAVE_CMD= ${SETENV} PATH=${BOOT_DIR}/bin:${PATH}
-CONFIGURE_ARGS_BOOT+= --prefix=${BOOT_DIR} --with-ld=${LD}
+CONFIGURE_ARGS_BOOT+= --prefix=${BOOT_DIR}
CONFIGURE_ARGS+= --with-ghc=${BOOT_GHC}
.else # MBOOT
SLAVE_CMD= # empty
@@ -189,13 +190,19 @@ post-patch:
s|%%AR%%|${AR}|; \
s|%%LD%%|${LD}|' \
${WRKSRC}/libraries/Cabal/Cabal/Distribution/Simple/Program/Builtin.hs
+.if empty(PORT_OPTIONS:MBOOT)
+ @${REINPLACE_CMD} -e '/^mandir/d' ${BOOT_DIR}/mk/build.mk
+ @${REINPLACE_CMD} -e '/^infodir/d' ${BOOT_DIR}/mk/build.mk
+ @${REINPLACE_CMD} -e '/^docdir/d' ${BOOT_DIR}/mk/build.mk
+ @${REINPLACE_CMD} -e '/^htmldir/d' ${BOOT_DIR}/mk/build.mk
+.endif
pre-configure: apply-slist
# Copy the subbed build.mk to the proper position
${CP} ${WRKDIR}/build.mk ${WRKSRC}/mk/build.mk
@${MKDIR} ${TMPDIR}
-.if empty(PORT_OPTIONS:MBOOTH) && ${OPSYS} == FreeBSD && \
+.if empty(PORT_OPTIONS:MBOOT) && ${OPSYS} == FreeBSD && \
${OSVERSION} >= 1200031
${CC} ${CFLAGS} -c -o ${BOOT_DIR}/wrap.o ${PATCHDIR}/wrap.c
for x in ${BOOT_DIR}/rts/dist/build/libCffi*.a; do \
@@ -232,14 +239,14 @@ pre-configure: apply-slist
${SLAVE_CMD} ./Setup install)
.endif
-_EXECUTABLES= ${STAGEDIR}${PREFIX}/bin/hp2ps \
- ${GHC_LIBDIR}/bin/unlit \
+_EXECUTABLES= ${GHC_LIBDIR}/bin/unlit \
${GHC_LIBDIR}/bin/hpc \
${GHC_LIBDIR}/bin/ghc-iserv \
${GHC_LIBDIR}/bin/ghc-pkg \
${GHC_LIBDIR}/bin/hsc2hs \
${GHC_LIBDIR}/bin/runghc \
- ${GHC_LIBDIR}/bin/ghc
+ ${GHC_LIBDIR}/bin/ghc \
+ ${GHC_LIBDIR}/bin/hp2ps
.if ${PORT_OPTIONS:MPROFILE}
_EXECUTABLES+= ${GHC_LIBDIR}/bin/ghc-iserv-prof
@@ -256,7 +263,7 @@ post-install:
.if ${PORT_OPTIONS:MDOCS}
${LN} -sf haddock-ghc-${GHC_VERSION} ${STAGEDIR}${PREFIX}/bin/haddock
.endif
- (for f in ${_EXECUTABLES} $$(${FIND} ${GHC_LIBDIR} -name '*.so'); do \
+ (for f in ${_EXECUTABLES} $$(${FIND} ${GHC_LIBDIR} -name '*.so*'); do \
${STRIP_CMD} $$f; done)
.include <bsd.port.mk>
@@ -264,12 +271,8 @@ post-install:
# Create a bootstrap compiler tar ball: run this in an interactive poudriere jail
.PHONY: create-bootstrap
create-bootstrap:
- @${ECHO} "TODO: https://github.com/freebsd-haskell/ports/wiki/Updating-the-Bootstrap-Compiler"
- cd ${WRKSCR} \
- && ${CP} ${WRKDIR}/build.boot.mk mk \
- && setenv ${CONFIGURE_ENV} ./configure --with-iconv-includes=${LOCALBASE}/include \
- --with-iconv-libraries=${LOCALBASE}/lib \
- --with-gcc=${CC} \
- --with-ld=${LD} \
- && make binary-dist TAR_COMP=xz \\
- && mv ghc-${GHC_VERSION}-boot-${GHC_ARCH}-unknown-freebsd.tar.xz /tmp/ghc-${GHC_VERSION}-${ARCH}-freebsd${FREEBSD_MAJOR_VERSION}-boot.tar.xz
+ cd ${WRKSRC} \
+ && gmake binary-dist TAR_COMP=xz \
+ && mv ${WRKSRC}/ghc-${GHC_VERSION}-${ARCH}-portbld-freebsd.tar.xz /tmp/ghc-${GHC_VERSION}-boot-${ARCH}-freebsd.tar.xz
+ && sha256 ghc-${GHC_VERSION}-boot-${ARCH}-freebsd.tar.xz
+ && stat -f %z ghc-${GHC_VERSION}-boot-${ARCH}-freebsd.tar.xz
diff --git a/lang/ghc/bsd.cabal.options.mk b/lang/ghc/bsd.cabal.options.mk
index aa64e85c9ecc..3c1635363af4 100644
--- a/lang/ghc/bsd.cabal.options.mk
+++ b/lang/ghc/bsd.cabal.options.mk
@@ -18,9 +18,9 @@ GHC_CMD?= ${LOCALBASE}/bin/ghc
HADDOCK_CMD?= ${LOCALBASE}/bin/haddock
HSCOLOUR_CMD?= ${LOCALBASE}/bin/HsColour
-GHC_VERSION?= 8.0.2
+GHC_VERSION?= 8.4.2
-HSCOLOUR_VERSION= 1.24.1
+HSCOLOUR_VERSION= 1.24.4
HSCOLOUR_DESC?= Colorize generated documentation by HsColour
DYNAMIC_DESC?= Add support for dynamic linking
diff --git a/lang/ghc/bsd.hackage.mk b/lang/ghc/bsd.hackage.mk
index 4b48785a2cb9..fc1c9ed9a75f 100644
--- a/lang/ghc/bsd.hackage.mk
+++ b/lang/ghc/bsd.hackage.mk
@@ -86,14 +86,15 @@ authenticate_port?= www/hs-authenticate
auto-update_port?= devel/hs-auto-update
aws_port?= net/hs-aws
base-compat_port?= devel/hs-base-compat
+base-compat-batteries_port?= devel/hs-base-compat-batteries
base-orphans_port?= devel/hs-base-orphans
base-unicode-symbols_port?= devel/hs-base-unicode-symbols
base16-bytestring_port?= devel/hs-base16-bytestring
base64-bytestring_port?= devel/hs-base64-bytestring
+basement_port?= devel/hs-basement
basic-prelude_port?= devel/hs-basic-prelude
bencode_port?= textproc/hs-bencode
bifunctors_port?= devel/hs-bifunctors
-bio_port?= science/hs-bio # executable
bits-atomic_port?= devel/hs-bits-atomic
blaze-builder_port?= devel/hs-blaze-builder
blaze-builder-enumerator_port?= devel/hs-blaze-builder-enumerator
@@ -101,11 +102,11 @@ blaze-html_port?= textproc/hs-blaze-html
blaze-markup_port?= textproc/hs-blaze-markup
blaze-textual_port?= devel/hs-blaze-textual
bloomfilter_port?= devel/hs-bloomfilter
-BNFC_port?= devel/hs-BNFC # executable
Boolean_port?= devel/hs-Boolean
BoundedChan_port?= devel/hs-BoundedChan
boxes_port?= devel/hs-boxes
brainfuck_port?= lang/hs-brainfuck # executable
+bsb-http-chunked_port?= net/hs-bsb-http-chunked
bsd-sysctl_port?= devel/hs-bsd-sysctl
byteable_port?= devel/hs-byteable
byteorder_port?= devel/hs-byteorder
@@ -137,6 +138,7 @@ classy-prelude-conduit_port?= devel/hs-classy-prelude-conduit
clientsession_port?= security/hs-clientsession
clock_port?= devel/hs-clock
cmark_port?= textproc/hs-cmark
+cmark-gfm_port?= textproc/hs-cmark-gfm
cmdargs_port?= devel/hs-cmdargs
code-page_port?= devel/hs-code-page
colour_port?= devel/hs-colour
@@ -173,6 +175,7 @@ cryptohash-sha256_port?= security/hs-cryptohash-sha256
cryptohash-conduit_port?= security/hs-cryptohash-conduit
cryptohash-cryptoapi_port?= security/hs-cryptohash-cryptoapi
cryptonite_port?= security/hs-cryptonite
+cryptonite-conduit_port?= security/hs-cryptonite-conduit
css-text_port?= www/hs-css-text
csv_port?= textproc/hs-csv
curl_port?= ftp/hs-curl # lib_depends
@@ -210,6 +213,7 @@ double-conversion_port?= textproc/hs-double-conversion
DRBG_port?= security/hs-DRBG
ed25519_port?= security/hs-ed25519
easy-file_port?= devel/hs-easy-file
+echo_port?= devel/hs-echo
EdisonAPI_port?= devel/hs-EdisonAPI
EdisonCore_port?= devel/hs-EdisonCore
edit-distance_port?= devel/hs-edit-distance
@@ -274,12 +278,12 @@ happy_port?= devel/hs-happy
hashable_port?= devel/hs-hashable
hashed-storage_port?= devel/hs-hashed-storage
hashtables_port?= devel/hs-hashtables
-haskell-lexer_port?= devel/hs-haskell-lexer
+haskell-lexer_port?= devel/hs-haskell-lexer
haskell-src_port?= devel/hs-haskell-src
haskell-src-exts_port?= devel/hs-haskell-src-exts
+haskell-src-meta_port?= devel/hs-haskell-src-meta
haskell-xmpp_port?= net-im/hs-haskell-xmpp
hasktags_port?= devel/hs-hasktags # executable
-hastache_port?= devel/hs-hastache
HaXml_port?= textproc/hs-HaXml # executable
hedis_port?= databases/hs-hedis
heist_port?= www/hs-heist
@@ -302,6 +306,7 @@ hsb2hs_port?= devel/hs-hsb2hs
hscolour_port?= print/hs-hscolour # executable
hslogger_port?= devel/hs-hslogger
hslua_port?= devel/hs-hslua
+hslua-module-text_port?= devel/hs-hslua-module-text
HsOpenSSL_port?= security/hs-HsOpenSSL
hspec_port?= devel/hs-hspec # executable
hspec-core_port?= devel/hs-hspec-core
@@ -374,7 +379,6 @@ monad-par_port?= devel/hs-monad-par
monad-par-extras_port?= devel/hs-monad-par-extras
monad-unlift_port?= devel/hs-monad-unlift
monadcryptorandom_port?= security/hs-monadcryptorandom
-monadplus_port?= devel/hs-monadplus
MonadRandom_port?= devel/hs-MonadRandom
monads-tf_port?= devel/hs-monads-tf
mono-traversable_port?= devel/hs-mono-traversable
@@ -411,7 +415,6 @@ pandoc-citeproc_port?= textproc/hs-pandoc-citeproc
pandoc-types_port?= textproc/hs-pandoc-types
pango_port?= x11-toolkits/hs-pango
parallel_port?= devel/hs-parallel
-parsec_port?= textproc/hs-parsec
path-pieces_port?= www/hs-path-pieces
pcap_port?= net/hs-pcap
pcre-light_port?= devel/hs-pcre-light # lib_depends
@@ -453,6 +456,7 @@ regex-pcre_port?= textproc/hs-regex-pcre
regex-pcre-builtin_port?= textproc/hs-regex-pcre-builtin # lib_depends
regex-posix_port?= textproc/hs-regex-posix
regex-tdfa_port?= textproc/hs-regex-tdfa
+resolv_port?= net/hs-resolv
resource-pool_port?= devel/hs-resource-pool
resourcet_port?= devel/hs-resourcet
rfc5051_port?= textproc/hs-rfc5051
@@ -482,6 +486,7 @@ simple-reflect_port?= devel/hs-simple-reflect
simple-sendfile_port?= net/hs-simple-sendfile
skein_port?= security/hs-skein
skylighting_port?= textproc/hs-skylighting
+skylighting-core_port?= textproc/hs-skylighting-core
smallcheck_port?= devel/hs-smallcheck
snap_port?= www/hs-snap # executable
snap-core_port?= www/hs-snap-core
@@ -493,6 +498,8 @@ statistics_port?= math/hs-statistics
stm_port?= devel/hs-stm
stm-chans_port?= devel/hs-stm-chans
STMonadTrans_port?= devel/hs-STMonadTrans
+storable-record_port?= devel/hs-storable-record
+storable-tuple_port?= devel/hs-storable-tuple
Stream_port?= devel/hs-Stream
streaming-commons_port?= devel/hs-streaming-commons
strict_port?= devel/hs-strict
@@ -512,13 +519,15 @@ test-framework_port?= devel/hs-test-framework
test-framework-hunit_port?= devel/hs-test-framework-hunit
test-framework-quickcheck2_port?= devel/hs-test-framework-quickcheck2
texmath_port?= textproc/hs-texmath # executable
-text_port?= devel/hs-text
text-icu_port?= devel/hs-text-icu # lib_depends
text-short_port?= devel/hs-text-short
tf-random_port?= devel/hs-tf-random
th-abstraction_port?= devel/hs-th-abstraction
+th-expand-syns_port?= devel/hs-th-expand-syns
th-lift_port?= devel/hs-th-lift
th-lift-instances_port?= devel/hs-th-lift-instances
+th-orphans_port?= devel/hs-th-orphans
+th-reify-many_port?= devel/hs-th-reify-many
threads_port?= devel/hs-threads
threadscope_port?= devel/hs-threadscope # executable
time-compat_port?= devel/hs-time-compat
@@ -534,14 +543,18 @@ TypeCompose_port?= devel/hs-TypeCompose
typed-process_port?= devel/hs-typed-process
unamb_port?= devel/hs-unamb
unexceptionalio_port?= devel/hs-unexceptionalio
+unicode-show_port?= devel/hs-unicode-show
uniplate_port?= devel/hs-uniplate
unix-compat_port?= devel/hs-unix-compat
unix-time_port?= devel/hs-unix-time
unlambda_port?= lang/hs-unlambda # executable
+unliftio_port?= devel/hs-unliftio
+unliftio-core_port?= devel/hs-unliftio-core
unordered-containers_port?= devel/hs-unordered-containers
uri_port?= textproc/hs-uri
uri-bytestring_port?= textproc/hs-uri-bytestring
uri-bytestring-aeson_port?= textproc/hs-uri-bytestring-aeson
+uri-encode_port?= textproc/hs-uri-encode
url_port?= www/hs-url
utf8-light_port?= devel/hs-utf8-light
utf8-string_port?= devel/hs-utf8-string
diff --git a/lang/ghc/distinfo b/lang/ghc/distinfo
index 53d94da1c513..61bea444c10f 100644
--- a/lang/ghc/distinfo
+++ b/lang/ghc/distinfo
@@ -1,9 +1,9 @@
-TIMESTAMP = 1499672924
-SHA256 (ghc-8.0.2-src.tar.xz) = 11625453e1d0686b3fa6739988f70ecac836cadc30b9f0c8b49ef9091d6118b1
-SIZE (ghc-8.0.2-src.tar.xz) = 10687760
-SHA256 (ghc-7.10.2-boot-i386-freebsd.tar.xz) = 5cadd55316fe6c1bf275d0f44f10b46342096922a15ecb9fb78c80fc293f901a
-SIZE (ghc-7.10.2-boot-i386-freebsd.tar.xz) = 39858716
-SHA256 (ghc-7.10.2-boot-amd64-freebsd.tar.xz) = 4af0ee0795537baa11a96fba23477f8390ccb5f45910cda119d0a16bdebaedc8
-SIZE (ghc-7.10.2-boot-amd64-freebsd.tar.xz) = 49833224
-SHA256 (hscolour-1.24.1.tar.gz) = e46fe3de8ed6f96e2216b94b7608d01919bc86b15dd8d0ec7e71c0e7e5bf79c8
-SIZE (hscolour-1.24.1.tar.gz) = 28717
+TIMESTAMP = 1521746767
+SHA256 (ghc-8.4.2-src.tar.xz) = 01cc32f24a06bf3b2428351b6d7fec791e82d042426d29ad9e5a245b35f0047b
+SIZE (ghc-8.4.2-src.tar.xz) = 11313140
+SHA256 (ghc-8.4.2-boot-amd64-freebsd.tar.xz) = 8fe44700c0b765b38a2072c8ea9ddb1da18b4a738397c9ceddcce80708900e4f
+SIZE (ghc-8.4.2-boot-amd64-freebsd.tar.xz) = 72751016
+SHA256 (ghc-8.4.2-boot-i386-freebsd.tar.xz) = 673230735fc459a3c05cf845ef7beeeb6eab9576bc03471b9fb50bd3fe29d911
+SIZE (ghc-8.4.2-boot-i386-freebsd.tar.xz) = 69976728
+SHA256 (hscolour-1.24.4.tar.gz) = 243332b082294117f37b2c2c68079fa61af68b36223b3fc07594f245e0e5321d
+SIZE (hscolour-1.24.4.tar.gz) = 28729
diff --git a/lang/ghc/files/patch-compiler_main_SysTools.hs b/lang/ghc/files/patch-compiler_main_SysTools.hs
deleted file mode 100644
index 06dce352555a..000000000000
--- a/lang/ghc/files/patch-compiler_main_SysTools.hs
+++ /dev/null
@@ -1,12 +0,0 @@
---- compiler/main/SysTools.hs.orig 2017-08-12 09:25:57 UTC
-+++ compiler/main/SysTools.hs
-@@ -907,6 +907,9 @@ getCompilerInfo' dflags = do
- -- Regular clang
- | any ("clang version" `isInfixOf`) stde =
- return Clang
-+ -- FreeBSD clang
-+ | any ("FreeBSD clang version" `isInfixOf`) stde =
-+ return Clang
- -- XCode 5.1 clang
- | any ("Apple LLVM version 5.1" `isPrefixOf`) stde =
- return AppleClang51
diff --git a/lang/ghc/files/patch-configure.ac b/lang/ghc/files/patch-configure.ac
index 8906fbb875dd..5a4a978d08ba 100644
--- a/lang/ghc/files/patch-configure.ac
+++ b/lang/ghc/files/patch-configure.ac
@@ -1,6 +1,6 @@
---- configure.ac.orig 2017-01-04 14:17:17 UTC
+--- configure.ac.orig 2018-03-06 16:48:53 UTC
+++ configure.ac
-@@ -418,6 +418,9 @@ AC_SUBST([SplitObjsBroken])
+@@ -447,6 +447,9 @@ XCODE_VERSION()
dnl ** Building a cross compiler?
dnl --------------------------------------------------------------
CrossCompiling=NO
@@ -10,15 +10,15 @@
# If 'host' and 'target' differ, then this means we are building a cross-compiler.
if test "$TargetPlatform" != "$HostPlatform" ; then
CrossCompiling=YES
-@@ -1057,6 +1060,11 @@ if test "$ac_cv_sizeof_void_p" -eq 8 ; then
- use_large_address_space=yes
- elif test "$ghc_host_os" = "openbsd" ; then
- # as of OpenBSD 5.8 (2015), OpenBSD does not support mmap with MAP_NORESERVE.
-+ # The flag MAP_NORESERVE is supported for source compatibility reasons,
-+ # but is completely ignored by OS mmap
-+ use_large_address_space=no
-+ elif test "$ghc_host_os" = "freebsd" ; then
-+ # FreeBSD does not support mmap with MAP_NORESERVE,r emoved in r273250.
+@@ -1163,6 +1158,11 @@ if test "$ac_cv_sizeof_void_p" -eq 8 ; t
# The flag MAP_NORESERVE is supported for source compatibility reasons,
# but is completely ignored by OS mmap
use_large_address_space=no
++ elif test "$ghc_host_os" = "freebsd" ; then
++ # FreeBSD does not support mmap with MAP_NORESERVE, removed in r273250.
++ # The flag MAP_NORESERVE is supported for source compatibility reasons,
++ # but is completely ignored by OS mmap
++ use_large_address_space=no
+ else
+ AC_CHECK_DECLS([MAP_NORESERVE, MADV_FREE, MADV_DONTNEED],[],[],
+ [
diff --git a/lang/ghc/files/patch-ghc.mk b/lang/ghc/files/patch-ghc.mk
index 8ffda7a16712..8ab4d6e13130 100644
--- a/lang/ghc/files/patch-ghc.mk
+++ b/lang/ghc/files/patch-ghc.mk
@@ -8,14 +8,14 @@
else
$(error Make has restarted itself $(MAKE_RESTARTS) times; is there a makefile bug? See http://ghc.haskell.org/trac/ghc/wiki/Building/Troubleshooting#Makehasrestarteditself3timesisthereamakefilebug for details)
endif
-@@ -465,10 +466,7 @@ PACKAGES_STAGE1 += ghc-boot
+@@ -459,10 +460,7 @@ PACKAGES_STAGE1 += ghc-boot-th
+ PACKAGES_STAGE1 += ghc-boot
PACKAGES_STAGE1 += template-haskell
- PACKAGES_STAGE1 += hoopl
- PACKAGES_STAGE1 += transformers
+ PACKAGES_STAGE1 += ghc-compact
-
-ifeq "$(HADDOCK_DOCS)" "YES"
PACKAGES_STAGE1 += xhtml
-endif
- ifeq "$(Windows_Target)" "NO"
- ifneq "$(TargetOS_CPP)" "ios"
+ ifeq "$(WITH_TERMINFO)" "YES"
+ PACKAGES_STAGE1 += terminfo
diff --git a/lang/ghc/files/patch-includes_rts_storage_ClosureMacros.h b/lang/ghc/files/patch-includes_rts_storage_ClosureMacros.h
deleted file mode 100644
index 77e317c60036..000000000000
--- a/lang/ghc/files/patch-includes_rts_storage_ClosureMacros.h
+++ /dev/null
@@ -1,22 +0,0 @@
---- includes/rts/storage/ClosureMacros.h.orig 2018-01-03 13:27:55 UTC
-+++ includes/rts/storage/ClosureMacros.h
-@@ -499,8 +499,17 @@ INLINE_HEADER StgWord8 *mutArrPtrsCard (
-
- -------------------------------------------------------------------------- */
-
--#define ZERO_SLOP_FOR_LDV_PROF (defined(PROFILING))
--#define ZERO_SLOP_FOR_SANITY_CHECK (defined(DEBUG) && !defined(THREADED_RTS))
-+#if defined(PROFILING)
-+#define ZERO_SLOP_FOR_LDV_PROF 1
-+#else
-+#define ZERO_SLOP_FOR_LDV_PROF 0
-+#endif
-+
-+#if defined(DEBUG) && !defined(THREADED_RTS)
-+#define ZERO_SLOP_FOR_SANITY_CHECK 1
-+#else
-+#define ZERO_SLOP_FOR_SANITY_CHECK 0
-+#endif
-
- #if ZERO_SLOP_FOR_LDV_PROF || ZERO_SLOP_FOR_SANITY_CHECK
- #define OVERWRITING_CLOSURE(c) overwritingClosure(c)
diff --git a/lang/ghc/files/patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs b/lang/ghc/files/patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs
deleted file mode 100644
index c7ddc4addf4f..000000000000
--- a/lang/ghc/files/patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs
+++ /dev/null
@@ -1,11 +0,0 @@
---- libraries/Cabal/Cabal/Distribution/Simple/GHC.hs.orig 2017-01-03 15:59:20 UTC
-+++ libraries/Cabal/Cabal/Distribution/Simple/GHC.hs
-@@ -996,7 +996,7 @@ getRPaths lbi clbi | supportRPaths hostOS = do
- supportRPaths Linux   = True
- supportRPaths Windows = False
- supportRPaths OSX   = True
-- supportRPaths FreeBSD   = False
-+ supportRPaths FreeBSD   = True
- supportRPaths OpenBSD   = False
- supportRPaths NetBSD   = False
- supportRPaths DragonFly = False
diff --git a/lang/ghc/files/patch-libraries__Cabal__Cabal__Distribution__Simple__Program__Builtin.hs b/lang/ghc/files/patch-libraries__Cabal__Cabal__Distribution__Simple__Program__Builtin.hs
index 18f937335935..96b536dc0eab 100644
--- a/lang/ghc/files/patch-libraries__Cabal__Cabal__Distribution__Simple__Program__Builtin.hs
+++ b/lang/ghc/files/patch-libraries__Cabal__Cabal__Distribution__Simple__Program__Builtin.hs
@@ -1,15 +1,15 @@
---- libraries/Cabal/Cabal/Distribution/Simple/Program/Builtin.hs.orig 2017-01-03 15:59:20 UTC
+--- libraries/Cabal/Cabal/Distribution/Simple/Program/Builtin.hs.orig 2017-11-28 16:40:34 UTC
+++ libraries/Cabal/Cabal/Distribution/Simple/Program/Builtin.hs
-@@ -54,6 +54,8 @@ import Distribution.Compat.Exception
+@@ -59,6 +59,8 @@ import Distribution.Compat.Exception
import Distribution.Verbosity
import Distribution.Version
+import System.FilePath (takeDirectory)
+
- import Data.Char
- ( isDigit )
import qualified Data.Map as Map
-@@ -251,11 +253,13 @@ alexProgram = (simpleProgram "alex") {
+
+ -- ------------------------------------------------------------
+@@ -265,11 +267,13 @@ alexProgram = (simpleProgram "alex") {
gccProgram :: Program
gccProgram = (simpleProgram "gcc") {
@@ -26,7 +26,7 @@
stripProgram :: Program
stripProgram = (simpleProgram "strip") {
-@@ -311,7 +315,9 @@ greencardProgram :: Program
+@@ -337,7 +341,9 @@ greencardProgram :: Program
greencardProgram = simpleProgram "greencard"
ldProgram :: Program
diff --git a/lang/ghc/files/patch-rts_Linker.c b/lang/ghc/files/patch-rts_Linker.c
deleted file mode 100644
index 9597fe887603..000000000000
--- a/lang/ghc/files/patch-rts_Linker.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- rts/Linker.c.orig 2017-08-12 09:22:13 UTC
-+++ rts/Linker.c
-@@ -797,7 +797,7 @@ initLinker_ (int retain_cafs)
- # endif /* RTLD_DEFAULT */
-
- compileResult = regcomp(&re_invalid,
-- "(([^ \t()])+\\.so([^ \t:()])*):([ \t])*(invalid ELF header|file too short)",
-+ "(([^ \t()])+\\.so([^ \t:()])*):([ \t])*(invalid ELF header|file too short|invalid file format)",
- REG_EXTENDED);
- if (compileResult != 0) {
- barf("Compiling re_invalid failed");