gnu: gettext: Upgrade to 0.18.3.

* gnu/packages/gettext.scm (gettext): Upgrade to 0.18.3.
  Remove patch.  Change `patch-tests' phase to use (which "sh'); keep it
  regardless of whether we're cross compiling.
This commit is contained in:
Ludovic Courtès 2013-07-08 00:13:15 +02:00
parent acf428dd0b
commit 2c9143a1f3
3 changed files with 22 additions and 109 deletions

View file

@ -182,7 +182,6 @@ dist_patch_DATA = \
gnu/packages/patches/flex-bison-tests.patch \ gnu/packages/patches/flex-bison-tests.patch \
gnu/packages/patches/gawk-shell.patch \ gnu/packages/patches/gawk-shell.patch \
gnu/packages/patches/gcc-cross-environment-variables.patch \ gnu/packages/patches/gcc-cross-environment-variables.patch \
gnu/packages/patches/gettext-gets-undeclared.patch \
gnu/packages/patches/glib-tests-desktop.patch \ gnu/packages/patches/glib-tests-desktop.patch \
gnu/packages/patches/glib-tests-homedir.patch \ gnu/packages/patches/glib-tests-homedir.patch \
gnu/packages/patches/glib-tests-prlimit.patch \ gnu/packages/patches/glib-tests-prlimit.patch \

View file

@ -26,39 +26,30 @@ (define-module (gnu packages gettext)
(define-public gettext (define-public gettext
(package (package
(name "gettext") (name "gettext")
(version "0.18.1.1") (version "0.18.3")
(source (source (origin
(origin (method url-fetch)
(method url-fetch) (uri (string-append "mirror://gnu/gettext/gettext-"
(uri (string-append "mirror://gnu/gettext/gettext-" version ".tar.gz"))
version ".tar.gz")) (sha256
(sha256 (base32
(base32 "0j7rp56c61j4k1bz1xdc041hzv7186yyzhbp95fmc0zq7l2c3wrn"))))
"1sa3ch12qxa4h3ya6hkz119yclcccmincl9j20dhrdx5mykp3b4k"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:patches (list (assoc-ref %build-inputs "patch/gets")) `(#:phases (alist-cons-before
#:phases ,(if (%current-target-system) 'check 'patch-tests
'%standard-phases (lambda* (#:key inputs #:allow-other-keys)
'(alist-cons-before (let ((bash (which "sh")))
'check 'patch-tests (substitute* (find-files "gettext-tools/tests"
(lambda* (#:key inputs #:allow-other-keys) "^msgexec-[0-9]")
;; TODO: Use (which "sh"). (("#![[:blank:]]/bin/sh")
(let ((bash (assoc-ref inputs "bash"))) (format #f "#!~a" bash)))
(substitute* (find-files "gettext-tools/tests" (substitute* (find-files "gettext-tools/gnulib-tests"
"^msgexec-[0-9]") "posix_spawn")
(("#![[:blank:]]/bin/sh") (("/bin/sh")
(format #f "#!~a/bin/sh" bash))) bash))))
(substitute* (find-files "gettext-tools/gnulib-tests" %standard-phases)))
"posix_spawn") (home-page "http://www.gnu.org/software/gettext/")
(("/bin/sh")
(format #f "~a/bin/bash" bash)))))
%standard-phases))))
(inputs
`(("patch/gets"
,(search-patch "gettext-gets-undeclared.patch"))))
(home-page
"http://www.gnu.org/software/gettext/")
(synopsis "Tools and documentation for translation") (synopsis "Tools and documentation for translation")
(description (description
"Usually, programs are written and documented in English, and use "Usually, programs are written and documented in English, and use

View file

@ -1,77 +0,0 @@
This patch is needed to allow builds with newer versions of
the GNU libc (2.16+).
The upstream fix was:
commit 66712c23388e93e5c518ebc8515140fa0c807348
Author: Eric Blake <eblake@redhat.com>
Date: Thu Mar 29 13:30:41 2012 -0600
stdio: don't assume gets any more
Gnulib intentionally does not have a gets module, and now that C11
and glibc have dropped it, we should be more proactive about warning
any user on a platform that still has a declaration of this dangerous
interface.
* m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets
support.
* modules/stdio (Makefile.am): Likewise.
* lib/stdio-read.c (gets): Likewise.
* tests/test-stdio-c++.cc: Likewise.
* m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment.
* lib/stdio.in.h (gets): Make warning occur in more places.
* doc/posix-functions/gets.texi (gets): Update documentation.
Reported by Christer Solskogen.
Signed-off-by: Eric Blake <eblake@redhat.com>
This patch just gets rid of the offending part.
--- gettext-0.18.1.1/gettext-tools/libgettextpo/stdio.in.h-orig 2012-11-24 01:13:14.000000000 +0400
+++ gettext-0.18.1.1/gettext-tools/libgettextpo/stdio.in.h 2012-11-24 01:13:46.000000000 +0400
@@ -137,12 +137,6 @@
"use gnulib module fflush for portable POSIX compliance");
#endif
-/* It is very rare that the developer ever has full control of stdin,
- so any use of gets warrants an unconditional warning. Assume it is
- always declared, since it is required by C89. */
-#undef gets
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
-
#if @GNULIB_FOPEN@
# if @REPLACE_FOPEN@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
--- gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h-orig 2012-11-24 00:26:49.000000000 +0400
+++ gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h 2012-11-24 00:45:54.000000000 +0400
@@ -137,12 +137,6 @@
"use gnulib module fflush for portable POSIX compliance");
#endif
-/* It is very rare that the developer ever has full control of stdin,
- so any use of gets warrants an unconditional warning. Assume it is
- always declared, since it is required by C89. */
-#undef gets
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
-
#if @GNULIB_FOPEN@
# if @REPLACE_FOPEN@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
--- gettext-0.18.1.1/gettext-tools/gnulib-lib/stdio.in.h-orig 2012-11-24 01:00:26.000000000 +0400
+++ gettext-0.18.1.1/gettext-tools/gnulib-lib/stdio.in.h 2012-11-24 01:00:53.000000000 +0400
@@ -137,12 +137,6 @@
"use gnulib module fflush for portable POSIX compliance");
#endif
-/* It is very rare that the developer ever has full control of stdin,
- so any use of gets warrants an unconditional warning. Assume it is
- always declared, since it is required by C89. */
-#undef gets
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
-
#if @GNULIB_FOPEN@
# if @REPLACE_FOPEN@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)