summaryrefslogtreecommitdiff
path: root/guix/build-system
AgeCommit message (Collapse)Author
2020-03-23cargo-build-system: Accept a #:features argumentJakub Kądziołka
* guix/build/cargo-build-system.scm (build, install): Pass the features to cargo. (check): Remove indirection layer for consistency with build and install. * guix/build-system/cargo.scm (cargo-build): New argument; pass it into the builder. * gnu/packages/rust-apps.scm (ripgrep): Use the new argument instead of a custom phase.
2020-03-22build-system: linux-module: Fix cross compilation.Mathieu Othacehe
* 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>
2020-03-18Merge branch 'master' into core-updatesMarius Bakke
2020-03-17build-system: linux-module: Break some long lines.Mathieu Othacehe
* gnu/build/linux-modules.scm (make-linux-module-builder, lower): Break some long commentary lines.
2020-03-04Merge branch 'master' into core-updatesMarius Bakke
2020-02-24build-system: Fix copy-build-system default install plan.Pierre Neidhardt
* guix/build-system/copy.scm (copy-build): Set install-plan default value to copy everything from source to the output.
2020-02-21build-system: Add copy-build-system.Pierre Neidhardt
* 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'.
2020-02-12gnu: cross-base: Switch back to 'CROSS_C_INCLUDE_PATH' & co.Ludovic Courtès
This is a followup to 2073b55e6b964cb8ca15e8c74cb32dac00f05f0d. * gnu/build/cross-toolchain.scm (%gcc-include-paths): Switch back to 'C_INCLUDE_PATH' & co. * gnu/packages/cross-base.scm (%gcc-include-paths): Likewise. (cross-gcc-arguments): Remove 'treat-glibc-as-system-header' phase. (cross-gcc)[native-inputs]: Reorder so that libc comes last. [search-paths]: Add "include/c++" for 'CROSS_CPLUS_INCLUDE_PATH'. * guix/build-system/gnu.scm (standard-cross-packages): Have "cross-gcc" appear both for 'host and 'target.
2020-02-06gnu: gcc: Switch back to using 'C_INCLUDE_PATH' instead of 'CPATH'.Ludovic Courtès
Fixes <https://bugs.gnu.org/30756>. Initially reported by Julien Lepiller <julien@lepiller.eu>. * gnu/packages/base.scm (make-gcc-libc): Remove 'treat-glibc-as-system-header' phase from 'arguments'. * gnu/packages/commencement.scm (gcc-final): Likewise. * gnu/packages/gcc.scm (gcc-4.7)[arguments]: Add "include/c++" to 'CPLUS_INCLUDE_PATH'. (gcc-6)[native-search-paths]: Remove. * gnu/packages/make-bootstrap.scm (gcc-for-bootstrap): Remove 'native-search-paths' and 'arguments'. * gnu/packages/patches/python-2.7-search-paths.patch, gnu/packages/patches/python-3-search-paths.patch: Replace "CPATH" with "C_INCLUDE_PATH". * guix/build-system/cmake.scm (lower): When not cross-compiling, move INPUTS from the 'host-inputs' field to the 'build-inputs' field of the bag, right after NATIVE-INPUTS. * guix/build-system/glib-or-gtk.scm (lower): Likewise. * guix/build-system/gnu.scm (lower): Likewise. * guix/build-system/meson.scm (lower): Likewise.
2020-02-03Merge branch 'staging' into core-updatesMarius Bakke
2020-01-27guix: ocaml: Also replace dune when relevant in package-with-explicit-ocaml.Julien Lepiller
* guix/build-system/ocaml.scm (package-with-explicit-ocaml): Take a dune argument and add it to transformed packages when relevant.
2020-01-26build-system/cmake: Enable parallel tests by default.Marius Bakke
* guix/build-system/cmake.scm (cmake-build, cmake-cross-build): Set the PARALLEL-TESTS? key to #t.
2020-01-23Merge branch 'staging' into core-updatesMarius Bakke
2020-01-22guix: ocaml: Reuse package-with-ocaml4.01 with ocaml-4.07.Julien Lepiller
* 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.
2020-01-14build-system/texlive: Update to texlive-2019.3, revision 51265.Marius Bakke
* guix/build-system/texlive.scm (%texlive-tag): Change to "2019.3". (%texlive-revision): Change to 51265.
2020-01-11Merge branch 'master' into core-updatesMarius Bakke
2020-01-08build-system/clojure: Provide only the right modules in scope.Ludovic Courtès
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.
2020-01-04build-system/guile: Add #:implicit-inputs?.Jan Nieuwenhuizen
* guix/build-system/guile.scm (lower): Add implicit-inputs? keyword parameter. [private-keywords]: Add it. Honor it.
2020-01-03gnu: uglify-js: Move back next to sbcl-cl-uglify-js definition.Pierre Neidhardt
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.
2019-12-31Merge remote-tracking branch 'master' into core-updates.Mathieu Othacehe
2019-12-26build-system: linux-module: Add substitutable keyword.Efraim Flashner
* guix/build-system/linux-module.scm (linux-module-build) Add substitutable keyword.
2019-12-23build-system: qt: Adjust indentation.Hartmut Goebel
* guix/build-system/qt.scm (qt-build, qt-cross-build): Adjust indentation.
2019-12-23build-system: qt: Actually use qt-build-system, not cmake-build-system.Hartmut Goebel
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>
2019-12-15guix: Upgrade to Bioconductor 3.10.Ricardo Wurmus
* guix/build-system/r.scm (bioconductor-uri): Switch to version 3.10. * guix/import/cran.scm (%bioconductor-version): Same.
2019-12-05Merge branch 'master' into core-updatesMarius Bakke
2019-12-05gnu: Really move lisp libraries to lisp-xyz, uglify-js to javascript and ↵Pierre Neidhardt
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.
2019-12-05Revert "gnu: Properly move lisp libraries to lisp-xyz, uglify-js to ↵Tobias Geerinckx-Rice
javascript and stumpwm to wm." This reverts commit ac1ee30f4f7f9d0ae2a655676b0e8b9eb90a35dd, which still breaks ‘guix pull’.
2019-12-05Revert "build-system/linux-module: Accept a #:make-flags keyword."Efraim Flashner
I should've tested this better before pushing the commit. This reverts commit fabd4900d8fb739a55e2dff76dee3a29b2a90bb1.
2019-12-05gnu: Properly move lisp libraries to lisp-xyz, uglify-js to javascript and ↵Pierre Neidhardt
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.
2019-12-04build-system/linux-module: Accept a #:make-flags keyword.Tobias Geerinckx-Rice
Fixes bug#37882. * guix/build-system/linux-module.scm (linux-module-build): Accept a MAKE-FLAGS argument. <builder>: Pass it on.
2019-12-01guix: Add the 'qt' build system.Hartmut Goebel
* 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.
2019-11-16Merge remote-tracking branch master into core-updatesMathieu Othacehe
2019-11-15gnu: cmake: Fix cross-compilation.Mathieu Othacehe
* gnu/packages/cmake.scm (cmake-minimal-cross): New package. * guix/build-system/cmake.scm (default-cmake): Add new target argument and use it to select cmake-minimal or cmake-minimal-cross. (lower): Pass target to default-cmake.
2019-10-18build-system/asdf: Fix package transform.Guillaume Le Vaillant
* guix/build-system/asdf.scm (package-with-build-system): [find-input-package]: New function. [rewrite]: Use it.
2019-10-14build-system/gnu: 'package-with-explicit-inputs' uses 'package-mapping'.Ludovic Courtès
* 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*'.
2019-10-11gnu: Add nsis-x86_64 and nsis-i686.Carl Dong
* 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.
2019-09-06Merge branch 'master' into core-updatesMark H Weaver
2019-09-05build-system/julia: Avoid module cycles.Marius Bakke
* guix/build-system/julia.scm: Remove unused imports. (lower)[julia]: Default to (DEFAULT-JULIA).
2019-09-04build-system/julia: Fix syntax error.Ricardo Wurmus
* guix/build-system/julia.scm: Fix invalid module reference.
2019-09-04build: Add julia-build-system.nixo
* 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>
2019-09-04import: crate: Separate crates.io API from actual conversion.Ludovic Courtès
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
2019-08-22Merge branch 'master' into core-updatesMark H Weaver
2019-08-16build-system/r: bioconductor-uri: Take optional package type.Ricardo Wurmus
* guix/build-system/r.scm (bioconductor-uri): Take optional TYPE argument to return annotation or experiment URLs.
2019-08-13Merge branch 'master' into core-updatesMarius Bakke
2019-07-23build-system/texlive: Add texlive-origin.Ricardo Wurmus
* guix/build-system/texlive.scm (texlive-origin): New procedure.
2019-07-17Merge branch 'master' into core-updatesLudovic Courtès
2019-07-16build/cargo-build-system: Use bundled json instead of guile-json.Robert Vollmert
* 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>
2019-07-14Revert "guix: node-build-system: Use guile-json instead of a custom parser."Julien Lepiller
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.
2019-07-14guix: node-build-system: Use guile-json instead of a custom parser.Julien Lepiller
* 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.
2019-07-14build: Add node-build-system.Jelle Licht
* 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>