summaryrefslogtreecommitdiff
path: root/guix/build-system
Commit message (Collapse)AuthorAge
* build-system/gnu: Optimize the package graph.Ludovic Courtès2020-03-29
| | | | | | | | | | | | | | | | | With this change, the output of: guix graph -e '(@@ (gnu packages commencement) coreutils-final)' |grep 'label = ' | wc -l drops from 76 nodes to 68 nodes, and the "add-data-to-store-cache" hit rate for: guix build libreoffice -d --no-grafts drops from 3.9% to 2.6%. * guix/build-system/gnu.scm (package-with-explicit-inputs*)[cut?]: Adjust condition to exclude packages with build systems other than GNU-BUILD-SYSTEM, such as 'ld-wrapper-boot3'.
* build-system: linux-module: Fix cross compilation.Mathieu Othacehe2020-03-22
| | | | | | | | | | | | | | | | | * guix/build-system/linux-module.scm (default-kmod, default-gcc): Delete procedures. (system->arch): New procedure. (make-linux-module-builder)[native-inputs]: Move linux... [inputs]: ...to here. (linux-module-build-cross): New procedure. (linux-module-build): Add TARGET. Pass TARGET and ARCH to build side. (lower): Allow cross-compilation. Move "linux" and "linux-module-builder" to host-inputs. Add target-inputs. Call linux-module-build-cross if TARGET is set, linux-module-build otherwise. * guix/build/linux-module-build-system.scm (configure): Add ARCH argument. (linux-module-build): Adjust comment. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* build-system: linux-module: Break some long lines.Mathieu Othacehe2020-03-17
| | | | | * gnu/build/linux-modules.scm (make-linux-module-builder, lower): Break some long commentary lines.
* build-system: Fix copy-build-system default install plan.Pierre Neidhardt2020-02-24
| | | | | * guix/build-system/copy.scm (copy-build): Set install-plan default value to copy everything from source to the output.
* build-system: Add copy-build-system.Pierre Neidhardt2020-02-21
| | | | | | | * guix/build-system/copy.scm: New file. * guix/build/copy-build-system.scm: New file. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document 'copy-build-system'.
* guix: ocaml: Also replace dune when relevant in package-with-explicit-ocaml.Julien Lepiller2020-01-27
| | | | | * guix/build-system/ocaml.scm (package-with-explicit-ocaml): Take a dune argument and add it to transformed packages when relevant.
* guix: ocaml: Reuse package-with-ocaml4.01 with ocaml-4.07.Julien Lepiller2020-01-22
| | | | | | | * guix/build-system/guix.scm (package-with-ocaml4.01) (strip-ocaml4.01-variant): Rename to... (package-with-ocaml4.07, strip-ocaml4.07-variant): ... this and rename internal implementation.
* build-system/clojure: Provide only the right modules in scope.Ludovic Courtès2020-01-08
| | | | | | | | | | Previously, we used to have a whole bunch of (guix build *-build-system) modules in scope, which, for example, meant that '%standard-phases' was clashing. This change clarifies it. * guix/build-system/clojure.scm (%default-modules): New variable. (clojure-build): Change the default value of #:modules and that of #:phases.
* build-system/guile: Add #:implicit-inputs?.Jan Nieuwenhuizen2020-01-04
| | | | | | | * guix/build-system/guile.scm (lower): Add implicit-inputs? keyword parameter. [private-keywords]: Add it. Honor it.
* gnu: uglify-js: Move back next to sbcl-cl-uglify-js definition.Pierre Neidhardt2020-01-03
| | | | | | | | | | | | This fixes the bug which prevented uglify-js from being defined properly, and cascaded back to all Common Lisp packages. * gnu/packages/bioinformatics.scm: Replace javascript module with lisp-xyz. * gnu/packages/cran.scm: Use lisp-xyz module. * gnu/packages/javascript.scm (uglify-js): Move from here... * gnu/packages/lisp-xyz.scm: ... To here. * gnu/packages/web.scm: Replace javascript module with lisp-xyz. * guix/build-system/minify.scm: Find uglify-js in the lisp-xyz module.
* build-system: linux-module: Add substitutable keyword.Efraim Flashner2019-12-26
| | | | | * guix/build-system/linux-module.scm (linux-module-build) Add substitutable keyword.
* build-system: qt: Adjust indentation.Hartmut Goebel2019-12-23
| | | | * guix/build-system/qt.scm (qt-build, qt-cross-build): Adjust indentation.
* build-system: qt: Actually use qt-build-system, not cmake-build-system.Hartmut Goebel2019-12-23
| | | | | | | | | | | When the qt-build-system was created, based on the cmake-build-system, some references to cmake have been missed to be changed. * guix/build-system/qt.scm (qt-build, qt-cross-build)[modules]: Use qt-build-system, not cmake-build-system. [builder]: Call qt-build, not cmake-build. Coauthored-by: Ludovic Courtès <ludo@gnu.org>
* guix: Upgrade to Bioconductor 3.10.Ricardo Wurmus2019-12-15
| | | | | * guix/build-system/r.scm (bioconductor-uri): Switch to version 3.10. * guix/import/cran.scm (%bioconductor-version): Same.
* gnu: Really move lisp libraries to lisp-xyz, uglify-js to javascript and ↵Pierre Neidhardt2019-12-05
| | | | | | | | | | | | | | | | | stumpwm to wm. * gnu/local.mk: Include lisp-xyz.scm. * gnu/packages/lisp-xyz.scm: New file. * gnu/packages/lisp.scm: Move all lisp libraries to lisp-xyz.scm, uglify-js to javascript.scm and stumpwm to wm.scm. * gnu/packages/javascript.scm: Add uglify-js. * gnu/packages/wm.scm: Add stumpwm. * gnu/packages/bioinformatics.scm: Find uglify-js in javascript.scm. * gnu/packages/machine-learning.scm: Depend on lisp-xyz.scm instead of lisp.scm. * gnu/packages/web.scm: Find uglify-js in javascript.scm. * gnu/packages/web-browsers.scm: Depend on lisp-xyz.scm instead of lisp.scm. * guix/build-system/minify.scm (default-uglify-js): Find uglify-js in javascript module instead of lisp.
* Revert "gnu: Properly move lisp libraries to lisp-xyz, uglify-js to ↵Tobias Geerinckx-Rice2019-12-05
| | | | | | | javascript and stumpwm to wm." This reverts commit ac1ee30f4f7f9d0ae2a655676b0e8b9eb90a35dd, which still breaks ‘guix pull’.
* Revert "build-system/linux-module: Accept a #:make-flags keyword."Efraim Flashner2019-12-05
| | | | | | I should've tested this better before pushing the commit. This reverts commit fabd4900d8fb739a55e2dff76dee3a29b2a90bb1.
* gnu: Properly move lisp libraries to lisp-xyz, uglify-js to javascript and ↵Pierre Neidhardt2019-12-05
| | | | | | | | | | | | | | | | | stumpwm to wm. * gnu/local.mk: Include lisp-xyz.scm. * gnu/packages/lisp-xyz.scm: New file. * gnu/packages/lisp.scm: Move all lisp libraries to lisp-xyz.scm, uglify-js to javascript.scm and stumpwm to wm.scm. * gnu/packages/javascript.scm: Add uglify-js. * gnu/packages/wm.scm: Add stumpwm. * gnu/packages/bioinformatics.scm: Find uglify-js in javascript.scm. * gnu/packages/machine-learning.scm: Depend on lisp-xyz.scm instead of lisp.scm. * gnu/packages/web.scm: Find uglify-js in javascript.scm. * gnu/packages/web-browsers.scm: Depend on lisp-xyz.scm instead of lisp.scm. * guix/build-system/minify.scm (default-uglify-js): Find uglify-js in javascript module instead of lisp.
* build-system/linux-module: Accept a #:make-flags keyword.Tobias Geerinckx-Rice2019-12-04
| | | | | | | | Fixes bug#37882. * guix/build-system/linux-module.scm (linux-module-build): Accept a MAKE-FLAGS argument. <builder>: Pass it on.
* guix: Add the 'qt' build system.Hartmut Goebel2019-12-01
| | | | | | * guix/build-system/qt.scm, guix/build/qt-build-system.scm: New files. * Makefile.am (MODULES): Add them. * doc/guix.texi (Buiild systems): Add the new build system.
* build-system/asdf: Fix package transform.Guillaume Le Vaillant2019-10-18
| | | | | | * guix/build-system/asdf.scm (package-with-build-system): [find-input-package]: New function. [rewrite]: Use it.
* build-system/gnu: 'package-with-explicit-inputs' uses 'package-mapping'.Ludovic Courtès2019-10-14
| | | | | | | * guix/build-system/gnu.scm (package-with-explicit-inputs): Rename to... (package-with-explicit-inputs/deprecated): ... this. (package-with-explicit-inputs*): New procedure. (package-with-explicit-inputs): Define as a 'case-lambda*'.
* gnu: Add nsis-x86_64 and nsis-i686.Carl Dong2019-10-11
| | | | | | | | | | | | | | * guix/build-system/scons.scm (scons-build): Add build-targets and install-targets parameters. * guix/build/scons-build-system.scm (build, install): Adjust accordingly. * doc/guix.texi (Build Systems): Document it. * gnu/packages/installers.scm: New file, (make-nsis): New procedure, (nsis-x86_64, nsis-i686): New variables. * gnu/packages/patches/nsis-env-passthru.patch: New file. * gnu/local.mk (dist_patch_DATA, GNU_SYSTEM_MODULES): Adjust accordingly.
* Merge branch 'master' into core-updatesMark H Weaver2019-09-06
|\
| * build-system/julia: Avoid module cycles.Marius Bakke2019-09-05
| | | | | | | | | | * guix/build-system/julia.scm: Remove unused imports. (lower)[julia]: Default to (DEFAULT-JULIA).
| * build-system/julia: Fix syntax error.Ricardo Wurmus2019-09-04
| | | | | | | | * guix/build-system/julia.scm: Fix invalid module reference.
| * build: Add julia-build-system.nixo2019-09-04
| | | | | | | | | | | | | | | | | | * guix/build/julia-build-system.scm: New file. * guix/build-system/julia.scm: New file. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document julia-build-system. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
| * import: crate: Separate crates.io API from actual conversion.Ludovic Courtès2019-09-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides a clean separation between bindings to the https://crates.io/api/v1 API and actual conversion to Guix package sexps. As a side-effect, it fixes things like "guix import blake2-rfc", "guix refresh -t crates", etc. * guix/import/crate.scm (<crate>, <crate-version>, <crate-dependency>): New record types. (lookup-crate, crate-version-dependencies): New procedures. (crate-fetch): Remove. (crate->guix-package): Rewrite to use the new API. (latest-release): Likewise. * guix/build-system/cargo.scm (%crate-base-url): New variable. * tests/crate.scm (test-crate): Update accordingly. fixlet
* | Merge branch 'master' into core-updatesMark H Weaver2019-08-22
|\|
| * build-system/r: bioconductor-uri: Take optional package type.Ricardo Wurmus2019-08-16
| | | | | | | | | | * guix/build-system/r.scm (bioconductor-uri): Take optional TYPE argument to return annotation or experiment URLs.
* | Merge branch 'master' into core-updatesMarius Bakke2019-08-13
|\|
| * build-system/texlive: Add texlive-origin.Ricardo Wurmus2019-07-23
| | | | | | | | * guix/build-system/texlive.scm (texlive-origin): New procedure.
* | Merge branch 'master' into core-updatesLudovic Courtès2019-07-17
|\|
| * build/cargo-build-system: Use bundled json instead of guile-json.Robert Vollmert2019-07-16
| | | | | | | | | | | | | | | | | | * guix/build/cargo-build-system.scm: Use (gnu build json) instead of (json parser). * guix/build-system/cargo.scm: Import (gnu build json) instead of (json parser). Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
| * Revert "guix: node-build-system: Use guile-json instead of a custom parser."Julien Lepiller2019-07-14
| | | | | | | | | | | | | | | | | | The effect of this change was to import the (json parser) from the host side into the build side. The solution here would be to do the equivalent of ‘with-extensions’ for gexps. Since we don't use gexps for build systems just yet, revert this for now. This reverts commit 8eb0ba532ebbebef23180e666e0607ea735f9c1a.
| * guix: node-build-system: Use guile-json instead of a custom parser.Julien Lepiller2019-07-14
| | | | | | | | | | | | | | * guix/build/json.scm: Remove file. * Makefile.am: Remove it. * guix/build/node-build-system.scm: Use (json parser) instead of (guix build json). * guix/build-system/node.scm: Idem.
| * build: Add node-build-system.Jelle Licht2019-07-14
| | | | | | | | | | | | | | | | | | | | * guix/build/node-build-system.scm: New file. * guix/build-system/node.scm: New file. * guix/build/json.scm: New file. * doc/guix.texi: Document it. * Makefile.am: Added new files. Co-Authored-By: Julien Lepiller <julien@lepiller.eu>
* | build-system/meson: Enable compiler optimizations.Marius Bakke2019-07-07
| | | | | | | | * guix/build-system/meson.scm (meson-build)[#:build-type]: Set to 'debugoptimized'.
* | Merge branch 'staging' into core-updatesMarius Bakke2019-07-02
|\|
| * import: pypi: Update the host URI.Maxim Cournoyer2019-07-02
| | | | | | | | | | * guix/build-system/python.scm (pypi-uri): Update the host URI to "files.pythonhosted.org".
* | Merge branch 'master' into core-updatesLudovic Courtès2019-06-13
|\|
| * build-system/cargo: Don't copy source as an output.Ivan Petkov2019-06-11
| | | | | | | | | | | | | | | | | | * guix/build-system/cargo.scm: (cargo-build)[build-expression->derivation]: Don't add "src" output. * guix/build/cargo-build-system.scm: (install-source): Delete it. (%standard-phases): Delete 'install-source. Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
| * build-system/cargo: Expand transitive crate sources.Ivan Petkov2019-06-11
| | | | | | | | | | | | | | | | | | | | | | * guix/build/cargo: (package-cargo-inputs): Add it. (package-cargo-development-inputs): Add it. (crate-closure): Add it. (expand-crate-sources): Add it. (lower)[private-keywords]: Add #:cargo-inputs and [bag]: Use expand-crate-sources to augment build-inputs. Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
| * build-system/guile: Add #:not-compiled-file-regexp.Ludovic Courtès2019-06-02
| | | | | | | | | | | | | | * guix/build/guile-build-system.scm (build): Add #:not-compiled-file-regexp and honor it. * guix/build-system/guile.scm (guile-build): Likewise. (guile-cross-build): Likewise.
* | Merge branch 'staging' into core-updatesMarius Bakke2019-05-25
|\|
| * guix: Update to Bioconductor 3.9.Ricardo Wurmus2019-05-06
| | | | | | | | | | * guix/build-system/r.scm (bioconductor-uri): Use 3.9 archive URL. * guix/import/cran.scm (%bioconductor-version): Update to 3.9.
* | Merge branch 'master' into core-updatesMarius Bakke2019-05-01
|\|
| * gnu: ocaml@4.02: Remove the package, affected by a CVE, and its dependentJulien Lepiller2019-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | packages. This fixes <https://bugs.gnu.org/27462>. * gnu/packages/ocaml.scm (ocaml-4.02, camlp4-4.02, ocaml4.02-menhir) (ocaml4.02-lablgtk, ocaml4.02-findlib, ocaml4.02-ounit) (ocaml4.02-camlzip, ocaml4.02-ocamlmod, ocaml4.02-zarith) (ocaml4.02-qcheck, ocaml4.02-qtest, ocaml4.02-stringext) (ocaml4.02-bisect, ocaml4.02-bitstring, ocaml4.02-result) (ocaml4.02-topkg, ocaml4.02-rresult, ocaml4.02-sqlite3, ocaml4.02-csv) (ocaml4.02-mtime, ocaml4.02-cmdliner, ocaml4.02-fmt, ocaml4.02-astring) (ocaml4.02-alcotest, ocaml4.02-ppx-tools, ocaml4.02-react, ocaml4.02-ssl) (ocaml4.02-lwt, ocaml4.02-lwt-log, ocaml4.02-logs, ocaml4.02-fpath) (ocaml4.02-bos, ocaml4.02-xmlm, ocaml4.02-ulex, ocaml4.02-uchar) (ocaml4.02-uutf, ocaml4.02-jsonm, ocaml4.02-ocurl, ocaml4.02-base64) (ocaml4.02-omake, ocaml4.02-batteries, ocaml4.02-pcre, ocaml4.02-oasis) (ocaml4.02-js-build-tools, ocaml4.02-bin-prot, ocaml4.02-fieldslib) (ocaml4.02-ppx-core, ocaml4.02-ppx-optcomp, ocaml4.02-ppx-driver) (ocaml4.02-cppo, ocaml4.02-ppx-deriving, ocaml4.02-ppx-type-conv) (ocaml4.02-ppx-inline-test, ocaml4.02-ppx-bench, ocaml4.02-ppx-compare) (ocaml4.02-sexplib, ocaml4.02-typerep, ocaml4.02-variantslib) (ocaml4.02-ppx-sexp-conv, ocaml4.02-ppx-variants-conv) (ocaml4.02-ppx-here, ocaml4.02-ppx-assert, ocaml4.02-ppx-enumerate) (ocaml4.02-ppx-let, ocaml4.02-ppx-typerep-conv, ocaml4.02-ppx-sexp-value) (ocaml4.02-ppx-pipebang, ocaml4.02-ppx-bin-prot, ocaml4.02-ppx-fail) (ocaml4.02-ppx-custom-printf, ocaml4.02-ppx-sexp-message) (ocaml4.02-ppx-fields-conv, ocaml4.02-seq, ocaml4.02-re) (ocaml4.02-ppx-expect, ocaml4.02-ppx-jane, ocaml4.02-core-kernel) (ocaml4.02-async-kernel, ocaml4.02-async-rpc-kernel, ocaml4.02-core) (ocaml4.02-async-unix, ocaml4.02-async-extra, ocaml4.02-async) (ocaml4.02-ocplib-endian, ocaml4.02-easy-format, optcomp) (ocaml4.02-piqilib, ocaml4.02-uuidm, ocaml4.02-graph, ocaml4.02-piqi) (ocaml4.02-camomile, ocaml4.02-zed, ocaml4.02-lambda-term): Remove variables. * guix/build-system/ocaml.scm (default-ocaml4.02) (default-ocaml4.02-findlib, package-with-ocaml4.02) (strip-ocaml4.02-variant): Remove variables.
| * build-system/linux-module: Support module source versioning.Danny Milosavljevic2019-04-12
| | | | | | | | | | | | | | | | * guix/build-system/linux-module.scm (make-linux-module-builder) [native-inputs]: Add linux. [arguments]<#:phases>[install]: Install "System.map" and "Module.symvers". * guix/build/linux-module-build-system.scm (configure): Delete procedure. (%standard-phases): Delete "configure" phase.
| * Add (guix build-system linux-module).Danny Milosavljevic2019-04-11
| | | | | | | | | | | | | | * guix/build/linux-module-build-system.scm: New file. * guix/build-system/linux-module.scm: New file. * doc/guix.texi (Build Systems): Document it. * Makefile.am (MODULES): Add them.