summaryrefslogtreecommitdiff
path: root/build-aux
AgeCommit message (Collapse)Author
2017-06-15hydra: Don't build non-substitutable packages.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (package->job): Compute PACKAGE's derivation; return #f if 'substitutable-derivation?' returns #f.
2017-06-09pull: Add a dependency to guile-git.Mathieu Othacehe
* build-aux/build-self.scm (guile-git, guile-bytestructures): New variables. (build): Add guile-git and guile-bytestructures to %load-path and %load-compiled-path.
2017-05-18maint: Add 'update-NEWS' target.Ludovic Courtès
* build-aux/update-NEWS.scm: New file. * Makefile.am (EXTRA_DIST): Add it. (GUIX_MAINTENANCE_DIRECTORY): New variable. (update-NEWS): New target. (.PHONY): Add it.
2017-05-16hydra: Cross-build Guile 2.2.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (%core-packages): Add GUILE-2.2.
2017-05-09pull: Build with the matching Guile major version.Ludovic Courtès
Previously, 'guix pull' would always build with Guile 2.0. Now it builds with the Guile that matches (effective-version). * build-aux/build-self.scm (false-if-wrong-guile) (package-for-current-guile): New procedures. (guile-json, guile-ssh): Use it. (guile-for-build): New procedure. (build): Use (effective-version) instead of the hard-coded "/2.0". Add (guix modules) closure to #:modules argument. Pass \#:guile-for-build argument to 'gexp->derivation'. * guix/build/pull.scm (depends-on-guile-ssh?, all-scheme-files): New procedures. (build-guix): Show the output of (version). Use the above procedures. Filter out files that match 'depends-on-guile-ssh?' when (ssh session) is missing.
2017-05-09maint: update-guix-package: Protect the checkout from GC.Ludovic Courtès
* build-aux/update-guix-package.scm (main): Define 'root', and call 'add-indirect-root' to protect SOURCE from GC.
2017-05-08maint: Check whether binaries cross-built to "arm-linux-gnueabihf" are ↵Ludovic Courtès
available. * build-aux/check-available-binaries.scm: Add "arm-linux-gnueabihf" as a cross target.
2017-05-08maint: 'check-available-binaries' forces use of the official servers.Ludovic Courtès
* build-aux/check-available-binaries.scm: Pass #:substitute-urls to 'set-build-options'.
2017-05-08maint: Use 'G_' in build-aux/ scripts.Ludovic Courtès
This is a followup to 69daee23af49aeafcb1d250c90860f9253da719e. * build-aux/check-final-inputs-self-contained.scm (assert-valid-substitute): Use 'G_' instead of '_'.
2017-05-07maint: Add 'time-monotonic' bug workaround in build-aux/hydra/evaluate.scm.Ludovic Courtès
* build-aux/hydra/evaluate.scm: Add 'time-monotonic' workaround for Guile 2.2.
2017-05-07maint: Add 'update-guix-package' target.Ludovic Courtès
* build-aux/update-guix-package.scm: New file. * Makefile.am (EXTRA_DIST): Add it. (update-guix-package): New target. (.PHONY): Add it. * gnu/packages/package-management.scm (guix): Mention it.
2017-05-04build: Use Gnulib's 'git-version-gen'.Ludovic Courtès
* Makefile.am (EXTRA_DIST, BUILT_SOURCES): Add $(top_srcdir)/.version. ($(top_srcdir)/.version, gen-tarball-version): New targets. (dist-hook): Depend on 'gen-tarball-version'. (.PHONY): Add 'gen-tarball-version'. * build-aux/git-version-gen: New file, from Gnulib v0.1-1312-ga87d5e5c6. * configure.ac: Use it in 'AC_INIT'. Use 'https' for the URL.
2017-05-03ui: Rename '_' to 'G_'.Ludovic Courtès
This avoids collisions with '_' when the latter is used as a 'match' pattern for instance. See <https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00464.html>. * guix/ui.scm: Rename '_' to 'G_'. * po/guix/Makevars (XGETTEXT_OPTIONS): Adjust accordingly. * build-aux/compile-all.scm (warnings): Remove 'format'. * gnu/packages.scm, gnu/services.scm, gnu/services/shepherd.scm, gnu/system.scm, gnu/system/shadow.scm, guix/gnupg.scm, guix/http-client.scm, guix/import/cpan.scm, guix/import/elpa.scm, guix/import/pypi.scm, guix/nar.scm, guix/scripts.scm, guix/scripts/archive.scm, guix/scripts/authenticate.scm, guix/scripts/build.scm, guix/scripts/challenge.scm, guix/scripts/container.scm, guix/scripts/container/exec.scm, guix/scripts/copy.scm, guix/scripts/download.scm, guix/scripts/edit.scm, guix/scripts/environment.scm, guix/scripts/gc.scm, guix/scripts/graph.scm, guix/scripts/hash.scm, guix/scripts/import.scm, guix/scripts/import/cpan.scm, guix/scripts/import/cran.scm, guix/scripts/import/crate.scm, guix/scripts/import/elpa.scm, guix/scripts/import/gem.scm, guix/scripts/import/gnu.scm, guix/scripts/import/hackage.scm, guix/scripts/import/nix.scm, guix/scripts/import/pypi.scm, guix/scripts/import/stackage.scm, guix/scripts/lint.scm, guix/scripts/offload.scm, guix/scripts/pack.scm, guix/scripts/package.scm, guix/scripts/perform-download.scm, guix/scripts/publish.scm, guix/scripts/pull.scm, guix/scripts/refresh.scm, guix/scripts/size.scm, guix/scripts/substitute.scm, guix/scripts/system.scm, guix/ssh.scm, guix/upstream.scm: Use 'G_' instead of '_'. Most of this change was obtained by running: "sed -i -e's/(_ "/(G_ "/g' `find -name \*.scm`".
2017-04-14build: Download aarch64 bootstrap binaries from alpha.gnu.org.Ludovic Courtès
* build-aux/download.scm (file-name->uri): Remove flashner.co.il URL. * gnu/packages/package-management.scm (boot-guile-uri): Likewise.
2017-03-30hydra: Don't build deprecated packages.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (hydra-jobs): When iterating over the packages, exclude those that match 'package-superseded'.
2017-03-30Merge branch 'master' into core-updatesMarius Bakke
Most conflicts are from 6fd52309b8f52c9bb59fccffac53e029ce94b698.
2017-03-30hydra: Include the localstatedir in the binary tarball.Ludovic Courtès
This is a followup to 6b63c43e0661406bf9e8c4c54f517744fc2ffdb3. * build-aux/hydra/gnu-system.scm (tarball-jobs): Pass #:localstatedir? #t to 'self-contained-tarball'.
2017-03-23Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2017-03-22build: 'test-driver.scm' prints Scheme values with 'write'.Ludovic Courtès
Previously it would print them with 'display', which was inconvenient. * build-aux/test-driver.scm (test-display): Use ~S for VALUE. (test-runner-gnu): Use 'format' instead of 'test-display' for the test name, location, and result kind.
2017-03-19Merge branch 'master' into core-updatesMark H Weaver
2017-03-18build: Require Guile >= 2.0.9.Ludovic Courtès
* configure.ac: Bump requirement to 2.0.9. * doc/guix.texi (Requirements): Adjust accordingly. * README (Requirements): Likewise. * build-aux/download.scm: Remove workaround for <http://bugs.gnu.org/13095>. * guix/build/download.scm: Likewise. (http-fetch)[post-2.0.7?]: Remove. Remove conditional code for not POST-2.0.7?. * guix/http-client.scm: Remove workaround for <http://bugs.gnu.org/13095>. (http-fetch)[post-2.0.7?]: Remove. Remove conditional code for not POST-2.0.7?. * guix/serialization.scm (read-latin1-string): Remove mention of 2.0.9. * tests/nar.scm: Use (ice-9 control). (let/ec): Remove.
2017-03-16utils: Move base16 procedures to (guix base16).Ludovic Courtès
* guix/utils.scm (bytevector->base16-string, base16-string->bytevector): Move to... * guix/base16.scm: ... here. New file. * tests/utils.scm ("bytevector->base16-string->bytevector"): Move to... * tests/base16.scm: ... here. New file. * Makefile.am (MODULES): Add guix/base16.scm. (SCM_TESTS): Add tests/base16.scm. * build-aux/download.scm, guix/derivations.scm, guix/docker.scm, guix/import/snix.scm, guix/pk-crypto.scm, guix/scripts/authenticate.scm, guix/scripts/download.scm, guix/scripts/hash.scm, guix/store.scm, tests/hash.scm, tests/pk-crypto.scm: Adjust imports accordingly.
2017-03-15Merge branch 'master' into core-updatesMarius Bakke
2017-03-14build: On 2.2, build package files with almost no optimizations.Ludovic Courtès
* build-aux/compile-all.scm (%default-optimizations) (%lightweight-optimizations): New variables. (optimization-options): New procedure. (compile-file*): Use it.
2017-03-13Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2017-03-12Add 'guix pack'.Ludovic Courtès
* gnu/system/install.scm (self-contained-tarball): Move to... * guix/scripts/pack.scm: ... here. New file. * doc/guix.texi (Binary Installation): Mention 'guix pack'. (Invoking guix pack): New node. * build-aux/make-binary-tarball.scm: Remove. * Makefile.am (MODULES): Add guix/scripts/pack.scm. (EXTRA_DIST): Remove build-aux/make-binary-tarball.scm. (guix-binary.%.tar.xz): Rewrite using 'guix pack'. * build-aux/hydra/gnu-system.scm (tarball-jobs): Adjust accordingly.
2017-03-09Merge branch 'master' into core-updatesLudovic Courtès
2017-03-09hydra: Really disable 32-to-64-bit cross-builds.Ludovic Courtès
Fixes <http://bugs.gnu.org/26022>. Reported by Efraim Flashner <efraim@flashner.co.il>. * build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](from-32-to-64?): Check whether TARGET contains "64" rather than checking whether TARGET ends in "64", which is rarely the case. (same?): Add special case for armhf-linux.
2017-03-08build: Unset 'NIX_BUILD_HOOK' when offloading support is missing.Ludovic Courtès
* build-aux/pre-inst-env.in: Export 'NIX_BUILD_HOOK' only when nix/scripts/offload is executable; unset it otherwise.
2017-02-20gnu: Add bootstrap-binaries for 'aarch64-linux'.Efraim Flashner
These bootstrap-binaries were built against commit 8f8f250bdca917b3ce38aa0902f01b19081859a4. * gnu/packages/bootstrap/aarch64-linux/bash, gnu/packages/bootstrap/aarch64-linux/mkdir, gnu/packages/bootstrap/aarch64-linux/xz, gnu/packages/bootstrap/aarch64-linux/tar: New files. * gnu/local.mk (bootstrap_aarch64_linuxdir) (dist_bootstrap_aarch64_linux_DATA) (nodist_bootstrap_aarch64_linux_DATA): New variables. (DISTCLEANFILES): Add $(nodist_bootstrap_aarch64_linux_DATA). (gnu/packages/bootstrap/aarch64-linux/guile-2.0.14.tar.xz): New target. * build-aux/download.scm (filename->uri): Add aarch64-linux entry. * gnu/packages/bootstrap.scm (raw-build): Use guile-2.0.14.tar.xz on aarch64-linux. (glibc-dynamic-linker, %bootstrap-coreutils&co, %boostrap-binutils) (%bootstrap-glibc, %bootstrap-gcc): Add aarch64-linux cases. * m4/guix.m4 (GUIX_SYSTEM_TYPE): Add aarch64 case. (GUIX_ASSERT_SUPPORTED_SYSTEM): Add aarch64-linux to supported list. * doc/guix.texi (GNU Distribution): Add aarch64-linux to the list of supported systems. * tests/packages.scm (package-search-derivation, snippet): Add aarch64 case.
2017-02-17hydra: Add "aarch64-linux-gnu" as a cross-compilation target.Efraim Flashner
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "aarch64-linux-gnu".
2017-02-14hydra: Add "aarch64-linux-gnu" as a cross-compilation target.Efraim Flashner
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "aarch64-linux-gnu".
2017-01-20hydra: Add "i586-pc-gnu" as a cross-compilation target.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "i586-pc-gnu".
2017-01-06Merge branch 'master' into core-updatesLeo Famulari
2017-01-05hydra: Add "powerpc-linux-gnu" as a cross-compilation target.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "powerpc-linux-gnu".
2016-12-31hydra: Remove 'qemu-image' job.Ludovic Courtès
As per the discussion at <https://lists.gnu.org/archive/html/guix-devel/2016-12/msg01098.html>. * build-aux/hydra/gnu-system.scm (demo-os): Remove. (qemu-jobs): Remove 'qemu-image' job. * build-aux/hydra/demo-os.scm: Remove.
2016-12-18build: check-final-inputs-self-contained has an exception for 'bash:include'.Ludovic Courtès
Currently 'bash:include' of the final Bash depends on bootstrap stuff. * build-aux/check-final-inputs-self-contained.scm (final-inputs): Add clause for 'bash:include'. * gnu/packages/commencement.scm (bash-final): Add FIXME comment.
2016-12-08hydra: Fix wrong-num-args error when computing the cross jobs.Ludovic Courtès
Fixes a regression introduced in dea91108cf6b9bb46071c8f65c9abf834c5b064d. * build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](either): Add third parameter and honor it.
2016-12-08hydra: Adjust to make-bootstrap.scm change.Ludovic Courtès
This is a followup to commit f13f60cb2620433280ccb2132376b7c6d3dbc06f. * build-aux/hydra/gnu-system.scm (%core-packages): Call '%glibc-bootstrap-tarball' since it's now a thunk, not a package.
2016-12-08hydra: Use '%final-inputs' from base.scm, not commencement.scm.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (package->job): Use the '%final-inputs' procedure from (gnu packages base).
2016-12-07hydra: Add "i686-w64-mingw32" as a cross-compilation target.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "i686-w64-mingw32". (hydra-jobs)[cross-jobs?](pointless?): New procedure. Use it.
2016-11-27pull: Hack to allow compilation with older Guile-SSH packages.Ludovic Courtès
Reported by iyzsong@member.fsf.org (宋文武) at <https://lists.gnu.org/archive/html/guix-devel/2016-11/msg01045.html>. * build-aux/build-self.scm (build): Set 'LTDL_LIBRARY_PATH' when GUILE-SSH has a "0.9." version prefix.
2016-11-26pull: Add guile-ssh to the dependencies.宋文武
Fix regression introduced in 9e76eed. * build-aux/build-self.scm (guile-ssh): New variable. (build)[builder]: Add 'guile-ssh' to %load-path and %load-compiled-path.
2016-11-03tests: 'make check-system' prints the "build trace".Ludovic Courtès
* build-aux/run-system-tests.scm (run-system-tests): Pass #:print-build-trace to 'set-build-options*'.
2016-10-27tests: Use #:fallback? #t when building system tests.Ludovic Courtès
* build-aux/run-system-tests.scm (run-system-tests): Pass #:fallback? #t to 'set-build-options*'.
2016-10-20hydra: Add "arm-linux-gnueabihf" as a cross-compilation target.Ludovic Courtès
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "arm-linux-gnueabihf".
2016-10-12build: Arrange so temporary .go files are deleted upon SIGINT.Ludovic Courtès
* build-aux/compile-all.scm: Install SIGINT handler.
2016-09-29build: Improve Guile 2.2 compatibility.Taylan Ulrich Bayırlı/Kammer
* build-aux/compile-all.scm (compile-file*): Ensure loading of compilation related modules before going parallel. * guix/build/pull.scm (build-guix): Ditto.
2016-07-20pull: Update the version string.Ludovic Courtès
Fixes <http://bugs.gnu.org/19278>. Reported by Tomáš Čech <tcech@suse.cz>. This allows 'guix --version' to return something that better represents what version is being used. * build-aux/build-self.scm (date-version-string): New procedure. (build): Add #:version. [builder]: Pass it to 'build-guix' as #:package-version.
2016-07-20pull: Install (guix config) module to override the user's one.Ludovic Courtès
* build-aux/build-self.scm (zlib, gzip, bzip2, xz): New variables. (build)[storedir, localstatedir, sysconfdir, sbindir]: New variables. [builder]: Pass them to 'build-guix'. * guix/build/pull.scm (build-guix): Add #:system, #:storedir, #:localstatedir, #:sysconfdir, #:sbindir, #:package-name, #:package-version, #:bug-report-address, #:home-page-url, #:libgcrypt, #:zlib, #:gzip, #:bzip2, and #:xz. Remove #:gcrypt. Instantiate all the substitution variables in (guix config). Remove code to delete OUT/guix/config.{scm,go}. * guix/config.scm.in: Add note about (guix script pull).