~ruther/guix-local

fc7db2df40840e3020a9f4954f08f744390abf62 — Efraim Flashner 2 years ago 06ebc45
gnu: ldc: Enable building on more architectures.

* gnu/packages/dlang.scm (ldc)[arguments]: In the custom phase
'fix-compiler-rt-library-discovery rewrite gnu-triplet->clang-arch to
pass-through unmatched architectures.
1 files changed, 6 insertions(+), 13 deletions(-)

M gnu/packages/dlang.scm
M gnu/packages/dlang.scm => gnu/packages/dlang.scm +6 -13
@@ 236,19 236,12 @@ bootstrapping more recent compilers written in D.")
                     (system ,(or (%current-target-system)
                                  (%current-system))))
                 (define (gnu-triplet->clang-arch system)
                   (letrec-syntax
                       ((matches (syntax-rules (=>)
                                   ((_ (system-prefix => target) rest ...)
                                    (if (string-prefix? system-prefix system)
                                        target
                                        (matches rest ...)))
                                   ((_)
                                    (error "Clang target for system is unknown"
                                           system)))))
                     (matches ("x86_64"      => "x86_64")
                              ("i686"        => "i386")
                              ("armhf"       => "armhf")
                              ("aarch64"     => "aarch64"))))
                   (let ((system-prefix
                           (car (string-tokenize
                                  system (char-set-complement (char-set #\-))))))
                     (cond
                       ((equal? system-prefix "i686") "i386")
                       (#t system-prefix))))
                 ;; Coax LLVM into agreeing with Clang about system target
                 ;; naming.
                 (substitute* "driver/linker-gcc.cpp"