summaryrefslogtreecommitdiff
path: root/guix/build-system
AgeCommit message (Expand)Author
2020-03-29build-system/gnu: Optimize the package graph....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'. Ludovic Courtès
2020-03-22build-system: linux-module: Fix cross compilation....* 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> Mathieu Othacehe
2020-03-17build-system: linux-module: Break some long lines....* gnu/build/linux-modules.scm (make-linux-module-builder, lower): Break some long commentary lines. Mathieu Othacehe
2020-02-24build-system: Fix copy-build-system default install plan....* guix/build-system/copy.scm (copy-build): Set install-plan default value to copy everything from source to the output. Pierre Neidhardt
2020-02-21build-system: Add copy-build-system....* 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'. Pierre Neidhardt
2020-01-27guix: ocaml: Also replace dune when relevant in package-with-explicit-ocaml....* guix/build-system/ocaml.scm (package-with-explicit-ocaml): Take a dune argument and add it to transformed packages when relevant. Julien Lepiller
2020-01-22guix: ocaml: Reuse package-with-ocaml4.01 with ocaml-4.07....* 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. Julien Lepiller
2020-01-08build-system/clojure: Provide only the right modules in scope....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. Ludovic Courtès
2020-01-04build-system/guile: Add #:implicit-inputs?....* guix/build-system/guile.scm (lower): Add implicit-inputs? keyword parameter. [private-keywords]: Add it. Honor it. Jan Nieuwenhuizen
2020-01-03gnu: uglify-js: Move back next to sbcl-cl-uglify-js definition....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. Pierre Neidhardt
2019-12-26build-system: linux-module: Add substitutable keyword....* guix/build-system/linux-module.scm (linux-module-build) Add substitutable keyword. Efraim Flashner
2019-12-23build-system: qt: Adjust indentation....* guix/build-system/qt.scm (qt-build, qt-cross-build): Adjust indentation. Hartmut Goebel
2019-12-23build-system: qt: Actually use qt-build-system, not cmake-build-system....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> Hartmut Goebel
2019-12-15guix: Upgrade to Bioconductor 3.10....* guix/build-system/r.scm (bioconductor-uri): Switch to version 3.10. * guix/import/cran.scm (%bioconductor-version): Same. Ricardo Wurmus
2019-12-05gnu: Really move lisp libraries to lisp-xyz, uglify-js to javascript and stum......* 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. Pierre Neidhardt
2019-12-05Revert "gnu: Properly move lisp libraries to lisp-xyz, uglify-js to javascrip......This reverts commit ac1ee30f4f7f9d0ae2a655676b0e8b9eb90a35dd, which still breaks ‘guix pull’. Tobias Geerinckx-Rice
2019-12-05Revert "build-system/linux-module: Accept a #:make-flags keyword."...I should've tested this better before pushing the commit. This reverts commit fabd4900d8fb739a55e2dff76dee3a29b2a90bb1. Efraim Flashner
2019-12-05gnu: Properly move lisp libraries to lisp-xyz, uglify-js to javascript and st......* 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. Pierre Neidhardt
2019-12-04build-system/linux-module: Accept a #:make-flags keyword....Fixes bug#37882. * guix/build-system/linux-module.scm (linux-module-build): Accept a MAKE-FLAGS argument. <builder>: Pass it on. Tobias Geerinckx-Rice
2019-12-01guix: Add the 'qt' build system....* 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. Hartmut Goebel
2019-10-18build-system/asdf: Fix package transform....* guix/build-system/asdf.scm (package-with-build-system): [find-input-package]: New function. [rewrite]: Use it. Guillaume Le Vaillant
2019-10-14build-system/gnu: 'package-with-explicit-inputs' uses 'package-mapping'....* 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*'. Ludovic Courtès
2019-10-11gnu: Add nsis-x86_64 and nsis-i686....* 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. Carl Dong
2019-09-06Merge branch 'master' into core-updatesMark H Weaver
2019-09-05build-system/julia: Avoid module cycles....* guix/build-system/julia.scm: Remove unused imports. (lower)[julia]: Default to (DEFAULT-JULIA). Marius Bakke
2019-09-04build-system/julia: Fix syntax error....* guix/build-system/julia.scm: Fix invalid module reference. Ricardo Wurmus
2019-09-04build: Add julia-build-system....* 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> nixo
2019-09-04import: crate: Separate crates.io API from actual conversion....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 Ludovic Courtès
2019-08-22Merge branch 'master' into core-updatesMark H Weaver
2019-08-16build-system/r: bioconductor-uri: Take optional package type....* guix/build-system/r.scm (bioconductor-uri): Take optional TYPE argument to return annotation or experiment URLs. Ricardo Wurmus
2019-08-13Merge branch 'master' into core-updatesMarius Bakke
2019-07-23build-system/texlive: Add texlive-origin....* guix/build-system/texlive.scm (texlive-origin): New procedure. Ricardo Wurmus
2019-07-17Merge branch 'master' into core-updatesLudovic Courtès
2019-07-16build/cargo-build-system: Use bundled json instead of guile-json....* 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> Robert Vollmert
2019-07-14Revert "guix: node-build-system: Use guile-json instead of a custom parser."...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. Julien Lepiller
2019-07-14guix: node-build-system: Use guile-json instead of a custom parser....* 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. Julien Lepiller
2019-07-14build: Add node-build-system....* 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> Jelle Licht
2019-07-07build-system/meson: Enable compiler optimizations....* guix/build-system/meson.scm (meson-build)[#:build-type]: Set to 'debugoptimized'. Marius Bakke
2019-07-02Merge branch 'staging' into core-updatesMarius Bakke
2019-07-02import: pypi: Update the host URI....* guix/build-system/python.scm (pypi-uri): Update the host URI to "files.pythonhosted.org". Maxim Cournoyer
2019-06-13Merge branch 'master' into core-updatesLudovic Courtès
2019-06-11build-system/cargo: Don't copy source as an output....* 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> Ivan Petkov
2019-06-11build-system/cargo: Expand transitive crate sources....* 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> Ivan Petkov
2019-06-02build-system/guile: Add #:not-compiled-file-regexp....* 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. Ludovic Courtès
2019-05-25Merge branch 'staging' into core-updatesMarius Bakke
2019-05-06guix: Update to Bioconductor 3.9....* guix/build-system/r.scm (bioconductor-uri): Use 3.9 archive URL. * guix/import/cran.scm (%bioconductor-version): Update to 3.9. Ricardo Wurmus
2019-05-01Merge branch 'master' into core-updatesMarius Bakke
2019-04-25gnu: ocaml@4.02: Remove the package, affected by a CVE, and its dependent...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. Julien Lepiller
2019-04-12build-system/linux-module: Support module source versioning....* 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. Danny Milosavljevic
2019-04-11Add (guix build-system linux-module)....* 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. Danny Milosavljevic