Port the $ORIGIN removal patch from ghc88diff -r1.1 -r1.2 pkgsrc/lang/ghc810/DESCR
(pho)
@@ -1,12 +1,15 @@ | @@ -1,12 +1,15 @@ | |||
1 | GHC: The Glasgow Haskell Compiler. | 1 | GHC: The Glasgow Haskell Compiler. | |
2 | 2 | |||
3 | The Glasgow Haskell Compiler is a robust, fully-featured, optimising | 3 | The Glasgow Haskell Compiler is a robust, fully-featured, optimising | |
4 | compiler for the functional programming language Haskell 98 | 4 | compiler for the functional programming language Haskell 98 | |
5 | (http://www.haskell.org). GHC compiles Haskell to either native code | 5 | (http://www.haskell.org). GHC compiles Haskell to either native code | |
6 | or C. It implements numerous experimental language extensions to | 6 | or C. It implements numerous experimental language extensions to | |
7 | Haskell, including concurrency, a foreign language interface, several | 7 | Haskell, including concurrency, a foreign language interface, several | |
8 | type-system extensions, exceptions, and so on. GHC comes with a | 8 | type-system extensions, exceptions, and so on. GHC comes with a | |
9 | generational garbage collector, a space and time profiler, and a | 9 | generational garbage collector, a space and time profiler, and a | |
10 | comprehensive set of libraries. | 10 | comprehensive set of libraries. | |
11 | 11 | |||
12 | This package provides the 8.10.x release series. | 12 | This package provides the 8.10.x release series which have been | |
13 | superseded by GHC 9.0.x (lang/ghc90). There is basically no reason why | |||
14 | one would want to use this anymore, as GHC 9 can also be bootstrapped | |||
15 | using GHC 8.8. |
@@ -1,14 +1,14 @@ | @@ -1,14 +1,14 @@ | |||
1 | # $NetBSD: bootstrap.mk,v 1.1 2021/02/09 13:16:24 ryoon Exp $ | 1 | # $NetBSD: bootstrap.mk,v 1.2 2021/05/01 04:43:57 pho Exp $ | |
2 | # ----------------------------------------------------------------------------- | 2 | # ----------------------------------------------------------------------------- | |
3 | # Select a bindist of bootstrapping compiler on a per-platform basis. | 3 | # Select a bindist of bootstrapping compiler on a per-platform basis. | |
4 | # | 4 | # | |
5 | # BOOT_ARCHIVE | 5 | # BOOT_ARCHIVE | |
6 | # This variable is set to the name of compressed archive file of a | 6 | # This variable is set to the name of compressed archive file of a | |
7 | # bootstrapping compiler for the current platform. | 7 | # bootstrapping compiler for the current platform. | |
8 | # | 8 | # | |
9 | # BOOT_VERSION | 9 | # BOOT_VERSION | |
10 | # Version of the bootstrapping compiler to use. This can be | 10 | # Version of the bootstrapping compiler to use. This can be | |
11 | # overriden for specific platforms. | 11 | # overriden for specific platforms. | |
12 | # | 12 | # | |
13 | .include "../../mk/bsd.prefs.mk" | 13 | .include "../../mk/bsd.prefs.mk" | |
14 | 14 | |||
@@ -44,27 +44,27 @@ | @@ -44,27 +44,27 @@ | |||
44 | #DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS | 44 | #DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS | |
45 | #.endif | 45 | #.endif | |
46 | 46 | |||
47 | #.if !empty(MACHINE_PLATFORM:MFreeBSD-*-x86_64) || make(distinfo) || make(makesum) || make(mdi) | 47 | #.if !empty(MACHINE_PLATFORM:MFreeBSD-*-x86_64) || make(distinfo) || make(makesum) || make(mdi) | |
48 | #BOOT_VERSION:= 8.4.4 | 48 | #BOOT_VERSION:= 8.4.4 | |
49 | #BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-x86_64-unknown-freebsd.tar.xz | 49 | #BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-x86_64-unknown-freebsd.tar.xz | |
50 | #DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS | 50 | #DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS | |
51 | #.endif | 51 | #.endif | |
52 | 52 | |||
53 | .if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || make(distinfo) || make (makesum) || make(mdi) | 53 | .if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || make(distinfo) || make (makesum) || make(mdi) | |
54 | BOOT_VERSION:= 8.8.4 | 54 | BOOT_VERSION:= 8.8.4 | |
55 | BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-x86_64-unknown-netbsd.tar.xz | 55 | BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-x86_64-unknown-netbsd.tar.xz | |
56 | DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS | 56 | DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS | |
57 | . if !empty(MACHINE_PLATFORM:MNetBSD-9.99*-x86_64) || make(distinfo) || make (makesum) || make(mdi) | 57 | . if !empty(MACHINE_PLATFORM:MNetBSD-9.99.*-x86_64) || make(distinfo) || make (makesum) || make(mdi) | |
58 | DISTFILES+= netbsd-9.0-amd64-libterminfo.tar.gz | 58 | DISTFILES+= netbsd-9.0-amd64-libterminfo.tar.gz | |
59 | EXTRACT_ONLY+= netbsd-9.0-amd64-libterminfo.tar.gz | 59 | EXTRACT_ONLY+= netbsd-9.0-amd64-libterminfo.tar.gz | |
60 | . endif | 60 | . endif | |
61 | .endif | 61 | .endif | |
62 | 62 | |||
63 | #.if !empty(MACHINE_PLATFORM:MSunOS-*-i386) || make(distinfo) || make (makesum) || make(mdi) | 63 | #.if !empty(MACHINE_PLATFORM:MSunOS-*-i386) || make(distinfo) || make (makesum) || make(mdi) | |
64 | #BOOT_VERSION:= 8.4.4 | 64 | #BOOT_VERSION:= 8.4.4 | |
65 | #BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-i386-unknown-solaris2.tar.xz | 65 | #BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-i386-unknown-solaris2.tar.xz | |
66 | #DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS | 66 | #DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS | |
67 | #.endif | 67 | #.endif | |
68 | 68 | |||
69 | #.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi) | 69 | #.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi) | |
70 | #BOOT_VERSION:= 8.4.4 | 70 | #BOOT_VERSION:= 8.4.4 |
@@ -1,19 +1,19 @@ | @@ -1,19 +1,19 @@ | |||
1 | # $NetBSD: Makefile,v 1.3 2021/04/27 13:55:25 pho Exp $ | 1 | # $NetBSD: Makefile,v 1.4 2021/05/01 04:43:57 pho Exp $ | |
2 | # ----------------------------------------------------------------------------- | 2 | # ----------------------------------------------------------------------------- | |
3 | # Package metadata | 3 | # Package metadata | |
4 | # | 4 | # | |
5 | DISTNAME= ghc-8.10.4-src | 5 | DISTNAME= ghc-8.10.4-src | |
6 | PKGREVISION= 1 | 6 | PKGREVISION= 2 | |
7 | PKGNAME= ${DISTNAME:S/-src$//} | 7 | PKGNAME= ${DISTNAME:S/-src$//} | |
8 | CATEGORIES= lang | 8 | CATEGORIES= lang | |
9 | MASTER_SITES= https://downloads.haskell.org/~ghc/${PKGVERSION_NOREV}/ | 9 | MASTER_SITES= https://downloads.haskell.org/~ghc/${PKGVERSION_NOREV}/ | |
10 | EXTRACT_SUFX= .tar.xz | 10 | EXTRACT_SUFX= .tar.xz | |
11 | 11 | |||
12 | MAINTAINER= pkgsrc-users@NetBSD.org | 12 | MAINTAINER= pkgsrc-users@NetBSD.org | |
13 | HOMEPAGE= https://www.haskell.org/ghc/ | 13 | HOMEPAGE= https://www.haskell.org/ghc/ | |
14 | COMMENT= Compiler for the functional language Haskell - 8.10 Release Series | 14 | COMMENT= Compiler for the functional language Haskell - 8.10 Release Series | |
15 | LICENSE= modified-bsd | 15 | LICENSE= modified-bsd | |
16 | 16 | |||
17 | UNLIMIT_RESOURCES= datasize virtualsize | 17 | UNLIMIT_RESOURCES= datasize virtualsize | |
18 | 18 | |||
19 | # TODO: We should be using the alternatives framework. | 19 | # TODO: We should be using the alternatives framework. | |
@@ -192,62 +192,46 @@ post-install: | @@ -192,62 +192,46 @@ post-install: | |||
192 | # [2019-12-27; pho]. | 192 | # [2019-12-27; pho]. | |
193 | GENERATE_PLIST+= \ | 193 | GENERATE_PLIST+= \ | |
194 | cd ${DESTDIR}${PREFIX} && \ | 194 | cd ${DESTDIR}${PREFIX} && \ | |
195 | ${FIND} * \( -type f -o -type l \) | ${SORT}; | 195 | ${FIND} * \( -type f -o -type l \) | ${SORT}; | |
196 | 196 | |||
197 | 197 | |||
198 | # ----------------------------------------------------------------------------- | 198 | # ----------------------------------------------------------------------------- | |
199 | # Sanity checks | 199 | # Sanity checks | |
200 | # | 200 | # | |
201 | 201 | |||
202 | # There is an unused script which don't pass the portability test. | 202 | # There is an unused script which don't pass the portability test. | |
203 | CHECK_PORTABILITY_SKIP+= distrib/prep-bin-dist-mingw | 203 | CHECK_PORTABILITY_SKIP+= distrib/prep-bin-dist-mingw | |
204 | 204 | |||
205 | # Dynamically linked Haskell executables and libraries have rpaths to | |||
206 | # dependent Haskell libraries, but the problem is that they are | |||
207 | # specified with $ORIGIN, which isn't currently supported by | |||
208 | # ../../mk/check/check-shlibs-elf.awk nor | |||
209 | # mk/pkgformat/pkg/metadata.mk. | |||
210 | # | |||
211 | # This means we need to disable the entire CHECK_SHLIBS machinery | |||
212 | # because otherwise the resulting binary package would contain | |||
213 | # REQUIRES lines with $ORIGIN wrongly expanded by ldd(1). | |||
214 | # | |||
215 | # Note that arguments like "-Wl,-rpath,$ORIGIN/.." are usually dropped | |||
216 | # by the "cleanup" phase of wrappers. This is not the case in GHC | |||
217 | # because GHC uses @file syntax while linking objects, and our | |||
218 | # wrappers does nothing about it. | |||
219 | CHECK_SHLIBS_SUPPORTED= no | |||
220 | ||||
221 | # ghc57207_0.s: failed to add inputs for merge: Resource temporarily unavailable | 205 | # ghc57207_0.s: failed to add inputs for merge: Resource temporarily unavailable | |
222 | CTF_FILES_SKIP+= */libHS*-ghc${PKGVERSION_NOREV}.* | 206 | CTF_FILES_SKIP+= */libHS*-ghc${PKGVERSION_NOREV}.* | |
223 | 207 | |||
224 | # ld: fatal: relocation error ... relocation requires reference symbol | 208 | # ld: fatal: relocation error ... relocation requires reference symbol | |
225 | STRIP_FILES_SKIP+= lib/${PKGNAME_NOREV}/libHSrts.a | 209 | STRIP_FILES_SKIP+= lib/${PKGNAME_NOREV}/libHSrts.a | |
226 | 210 | |||
227 | 211 | |||
228 | # ----------------------------------------------------------------------------- | 212 | # ----------------------------------------------------------------------------- | |
229 | # Dependencies | 213 | # Dependencies | |
230 | # | 214 | # | |
231 | .if ${BUILD_SPHINX_HTML} != "no" | 215 | .if ${BUILD_SPHINX_HTML} != "no" | |
232 | BUILDLINK_DEPMETHOD.python:= build | 216 | BUILDLINK_DEPMETHOD.python:= build | |
233 | .include "../../lang/python/pyversion.mk" | 217 | .include "../../lang/python/pyversion.mk" | |
234 | BUILD_DEPENDS+= ${PYPKGPREFIX}-sphinx-[0-9]*:../../textproc/py-sphinx | 218 | BUILD_DEPENDS+= ${PYPKGPREFIX}-sphinx-[0-9]*:../../textproc/py-sphinx | |
235 | .endif | 219 | .endif | |
236 | 220 | |||
237 | # NetBSD 9.x have libcurses with a newer major version than the | 221 | # NetBSD 9.x have libcurses with a newer major version than the | |
238 | # bootstrap kit is linked against. For now, work around this with | 222 | # bootstrap kit is linked against. For now, work around this with | |
239 | # compat80. | 223 | # compat80. | |
240 | .if ${OPSYS} == "NetBSD" && empty(OS_VERSION:M[0-8].*) | 224 | .if ${OPSYS} == "NetBSD" && empty(OS_VERSION:M[0-8].*) | |
241 | BUILD_DEPENDS+= compat80-[0-9]*:../../emulators/compat80 | 225 | BUILD_DEPENDS+= compat80-[0-9]*:../../emulators/compat80 | |
242 | # In a sandboxed build environment, we have to reach over to the | 226 | # In a sandboxed build environment, we have to reach over to the | |
243 | # installed libraries themselves, since the symlinks compat80 adds | 227 | # installed libraries themselves, since the symlinks compat80 adds | |
244 | # to the /usr tree can't be applied. | 228 | # to the /usr tree can't be applied. | |
245 | ALL_ENV+= LD_LIBRARY_PATH=${PREFIX}/emul/netbsd/usr/lib:${WRKDIR}/lib:${FILESDIR} | 229 | ALL_ENV+= LD_LIBRARY_PATH=${PREFIX}/emul/netbsd/usr/lib:${WRKDIR}/lib | |
246 | .endif | 230 | .endif | |
247 | 231 | |||
248 | .include "../../converters/libiconv/buildlink3.mk" | 232 | .include "../../converters/libiconv/buildlink3.mk" | |
249 | .include "../../devel/libffi/buildlink3.mk" | 233 | .include "../../devel/libffi/buildlink3.mk" | |
250 | .include "../../devel/gmp/buildlink3.mk" | 234 | .include "../../devel/gmp/buildlink3.mk" | |
251 | .include "../../mk/curses.buildlink3.mk" | 235 | .include "../../mk/curses.buildlink3.mk" | |
252 | .include "../../mk/pthread.buildlink3.mk" | 236 | .include "../../mk/pthread.buildlink3.mk" | |
253 | .include "../../mk/bsd.pkg.mk" | 237 | .include "../../mk/bsd.pkg.mk" |
@@ -1,18 +1,18 @@ | @@ -1,18 +1,18 @@ | |||
1 | # $NetBSD: buildlink3.mk,v 1.2 2021/02/25 10:36:52 nia Exp $ | 1 | # $NetBSD: buildlink3.mk,v 1.3 2021/05/01 04:43:57 pho Exp $ | |
2 | 2 | |||
3 | BUILDLINK_TREE+= ghc | 3 | BUILDLINK_TREE+= ghc | |
4 | 4 | |||
5 | .if !defined(GHC_BUILDLINK3_MK) | 5 | .if !defined(GHC_BUILDLINK3_MK) | |
6 | GHC_BUILDLINK3_MK:= | 6 | GHC_BUILDLINK3_MK:= | |
7 | 7 | |||
8 | BUILDLINK_API_DEPENDS.ghc+= ghc>=8.10<8.11 | 8 | BUILDLINK_API_DEPENDS.ghc+= ghc>=8.10<8.11 | |
9 | BUILDLINK_ABI_DEPENDS.ghc+= ghc>=8.10<8.11 | 9 | BUILDLINK_ABI_DEPENDS.ghc+= ghc>=8.10<8.11 | |
10 | BUILDLINK_PKGSRCDIR.ghc?= ../../lang/ghc88 | 10 | BUILDLINK_PKGSRCDIR.ghc?= ../../lang/ghc810 | |
11 | 11 | |||
12 | .include "../../converters/libiconv/buildlink3.mk" | 12 | .include "../../converters/libiconv/buildlink3.mk" | |
13 | .include "../../devel/libffi/buildlink3.mk" | 13 | .include "../../devel/libffi/buildlink3.mk" | |
14 | .include "../../devel/gmp/buildlink3.mk" | 14 | .include "../../devel/gmp/buildlink3.mk" | |
15 | .include "../../mk/curses.buildlink3.mk" | 15 | .include "../../mk/curses.buildlink3.mk" | |
16 | .endif # GHC_BUILDLINK3_MK | 16 | .endif # GHC_BUILDLINK3_MK | |
17 | 17 | |||
18 | BUILDLINK_TREE+= -ghc | 18 | BUILDLINK_TREE+= -ghc |
@@ -1,29 +1,33 @@ | @@ -1,29 +1,33 @@ | |||
1 | $NetBSD: distinfo,v 1.2 2021/02/16 15:41:10 ryoon Exp $ | 1 | $NetBSD: distinfo,v 1.3 2021/05/01 04:43:57 pho Exp $ | |
2 | 2 | |||
3 | SHA1 (ghc-8.10.4-src.tar.xz) = 41f242d2bb2509c63bedbd6751b2b142ae65ba3e | 3 | SHA1 (ghc-8.10.4-src.tar.xz) = 41f242d2bb2509c63bedbd6751b2b142ae65ba3e | |
4 | RMD160 (ghc-8.10.4-src.tar.xz) = 9b7ab19c21229f0c565c19e851323529c4184f4b | 4 | RMD160 (ghc-8.10.4-src.tar.xz) = 9b7ab19c21229f0c565c19e851323529c4184f4b | |
5 | SHA512 (ghc-8.10.4-src.tar.xz) = 9bb078cb72535a352243b83b671c871392564efd09e478549f27ae58fc6f46e337a0782f5500d26d5704ad96eace22e77bb36031a1fe9b7e175f265b0b9c028b | 5 | SHA512 (ghc-8.10.4-src.tar.xz) = 9bb078cb72535a352243b83b671c871392564efd09e478549f27ae58fc6f46e337a0782f5500d26d5704ad96eace22e77bb36031a1fe9b7e175f265b0b9c028b | |
6 | Size (ghc-8.10.4-src.tar.xz) = 19818108 bytes | 6 | Size (ghc-8.10.4-src.tar.xz) = 19818108 bytes | |
7 | SHA1 (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 49974bf7f3b8dc4387f9ebbd148a7f32b26783d2 | 7 | SHA1 (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 49974bf7f3b8dc4387f9ebbd148a7f32b26783d2 | |
8 | RMD160 (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 5e7011aec3f0c02ebbe274e2424a1d482e9ddd90 | 8 | RMD160 (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 5e7011aec3f0c02ebbe274e2424a1d482e9ddd90 | |
9 | SHA512 (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 3f68f15e106cfd6bd833dddc0c2c07fe3d1bae6db0f2e3680b69d18b07778e0d70be9c75285ad2d4faf0369b8b2142ce62cee6ae5ceb6aa4ca8d014525140927 | 9 | SHA512 (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 3f68f15e106cfd6bd833dddc0c2c07fe3d1bae6db0f2e3680b69d18b07778e0d70be9c75285ad2d4faf0369b8b2142ce62cee6ae5ceb6aa4ca8d014525140927 | |
10 | Size (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 47574408 bytes | 10 | Size (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 47574408 bytes | |
11 | SHA1 (netbsd-9.0-amd64-libterminfo.tar.gz) = db6b385b8676efc135c08b06e3dd6fd11b926999 | 11 | SHA1 (netbsd-9.0-amd64-libterminfo.tar.gz) = db6b385b8676efc135c08b06e3dd6fd11b926999 | |
12 | RMD160 (netbsd-9.0-amd64-libterminfo.tar.gz) = 5a246633c90ee85f71efcc02d8280bd0c50ab5a7 | 12 | RMD160 (netbsd-9.0-amd64-libterminfo.tar.gz) = 5a246633c90ee85f71efcc02d8280bd0c50ab5a7 | |
13 | SHA512 (netbsd-9.0-amd64-libterminfo.tar.gz) = 79288d44b84df8848afc2cdfee628cc4fd1ec0334159403ef8ba994d617bc56a7114af3031198afb5f3b8f45c0463a848099431e32bc6725042908576b6f95b8 | 13 | SHA512 (netbsd-9.0-amd64-libterminfo.tar.gz) = 79288d44b84df8848afc2cdfee628cc4fd1ec0334159403ef8ba994d617bc56a7114af3031198afb5f3b8f45c0463a848099431e32bc6725042908576b6f95b8 | |
14 | Size (netbsd-9.0-amd64-libterminfo.tar.gz) = 27744 bytes | 14 | Size (netbsd-9.0-amd64-libterminfo.tar.gz) = 27744 bytes | |
15 | SHA1 (patch-aclocal.m4) = 16ac8899a7d87cf93a6139edba9e5222eb4c5c66 | 15 | SHA1 (patch-aclocal.m4) = 16ac8899a7d87cf93a6139edba9e5222eb4c5c66 | |
16 | SHA1 (patch-configure.ac) = 5d33ac8e1a9ab2f729bf5580eddfd87c9fed386a | 16 | SHA1 (patch-configure.ac) = 5d33ac8e1a9ab2f729bf5580eddfd87c9fed386a | |
17 | SHA1 (patch-ghc.mk) = fdcbc5b0c48b616eb96868e49681536d773eaddd | |||
17 | SHA1 (patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs) = a4c82b1282c0580a7945be8c3b9d38bc760db99f | 18 | SHA1 (patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs) = a4c82b1282c0580a7945be8c3b9d38bc760db99f | |
18 | SHA1 (patch-libraries_base_GHC_Event_KQueue.hsc) = 8ee5da667a241a05fde3c580d3dc9bdc05aa5f00 | 19 | SHA1 (patch-libraries_base_GHC_Event_KQueue.hsc) = 8ee5da667a241a05fde3c580d3dc9bdc05aa5f00 | |
19 | SHA1 (patch-libraries_base_System_CPUTime_Posix_Times.hsc) = 2bfb779d534d12073287274ce5e90b99e457a860 | 20 | SHA1 (patch-libraries_base_System_CPUTime_Posix_Times.hsc) = 2bfb779d534d12073287274ce5e90b99e457a860 | |
20 | SHA1 (patch-libraries_base_System_Environment.hs) = 7d79a91f295915b4408d5f41d5405739d7189215 | 21 | SHA1 (patch-libraries_base_System_Environment.hs) = 7d79a91f295915b4408d5f41d5405739d7189215 | |
21 | SHA1 (patch-libraries_base_configure) = f06a961a6507f635aafe50dab3ff4396c012bdec | 22 | SHA1 (patch-libraries_base_configure) = f06a961a6507f635aafe50dab3ff4396c012bdec | |
22 | SHA1 (patch-libraries_time_lib_Data_Time_Clock_Internal_CTimespec.hsc) = 588270767f8a9cbde0648fc99807891fef65d721 | 23 | SHA1 (patch-libraries_time_lib_Data_Time_Clock_Internal_CTimespec.hsc) = 588270767f8a9cbde0648fc99807891fef65d721 | |
23 | SHA1 (patch-libraries_time_lib_Data_Time_Clock_Internal_CTimeval.hs) = b2811ec4a845e6b2b44414e940b6108178b597c5 | 24 | SHA1 (patch-libraries_time_lib_Data_Time_Clock_Internal_CTimeval.hs) = b2811ec4a845e6b2b44414e940b6108178b597c5 | |
24 | SHA1 (patch-libraries_unix_System_Posix_Env.hsc) = e94936c139ca15d45cac4a7feb74a601567913ab | 25 | SHA1 (patch-libraries_unix_System_Posix_Env.hsc) = e94936c139ca15d45cac4a7feb74a601567913ab | |
25 | SHA1 (patch-libraries_unix_System_Posix_Env_ByteString.hsc) = 3f675fc5d6bf5cc59a2d5ccffeb9ccd51521645a | 26 | SHA1 (patch-libraries_unix_System_Posix_Env_ByteString.hsc) = 3f675fc5d6bf5cc59a2d5ccffeb9ccd51521645a | |
26 | SHA1 (patch-libraries_unix_System_Posix_Files_Common.hsc) = 6efef280832d376915a8987e4e8aac283408f607 | 27 | SHA1 (patch-libraries_unix_System_Posix_Files_Common.hsc) = 6efef280832d376915a8987e4e8aac283408f607 | |
27 | SHA1 (patch-libraries_unix_System_Posix_Signals.hsc) = 49215dce493a6bbc440f91a3959e592f86fc779b | 28 | SHA1 (patch-libraries_unix_System_Posix_Signals.hsc) = 49215dce493a6bbc440f91a3959e592f86fc779b | |
28 | SHA1 (patch-libraries_unix_include_execvpe.h) = 67dd9720a71a6a55bbe2b50e61621ca60187ef00 | 29 | SHA1 (patch-libraries_unix_include_execvpe.h) = 67dd9720a71a6a55bbe2b50e61621ca60187ef00 | |
29 | SHA1 (patch-rts_StgCRun.c) = 121c7bd714725d5b14a3cbb03d81b1c769848824 | 30 | SHA1 (patch-rts_StgCRun.c) = 121c7bd714725d5b14a3cbb03d81b1c769848824 | |
31 | SHA1 (patch-rts_ghc.mk) = 6e3daf71fb7e656131aa2aeeb0346c651520216a | |||
32 | SHA1 (patch-rules_build-package-way.mk) = ec73df0bbc85e962f76a9068683879a1a1ba1815 | |||
33 | SHA1 (patch-rules_distdir-way-opts.mk) = a058c6428faf02ef94aab3336d2d2874f2726f4e |
$NetBSD: patch-ghc.mk,v 1.1 2021/05/01 04:43:57 pho Exp $
Use the wrapper scripts for ghc as we can't use the ones from the DESTDIR
as the libraries are not in the right place yet.
--- ghc.mk.orig 2021-01-25 16:30:28.000000000 +0000
+++ ghc.mk
@@ -938,7 +938,7 @@ endif
INSTALLED_PACKAGE_CONF=$(DESTDIR)$(topdir)/package.conf.d
-ifeq "$(BINDIST) $(CrossCompiling)" "NO YES"
+ifeq "$(BINDIST)" "NO"
# when installing ghc-stage2 we can't run target's
# 'ghc-pkg' and 'ghc-stage2' but those are needed for registration.
INSTALLED_GHC_REAL=$(TOP)/inplace/bin/ghc-stage1
$NetBSD: patch-rts_ghc.mk,v 1.1 2021/05/01 04:43:57 pho Exp $
This is for Darwin. See the patch to rules/distdir-way-opts.mk.
--- rts/ghc.mk.orig 2021-04-29 03:14:20.000000000 +0000
+++ rts/ghc.mk
@@ -251,6 +251,7 @@ endif
$$(rts_$1_LIB) : $$(rts_$1_OBJS) $$(rts_$1_DTRACE_OBJS) rts/dist/libs.depend $$(rts_dist_FFI_SO)
"$$(RM)" $$(RM_OPTS) $$@
"$$(rts_dist_HC)" -this-unit-id rts -shared -dynamic -dynload deploy \
+ -dylib-install-name $$(ghclibdir)/rts/$$(rts_$1_LIB_FILE) \
-no-auto-link-packages $$(LIBFFI_LIBS) `cat rts/dist/libs.depend` $$(rts_$1_OBJS) \
$$(rts_dist_$1_GHC_LD_OPTS) \
$$(rts_$1_DTRACE_OBJS) -o $$@
$NetBSD: patch-rules_build-package-way.mk,v 1.1 2021/05/01 04:43:57 pho Exp $
This is for Darwin. See the patch to rules/distdir-way-opts.mk.
--- rules/build-package-way.mk.orig 2021-04-28 17:51:42.000000000 +0000
+++ rules/build-package-way.mk
@@ -64,6 +64,7 @@ else # ifneq "$$(TargetOS_CPP)" "mingw32
$$($1_$2_$3_LIB) : $$($1_$2_$3_ALL_OBJS) $$(ALL_RTS_LIBS) $$($1_$2_$3_DEPS_LIBS)
$$(call cmd,$1_$2_HC) $$($1_$2_$3_ALL_HC_OPTS) $$($1_$2_$3_GHC_LD_OPTS) $$($1_$2_$3_ALL_OBJS) \
-shared -dynamic -dynload deploy \
+ -dylib-install-name $$(ghclibdir)/$$($1_$2_COMPONENT_ID)/$$($1_$2_$3_LIB_FILE) \
$$(addprefix -l,$$($1_$2_EXTRA_LIBRARIES)) $$(addprefix -L,$$($1_$2_EXTRA_LIBDIRS)) \
-no-auto-link-packages \
-o $$@
$NetBSD: patch-rules_distdir-way-opts.mk,v 1.1 2021/05/01 04:43:57 pho Exp $
Use correct RPATHs. On ELF we replace "$ORIGIN/../{PACKAGE_ID}" with
the final installation path.
On Darwin library paths work differently. If an executable (or a
library) A depends on a library B, the installation path of B is first
embedded in B, and then the path propagates to A at the time when A is
linked. So we remove -rpath to libraries here, and do the other half
in rules/build-package-way.mk and rts/ghc.mk.
--- rules/distdir-way-opts.mk.orig 2020-07-08 16:43:04.000000000 +0000
+++ rules/distdir-way-opts.mk
@@ -209,11 +209,10 @@ ifneq "$4" "0"
ifeq "$$(TargetElf)" "YES"
$1_$2_$3_GHC_LD_OPTS += \
-fno-use-rpaths \
- $$(foreach d,$$($1_$2_TRANSITIVE_DEP_COMPONENT_IDS),-optl-Wl$$(comma)-rpath -optl-Wl$$(comma)'$$$$ORIGIN/../$$d') -optl-Wl,-zorigin
+ $$(foreach d,$$($1_$2_TRANSITIVE_DEP_COMPONENT_IDS),-optl-Wl$$(comma)-rpath -optl-Wl$$(comma)$$(ghclibdir)/$$d)
else ifeq "$$(TargetOS_CPP)" "darwin"
$1_$2_$3_GHC_LD_OPTS += \
- -fno-use-rpaths \
- $$(foreach d,$$($1_$2_TRANSITIVE_DEP_COMPONENT_IDS),-optl-Wl$$(comma)-rpath -optl-Wl$$(comma)'@loader_path/../$$d')
+ -fno-use-rpaths
endif
endif
endif