summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/patches/rcs-5.10.0-no-stdin.patch57
-rw-r--r--gnu/packages/patches/rcs-5.9.4-noreturn.patch94
-rw-r--r--gnu/packages/version-control.scm15
3 files changed, 60 insertions, 106 deletions
diff --git a/gnu/packages/patches/rcs-5.10.0-no-stdin.patch b/gnu/packages/patches/rcs-5.10.0-no-stdin.patch
new file mode 100644
index 0000000000..56edfe7b65
--- /dev/null
+++ b/gnu/packages/patches/rcs-5.10.0-no-stdin.patch
@@ -0,0 +1,57 @@
+http://git.savannah.gnu.org/cgit/rcs.git/patch/?id=8883c4f5a29be18e9ea09bd27a7b660830de45bb
+
+
+From 8883c4f5a29be18e9ea09bd27a7b660830de45bb Mon Sep 17 00:00:00 2001
+From: Thien-Thi Nguyen <ttn@gnu.org>
+Date: Fri, 23 Oct 2020 09:23:49 -0400
+Subject: [v] Don't test signal handling if stdin not ok.
+
+<https://mail.gnu.org/archive/html/bug-rcs/2020-10/msg00014.html>
+
+* tests/t632: If stdin is not open and connected to
+a tty, skip the signal handling portion of the test.
+---
+ tests/ChangeLog | 9 +++++++++
+ tests/t632 | 9 +++++++++
+ 2 files changed, 18 insertions(+)
+
+diff --git a/tests/ChangeLog b/tests/ChangeLog
+index c3715c0..0565058 100644
+--- a/tests/ChangeLog
++++ b/tests/ChangeLog
+@@ -1,3 +1,12 @@
++2020-10-23 Thien-Thi Nguyen <ttn@gnu.org>
++
++ [v] Don't test signal handling if stdin not ok.
++
++ <https://mail.gnu.org/archive/html/bug-rcs/2020-10/msg00014.html>
++
++ * t632: If stdin is not open and connected to
++ a tty, skip the signal handling portion of the test.
++
+ 2020-10-20 Thien-Thi Nguyen <ttn@gnu.org>
+
+ Release: 5.10.0
+diff --git a/tests/t632 b/tests/t632
+index df6acc9..677ec8c 100644
+--- a/tests/t632
++++ b/tests/t632
+@@ -40,6 +40,15 @@ echo | co -l -I $w \
+ # (This is skipped if GNU coreutils timeout(1) is not available.)
+ ##
+
++# <https://mail.gnu.org/archive/html/bug-rcs/2020-10/msg00014.html>
++# The timeout test needs co(1) to block on input.
++# If stdin is not open and connected to a tty, skip out.
++if test -t 0 ; then
++ echo STDIN OK
++else
++ exit 0
++fi
++
+ # TODO: Don't be lame! Pick one:
+ # (a) Mimic timeout(1) w/ sh commands.
+ # (b) Incorporate heart of timeout(1) into ./btdt and use that.
+--
+cgit v1.2.1
+
diff --git a/gnu/packages/patches/rcs-5.9.4-noreturn.patch b/gnu/packages/patches/rcs-5.9.4-noreturn.patch
deleted file mode 100644
index 0c0c044ed5..0000000000
--- a/gnu/packages/patches/rcs-5.9.4-noreturn.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-Builds with GCC-5 failed due to misplaced `_Noreturn (__attribute__((noreturn)))`
-statement.
-
-Patch copied from upstream source repository:
-
-http://git.savannah.gnu.org/cgit/rcs.git/commit/?h=p&id=260704a9164dd34cf7128d6b1e88075ffa3be054
-
-Upstream bug URL:
-
-https://savannah.gnu.org/bugs/?49568
-
-commit 260704a9164dd34cf7128d6b1e88075ffa3be054
-Author: Thien-Thi Nguyen <ttn@gnu.org>
-Date: Thu Jun 18 21:25:53 2015 +0200
-
- [C slog] Move ‘exiting’ to beginning of func decl.
-
- Apparently, ‘gcc --std=c11’ does not abide the ‘exiting’
- attribute appearing at the end of the func decl.
- Reported by Romain Francoise.
- See also <https://bugs.debian.org/778100>.
-
- * src/b-complain.h (generic_fatal, fatal_syntax, fatal_sys)
- * src/b-fb.h (Ierror, Oerror)
- * src/base.h (unexpected_EOF, thank_you_and_goodnight):
- Move ‘exiting’ attribute to beginning of func decl.
-
-diff --git a/src/b-complain.h b/src/b-complain.h
-index 0ffd157..ea0ffc5 100644
---- a/src/b-complain.h
-+++ b/src/b-complain.h
-@@ -32,12 +32,14 @@ extern void generic_warn (char const *who, char const *fmt, ...)
- printf_string (2, 3);
- extern void generic_error (char const *who, char const *fmt, ...)
- printf_string (2, 3);
-+exiting
- extern void generic_fatal (char const *who, char const *fmt, ...)
-- printf_string (2, 3) exiting;
-+ printf_string (2, 3);
-+exiting
- extern void fatal_syntax (size_t lno, char const *fmt, ...)
-- printf_string (2, 3) exiting;
--extern void fatal_sys (char const *who)
-- exiting;
-+ printf_string (2, 3);
-+exiting
-+extern void fatal_sys (char const *who);
-
- /* Idioms. Here, prefix P stands for "program" (general operation);
- M for "manifestation"; R for "repository". */
-diff --git a/src/b-fb.h b/src/b-fb.h
-index c9850e7..bf5eaf8 100644
---- a/src/b-fb.h
-+++ b/src/b-fb.h
-@@ -21,9 +21,11 @@
- */
-
- extern int change_mode (int fd, mode_t mode);
--extern void Ierror (void) exiting;
-+exiting
-+extern void Ierror (void);
- extern void testIerror (FILE *f);
--extern void Oerror (void) exiting;
-+exiting
-+extern void Oerror (void);
- extern void testOerror (FILE *o);
- extern FILE *fopen_safer (char const *filename, char const *type);
- extern void Ozclose (FILE **p);
-diff --git a/src/base.h b/src/base.h
-index 163ee09..5e7a9f8 100644
---- a/src/base.h
-+++ b/src/base.h
-@@ -755,8 +755,8 @@ int dorewrite (bool lockflag, int changed);
- int donerewrite (int changed, time_t newRCStime);
- void ORCSclose (void);
- void ORCSerror (void);
--void unexpected_EOF (void)
-- exiting;
-+exiting
-+void unexpected_EOF (void);
- void initdiffcmd (struct diffcmd *dc);
- int getdiffcmd (struct fro *finfile, bool delimiter,
- FILE *foutfile, struct diffcmd *dc);
-@@ -831,8 +831,8 @@ char const *date2str (char const date[datesize],
- char datebuf[datesize + zonelenmax]);
-
- /* rcsutil */
--void thank_you_and_goodnight (int const how)
-- exiting;
-+exiting
-+void thank_you_and_goodnight (int const how);
- /* These are for ‘thank_you_and_goodnight’. */
- #define TYAG_ORCSERROR (1 << 3)
- #define TYAG_DIRTMPUNLINK (1 << 2)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index fe61bc8fce..0e0e59d1a2 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -1799,26 +1799,17 @@ projects, from individuals to large-scale enterprise operations.")
(define-public rcs
(package
(name "rcs")
- (version "5.9.4")
+ (version "5.10.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/rcs/rcs-"
version ".tar.xz"))
(sha256
(base32
- "1zsx7bb0rgvvvisiy4zlixf56ay8wbd9qqqcp1a1g0m1gl6mlg86"))
- (patches (search-patches "rcs-5.9.4-noreturn.patch"))))
+ "1if5pa4iip2p70gljm54nggfdnsfjxa4cqz8fpj07lvsijary39s"))
+ (patches (search-patches "rcs-5.10.0-no-stdin.patch"))))
(build-system gnu-build-system)
(native-inputs `(("ed" ,ed)))
- (arguments
- `(#:phases (modify-phases %standard-phases
- (add-before 'check 'disable-t810
- ;; See https://savannah.gnu.org/bugs/index.php?52288
- ;; Back-porting the fix is non-trivial, so disable for now.
- (lambda _
- (substitute* "tests/Makefile"
- ((" t810 \\\\\n") ""))
- #t)))))
(home-page "https://www.gnu.org/software/rcs/")
(synopsis "Per-file local revision control system")
(description