summaryrefslogtreecommitdiff
path: root/guix/build
AgeCommit message (Expand)Author
2019-06-15Merge branch 'staging'Marius Bakke
2019-06-14build-system/gnu: Make 'first-subdirectory' deterministic....Fixes <https://bugs.gnu.org/35387>. Reported by Christopher Baines <mail@cbaines.net>. * guix/build/gnu-build-system.scm (first-subdirectory): Rewrite using 'scandir' so that the result is deterministic. Ludovic Courtès
2019-06-13build-system/haskell: Generate Setup.hs if needed....The default Setup.hs is boilerplate that is frequently left out of source packages. Several packages already add a phase to generate it, so moving this phase to the build system is just factoring out an existing pattern. See <https://github.com/phadej/time-compat/issues/4>. * guix/build/haskell-build-system.scm (generate-setuphs): New procedure. (%standard-phases): Add it after 'unpack'. * gnu/packages/haskell.scm (ghc-foundation, ghc-inline-c, ghc-inline-c-cpp, ghc-rio): Remove 'arguments'. Signed-off-by: Timothy Sample <samplet@ngyro.com> Robert Vollmert
2019-06-13build-system/haskell: Fix Haddock phase docstring....* guix/build/haskell-build-system.scm (haddock): Fix docstring. Signed-off-by: Timothy Sample <samplet@ngyro.com> Robert Vollmert
2019-06-13Merge branch 'master' into core-updatesLudovic Courtès
2019-06-11build-system/cargo: Don't copy source as an output....* guix/build-system/cargo.scm: (cargo-build)[build-expression->derivation]: Don't add "src" output. * guix/build/cargo-build-system.scm: (install-source): Delete it. (%standard-phases): Delete 'install-source. Signed-off-by: Chris Marusich <cmmarusich@gmail.com> Ivan Petkov
2019-06-11build-system/cargo: Use sources from package sources....* guix/build/cargo-build-system.scm (crate-src?): New procedure. (configure): Use the new procedure to expand crate tarballs in the vendor directory. Signed-off-by: Chris Marusich <cmmarusich@gmail.com> Ivan Petkov
2019-06-05syscalls: 'with-lock-file' catches ENOSYS....* guix/build/syscalls.scm (call-with-file-lock): Catch ENOSYS raised by 'lock-file'. Ludovic Courtès
2019-06-05syscalls: 'with-file-lock' expands to a call to 'call-with-file-lock'....* guix/build/syscalls.scm (call-with-file-lock): New procedure. (with-file-lock): Expand to a call to 'call-with-file-lock'. Ludovic Courtès
2019-06-05syscalls: Add 'with-file-lock' macro....* guix/scripts/offload.scm (lock-file, unlock-file, with-file-lock): Move to... * guix/build/syscalls.scm: ... here. Ludovic Courtès
2019-06-02build-system/guile: Display progress report as expected by (guix status)....* guix/build/guile-build-system.scm (report-build-progress): Use a format string suitable for (guix status). Ludovic Courtès
2019-06-02build-system/guile: Add #:not-compiled-file-regexp....* guix/build/guile-build-system.scm (build): Add #:not-compiled-file-regexp and honor it. * guix/build-system/guile.scm (guile-build): Likewise. (guile-cross-build): Likewise. Ludovic Courtès
2019-06-02build-system/guile: Improve reporting of 'guild compile' failures....* guix/build/guile-build-system.scm (invoke-each)[processes]: New variable. [wait-for-one-process]: Check PROCESSES and update it. [fork-and-run-command]: Update PROCESSES. Ludovic Courtès
2019-06-02compile: Adjust for Guile 3....* guix/build/compile.scm (%default-optimizations): Adjust to the new names in Guile 2.9.2. Ludovic Courtès
2019-05-25Merge branch 'staging' into core-updatesMarius Bakke
2019-05-13download: Support 'https_proxy'....* guix/build/download.scm (setup-http-tunnel): New procedure. (open-connection-for-uri): Honor the 'https_proxy' environment variable. 宋文武
2019-05-10build/cargo-utils: Remove "src-name" parameter....* gnu/packages/gnuzilla.scm (icecat)[arguments]<#:phases> [patch-cargo-checksums]: Delete "null-file" variable. * gnu/packages/rust.scm (%cargo-reference-project-file): Delete variable. * gnu/packages/rust.scm (rust-1.19): Remove reference to "%cargo-reference-project-file". * guix/build/cargo-utils.scm (generate-checksums): Remove "src-name" parameter. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> Ivan Petkov
2019-05-09syscalls: Add 'arp-network-interface?'....* guix/build/syscalls.scm (IFF_NOARP): New variable. (arp-network-interface?): New public procedure. Marius Bakke
2019-05-09Add (guix bzr-download)....* guix/bzr-download.scm, guix/build/bzr.scm, etc/snippets/scheme-mode/guix-bzr-reference: New files. * Makefile.am (MODULES): Add them. * etc/snippets/scheme-mode/guix-origin: Add "bzr-fetch" to the origin choices. Maxim Cournoyer
2019-05-05build: go-build-system: Follow-up to commit f42e4ebb56....This follows commit f42e4ebb56, which made it so that the unpack phase return value could be left unspecified. * guix/build/go-build-system.scm (unpack): Ensure that the value returned upon a successful completion of the phase is #t. Maxim Cournoyer
2019-05-05build: go-build-system: Follow-up commit....There was an extraneous pair of parens in commit 7e84d3eef7. Thanks for Mark Weaver for reporting the issue. * guix/build/go-build-system.scm (unpack): Remove the extraneous pair of parentheses surrounding the `display' function call. Maxim Cournoyer
2019-05-05build: go-build-system: Ensure uniform unpacking directory....Depending on whether the source is a directory or an archive, we strip the source directory or preserve it, respectively. This change makes it so that whether the type of the source, it is unpacked at the expected location given by the IMPORT-PATH of the Go build system. * guix/build/go-build-system.scm: Add the (ice-9 ftw) module. (unpack): Add inner procedure to maybe strip the top level directory of an archive, document it and use it. Maxim Cournoyer
2019-05-05build: go-build-system: Use WHEN for side-effect conditionals....* guix/build/go-build-system.scm (unpack): Replace single branch `if' by `when'. Maxim Cournoyer
2019-05-05build: go-build-system: Re-ident....* guix/build/go-build-system.scm (unpack): Fix indentation. Maxim Cournoyer
2019-05-01Merge branch 'master' into core-updatesMarius Bakke
2019-04-30guix: Fix another typo in another docstring....* guix/build/clojure-utils.scm (include-list\exclude-list)<docstring>: Fix typo. Tobias Geerinckx-Rice
2019-04-30guix: Fix typo in docstring....* guix/build/syscalls.scm (device-in-use?)<docstring>: Fix typo. Tobias Geerinckx-Rice
2019-04-29file-systems: Support the 'no-atime' flag....* guix/build/syscalls.scm (MS_NOATIME): New variable. * gnu/build/file-systems.scm (mount-flags->bit-mask): Support it. * doc/guix.texi (File Systems): Document it and add cross-references to the relevant documentation. Co-authored-by: Ludovic Courtès <ludo@gnu.org> rendaw
2019-04-28Merge branch 'staging'Ludovic Courtès
2019-04-27self: Rebuild translated manuals....* guix/self.scm (info-manual): Run po4a and related commands to generate translated texi files before building translated manuals. * guix/build/po.scm: New file. * Makefile.am (MODULES_NOT_COMPILED): Add it. Julien Lepiller
2019-04-25gnu, guix: Yearly ritual purging of the filesystems....* gnu/packages/android.scm (android-ext4-utils)[synopsis]: Fix ‘file system’ spelling. * gnu/packages/disk.scm (rmlint)[synopsis, description]: Likewise. * gnu/packages/golang.scm (go-github-com-kr-fs)[synopsis, description]: Likewise & edit for grammar. * gnu/packages/ipfs.scm (gx, go-ipfs)[description]: Likewise. * /gnu/packages/java.scm (java-commons-vfs)[synopsis]: Likewise. * gnu/packages/linux.scm (fuseiso)[description]: Likewise. (genext2fs)[synopsis, description]: Likewise. * gnu/packages/package-management.scm (libostree)[description]: Likewise. * gnu/packages/python-xyz.scm (python-requests-file)[description]: Likewise & mark up. * gnu/packages/rails.scm (ruby-with-advisory-lock)[description]: Likewise. * gnu/packages/ruby.scm (ruby-rerun)[description]: Likewise. * guix/build/go-build-system.scm (setup-go-environment)<docstring>: Likewise. * guix/store/deduplication.scm (get-temp-link)<docstring>: Likewise. Tobias Geerinckx-Rice
2019-04-23Merge branch 'master' into stagingMarius Bakke
2019-04-18guile-build-system: Support building in parallel....* guix/build/guile-build-system.scm (build): Use invoke-each, instead of for-each, to use multiple cores if available. (invoke-each, report-build-process): New procedures. Christopher Baines
2019-04-18build-system/python: Move the check phase after the install phase....A reproducibility problem was discovered while packaging python-pygithub where the bytecode produced by running the tests would interfere with the result of the install phase byte compilation. Moving the check phase after the install phase solves the problem. * guix/build/python-build-system.scm (%standard-phases): Add comment, move the check phase after the install phase. Maxim Cournoyer
2019-04-17Merge branch 'master' into stagingMarius Bakke
2019-04-12build-system/linux-module: Configure module like the kernel....* guix/build/linux-module-build-system.scm (configure): New procedure. (%standard-phases): Add "configure" phase. Danny Milosavljevic
2019-04-12build-system/linux-module: Support module source versioning....* guix/build-system/linux-module.scm (make-linux-module-builder) [native-inputs]: Add linux. [arguments]<#:phases>[install]: Install "System.map" and "Module.symvers". * guix/build/linux-module-build-system.scm (configure): Delete procedure. (%standard-phases): Delete "configure" phase. Danny Milosavljevic
2019-04-11Add (guix build-system linux-module)....* guix/build/linux-module-build-system.scm: New file. * guix/build-system/linux-module.scm: New file. * doc/guix.texi (Build Systems): Document it. * Makefile.am (MODULES): Add them. Danny Milosavljevic
2019-04-09build-system/cargo: refactor phases to successfully build...* guix/build-system/cargo.scm (%cargo-build-system-modules): Add (json parser). (cargo-build): [vendor-dir]: Define flag and pass it to builder code. [cargo-test-flags]: Likewise. [skip-build?]: Likewise. * guix/build/cargo-build/system.scm (#:use-module): use (json parser). (package-name->crate-name): Delete it. (manifest-targets): Add it. (has-executable-target?): Add it. (configure): Add #:vendor-dir name and use it. Don't touch Cargo.toml. Don't symlink to duplicate inputs. Remove useless registry line from cargo config. Define RUSTFLAGS to lift lint restrictions. (build): Add #:skip-build? flag and use it. (check): Likewise. Add #:cargo-test-flags and pass it to cargo. (install): Factor source logic to install-source. Define #:skip-build? flag and use it. Only install if executable targets are present. (install-source): Copy entire crate directory not just src. [generate-checksums] pass dummy file for unused second argument. (%standard-phases): Add install-source phase. Signed-off-by: Chris Marusich <cmmarusich@gmail.com> Ivan Petkov
2019-04-01Merge branch 'master' into stagingMarius Bakke
2019-03-28Revert "build-system/ruby: Use invoke."...This reverts commit 0244952c11c0409597fce5c39dfbcafdfd2ea651. We prefer 'invoke', but the custom error handling works better with the code as-is. Efraim Flashner
2019-03-28build-system/ruby: Use invoke....* guix/build/ruby-build-system.scm (install): Use invoke. Efraim Flashner
2019-03-23Merge branch 'staging' into core-updatesMarius Bakke
2019-03-23guix: dune-build-system: Add a package parameter....* guix/build-system/dune.scm: Add a package parameter. * guix/build/dune.scm (build, test, install): Use it. * doc/guix.texi: Document it. Julien Lepiller
2019-03-23Merge branch 'master' into stagingMarius Bakke
2019-03-23build: Add rakudo-build-system....* guix/build-system/rakudo.scm, guix/build/rakudo-build-system.scm: New files. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build System): Document it. Efraim Flashner
2019-03-21Merge branch 'master' into stagingMarius Bakke
2019-03-14build-system/go: Build with a filesystem union of Go dependencies....This basically changes (guix build-system go) so that instead of looking up its dependencies in a list of directories in $GOPATH, all the Go dependencies are symlinked into a single directory. Fixes <https://bugs.gnu.org/33620>. * guix/build/go-build-system.scm (setup-go-environment): New variable. (setup-environment, install-source): Remove variables. (unpack): Unpack the source relative to $GOPATH. (install): Do not install the compiled objects in the 'pkg' directory. Install the source code in this phase, and only install the source of the package named by IMPORT-PATH. * doc/guix.texi (Build Systems): Adjust accordingly. * gnu/packages/docker.scm (docker): Import (guix build union) on the build side and adjust to build phase name changes in (guix build-system go). * gnu/packages/shellutils.scm (direnv): Likewise. * gnu/packages/databases.scm (mongo-tools)[arguments]: Set '#:install-source #f'. * gnu/packages/music.scm (demlo)[arguments]: Move the 'install-scripts' phase after the 'install' phase. Leo Famulari
2019-03-10build-system/gnu: Copy license files to all the outputs....Fixes <https://bugs.gnu.org/34702>. Reported by Leo Famulari <leo@famulari.name>. * guix/build/gnu-build-system.scm (install-license-files)[copy-to-directories]: New procedure. Call it to copy license files to all the outputs. Ludovic Courtès
2019-03-10build-system/gnu: Always look for license files in the source tree....Fixes <https://bugs.gnu.org/31103>. * guix/build/gnu-build-system.scm (install-license-files): Add #:out-of-source?. [find-source-directory]: New procedure. Use it to Determine the source directory and look for license files there. Ludovic Courtès