diff options
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/commencement.scm | 47 | ||||
-rw-r--r-- | gnu/packages/gettext.scm | 67 |
2 files changed, 60 insertions, 54 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 10b0bd67f5..1db28498ff 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -2015,30 +2015,33 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%" (let ((gettext-minimal (package (inherit gettext-minimal) (name "gettext-boot0") + ;; Newer versions of GNU gettext depends on libxml2 and ncurses. To + ;; simplify the dependency chain, we stick to this version here. + (version "0.19.8.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/gettext/gettext-" + version ".tar.gz")) + (sha256 + (base32 + "0hsw28f9q9xaggjlsdp2qmbp2rbd1mp0njzan2ld9kiqwkq2m57z")))) (inputs '()) ;zero dependencies (arguments - (substitute-keyword-arguments - `(#:tests? #f - ,@(package-arguments gettext-minimal)) - ((#:phases phases) - `(modify-phases ,phases - ;; Build only the tools. - (add-after 'unpack 'chdir - (lambda _ - (chdir "gettext-tools") - #t)) - - ;; Some test programs require pthreads, which we don't have. - (add-before 'configure 'no-test-programs - (lambda _ - (substitute* "tests/Makefile.in" - (("^PROGRAMS =.*$") - "PROGRAMS =\n")) - #t)) - - ;; Don't try to link against libexpat. - (delete 'link-expat) - (delete 'patch-tests)))))))) + `(#:tests? #f + #:phases (modify-phases %standard-phases + ;; Build only the tools. + (add-after 'unpack 'chdir + (lambda _ + (chdir "gettext-tools") + #t)) + + ;; Some test programs require pthreads, which we don't have. + (add-before 'configure 'no-test-programs + (lambda _ + (substitute* "tests/Makefile.in" + (("^PROGRAMS =.*$") + "PROGRAMS =\n")) + #t)))))))) (package-with-bootstrap-guile (package-with-explicit-inputs gettext-minimal %boot1-inputs diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm index ef80af42ea..245fdc9ec0 100644 --- a/gnu/packages/gettext.scm +++ b/gnu/packages/gettext.scm @@ -4,10 +4,11 @@ ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Alex Kost <alezost@gmail.com> -;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2017, 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019 Miguel <rosen644835@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,6 +34,8 @@ #:use-module (guix build-system perl) #:use-module (gnu packages docbook) #:use-module (gnu packages emacs) + #:use-module (gnu packages libunistring) + #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages tex) #:use-module (gnu packages xml) @@ -41,34 +44,42 @@ (define-public gettext-minimal (package (name "gettext-minimal") - (version "0.19.8.1") + (version "0.20.1") (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/gettext/gettext-" - version ".tar.gz")) - (sha256 - (base32 - "0hsw28f9q9xaggjlsdp2qmbp2rbd1mp0njzan2ld9kiqwkq2m57z")) - (modules '((guix build utils))) - (snippet - '(begin - ;; The gnulib test-lock test is prone to writer starvation - ;; with our glibc@2.25, which prefers readers, so disable it. - ;; The gnulib commit b20e8afb0b2 should fix this once - ;; incorporated here. - (substitute* "gettext-runtime/tests/Makefile.in" - (("TESTS = test-lock\\$\\(EXEEXT\\)") "TESTS =")) - (substitute* "gettext-tools/gnulib-tests/Makefile.in" - (("test-lock\\$\\(EXEEXT\\) ") "")) - #t)))) + (method url-fetch) + (uri (string-append "mirror://gnu/gettext/gettext-" + version ".tar.gz")) + (sha256 + (base32 + "0p3zwkk27wm2m2ccfqm57nj7vqkmfpn7ja1nf65zmhz8qqs5chb6")))) (build-system gnu-build-system) (outputs '("out" - "doc")) ;8 MiB of HTML + "doc")) ;9 MiB of HTML (inputs - `(("expat" ,expat))) + `(("libunistring" ,libunistring) + ("libxml2" ,libxml2) + + ;; TODO: ncurses is only needed for the 'libtextstyle' library. + ;; The next version of gettext can use a separate libtextstyle, + ;; but for now we include it here in 'gettext-minimal'. + ("ncurses" ,ncurses))) (arguments - `(#:phases + `(#:configure-flags '("--with-included-libunistring=no" + "--with-included-libxml=no") + #:phases (modify-phases %standard-phases + (add-before 'patch-source-shebangs 'patch-fixed-paths + (lambda _ + (substitute* '("gettext-tools/config.h.in" + "gettext-tools/gnulib-tests/init.sh" + "gettext-tools/tests/init.sh" + "gettext-tools/system-tests/run-test") + (("/bin/sh") "sh")) + (substitute* '("gettext-tools/src/project-id" + "gettext-tools/projects/KDE/trigger" + "gettext-tools/projects/GNOME/trigger") + (("/bin/pwd") "pwd")) + #t)) (add-before 'check 'patch-tests (lambda* (#:key inputs #:allow-other-keys) (let* ((bash (which "sh"))) @@ -92,15 +103,7 @@ (("/bin/pwd") "pwd")) - #t)))) - (add-before 'configure 'link-expat - (lambda _ - ;; Gettext defaults to opening expat via dlopen on - ;; "Linux". Change to link directly. - (substitute* "gettext-tools/configure" - (("LIBEXPAT=\"-ldl\"") "LIBEXPAT=\"-ldl -lexpat\"") - (("LTLIBEXPAT=\"-ldl\"") "LTLIBEXPAT=\"-ldl -lexpat\"")) - #t))) + #t))))) ;; When tests fail, we want to know the details. #:make-flags '("VERBOSE=yes"))) |