summaryrefslogtreecommitdiff
path: root/guix/build
AgeCommit message (Expand)Author
2018-06-18compile: Work around non-thread-safe module autoloading....* guix/build/compile.scm <top level>: Set 'try-module-autoload' when running on Guile < 2.2.4. Ludovic Courtès
2018-06-18guix: ant-build-system: Use manifest task to create manifest....* guix/build/ant-build-system.scm (default-build.xml): Use manifest task to create manifest file instead of a custom echo task. Gábor Boskovits
2018-06-18Merge branch 'master' into stagingMarius Bakke
2018-06-16build-system/ant: Unconditionally return #t in build phases....* guix/build/ant-build-system.scm (unpack, build, strip-jar-timestamps, check, install): Use invoke. Signed-off-by: Gábor Boskovits <boskovits@gmail.com> Ricardo Wurmus
2018-06-14database: Add 'register-items'....* guix/build/store-copy.scm (store-info): Export. * guix/store/database.scm (register-items): New procedure. (register-path): Implement in terms of 'register-items'. * gnu/build/install.scm (register-closure): Use 'register-items' instead of 'for-each' and 'register-path'. Ludovic Courtès
2018-06-14store-copy: 'read-reference-graph' returns a list of records....The previous implementation of 'read-reference-graph' was good enough for many use cases, but it discarded the graph structure, which is useful information in some cases. * guix/build/store-copy.scm (<store-info>): New record type. (read-reference-graph): Rewrite to return a list of <store-info>. (closure-size, populate-store): Adjust accordingly. * gnu/services/base.scm (references-file): Adjust accordingly. * gnu/system/vm.scm (system-docker-image): Likewise. * guix/scripts/pack.scm (squashfs-image, docker-image): Likewise. * tests/gexp.scm ("gexp->derivation #:references-graphs"): Likewise. Ludovic Courtès
2018-06-06build-system/r: Fix type error....Reported-by: Mark H Weaver <mhw@netris.org> * guix/build/r-build-system.scm (pipe-to-r): Pass a list to the condition's "arguments" field. Ricardo Wurmus
2018-06-06Merge branch 'origin/core-updates-next' into core-updatesRicardo Wurmus
2018-05-31build-system/r: Use invoke....* guix/build/r-build-system.scm (invoke-r): Use invoke. (pipe-to-r): Raise invoke-error on non-zero return value. (check): Unconditionally return #t. Ricardo Wurmus
2018-05-21Merge branch 'master' into core-updatesMark H Weaver
2018-05-17union: Do not warn about harmless collisions....Until now we'd get pointless messages like: warning: collision encountered: /gnu/store/…-gtk-icon-themes/share/icons/hicolor/icon-theme.cache /gnu/store/…-inkscape-0.92.3/share/icons/hicolor/icon-theme.cache warning: choosing /gnu/store/…-gtk-icon-themes/share/icons/hicolor/icon-theme.cache * guix/build/union.scm (%harmless-collisions): New variable. (warn-about-collision): Honor it. Ludovic Courtès
2018-05-17Merge branch 'master' into core-updatesMark H Weaver
2018-05-10profiles: Optionally use relative file names for symlink targets....* guix/build/union.scm (symlink-relative): New procedure. * guix/build/profiles.scm: Re-export it. (build-profile): Add #:symlink and pass it to 'union-build'. * guix/profiles.scm (profile-derivation): Add #:relative-symlinks?. Pass #:symlink to 'build-profile'. * tests/profiles.scm ("profile-derivation relative symlinks, one entry") ("profile-derivation relative symlinks, two entries"): New tests. Ludovic Courtès
2018-05-10union: Add 'relative-file-name'....* guix/build/union.scm (%not-slash): New variable. (relative-file-name): New procedure. * tests/union.scm (test-relative-file-name): New macro and tests. Ludovic Courtès
2018-05-10build-system: android-ndk: Let upstream install header files....* guix/build/android-ndk-build-system.scm (install): Don't install header files ourselves. Danny Milosavljevic
2018-05-10build-system: android-ndk: Support unit tests....* guix/build-system/android-ndk.scm (android-ndk-build): Add googletest. * guix/build/android-ndk-build-system.scm (check): Check whether tests are enabled. Run root-level tests as well. Danny Milosavljevic
2018-05-09build: Add the Android NDK build-system....* guix/build-system/android-ndk.scm: New file. * guix/build/android-ndk-build-system.scm: New file. * Makefile.am: Add them. Danny Milosavljevic
2018-05-07build-system/meson: Use 'strip-runpath' instead of PatchELF....* guix/build/meson-build-system.scm (fix-runpath): Call 'strip-runpath' instead of invoking 'patchelf'. Ludovic Courtès
2018-05-07gremlin: Add 'strip-runpath'....* guix/build/gremlin.scm (strip-runpath): New procedure. * tests/gremlin.scm (c-compiler): New variable. ("strip-runpath"): New test. Ludovic Courtès
2018-05-07gremlin: Preserve offset info for dynamic entries....* guix/build/gremlin.scm (<dynamic-entry>): New record type. (raw-dynamic-entries): Return a list of <dynamic-entry>. (dynamic-entries): Adjust accordingly and return a list of <dynamic-entry>. (elf-dynamic-info)[matching-entry]: New procedure. Use it. Ludovic Courtès
2018-05-06guix: ant-build-system: End "configure" phase with #t....* guix/build/ant-build-system.scm (configure): End with #t. Danny Milosavljevic
2018-05-06guix: ant-build-system: Create INDEX.LIST....Fixes <https://bugs.gnu.org/31374>. * guix/build/ant-build-system.scm (generate-jar-indices): New procedure. (%standard-phases)[generate-jar-indices]: New phase. Danny Milosavljevic
2018-05-06Merge branch 'master' into core-updatesMarius Bakke
2018-05-03build: emacs-utils: Fail when byte compilation fails....Byte compilation failures were ignored prior to this change. * guix/build/emacs-utils.scm (emacs-byte-compile-directory): Fail when there are compilation errors. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> Maxim Cournoyer
2018-05-01compile: Exit when an exception is thrown....Previously we could end up with only a subset of the modules built. Fixes <https://bugs.gnu.org/31329>. * guix/build/compile.scm (call/exit-on-exception): New procedure. (exit-on-exception): New macro. (compile-files): Use it. Ludovic Courtès
2018-04-25Merge branch 'master' into stagingMarius Bakke
2018-04-21Merge branch 'master' into core-updatesMark H Weaver
2018-04-20build-system: emacs: Add improved check phase....* guix/build-system/emacs.scm (emacs-build): Add #:test-command keyword argument. Remove #:configure-flags and #:test-target keyword arguments. * guix/build/emacs-build-system.scm (check): New procedure. (%standard-phases): Register check phase after the build phase. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> Maxim Cournoyer
2018-04-20build-system: emacs: Replace system* with invoke....* guix/build/emacs-utils.scm: Use (guix build utils) for invoke. (emacs-batch-eval, emacs-batch-edit-file): Replace system* with invoke. * guix/build/emacs-build-system.scm (make-autoloads): No need to return #t explicitly since emacs-generate-autoloads now uses invoke. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> Maxim Cournoyer
2018-04-20build-system: emacs: Search all inputs for Emacs Lisp directories....* guix/build/emacs-build-system.scm (set-emacs-load-path): Include Emacs Lisp directories from all inputs. Also, add the unpacked source directory to EMACSLOADPATH. (emacs-inputs, emacs-inputs-directories, emacs-input->el-directory, emacs-inputs-el-directories): Remove. (%standard-phases): Move set-emacs-load-path phase to after unpack phase. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> Maxim Cournoyer
2018-04-16Merge branch 'master' into stagingMarius Bakke
2018-04-15build-system/meson: Don't override LDFLAGS if already set....* guix/build/meson-build-system.scm (configure): Test for LDFLAGS before adding ours. (cherry picked from commit 611c27db2aec8c2f72bc0c1e5c7d126dc95b39b2) Marius Bakke
2018-04-10Merge branch 'master' into core-updatesMark H Weaver
2018-04-08union: Allow callers to choose the collision resolution policy....* guix/build/union.scm (warn-about-collision): New procedure. (union-build): Add #:resolve-collision. [resolve-collisions]: Call it. * tests/union.scm ("union-build collision first & last"): New test. Ludovic Courtès
2018-04-02build-system/meson: Don't override LDFLAGS if already set....* guix/build/meson-build-system.scm (configure): Test for LDFLAGS before adding ours. Marius Bakke
2018-03-31union: Slightly improve messages for file collisions....* guix/build/union.scm (union-build): Indent file names upon collision. Remove "arbitrarily" from the message. Ludovic Courtès
2018-03-29ld-wrapper: Allow linking with non-store libraries by default....This was suggested on several occasions, notably <https://bugs.gnu.org/24544>. * gnu/packages/ld-wrapper.in (%allow-impurities?): Default to #t and parse the value of 'GUIX_LD_WRAPPER_ALLOW_IMPURITIES'. * guix/build/gnu-build-system.scm (set-paths): Set 'GUIX_LD_WRAPPER_ALLOW_IMPURITIES'. Ludovic Courtès
2018-03-29gremlin: Fix typo in export list....* guix/build/gremlin.scm: Really export 'elf-dynamic-info-soname'. Ludovic Courtès
2018-03-20Merge branch 'master' into core-updatesMark H Weaver
2018-03-20build-system/gnu: Fix typo....* guix/build/gnu-build-system.scm (dump-file-contents): Fix typo in 'string-pad' argument. Ludovic Courtès
2018-03-20build-system/gnu: Dump test suite logs upon 'check' failure....Suggested by Mark H Weaver <mhw@netris.org>. * guix/build/gnu-build-system.scm (dump-file-contents): New procedure. (%test-suite-log-regexp): New variable. (check): Add #:test-suite-log-regexp. Catch 'invoke-error?' and call 'dump-file-contents' upon error. Ludovic Courtès
2018-03-18build-system/python: Fix deletion of .egg-info dirs created by tests....* guix/build/python-build-system.scm (check): Use 'string=?' to compare strings, not 'eqv?'. Mark H Weaver
2018-03-18build-system/python: Return #t from all phases....* guix/build/python-build-system.scm (build, install, wrap): Return #t. (check): Return #t and remove vestigial plumbing. Mark H Weaver
2018-03-16build-system/gnu: Tolerate errors during the 'strip' phase....This is a followup to commit 9a87649c863e1ff8b073b356875eb05eecedbcf7. * guix/build/gnu-build-system.scm (strip)[strip-dir]: If an invoke error occurs, issue a warning and continue to the next file. This restores the tolerance of stripping errors prior to commit 9a87649. Mark H Weaver
2018-03-16utils: invoke: Raise exceptions using SRFI-34 and SRFI-35....* guix/build/utils.scm (&invoke-error): New condition type. (invoke-error?, invoke-error-program, invoke-error-arguments) (invoke-error-exit-status, invoke-error-term-signal) (invoke-error-stop-signal): New exported procedures. (invoke): Raise exceptions using SRFI-34 and SRFI-35. * guix/ui.scm (call-with-error-handling): Add a guard clause for &invoke-error conditions. Mark H Weaver
2018-03-16gnu-build: Issue a warning unless every phase returns #t....* guix/build/gnu-build-system.scm (gnu-build): Issue a warning if a phase returns a value other than #t. Mark H Weaver
2018-03-16build-system/gnu: Return a boolean from all phase procedures....* guix/build/gnu-build-system.scm (patch-source-shebangs) (patch-generated-file-shebangs, strip): Return #t. (validate-runpath): Raise an exception if validation fails. Never return #f. Mark H Weaver
2018-03-16build: emacs-utils: Use invoke instead of system*....* guix/build/emacs-utils.scm (emacs-batch-eval) (emacs-batch-edit-file): Use invoke. Mark H Weaver
2018-03-16hg-download: Use invoke instead of system*....* guix/build/hg.scm (hg-fetch): Use invoke and remove vestigial plumbing. Mark H Weaver
2018-03-16svn-download: Use invoke instead of system*....* guix/build/svn.scm (svn-fetch): Use invoke and remove vestigial plumbing. Mark H Weaver