summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Graves <ngraves@ngraves.fr>2024-10-31 13:46:40 +0100
committerZheng Junjie <z572@z572.online>2026-06-21 00:03:10 +0800
commitd95d48dd8614903e805f0215aa9d1121ff929f0b (patch)
treedf27d21049b849d026b608518f7b4e0d2c281df5
parenta43236879a0871265b6f0ae24500cee25c23f62d (diff)
gnu: ghc: More robust build with binutils ≥ 2.39.core-packages-team-2026-06-20-rebased
Future versions of ghc will have more occurrences of the execstack warning. Instead of modifying the tests for each new version, a more robust approach is to explicitely make ghc pass -Wl,-z,noexecstack to its ld invocations during all tests. This is what this patch does. * gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch: Remove it. * gnu/local.mk (disp_path_DATA): Deregister patch. * gnu/packages/haskell.scm (ghc-9.0, ghc-9.8, ghc-9.10): Deregister patch use. Change-Id: Ib174c017eef512eda9b4754178a927517c7f05a1 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #6651
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/haskell.scm9
-rw-r--r--gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch10
3 files changed, 3 insertions, 17 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 950f7607234..ce8065531d2 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1449,7 +1449,6 @@ dist_patch_DATA = \
1449 %D%/packages/patches/ghc-basement-fix-32-bit.patch \ 1449 %D%/packages/patches/ghc-basement-fix-32-bit.patch \
1450 %D%/packages/patches/ghc-testsuite-dlopen-pie.patch \ 1450 %D%/packages/patches/ghc-testsuite-dlopen-pie.patch \
1451 %D%/packages/patches/ghc-testsuite-grep-compat.patch \ 1451 %D%/packages/patches/ghc-testsuite-grep-compat.patch \
1452 %D%/packages/patches/ghc-testsuite-recomp015-execstack.patch \
1453 %D%/packages/patches/ghc-aeson-encodeDouble.patch \ 1452 %D%/packages/patches/ghc-aeson-encodeDouble.patch \
1454 %D%/packages/patches/ghc-basement-fix-32bit.patch \ 1453 %D%/packages/patches/ghc-basement-fix-32bit.patch \
1455 %D%/packages/patches/ghc-bytestring-handle-ghc9.patch \ 1454 %D%/packages/patches/ghc-bytestring-handle-ghc9.patch \
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 04a8e748e64..1506bbe7601 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1670,8 +1670,7 @@ SRC_HC_OPTS += -optc-mno-outline-atomics
1670 (sha256 1670 (sha256
1671 (base32 1671 (base32
1672 "1m5fzhr4gjn9ni8gxx7ag3fkbw1rspjzgv39mnfb0nkm5mw70v3s")) 1672 "1m5fzhr4gjn9ni8gxx7ag3fkbw1rspjzgv39mnfb0nkm5mw70v3s"))
1673 (patches (search-patches "ghc-9.2-grep-warnings.patch" 1673 (patches (search-patches "ghc-9.2-grep-warnings.patch"))
1674 "ghc-testsuite-recomp015-execstack.patch"))
1675 (modules '((guix build utils))) 1674 (modules '((guix build utils)))
1676 (snippet 1675 (snippet
1677 ;; collections.Iterable was moved to collections.abc in Python 3.10. 1676 ;; collections.Iterable was moved to collections.abc in Python 3.10.
@@ -2094,8 +2093,7 @@ SRC_HC_OPTS += -optc-mno-outline-atomics
2094 (file-name "ghc-testsuite.tar.xz") 2093 (file-name "ghc-testsuite.tar.xz")
2095 (sha256 2094 (sha256
2096 (base32 2095 (base32
2097 "1hxylm3nhxzl7yidarlavvcg1240w4bk0hy5jnvwna24jyxz69i6")) 2096 "1hxylm3nhxzl7yidarlavvcg1240w4bk0hy5jnvwna24jyxz69i6")))
2098 (patches (search-patches "ghc-testsuite-recomp015-execstack.patch")))
2099 (origin 2097 (origin
2100 (method url-fetch) 2098 (method url-fetch)
2101 (uri (string-append "https://downloads.haskell.org/~ghc/" 2099 (uri (string-append "https://downloads.haskell.org/~ghc/"
@@ -2173,8 +2171,7 @@ interactive environment for the functional language Haskell.")
2173 version "/ghc-" version "-testsuite.tar.xz")) 2171 version "/ghc-" version "-testsuite.tar.xz"))
2174 (sha256 2172 (sha256
2175 (base32 2173 (base32
2176 "143ifc4g3jc6s9hcry5qha913rzwg4hpsvk6pqvxk5r0qigfxjwx")) 2174 "143ifc4g3jc6s9hcry5qha913rzwg4hpsvk6pqvxk5r0qigfxjwx"))))
2177 (patches (search-patches "ghc-testsuite-recomp015-execstack.patch"))))
2178 (replace "hadrian-bootstrap-sources.tar.gz" 2175 (replace "hadrian-bootstrap-sources.tar.gz"
2179 (origin 2176 (origin
2180 (method url-fetch) 2177 (method url-fetch)
diff --git a/gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch b/gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch
deleted file mode 100644
index 0d4849f53e7..00000000000
--- a/gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch
+++ /dev/null
@@ -1,10 +0,0 @@
1--- a/testsuite/tests/driver/recomp015/Makefile 2024-01-13 16:22:42.643106725 +0100
2+++ b/testsuite/tests/driver/recomp015/Makefile 2024-01-13 16:23:18.406867917 +0100
3@@ -26,6 +26,7 @@
4 # number of sections)
5 '$(TEST_HC)' $(TEST_HC_OPTS) Generate.hs
6 ./Generate > ManySections.s
7+ echo '.section .note.GNU-stack,"",@progbits' >> ManySections.s
8 echo 'main = putStrLn "Running main..."' > Main.hs
9 '$(TEST_HC)' $(TEST_HC_OPTS) -c ManySections.s
10 '$(TEST_HC)' $(TEST_HC_OPTS) --make -O Main.hs ManySections.o