summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-07-02 23:27:04 +0200
committerLudovic Courtès <ludo@gnu.org>2020-07-02 23:54:02 +0200
commitaf74c0633aa62d7d4e341920cfa3265f27f793cf (patch)
treeed682af020dfd7a002208909a6cd3b04fbecbb00
parent2807a8432aa2aaac6fa7024974be6468ca1160b5 (diff)
gnu: gash, gash-utils: Build with Guile 3.0.
* gnu/packages/shells.scm (gash)[source]: Add 'modules' and 'snippet'. [inputs]: Change GUILE-2.2 to GUILE-3.0. (gash-utils)[source]: Add 'modules' and 'snippet'. [inputs]: Change GUILE-2.2 to GUILE-3.0. * gnu/packages/commencement.scm (gash-utils-boot)[source]: Remove unneeded 'modules' field, and add 'snippet'. (gash-utils-boot)[source]: New field. * gnu/packages/patches/gash-utils-ls-test.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/commencement.scm6
-rw-r--r--gnu/packages/patches/gash-utils-ls-test.patch25
-rw-r--r--gnu/packages/shells.scm24
4 files changed, 51 insertions, 5 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index deece17539..040882192f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -943,6 +943,7 @@ dist_patch_DATA = \
%D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/freeimage-unbundle.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \
+ %D%/packages/patches/gash-utils-ls-test.patch \
%D%/packages/patches/gawk-shell.patch \
%D%/packages/patches/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index ef250e037b..d0393ebe25 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -140,7 +140,7 @@ pure Scheme to Tar and decompression in one easy step.")
(name "gash-boot")
(source (origin
(inherit (package-source gash))
- (modules '())))
+ (snippet #f))) ;discard snippet for Guile 3.0 support
(arguments
`(#:implicit-inputs? #f
#:tests? #f
@@ -170,6 +170,10 @@ pure Scheme to Tar and decompression in one easy step.")
(package
(inherit gash-utils)
(name "gash-utils-boot")
+ (source (origin
+ (inherit (package-source gash-utils))
+ (patches '())
+ (snippet #f))) ;discard snippet for Guile 3.0 support
(arguments
`(#:implicit-inputs? #f
#:tests? #f
diff --git a/gnu/packages/patches/gash-utils-ls-test.patch b/gnu/packages/patches/gash-utils-ls-test.patch
new file mode 100644
index 0000000000..e1dfb9c23b
--- /dev/null
+++ b/gnu/packages/patches/gash-utils-ls-test.patch
@@ -0,0 +1,25 @@
+'ls.scm' monkey-patches (ice-9 getopt-long) to allow it to recognize '-1'
+as a valid option. Unfortunately, monkey patching no longer works with
+Guile 3.0 due to inlining, so change the test to make do without '-1'.
+
+diff --git a/tests/core-utils.org b/tests/core-utils.org
+index d35ede8..22718e3 100644
+--- a/tests/core-utils.org
++++ b/tests/core-utils.org
+@@ -93,14 +93,11 @@
+ * ls
+ :script:
+ #+begin_src sh
+- ls -1 tests/data/star
++ ls tests/data/star
+ #+end_src
+ :stdout:
+ #+begin_example
+- 0
+- 1
+- 2
+- 3
++ 0 1 2 3
+ #+end_example
+
+ * test-file
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index 109baacc30..b790a0cc18 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -856,12 +856,19 @@ scripts.")
(sha256
(base32
"13m0yz5h9nj3x40mr6wr5xcpq1lscndfwcicw3skrz801025hhgf"))
- (modules '((guix build utils)))))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Allow builds with Guile 3.0.
+ (substitute* "configure"
+ (("search=\"2\\.2 2\\.0\"")
+ "search=\"3.0 2.2 2.0\""))
+ #t))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
- `(("guile" ,guile-2.2)))
+ `(("guile" ,guile-3.0)))
(arguments
'(#:make-flags '("XFAIL_TESTS=tests/redirects.org")))
(home-page "https://savannah.nongnu.org/projects/gash/")
@@ -882,12 +889,21 @@ as part of the Guix bootstrap process.")
version ".tar.gz"))
(sha256
(base32
- "0ib2p52qmbac5n0s5bys4fiwim461ps546976l1n7pwbs0avh7fk"))))
+ "0ib2p52qmbac5n0s5bys4fiwim461ps546976l1n7pwbs0avh7fk"))
+ (patches (search-patches "gash-utils-ls-test.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Allow builds with Guile 3.0.
+ (substitute* "configure"
+ (("search=\"2\\.2 2\\.0\"")
+ "search=\"3.0 2.2 2.0\""))
+ #t))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
- `(("guile" ,guile-2.2)
+ `(("guile" ,guile-3.0)
("gash" ,gash)))
(home-page "https://savannah.nongnu.org/projects/gash/")
(synopsis "Core POSIX utilities written in Guile Scheme")