Subject: [bug#73818] [PATCH 2/2] gnu: prrte: Remove reference to GCC and other build tools.

From: Ludovic Courtès <[email-masked]>
Date: Tue, 15 Oct 2024 14:45:04 +0200

From: Ludovic Courtès <[email-masked]>

This reduces the closure of ‘prrte’ from 305 MiB to 99 MiB.

* gnu/packages/parallel.scm (prrte)[arguments]: Add #:phases.

Change-Id: Idc26cf5899dd5fa8378535fc8530dbdb3e20608d
---
 gnu/packages/parallel.scm | 22 +++++++++++++++++++---
 1 file changed, 19 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index fc96136065..186aebad45 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -711,9 +711,25 @@ (define-public prrte
               "0wiy0vk37v4db1jgxza8bci0cczcvj34dalzsrlz05dk45zb7dl3"))))
    (build-system gnu-build-system)
    (arguments
-    (list #:configure-flags #~(list (string-append "--with-hwloc="
-                                                   (assoc-ref %build-inputs "hwloc"))
-                                    (string-append "--with-pmix=" #$(this-package-input "openpmix")))))
+    (list #:configure-flags
+          #~(list (string-append "--with-hwloc="
+                                 (assoc-ref %build-inputs "hwloc"))
+                  (string-append "--with-pmix="
+                                 #$(this-package-input "openpmix")))
+
+          #:phases
+          #~(modify-phases %standard-phases
+              (add-after 'unpack 'remove-absolute-references
+                (lambda _
+                  ;; Remove references to GCC, the shell, etc. (shown by
+                  ;; 'prte_info') to reduce the closure size.
+                  (substitute* "src/tools/prte_info/param.c"
+                    (("_ABSOLUTE")
+                     "")
+                    (("PRTE_CONFIGURE_CLI")
+                     "\"[elided to reduce closure]\"")))))
+
+          #:disallowed-references (list (canonical-package gcc))))
    (inputs (list libevent
                  `(,hwloc "lib")
                  openpmix))
-- 
2.46.0