gnu: ldc: Update to 1.30.0.
* gnu/packages/dlang.scm (ldc-bootstrap): Update to 1.30.0. [native-inputs]: Remove ld-gold-wrapper, Add lld-wrapper with lld-11. (ldc)[arguments]: Adjust 'fix-compiler-rt-library-discovery phase to change the order of linked libraries. Adjust 'disable-problematic-tests phase to work around more GDB tests. Adjust custom 'check phase for race condition in one of the tests.master
parent
d46d958ae7
commit
80ef8ff7ed
|
@ -5,7 +5,7 @@
|
||||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2017, 2019, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017, 2019, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
|
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
|
||||||
;;; Copyright © 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2021-2023 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||||
;;; Copyright © 2022 ( <paren@disroot.org>
|
;;; Copyright © 2022 ( <paren@disroot.org>
|
||||||
;;; Copyright © 2022 Esther Flashner <esther@flashner.co.il>
|
;;; Copyright © 2022 Esther Flashner <esther@flashner.co.il>
|
||||||
|
@ -149,14 +149,14 @@ to a minimal test case.")
|
||||||
(define ldc-bootstrap
|
(define ldc-bootstrap
|
||||||
(package
|
(package
|
||||||
(name "ldc")
|
(name "ldc")
|
||||||
(version "1.27.1")
|
(version "1.30.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://github.com/ldc-developers/ldc/releases"
|
(uri (string-append "https://github.com/ldc-developers/ldc/releases"
|
||||||
"/download/v" version "/ldc-" version "-src.tar.gz"))
|
"/download/v" version "/ldc-" version "-src.tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1775001ba6n8w46ln530kb5r66vs935ingnppgddq8wqnc0gbj4k"))))
|
(base32 "1kfs4fpr1525sv2ny10hlfppy8c075vjm8m649wr2b9411pkgfzx"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ;skip in the bootstrap
|
`(#:tests? #f ;skip in the bootstrap
|
||||||
|
@ -190,10 +190,7 @@ to a minimal test case.")
|
||||||
("tzdata" ,tzdata)
|
("tzdata" ,tzdata)
|
||||||
("zlib" ,zlib)))
|
("zlib" ,zlib)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
;; Importing (gnu packages commencement) would introduce a cycle.
|
`(("lld-wrapper" ,(make-lld-wrapper lld-11 #:lld-as-ld? #t))
|
||||||
`(("ld-gold-wrapper" ,(module-ref (resolve-interface
|
|
||||||
'(gnu packages commencement))
|
|
||||||
'ld-gold-wrapper))
|
|
||||||
("llvm" ,llvm-11)
|
("llvm" ,llvm-11)
|
||||||
("ldc" ,gdmd)
|
("ldc" ,gdmd)
|
||||||
("ninja" ,ninja)
|
("ninja" ,ninja)
|
||||||
|
@ -260,7 +257,7 @@ bootstrapping more recent compilers written in D.")
|
||||||
;; find the compiler-rt libraries they need to be linked with
|
;; find the compiler-rt libraries they need to be linked with
|
||||||
;; for the tests.
|
;; for the tests.
|
||||||
(substitute* (find-files "." "^ldc2.*\\.conf\\.in$")
|
(substitute* (find-files "." "^ldc2.*\\.conf\\.in$")
|
||||||
((".*lib-dirs = \\[\n" all)
|
((".*LIB_SUFFIX.*" all)
|
||||||
(string-append all
|
(string-append all
|
||||||
" \"" clang-runtime
|
" \"" clang-runtime
|
||||||
"/lib/linux\",\n"))))))
|
"/lib/linux\",\n"))))))
|
||||||
|
@ -294,12 +291,15 @@ bootstrapping more recent compilers written in D.")
|
||||||
""))
|
""))
|
||||||
;; The GDB tests suite fails; there are a few bug reports about
|
;; The GDB tests suite fails; there are a few bug reports about
|
||||||
;; it upstream.
|
;; it upstream.
|
||||||
(for-each delete-file (find-files "tests" "gdb.*\\.(d|sh)$"))
|
(for-each delete-file (find-files "tests" "gdb.*\\.(c|d|sh)$"))
|
||||||
(delete-file "tests/d2/dmd-testsuite/runnable/debug_info.d")
|
(delete-file "tests/d2/dmd-testsuite/runnable/debug_info.d")
|
||||||
(delete-file "tests/d2/dmd-testsuite/runnable/b18504.d")
|
(delete-file "tests/d2/dmd-testsuite/runnable/b18504.d")
|
||||||
(substitute* "runtime/druntime/test/exceptions/Makefile"
|
(substitute* "runtime/druntime/test/exceptions/Makefile"
|
||||||
((".*TESTS\\+=rt_trap_exceptions_drt_gdb.*")
|
((".*TESTS\\+=rt_trap_exceptions_drt_gdb.*")
|
||||||
""))
|
""))
|
||||||
|
;; Drop gdb_dflags from the test suite.
|
||||||
|
(substitute* "tests/d2/CMakeLists.txt"
|
||||||
|
(("\\$\\{gdb_dflags\\}") ""))
|
||||||
;; The following tests fail on some systems, not all of
|
;; The following tests fail on some systems, not all of
|
||||||
;; which are tested upstream.
|
;; which are tested upstream.
|
||||||
(with-directory-excursion "tests"
|
(with-directory-excursion "tests"
|
||||||
|
@ -346,7 +346,8 @@ bootstrapping more recent compilers written in D.")
|
||||||
(invoke "ctest" "--output-on-failure" "-j" job-count
|
(invoke "ctest" "--output-on-failure" "-j" job-count
|
||||||
"-R" "lit-tests")
|
"-R" "lit-tests")
|
||||||
(display "running the dmd test suite...\n")
|
(display "running the dmd test suite...\n")
|
||||||
(invoke "ctest" "--output-on-failure" "-j" job-count
|
;; This test has a race condition so run it with 1 core.
|
||||||
|
(invoke "ctest" "--output-on-failure" "-j" "1"
|
||||||
"-R" "dmd-testsuite")
|
"-R" "dmd-testsuite")
|
||||||
(display "running the defaultlib unit tests and druntime \
|
(display "running the defaultlib unit tests and druntime \
|
||||||
integration tests...\n")
|
integration tests...\n")
|
||||||
|
|
Reference in New Issue