summaryrefslogtreecommitdiff
path: root/guix/build-system
Commit message (Collapse)AuthorAge
* Merge branch 'master' into core-updatesDanny Milosavljevic2021-02-11
|\
| * build-system: Add renpy-build-system.Leo Prikler2021-02-07
| | | | | | | | | | | | | | * guix/build/renpy-build-system.scm: New file. * guix/build-system/renpy.scm: New file. * Makefile.am (MODULES): Add them here. * doc/guix.texi (Build Systems): Document renpy-build-system.
* | Merge branch 'master' into core-updatesChristopher Baines2021-02-03
|\|
| * build-system/julia: Don't rely on file name to set module name.nixo2021-01-30
| | | | | | | | | | | | | | | | | | * guix/build/julia-build-system.scm (project.toml->name): New procedure. (precompile, check, julia-build): Accept new key argument #:julia-package-name. * guix/build-system/julia.scm (julia-build): ... add it. * doc/guix.texi (julia-build-system): Update julia-package-name accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * build-system/julia: Enable tests.nixo2021-01-30
| | | | | | | | | | | | | | | | | | | | * guix/build-system/julia.scm (julia-build): Set tests? default to #t. * guix/build/julia-build-system.scm (check): Respect tests? and fix julia invocation. (%standard-phases): Add check phase after install. * doc/guix.texi (julia-build-system): Update accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* | gnu: meson-for-build: Remove package.Maxim Cournoyer2021-02-01
| | | | | | | | | | | | | | | | | | The meson-for-build package doesn't carry any special patch anymore; it appears to be obsolete. * gnu/packages/build-tools.scm (meson-for-build): Remove variable. * guix/build-system/meson.scm (default-meson): Use meson. * doc/guix.texi (Build Systems): Update doc.
* | build/python: Add a sanity check phase.Lars-Dominik Braun2021-02-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new phase validating the usability of installed Python packages. * gnu/packages/aux-files/python/sanity-check.py: New file. * Makefile.am (AUX_FILES): Register it. * guix/build-system/python.scm (sanity-check.py): New variable. (lower): Add the script as an implicit input. * guix/build/python-build-system.scm: Remove trailing #t. (sanity-check): New phase. (%standard-phases): Use it. * tests/builders.scm: (make-python-dummy) (dummy-ok, dummy-dummy-nosetuptools, dummy-fail-requirements) (dummy-fail-import, dummy-fail-console-script): New variables. ("python-build-system: dummy-ok") ("python-build-system: dummy-dummy-nosetuptools") ("python-build-system: dummy-fail-requirements") ("python-build-system: dummy-fail-import") ("python-build-system: dummy-fail-console-script"): Add tests.
* | build-system/texlive: Allow specifying SVN references with a single component.Maxim Cournoyer2021-01-14
| | | | | | | | | | | | | | | | This is the case for macros (formats), for which the TeX Directory Structure specifies to be located at the root of the source tree directly. * guix/build-system/texlive.scm (texlive-ref): Make the ID parameter optional. Update doc.
* | Merge branch 'staging' into 'core-updates'.Maxim Cournoyer2021-01-13
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gnu/local.mk gnu/packages/cmake.scm gnu/packages/curl.scm gnu/packages/gl.scm gnu/packages/glib.scm gnu/packages/guile.scm gnu/packages/node.scm gnu/packages/openldap.scm gnu/packages/package-management.scm gnu/packages/python-xyz.scm gnu/packages/python.scm gnu/packages/tls.scm gnu/packages/vpn.scm gnu/packages/xorg.scm
| * import: cran: Update the Bioconductor version to 3.12.Roel Janssen2020-12-09
| | | | | | | | | | * guix/import/cran.scm (%bioconductor-version): Set to 3.12. * guix/build-system/r.scm (bioconductor-uri): Update to 3.12.
| * build-system: Add chicken-build-system.raingloom2020-12-03
| | | | | | | | | | | | | | | | | | * guix/build-system/chicken.scm: New file. * guix/build/chicken-build-system.scm: New file. * Makefile.am: Add them. * doc/guix.texi: Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* | guix: Quote list of bootstrap scripts.Ricardo Wurmus2020-12-23
| | | | | | | | | | | | | | This is a follow-up to commit 9cfc93be30c516fd6fa32915c61c06e03f23a011. * guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Quote the list of default bootstrap scripts.
* | build-system/gnu: Allow overriding of bootstrap scripts.Ricardo Wurmus2020-12-23
| | | | | | | | | | | | | | | | * guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Accept bootstrap-scripts keyword argument and pass it to gnu-build. (%bootstrap-scripts): New variable. * guix/build/gnu-build-system.scm (%bootstrap-scripts): Remove variable. (bootstrap): Remove default value for bootstrap-scripts argument.
* | build-system/gnu: Add 'make-dynamic-linker-cache' phase.Ludovic Courtès2020-12-01
| | | | | | | | | | | | | | | | * guix/build/gnu-build-system.scm (make-dynamic-linker-cache): New procedure. (%standard-phases): Add it. * guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Add #:make-dynamic-linker-cache? and honor it.
* | Merge remote-tracking branch 'origin/master' into core-updatesChristopher Baines2020-11-29
|\|
| * Merge branch 'master' into stagingMarius Bakke2020-11-11
| |\
| | * guix: ocaml: Add package-with-ocaml4.09.Julien Lepiller2020-11-10
| | | | | | | | | | | | | | | | | | | | | * guix/build-system/ocaml.scm (package-with-ocaml4.09) (strip-ocaml4.09-variant): New variables. * gnu/packages/ocaml.scm (ocaml4.09-result, ocaml4.09-csexp) (ocaml4.09-dune-configurator, ocaml4.09-dune): New variables.
* | | Merge branch 'staging'Maxim Cournoyer2020-10-19
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gnu/packages/admin.scm gnu/packages/commencement.scm gnu/packages/gdb.scm gnu/packages/llvm.scm gnu/packages/package-management.scm gnu/packages/tls.scm
| * | build-system/haskell: Disable parallel builds.zimoun2020-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/43843>. * guix/build-system/haskell.scm (haskell-build): Turn off PARALLEL-BUILD? by default. Signed-off-by: Marius Bakke <marius@gnu.org>
| * | Merge branch 'master' into stagingGuillaume Le Vaillant2020-10-05
| |\|
| * | build-system: asdf: Read all .asd files if no #:asd-files specified.Guillaume Le Vaillant2020-09-15
| | | | | | | | | | | | | | | | | | * guix/build-system/asdf.scm (asdf-build): Remove the 'files' variable. * guix/build/asd-build-system.scm (find-asd-files): New variable. (build, check): Use it.
| * | build-system: asdf: Switch from bundles to regular compilation.Guillaume Le Vaillant2020-09-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/packages/lisp.scm (sbcl, ecl)[native-search-paths]: Add 'XDG_CONFIG_DIRS'. * guix/build-system/asdf.scm (asdf-build): Replace 'asd-file' and 'asd-system-name' keywords by 'asd-files' and 'asd-systems'. * guix/build/asdf-build-system.scm (%object-prefix, %lisp-source-install-prefix): Update variables. (install): Update variable. (main-system-name): New variable. (copy-source): Replace 'asd-file' and 'asd-system-name' keywords by 'asd-files' and 'asd-systems'. (configure): New variable. (build, check): Replace 'asd-file' and 'asd-system-name' keywords by 'asd-files' and 'asd-systems'. (create-asd-file, symlink-asd-files): Remove variables. (create-asdf-configuration): New variable. (cleanup-files): Update variable. (%standard-phases): Remove 'create-asd-file' and 'symlink-asd-files' phases. Add 'configure' and 'create-asdf-configuration' phases. * guix/build/lisp-utils.scm (%bundle-install-prefix, normalize-dependency, inputs->asd-file-map, asdf-load-all, compile-system): Remove variables. (compile-systems): New variable. (system-dependencies, compiled-system, generate-system-definition): Remove variable. (test-system): Replace 'asd-file' parameter by 'asd-files'. (generate-executable-for-system): Update variable. (generate-dependency-links, make-asd-file, bundle-asd-file): Remove variables. (make-asdf-configuration): New variable. (build-program, build-image): Set 'XDG_CONFIG_DIRS'. (generate-executable): Update variable.
* | | build: Fix docstring typos.Tobias Geerinckx-Rice2020-10-16
| | | | | | | | | | | | | | | | | | | | | | | | * gnu/build/image.scm (estimate-partition-size): Fix typo in docstring. * guix/build/copy-build-system.scm (install): Likewise. * guix/build/lisp-utils.scm (generate-executable): Likewise. * guix/build/maven/pom.scm (find-parent, fix-pom-dependencies): Likewise. * guix/build-system/cargo.scm (expand-crate-sources): Likewise.
* | | build-system/gnu: strip with --strip-unneeded [v2]Jakub Kądziołka2020-09-19
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [Accidentally pushed patch v1, this commit contains the rest of the changes. Revised commit message follows.] Apart from debug information, one can also strip some symbols. This can be a significant difference, the closure of gcc-toolchain@7 got reduced by 15 MB in my tests. As per [1], --strip-debug is included in --strip-unneeded, and the debug files created also contain a copy of the information removed by --strip-unneeded. Linux From Scratch suggests that this option shouldn't be used on static libraries [2], however other sources [3] indicate otherwise. Building a toolchain with this patch succeeds, and the result works fine for 'gcc -static hello-world.c'. [1]: https://stackoverflow.com/a/52555093 [2]: http://www.linuxfromscratch.org/lfs/view/9.1/chapter05/stripping.html [3]: https://www.technovelty.org/linux/stripping-shared-libraries.html * guix/build/gnu-build-system.scm (strip): Use --strip-unneeded. * guix/build-system/gnu.scm (static-package, gnu-build, gnu-cross-build): Likewise.
* | build-system: linux-module: Delete some huge items that we probably don't need.Danny Milosavljevic2020-09-14
|/ | | | | * guix/build-system/linux-module.scm (make-linux-module-builder): Delete some huge items that we probably don't need.
* build-system/haskell: Add 'extra-directories' keyword.Timothy Sample2020-08-13
| | | | | | | | | | | | | | | | See <https://bugs.gnu.org/39309>. * guix/build-system/haskell.scm (lower): Include the transitive propagated inputs of 'extra-directories' inputs. (haskell-build): Add the 'extra-directories' keyword and pass it through to the builder. * guix/build/haskell-build-system.scm (configure): Use it to select which inputs get passed via 'extra-include-dirs' and 'extra-lib-dirs' to Cabal. * gnu/packages/haskell-xyz.scm (ghc-alsa-core, ghc-hmatrix, ghc-hmatrix-gsl, ghc-hslua, ghc-iwlib, ghc-libyaml, ghc-ncurses, ghc-openglraw, ghc-x11, ghc-x11-xft, ghc-zlib): Set 'extra-directories'. * gnu/packages/haskell-crypto.scm (ghc-digest, ghc-hsopenssl): Likewise.
* build-system/haskell: Add default output "static".Ricardo Wurmus2020-08-12
| | | | | | | | | * guix/build-system/haskell.scm (lower): Add OUTPUTS keyword and add the "static" output in the common case. (haskell-build): Set the default value for the OUTPUTS keyword to include the "static" output. * guix/build/haskell-build-system.scm (install): Move static libraries to the "static" output if it exists.
* build-system/haskell: Support parallel builds.Ricardo Wurmus2020-08-12
| | | | | | | * guix/build-system/haskell.scm (haskell-build): Add keyword PARALLEL-BUILD? and pass it on to the builder. * guix/build/haskell-build-system.scm (build): Accept keyword PARALLEL-BUILD? and pass the number of parallel jobs to GHC.
* build-system/emacs: Allow usage of #:parallel-tests? keyMorgan Smith2020-08-09
| | | | | | | * guix/build-system/emacs.scm (emacs-build): Pass parallel-tests? to builder. Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net>
* build-system/maven: Make default-maven-plugins a procedure.Christopher Baines2020-07-17
| | | | | | | | | This allows compiling the module without the (gnu packages maven) module being available. * guix/build-system/maven.scm (%default-maven-plugins): Rename to default-maven-plugins, and convert to a procedure. * doc/guix.texi (maven-build-system): Update.
* guix: Add maven-build-system.Julien Lepiller2020-07-17
| | | | | | | * guix/build-system/maven.scm: New file. * guix/build/maven-build-system.scm: New file. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document the maven build system.
* guix: java-utils: Add Maven-related phases.Julien Lepiller2020-07-17
| | | | | | | | | | | * guix/build/maven/java.scm: New file. * guix/build/maven/plugin.scm: New file. * guix/build/maven/pom.scm: New file. * Makefile.am (MODULES): Add them. * guix/build-system/ant.scm (%ant-build-system-modules): Add them to the build side. * guix/build/java-utils.scm (generate-plugin.xml, install-pom-file) (install-from-pom): New procedures.
* build-system/r: bioconductor-uri: Fix archive URL.zimoun2020-06-30
| | | | | | * guix/build-system/r.scm (bioconductor-uri): Fix archive URL. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* build-system/gnu: Cross builds properly handle #:allowed-references & co.Ludovic Courtès2020-06-20
| | | | | | | Fixes <https://bugs.gnu.org/41775>. * guix/build-system/gnu.scm (gnu-cross-build)[canonicalize-reference]: Pass TARGET and SYSTEM to 'package-cross-derivation'.
* build-system/gnu: Simplify 'dist-package'.Ludovic Courtès2020-06-17
| | | | | * guix/build-system/gnu.scm (dist-package): Use default keyword arguments in 'substitute-keyword-arguments'.
* build-system/gnu: Adjust 'dist-package' to current 'autoconf-wrapper' API.Ludovic Courtès2020-06-17
| | | | | | This is a followup to 464f5447396fcec9b43f7eab71d5d42b522a157f. * guix/build-system/gnu.scm (dist-package): Do not call 'autoconf-wrapper'.
* build-system: cmake: Add substitutable keyword.Efraim Flashner2020-06-16
| | | | | * guix/build-system/cmake.scm (cmake-build, cmake-cross-build): Add substitutable keyword.
* Merge branch 'staging'Marius Bakke2020-06-13
|\
| * Merge branch 'master' into stagingMarius Bakke2020-06-06
| |\
| * \ Merge branch 'master' into stagingMarius Bakke2020-05-26
| |\ \
| * \ \ Merge branch 'master' into stagingMarius Bakke2020-05-26
| |\ \ \
| * \ \ \ Merge branch 'master' into stagingJakub Kądziołka2020-04-29
| |\ \ \ \
| * | | | | build-system/go: Allow providing additional build flagsJakub Kądziołka2020-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build-system/go.scm (build-flags): New argument. * guix/build/go-build-system.scm (build): Use apply to pass the additional arguments to invoke.
| * | | | | Merge branch 'master' into stagingJakub Kądziołka2020-03-29
| |\ \ \ \ \
| * | | | | | cargo-build-system: Accept a #:features argumentJakub Kądziołka2020-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* | | | | | | guix: Update to Bioconductor 3.11.Ricardo Wurmus2020-06-13
| |_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | * guix/build-system/r.scm (bioconductor-uri): Use new URL. * guix/import/cran.scm (%bioconductor-version): Update to 3.11.
* | | | | | build-system: linux-module: Allow passing #:make-flags argument.Danny Milosavljevic2020-06-02
| |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build-system/linux-module.scm (linux-module-build): Add #:make-flags. (linux-module-build-cross): Add #:make-flags. * guix/build/linux-module-build-system.scm (install): Pass make-flags. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* | | | | build: asdf-build-system: Use SBCL source in CL packages.Pierre Neidhardt2020-05-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/asdf-build-system.scm (copy-files-to-output): Don't attempt to reset timestamps on files without write access. (install): When parent SBCL package is in the inputs, use its source. This way we get possibly patched sources in CL packages as well (e.g. for FFI). This is also useful for sources that generate files on load-op, like cl-unicode. * guix/build-system/asdf.scm (package-with-build-system): Forward the SBCL parent as a native input so that it can be used in the above install phase.
* | | | | build-system/guile: Expose #:scheme-file-regexp.Alex Sassmannshausen2020-05-18
| |_|_|/ |/| | | | | | | | | | | | | | | * guix/build-system/guile.scm (%scheme-file-regexp): New variable. (guile-build): Accept #:scheme-file-regexp and pass it on to builder.
* | | | Merge branch 'master' into core-updatesMarius Bakke2020-03-30
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gnu/packages/admin.scm gnu/packages/commencement.scm gnu/packages/guile.scm gnu/packages/linux.scm gnu/packages/package-management.scm gnu/packages/pulseaudio.scm gnu/packages/web.scm