summaryrefslogtreecommitdiff
path: root/nonguix
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2020-02-24 13:50:43 +0100
committerPierre Neidhardt <mail@ambrevar.xyz>2020-02-29 10:42:35 +0100
commit39fecacaef614871c046a8855af2b4173f7811dd (patch)
treef13a2bea54bcad3beeb4d5b900dc84a07f9a33da /nonguix
parent1fde948adee9a15ce68c015b790afad9a8fc3a1b (diff)
nonguix: Use the install-plan of the copy-build-system in the binary-build-system.
* nonguix/build-system/binary.scm (lower): Adapt the default value of the install plan. * nonguix/build/binary-build-system.scm (new-install): New procedure. (old-install): Rename former `install' procedure to this. (install): New procedure that dispatches over old-install and new-install.
Diffstat (limited to 'nonguix')
-rw-r--r--nonguix/build-system/binary.scm8
-rw-r--r--nonguix/build/binary-build-system.scm20
2 files changed, 22 insertions, 6 deletions
diff --git a/nonguix/build-system/binary.scm b/nonguix/build-system/binary.scm
index 2c2bae6..2ec1261 100644
--- a/nonguix/build-system/binary.scm
+++ b/nonguix/build-system/binary.scm
@@ -23,6 +23,7 @@
#:use-module (guix search-paths)
#:use-module (guix build-system)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system copy)
#:use-module (guix packages)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
@@ -37,7 +38,7 @@
;; Commentary:
;;
;; Standard build procedure for binary packages. This is implemented as an
-;; extension of `gnu-build-system'.
+;; extension of `copy-build-system'.
;;
;; Code:
@@ -45,7 +46,7 @@
;; Build-side modules imported by default.
`((nonguix build binary-build-system)
(nonguix build utils)
- ,@%gnu-build-system-modules))
+ ,@%copy-build-system-modules))
(define (default-patchelf)
"Return the default patchelf package."
@@ -78,7 +79,6 @@
`(("source" ,source))
'())
,@inputs
-
;; Keep the standard inputs of 'gnu-build-system'.
,@(standard-packages)))
(build-inputs `(("patchelf" ,patchelf)
@@ -94,7 +94,7 @@
#:key (guile #f)
(outputs '("out"))
(patchelf-plan ''())
- (install-plan ''(("." (".") "./")))
+ (install-plan ''(("." "./")))
(search-paths '())
(out-of-source? #t)
(validate-runpath? #t)
diff --git a/nonguix/build/binary-build-system.scm b/nonguix/build/binary-build-system.scm
index 984f38c..6a676ae 100644
--- a/nonguix/build/binary-build-system.scm
+++ b/nonguix/build/binary-build-system.scm
@@ -30,7 +30,11 @@
;;
;; Code:
-(define* (install #:key install-plan outputs #:allow-other-keys)
+(define (new-install)
+ "Return the copy-build-system `install' procedure."
+ (@@ (guix build copy-build-system) install))
+
+(define* (old-install #:key install-plan outputs #:allow-other-keys)
"Copy files from the \"source\" build input to the \"out\" output according to INSTALL-PLAN.
An INSTALL-PLAN is made of three elements:
@@ -70,6 +74,18 @@ represent the target full path, which only makes sense for single files."
(for-each install install-plan)
#t)
+(define* (install #:key install-plan outputs #:allow-other-keys)
+ (define (install-old-format)
+ (warn "Install-plan format deprecated.
+Please update to the format of the copy-build-system.")
+ (old-install #:install-plan install-plan #:outputs outputs))
+ (match (car install-plan)
+ ((source (. matches) target)
+ (install-old-format))
+ ((source #f target)
+ (install-old-format))
+ (_ ((new-install) #:install-plan install-plan #:outputs outputs))))
+
(define* (patchelf #:key inputs outputs patchelf-plan #:allow-other-keys)
"Set the interpreter and the RPATH of files as per the PATCHELF-PLAN.
@@ -132,7 +148,7 @@ The inputs are optional when the file is an executable."
(replace 'install install)))
(define* (binary-build #:key inputs (phases %standard-phases)
- #:allow-other-keys #:rest args)
+ #:allow-other-keys #:rest args)
"Build the given package, applying all of PHASES in order."
(apply gnu:gnu-build #:inputs inputs #:phases phases args))