summaryrefslogtreecommitdiff
path: root/guix/build
AgeCommit message (Expand)Author
2020-05-18build: minify-build-system: Fail to install empty files....* guix/build/minify-build-system.scm (install): Produce an error if the minified file is zero bytes. Efraim Flashner
2020-05-15syscalls: Adjust 'sockaddr-in', 'sockaddr-in6' structs for the Hurd....* guix/build/syscalls.scm (sockaddr-in,sockaddr-in6): Rename to ... (sockaddr-in/linux, sockaddr-in6/linux): ... this. Rename introduced bindings as well. (write-socket-address!/linux,read-socket-address/linux): Rename from (write-socket-address!, read-socket-address): ... new switches between those and ... (write-socket-address!/hurd, read-socket-address/hurd): ... these new function. Jan (janneke) Nieuwenhuizen
2020-05-14syscalls: Add 'getxattr'....* guix/build/syscalls.scm (getxattr): New procedure. * tests/syscalls.scm ("getxattr, setxattr"): Test it, together with setxattr. Jan (janneke) Nieuwenhuizen
2020-05-13compile: Reduce optimization levels for gnu/services and gnu/packages....* guix/build/compile.scm (optimization-options)[strip-option] [override-option]: New procedures. Add case for "gnu/services". Change "gnu/packages" to '-O0 -Opartial-eval'. Ludovic Courtès
2020-05-13syscalls: Add 'setxattr'....* guix/build/syscalls.scm (setxattr): New procedure. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Jan (janneke) Nieuwenhuizen
2020-05-08Merge branch 'core-updates'Marius Bakke
2020-05-07build-system/emacs: Hide the 'delete' binding from (guix build utils)....This gets rid of a warning from 'compute-guix-derivation.drv' when running on Guile 3.0. (guix build emacs-build-system) includes (srfi srfi-1) anyway. * guix/build/emacs-build-system.scm: Do not import 'delete' from (guix build utils). Marius Bakke
2020-05-07syscalls: Add ioctl flags for the Hurd....Use #include <stdio.h> #include <net/if.h> #include <hurd/ioctl.h> int main () { printf ("SIOCSIFFLAGS #x%x\n", SIOCSIFFLAGS); printf ("SIOCGIFADDR #x%x\n", SIOCGIFADDR); printf ("SIOCSIFADDR #x%x\n", SIOCSIFADDR); printf ("SIOCGIFNETMASK #x%x\n", SIOCGIFNETMASK); printf ("SIOCSIFNETMASK #x%x\n", SIOCSIFNETMASK); #if 0 printf ("SIOCADDRT #x%x\n", SIOCADDRT); printf ("SIOCDELRT #x%x\n", SIOCDELRT); #endif } to fill in some blanks. Adding and removing route apparently not supported. * guix/build/syscalls.scm (SIOCSIFFLAGS SIOCGIFADDR, SIOCSIFADDR, SIOCGIFNETMASK, SIOCSIFNETMASK): Jan (janneke) Nieuwenhuizen
2020-05-06Merge branch 'master' into core-updatesMarius Bakke
2020-05-05syscalls: 'define-c-struct' supports cross-compilation....Reported by Jan (janneke) Nieuwenhuizen <janneke@gnu.org>. Before that, we'd always use the 'sizeof' and 'alignof' value obtained from the host at macro-expansion time. * guix/build/syscalls.scm (sizeof*, alignof*): When the target word size differs from the host word size, emit a call to 'sizeof'/'alignof'. Ludovic Courtès
2020-05-05Merge branch 'master' into core-updatesMarius Bakke
2020-05-05build: store-copy: Export file-size procedure....* guix/build/store-copy.scm (file-size): Export it. Mathieu Othacehe
2020-04-24Merge branch 'master' into core-updatesMarius Bakke
2020-04-23compile: Pre-load the compiler outside 'with-target'....* guix/build/compile.scm (compile-files): Move call to 'compile' before 'with-target'. Failing to do that, if the target has a different word size than the host, the first call to 'compile-file' fails with: ice-9/eval.scm:293:34: In procedure load-thunk-from-memory: ELF file does not have native word size while attempting loading 'language/spec.go'. Ludovic Courtès
2020-04-23Merge branch 'master' into core-updates... Conflicts: etc/news.scm gnu/local.mk gnu/packages/bootloaders.scm gnu/packages/linphone.scm gnu/packages/linux.scm gnu/packages/tls.scm gnu/system.scm Marius Bakke
2020-04-20syscalls: Fix Linux detection in 'readdir*'....* guix/build/syscalls.scm (readdir*): Fix Linux detection for `arm-unknown-linux-gnueabihf'. Julien Lepiller
2020-04-19Merge branch 'master' into core-updatesMarius Bakke
2020-04-16syscalls: 'readdir*' chooses between the Linux and Hurd code at run time....Partly fixes <https://bugs.gnu.org/40574>. Reported by Jan Nieuwenhuizen <janneke@gnu.org>. Previously, we'd choose at expansion time whether to use the Hurd or the Linux variant, taking the cross-compilation target into account. This would lead to the wrong decision when (guix build syscalls) is evaluated while we're cross-compiling to GNU/Hurd. This is a followup to 1ab9e483391f8b62b873833ea71cb0074efa03e7. * guix/build/syscalls.scm (define-generic-identifier) (read-dirent-header, %struct-dirent-header, sizeof-dirent-header): Remove. (readdir*): Rename to... (readdir-procedure): ... this, and add parameters. (readdir*): Define as a call to 'readdir-procedure' as a function of %HOST-TYPE. Ludovic Courtès
2020-04-13Merge branch 'master' into core-updatesMarius Bakke
2020-04-12build: julia-build-system: Update for new Julia version....* guix/build/julia-build-system.scm (generate-load-path): Delete function. (install): Don't set JULIA_LOAD_PATH. (precompile): Set SOURCE_DATE_EPOCH. Update calculating the JULIA_LOAD_PATH. Adjust the 'invoke-julia' command. (check): Set SOURCE_DATE_EPOCH. Adjust JULIA_LOAD_PATH. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> nixo
2020-04-08Merge branch 'master' into core-updates... Conflicts: etc/news.scm gnu/local.mk gnu/packages/check.scm gnu/packages/cross-base.scm gnu/packages/gimp.scm gnu/packages/java.scm gnu/packages/mail.scm gnu/packages/sdl.scm gnu/packages/texinfo.scm gnu/packages/tls.scm gnu/packages/version-control.scm Marius Bakke
2020-04-08compile: Run the load phase within 'with-target'....* guix/build/compile.scm (compile-files)[build]: Remove 'with-target'. Wrap body in 'with-target'. Ludovic Courtès
2020-04-02bournish: Prevent inlining of run-time support procedures....On Guile 3, those procedures could be inlined, leading to unbound-variable errors: scheme@(guile-user)> ,bournish Welcome to Bournish, a minimal Bourne-like shell! To switch back, type `,L scheme'. bournish@(guile-user)> ls ice-9/boot-9.scm:1669:16: In procedure raise-exception: Unbound variable: ls-command-implementation Reported by Ricardo Wurmus. * guix/build/bournish.scm (define-command-runtime): New macro. (ls-command-implementation, wc-command-implementation) (wc-l-command-implementation, wc-c-command-implementation): Use it instead of 'define'. Ludovic Courtès
2020-03-27Merge branch 'master' into core-updates... Conflicts: gnu/packages/icu4c.scm gnu/packages/man.scm gnu/packages/python-xyz.scm guix/scripts/environment.scm guix/scripts/pack.scm guix/scripts/package.scm guix/scripts/pull.scm guix/store.scm Marius Bakke
2020-03-22build: emacs-utils: Add an option to select scoping for batch eval....In Emacs 27, --eval now evaluates using lexical scoping. This change adds an option to select dynamic scoping, by using a workaround proposed in <https://bugs.gnu.org/39823>. * guix/build/emacs-utils.scm (emacs-batch-eval): Add a DYNAMIC? keyword argument. Wrap the EXPR with a call to EVAL that makes use of the argument to select the scoping mode. (emacs-generate-autoloads): Use it. Maxim Cournoyer
2020-03-22build-system: linux-module: Fix cross compilation....* guix/build-system/linux-module.scm (default-kmod, default-gcc): Delete procedures. (system->arch): New procedure. (make-linux-module-builder)[native-inputs]: Move linux... [inputs]: ...to here. (linux-module-build-cross): New procedure. (linux-module-build): Add TARGET. Pass TARGET and ARCH to build side. (lower): Allow cross-compilation. Move "linux" and "linux-module-builder" to host-inputs. Add target-inputs. Call linux-module-build-cross if TARGET is set, linux-module-build otherwise. * guix/build/linux-module-build-system.scm (configure): Add ARCH argument. (linux-module-build): Adjust comment. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> Mathieu Othacehe
2020-03-22syscalls: 'with-file-lock' re-grabs lock when reentering its dynamic extent....* guix/build/syscalls.scm (call-with-file-lock) (call-with-file-lock/no-wait): Initialize PORT in the 'dynamic-wind' "in" handler. This allows us to re-enter a captured continuation and have the lock grabbed anew. Ludovic Courtès
2020-03-22download: Delete the output file upon failure....This allows ENOSPC conditions to be properly reported as such rather than as a hash mismatch due to the availability of a truncated file. Fixes <https://bugs.gnu.org/39993>. Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>. * guix/build/download.scm (url-fetch): In the failure case, delete FILE. Ludovic Courtès
2020-03-14Merge branch 'master' into core-updatesMarius Bakke
2020-03-11download: Remove (web http) workarounds no longer relevant....* guix/build/download.scm <top level>: Remove workarounds for <https://bugs.gnu.org/23421> and for <https://lists.gnu.org/archive/html/guix-devel/2017-11/msg00070.html>. Ludovic Courtès
2020-03-04Merge branch 'master' into core-updatesMarius Bakke
2020-02-28build-system: copy-build-system: Keep symlinks symbolic....guix/build/copy-build-system.scm (install)[install-file]: Read symlinks as is done in install-simple through copy-recursively. Signed-off-by: Pierre Neidhardt <mail@ambrevar.xyz> Leo Prikler
2020-02-27emacs-build-system: Byte compile the autoload files....* guix/build/emacs-build-system.scm (enable-autoloads-compilation) (validate-compiled-autoloads): Add procedures. (%standard-phases): Register the new procedures. * gnu/packages/aux-files/emacs/guix-emacs.el (guix-emacs-find-autoloads): Remove duplicates in the list of autoload files found. * guix/build/emacs-utils.scm (expr->string): Add procedure. (emacs-batch-eval, emacs-batch-edit-file): Use it. Maxim Cournoyer
2020-02-25build-system/linux-module: Disable depmod....* guix/build/linux-module-build-system.scm (install): Disable depmod. Danny Milosavljevic
2020-02-25guix: node-build-system: Do not symlink /bin....* guix/build/node-build-system.scm (install): Do not add a symlink for /bin. Julien Lepiller
2020-02-21build-system: Add copy-build-system....* guix/build-system/copy.scm: New file. * guix/build/copy-build-system.scm: New file. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document 'copy-build-system'. Pierre Neidhardt
2020-02-17Add (guix build gnu-bootstrap)....* guix/build/gnu-bootstrap.scm: New file. * Makefile.am (MODULES): Add it. Timothy Sample
2020-02-17utils: Change 'patch-shebang' to not try to patch Rust source files....* guix/build/utils.scm (patch-shebang): Match only absolute paths. Danny Milosavljevic
2020-02-16build: gnu-build-system: Adjust NOCONFIGURE variable....This ia a follow-up to 481a0f1a7ceac666a011b28324220584ead07698. * guix/build/gnu-build-system.scm (bootstrap): Set NOCONFIGURE for all bootstrap scripts. Clean up variable after use. Efraim Flashner
2020-02-16build-system/gnu: Don't try executing directories in bootstrap phase....* guix/build/gnu-build-system.scm: (bootstrap): Change the file-exists? procedure to one that excludes directories, so that we do not mistake it for a script. For example if the source includes a bootstrap/ directory. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley
2020-02-16build: gnu-build-system: Don't run configure during bootstrap....* guix/build/gnu-build-system.scm (bootstrap): Add NOCONFIGURE environment variable before running bootstrap scripts. Efraim Flashner
2020-02-14Merge branch 'master' into core-updatesMarius Bakke
2020-02-11build: go-build-system: Disable Go module support....This allows for upgrading the Go compiler without overhauling go-build-system first. * guix/build/go-build-system.scm (setup-go-environment): Set GO111MODULE to off. Signed-off-by: Alex Griffin <a@ajgrf.com> Jack Hill
2020-02-03Merge branch 'staging' into core-updatesMarius Bakke
2020-01-30guix: Fix missing export for make-desktop-entry-file....* guix/build/utils.scm: Export make-desktop-entry-file. Pierre Neidhardt
2020-01-29Merge branch 'master' into stagingMarius Bakke
2020-01-28guix: qt-build-system: Add phase `check-setup`....* guix/build/qt-build-system.scm (check-setup): New function. (%standard-phases): Add as new phase `check-setup before `check. * doc/guix.texi (Build System)[qt-build-system]: Describe the new phase. Hartmut Goebel
2020-01-27build: cargo-build-system: Add pkg-config environment variables....* guix/build/cargo-build-system.scm (configure): Add environment variables to use system libgit2 and libssh2. * gnu/packages/crates-io.scm (rust-libgit2-sys-0.10, rust-libssh2-sys-0.2)[arguments]: Remove LIBGIT2 and LIBSSH2 environment variable settings. * gnu/packages/rust-apps.scm (tokei)[arguments]: Same. Efraim Flashner
2020-01-27build: cargo-build-system: Allow patched crates....* guix/build/cargo-build-system.scm (crate-src?): Don't check for a gzipped tarball, just make sure it's not a directory. Efraim Flashner
2020-01-26build-system/cmake: Specify C++ compiler when cross-compiling....* guix/build/cmake-build-system.scm (configure)[args]: Add "-DCMAKE_CXX_COMPILER" when cross-compiling. Marius Bakke