summaryrefslogtreecommitdiff
path: root/guix/build
AgeCommit message (Expand)Author
2019-03-01Merge branch 'staging' into core-updatesMarius Bakke
2019-03-01Merge branch 'master' into stagingMarius Bakke
2019-03-01gnu: rust: Factor out "cargo-utils" from "cargo-build-system"....* guix/build/cargo-utils.scm: New file. * Makefile.am (MODULES): Add it. * guix/build-system/cargo.scm (%cargo-utils-modules): New variable. (%cargo-build-system-modules): Use it. * guix/build/cargo-build-system.scm (file-sha256, generate-checksums): Move from here... * guix/build/cargo-utils.scm: ...to here. * gnu/packages/rust.scm (rust-1.19.0)[arguments]<#:imported-modules>: Use %cargo-utils-modules. <#:phases>[patch-cargo-checksums]: Use (guix build cargo-utils). * gnu/packages/gnuzilla.scm (icecat): [arguments]<#:imported-modules>: Use %cargo-utils-modules. <#phases>[patch-cargo-checksums]: import (guix build cargo-utils). Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> Ivan Petkov
2019-02-20Merge branch 'staging' into core-updatesMarius Bakke
2019-02-14guix: ruby-build-system: Fix removal of extension related files....This functionality was broken, possibly to do with the vendor related changes in the ruby build system. These changes restore the file removal functionality at the end of the install phase. * guix/build/ruby-build-system.scm (install): Fix removal of files related to native extensions. Christopher Baines
2019-02-14guix: ruby-build-system: Do gem install --verbose....This is helpful as it displays more information about what gem install is doing, especially for packages with native extensions. * guix/build/ruby-build-system.scm (install): Add --verbose to gem install command. Christopher Baines
2019-02-14gnu: ruby-build-system: Change extract-gemspec to always return #t....* guix/build/ruby-build-system.scm (extract-gemspec): Return #t right at the end, rather than returning #<unspecified> when not handling a gem archive. Christopher Baines
2019-02-09Merge branch 'master' into core-updatesMarius Bakke
2019-02-09Merge branch 'staging'Ludovic Courtès
2019-02-08guix: Add wrap-script....* guix/build/utils.scm (wrap-script): New procedure. (&wrap-error): New condition. (wrap-error?, wrap-error-program, wrap-error-type): New procedures. * tests/build-utils.scm ("wrap-script, simple case", "wrap-script, with encoding declaration", "wrap-script, raises condition"): New tests. Ricardo Wurmus
2019-02-06Merge branch 'master' into core-updatesRicardo Wurmus
2019-02-04gnu: dune: Update to 1.6.3....* gnu/packages/ocaml.scm (dune): Update to 1.6.3. * guix/build/dune-build-system.scm (build): Use --libdir. Signed-off-by: Julien Lepiller <julien@lepiller.eu> Gabriel Hondet
2019-01-29build-system/gnu: Report invocation errors in a human-friendly way....* guix/build/utils.scm (report-invoke-error): New procedure. * guix/build/gnu-build-system.scm (gnu-build): Guard against 'invoke-error?'. Ludovic Courtès
2019-01-29utils: Switch to the new 'setvbuf' API....* guix/build/utils.scm (setvbuf) [(and guile-2 (not guile-2.2))]: New procedure. (remove-store-references): Use the 2.2 'setvbuf' API style. * guix/build/gnu-build-system.scm (gnu-build): Likewise. Ludovic Courtès
2019-01-26download: Ask not to use TLS 1.3....Works around <https://bugs.gnu.org/34102>. Reported by Marius Bakke <mbakke@fastmail.com>. * guix/build/download.scm (tls-wrap): Add "-VERS-TLS1.3" to the priority string when (gnutls-version) is not prefixed by "3.5". Ludovic Courtès
2019-01-22compile: Let compiler warnings through during the load phase....Previous warnings and errors such as those raised by (guix records) would not be displayed during the load phase. * guix/build/compile.scm (load-files): Remove 'parameterize' around 'resolve-interface' call. (compile-files)[build]: Move 'with-fluids' for *CURRENT-WARNING-PREFIX* to... <top level>: ... here. Ludovic Courtès
2019-01-20profiles: Allow a profile to be added as an entry of another profile....* guix/build/profiles.scm (build-etc/profile): When 'OUTPUT/etc/profile' already exists, delete it first. (build-profile): Likewise for 'OUTPUT/manifest'. * tests/profiles.scm ("profile in profile"): New test. Ludovic Courtès
2019-01-17syscalls: 'device-in-use?' returns #f upon EINVAL....This mirrors the behavior of the 'fdisk_device_is_used' function of util-linux. * guix/build/syscalls.scm (device-in-use?): Return #f upon EINVAL. Ludovic Courtès
2019-01-17syscalls: 'device-in-use?' does not create a port....* guix/build/syscalls.scm (device-in-use?): Use 'open-fdes' rather than 'open-file'. Ludovic Courtès
2019-01-17build: syscalls: Add device-in-use?....This new procedure uses BLKRRPART to determine whether or not a device is busy. It is useful when a device does not appear as mounted but is maybe used by the kernel. This is the case with overlayfs lowerdir backend device for example. * guix/build/syscalls.scm (device-in-use?): New exported procedure. Mathieu Othacehe
2019-01-10build-system: texlive: Do not hide build output....* guix/build/texlive-build-system.scm (compile-with-latex): Use "nonstopmode" instead of "batchmode". Ricardo Wurmus
2019-01-10build-system: texlive: Do not truncate lines....* guix/build/texlive-build-system.scm (configure): Set environment variables to prevent build output lines from being truncated. Ricardo Wurmus
2019-01-09Remove most uses of the _IO*F constants....These constants, for use with 'setvbuf', were deprecated in Guile 2.2 and disappeared in Guile 3.0. Here we keep these constants in build-side code where removing them is not feasible. * guix/build/download-nar.scm (download-nar): Adjust 'setvbuf' calls to the Guile 2.2+ API. * guix/build/download.scm (open-socket-for-uri): Likewise. (open-connection-for-uri, url-fetch): Likewise. * guix/build/make-bootstrap.scm (make-stripped-libc): Likewise. * guix/build/union.scm (setvbuf) [guile-2.0]: New conditional wrapper. (union-build): Adjust to new API. * guix/ftp-client.scm (ftp-open, ftp-list, ftp-retr): Likewise. * guix/http-client.scm (http-fetch): Likewise. * guix/inferior.scm (proxy): Likewise. * guix/scripts/substitute.scm (fetch, http-multiple-get): Likewise. * guix/self.scm (compiled-modules): Likewise. * guix/ssh.scm (remote-daemon-channel, store-import-channel) (store-export-channel): Likewise. * guix/ui.scm (initialize-guix): Likewise. * tests/publish.scm (http-get-port): Likewise. * guix/store.scm (%newlines): Adjust comment. Ludovic Courtès
2019-01-09download: Remove Guile 2.0 workaround....* guix/build/download.scm: Remove Guile 2.0 workaround. Ludovic Courtès
2019-01-09maint: Remove 'cond-expand' forms for Guile 2.0....Note: Leave 'cond-expand' forms used in the build-side modules that can run on %BOOTSTRAP-GUILE, which is currently Guile 2.0. * guix/build/compile.scm: Move 'use-modules' clause from 'cond-expand' to 'define-module' form. (%default-optimizations): Remove 'cond-expand'. * guix/build/download.scm (tls-wrap): Remove 'cond-expand'. * guix/build/syscalls.scm: Remove 'cond-expand' form around '%set-automatic-finalization-enabled?!' and 'without-automatic-finalization'. * guix/inferior.scm (port->inferior): Remove 'cond-expand'. * guix/scripts/pack.scm (wrapped-package)[build]: Remove 'cond-expand'. * guix/status.scm (build-event-output-port): Remove 'cond-expand'. * guix/store.scm (open-inet-socket): Remove 'cond-expand'. * guix/ui.scm (install-locale): Remove 'cond-expand'. * tests/status.scm ("current-build-output-port, UTF-8 + garbage"): Remove 'cond-expand'. * tests/store.scm ("current-build-output-port, UTF-8 + garbage"): Remove 'cond-expand'. Ludovic Courtès
2019-01-07Remove (guix build pull)....This module had been unused since commit 5f93d97005897c2d859f0be1bdff34c88467ec61 (Oct. 2017). * guix/build/pull.scm: Delete. * Makefile.am (MODULES): Remove. Ludovic Courtès
2019-01-06git-download: Use 'invoke'....* guix/build/git.scm (git-fetch): Use 'invoke' instead of 'system*' for "git submodule update". Ludovic Courtès
2019-01-06git-download: 'git-fetch' really returns #f upon error....This allows the fallback code in (guix git-download) to actually run. Regression introduced in commit 329dabe13bf98b899b907b45565434c5140804f5. Fixes <https://bugs.gnu.org/33911>. Reported by Björn Höfling <bjoern.hoefling@bjoernhoefling.de>. * guix/build/git.scm (git-fetch): Guard against 'invoke-error?' and really return #f upon failure. Ludovic Courtès
2018-12-20Merge branch 'master' into core-updatesLudovic Courtès
2018-12-18build: Add dune-build-system....* guix/build/dune-build-system.scm, guix/build-system/dune.scm: New files. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document dune-build-system. * guix/build-system/ocaml.scm (lower, default-findlib, default-ocaml): Export them. (package-with-explicit-ocaml): Also transform packages built with dune-build-system. Julien Lepiller
2018-12-11Merge branch 'master' into core-updatesMarius Bakke
2018-12-03hg-fetch: Remove .hg directories of sub-repositories....* guix/build/hg.scm (hg-fetch): Remove all .hg directories recursively. Björn Höfling
2018-11-25build-system: python: Do not double wrap executables....* guix/build/python-build-system.scm (wrap): Only wrap executables that have not already been wrapped. * guix/build/utils.scm (wrapper?): New function. Arun Isaac
2018-11-20Merge branch 'master' into core-updatesMarius Bakke
2018-11-19build-system: Add 'clojure-build-system'....* guix/build-system/clojure.scm, guix/build/clojure-build-system.scm: New files. * guix/build/clojure-utils.scm (@*, @@*): New macros. (%source-dirs, %test-dirs, %compile-dir, %main-class, %omit-source?, %aot-include, %aot-exclude, %tests?, %test-include, %test-exclude, %clojure-regex): New variables. (package-name->jar-names, canonicalize-relative-path, find-files*, file-sans-extension, relative-path->clojure-lib-string, find-clojure-libs, compiled-from?, include-list\exclude-list, eval-with-clojure, create-jar): New procedures. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document 'clojure-build-system'. Alex Vong
2018-11-19guix: Add clojure-utils....* guix/build/clojure-utils.scm: New file. * gnu/packages/lisp.scm (clojure)[arguments]: Use it. * Makefile.am (MODULES): Add it. Alex Vong
2018-11-18build-system/ocaml: Use invoke and return #t....* guix/build/ocaml-build-system.scm (configure, build, check, install) (prepare-install): Use invoke and return #t. Julien Lepiller
2018-11-14Merge branch 'master' into core-updatesMarius Bakke
2018-11-13build-system/dub: Let all phases return #T unconditionally....* guix/build/dub-build-system.scm (configure, build, check): Return #T unconditionally; use INVOKE. Ricardo Wurmus
2018-11-12build-system/haskell: Fix register phase....This is a follow-up to commit a7e231a2a3edbd6a70949432c1ff434d87f625ff. Reported by Marius Bakke <mbakke@fastmail.com>. * guix/build/haskell-build-system.scm (register): Use "when" instead of "unless". Ricardo Wurmus
2018-11-12build-system/go: Plan removal of the pkg folder for go-1.11 onward....* guix/build/go-build-system.scm (install): New comment. Pierre Neidhardt
2018-11-07Merge branch 'master' into core-updatesMarius Bakke
2018-11-06store-copy: Canonicalize the mtime and permissions of the store copy....Fixes a bug whereby directories in the output of 'guix pack -f tarball' would not be read-only. * guix/build/store-copy.scm (reset-permissions): New procedure. (populate-store): Pass #:keep-mtime? #t to 'copy-recursively'. Call 'reset-permissions'. * tests/pack.scm ("self-contained-tarball"): In CHECK, define 'canonical?' and use it to check that every file has an mtime of 1 and is read-only. * tests/guix-pack.sh: Invoke "chmod -Rf +w" before "rm -rf" in trap. Ludovic Courtès
2018-11-05Merge branch 'master' into core-updatesMarius Bakke
2018-10-28git-download: Print a message when falling back to a full fetch....Otherwise the user might believe that git-fetch stalled, observing the lack of output following a 'fatal' git error message (see: https://debbugs.gnu.org/33100). * guix/build/git.scm (git-fetch): Print message when falling back to a full fetch. Maxim Cournoyer
2018-10-21Merge branch 'core-updates' into core-updates-nextJan Nieuwenhuizen
2018-10-19java-utils: Use 'strip-store-file-name'....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> Alex Vong
2018-10-19build-system/haskell: Use 'strip-store-file-name'....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> Alex Vong
2018-10-05Merge branch 'master' into core-updatesMarius Bakke
2018-10-02build-system/asdf: Properly handle dependency specification casing....* 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> Andy Patterson