From: Julien Lepiller <julien@lepiller.eu>
To: 33079@debbugs.gnu.org
Subject: [bug#33079] [PATCH 07/34] guix: ocaml-build-system: Replace system* with invoke.
Date: Wed, 17 Oct 2018 22:34:15 +0200 [thread overview]
Message-ID: <20181017203442.7075-7-julien@lepiller.eu> (raw)
In-Reply-To: <20181017203442.7075-1-julien@lepiller.eu>
* guix/build/ocaml-build-system.scm (prepare-install): Return #t.
(configure, build, check, install): Use invoke instead of system*.
---
guix/build/ocaml-build-system.scm | 45 +++++++++++++++++--------------
1 file changed, 25 insertions(+), 20 deletions(-)
diff --git a/guix/build/ocaml-build-system.scm b/guix/build/ocaml-build-system.scm
index d10431d8e..99111ad30 100644
--- a/guix/build/ocaml-build-system.scm
+++ b/guix/build/ocaml-build-system.scm
@@ -49,37 +49,40 @@
'())
,@configure-flags)))
(format #t "running 'setup.ml' with arguments ~s~%" args)
- (zero? (apply system* "ocaml" "setup.ml" args)))
+ (apply invoke "ocaml" "setup.ml" args))
(let ((args `("-prefix" ,out ,@configure-flags)))
(format #t "running 'configure' with arguments ~s~%" args)
- (zero? (apply system* "./configure" args))))))
+ (apply invoke "./configure" args))))
+ #t)
(define* (build #:key inputs outputs (build-flags '()) (make-flags '())
(use-make? #f) #:allow-other-keys)
"Build the given package."
(if (and (file-exists? "setup.ml") (not use-make?))
- (zero? (apply system* "ocaml" "setup.ml" "-build" build-flags))
+ (apply invoke "ocaml" "setup.ml" "-build" build-flags)
(if (file-exists? "Makefile")
- (zero? (apply system* "make" make-flags))
+ (apply invoke "make" make-flags)
(let ((file (if (file-exists? "pkg/pkg.ml") "pkg/pkg.ml" "pkg/build.ml")))
- (zero? (apply system* "ocaml" "-I"
- (string-append (assoc-ref inputs "findlib")
- "/lib/ocaml/site-lib")
- file build-flags))))))
+ (apply invoke "ocaml" "-I"
+ (string-append (assoc-ref inputs "findlib")
+ "/lib/ocaml/site-lib")
+ file build-flags))))
+ #t)
(define* (check #:key inputs outputs (make-flags '()) (test-target "test") tests?
(use-make? #f) #:allow-other-keys)
"Install the given package."
(when tests?
(if (and (file-exists? "setup.ml") (not use-make?))
- (zero? (system* "ocaml" "setup.ml" (string-append "-" test-target)))
+ (invoke "ocaml" "setup.ml" (string-append "-" test-target))
(if (file-exists? "Makefile")
- (zero? (apply system* "make" test-target make-flags))
+ (apply invoke "make" test-target make-flags)
(let ((file (if (file-exists? "pkg/pkg.ml") "pkg/pkg.ml" "pkg/build.ml")))
- (zero? (system* "ocaml" "-I"
- (string-append (assoc-ref inputs "findlib")
- "/lib/ocaml/site-lib")
- file test-target)))))))
+ (invoke "ocaml" "-I"
+ (string-append (assoc-ref inputs "findlib")
+ "/lib/ocaml/site-lib")
+ file test-target)))))
+ #t)
(define* (install #:key outputs (build-flags '()) (make-flags '()) (use-make? #f)
(install-target "install")
@@ -87,17 +90,19 @@
"Install the given package."
(let ((out (assoc-ref outputs "out")))
(if (and (file-exists? "setup.ml") (not use-make?))
- (zero? (apply system* "ocaml" "setup.ml"
- (string-append "-" install-target) build-flags))
+ (apply invoke "ocaml" "setup.ml"
+ (string-append "-" install-target) build-flags)
(if (file-exists? "Makefile")
- (zero? (apply system* "make" install-target make-flags))
- (zero? (system* "opam-installer" "-i" (string-append "--prefix=" out)
- (string-append "--libdir=" out "/lib/ocaml/site-lib")))))))
+ (apply invoke "make" install-target make-flags)
+ (invoke "opam-installer" "-i" (string-append "--prefix=" out)
+ (string-append "--libdir=" out "/lib/ocaml/site-lib")))))
+ #t)
(define* (prepare-install #:key outputs #:allow-other-keys)
"Prepare for building the given package."
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ocaml/site-lib"))
- (mkdir-p (string-append (assoc-ref outputs "out") "/bin")))
+ (mkdir-p (string-append (assoc-ref outputs "out") "/bin"))
+ #t)
(define %standard-phases
;; Everything is as with the GNU Build System except for the `configure'
--
2.18.0
next prev parent reply other threads:[~2018-10-17 20:36 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-17 20:31 [bug#33079] [WIP] ocaml updates Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 01/34] gnu: ocaml: Update to 4.07.0 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 02/34] gnu: Add ocamlbuild Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 03/34] gnu: camlp4: Update to 4.07+1 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 04/34] gnu: ocaml-findlib: Update to 1.8.0 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 05/34] gnu: Add ocaml4.02-findlib Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 06/34] guix: ocaml: Add package-with-ocaml4.02 Julien Lepiller
2018-10-23 21:10 ` Ludovic Courtès
2018-10-17 20:34 ` Julien Lepiller [this message]
2018-10-17 20:34 ` [bug#33079] [PATCH 08/34] gnu: lablgtk: Update to 2.18.6 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 09/34] gnu: camlp5: Update to 7.06 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 10/34] gnu: hevea: Update to 2.32 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 11/34] gnu: Add ocaml-num Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 12/34] gnu: coq: Fix build failure Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 13/34] gnu: opam: Update to 2.0.0 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 14/34] gnu: ocaml-menhir: Fix build Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 15/34] gnu: Add ocaml4.02-lablgtk Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 16/34] gnu: unison: Build with ocaml-4.02 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 17/34] gnu: Fix ocaml-ounit Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 18/34] gnu: Add ocaml4.02-camlzip Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 19/34] gnu: ocmalmod: Update to 0.0.9 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 20/34] gnu: Add ocaml4.02-zarith Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 21/34] gnu: Fix ocaml-frontc Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 22/34] gnu: Fix ocaml-qcheck Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 23/34] gnu: Fix ocaml-qtest Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 24/34] gnu: Fix ocaml-stringext Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 25/34] gnu: ocaml-bisect: Update to 1.3.1 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 26/34] " Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 27/34] gnu: Add dune Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 28/34] gnu: Add ocaml-migrate-parsetree Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 29/34] gnu: Add ocaml-ppx-tools-versioned Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 30/34] gnu: Update ocaml-bitstring to 3.1.0 Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 31/34] gnu: Add ocaml4.02-result Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 32/34] gnu: Fix ocaml-topkg Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 33/34] gnu: Fix ocaml-rresult Julien Lepiller
2018-10-17 20:34 ` [bug#33079] [PATCH 34/34] gnu: Update ocaml packages Julien Lepiller
2018-10-23 21:12 ` Ludovic Courtès
2018-10-23 21:11 ` [bug#33079] [PATCH 01/34] gnu: ocaml: Update to 4.07.0 Ludovic Courtès
2018-11-18 20:11 ` bug#33079: [WIP] ocaml updates Julien Lepiller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181017203442.7075-7-julien@lepiller.eu \
--to=julien@lepiller.eu \
--cc=33079@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.