summaryrefslogtreecommitdiff
path: root/guix/build
Commit message (Collapse)AuthorAge
* build-system: python: Do not double wrap executables.Arun Isaac2018-11-25
| | | | | | * guix/build/python-build-system.scm (wrap): Only wrap executables that have not already been wrapped. * guix/build/utils.scm (wrapper?): New function.
* Merge branch 'core-updates' into core-updates-nextJan Nieuwenhuizen2018-10-21
|\
| * java-utils: Use 'strip-store-file-name'.Alex Vong2018-10-19
| | | | | | | | | | | | | | | | | | | | | | See the discussion at <https://lists.gnu.org/archive/html/guix-devel/2018-10/msg00250.html>. * guix/build/java-utils.scm (package-name-version): Remove it. (install-javadoc): Use 'strip-store-file-name' instead of 'package-name-version'. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * build-system/haskell: Use 'strip-store-file-name'.Alex Vong2018-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See the discussion at <https://lists.gnu.org/archive/html/guix-devel/2018-10/msg00250.html>. * guix/build/haskell-build-system.scm (package-name-version): Remove it. (configure): Use 'strip-store-file-name' instead of 'package-name-version'. (setup-compiler): Likewise. (make-ghc-package-database): Likewise. (register): Likewise. * gnu/packages/haskell.scm (ghc-cairo)[arguments]: Likewise. * gnu/packages/agda.scm (agda)[arguments]: Likewise. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * Merge branch 'master' into core-updatesMarius Bakke2018-10-05
| |\
| | * build-system/asdf: Properly handle dependency specification casing.Andy Patterson2018-10-02
| | | | | | | | | | | | | | | | | | | | | * guix/build/lisp-utils.scm (normalize-dependency): Modify match clauses to match the upper-case symbols that lisp produces. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| | * build-system: haskell: Add #:cabal-revision argument.Timothy Sample2018-10-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a #:cabal-revision argument for specifying which Cabal file revision from Hackage should be used. * guix/build-system/haskell.scm (source-url->revision-url): New function. (lower): Accept a cabal-revision keyword argument, convert it to an origin record, and add it to the resulting bag's host-inputs. (haskell-build): Pass the cabal-revision input to the builder as an argument. * guix/build/haskell-build-system.scm (patch-cabal-file): New phase. (%standard-phases): Add it.
| | * perform-download: Optionally report a "download-progress" trace.Ludovic Courtès2018-09-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/perform-download.scm (perform-download): Add #:print-build-trace? and pass it to 'url-fetch'. (guix-perform-download): Define 'print-build-trace?' and pass it to 'perform-download'. * guix/build/download.scm (ftp-fetch): Add #:print-build-trace? and honor it. (url-fetch): Likewise. * nix/libstore/builtins.cc (builtinDownload): Set _NIX_OPTIONS environment variable.
| * | Merge branch 'master' into core-updatesMarius Bakke2018-09-26
| |\|
| | * store-copy: Display a progress bar when copying store items.Ludovic Courtès2018-09-23
| | | | | | | | | | | | | | | * guix/build/store-copy.scm (populate-store): Add #:log-port parameter. Use 'progress-reporter/bar' to report progress.
* | | guix: copy-linux-headers: Extract procedure, add headers.Jan Nieuwenhuizen2018-09-23
|/ / | | | | | | | | | | * guix/build/make-bootstrap.scm (copy-linux-headers): New procedure; extract from make-stripped-libc and add headers for Mes bootstrap. (make-stripped-libc): Use it.
* | Merge branch 'master' into core-updatesMarius Bakke2018-09-20
|\|
| * build-system/asdf: Adopt asdf conventions.Andy Patterson2018-09-19
| | | | | | | | | | | | | | | | | | | | | | The asdf documentation specifies that asdf:load-asd should be preferred to calling load on a system definition file. * guix/build/lisp-utils.scm (compile-system): Replace load with asdf:load-asd. (system-dependencies): Likewise. (test-system): Likewise. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * build-system/asdf: Use invoke.Andy Patterson2018-09-19
| | | | | | | | | | | | | | * guix/build/lisp-utils.scm (lisp-eval-program): Replace system* and error handling with invoke. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * build-system/asdf: Log lisp system invocations.Andy Patterson2018-09-19
| | | | | | | | | | | | | | * guix/build/lisp-system.scm: (lisp-eval-program): Log the arguments to system*. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * build-system/asdf: Handle all asdf dependency specifications.Andy Patterson2018-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for dependencies of the form (:version <name> <version>), (:feature <feature> <dependency-specification>) and (:require <module-name>), as defined by <https://common-lisp.net/project/asdf/asdf.html#The-defsystem-grammar>. * guix/build/lisp-utils.scm (normalize-dependency): New variable. (make-asd-file)[dependencies]: Use it to generate dependencies with normalized names. [dependency-name]: New variable. [registry]: Use it to flatten the normalized dependencies. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* | Merge branch 'master' into core-updatesLeo Famulari2018-09-13
|\|
| * profiles: Correctly deal with etc/ being a relative symlink.Ludovic Courtès2018-09-11
| | | | | | | | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/32686>. Reported by Oleg Pykhalov <go.wigust@gmail.com>. * guix/build/profiles.scm (ensure-writable-directory): Add #:symlink. [absolute?]: New procedure. [unsymlink]: Use it to determine how to resolve readlink's result. (build-profile): Pass SYMLINK to 'ensure-writable-directory'. * tests/profiles.scm ("profile-derivation when etc/ is a relative symlink"): New test.
| * syscalls: Report lack of a libc symbol as ENOSYS.Ludovic Courtès2018-09-10
| | | | | | | | | | * guix/build/syscalls.scm (syscall->procedure): Throw to 'system-error with ENOSYS when NAME cannot be found.
* | Merge branch 'staging' into core-updatesMarius Bakke2018-08-25
|\ \
| * | Merge branch 'master' into stagingMarius Bakke2018-08-25
| |\|
| | * grafts: Add (guix build debug-link) and use it.Ludovic Courtès2018-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/19973>. Reported by Mark H Weaver <mhw@netris.org>. * guix/build/debug-link.scm: New file. * guix/build/graft.scm (%graft-hooks): New variable. (graft): Add #:hooks and honor it. * guix/grafts.scm (graft-derivation/shallow): Add (guix build debug-link) and (guix elf) to #:modules. * tests/debug-link.scm: New file. * Makefile.am (MODULES): Add guix/build/debug-link.scm. (SCM_TESTS): Add tests/debug-link.scm.
| | * grafts: Add high-level 'graft' procedure on the build side.Ludovic Courtès2018-08-24
| | | | | | | | | | | | | | | | | | * guix/build/graft.scm (graft): New procedure. * guix/grafts.scm (graft-derivation/shallow)[build]: Use it instead of inline code.
| * | guix: svn: Remove all .svn folders.Julien Lepiller2018-08-19
| |/ | | | | | | | | * guix/build/svn.scm (svn-fetch): Remove all .svn folders as they contain timestamps.
* | build-system/meson: Strip RUNPATH and remove PatchELF traces.Marius Bakke2018-08-22
| | | | | | | | | | | | | | | | | | * guix/build-system/meson.scm (%meson-build-system-modules): Don't import (guix build rpath). * guix/build/meson-build-system.scm (fix-runpath): Rename to ... (shrink-runpath): ... this. Update docstring. Remove AUGMENT-RPATH calls and related code. (%standard-phases): Add 'shrink-runpath'.
* | utils: Generate valid substitutions in 'wrap-program'.Jelle Licht2018-08-20
| | | | | | | | | | * guix/build/utils.scm (wrap-program)[export-variable]: Generate valid bash substitutions when using custom separators.
* | Merge branch 'staging' into core-updatesRicardo Wurmus2018-08-13
|\|
| * Merge branch 'master' into stagingMarius Bakke2018-07-28
| |\
| * | build-system/meson: Remove RUNPATH workarounds.Marius Bakke2018-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build-system/meson.scm (default-patchelf): Remove. (lower)[build-inputs]: Remove PATCHELF. (meson-build): Don't delete 'fix-runpath' phase on armhf. * guix/build/meson-build-system.scm (configure): Add "--c_link_args" and "-cpp_link_args" instead of setting LDFLAGS. (meson-build): Don't apply 'fix-runpath' phase.
| * | guix: ant-build-system: Reorder before generating INDEX.LIST.Julien Lepiller2018-07-19
| | | | | | | | | | | | | | | * guix/build/ant-build-system.scm (%standard-phases): Add reorder-jar-content phase.
* | | build-system/haskell: Let all phases return #T unconditionally.Ricardo Wurmus2018-08-09
| | | | | | | | | | | | | | | * guix/build/haskell-build-system.scm (make-ghc-package-database, register, check, haddock): Return #T unconditionally; use INVOKE.
* | | build-system/gnu: If a phase returns #f, the build fails.Mark H Weaver2018-08-03
| | | | | | | | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/31974>. Introduced by commit d8a3b1b9e847d4a44d2695f95af77170d4d2788f. * guix/build/gnu-build-system.scm (gnu-build): Use 'every' instead of 'for-each'.
* | | gnu: python: Update to 3.7.0.Marius Bakke2018-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/packages/python.scm (python-3.6): Rename to ... (python-3.7): ... this. Update to 3.7.0. [arguments]: Remove phase 'patch-timestamp-for-pyc-files' and related code. Add phases to unset SOURCE_DATE_EPOCH during the check phase. (python-3): Is now PYTHON-3.7. * guix/build/python-build-system.scm (enable-bytecode-determinism): Don't set DETERMINISTIC_BUILD.
* | | Merge branch 'master' into core-updatesLudovic Courtès2018-07-26
|\ \ \ | | |/ | |/|
| * | ruby-build-system: Make phase "replace-git-ls-files" handle more cases.Danny Milosavljevic2018-07-24
| | | | | | | | | | | | * guix/build/ruby-build-system.scm (replace-git-ls-files): Modify.
* | | Merge branch 'master' into core-updatesMarius Bakke2018-07-24
|\| |
| * | build-system: Add 'guile-build-system'.Ludovic Courtès2018-07-23
| | | | | | | | | | | | | | | | | | | | | * guix/build-system/guile.scm, guix/build/guile-build-system.scm: New files. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document 'guile-build-system'.
| * | build-system/go: Use invoke instead of system*.Leo Famulari2018-07-19
| | | | | | | | | | | | | | | | | | * guix/build/go-build-system.scm (unpack, build): Use invoke. (install-source): Unconditionally return #t. (check): Use invoke and unconditionally return #t.
| * | ruby-build-system: Error or return #t from all phases.Christopher Baines2018-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, if the tests didn't pass, the check phase would evaluate to #f, but the package would be built sucessfully. This changes all the phases to raise exceptions if errors are encountered, and return #t otherwise. This involves using invoke rather than system*, so that exceptions are raised if the program exits with a status other than 0, and also returning #t at the end of functions. * gnu/build/ruby-build-system.scm (unpack): Use invoke rather than system*, and return #t at the end. (build, check): Use invoke rather than system*. (install): Remove the use of "and", and rewrite the error handling to raise an exception. (wrap): Return #t.
| * | Merge branch 'staging'Marius Bakke2018-07-13
| |\|
| | * Merge branch 'master' into stagingMarius Bakke2018-07-08
| | |\
| | * | gnu: java: Return #t from all phases and snippets.Mark H Weaver2018-06-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/java-utils.scm (ant-build-javadoc): Use invoke; return #t. * guix/build/ant-build-system.scm (generate-jar-indices): Return #t and remove vestigal plumbing. * gnu/packages/java.scm (classpath-bootstrap, ant-bootstrap, classpath-devel) (icedtea-6, icedtea-7, java-plexus-sec-dispatcher, ant/java8, clojure) (java-classpathx-servletapi, java-swt, java-qdox-1.12, java-hamcrest-core) (java-plexus-archiver, java-plexus-sec-dispatcher, java-modello-plugins-xml) (java-asm, java-commons-collections, java-commons-bsf, java-slf4j-api) (java-slf4j-api, java-slf4j-simple, java-stringtemplate-3) (java-stringtemplate, antlr3, antlr3-3.3, antlr3-3.1, java-ops4j-base-lang) (java-ops4j-pax-tinybundles, java-ops4j-pax-exam-core-spi) (java-fasterxml-jackson-core, java-fasterxml-jackson-databind) (java-fasterxml-jackson-modules-base-jaxb, java-ecj-3, java-ecj-3.5) (java-fasterxml-jackson-dataformat-yaml, java-woodstox-core) (java-fasterxml-jackson-dataformat-xml, java-testng, java-jnacl) (java-bouncycastle, java-powermock-core, java-powermock-modules-junit4) (java-jansi-native, java-jansi, java-commons-httpclient, java-commons-vfs) (java-apache-ivy, java-janino, java-logback-core): Return #t from all phases and snippets, use invoke where appropriate, and remove vestigial plumbing.
| | * | meson-build-system: Return #t from all phases.Mark H Weaver2018-06-28
| | | | | | | | | | | | | | | | | | | | * guix/build/meson-build-system.scm (configure, build, check, install): (fix-runpath): Use 'invoke' and return #t from all phases.
| | * | Merge branch 'master' into stagingMarius Bakke2018-06-19
| | |\ \
| | * | | guix: ant-build-system: Use manifest task to create manifest.Gábor Boskovits2018-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/ant-build-system.scm (default-build.xml): Use manifest task to create manifest file instead of a custom echo task.
| | * | | Merge branch 'master' into stagingMarius Bakke2018-06-18
| | |\ \ \
| | * | | | build-system/ant: Unconditionally return #t in build phases.Ricardo Wurmus2018-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/ant-build-system.scm (unpack, build, strip-jar-timestamps, check, install): Use invoke. Signed-off-by: Gábor Boskovits <boskovits@gmail.com>
| * | | | | build-system/haskell: Make phases fail on error.Danny Milosavljevic2018-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/haskell-build-system.scm (configure): Make it fail on error. (run-setuphs): Make it fail on error.
| * | | | | profiles: Factorize 'manifest-search-paths'.Ludovic Courtès2018-07-11
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | * guix/profiles.scm (manifest-search-paths): New procedure. (profile-derivation)[builder]: Use it. * guix/build/profiles.scm (build-etc/profile): Remove $PATH.
| * | | | syscalls: Define AT_SYMLINK_NOFOLLOW et al.Ludovic Courtès2018-07-03
| | |_|/ | |/| | | | | | | | | | | | | | | | | | * guix/build/syscalls.scm (AT_FDCWD, AT_SYMLINK_NOFOLLOW, AT_REMOVEDIR) (AT_SYMLINK_FOLLOW, AT_NO_AUTOMOUNT, AT_EMPTY_PATH): New variables. * tests/syscalls.scm ("utime with AT_SYMLINK_NOFOLLOW"): New test.