# dlang.scm.patch -rw-r--r-- 2.8 KiB View raw
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
diff --git a/gnu/packages/dlang.scm b/gnu/packages/dlang.scm
index 403fcbbd6b..1354e88a0b 100644
--- a/gnu/packages/dlang.scm
+++ b/gnu/packages/dlang.scm
@@ -27,6 +27,7 @@ (define-module (gnu packages dlang)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module ((guix build utils) #:hide (delete which))
@@ -35,6 +36,7 @@ (define-module (gnu packages dlang)
   #:use-module (gnu packages)
   #:use-module (gnu packages base)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages commencement)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages gdb)
@@ -422,7 +424,7 @@ (define (gnu-triplet->clang-arch system)
 (define-public dub
   (package
     (name "dub")
-    (version "1.7.2")
+    (version "1.23.0")
     (source
      (origin
        (method git-fetch)
@@ -431,26 +433,24 @@ (define-public dub
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "073ibvgm1gphcqs1yjrav9ryp677nh3b194nxmvicwgvdc0sb6w9"))))
+        (base32 "06a4whsl1m600k096nwif83n7za3vr7pj1xwapncy5fcad1gmady"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:tests? #f ; it would have tested itself by installing some packages (vibe etc)
-       #:phases
-       (modify-phases %standard-phases
-         (delete 'configure)            ; no configure script
-         (replace 'build
-           (lambda _
-             (invoke "./build.sh")))
-         (replace 'install
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (bin (string-append out "/bin")))
-               (install-file "bin/dub" bin)
-               #t))))))
-    (inputs
-     (list curl))
-    (native-inputs
-     (list ldc))
+     (list #:tests? #f ; it would have tested itself by installing some packages (vibe etc)
+           #:phases
+           #~(modify-phases %standard-phases
+               (delete 'configure) ; no configure script
+               (replace 'build
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (setenv "CC" #$(cc-for-target))
+                   (invoke "ldmd2" "-run" "build.d")))
+               (replace 'install
+                 (lambda* (#:key outputs #:allow-other-keys)
+                   (let* ((out (assoc-ref outputs "out"))
+                     (bin (string-append out "/bin")))
+                     (install-file "bin/dub" bin)))))))
+    (inputs (list curl))
+    (native-inputs (list ldc gcc-toolchain))
     (home-page "https://code.dlang.org/getting_started")
     (synopsis "Package and build manager for D projects")
     (description