summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2022-06-26 14:33:12 +0300
committerEfraim Flashner <efraim@flashner.co.il>2022-06-26 14:42:59 +0300
commitdaa83c69f6e90885731b11b06b263365992ef539 (patch)
treeae3ac75c8d9c6baf7b4e9ef0112aae5dd92a4d56
parent25e5daf1b1637880eab7421354d33492aa1a25b7 (diff)
downloadguix-patches-daa83c69f6e90885731b11b06b263365992ef539.tar
guix-patches-daa83c69f6e90885731b11b06b263365992ef539.tar.gz
gnu: ldc: Work towards building on aarch64-linux.
* gnu/packages/dlang.scm (ldc)[arguments]: Adjust configure-flags to not dynamically compile. Adjust custom 'fix-compiler-rt-library-discovery phase to add a case for aarch64. Adjust custom'disable-problematic-tests phase to remove some tests for aarch64-linux.
-rw-r--r--gnu/packages/dlang.scm12
1 files changed, 10 insertions, 2 deletions
diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm
index 76c71c43e2..9a972182cc 100644
--- a/gnu/packages/dlang.scm
+++ b/gnu/packages/dlang.scm
@@ -227,7 +227,8 @@ bootstrapping more recent compilers written in D.")
"ldc2-unittest" "all-test-runners"))
((#:configure-flags flags)
`(,@flags "-DBUILD_SHARED_LIBS=ON"
- "-DLDC_LINK_MANUALLY=OFF"))
+ "-DLDC_LINK_MANUALLY=OFF"
+ "-DLDC_DYNAMIC_COMPILE=OFF"))
((#:tests? _) #t)
((#:phases phases)
`(modify-phases ,phases
@@ -248,7 +249,8 @@ bootstrapping more recent compilers written in D.")
system)))))
(matches ("x86_64" => "x86_64")
("i686" => "i386")
- ("armhf" => "armhf"))))
+ ("armhf" => "armhf")
+ ("aarch64" => "aarch64"))))
;; Coax LLVM into agreeing with Clang about system target
;; naming.
(substitute* "driver/linker-gcc.cpp"
@@ -313,6 +315,12 @@ bootstrapping more recent compilers written in D.")
"sanitizers/msan_noerror.d"
"sanitizers/msan_uninitialized.d"
"d2/dmd-testsuite/runnable_cxx/cppa.d")))
+ (,(target-aarch64?)
+ (for-each delete-file
+ '("d2/dmd-testsuite/runnable/ldc_cabi1.d"
+ "sanitizers/fuzz_basic.d"
+ "sanitizers/msan_noerror.d"
+ "sanitizers/msan_uninitialized.d")))
(#t '())))))
(add-before 'configure 'set-cc-and-cxx-to-use-clang
;; The tests require to be built with Clang; build everything