aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gn/packages/ldc.scm311
1 files changed, 0 insertions, 311 deletions
diff --git a/gn/packages/ldc.scm b/gn/packages/ldc.scm
deleted file mode 100644
index 584d9ac..0000000
--- a/gn/packages/ldc.scm
+++ /dev/null
@@ -1,311 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015, 2016 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2015 Pjotr Prins <pjotr.guix@thebird.nl>
-;;;
-;;; This file is part of GNU Guix.
-;;;
-;;; GNU Guix is free software; you can redistribute it and/or modify it
-;;; under the terms of the GNU General Public License as published by
-;;; the Free Software Foundation; either version 3 of the License, or (at
-;;; your option) any later version.
-;;;
-;;; GNU Guix is distributed in the hope that it will be useful, but
-;;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;;; GNU General Public License for more details.
-;;;
-;;; You should have received a copy of the GNU General Public License
-;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
-
-(define-module (gn packages ldc)
- #:use-module ((guix licenses) #:prefix license:)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix git-download)
- #:use-module (guix build-system gnu)
- #:use-module (guix build-system cmake)
- #:use-module (gnu packages)
- #:use-module (gnu packages base)
- #:use-module (gnu packages check)
- #:use-module (gnu packages compression)
- #:use-module (gnu packages gdb)
- #:use-module ((gnu packages dlang) #:prefix ldcmain:)
- #:use-module (gnu packages libedit)
- #:use-module (gnu packages llvm)
- #:use-module (gnu packages python)
- #:use-module (gnu packages textutils)
-)
-
-(define-public ldc-0.17.2 ; guix in main line
- (package
- (inherit ldcmain:ldc)
- (name "ldc")
- (version "0.17.2")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/ldc/archive/v"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0iksl6cvhsiwnlh15b7s9v8f3grxk27jn0vja9n4sad7fvfwmmlc"))))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'unpack-submodule-sources
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((unpack (lambda (source target)
- (with-directory-excursion target
- (zero? (system* "tar" "xvf"
- (assoc-ref inputs source)
- "--strip-components=1"))))))
- (and (unpack "phobos-src" "runtime/phobos")
- (unpack "druntime-src" "runtime/druntime")
- (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite")))))
- (add-after 'unpack-submodule-sources 'patch-dmd2
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "dmd2/root/port.c"
- ((" ::isnan") " isnan")
- ((" ::isinf") " isinf")
- (("#undef isnan") "")
- (("#undef isinf") ""))
- #t))
- (add-after 'unpack-submodule-sources 'patch-phobos
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "runtime/phobos/std/process.d"
- (("/bin/sh") (which "sh"))
- (("echo") (which "echo")))
- (substitute* "runtime/phobos/std/datetime.d"
- (("/usr/share/zoneinfo/")
- (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo")))
- (substitute* "tests/d2/dmd-testsuite/Makefile"
- (("/bin/bash") (which "bash")))
- #t)))
- #:tests? #f))
- (native-inputs
- `(("llvm" ,llvm-3.7)
- ("clang" ,clang-3.7)
- ("zlib" ,zlib)
- ("unzip" ,unzip)
- ("phobos-src"
- ,(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/phobos/archive/ldc-v"
- version ".tar.gz"))
- (file-name (string-append "ldc-phobos-" version ".tar.gz"))
- (sha256
- (base32
- "07hh3ic3r755mq9hn9gfr0wlc5y8cr91xz2ydb6gqy4zy8jgp5s9"))))
- ("druntime-src"
- ,(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/druntime/archive/ldc-v"
- version ".tar.gz"))
- (file-name (string-append "ldc-druntime-" version ".tar.gz"))
- (sha256
- (base32
- "1m1dhday9dl3s04njmd29z7ism2xn2ksb9qlrwzykdgz27b3dk6x"))))
- ("dmd-testsuite-src"
- ,(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/dmd-testsuite/archive/ldc-v"
- version ".tar.gz"))
- (file-name (string-append "testsuite-" version ".tar.gz"))
- (sha256
- (base32
- "0n7gvalxwfmia4gag53r9qhcnk2cqrw3n4icj1yri0zkgc27pm60"))))))))
-
-
-(define-public ldc
- ;; The phobos, druntime and dmd-testsuite dependencies do not have a newer
- ;; release than 1.1.0-beta4, hence the need to make use of the older-version
- ;; variable to hold this variable.
- (let ((beta-version "1.6.0-beta1"))
- (package
- ;; (inherit ldc-bootstrap)
- (inherit ldcmain:ldc)
- (name "ldc")
- (version "1.6.0")
- ;; Beta version needed to compile various scientific tools that require
- ;; the newer beta versions, and won't compile successfully with the
- ;; older stable version.
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/ldc/archive/v"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1nm141hbjg197hc5jb95l9zc6wv41f1mz88rci4m6srd14dmv3m6"))))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'unpack-submodule-sources
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((unpack (lambda (source target)
- (with-directory-excursion target
- (zero? (system* "tar" "xvf"
- (assoc-ref inputs source)
- "--strip-components=1"))))))
- (and (unpack "phobos-src" "runtime/phobos")
- (unpack "druntime-src" "runtime/druntime")
- (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite")))))
- ;; The 'patch-dmd2 step in ldc causes the build to fail since
- ;; dmd2/root/port.c no longer exists. Arguments needed to have
- ;; 'patch-dmd2 step removed, but retain everything else.
-
- ;; 99% tests passed, 11 tests failed out of 1589
- (add-after 'unpack-submodule-sources 'patch-phobos
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "runtime/phobos/std/process.d"
- (("/bin/sh") (which "sh"))
- (("echo") (which "echo")))
- ; disable unittests in these files:
- (substitute* '("runtime/phobos/std/net/curl.d"
- "runtime/phobos/std/datetime/systime.d"
- "runtime/phobos/std/datetime/timezone.d"
- )
- (("version(unittest)") "version(skipunittest)")
- ((" unittest") " version(skipunittest) unittest"))
- (substitute* "tests/d2/dmd-testsuite/Makefile"
- (("/bin/bash") (which "bash")))
- #t)))
- #:make-flags (list "PHOBOS_TEST_ALLOW_NET=0")
- #:tests? #f))
- (native-inputs
- `(("llvm" ,llvm)
- ("clang" ,clang)
- ;; ("ldc" ,ldc-bootstrap)
- ("ldc" ,ldcmain:ldc)
- ("python-lit" ,python-lit)
- ("python-wrapper" ,python-wrapper)
- ("unzip" ,unzip)
- ("gdb" ,gdb)
- ("phobos-src"
- ,(origin
- (method url-fetch)
- (uri (string-append
- ; https://github.com/ldc-developers/phobos/releases/tag/ldc-v1.6.0-beta1
- "https://github.com/ldc-developers/phobos/archive/ldc-v"
- beta-version ".tar.gz"))
- (sha256
- (base32
- "00xsc00wjqz5xklps7ca696c83gwlkz5wb68q5cnq5axhshg553n"))
- (patches (search-patches "ldc-disable-tests2.patch"))
- ;; This patch deactivates some tests that depend on network access
- ;; to pass. It also deactivates some tests that have some reliance
- ;; on timezone.
- ;;
- ;; For the network tests, there's an effort to get a version flag
- ;; added to deactivate these tests for distribution packagers
- ;; that is being pursued at
- ;; <https://forum.dlang.org/post/zmdbdgnzrxyvtpqafvyg@forum.dlang.org>.
- ;; It also deactivates a test that requires /root
- ))
- ("druntime-src"
- ,(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/druntime/archive/ldc-v"
- version ".tar.gz"))
- (sha256
- (base32
- "09lm4xlzy6wva4c2459r2ghvi3rx223iq5hpvxncjwm1516m8zqp"))))
- ("dmd-testsuite-src"
- ,(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/dmd-testsuite/archive/ldc-v"
- beta-version ".tar.gz"))
- (sha256
- (base32
- "1k23fgjc44x7m5l7785pfq8gzh4ymzapfjn4h16s7myqwkx71rbi"))
- ;; Remove the gdb tests that fails with a "Error: No such file or
- ;; directory" error, despite the files being present in the debug
- ;; files left with the --keep-failed flag to guix build.
- )))))))
-
-(define-public ldc-beta ldc)
-
-(define-public ldc-1.1.0-patched ; guix in main line w.o. patch
- (let ((version2 "1.1.0")) ; version for libraries
- (package
- (inherit ldcmain:ldc)
- (name "ldc")
- (version "1.1.0-patched") ; version for ldc
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/ldc/archive/v"
- version2 ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "10zkrmx9bcmhfxvgykm3fkjamzc8js96wm032bv0fyil5c9ja2y1"))))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'unpack-submodule-sources
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((unpack (lambda (source target)
- (with-directory-excursion target
- (zero? (system* "tar" "xvf"
- (assoc-ref inputs source)
- "--strip-components=1"))))))
- (and (unpack "phobos-src" "runtime/phobos")
- (unpack "druntime-src" "runtime/druntime")
- (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite")))))
- (add-after 'unpack-submodule-sources 'patch-phobos
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "runtime/phobos/std/process.d"
- (("/bin/sh") (which "sh"))
- (("echo") (which "echo")))
- (substitute* "runtime/phobos/std/datetime.d"
- (("/usr/share/zoneinfo/")
- (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo")))
- (substitute* "tests/d2/dmd-testsuite/Makefile"
- (("/bin/bash") (which "bash")))
- #t)))
- #:tests? #f))
- (native-inputs
- `(("llvm" ,llvm-3.7)
- ("ldc" ,ldc-0.17.2)
- ("zlib" ,zlib)
- ("phobos-src"
- ,(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/phobos/archive/ldc-v"
- version2 ".tar.gz")) ; older version
- (file-name (string-append "ldc-phobos-" version2 ".tar.gz"))
- (sha256
- (base32
- "0z5v55b9s1ppf0c2ivjq7sbmq688c37c92ihc3qwrbxnqvkkvrlk"))))
- ("druntime-src"
- ,(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/druntime/archive/ldc-v"
- version2 ".tar.gz"))
- (file-name (string-append "ldc-druntime-" version2 ".tar.gz"))
- (patches (search-patches "ldc-druntime-finiTLSRanges.patch"))
- (sha256
- (base32
- "07qvrqj6vgakd6qr4x5f70w6zwkzd1li5x8i1b5ywnds1z5lnfp6"))))
- ("dmd-testsuite-src"
- ,(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/ldc-developers/dmd-testsuite/archive/ldc-v"
- version2 ".tar.gz")) ; version is behind
- (file-name (string-append "dmd-testsuite-" version2 ".tar.gz"))
- (sha256
- (base32
- "12cak7yqmsgjlflx0dp6fwmwb9dac25amgi86n0bb95ard3547wy")))))))))
-
-(define-public ldc-patched ldc-1.1.0-patched)