From patchwork Wed Aug 3 03:33:36 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Tobias Geerinckx-Rice X-Patchwork-Id: 14266 Received: (qmail 95298 invoked by uid 89); 3 Aug 2016 03:32:53 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.99.1 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.1 required=5.0 tests=BAYES_00, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 spammy=ISO-8859-1, ISO88591, owd, UD:at X-Spam-Status: No, score=-3.1 required=5.0 tests=BAYES_00, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on sourceware.org X-Spam-Level: X-HELO: lists.gnu.org Received: from lists.gnu.org (HELO lists.gnu.org) (208.118.235.17) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Wed, 03 Aug 2016 03:32:43 +0000 Received: from localhost ([::1]:59995 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUmvA-0002iJ-Uo for patchwork@sourceware.org; Tue, 02 Aug 2016 23:32:40 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52419) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUmv1-0002hS-J3 for guix-devel@gnu.org; Tue, 02 Aug 2016 23:32:33 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUmux-0002rL-9O for guix-devel@gnu.org; Tue, 02 Aug 2016 23:32:30 -0400 Received: from relay6-d.mail.gandi.net ([217.70.183.198]:53247) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUmuw-0002rB-Uy for guix-devel@gnu.org; Tue, 02 Aug 2016 23:32:27 -0400 Received: from mfilter28-d.gandi.net (mfilter28-d.gandi.net [217.70.178.159]) by relay6-d.mail.gandi.net (Postfix) with ESMTP id 3DA23FB89E for ; Wed, 3 Aug 2016 05:32:26 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mfilter28-d.gandi.net Received: from relay6-d.mail.gandi.net ([IPv6:::ffff:217.70.183.198]) by mfilter28-d.gandi.net (mfilter28-d.gandi.net [::ffff:10.0.15.180]) (amavisd-new, port 10024) with ESMTP id 1oVuCr479Zd1 for ; Wed, 3 Aug 2016 05:32:24 +0200 (CEST) X-Originating-IP: 163.172.141.64 Received: from sandstone.cloud.online.net (unknown [163.172.141.64]) (Authenticated sender: me@tobias.gr) by relay6-d.mail.gandi.net (Postfix) with ESMTPSA id 05579FB883 for ; Wed, 3 Aug 2016 05:32:23 +0200 (CEST) From: Tobias Geerinckx-Rice To: guix-devel@gnu.org Subject: [PATCH 2/2] gnu: tcsh: Update to 6.19.00. Date: Wed, 3 Aug 2016 05:33:36 +0200 Message-Id: <20160803033336.14990-2-me@tobias.gr> X-Mailer: git-send-email 2.9.1 In-Reply-To: <20160803033336.14990-1-me@tobias.gr> References: <20160803033336.14990-1-me@tobias.gr> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 217.70.183.198 X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+patchwork=sourceware.org@gnu.org Sender: "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