summaryrefslogtreecommitdiff
path: root/guix/build
AgeCommit message (Expand)Author
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-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-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-23compile: Remove incorrect exports....This is a followup to fed36328129def5f10b1d1f3e4ea8886916fd22a. * guix/build/compile.scm: Remove exports of '%lightweight-optimizations' and '%default-optimizations'. * guix/self.scm: Remove unused (guix build compile) module. Ludovic Courtès
2020-01-19syscalls: Pass the right 'throw' arguments in 'call-with-file-lock/no-wait'....Reported by Matt Wette <matt.wette@gmail.com> in <https://bugs.gnu.org/39194>. * guix/build/syscalls.scm (call-with-file-lock/no-wait): When re-throwing, pass KEY in addition to ARGS. Ludovic Courtès
2020-01-15clojure-utils: Avoid use of '@@'....* guix/build/clojure-utils.scm (%doc-regex): Avoid @@, which doesn't work on Guile 3. (file-sans-extension): Likewise. Ludovic Courtès
2020-01-12build: asdf-build-system: Improve reproducibility....* guix/build/asdf-build-system.scm (copy-files-to-output): Reset timestamps of source files before compiling. Guillaume Le Vaillant
2020-01-08build: asdf-build-system: Make sbcl-* Lisp packages reproducible....The '*.fasl' files produced by SBCL contain the mtime of the source file (see commit 72843d7ce32bd615f64a0326cf891658b5724ead of SBCL's code repository). As asdf-build-system makes a copy of the source files before compiling them, we must set the mtime of these copies to the same date as the originals for the build to be reproducible. * guix/build/asdf-build-system.scm (copy-files-to-output): Keep the modification time of the original source files. Guillaume Le Vaillant
2020-01-07download, git: Refer to the right module in 'module-use!' call....This fixes a regression introduced in 6a7c4636d4dec47eefa03c95da5a1315bd0e0413. * guix/build/download.scm (load-gnutls): Call 'resolve-module' instead of 'current-module'. * guix/git.scm (load-git-submodules): Likewise. Ludovic Courtès
2020-01-06Adjust module autoloads....In Guile < 2.9.7, autoloading a module would give you access to all its bindings. In future versions, autoloading a module gives access only to the listed bindings, as per #:select (see <https://bugs.gnu.org/38895>). This commit adjusts autoloads to the new semantics, allowing Guix to be built with Guile 2.9.7/2.9.8. * guix/build/download.scm <top level>: Remove call to 'module-autoload!'. (load-gnutls): New procedure. (tls-wrap): Call it. * guix/git.scm <top level>: Remove call to 'module-autoload!'. (load-git-submodules): New procedure. (update-submodules): Call it instead of 'resolve-interface'. * gnu/bootloader/grub.scm: Replace #:autoload with #:use-module. * gnu/packages.scm: Likewise. * gnu/packages/ssh.scm: Likewise. * gnu/packages/tex.scm: Likewise. * gnu/services/cuirass.scm: Likewise. * gnu/services/mcron.scm: Likewise. * guix/lint.scm: Augment list of bindings in #:autoload. * guix/scripts/build.scm: Likewise. * guix/scripts/gc.scm: Likewise. * guix/scripts/pack.scm: Likewise. * guix/scripts/publish.scm: Likewise. * guix/scripts/pull.scm: Likewise. * guix/utils.scm: Remove unnecessary #:autoload clauses; replace one of them with #:use-module. Ludovic Courtès
2020-01-03download: Do not leak file descriptors on TLS ports....Fixes <https://bugs.gnu.org/20145>. * guix/build/download.scm (%tls-ports, register-tls-record-port): Remove. (tls-wrap): Remove call to 'register-tls-record-port'. Return a custom binary input/output port instead. This is a backport of what Guile 2.2's (web client) module has been doing. (close-connection): Define as an alias for 'close-port'. * guix/http-client.scm (http-fetch): Remove #:keep-alive? parameter, which was ignored and unused. Pass #:keep-alive? #f to 'http-get'. * guix/lint.scm (probe-uri): Use 'close-port' instead of 'close-connection'. * guix/scripts/substitute.scm (http-multiple-get): Likewise. Ludovic Courtès
2019-12-27guix: emacs-utils: Add emacs-batch-disable-compilation....* guix/build/emacs-utils.scm (emacs-batch-disable-compilation): New procedure. Signed-off-by: Brett Gilio <brettg@gnu.org> Leo Prikler
2019-12-26download: Enable TLS 1.3....This reverts commit e4ee84202633636b4c8cef4a332f0c74912a3b23. * guix/build/download.scm (tls-wrap): Dot not disable TLS 1.3. Marius Bakke
2019-12-13emacs-build-system: Ensure the core libraries appear last in the load path....Fixes bug #38568 (see: https://bugs.gnu.org/38568). * guix/build/emacs-build-system.scm (add-source-to-load-path): Ensure the core libraries appear last in the load path. Reported-by: Jelle Licht <jlicht@fsfe.org> Maxim Cournoyer
2019-12-08emacs-build-system: Move the source directory to the start of EMACSLOADPATH....Fixes issue #38479 (see: https://bugs.gnu.org/38479). * guix/build/emacs-build-system.scm (add-source-to-load-path): Move the source directory to the start of the EMACSLOADPATH environment variable. Reported-by: Diego Nicola Barbato <dnbarbato@posteo.de> Maxim Cournoyer
2019-12-08emacs-build-system: Make the order of the phases more clear....* guix/build/emacs-build-system.scm (%standard-phases): Re-arrange to explicit the ordering of phases. Maxim Cournoyer
2019-12-07build-system: qt: Fix output missing in wrapped variables....* guix/build/qt-build-system .scm (handle-output): Use directory of output, not its name. Hartmut Goebel
2019-12-07file-systems: Add support for 'strict-atime' and 'lazy-time' flags....* guix/build/syscalls.scm (MS_LAZYTIME): New variable. * gnu/build/file-systems.scm (mount-flags->bit-mask): Add match rules for 'strict-atime' and 'lazy-time'. * doc/guix.texi (File Systems): Add 'strict-atime' and 'lazy-time' to the list of supported flags. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Guillaume Le Vaillant
2019-12-04Merge branch 'staging'Marius Bakke
2019-12-04build: emacs-build-system: Unify the installation directory....This change aims to reduce the length of the EMACSLOADPATH environment variable, which was found to cause issues such as <https://bugs.gnu.org/38309>. It should also enable discovery of newly installed packages without refreshing the session's EMACSLOADPATH of the user profile (e.g., when launching Emacs from the desktop manager application launcher), as discussed in <https://bugs.gnu.org/38309>. * guix/build/emacs-build-system.scm (%legacy-install-suffix): Rename to... (%install-dir): ...this. (%install-suffix): Remove variable. (build): Adjust installation target directory. (patch-el-files): Likewise. (install): Likewise. (move-doc): Likewise. (make-autoloads): Likewise. Signed-off-by: Clément Lassieur <clement@lassieur.org> Maxim Cournoyer
2019-12-01guix: Add the 'qt' build system....* guix/build-system/qt.scm, guix/build/qt-build-system.scm: New files. * Makefile.am (MODULES): Add them. * doc/guix.texi (Buiild systems): Add the new build system. Hartmut Goebel
2019-11-29ui: 'with-profile-lock' keeps going upon ENOLCK....* guix/build/syscalls.scm (call-with-file-lock/no-wait): Really pass ARGS to HANDLER. Return #f when HANDLER is called. * guix/ui.scm (profile-lock-handler): Emit a mere warning upon ENOLCK. Ludovic Courtès
2019-11-28Merge branch 'master' into stagingMarius Bakke
2019-11-26guix: Fix wrap-qt-program....Directory names added here need to match qtbase's native-search-path specifications. * guix/build/qt-utils.scm (wrap-qt-program): Change paths used for QML2_IMPORT_PATH and QT_PLUGIN_PATH. Hartmut Goebel
2019-11-23compile: Adjust for Guile 2.9.5....* guix/build/compile.scm (optimizations-for-level): New procedure. Include '%lightweight-optimizations' and '%default-optimizations'. (optimization-options): Use 'optimizations-for-level'. Ludovic Courtès
2019-11-21Merge branch 'master' into stagingMarius Bakke
2019-11-18download: Load *.crt certificate bundles when *.pem files are missing....Fixes <https://bugs.gnu.org/38254>. * guix/build/download.scm (make-credendials-with-ca-trust-files): Look for *.crt files under DIRECTORY when *.pem files cannot be found. Ludovic Courtès
2019-11-18build-system: emacs: Simplify the SET-EMACS-LOAD-PATH phase....It is no longer necessary to search for the Elisp libraries manually, as Emacs now include a search path specification serving that purpose. * guix/build/emacs-build-system.scm (set-emacs-load-path): Replace by... (add-source-to-load-path): ...this. (%standard-phases): Adjust accordingly. Maxim Cournoyer
2019-11-15Merge branch 'master' into stagingMarius Bakke
2019-11-15make-bootstrap: Adjust copied linux headers....* guix/build/make-bootstrap.scm (copy-linux-headers): Remove header file 'a.out.h' is no longer part of the linux kernel headers. Efraim Flashner
2019-11-13guix: svn: Allow dropping externals....* guix/build/svn.scm (svn-fetch): Allow to ignore externals. * guix/svn-download.scm (svn-reference, svn-multi-reference): Add recursive? field. Julien Lepiller
2019-11-08guix: Add file-locking with no wait....* guix/build/syscalls.scm (with-file-lock/no-wait): New procedure. (lock-file): Take a #:wait? key. Julien Lepiller
2019-10-24Revert "guix: svn: Allow dropping externals."...This reverts commit 51395c84fdbf8daed6392951a973ad750cf3eefa, fixing <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=37896>. Reported by <o.rojon@posteo.net>. Tobias Geerinckx-Rice
2019-10-23guix: svn: Allow dropping externals....* guix/build/svn.scm (svn-fetch): Allow to ignore externals. * guix/svn-download.scm (svn-reference, svn-multi-reference): Add recursive? field. Julien Lepiller
2019-10-23Merge branch 'master' into stagingMarius Bakke
2019-10-21download: Honor /etc/ssl/certs when 'SSL_CERT_DIR' is not set....* guix/build/download.scm (%x509-certificate-directory): Use "/etc/ssl/certs" as a last resort. This ensures, for instance, that 'guix download' honors system-wide certificates when SSL_CERT_DIR is unset. Ludovic Courtès
2019-10-13Merge branch 'master' into stagingMarius Bakke
2019-10-13gnu: ant-build-system: Don't override symlinks....When repacking jar-files, don't work on symlinks: Otherwise, they would be overridden with the repacked jar-file. * guix/build/ant-build-system.scm (regular-jar-file-predicate): New procedure. (generate-jar-indices, strip-jar-timestamps): Use it. Björn Höfling
2019-10-11gnu: Add nsis-x86_64 and nsis-i686....* guix/build-system/scons.scm (scons-build): Add build-targets and install-targets parameters. * guix/build/scons-build-system.scm (build, install): Adjust accordingly. * doc/guix.texi (Build Systems): Document it. * gnu/packages/installers.scm: New file, (make-nsis): New procedure, (nsis-x86_64, nsis-i686): New variables. * gnu/packages/patches/nsis-env-passthru.patch: New file. * gnu/local.mk (dist_patch_DATA, GNU_SYSTEM_MODULES): Adjust accordingly. Carl Dong
2019-10-08Merge branch 'master' into stagingMarius Bakke
2019-10-05syscalls: Add 'add-to-entropy-count'....* guix/build/syscalls.scm (RNDADDTOENTCNT): New variable. (add-to-entropy-count): New procedure. * tests/syscalls.scm ("add-to-entropy-count"): New test. Ludovic Courtès
2019-10-01Merge branch 'master' into core-updatesLudovic Courtès
2019-09-29syscalls: 'define-as-needed' does not re-export local variables....Fixes <https://bugs.gnu.org/36723>. Reported by Timothy Sample <samplet@ngyro.com>. * guix/build/syscalls.scm (define-as-needed): Rewrite to use lower-level module primitives; define VARIABLE only if it's not already defined to avoid "re-exporting local variable" error. Ludovic Courtès