summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorSuhail Singh <[email protected]>2024-10-07 23:22:13 -0400
committerjgart <[email protected]>2025-01-05 20:12:55 -0600
commit64448de2613ef79a1d8293a01cdc405088c416cf (patch)
tree9405e6720fb56c5345cc156d070ba75ebb2ade1a /gnu
parent6d0659d98cd05d8efe30c7db6b46e5866b3e318b (diff)
gnu: Improve user-experience for jpm.
* gnu/packages/lisp.scm (jpm): Ensure jpm respects JANET_HEADERPATH and JANET_LIBPATH if set by user. Ensure gcc/g++ is able to find header files and compilation-related utilities. Change-Id: Ic7218dbd10e6fabddded50894b82492de8cabc88 Signed-off-by: jgart <[email protected]>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/lisp.scm32
1 files changed, 25 insertions, 7 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index f99ad68828..eb3063d3d9 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -30,6 +30,7 @@
;;; Copyright © 2024 bigbug <[email protected]>
;;; Copyright © 2024 Ashish SHUKLA <[email protected]>
;;; Copyright © 2024 Omar Bassam <[email protected]>
+;;; Copyright © 2024 Suhail Singh <[email protected]>
;;; Copyright © 2024 David Pflug <[email protected]>
;;; Copyright © 2024 Janneke Nieuwenhuizen <[email protected]>
;;;
@@ -965,22 +966,39 @@ assembler, PEG) is less than 1MB.")
(setenv "PREFIX"
#$output)))
(replace 'install
- (lambda _
+ (lambda* (#:key inputs #:allow-other-keys)
(for-each (lambda (dir)
(mkdir-p (string-append #$output "/" dir)))
'("lib/janet/jpm" "share/man/man1"))
(invoke "janet" "bootstrap.janet"
"configs/linux_config.janet")
- (wrap-program (string-append #$output "/bin/jpm")
- `("JANET_HEADERPATH" ":" =
- (,(string-append #$janet "/include/janet")))
- `("JANET_LIBPATH" ":" =
- (,(string-append #$janet "/lib")))))))))
+ (let ((gcc-toolchain (assoc-ref inputs "gcc-toolchain"))
+ (core-min (assoc-ref inputs "coreutils-minimal")))
+ (wrap-program (string-append #$output "/bin/jpm")
+ `("JANET_HEADERPATH" ":" prefix
+ (,(string-append #$janet "/include/janet")))
+ `("JANET_LIBPATH" ":" prefix
+ (,(string-append #$janet "/lib")))
+ `("C_INCLUDE_PATH" ":" prefix
+ (,(string-append gcc-toolchain "/include")))
+ `("CPLUS_INCLUDE_PATH" ":" prefix
+ (,(string-append gcc-toolchain "/include/c++")
+ ,(string-append gcc-toolchain "/include")))
+ `("LIBRARY_PATH" ":" prefix
+ (,(string-append gcc-toolchain "/lib")
+ ,(string-append gcc-toolchain "/lib64")))
+ `("PATH" ":" prefix
+ (,(string-append gcc-toolchain "/bin")
+ ,(string-append core-min "/bin"))))))))))
(inputs (list bash-minimal
coreutils-minimal
curl
gcc
- git-minimal/pinned))
+ git-minimal/pinned
+ ;; Lazily resolve the gcc-toolchain to avoid a circular
+ ;; dependency.
+ (module-ref (resolve-interface '(gnu packages commencement))
+ 'gcc-toolchain)))
(propagated-inputs (list janet))
(native-search-paths
(list $SSL_CERT_DIR $SSL_CERT_FILE))