summaryrefslogtreecommitdiff
path: root/gnu/packages/dlang.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/dlang.scm')
-rw-r--r--gnu/packages/dlang.scm62
1 files changed, 46 insertions, 16 deletions
diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm
index 649a0962a40..63186768048 100644
--- a/gnu/packages/dlang.scm
+++ b/gnu/packages/dlang.scm
@@ -351,7 +351,9 @@ integration tests...\n")
351 (file-name (git-file-name "dmd" version)) 351 (file-name (git-file-name "dmd" version))
352 (sha256 352 (sha256
353 (base32 353 (base32
354 "0qvg2fb73kyng8k1wj482g07ar2qw5laa5fynwx7pdd610n0pjpc")))) 354 "0qvg2fb73kyng8k1wj482g07ar2qw5laa5fynwx7pdd610n0pjpc"))
355 (patches
356 (search-patches "dmd-hurd.patch"))))
355 (build-system gnu-build-system) 357 (build-system gnu-build-system)
356 (arguments 358 (arguments
357 (list 359 (list
@@ -372,7 +374,16 @@ integration tests...\n")
372 ;; Do not build the shared libphobos2.so library, to avoid 374 ;; Do not build the shared libphobos2.so library, to avoid
373 ;; retaining a reference to gcc:lib. 375 ;; retaining a reference to gcc:lib.
374 "SHARED=0" 376 "SHARED=0"
375 "DIFFABLE=1" ;constant timestamp 377 #$@(if (target-hurd?)
378 (list (string-append "DISABLED_TESTS=core/thread/osthread "
379 "std/parallelism " ;; pthread stubs
380 "std/file " ;; rename (NULL, "")
381 "std/socket " ;; ENOPROTOOPT
382 "std/datetime/systime "
383 "std/datetime/timezone " ;; TZDIR
384 "std/net/curl ")) ;; dlopen curl
385 '())
386 "DIFFABLE=1" ;constant timestamp
376 "VERBOSE=1") 387 "VERBOSE=1")
377 #:modules 388 #:modules
378 `(,@%default-gnu-modules 389 `(,@%default-gnu-modules
@@ -470,7 +481,19 @@ integration tests...\n")
470 "long_backtrace_trunc rt_trap_exceptions ")) 481 "long_backtrace_trunc rt_trap_exceptions "))
471 "")) 482 ""))
472 (substitute* "dmd/druntime/test/gc/Makefile" 483 (substitute* "dmd/druntime/test/gc/Makefile"
473 ((" invariant ") " ")))) 484 ((" invariant ") " "))
485
486 #$@(if (target-hurd?)
487 '((for-each
488 delete-file
489 ;; environment differs in LD_ORIGIN_PATH
490 '("dmd/compiler/test/dshell/sameenv.d"
491 ;; Non _GLIBCXX_USE_CXX98_ABI version prints a warning
492 "dmd/compiler/test/runnable_cxx/cppa.d"))
493 ;; Segfault
494 (substitute* "dmd/druntime/test/shared/Makefile"
495 (("loadDR host ") "")))
496 '())))
474 (delete 'bootstrap) 497 (delete 'bootstrap)
475 (delete 'configure) 498 (delete 'configure)
476 (replace 'build 499 (replace 'build
@@ -492,7 +515,8 @@ integration tests...\n")
492 (phase-in-sub-dir 'check "phobos")) 515 (phase-in-sub-dir 'check "phobos"))
493 (replace 'install 516 (replace 'install
494 (lambda* (#:key outputs #:allow-other-keys) 517 (lambda* (#:key outputs #:allow-other-keys)
495 (let* ((platform (cond (#$(target-linux?) "linux"))) 518 (let* ((platform (cond (#$(target-linux?) "linux")
519 (#$(target-hurd?) "hurd")))
496 (bits (if #$(target-64bit?) 64 32)) 520 (bits (if #$(target-64bit?) 64 32))
497 (build-sub-dir (format #f "generated/~a/release/~a" 521 (build-sub-dir (format #f "generated/~a/release/~a"
498 platform bits)) 522 platform bits))
@@ -536,17 +560,22 @@ integration tests...\n")
536 (inputs 560 (inputs
537 (list bash-minimal)) 561 (list bash-minimal))
538 (native-inputs 562 (native-inputs
539 (list gdmd which 563 (append
540 gdb/pinned ; for tests 564 (if (target-linux?)
541 (origin 565 ;; gdb tests only on on linux
542 (method git-fetch) 566 (list gdb/pinned)
543 (uri (git-reference 567 '())
544 (url "https://github.com/dlang/phobos") 568 (list gdmd which
545 (commit (string-append "v" version)))) 569 (origin
546 (file-name (git-file-name "phobos" version)) 570 (method git-fetch)
547 (sha256 571 (uri (git-reference
548 (base32 572 (url "https://github.com/dlang/phobos")
549 "0afi5glnf96242cbnr10ccjvfsgkh4k5y7qnmxv4ph5g0izvi1dc"))))) 573 (commit (string-append "v" version))))
574 (file-name (git-file-name "phobos" version))
575 (sha256
576 (base32
577 "0afi5glnf96242cbnr10ccjvfsgkh4k5y7qnmxv4ph5g0izvi1dc"))
578 (patches (search-patches "phobos-hurd.patch"))))))
550 (outputs '("out" "lib" "debug")) 579 (outputs '("out" "lib" "debug"))
551 (synopsis "Reference D Programming Language compiler") 580 (synopsis "Reference D Programming Language compiler")
552 (description "@acronym{DMD, Digital Mars D compiler} is the reference 581 (description "@acronym{DMD, Digital Mars D compiler} is the reference
@@ -555,7 +584,8 @@ compiler for the D programming language.")
555 (home-page "https://github.com/dlang/dmd") 584 (home-page "https://github.com/dlang/dmd")
556 ;; As reported by upstream: 585 ;; As reported by upstream:
557 ;; https://wiki.dlang.org/Compilers#Comparison 586 ;; https://wiki.dlang.org/Compilers#Comparison
558 (supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux")) 587 (supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux"
588 "i586-gnu" "x86_64-gnu"))
559 589
560 ;; This variant exists only for bootstrapping purposes. 590 ;; This variant exists only for bootstrapping purposes.
561 (properties '((hidden? . #t))))) 591 (properties '((hidden? . #t)))))