guix: dune-build-system: Add a profile parameter.
* guix/build-system/dune.scm: Add a profile parameter. * guix/build/dune-build-system.scm (build): Use it. * doc/guix.texi: Document it. * gnu/packages/ocaml.scm: Remove profile being set from build flags. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
This commit is contained in:
parent
777ce14857
commit
33a1ec29fa
@ -94,6 +94,7 @@ Copyright @copyright{} 2021 Xinglu Chen@*
|
|||||||
Copyright @copyright{} 2021 Raghav Gururajan@*
|
Copyright @copyright{} 2021 Raghav Gururajan@*
|
||||||
Copyright @copyright{} 2021 Domagoj Stolfa@*
|
Copyright @copyright{} 2021 Domagoj Stolfa@*
|
||||||
Copyright @copyright{} 2021 Hui Lu@*
|
Copyright @copyright{} 2021 Hui Lu@*
|
||||||
|
Copyright @copyright{} 2021 pukkamustard@*
|
||||||
|
|
||||||
Permission is granted to copy, distribute and/or modify this document
|
Permission is granted to copy, distribute and/or modify this document
|
||||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||||
@ -7731,6 +7732,12 @@ The @code{#:package} parameter can be passed to specify a package name, which
|
|||||||
is useful when a package contains multiple packages and you want to build
|
is useful when a package contains multiple packages and you want to build
|
||||||
only one of them. This is equivalent to passing the @code{-p} argument to
|
only one of them. This is equivalent to passing the @code{-p} argument to
|
||||||
@code{dune}.
|
@code{dune}.
|
||||||
|
|
||||||
|
The @code{#:profile} parameter can be passed to specify the
|
||||||
|
@uref{https://dune.readthedocs.io/en/stable/dune-files.html#profile,
|
||||||
|
dune build profile}. This is equivalent to passing the @code{--profile}
|
||||||
|
argument to @code{dune}. Its default value is @code{"release"}.
|
||||||
|
|
||||||
@end defvr
|
@end defvr
|
||||||
|
|
||||||
@defvr {Scheme Variable} go-build-system
|
@defvr {Scheme Variable} go-build-system
|
||||||
|
@ -2876,8 +2876,7 @@ without a complete in-memory representation of the data.")
|
|||||||
"1dvcl108ir9nqkk4mjm9xhhj4p9dx9bmg8bnms54fizs1x3x8ar3"))))
|
"1dvcl108ir9nqkk4mjm9xhhj4p9dx9bmg8bnms54fizs1x3x8ar3"))))
|
||||||
(build-system dune-build-system)
|
(build-system dune-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:test-target "tests"
|
`(#:test-target "tests"))
|
||||||
#:build-flags (list "--profile=release")))
|
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("ocaml-cmdliner" ,ocaml-cmdliner)))
|
`(("ocaml-cmdliner" ,ocaml-cmdliner)))
|
||||||
(home-page "https://www.typerex.org/ocp-indent.html")
|
(home-page "https://www.typerex.org/ocp-indent.html")
|
||||||
@ -3295,8 +3294,7 @@ build system and allows external tools to analyse your project easily.")
|
|||||||
"1smcc0l6fh2n0y6bp96c69j5nw755jja99w0b206wx3yb2m4w2hs"))))
|
"1smcc0l6fh2n0y6bp96c69j5nw755jja99w0b206wx3yb2m4w2hs"))))
|
||||||
(build-system dune-build-system)
|
(build-system dune-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f
|
`(#:tests? #f))
|
||||||
#:build-flags (list "--profile" "release")))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("ocamlbuild" ,ocamlbuild)))
|
`(("ocamlbuild" ,ocamlbuild)))
|
||||||
(home-page "https://github.com/mjambon/cppo")
|
(home-page "https://github.com/mjambon/cppo")
|
||||||
@ -3364,8 +3362,7 @@ standard iterator type starting from 4.07.")
|
|||||||
(base32 "07ycb103mr4mrkxfd63cwlsn023xvcjp0ra0k7n2gwrg0mwxmfss"))))
|
(base32 "07ycb103mr4mrkxfd63cwlsn023xvcjp0ra0k7n2gwrg0mwxmfss"))))
|
||||||
(build-system dune-build-system)
|
(build-system dune-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f
|
`(#:tests? #f))
|
||||||
#:build-flags (list "--profile" "release")))
|
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("ocaml-seq" ,ocaml-seq)))
|
`(("ocaml-seq" ,ocaml-seq)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
@ -3842,9 +3839,8 @@ the plugins facilitate extensibility, and the frontends serve as entry points.")
|
|||||||
"0chn7ldqb3wyf95yhmsxxq65cif56smgz1mhhc7m0dpwmyq1k97h"))))
|
"0chn7ldqb3wyf95yhmsxxq65cif56smgz1mhhc7m0dpwmyq1k97h"))))
|
||||||
(build-system dune-build-system)
|
(build-system dune-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:build-flags (list "--profile" "release")
|
`(#:test-target "camomile-test"
|
||||||
#:test-target "camomile-test"
|
#:tests? #f ; Tests fail, see https://github.com/yoriyuki/Camomile/issues/82
|
||||||
#:tests? #f; Tests fail, see https://github.com/yoriyuki/Camomile/issues/82
|
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-before 'build 'fix-usr-share
|
(add-before 'build 'fix-usr-share
|
||||||
@ -3935,8 +3931,7 @@ connect an engine to your inputs and rendering functions to get an editor.")
|
|||||||
(base32 "0zcjy6fvf0d3i2ssz96asl889n3r6bplyzk7xvb2s3dkxbgcisyy"))))
|
(base32 "0zcjy6fvf0d3i2ssz96asl889n3r6bplyzk7xvb2s3dkxbgcisyy"))))
|
||||||
(build-system dune-build-system)
|
(build-system dune-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:build-flags (list "--profile" "release")
|
`(#:tests? #f
|
||||||
#:tests? #f
|
|
||||||
#:ocaml ,ocaml-4.07
|
#:ocaml ,ocaml-4.07
|
||||||
#:findlib ,ocaml4.07-findlib
|
#:findlib ,ocaml4.07-findlib
|
||||||
#:dune ,ocaml4.07-dune))
|
#:dune ,ocaml4.07-dune))
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2016, 2017, 2018 Julien Lepiller <julien@lepiller.eu>
|
;;; Copyright © 2016, 2017, 2018 Julien Lepiller <julien@lepiller.eu>
|
||||||
;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
|
;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
|
||||||
|
;;; Copyright © 2021 pukkamustard <pukkamustard@posteo.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@ -88,6 +89,7 @@
|
|||||||
(out-of-source? #t)
|
(out-of-source? #t)
|
||||||
(jbuild? #f)
|
(jbuild? #f)
|
||||||
(package #f)
|
(package #f)
|
||||||
|
(profile "release")
|
||||||
(tests? #t)
|
(tests? #t)
|
||||||
(test-flags ''())
|
(test-flags ''())
|
||||||
(test-target "test")
|
(test-target "test")
|
||||||
@ -127,6 +129,7 @@ provides a 'setup.ml' file as its build system."
|
|||||||
#:out-of-source? ,out-of-source?
|
#:out-of-source? ,out-of-source?
|
||||||
#:jbuild? ,jbuild?
|
#:jbuild? ,jbuild?
|
||||||
#:package ,package
|
#:package ,package
|
||||||
|
#:profile ,profile
|
||||||
#:tests? ,tests?
|
#:tests? ,tests?
|
||||||
#:test-target ,test-target
|
#:test-target ,test-target
|
||||||
#:install-target ,install-target
|
#:install-target ,install-target
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
|
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
|
||||||
;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com>
|
;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com>
|
||||||
|
;;; Copyright © 2021 pukkamustard <pukkamustard@posteo.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@ -31,11 +32,14 @@
|
|||||||
;; Code:
|
;; Code:
|
||||||
|
|
||||||
(define* (build #:key (build-flags '()) (jbuild? #f)
|
(define* (build #:key (build-flags '()) (jbuild? #f)
|
||||||
(use-make? #f) (package #f) #:allow-other-keys)
|
(use-make? #f) (package #f)
|
||||||
|
(profile "release") #:allow-other-keys)
|
||||||
"Build the given package."
|
"Build the given package."
|
||||||
(let ((program (if jbuild? "jbuilder" "dune")))
|
(let ((program (if jbuild? "jbuilder" "dune")))
|
||||||
(apply invoke program "build" "@install"
|
(apply invoke program "build" "@install"
|
||||||
(append (if package (list "-p" package) '()) build-flags)))
|
(append (if package (list "-p" package) '())
|
||||||
|
`("--profile" ,profile)
|
||||||
|
build-flags)))
|
||||||
#t)
|
#t)
|
||||||
|
|
||||||
(define* (check #:key (test-flags '()) (test-target "test") tests?
|
(define* (check #:key (test-flags '()) (test-target "test") tests?
|
||||||
|
Loading…
Reference in New Issue
Block a user