summary refs log tree commit diff
diff options
context:
space:
mode:
authorJulien Lepiller <julien@lepiller.eu>2022-06-18 08:53:11 +0200
committerJulien Lepiller <julien@lepiller.eu>2022-06-18 22:12:56 +0200
commit319b8331b2357e12ec9edb9665513c32bef56622 (patch)
tree41a44710d5368411b0f7b64cb0f314133fc32883
parent3f8bb2d6b973ef017c3034ee9787ae971c9e8e0c (diff)
downloadguix-319b8331b2357e12ec9edb9665513c32bef56622.tar.gz
guix: self: Do not record reference to gcc-toolchain.
The ld-wrapper from gcc-toolchain records a reference to the library
path through rpath, but this is not needed.  By explicitely using rpath
flags instead, we save 150 MB of closure.

* guix/self.scm (quiet-guile): Do not record reference to gcc-toolchain.
-rw-r--r--guix/self.scm2
1 files changed, 2 insertions, 0 deletions
diff --git a/guix/self.scm b/guix/self.scm
index 9a64051c32..36ada4d171 100644
--- a/guix/self.scm
+++ b/guix/self.scm
@@ -569,10 +569,12 @@ instead of 'C'."
                               (filter package? packages))))
                    ":"))
           (setenv "LIBRARY_PATH" #$(file-append gcc "/lib"))
+          (setenv "GUIX_LD_WRAPPER_DISABLE_RPATH" "1")
 
           (invoke "gcc" #$(local-file source) "-Wall" "-g0" "-O2"
                   "-I" #$(file-append guile "/include/guile/" effective)
                   "-L" #$(file-append guile "/lib")
+                  "-Wl,-rpath" #$(file-append guile "/lib")
                   #$(string-append "-lguile-" effective)
                   "-o" (string-append #$output "/bin/guile")))))