diff --git a/gnu/packages/patches/screen-hurd-path-max.patch b/gnu/packages/patches/screen-hurd-path-max.patch index e906f154f3..03b350e79e 100644 --- a/gnu/packages/patches/screen-hurd-path-max.patch +++ b/gnu/packages/patches/screen-hurd-path-max.patch @@ -6,30 +6,17 @@ Description: Set PATH_MAX to 4096 if undefined Fixes FTBFS since 4.4.0 on GNU/Hurd. Updated to add one more occurrence for 4.5.0. Author: Axel Beckert Bug: https://savannah.gnu.org/bugs/?50089 -Last-Updated: 2017-01-18 +Updated: 2017-01-18 +Updated: 2024-08-30 Update for Screen 5.0.0 ---- a/tty.sh -+++ b/tty.sh -@@ -1478,6 +1478,13 @@ - return 0; - } - -+/* -+ * Define PATH_MAX to 4096 if it's not defined, like on GNU/Hurd -+ */ -+ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif - - int CheckTtyname (char *tty) - { +diff --git a/screen.h b/screen.h +index 308c365..e71bd7f 100644 --- a/screen.h +++ b/screen.h -@@ -109,6 +109,13 @@ - # define DEFAULT_BUFFERFILE "/tmp/screen-exchange" +@@ -63,6 +63,22 @@ struct mode { #endif - + }; + +/* + * Define PATH_MAX to 4096 if it's not defined, like on GNU/Hurd + */ @@ -37,6 +24,15 @@ Last-Updated: 2017-01-18 +#ifndef PATH_MAX +#define PATH_MAX 4096 +#endif - - #if defined(hpux) && !(defined(VSUSP) && defined(VDSUSP) && defined(VWERASE) && defined(VLNEXT)) - # define HPUX_LTCHARS_HACK ++ ++/* ++ * similarly for MAXPATHLEN ++ */ ++ ++#ifndef MAXPATHLEN ++#define MAXPATHLEN PATH_MAX ++#endif ++ + + #include "ansi.h" + #include "image.h" diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm index 095f18d85e..e791f29190 100644 --- a/gnu/packages/screen.scm +++ b/gnu/packages/screen.scm @@ -37,6 +37,7 @@ (define-module (gnu packages screen) #:use-module (gnu packages bash) #:use-module (gnu packages crypto) #:use-module (gnu packages hurd) + #:use-module (gnu packages linux) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages python) @@ -46,24 +47,27 @@ (define-module (gnu packages screen) (define-public screen (package (name "screen") - (version "4.9.1") + (version "5.0.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/screen/screen-" version ".tar.gz")) (patches (search-patches "screen-hurd-path-max.patch")) (sha256 - (base32 "0sdc0ms6qxm4gbx0caw7pwghj5aw1h8syvxdhkac0w95qkiz7ki6")))) + (base32 "0wa9v6p7cna2scpimpvk9pgxaah80f4q0f2kln37qp0f1b83jjph")))) (build-system gnu-build-system) (native-inputs (list autoconf automake texinfo)) (inputs - (list libxcrypt ncurses perl)) + (list libxcrypt linux-pam ncurses perl)) (arguments `(#:configure-flags + ;; GNU_SOURCE must be defined for mallocmock_reset() to be defined + '("CFLAGS=-O2 -g -D_GNU_SOURCE=1" + ;; By default, screen supports 16 colors, but we want 256 when ;; ~/.screenrc contains 'term xterm-256color'. - '("--enable-colors256"))) + "--enable-colors256"))) (home-page "https://www.gnu.org/software/screen/") (synopsis "Full-screen window manager providing multiple terminals") (description