Revert "Revert "gnu: man-db: Embed absolute reference to 'preconv'.""

This reverts commit ccb15b343e.

Now that we've fixed the segfault with groff's preconv (see
73b2ce8795), it's safe to re-apply this fix.
This commit is contained in:
Marius Bakke 2019-01-17 12:27:18 +01:00 committed by Pierre Neidhardt
parent 3d540c48e7
commit 073f5f2057
No known key found for this signature in database
GPG key ID: 9BDCF497A4BBCC7F

View file

@ -6,6 +6,7 @@
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -82,11 +83,19 @@ (define-public man-db
(remove file-is-directory?
(find-files "src/tests" ".*")))
#t)))
(add-after 'unpack 'patch-iconv-path
(add-after 'unpack 'patch-absolute-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/man.c"
(("\"iconv\"")
(string-append "\"" (which "iconv") "\"")))
;; Embed an absolute reference to "preconv", otherwise it
;; falls back to searching in PATH and ultimately fails
;; to render unicode data (see <https://bugs.gnu.org/30785>).
(substitute* "lib/encodings.c"
(("groff_preconv = NULL")
(string-append "groff_preconv = \""
(assoc-ref inputs "groff-minimal")
"/bin/preconv\"")))
#t)))
#:configure-flags
(let ((groff (assoc-ref %build-inputs "groff"))