diff options
| author | Nicolas Graves <ngraves@ngraves.fr> | 2026-02-25 13:49:05 +0100 |
|---|---|---|
| committer | Andreas Enge <andreas@enge.fr> | 2026-06-13 08:51:34 +0200 |
| commit | 903c68dde17ccb1d7eab274cde9e61bfdc7a8811 (patch) | |
| tree | 30bc555994066f6f9ff52bd1ce9772727081d3ba | |
| parent | 159d44624c77703d15c75be1d2f6da84c288f940 (diff) | |
gnu: ghc-8.10: Drop input labels.
* gnu/packages/haskell.scm (ghc-8.10)
[native-inputs]: Drop input labels.
[arguments]<#:phases>: Minor indent changes.
Change-Id: I1a16df904674448641ac84357b503597d7110098
Signed-off-by: Andreas Enge <andreas@enge.fr>
| -rw-r--r-- | gnu/packages/haskell.scm | 181 |
1 files changed, 90 insertions, 91 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 0aaf67e6ebd..ad7f2cb76c9 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm | |||
| @@ -1419,97 +1419,96 @@ interactive environment for the functional language Haskell.") | |||
| 1419 | (file-type 'directory))))))) | 1419 | (file-type 'directory))))))) |
| 1420 | 1420 | ||
| 1421 | (define-public ghc-8.10 | 1421 | (define-public ghc-8.10 |
| 1422 | (package | 1422 | (let ((ghc-bootstrap ghc-8.6)) |
| 1423 | (inherit ghc-8.8) | 1423 | (package |
| 1424 | (name "ghc") | 1424 | (inherit ghc-8.8) |
| 1425 | (version "8.10.7") | 1425 | (name "ghc") |
| 1426 | (source | 1426 | (version "8.10.7") |
| 1427 | (origin | 1427 | (source |
| 1428 | (method url-fetch) | 1428 | (origin |
| 1429 | (uri (string-append "https://www.haskell.org/ghc/dist/" | 1429 | (method url-fetch) |
| 1430 | version "/ghc-" version "-src.tar.xz")) | 1430 | (uri (string-append "https://www.haskell.org/ghc/dist/" |
| 1431 | (sha256 | 1431 | version "/ghc-" version "-src.tar.xz")) |
| 1432 | (base32 "179ws2q0dinl1a39wm9j37xzwm84zfz3c5543vz8v479khigdvp3")))) | 1432 | (sha256 |
| 1433 | (native-inputs | 1433 | (base32 "179ws2q0dinl1a39wm9j37xzwm84zfz3c5543vz8v479khigdvp3")))) |
| 1434 | `(;; GHC 8.10.7 must be built with GHC >= 8.6. | 1434 | (native-inputs |
| 1435 | ("ghc-bootstrap" ,ghc-8.6) | 1435 | (cons* (list |
| 1436 | ("ghc-testsuite" | 1436 | (string-append name "-" version "-testsuite.tar.xz") |
| 1437 | ,(origin | 1437 | (origin |
| 1438 | (method url-fetch) | 1438 | (method url-fetch) |
| 1439 | (uri (string-append | 1439 | (uri (string-append |
| 1440 | "https://www.haskell.org/ghc/dist/" | 1440 | "https://www.haskell.org/ghc/dist/" |
| 1441 | version "/ghc-" version "-testsuite.tar.xz")) | 1441 | version "/ghc-" version "-testsuite.tar.xz")) |
| 1442 | (patches (search-patches "ghc-testsuite-dlopen-pie.patch" | 1442 | (patches (search-patches "ghc-testsuite-dlopen-pie.patch" |
| 1443 | "ghc-testsuite-grep-compat.patch" | 1443 | "ghc-testsuite-grep-compat.patch")) |
| 1444 | "ghc-testsuite-recomp015-execstack.patch")) | 1444 | (sha256 |
| 1445 | (sha256 | 1445 | (base32 |
| 1446 | (base32 | 1446 | "1zl25gg6bpx5601k8h3cqnns1xfc0nqgwnh8jvn2s65ra3f2g1nz")) |
| 1447 | "1zl25gg6bpx5601k8h3cqnns1xfc0nqgwnh8jvn2s65ra3f2g1nz")) | 1447 | (modules '((guix build utils))) |
| 1448 | (modules '((guix build utils))) | 1448 | (snippet |
| 1449 | (snippet | 1449 | ;; collections.Iterable was moved to collections.abc in Python 3.10. |
| 1450 | ;; collections.Iterable was moved to collections.abc in Python 3.10. | 1450 | '(substitute* "testsuite/driver/testlib.py" |
| 1451 | '(substitute* "testsuite/driver/testlib.py" | 1451 | (("collections\\.Iterable") |
| 1452 | (("collections\\.Iterable") | 1452 | "collections.abc.Iterable"))))) |
| 1453 | "collections.abc.Iterable"))))) | 1453 | (modify-inputs (package-native-inputs ghc-bootstrap) |
| 1454 | ("git" ,git-minimal/pinned) ; invoked during tests | 1454 | ;; GHC 8.10.7 must be built with GHC >= 8.6. |
| 1455 | ,@(filter (match-lambda | 1455 | (replace "ghc" ghc-bootstrap) |
| 1456 | (("ghc-bootstrap" . _) #f) | 1456 | (delete (string-append name "-" |
| 1457 | (("ghc-testsuite" . _) #f) | 1457 | (package-version ghc-bootstrap) |
| 1458 | (_ #t)) | 1458 | "-testsuite.tar.xz")) |
| 1459 | (package-native-inputs ghc-8.8)))) | 1459 | (append git-minimal/pinned)))) ; invoked during tests |
| 1460 | (arguments | 1460 | (arguments |
| 1461 | (substitute-keyword-arguments (package-arguments ghc-8.8) | 1461 | (substitute-keyword-arguments (package-arguments ghc-8.8) |
| 1462 | ((#:phases phases '%standard-phases) | 1462 | ((#:phases phases '%standard-phases) |
| 1463 | #~(modify-phases #$phases | 1463 | #~(modify-phases #$phases |
| 1464 | (add-after 'unpack-testsuite 'patch-more-shebangs | 1464 | (add-after 'unpack-testsuite 'patch-more-shebangs |
| 1465 | (lambda* (#:key inputs #:allow-other-keys) | 1465 | (lambda* (#:key inputs #:allow-other-keys) |
| 1466 | (let ((bash (assoc-ref inputs "bash"))) | 1466 | (substitute* '("testsuite/tests/driver/T8602/T8602.script") |
| 1467 | (substitute* '("testsuite/tests/driver/T8602/T8602.script") | 1467 | (("/bin/sh") |
| 1468 | (("/bin/sh") | 1468 | (search-input-file inputs "/bin/sh"))))) |
| 1469 | (string-append bash "/bin/sh")))))) | 1469 | ;; Mark failing tests as broken. Reason for failure is unknown. |
| 1470 | ;; Mark failing tests as broken. Reason for failure is unknown. | 1470 | (add-after 'skip-more-tests 'skip-even-more-tests |
| 1471 | (add-after 'skip-more-tests 'skip-even-more-tests | 1471 | (lambda _ |
| 1472 | (lambda _ | 1472 | (substitute* '("testsuite/tests/driver/T16521/all.T") |
| 1473 | (substitute* '("testsuite/tests/driver/T16521/all.T") | 1473 | (("extra_files" all) (string-append "[" all)) |
| 1474 | (("extra_files" all) (string-append "[" all)) | 1474 | (("\\]\\), " all) |
| 1475 | (("\\]\\), " all) | 1475 | (string-append all "expect_broken(0)], "))))) |
| 1476 | (string-append all "expect_broken(0)], "))))) | 1476 | (add-after 'skip-more-tests 'skip-failing-tests-i686 |
| 1477 | (add-after 'skip-more-tests 'skip-failing-tests-i686 | 1477 | (lambda _ |
| 1478 | (lambda _ | 1478 | (substitute* '("testsuite/tests/codeGen/should_compile/all.T") |
| 1479 | (substitute* '("testsuite/tests/codeGen/should_compile/all.T") | 1479 | (("(test\\('T15155l', )when\\(unregisterised\\(\\), skip\\)" all before) |
| 1480 | (("(test\\('T15155l', )when\\(unregisterised\\(\\), skip\\)" all before) | 1480 | (string-append before "when(arch('i386'), skip)"))) |
| 1481 | (string-append before "when(arch('i386'), skip)"))) | 1481 | ;; Unexpected failures: |
| 1482 | ;; Unexpected failures: | 1482 | ;; quasiquotation/T14028.run T14028 [bad stderr] (dyn) |
| 1483 | ;; quasiquotation/T14028.run T14028 [bad stderr] (dyn) | 1483 | (substitute* '("testsuite/tests/quasiquotation/all.T") |
| 1484 | (substitute* '("testsuite/tests/quasiquotation/all.T") | 1484 | (("unless\\(config.have_ext_interp, skip\\),") |
| 1485 | (("unless\\(config.have_ext_interp, skip\\),") | 1485 | "unless(config.have_ext_interp, skip), when(arch('i386'), skip),")))) |
| 1486 | "unless(config.have_ext_interp, skip), when(arch('i386'), skip),")))) | 1486 | ;; i686 fails on CI, but (sometimes and with generous timeouts) completes |
| 1487 | ;; i686 fails on CI, but (sometimes and with generous timeouts) completes | 1487 | ;; locally. The issue seems to be that the testsuite tries to run some very |
| 1488 | ;; locally. The issue seems to be that the testsuite tries to run some very | 1488 | ;; broad regular expressions on output files of several megabytes in size, |
| 1489 | ;; broad regular expressions on output files of several megabytes in size, | 1489 | ;; which takes a long time. Since the expressions never match anything on |
| 1490 | ;; which takes a long time. Since the expressions never match anything on | 1490 | ;; our builds anyways, remove them. |
| 1491 | ;; our builds anyways, remove them. | 1491 | ;; TODO: Merge with 'skip-failing-tests-i686 or move into snippets on |
| 1492 | ;; TODO: Merge with 'skip-failing-tests-i686 or move into snippets on | 1492 | ;; next rebuild. Note that they are required for GHC 8.10 and 9.2. |
| 1493 | ;; next rebuild. Note that they are required for GHC 8.10 and 9.2. | 1493 | #$@(if (string-prefix? "i686" (or (%current-target-system) |
| 1494 | #$@(if (string-prefix? "i686" (or (%current-target-system) | 1494 | (%current-system))) |
| 1495 | (%current-system))) | 1495 | #~((add-after 'skip-failing-tests-i686 'skip-more-failing-tests-i686 |
| 1496 | #~((add-after 'skip-failing-tests-i686 'skip-more-failing-tests-i686 | 1496 | (lambda _ |
| 1497 | (lambda _ | 1497 | (substitute* '("testsuite/tests/profiling/should_run/all.T") |
| 1498 | (substitute* '("testsuite/tests/profiling/should_run/all.T") | 1498 | (("test\\('T11627a', \\[ ") |
| 1499 | (("test\\('T11627a', \\[ ") | 1499 | "test('T11627a', [ when(arch('i386'), skip), ")) |
| 1500 | "test('T11627a', [ when(arch('i386'), skip), ")) | 1500 | (substitute* '("testsuite/driver/testlib.py") |
| 1501 | (substitute* '("testsuite/driver/testlib.py") | 1501 | ((".*changes being made to the file will invalidate the code signature.*") |
| 1502 | ((".*changes being made to the file will invalidate the code signature.*") | 1502 | "") |
| 1503 | "") | 1503 | ((".*warning: argument unused during compilation:.*") |
| 1504 | ((".*warning: argument unused during compilation:.*") | 1504 | ""))))) |
| 1505 | ""))))) | 1505 | #~()))))) |
| 1506 | #~()))))) | 1506 | (native-search-paths (list (search-path-specification |
| 1507 | (native-search-paths (list (search-path-specification | 1507 | (variable "GHC_PACKAGE_PATH") |
| 1508 | (variable "GHC_PACKAGE_PATH") | 1508 | (files (list |
| 1509 | (files (list | 1509 | (string-append "lib/ghc-" version))) |
| 1510 | (string-append "lib/ghc-" version))) | 1510 | (file-pattern ".*\\.conf\\.d$") |
| 1511 | (file-pattern ".*\\.conf\\.d$") | 1511 | (file-type 'directory))))))) |
| 1512 | (file-type 'directory)))))) | ||
| 1513 | 1512 | ||
| 1514 | (define-public ghc-8 ghc-8.10) | 1513 | (define-public ghc-8 ghc-8.10) |
| 1515 | 1514 | ||
