Date: Sat, 8 Dec 2018 18:47:16 +0000 (UTC) From: Gleb Popov <arrowd@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r486978 - in head/lang: . ghc ghc862 ghc862/files Message-ID: <201812081847.wB8IlG63092502@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: arrowd Date: Sat Dec 8 18:47:16 2018 New Revision: 486978 URL: https://svnweb.freebsd.org/changeset/ports/486978 Log: lang/ghc862: Add a port for GHC 8.6.2. Reviewed by: Mikael Urankar <mikael.urankar@gmail.com> (ARM bits), tcberner Approved by: tcberner (mentor) Differential Revision: https://reviews.freebsd.org/D18397 Added: head/lang/ghc862/ - copied from r486969, head/lang/ghc/ Deleted: head/lang/ghc862/bsd.cabal.mk head/lang/ghc862/bsd.cabal.options.mk head/lang/ghc862/bsd.ghc.mk head/lang/ghc862/bsd.hackage.mk head/lang/ghc862/files/patch-configure head/lang/ghc862/files/patch-fix-build-on-arm head/lang/ghc862/files/patch-llvm-targets head/lang/ghc862/files/patch-rts_posix_OSMem.c head/lang/ghc862/pkg-plist Modified: head/lang/Makefile head/lang/ghc/bsd.ghc.mk head/lang/ghc862/Makefile head/lang/ghc862/distinfo head/lang/ghc862/files/extra-patch-aclocal.m4 head/lang/ghc862/files/patch-ghc.mk Modified: head/lang/Makefile ============================================================================== --- head/lang/Makefile Sat Dec 8 18:47:16 2018 (r486977) +++ head/lang/Makefile Sat Dec 8 18:47:16 2018 (r486978) @@ -113,6 +113,7 @@ SUBDIR += gforth SUBDIR += ghc SUBDIR += ghc843 + SUBDIR += ghc862 SUBDIR += gjs SUBDIR += gnat_util SUBDIR += gnatcross-aarch64 Modified: head/lang/ghc/bsd.ghc.mk ============================================================================== --- head/lang/ghc/bsd.ghc.mk Sat Dec 8 18:47:16 2018 (r486977) +++ head/lang/ghc/bsd.ghc.mk Sat Dec 8 18:47:16 2018 (r486978) @@ -85,6 +85,19 @@ BOOT_GHC_VERSION= 8.4.2 . else BOOT_GHC_VERSION= 8.4.3 . endif + +# When GHC being compiled and GHC used for bootstrapping support different +# LLVM versions, we have to pull in both. Luckily, this is relatively rare. +. if ${ARCH} == aarch64 || ${ARCH} == armv6 || ${ARCH} == armv7 +# LLVM version that bootstrap compiler uses +BOOT_LLVM_VERSION= 50 + +. if ${BOOT_LLVM_VERSION} != ${LLVM_VERSION} +BUILD_DEPENDS+= llc${BOOT_LLVM_VERSION}:devel/llvm${BOOT_LLVM_VERSION} +RUN_DEPENDS+= llc${BOOT_LLVM_VERSION}:devel/llvm${BOOT_LLVM_VERSION} +. endif +. endif + DISTFILES+= ghc-${BOOT_GHC_VERSION}-boot-${ARCH}-freebsd${EXTRACT_SUFX}:boot .endif # MBOOT Modified: head/lang/ghc862/Makefile ============================================================================== --- head/lang/ghc/Makefile Sat Dec 8 18:00:22 2018 (r486969) +++ head/lang/ghc862/Makefile Sat Dec 8 18:47:16 2018 (r486978) @@ -1,8 +1,8 @@ -# Created by: Simon Marlow <simonmar@microsoft.com> # $FreeBSD$ PORTNAME= ghc PORTVERSION= ${GHC_VERSION} +PKGNAMESUFFIX= 862 CATEGORIES= lang haskell MASTER_SITES= http://www.haskell.org/ghc/dist/${PORTVERSION}/:source \ LOCAL/arrowd/:boot \ @@ -18,11 +18,13 @@ COMMENT= Compiler for the functional language Haskell LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -GHC_VERSION= 8.4.4 +GHC_VERSION= 8.6.2 HSCOLOUR_VERSION= 1.24.4 -LLVM_VERSION= 50 +LLVM_VERSION= 60 -CONFLICTS_INSTALL= ghc-7.4.* ghc-7.6.* ghc-7.8.* ghc-7.10.* ghc-8.0.* ghc-8.4.3 +CONFLICTS_INSTALL= ghc-7.4.* ghc-7.6.* ghc-7.8.* ghc-7.10.* ghc-8.0.* ghc-8.4.* + +PLIST= ${.CURDIR}/../../lang/ghc/pkg-plist .include "${.CURDIR}/../../lang/ghc/bsd.ghc.mk" Modified: head/lang/ghc862/distinfo ============================================================================== --- head/lang/ghc/distinfo Sat Dec 8 18:00:22 2018 (r486969) +++ head/lang/ghc862/distinfo Sat Dec 8 18:47:16 2018 (r486978) @@ -1,14 +1,14 @@ -TIMESTAMP = 1541010522 -SHA256 (ghc-8.4.4-src.tar.xz) = 11117735a58e507c481c09f3f39ae5a314e9fbf49fc3109528f99ea7959004b2 -SIZE (ghc-8.4.4-src.tar.xz) = 11319500 +TIMESTAMP = 1543568924 +SHA256 (ghc-8.6.2-src.tar.xz) = caaa819d21280ecde90a4773143dee188711e9ff175a27cfbaee56eb851d76d5 +SIZE (ghc-8.6.2-src.tar.xz) = 19024236 SHA256 (ghc-8.4.3-boot-amd64-freebsd.tar.xz) = 0e0324a539d471a813ed4d18c537fb19be22a4e250bd5434a3a911b9d5343724 SIZE (ghc-8.4.3-boot-amd64-freebsd.tar.xz) = 67718400 SHA256 (ghc-8.4.3-boot-i386-freebsd.tar.xz) = 65fcd48b1c0166e028b3f6d50ad295525e6b84490da82663ec66165e57e87972 SIZE (ghc-8.4.3-boot-i386-freebsd.tar.xz) = 66143592 SHA256 (hscolour-1.24.4.tar.gz) = 243332b082294117f37b2c2c68079fa61af68b36223b3fc07594f245e0e5321d SIZE (hscolour-1.24.4.tar.gz) = 28729 -SHA256 (ghc-8.4.3-boot-aarch64-freebsd.tar.xz) = 84611f37d31a43a3216274ee7dcee4b89f2c5ef6ab713222f266b5658c736e05 -SIZE (ghc-8.4.3-boot-aarch64-freebsd.tar.xz) = 99933576 +SHA256 (ghc-8.4.2-boot-aarch64-freebsd.tar.xz) = 18412f10bb172dbaff7f31505845fbd43fdde14046463fdacc42e26683be311d +SIZE (ghc-8.4.2-boot-aarch64-freebsd.tar.xz) = 100240140 SHA256 (ghc-8.4.2-boot-armv6-freebsd.tar.xz) = 61d3a4486dbb904b05a735e98f23a49c2b464d6b19212dd655ff578f36d02f0d SIZE (ghc-8.4.2-boot-armv6-freebsd.tar.xz) = 107368936 SHA256 (ghc-8.4.2-boot-armv7-freebsd.tar.xz) = eedb9416870bfe82315155751871e31e815b718b381ccf4f7e45a99a6ad7c94d Modified: head/lang/ghc862/files/extra-patch-aclocal.m4 ============================================================================== --- head/lang/ghc/files/extra-patch-aclocal.m4 Sat Dec 8 18:00:22 2018 (r486969) +++ head/lang/ghc862/files/extra-patch-aclocal.m4 Sat Dec 8 18:47:16 2018 (r486978) @@ -1,46 +1,8 @@ --- aclocal.m4.orig 2018-03-25 21:22:32 UTC +++ aclocal.m4 -@@ -648,6 +648,14 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS], - $3="$$3 -D_HPUX_SOURCE" - $5="$$5 -D_HPUX_SOURCE" - ;; -+ arm*freebsd*) -+ # On arm/freebsd, tell gcc to generate Arm -+ # 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 -Wl,-z,noexecstack" -+ $4="$$4 -z noexecstack" -+ ;; - arm*linux*) - # On arm/linux and arm/android, tell gcc to generate Arm - # instructions (ie not Thumb). -@@ -656,6 +664,11 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS], - $4="$$4 -z noexecstack" - ;; - -+ aarch64*freebsd*) -+ $3="$$3 -Wl,-z,noexecstack" -+ $4="$$4 -z noexecstack" -+ ;; -+ - aarch64*linux*) - $3="$$3 -Wl,-z,noexecstack" - $4="$$4 -z noexecstack" -@@ -1917,6 +1930,10 @@ case "$1" in - # converts the canonicalized target into someting llvm can understand - AC_DEFUN([GHC_LLVM_TARGET], [ - case "$2-$3" in -+ *-freebsd*-gnueabihf) -+ llvm_target_vendor="unknown" -+ llvm_target_os="freebsd-gnueabihf" -+ ;; - hardfloat-*eabi) - llvm_target_vendor="unknown" - llvm_target_os="$3""hf" @@ -2361,13 +2378,6 @@ AC_DEFUN([FIND_LD],[ [enable_ld_override=yes]) - + find_ld() { - # Make sure the user didn't specify LD manually. - if test "z$LD" != "z"; then Modified: head/lang/ghc862/files/patch-ghc.mk ============================================================================== --- head/lang/ghc/files/patch-ghc.mk Sat Dec 8 18:00:22 2018 (r486969) +++ head/lang/ghc862/files/patch-ghc.mk Sat Dec 8 18:47:16 2018 (r486978) @@ -1,4 +1,4 @@ ---- ghc.mk.orig 2017-01-03 15:59:18 UTC +--- ghc.mk.orig 2018-09-16 20:53:54 UTC +++ ghc.mk @@ -96,6 +96,7 @@ endif # Catch make if it runs away into an infinite loop @@ -8,14 +8,13 @@ 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 -@@ -459,10 +460,7 @@ PACKAGES_STAGE1 += ghc-boot-th - PACKAGES_STAGE1 += ghc-boot - PACKAGES_STAGE1 += template-haskell +@@ -461,9 +462,7 @@ PACKAGES_STAGE1 += template-haskell PACKAGES_STAGE1 += ghc-compact -- + PACKAGES_STAGE1 += ghc-heap + -ifeq "$(HADDOCK_DOCS)" "YES" PACKAGES_STAGE1 += xhtml -endif - + ifeq "$(WITH_TERMINFO)" "YES" PACKAGES_STAGE1 += terminfo
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201812081847.wB8IlG63092502>