* [PATCH 2/2] gnu: tcsh: Update to 6.19.00.
2016-08-03 3:33 [PATCH 1/2] gnu: zsh: Use 'modify-phases' Tobias Geerinckx-Rice
@ 2016-08-03 3:33 ` Tobias Geerinckx-Rice
2016-08-07 2:18 ` Leo Famulari
2016-08-07 2:08 ` [PATCH 1/2] gnu: zsh: Use 'modify-phases' Leo Famulari
1 sibling, 1 reply; 6+ messages in thread
From: Tobias Geerinckx-Rice @ 2016-08-03 3:33 UTC (permalink / raw)
To: guix-devel
* gnu/packages/shells.scm (tcsh): Update to 6.19.00.
[arguments]: Use ‘modify-phases’ instead of ‘alist-delete’.
* gnu/packages/patches/tcsh-fix-autotest.patch: Update patch.
---
Guix!
A minor update for tcsh, as wel as #:phases.
Only four tests fail now when building unpatched on my x86_64-linux
machine, down from six in the previous version. I've trimmed down
‘tcsh-fix-autotest.patch’ to only disabled those 4 tests.
This may be overly optimistic. Testing (tips) welcome.
Kind regards,
T G-R
gnu/packages/patches/tcsh-fix-autotest.patch | 157 ++++-----------------------
gnu/packages/shells.scm | 52 +++++----
2 files changed, 47 insertions(+), 162 deletions(-)
diff --git a/gnu/packages/patches/tcsh-fix-autotest.patch b/gnu/packages/patches/tcsh-fix-autotest.patch
index a169801..cd0e79a 100644
--- a/gnu/packages/patches/tcsh-fix-autotest.patch
+++ b/gnu/packages/patches/tcsh-fix-autotest.patch
@@ -1,6 +1,7 @@
---- tests/commands.at 2011-01-22 01:04:02.000000000 +0100
-+++ tests/commands.at 2013-02-04 10:57:24.000000000 +0100
-@@ -919,26 +919,27 @@
+diff -Naur tests/commands.at
+--- tests/commands.at 2015-05-05 16:10:58.000000000 +0200
++++ tests/commands.at 2016-08-02 16:50:04.674459291 +0200
+@@ -921,26 +921,27 @@
TCSH_UNTESTED([notify])
@@ -48,41 +49,9 @@
AT_SETUP([popd])
-@@ -1203,11 +1204,12 @@
- AT_DATA([script.csh],
- [[set var=$1
- ]])
--AT_CHECK([[tcsh -f -c 'source -h script.csh foo; history' \
-- | sed 's/ [^ ]* / TIME /']], ,
--[ 1 TIME source -h script.csh foo ; history
-- 2 TIME set var=$1
--])
-+# XXX: Not sure why this fails. The output is : "1 TIME set var=$1"
-+#AT_CHECK([[tcsh -f -c 'source -h script.csh foo; history' \
-+# | sed 's/ [^ ]* / TIME /']], ,
-+#[ 1 TIME source -h script.csh foo ; history
-+# 2 TIME set var=$1
-+#])
-
- AT_CHECK([tcsh -f -c 'source -h script.csh foo; echo $var'], 1, [],
- [var: Undefined variable.
---- tests/lexical.at 2011-12-27 22:50:52.000000000 +0100
-+++ tests/lexical.at 2013-02-04 10:53:21.000000000 +0100
-@@ -33,9 +33,9 @@
- AT_CHECK([echo 'echo OK@%:@comment' | tcsh -f], , [OK
- ])
-
--AT_CHECK([tcsh -f -c 'echo @%:@no comment'], ,
--[@%:@no comment
--])
-+#AT_CHECK([tcsh -f -c 'echo @%:@no comment'], ,
-+#[@%:@no comment
-+#])
-
- AT_DATA([comment2.csh],
- [[echo testing...@%:@\
+diff -Naur tests/subst.at
--- tests/subst.at 2011-12-27 22:50:52.000000000 +0100
-+++ tests/subst.at 2013-02-01 08:14:25.000000000 +0100
++++ tests/subst.at 2016-08-02 16:51:19.521043748 +0200
@@ -54,7 +54,7 @@
, [1
])
@@ -92,49 +61,31 @@
| wc -l | tr -d ' \t'], , [1
])
---- tests/variables.at 2011-12-27 22:50:52.000000000 +0100
-+++ tests/variables.at 2013-02-04 11:40:35.000000000 +0100
-@@ -317,17 +317,18 @@
+diff -Naur tests/variables.at
+--- tests/variables.at 2015-05-05 16:10:58.000000000 +0200
++++ tests/variables.at 2016-08-02 17:00:46.256499321 +0200
+@@ -704,13 +704,13 @@
AT_CLEANUP
--AT_SETUP([$ edit])
--
--AT_CHECK([TERM=something tcsh -f -c 'echo $?edit'], ,
--[1
--])
--
--AT_CHECK([TERM=dumb tcsh -f -c 'echo $?edit'], ,
--[0
+-AT_SETUP([$ cdtohome])
+-AT_CHECK([tcsh -f -c 'cd'], 0)
+-AT_CLEANUP
+-AT_SETUP([$ noimplicithome])
+-AT_CHECK([tcsh -f -c 'unset cdtohome; cd'], 1, , [cd: Too few arguments.
-])
--
-AT_CLEANUP
-+# XXX
-+#AT_SETUP([$ edit])
-+#
-+#AT_CHECK([TERM=something tcsh -f -c 'echo $?edit'], ,
-+#[1
-+#])
-+#
-+#AT_CHECK([TERM=dumb tcsh -f -c 'echo $?edit'], ,
-+#[0
++#AT_SETUP([$ cdtohome])
++#AT_CHECK([tcsh -f -c 'cd'], 0)
++#AT_CLEANUP
++#AT_SETUP([$ noimplicithome])
++#AT_CHECK([tcsh -f -c 'unset cdtohome; cd'], 1, , [cd: Too few arguments.
+#])
-+#
+#AT_CLEANUP
- AT_SETUP([$ ellipsis])
-@@ -642,7 +643,8 @@
- ls-F -something .
- ]])
- AT_DATA([args.sh],
--[[echo "$@"
-+[[#!/bin/sh
-+echo "$@"
- ]])
- chmod a+x args.sh
- AT_CHECK([tcsh -f listflags.csh], ,
-@@ -695,55 +697,57 @@
+ VAR_UNSET([matchbeep])
+@@ -728,21 +728,22 @@
AT_SETUP([$ owd])
AT_DATA([owd.csh],
@@ -165,67 +116,3 @@
])
AT_CLEANUP
-
-
--AT_SETUP([$ path])
--
--mkdir subdir
--AT_DATA([script.sh],
--[[echo home
--]])
--AT_DATA([subdir/script.sh],
--[[echo subdir
--]])
--chmod a+x script.sh subdir/script.sh
--AT_DATA([path.csh],
--[[echo $?path
--set path=(. subdir)
--script.sh
--set path=(subdir .)
--script.sh
--printenv PATH
--setenv PATH :foo::bar:
--echo $path
--]])
--AT_CHECK([tcsh -f path.csh], ,
--[1
--home
--subdir
--subdir:.
--. foo . bar .
--])
--
--AT_CLEANUP
-+# XXX Not sure why this does not work. "home" is printed out twice on stdout.
-+#AT_SETUP([$ path])
-+#
-+#mkdir subdir
-+#AT_DATA([script.sh],
-+#[[echo home
-+#]])
-+#AT_DATA([subdir/script.sh],
-+#[[echo subdir
-+#]])
-+#chmod a+x script.sh subdir/script.sh
-+#AT_DATA([path.csh],
-+#[[echo $?path
-+#set path=(. subdir)
-+#script.sh
-+#set path=(subdir .)
-+#script.sh
-+#printenv PATH
-+#setenv PATH :foo::bar:
-+#echo $path
-+#]])
-+#AT_CHECK([tcsh -f path.csh], ,
-+#[1
-+#home
-+#subdir
-+#subdir:.
-+#. foo . bar .
-+#])
-+#
-+#AT_CLEANUP
-
-
- AT_SETUP([$ printexitvalue])
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index 183ef7f..ae0131c 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -160,7 +160,7 @@ has a small feature set similar to a traditional Bourne shell.")
(define-public tcsh
(package
(name "tcsh")
- (version "6.18.01")
+ (version "6.19.00")
(source (origin
(method url-fetch)
;; Old tarballs are moved to old/.
@@ -170,7 +170,7 @@ has a small feature set similar to a traditional Bourne shell.")
"old/tcsh-" version ".tar.gz")))
(sha256
(base32
- "1a4z9kwgx1iqqzvv64si34m60gj34p7lp6rrcrb59s7ka5wa476q"))
+ "0jaw51382pqyb6d1kgfg8ir0wd3p5qr2bmg8svcmjhlyp3h73qhj"))
(patches (search-patches "tcsh-fix-autotest.patch"))
(patch-flags '("-p0"))))
(build-system gnu-build-system)
@@ -180,32 +180,30 @@ has a small feature set similar to a traditional Bourne shell.")
("ncurses" ,ncurses)))
(arguments
`(#:phases
- (alist-cons-before
- 'check 'patch-test-scripts
- (lambda _
- ;; Take care of pwd
- (substitute* '("tests/commands.at" "tests/variables.at")
- (("/bin/pwd") (which "pwd")))
- ;; The .at files create shell scripts without shebangs. Erk.
- (substitute* "tests/commands.at"
- (("./output.sh") "/bin/sh output.sh"))
- (substitute* "tests/syntax.at"
- (("; other_script.csh") "; /bin/sh other_script.csh"))
- ;; Now, let's generate the test suite and patch it
- (system* "make" "tests/testsuite")
+ (modify-phases %standard-phases
+ (add-before 'check 'patch-test-scripts
+ (lambda _
+ ;; Take care of pwd
+ (substitute* '("tests/commands.at" "tests/variables.at")
+ (("/bin/pwd") (which "pwd")))
+ ;; The .at files create shell scripts without shebangs. Erk.
+ (substitute* "tests/commands.at"
+ (("./output.sh") "/bin/sh output.sh"))
+ (substitute* "tests/syntax.at"
+ (("; other_script.csh") "; /bin/sh other_script.csh"))
+ ;; Now, let's generate the test suite and patch it
+ (system* "make" "tests/testsuite")
- ;; This file is ISO-8859-1 encoded.
- (with-fluids ((%default-port-encoding #f))
- (substitute* "tests/testsuite"
- (("/bin/sh") (which "sh")))))
- (alist-cons-after
- 'install 'post-install
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin")))
- (with-directory-excursion bin
- (symlink "tcsh" "csh"))))
- %standard-phases))))
+ ;; This file is ISO-8859-1 encoded.
+ (with-fluids ((%default-port-encoding #f))
+ (substitute* "tests/testsuite"
+ (("/bin/sh") (which "sh"))))))
+ (add-after 'install 'post-install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref %outputs "out"))
+ (bin (string-append out "/bin")))
+ (with-directory-excursion bin
+ (symlink "tcsh" "csh"))))))))
(home-page "http://www.tcsh.org/")
(synopsis "Unix shell based on csh")
(description
--
2.9.0
^ permalink raw reply related [flat|nested] 6+ messages in thread