* [PATCH v7] gnu: Update ldc to 0.17.1.
@ 2016-09-13 19:56 Danny Milosavljevic
0 siblings, 0 replies; only message in thread
From: Danny Milosavljevic @ 2016-09-13 19:56 UTC (permalink / raw)
To: guix-devel
[-- Attachment #1: Type: text/plain, Size: 417 bytes --]
gnu: Update ldc to 0.17.1.
* gnu/packages/ldc.scm (ldc): Changed.
* gnu/packages/patches/ldc-0.17.1-disable-tests.patch: New patch.
---
gnu/packages/ldc.scm | 24 +++---
.../patches/ldc-0.17.1-disable-tests.patch | 86 ++++++++++++++++++++++
2 files changed, 100 insertions(+), 10 deletions(-)
create mode 100644 gnu/packages/patches/ldc-0.17.1-disable-tests.patch
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Update-ldc-to-0.17.1.patch --]
[-- Type: text/x-patch; name="0001-gnu-Update-ldc-to-0.17.1.patch", Size: 7201 bytes --]
diff --git a/gnu/packages/ldc.scm b/gnu/packages/ldc.scm
index 560fa49..c498fbb 100644
--- a/gnu/packages/ldc.scm
+++ b/gnu/packages/ldc.scm
@@ -29,6 +29,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages libedit)
#:use-module (gnu packages llvm)
+ #:use-module (gnu packages python)
#:use-module (gnu packages textutils)
#:use-module (gnu packages zip))
@@ -76,7 +77,7 @@ and freshness without requiring additional information from the user.")
(define-public ldc
(package
(name "ldc")
- (version "0.16.1")
+ (version "0.17.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -85,10 +86,9 @@ and freshness without requiring additional information from the user.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1jvilxx0rpqmkbja4m69fhd5g09697xq7vyqp2hz4hvxmmmv4j40"))))
+ "0rwggnbr60jbajfdw11kx058llmwljiss8rrv8df07vaygiv845i"))))
(build-system cmake-build-system)
- ;; LDC currently only supports the x86_64 and i686 architectures.
- (supported-systems '("x86_64-linux" "i686-linux"))
+ (supported-systems '("x86_64-linux" "i686-linux" "armhf-linux"))
(arguments
`(#:phases
(modify-phases %standard-phases
@@ -107,8 +107,10 @@ and freshness without requiring additional information from the user.")
(substitute* "dmd2/root/port.c"
((" ::isnan") " isnan")
((" ::isinf") " isinf")
- (("#undef isnan") "")
- (("#undef isinf") ""))
+ (("#undef isnan") "#undef isnan
+using namespace std;")
+ (("#undef isinf") "#undef isinf
+using namespace std;"))
#t))
(add-after 'unpack-submodule-sources 'patch-phobos
(lambda* (#:key inputs #:allow-other-keys)
@@ -130,6 +132,8 @@ and freshness without requiring additional information from the user.")
`(("llvm" ,llvm-3.7)
("clang" ,clang-3.7)
("unzip" ,unzip)
+ ("python-wrapper" ,python-wrapper) ; Needed for running tests
+ ("python-lit" ,python-lit) ; Needed for running tests
("phobos-src"
,(origin
(method url-fetch)
@@ -138,8 +142,8 @@ and freshness without requiring additional information from the user.")
version ".tar.gz"))
(sha256
(base32
- "0sgdj0536c4nb118yiw1f8lqy5d3g3lpg9l99l165lk9xy45l9z4"))
- (patches (search-patches "ldc-disable-tests.patch"))))
+ "17nb1yvqblqj3q42c8nlnwvy823fw6kna28n2b48j4m6kd2w0nan"))
+ (patches (search-patches "ldc-0.17.1-disable-tests.patch"))))
("druntime-src"
,(origin
(method url-fetch)
@@ -148,7 +152,7 @@ and freshness without requiring additional information from the user.")
version ".tar.gz"))
(sha256
(base32
- "0z4mkyddx6c4sy1vqgqvavz55083dsxws681qkh93jh1rpby9yg6"))))
+ "129j7mfd0vnzaw7i6hr5waxm5cb0qcm8gyawy2xy5avlv8hrw5m4"))))
("dmd-testsuite-src"
,(origin
(method url-fetch)
@@ -157,7 +161,7 @@ and freshness without requiring additional information from the user.")
version ".tar.gz"))
(sha256
(base32
- "0yc6miidzgl9k33ygk7xcppmfd6kivqj02cvv4fmkbs3qz4yy3z1"))))))
+ "18h16lwwmr3k9dh7mcip17il72mz680wnygv9d0mdnivczn80zyv"))))))
(home-page "http://wiki.dlang.org/LDC")
(synopsis "LLVM compiler for the D programming language")
(description
diff --git a/gnu/packages/patches/ldc-0.17.1-disable-tests.patch b/gnu/packages/patches/ldc-0.17.1-disable-tests.patch
new file mode 100644
index 0000000..b213894
--- /dev/null
+++ b/gnu/packages/patches/ldc-0.17.1-disable-tests.patch
@@ -0,0 +1,86 @@
+Adapted from "ldc-disable-tests.patch" from Guix.
+diff -ru a/std/datetime.d b/std/datetime.d
+--- a/std/datetime.d 2016-08-02 23:56:13.969292202 +0200
++++ b/std/datetime.d 2016-08-02 23:57:39.078408313 +0200
+@@ -28080,9 +28080,6 @@
+ import std.algorithm : sort;
+ import std.range : retro;
+ import std.format : format;
+-
+- name = strip(name);
+-
+ enforce(tzDatabaseDir.exists(), new DateTimeException(format("Directory %s does not exist.", tzDatabaseDir)));
+ enforce(tzDatabaseDir.isDir, new DateTimeException(format("%s is not a directory.", tzDatabaseDir)));
+
+@@ -28094,7 +28091,10 @@
+ immutable file = buildNormalizedPath(tzDatabaseDir, tzFilename);
+ }
+ else
+- immutable file = buildNormalizedPath(tzDatabaseDir, name);
++ {
++ auto filename = "./" ~ strip(name); // make sure the prefix is not stripped
++ immutable file = buildNormalizedPath(tzDatabaseDir, filename);
++ }
+
+ enforce(file.exists(), new DateTimeException(format("File %s does not exist.", file)));
+ enforce(file.isFile, new DateTimeException(format("%s is not a file.", file)));
+diff -ru a/std/path.d b/std/path.d
+--- a/std/path.d 2016-08-02 23:56:03.781158908 +0200
++++ b/std/path.d 2016-08-02 23:54:06.111624406 +0200
+@@ -3724,8 +3724,8 @@
+ }
+ else
+ {
+- assert(expandTilde("~root") == "/root", expandTilde("~root"));
+- assert(expandTilde("~root/") == "/root/", expandTilde("~root/"));
++ //assert(expandTilde("~root") == "/root", expandTilde("~root"));
++ //assert(expandTilde("~root/") == "/root/", expandTilde("~root/"));
+ }
+ assert(expandTilde("~Idontexist/hey") == "~Idontexist/hey");
+ }
+diff -ru a/std/socket.d b/std/socket.d
+--- a/std/socket.d 2016-08-02 23:56:22.881408857 +0200
++++ b/std/socket.d 2016-08-03 10:09:44.761019447 +0200
+@@ -501,18 +501,19 @@
+ version(CRuntime_Bionic) {} else
+ unittest
+ {
+- softUnittest({
++ pragma(msg, "test disabled on GNU Guix");
++ //softUnittest({
+ Protocol proto = new Protocol;
+- assert(proto.getProtocolByType(ProtocolType.TCP));
++ //assert(proto.getProtocolByType(ProtocolType.TCP));
+ //writeln("About protocol TCP:");
+ //writefln("\tName: %s", proto.name);
+ // foreach(string s; proto.aliases)
+ // {
+ // writefln("\tAlias: %s", s);
+ // }
+- assert(proto.name == "tcp");
+- assert(proto.aliases.length == 1 && proto.aliases[0] == "TCP");
+- });
++ //assert(proto.name == "tcp");
++ //assert(proto.aliases.length == 1 && proto.aliases[0] == "TCP");
++ //});
+ }
+
+
+@@ -842,6 +843,8 @@
+
+ unittest
+ {
++ pragma(msg, "test disabled on GNU Guix");
++ /*
+ InternetHost ih = new InternetHost;
+
+ ih.getHostByAddr(0x7F_00_00_01);
+@@ -872,6 +875,7 @@
+ // writefln("aliases[%d] = %s", i, s);
+ // }
+ });
++ */
+ }
+
+
+Only in b/std: socket.d.orig
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2016-09-13 19:56 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-13 19:56 [PATCH v7] gnu: Update ldc to 0.17.1 Danny Milosavljevic
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).