From 6f83d224bbb95367f3a1f816d48da7fc4d60a058 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 9 Oct 2016 22:38:37 +0200 Subject: [PATCH] gnu: tcsh: Do not define BSDWAIT. * gnu/packages/patches/tcsh-do-not-define-BSDWAIT.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/shells.scm (tcsh)[source]: Use it. --- gnu/local.mk | 1 + .../patches/tcsh-do-not-define-BSDWAIT.patch | 33 +++++++++++++++++++ gnu/packages/shells.scm | 3 +- 3 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/tcsh-do-not-define-BSDWAIT.patch diff --git a/gnu/local.mk b/gnu/local.mk index effa3efdeb..c7cd72fba3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -823,6 +823,7 @@ dist_patch_DATA = \ %D%/packages/patches/tar-skip-unreliable-tests.patch \ %D%/packages/patches/tcl-mkindex-deterministic.patch \ %D%/packages/patches/tclxml-3.2-install.patch \ + %D%/packages/patches/tcsh-do-not-define-BSDWAIT.patch \ %D%/packages/patches/tcsh-fix-autotest.patch \ %D%/packages/patches/teensy-loader-cli-help.patch \ %D%/packages/patches/texi2html-document-encoding.patch \ diff --git a/gnu/packages/patches/tcsh-do-not-define-BSDWAIT.patch b/gnu/packages/patches/tcsh-do-not-define-BSDWAIT.patch new file mode 100644 index 0000000000..1426883216 --- /dev/null +++ b/gnu/packages/patches/tcsh-do-not-define-BSDWAIT.patch @@ -0,0 +1,33 @@ +Do not define BSDWAIT to avoid error "storage size of ‘w’ isn’t known". + +This is an adapted version of the upstream patch taken from here: +https://github.com/tcsh-org/tcsh/commit/4689eb60a74bf13bc146ca3d76e9d7a124ab7b49.patch + +From 4689eb60a74bf13bc146ca3d76e9d7a124ab7b49 Mon Sep 17 00:00:00 2001 +From: christos +Date: Fri, 23 Sep 2016 19:17:28 +0000 +Subject: [PATCH] Don't define BSDWAIT for linux anymore. + +--- + sh.proc.c | 8 +++----- + 1 file changed, 3 insertions(+), 5 deletions(-) + +diff --git a/sh.proc.c b/sh.proc.c +index 49b199f..874d67c 100644 +--- sh.proc.c ++++ sh.proc.c +@@ -47,11 +47,9 @@ RCSID("$tcsh$") + # define HZ 16 + #endif /* aiws */ + +-#if defined(_BSD) || (defined(IRIS4D) && __STDC__) || defined(__lucid) || defined(__linux__) || defined(__GNU__) || defined(__GLIBC__) +-# if !defined(__ANDROID__) +-# define BSDWAIT +-# endif +-#endif /* _BSD || (IRIS4D && __STDC__) || __lucid || glibc */ ++#if defined(_BSD) || (defined(IRIS4D) && __STDC__) || defined(__lucid) ++# define BSDWAIT ++#endif /* _BSD || (IRIS4D && __STDC__) || __lucid */ + #ifndef WTERMSIG + # define WTERMSIG(w) (((union wait *) &(w))->w_termsig) + # ifndef BSDWAIT diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 6d510c2e4c..1fa828059d 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -185,7 +185,8 @@ (define-public tcsh (sha256 (base32 "1a4z9kwgx1iqqzvv64si34m60gj34p7lp6rrcrb59s7ka5wa476q")) - (patches (search-patches "tcsh-fix-autotest.patch")) + (patches (search-patches "tcsh-fix-autotest.patch" + "tcsh-do-not-define-BSDWAIT.patch")) (patch-flags '("-p0")))) (build-system gnu-build-system) (inputs