* [PATCH v8] gnu: Update ldc to 0.17.1.
@ 2016-09-13 20:01 Danny Milosavljevic
2016-09-14 13:25 ` Efraim Flashner
2016-09-14 14:54 ` Ludovic Courtès
0 siblings, 2 replies; 5+ messages in thread
From: Danny Milosavljevic @ 2016-09-13 20:01 UTC (permalink / raw)
To: guix-devel
[-- Attachment #1: Type: text/plain, Size: 418 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 | 25 ++++---
.../patches/ldc-0.17.1-disable-tests.patch | 86 ++++++++++++++++++++++
2 files changed, 101 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: 7378 bytes --]
diff --git a/gnu/packages/ldc.scm b/gnu/packages/ldc.scm
index 560fa49..88f3443 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
@@ -105,10 +105,13 @@ and freshness without requiring additional information from the user.")
(add-after 'unpack-submodule-sources 'patch-dmd2
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "dmd2/root/port.c"
+ (("#include <math.h>") "#include <cmath>")
((" ::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 +133,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 +143,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 +153,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 +162,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] 5+ messages in thread
* Re: [PATCH v8] gnu: Update ldc to 0.17.1.
2016-09-13 20:01 [PATCH v8] gnu: Update ldc to 0.17.1 Danny Milosavljevic
@ 2016-09-14 13:25 ` Efraim Flashner
2016-09-14 15:55 ` Danny Milosavljevic
2016-09-14 14:54 ` Ludovic Courtès
1 sibling, 1 reply; 5+ messages in thread
From: Efraim Flashner @ 2016-09-14 13:25 UTC (permalink / raw)
To: Danny Milosavljevic; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 8706 bytes --]
On Tue, Sep 13, 2016 at 10:01:39PM +0200, Danny Milosavljevic wrote:
> 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 | 25 ++++---
> .../patches/ldc-0.17.1-disable-tests.patch | 86 ++++++++++++++++++++++
> 2 files changed, 101 insertions(+), 10 deletions(-)
> create mode 100644 gnu/packages/patches/ldc-0.17.1-disable-tests.patch
>
> diff --git a/gnu/packages/ldc.scm b/gnu/packages/ldc.scm
> index 560fa49..88f3443 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
> @@ -105,10 +105,13 @@ and freshness without requiring additional information from the user.")
> (add-after 'unpack-submodule-sources 'patch-dmd2
> (lambda* (#:key inputs #:allow-other-keys)
> (substitute* "dmd2/root/port.c"
> + (("#include <math.h>") "#include <cmath>")
> ((" ::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 +133,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 +143,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 +153,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 +162,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
With this patch I got:
The following tests FAILED:
238 - std.datetime (Failed)
296 - std.regex.internal.tests (Failed)
568 - std.datetime-debug (Failed)
626 - std.regex.internal.tests-debug (Failed)
670 - dmd-testsuite-debug (Failed)
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v8] gnu: Update ldc to 0.17.1.
2016-09-13 20:01 [PATCH v8] gnu: Update ldc to 0.17.1 Danny Milosavljevic
2016-09-14 13:25 ` Efraim Flashner
@ 2016-09-14 14:54 ` Ludovic Courtès
1 sibling, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2016-09-14 14:54 UTC (permalink / raw)
To: Danny Milosavljevic; +Cc: guix-devel
Hi Danny,
Here’s what I see in my inbox:
--8<---------------cut here---------------start------------->8---
Yesterday, 21:37 [ 10: Danny Milosavljevic ] [PATCH v5] gnu: Update ldc to 0.17.1.
Yesterday, 21:51 [ 10: Danny Milosavljevic ] [PATCH v6] gnu: Update ldc to 0.17.1.
Yesterday, 21:56 [ 11: Danny Milosavljevic ] [PATCH v7] gnu: Update ldc to 0.17.1.
Yesterday, 22:02 [ 60: Stefan Reichör ] New package: python-glances
Yesterday, 22:01 [ 11: Danny Milosavljevic ] [PATCH v8] gnu: Update ldc to 0.17.1.
--8<---------------cut here---------------end--------------->8---
4 revisions of one patch in 20 minutes without any review in between.
:-) This can be confusing to potential reviewers!
Ludo’.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v8] gnu: Update ldc to 0.17.1.
2016-09-14 13:25 ` Efraim Flashner
@ 2016-09-14 15:55 ` Danny Milosavljevic
2016-09-14 16:40 ` Efraim Flashner
0 siblings, 1 reply; 5+ messages in thread
From: Danny Milosavljevic @ 2016-09-14 15:55 UTC (permalink / raw)
To: Efraim Flashner; +Cc: guix-devel
Hi,
> With this patch I got:
>
> The following tests FAILED:
> 238 - std.datetime (Failed)
> 296 - std.regex.internal.tests (Failed)
> 568 - std.datetime-debug (Failed)
> 626 - std.regex.internal.tests-debug (Failed)
> 670 - dmd-testsuite-debug (Failed)
Huh really?
I just cloned the guix git repo into a new directory, applied exactly this patch, bootstrapped, built everything, then did ./pre-inst-env guix package -i ldc and it worked, tests and all... (on x86_64 on GuixSD)
Which architecture was your test on?
Can you check what exactly failed? There should be a log in there (if you built it using "--keep-failed" at least).
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v8] gnu: Update ldc to 0.17.1.
2016-09-14 15:55 ` Danny Milosavljevic
@ 2016-09-14 16:40 ` Efraim Flashner
0 siblings, 0 replies; 5+ messages in thread
From: Efraim Flashner @ 2016-09-14 16:40 UTC (permalink / raw)
To: Danny Milosavljevic; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 1055 bytes --]
On Wed, Sep 14, 2016 at 05:55:37PM +0200, Danny Milosavljevic wrote:
> Hi,
>
> > With this patch I got:
> >
> > The following tests FAILED:
> > 238 - std.datetime (Failed)
> > 296 - std.regex.internal.tests (Failed)
> > 568 - std.datetime-debug (Failed)
> > 626 - std.regex.internal.tests-debug (Failed)
> > 670 - dmd-testsuite-debug (Failed)
>
> Huh really?
>
> I just cloned the guix git repo into a new directory, applied exactly this patch, bootstrapped, built everything, then did ./pre-inst-env guix package -i ldc and it worked, tests and all... (on x86_64 on GuixSD)
>
> Which architecture was your test on?
>
> Can you check what exactly failed? There should be a log in there (if you built it using "--keep-failed" at least).
I'm running guix on debian, on x86_64. I didn't build with -K
unfortunately.
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-09-14 16:41 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-13 20:01 [PATCH v8] gnu: Update ldc to 0.17.1 Danny Milosavljevic
2016-09-14 13:25 ` Efraim Flashner
2016-09-14 15:55 ` Danny Milosavljevic
2016-09-14 16:40 ` Efraim Flashner
2016-09-14 14:54 ` Ludovic Courtès
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.