summaryrefslogtreecommitdiff
path: root/guix/build
AgeCommit message (Expand)Author
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
2018-03-16cvs-download: Use invoke instead of system*....* guix/build/cvs.scm (cvs-fetch): Use invoke and remove vestigial plumbing. Mark H Weaver
2018-03-16build-system/scons: Use invoke instead of system*....* guix/build/scons-build-system.scm (build, check, install): Use invoke. Mark H Weaver
2018-03-16build-system/texlive: Use invoke instead of system*....* guix/build/texlive-build-system.scm (compile-with-latex): Use invoke. Mark H Weaver
2018-03-16build-system/python: Use invoke instead of system*....* guix/build/python-build-system.scm (call-setuppy): Use invoke. Mark H Weaver
2018-03-16build-system/perl: Use invoke instead of system*....* guix/build/perl-build-system.scm (configure, build, check, install): Use invoke. Mark H Weaver
2018-03-16build-system/cmake: Use invoke instead of system*....* guix/build/cmake-build-system.scm (configure): Use invoke. Mark H Weaver
2018-03-16build-system/glib-or-gtk: Use invoke instead of system*....* guix/build/glib-or-gtk-build-system.scm (compile-glib-schemas): Use invoke and remove vestigial plumbing. Mark H Weaver
2018-03-16build-system/gnu: Use invoke instead of system*....* guix/build/gnu-build-system.scm (unpack, configure, build, check, install) (strip, compress-documentation): Use invoke and remove vestigial plumbing. Mark H Weaver
2018-03-16gnu-dist: Use invoke instead of system*....* guix/build/gnu-dist.scm (autoreconf, build): Use invoke and remove vestigial plumbing. Mark H Weaver
2018-03-15guix: python-build-system: Make bytecode compilation deterministic....* guix/build/python-build-system.scm (enable-bytecode-determinism): New procedure. (%standard-phases): Add "enable-bytecode-determinism" phase. Ricardo Wurmus
2018-03-14Merge branch 'master' into core-updatesRicardo Wurmus
2018-03-12build-system/meson: Add the output directory to RUNPATH....* guix/build/meson-build-system.scm (configure): Set LDFLAGS before invoking meson. Marius Bakke
2018-03-11build-system/gnu: Add 'bootstrap' phase....This factorizes what has become a widespread idiom. * guix/build/gnu-build-system.scm (%bootstrap-scripts): New variable. (bootstrap): New procedure. (%standard-phases): Add it after 'unpack'. * guix/build/ant-build-system.scm (%standard-phases): Delete 'bootstrap. * guix/build/asdf-build-system.scm (%standard-phases/source) (%standard-phases): Likewise. * guix/build/cargo-build-system.scm (%standard-phases): Likewise. * guix/build/cmake-build-system.scm (%standard-phases): Likewise. * guix/build/dub-build-system.scm (%standard-phases): Likewise. * guix/build/emacs-build-system.scm (%standard-phases): Likewise. * guix/build/font-build-system.scm (%standard-phases): Likewise. * guix/build/go-build-system.scm (%standard-phases): Likewise. * guix/build/haskell-build-system.scm (%standard-phases): Likewise. * guix/build/minify-build-system.scm (%standard-phases): Likewise. * guix/build/ocaml-build-system.scm (%standard-phases): Likewise. * guix/build/perl-build-system.scm (%standard-phases): Likewise. * guix/build/python-build-system.scm (%standard-phases): Likewise. * guix/build/r-build-system.scm (%standard-phases): Likewise. * guix/build/ruby-build-system.scm (%standard-phases): Likewise. * guix/build/scons-build-system.scm (%standard-phases): Likewise. * guix/build/texlive-build-system.scm (%standard-phases): Likewise. * guix/build/waf-build-system.scm (%standard-phases): Likewise. * gnu/packages/audio.scm (faad2)[arguments]: Replace 'bootstrap. (soundtouch, cuetools, bluez-alsa): Remove 'arguments'. (cava)[arguments]: Replace 'bootstrap. * gnu/packages/backup.scm (rdup): Remove 'bootstrap. * gnu/packages/bioinformatics.scm (seek)[arguments]: Replace 'bootstrap. * gnu/packages/bioinformatics.scm (htslib-for-sambamba): Remove 'arguments'. * gnu/packages/ci.scm (hydra, cuirass): Remove 'bootstrap'. * gnu/packages/crypto.scm (libb2): Remove #:phases. * gnu/packages/databases.scm (guile-wiredtiger): Likewise. * gnu/packages/debug.scm (stress-make): Remove 'bootstrap'. * gnu/packages/documentation.scm (asciidoc): Likewise. * gnu/packages/fontutils.scm (libuninameslist): Remove 'arguments'. * gnu/packages/ftp.scm (weex): Remove 'arguments'. * gnu/packages/game-development.scm (ois): Remove 'arguments'. * gnu/packages/games.scm (pioneer): Remove 'bootstrap. * gnu/packages/gnome.scm (vte-ng, byzanz): Replace 'bootstrap. (arc-theme): Remove 'arguments'. (faba-icon-theme): Remove 'bootstrap. (arc-icon-theme): Remove 'arguments'. * gnu/packages/gnunet.scm (guile-gnunet): Likewise. * gnu/packages/gtk.scm (guile-rsvg): Likewise. * gnu/packages/guile.scm (mcron2): Remove 'bootstrap. (guile-bash): Remove #:phases. (guile-git): Remove 'bootstrap. (guile-syntax-highlight): Remove 'arguments'. (guile-sjson): Likewise. * gnu/packages/java.scm (classpath-devel): Remove 'bootstrap. * gnu/packages/kodi.scm (libdvdnav/kodi) (libdvdread/kodi, libdvdcss/kodi): Likewise. * gnu/packages/libreoffice.scm (hunspell): Remove 'arguments'. * gnu/packages/libusb.scm (hidapi): Likewise. * gnu/packages/linux.scm (bridge-utils): Rename 'bootstrap' to 'patch-stuff'; move it before 'bootstrap', without autoreconf invocation. (eudev): Rename 'bootstrap' to 'patch-file-names', without 'autogen.sh' invocation; move it before 'bootstrap. (gpm): Replace 'bootstrap'. (f2fs-tools): Remove 'arguments'. (rng-tools): Remove #:phases. * gnu/packages/messaging.scm (hexchat): Rename 'bootstrap' to 'copy-intltool-makefile'; remove "autoreconf" invocation and move before 'bootstrap'. (libmesode): Remove 'arguments'. (libstrophe): Likewise. * gnu/packages/microcom.scm (microcom): Likewise. * gnu/packages/networking.scm (libnet): Remove 'bootstrap. * gnu/packages/onc-rpc.scm (libnsl): Remove 'arguments'. * gnu/packages/package-management.scm (guix): Replace 'bootstrap. * gnu/packages/sawfish.scm (librep): Remove 'arguments'. * gnu/packages/version-control.scm (findnewest): Likewise. * gnu/packages/video.scm (liba52, handbrake, motion): Replace 'bootstrap. * gnu/packages/web.scm (fcgiwrap): Remove #:phases. (tidy): Replace 'bootstrap. (gumbo-parser): Remove #:phases. * gnu/packages/wget.scm (wget2): Replace 'bootstrap. * gnu/packages/wm.scm (i3lock-color): Remove #:phases. * gnu/packages/xdisorg.scm (xclip): Likewise. * gnu/packages/xml.scm (libxls): Replace 'bootstrap'. * gnu/packages/xorg.scm (xf86-video-freedreno) (xf86-video-intel): Remove #:phases. * gnu/packages/zile.scm (zile-on-guile): Replace 'bootstrap. Ludovic Courtès
2018-03-11utils: Add 'false-if-file-not-found'....* guix/build/utils.scm (false-if-file-not-found): New macro. Ludovic Courtès
2018-03-04git-download: Fetch only the required commit, if possible....* guix/build/git.scm (git-fetch): Fetch only the required commit, if possible. Danny Milosavljevic
2018-02-26build: Require Guile >= 2.0.13....* README, configure.ac, doc/guix.texi (Requirements): Increase minimum Guile version from 2.0.9 to 2.0.13. * config-daemon.ac: Remove use of 'GUIX_CHECK_UNBUFFERED_CBIP'. * m4/guix.m4 (GUIX_CHECK_UNBUFFERED_CBIP): Remove. * guix/build/download.scm (current-http-proxy): Remove. * guix/build/syscalls.scm (%libc-errno-pointer, errno): Remove. (syscall->procedure): Use #:return-errno unconditionally. * guix/hash.scm (open-sha256-input-port)[unbuffered]: Remove outdated comment. * guix/http-client.scm (when-guile<=2.0.5-or-otherwise-broken): Remove. <top level>: Remove 'when-guile<=2.0.5-or-otherwise-broken' block. * guix/scripts/substitute.scm (fetch): Remove 'guile-version>?' conditional. * tests/hash.scm (supports-unbuffered-cbip?): Remove. <top level>: Remove 'test-skip' call. Ludovic Courtès
2018-02-16Merge branch 'master' into core-updatesMark H Weaver
2018-02-15union: Wrap collisions with newlines....* guix/build/union.scm (union-build): Wrap collisions with newlines. Oleg Pykhalov
2018-02-09Merge branch 'master' into core-updatesMark H Weaver
2018-02-05emacs-build-system: Do not patch files containing NULs....This is a temporary workaround for <https://bugs.gnu.org/30116>, where 'substitute*' throws on files containing NUL characters. * guix/build/emacs-build-system.scm (patch-el-files): Filter out elisp files that contain NUL characters. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Maxim Cournoyer
2018-02-05emacs-build-system: Reinstate the check phase....* guix/build/emacs-build-system.scm (%standard-phases): Reinstate the check phase from the gnu-build-system. * guix/build-system/emacs.scm (emacs-build)[tests?]: But do not enable it by default. [parallel-tests?]: Add argument. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxim Cournoyer
2018-02-05emacs-build-system: Add set-emacs-load-path phase....This generalizes the mechanism by which the Emacs dependencies are made visible, so that any build phase can make use of them. * guix/build/emacs-build-system.scm (%legacy-install-suffix): New variable. (%install-suffix): Redefine in terms of %legacy-install-suffix. (set-emacs-load-path): Add new phase used for dependency resolution. (build): Remove ad-hoc dependency discovery mechanism. (emacs-input->el-directory): Add new procedure. (emacs-inputs-el-directories): Use it. (package-name-version->elpa-name-version): Fix typo. (%standard-phases): Include the new `set-emacs-load-path' phase. Refactor to make the ordering of the phases clearer. * guix/build/emacs-utils.scm (emacs-byte-compile-directory): Remove the optional `dependency-dirs' argument, which is now obsoleted by the `set-emacs-load-path' phase. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxim Cournoyer
2018-02-01Merge branch 'master' into core-updatesMarius Bakke
2018-01-28download: Fix return value of the url-fetch procedure....Fixes <https://bugs.gnu.org/30270>. Regression was introduced by commit 347fa4aebf. * guix/build/download.scm (url-fetch): Return `file' instead of #t upon success. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxim Cournoyer
2018-01-26Merge branch 'master' into core-updatesMark H Weaver
2018-01-26build-system/dub: Fix typo....* guix/build/dub-build-system.scm (grep, grep*): Correct ‘occurence’. Tobias Geerinckx-Rice
2018-01-19Merge branch 'master' into core-updatesMark H Weaver