aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGleb Popov <arrowd@FreeBSD.org>2025-07-07 10:43:26 +0000
committerGleb Popov <arrowd@FreeBSD.org>2025-07-11 18:03:07 +0000
commit5920333c65dd2220ee89b8368c3c6bce61435640 (patch)
tree003c64ce1dcbed7ebc2b49f2b4a43fcce26d570a
parent94fffe53fc2d6c42ca3d8063449c1cd5211629c2 (diff)
lang/ghc: Continue with cleanups
- Remove INSTALL_TARGET as it is now the same for all GHCs and matches the default - Remove GHCs 8.10.7 from distinfo, these are unused now - Remove USE_PERL5 - Stop generating build.mk, it isn't used by Hadrian build system - Move BOOT_SCRIPT definition into the slave port - Dedup BOOT_DIR
-rw-r--r--lang/ghc/Makefile34
-rw-r--r--lang/ghc/distinfo6
-rw-r--r--lang/ghc92/Makefile1
3 files changed, 3 insertions, 38 deletions
diff --git a/lang/ghc/Makefile b/lang/ghc/Makefile
index cd524d948dc2..9e953ed13e2d 100644
--- a/lang/ghc/Makefile
+++ b/lang/ghc/Makefile
@@ -24,9 +24,7 @@ USES= autoreconf compiler:c11 gmake \
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --docdir=${DOCSDIR}
CONFIGURE_ENV= ALEX=/usr/bin/true HAPPY=/usr/bin/true
-INSTALL_TARGET= install-strip
USE_LOCALE= en_US.UTF-8
-USE_PERL5= build
NO_CCACHE= yes
OPTIONS_SUB= yes
SHEBANG_FILES= ${BOOT_SCRIPT}
@@ -96,25 +94,9 @@ BASE_PACKAGES?= Cabal-3.10.3.0 array-0.5.8.0 base-4.19.2.0 binary-0.8.9.1 \
PLIST_SUB+= ${pkg:C/-([0-9.])+//:tu}_VERSION=${pkg:C/^([^\.]*-)+//}
.endfor
-BUILD_MK= DYNAMIC_GHC_PROGRAMS=${ENABLE_DYNAMIC} \
- BUILD_PROF_LIBS=${ENABLE_PROFILE} \
- HADDOCK_DOCS=YES \
- BUILD_SPHINX_HTML=${ENABLE_DOCS} \
- BUILD_SPHINX_PDF=NO \
- SRC_HC_OPTS+="-I${NCURSESINC} -L${NCURSESLIB} -I${LOCALBASE}/include -L${LOCALBASE}/lib" \
- SRC_CC_OPTS+="${CFLAGS}" \
- EXTRA_HSC2HS_OPTS+="-I${LOCALBASE}/include --lflag=-L${LOCALBASE}/lib" \
- EXTRA_LD_OPTS+="-L${LOCALBASE}/lib" \
- libraries/terminfo_CONFIGURE_OPTS+="--configure-option=--with-curses-libraries=${NCURSESLIB}" \
- V=0
-
.include <bsd.port.pre.mk>
-.if ${GHC_VERSION:C/\..*//g} >= 9 && ${GHC_VERSION:C/[^\.]*\.//:C/\..*//g} >= 4
-BOOT_SCRIPT= ./boot.source
-.else
-BOOT_SCRIPT= ./boot
-.endif
+BOOT_SCRIPT?= ./boot.source
.if ${SLAVE_PORT} != "yes"
PORTDOCS= *
@@ -134,7 +116,6 @@ HADRIAN_CMD= ${WRKSRC}/hadrian/bootstrap/_build/bin/hadrian ${HADRIAN_DOCS_ARG}
DO_MAKE_BUILD= ${SETENVI} ${WRK_ENV} ${HADRIAN_CMD} ${_MAKE_JOBS} --flavour=ports
ALL_TARGET= binary-dist-dir
INSTALL_WRKSRC= ${WRKSRC}/_build/bindist/ghc-${GHC_VERSION}-${CONFIGURE_TARGET}
-INSTALL_TARGET= install
PLIST?= ${.CURDIR}/pkg-plist.hadrian
.if (empty(PORT_OPTIONS:MDYNAMIC) || empty(PORT_OPTIONS:MPROFILE))
@@ -143,16 +124,12 @@ IGNORE= Building with Hadrian requires both DYNAMIC and PROFILE for now
GHC_ARCH= ${ARCH:S/amd64/x86_64/:C/armv.*/arm/}
CONFIGURE_TARGET= ${GHC_ARCH}-portbld-${OPSYS:tl}
-BOOT_DIR= ${WRKDIR}/ghc-${BOOT_GHC_VERSION}-boot
+BOOT_DIR= ${WRKDIR}/ghc-${BOOT_GHC_VERSION}-${CONFIGURE_TARGET}
BOOT_INSTALL_DIR= ${WRKDIR}/ghc-boot-install
BOOT_GHC= ${BOOT_INSTALL_DIR}/bin/ghc-${BOOT_GHC_VERSION}
PLIST_SUB+= GHC_ARCH=${GHC_ARCH}
-.if ${BOOT_GHC_VERSION:C/\..*//g} >= 9
-BOOT_DIR= ${WRKDIR}/ghc-${BOOT_GHC_VERSION}-${CONFIGURE_TARGET}
-.endif
-
.if empty(PORT_OPTIONS:MBOOT)
DISTFILES+= ghc-${BOOT_GHC_VERSION}-boot-${ARCH}-freebsd${EXTRACT_SUFX}:boot
.endif # MBOOT
@@ -167,11 +144,6 @@ CONFIGURE_ARGS+= --host=${CONFIGURE_TARGET}
.endif
post-patch:
-# Generate the build.mk file
- ${RM} -f ${WRKSRC}/mk/build.mk
-.for line in ${BUILD_MK}
- ${ECHO_CMD} ${line} >> ${WRKSRC}/mk/build.mk
-.endfor
${SED} -e 's|%%DYNAMIC%%|${HADRIAN_SETTING_DYNAMIC}|' \
-e 's|%%PROFILE%%|${HADRIAN_SETTING_PROFILE}|' \
${PATCHDIR}/UserSettings.hs > ${WRKSRC}/hadrian/src/UserSettings.hs
@@ -197,8 +169,6 @@ post-install:
# These includes are duplicated in lib/ghc-X.Y.Z/lib/<triple>/rts-X.Y.Z/include
${RM} -r ${STAGEDIR}${PREFIX}/include/*
${FIND} ${STAGEDIR}${DOCSDIR} -name .buildinfo -delete
-# For some reason, INSTALL_TARGET=install-strip doesn't cause libraries to be stripped
-# Run strip on them manually
${FIND} ${STAGEDIR}${PREFIX}/lib/ghc-${GHC_VERSION} -type f -perm +111 -exec ${STRIP_CMD} {} +
${FIND} ${STAGEDIR}${PREFIX}/lib/ghc-${GHC_VERSION} -name '*.so' -exec ${STRIP_CMD} {} +
${RM} ${STAGEDIR}${PREFIX}/bin/haddock
diff --git a/lang/ghc/distinfo b/lang/ghc/distinfo
index 6e28846db063..6f993e1489ed 100644
--- a/lang/ghc/distinfo
+++ b/lang/ghc/distinfo
@@ -7,8 +7,6 @@ SHA256 (ghc-9.4.8-src.tar.xz) = 0bf407eb67fe3e3c24b0f4c8dea8cb63e07f63ca0f76cf20
SIZE (ghc-9.4.8-src.tar.xz) = 28655220
SHA256 (ghc-9.2.8-src.tar.xz) = 5f13d1786bf4fd12f4b45faa37abedb5bb3f36d5e58f7da5307e8bfe88a567a1
SIZE (ghc-9.2.8-src.tar.xz) = 24661260
-SHA256 (ghc-8.10.7-src.tar.xz) = e3eef6229ce9908dfe1ea41436befb0455fefb1932559e860ad4c606b0d03c9d
-SIZE (ghc-8.10.7-src.tar.xz) = 19932668
SHA256 (hadrian-9.8.4-boot.tar.gz) = 2fb02cce43603552387a241ece60a656fb8f4c97a9001134fd1c43f37e20906e
SIZE (hadrian-9.8.4-boot.tar.gz) = 1582315
SHA256 (hadrian-9.6.7-boot.tar.gz) = f81dc59b4aef59c62c645da7be0b1fb8720aba338c80004963a99bc1219d3a05
@@ -21,11 +19,7 @@ SHA256 (ghc-9.6.7-boot-amd64-freebsd.tar.xz) = d55285c5998f3f040f52e159bc3b381dd
SIZE (ghc-9.6.7-boot-amd64-freebsd.tar.xz) = 125512852
SHA256 (ghc-9.2.8-boot-amd64-freebsd.tar.xz) = 8b172a963e316a57906edb7914be765021337a685e578bc3303db072aee3eb16
SIZE (ghc-9.2.8-boot-amd64-freebsd.tar.xz) = 117864544
-SHA256 (ghc-8.10.7-boot-amd64-freebsd.tar.xz) = bde05fc239d962a4caea55d8c51a249145ef9a91695214b189078603d95e9b5b
-SIZE (ghc-8.10.7-boot-amd64-freebsd.tar.xz) = 70284268
SHA256 (ghc-9.6.7-boot-aarch64-freebsd.tar.xz) = 0c5abc06413c081240ab471592c78e350d1e0fcaf81559c25f3030dfa287ceb6
SIZE (ghc-9.6.7-boot-aarch64-freebsd.tar.xz) = 132563424
SHA256 (ghc-9.2.8-boot-aarch64-freebsd.tar.xz) = 23da026e3a9f1a4569aa7a464be016fc39b05afc9209e0d7662e151260b4964c
SIZE (ghc-9.2.8-boot-aarch64-freebsd.tar.xz) = 124830556
-SHA256 (ghc-8.10.7-boot-aarch64-freebsd.tar.xz) = f1bc49999d0db33fbf7ada6696ebebe1639126924c89deed83539850c435e23c
-SIZE (ghc-8.10.7-boot-aarch64-freebsd.tar.xz) = 124950584
diff --git a/lang/ghc92/Makefile b/lang/ghc92/Makefile
index c437b0dea4c9..581c993ac89a 100644
--- a/lang/ghc92/Makefile
+++ b/lang/ghc92/Makefile
@@ -18,6 +18,7 @@ BASE_PACKAGES= Cabal-3.6.3.0 array-0.5.4.0 base-4.16.4.0 binary-0.8.9.0 \
process-1.6.16.0 stm-2.5.0.2 template-haskell-2.18.0.0 \
terminfo-0.4.1.5 text-1.2.5.0 time-1.11.1.1 \
transformers-0.5.6.2 unix-2.7.2.2 xhtml-3000.2.2.1
+BOOT_SCRIPT= ./boot
BOOT_GHC_VERSION= 9.2.8
BOOT_LLVM_VERSION= 12