summary refs log tree commit diff
path: root/gnu
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 /gnu
parent25e5daf1b1637880eab7421354d33492aa1a25b7 (diff)
downloadguix-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.
Diffstat (limited to 'gnu')
-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