summary refs log tree commit diff
diff options
context:
space:
mode:
authorThomas Danckaert <post@thomasdanckaert.be>2017-08-31 17:29:36 +0200
committerThomas Danckaert <thomas.danckaert@gmail.com>2017-09-01 08:34:31 +0200
commitfd0378a1475900bdbd1da43066811677ba41f3ea (patch)
treef153f9aaaf7d660d2a26cdc4e5d67439d690b83f
parente3a1a1deda03e52fbdb38e9c7a92ce69f78c8eb3 (diff)
downloadguix-fd0378a1475900bdbd1da43066811677ba41f3ea.tar.gz
gnu: hdf5: Avoid unneeded store references to compilers.
* gnu/packages/maths.scm (hdf5) [arguments]: Add phase to patch
  "libhdf5.settings", removing references to the C/C++/Fortran compilers.
-rw-r--r--gnu/packages/maths.scm10
1 files changed, 10 insertions, 0 deletions
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index b56153199b..47e7ba35db 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -673,6 +673,16 @@ incompatible with HDF5.")
                 (string-append "libhdf5hl_fortran_la_LDFLAGS = -Wl,-rpath="
                                (assoc-ref outputs "fortran") "/lib")))
              #t))
+         (add-after 'configure 'patch-settings
+           (lambda _
+             ;; libhdf5.settings contains the full path of the
+             ;; compilers used, and its contents are included in
+             ;; libhdf5.so.  We truncate the hashes to avoid
+             ;; unnecessary store references to those compilers:
+             (substitute* "src/libhdf5.settings"
+              (("(/gnu/store/)([a-Z0-9]*)" all prefix hash)
+               (string-append prefix (string-take hash 10) "...")))
+             #t))
          (add-after 'install 'patch-references
            (lambda* (#:key inputs outputs #:allow-other-keys)
              (let ((bin (string-append (assoc-ref outputs "out") "/bin"))