aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/bootstrap.scm
AgeCommit message (Expand)Author
2024-12-05gnu: glibc-dynamic-linker: Match all mingw systems....* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Match any system which ends in '-mingw'. Change-Id: I057e3d0abfc37f4b2b8784f444bbaf865c67ce3e Efraim Flashner
2024-12-05Partial revert "gnu: bootstrap: %bootstrap-gcc: Also wrap g++ for the 64bit H......This partially reverts commit 877b925df16740f9419d165d39cb7f191a86d5d1. This part accidentally triggered a world rebuild for non-x86 architectures. Change-Id: Iabc5422bb0e2bb37816ad437994af94d04830cb0 Zheng Junjie
2024-12-05Partial revert "gnu: bootstrap: %bootstrap-glibc: Also fix libm.so."...This partially reverts commit 204fe1b1f05f4438d1cf72c568b45696e55e54c9. This part accidentally triggered a world rebuild for non-x86 architectures. Change-Id: I921984ef5eff58792ffc17b64675db6a8e79695c Zheng Junjie
2024-12-03gnu: bootstrap: bootstrap-%guile: Revert aarch64-linux hash....This is a follow-up to commit 4d9c5984fee481d74c2f504094b4797bbb4104d4 gnu: bootstrap: Add support for x86_64-gnu, aka the 64bit Hurd. where it was inadvertently changed. Reported by fanquake via IRC. * gnu/packages/bootstrap.scm (bootstrap-guile-hash)[aarch64-linux]: Revert to 1giy2aprjmn5fp9c4s9r125fljw4wv6ixy5739i5bffw4jgr0f9r. Change-Id: I26176b192e43ebe05bbd575414a7173583c6d5b6 Janneke Nieuwenhuizen
2024-12-03gnu: bootstrap: %bootstrap-gcc: Also wrap g++ for the 64bit Hurd....* gnu/packages/bootstrap.scm (%bootstrap-gcc)[arguments] When building for thee 64bit Hurd have the #:builder also wrap g++. Co-authored-by: Efraim Flashner <efraim@flashner.co.il> Change-Id: I2cdbc6837e1c451f108b309f2608240a7f57b82c Janneke Nieuwenhuizen
2024-12-03gnu: bootstrap: %bootstrap-glibc: Also fix libm.so....On the 64bit Hurd, glibc-2.39's libm.so is also a linker script. This fixes having it refer to /gnu/store/eee...-glibc-cross-x86_64-pc-gnu-2.39/lib/libm.so.6 /gnu/store/eee...-glibc-cross-x86_64-pc-gnu-2.39/lib/libmvec.so.1 * gnu/packages/bootstrap.scm (%bootstrap-glibc)[arguments]: When building for the 64bit Hurd, also substitute libm.so linker script. Update the regexp to also cater for libh[urduser] and libm[achuser]. Change-Id: I878e63d18f1012b6e186e90eb68cb97bec5ae94c Janneke Nieuwenhuizen
2024-12-03gnu: bootstrap: Add support for x86_64-gnu, aka the 64bit Hurd....On commit: ec8a5ec15f898e864705e5a5c834532e3fa8d0a4 gnu: make-bootstrap: Update gcc-static to gcc-14, for the 64bit Hurd. Run: ./pre-inst-env guix build --target=x86_64-gnu bootstrap-tarballs Producing: /gnu/store/w1n7bdpn88plcc49h7n0jriaj41sgwx8-bootstrap-tarballs-0/ With guix hash -r: 15cb1xh7s2hhp8s0d81bjnw1759w9sh7ckc9n5jq2f3rqw6z76by * gnu/packages/bootstrap.scm (%bootstrap-executables): Add entries for x86_64-gnu. (%bootstrap-guile-hash, %bootstrap-coreutils&co, %bootstrap-binutils, %bootstrap-glibc, %bootstrap-gcc): Add entry for x86_64-gnu. * guix/packages.scm (%supported-systems, %hurd-systems): Add x86_64-gnu. (%cuirass-supported-systems): Remove x86_64-gnu. * guix/utils.scm (target-64bit?): Add x86_64-gnu. * m4/guix.m4: Add x86_64-gnu as a supported system. * doc/guix.texi (GNU Distribution): Add x86_64-gnu. Change-Id: I828159aedb3f66caba98e935083cc3682429f219 Janneke Nieuwenhuizen
2024-12-03gnu: cross-libc: Support cross-building for the 64bit Hurd....* gnu/packages/base.scm (glibc)[arguments]: When building for the Hurd, in phase "create-machine-symlink", do not assume CPU is i386, also cater for x86_64. * gnu/packages/cross-base.scm (cross-libc*)[arguments]: Likewise. Change-Id: Ib009b7bd301b543b8629382330cca9d963b7a812 Janneke Nieuwenhuizen
2024-12-03gnu: Add basic support for x86_64-pc-gnu target, aka 64bit Hurd....* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Update comment on where to find shared linker name. (make-raw-bag): Also use raw-build-guile3 when building for the 64bit Hurd. * gnu/packages/cross-base.scm (cross-kernel-headers*): Use target-hurd? instead of custom "i586..." matching to also use xhurd-core-headers for target-hurd64. * gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc) [native-inputs]: Move final-inputs before cross-packages. (%binutils-static)[arguments]: When building for the 64bit Hurd, add "lt_cv_prog_compiler_static_works=yes", "lt_cv_prog_compiler_static_works_CXX=yes" to #:make-flags to convince to actually link the binaries statically. (make-guile-static)[arguments]: When building for the 64bit Hurd, add "lt_cv_prog_compiler_static_works=yes" to #:configure-flags to convince libtool to actually link guile statically. * guix/platforms/x86.scm (x86_64-gnu): New exported variable. * guix/utils.scm (target-hurd64? system-hurd64?): New procedures. Janneke Nieuwenhuizen
2024-08-31gnu: glibc-bootstrap: Update i586-gnu variant....‘glibc-stripped-2.39-i586-pc-gnu.tar.xz’ was built from x86_64-linux from the previous commit with: ./pre-inst-env guix build --target=i586-pc-gnu \ -e '((@@ (gnu packages make-bootstrap) %glibc-bootstrap-tarball))' This updated variant is necessary to match newer GNU Mach headers, which are themselves necessary for the newer Hurd. Fixes <https://issues.guix.gnu.org/72315>. * gnu/packages/bootstrap.scm (%bootstrap-glibc): Update i586-gnu variant. Change-Id: I2d770e8001896059e1f27e50f7a4ddf15e4b5812 Ludovic Courtès
2024-01-04gnu: Add support for x86_64-linux-gnux32....* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add entry for x86_64-linux-gnux32. * gnu/packages/gcc.scm (gcc-configure-flags-for-triplet): Add configure-flag for x86_64-linux-gnux32. * guix/platforms/x86.scm (x86_64-linux-gnux32): New variable. * guix/utils.scm (gnu-triplet->nix-system): Force x86_64-linux-gnux32 to output a different nix-system than x86_64-linux-gnu. Change-Id: I519fea2f8357e4b9895ede05fe8a5e373e9b034a Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Efraim Flashner
2023-07-07gnu: Add crust-pinebook and crust-pine64-plus....* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add or1k-elf. gnu/packages/firmware.scm (make-crust-package, crust-pinebook) (crust-pine64-plus): New variables. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Reviewed-by: Maxime Devos <maximedevos@telenet.be> Co-authored-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Vagrant Cascadian
2023-05-15gnu: Use dummy linker for '*-elf' systems....* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Return "no-ld.so" for systems with a "-elf" suffix. 宋文武
2023-03-02Merge remote-tracking branch 'savannah/master' into core-updates...Conflicts: gnu/local.mk gnu/packages/autotools.scm gnu/packages/cmake.scm gnu/packages/gnuzilla.scm gnu/packages/haskell.scm gnu/packages/pdf.scm gnu/packages/python-xyz.scm gnu/packages/samba.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/wxwidgets.scm Christopher Baines
2023-02-16gnu: Remove unneeded module imports....* gnu/packages/abiword.scm, * gnu/packages/ada.scm, * gnu/packages/agda.scm, * gnu/packages/backup.scm, * gnu/packages/barrier.scm, * gnu/packages/bioinformatics.scm, * gnu/packages/bootstrap.scm, * gnu/packages/bqn.scm, * gnu/packages/c.scm, * gnu/packages/chemistry.scm, * gnu/packages/coq.scm, * gnu/packages/cross-base.scm, * gnu/packages/databases.scm, * gnu/packages/emacs-xyz.scm, * gnu/packages/enlightenment.scm, * gnu/packages/games.scm, * gnu/packages/geo.scm, * gnu/packages/ghostscript.scm, * gnu/packages/gl.scm, * gnu/packages/golang.scm, * gnu/packages/jami.scm, * gnu/packages/java-maths.scm, * gnu/packages/kde-frameworks.scm, * gnu/packages/kde-plasma.scm, * gnu/packages/language.scm, * gnu/packages/libreoffice.scm, * gnu/packages/linphone.scm, * gnu/packages/lisp.scm, * gnu/packages/llvm.scm, * gnu/packages/machine-learning.scm, * gnu/packages/minetest.scm, * gnu/packages/monitoring.scm, * gnu/packages/nfs.scm, * gnu/packages/ocr.scm, * gnu/packages/opencl.scm, * gnu/packages/pdf.scm, * gnu/packages/python-xyz.scm, * gnu/packages/racket.scm, * gnu/packages/rust.scm, * gnu/packages/syncthing.scm, * gnu/packages/syndication.scm, * gnu/packages/telegram.scm, * gnu/packages/vulkan.scm, * gnu/packages/web-browsers.scm, * gnu/packages/web.scm, * gnu/packages/webkit.scm: Remove some unecessary module imports. Efraim Flashner
2023-01-30Merge remote-tracking branch 'origin/master' into core-updates... Conflicts: doc/guix.texi gnu/local.mk gnu/packages/admin.scm gnu/packages/base.scm gnu/packages/chromium.scm gnu/packages/compression.scm gnu/packages/databases.scm gnu/packages/diffoscope.scm gnu/packages/freedesktop.scm gnu/packages/gnome.scm gnu/packages/gnupg.scm gnu/packages/guile.scm gnu/packages/inkscape.scm gnu/packages/llvm.scm gnu/packages/openldap.scm gnu/packages/pciutils.scm gnu/packages/ruby.scm gnu/packages/samba.scm gnu/packages/sqlite.scm gnu/packages/statistics.scm gnu/packages/syndication.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/version-control.scm gnu/packages/xml.scm guix/build-system/copy.scm guix/scripts/home.scm Efraim Flashner
2023-01-18platforms: Raise an exception when no suitable platform is found....This was motivated by #60786, which produced a cryptic, hard to understand backtrace. Given the following reproducer: (use-modules (guix packages) (gnu packages cross-base)) (define linux-libre-headers-cross-mips64el-linux-gnuabi64 (cross-kernel-headers "mips64el-linux-gnuabi64")) (package-arguments linux-libre-headers-cross-mips64el-linux-gnuabi64) Before this change: ice-9/boot-9.scm:1685:16: In procedure raise-exception: In procedure struct-vtable: Wrong type argument in position 1 (expecting struct): #f After this change: ice-9/boot-9.scm:1685:16: In procedure raise-exception: ERROR: 1. &platform-not-found-error: "mips64el-linux-gnuabi64" * guix/platform.scm (&platform-not-found-error): New condition. (platform-not-found-error?): New predicate. (false-if-platform-not-found): New syntax. (lookup-platform-by-system): Raise an exception when no platform is found. Update documentation. (lookup-platform-by-target): Likewise. (lookup-platform-by-target-or-system): Likewise, and guard lookup calls with false-if-platform-not-found. * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Handle lookup-platform-by-system call to preserve existing behavior. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Maxim Cournoyer
2022-06-08Merge branch 'master' into core-updatesLudovic Courtès
2022-05-25Move (gnu platform) and (gnu platforms ...) to guix/....* gnu/platform.scm: * gnu/platforms/arm.scm: * gnu/platforms/hurd.scm: * gnu/platforms/mips.scm: * gnu/platforms/powerpc.scm: * gnu/platforms/riscv.scm: * gnu/platforms/s390.scm: * gnu/platforms/x86.scm: Move to guix/. * Makefile.am: * doc/guix.texi (Porting to a New Platform): * etc/release-manifest.scm: * gnu/ci.scm: * gnu/image.scm: * gnu/local.mk: * gnu/packages/bioinformatics.scm: * gnu/packages/bootstrap.scm: * gnu/packages/cross-base.scm: * gnu/packages/instrumentation.scm: * gnu/packages/linux.scm: * gnu/system/image.scm: * gnu/system/images/hurd.scm: * gnu/system/images/novena.scm: * gnu/system/images/pine64.scm: * gnu/system/images/pinebook-pro.scm: * gnu/system/images/rock64.scm: * guix/scripts/build.scm: * guix/scripts/system.scm: * guix/self.scm: Update (gnu platform...) to (guix platform...). Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Josselin Poiret
2022-05-22platform: Add glibc-dynamic-linker field....* gnu/platform.scm (<platform>)[glibc-dynamic-linker]: New field. (platform-glibc-dynamic-linker, lookup-platform-by-system): New procedures. * gnu/platforms/arm.scm (armhf-linux, aarch64-linux): Add the glibc-dynamic-linker field. * gnu/platforms/hurd.scm (hurd): Ditto. * gnu/platforms/intel.scm (intel32-linux, intel64-linux, intel32-mingw, intel64-linux): Ditto. * gnu/platforms/mips.scm (mips64el-linux): Ditto. * gnu/platforms/powerpc.scm (powerpc-linux, powerpc64-linux): Ditto. * gnu/platforms/riscv.scm (riscv64-linux): Ditto. * gnu/platforms/s390.scm (riscv64-linux): Ditto. * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Adapt it. Mathieu Othacehe
2022-05-18gnu: bootstrap: Remove bootstrap-mes....* gnu/packages/bootstrap.scm (%bootstrap-mes): Remove. Jan (janneke) Nieuwenhuizen
2022-05-18gnu: bootstrap: Remove bootstrap-mescc-tools....* gnu/packages/bootstrap.scm (%bootstrap-mescc-tools): Remove. Jan (janneke) Nieuwenhuizen
2022-05-12gnu: bootstrap: Remove %bootstrap-mescc-tools, %bootstrap-mes....* gnu/packages/bootstrap.scm (%bootstrap-inputs): Remove %bootstrap-mescc-tools, %bootstrap-mes. Jan (janneke) Nieuwenhuizen
2022-01-14gnu: bootstrap: Add support for riscv64-linux....On 7d93b21ab1c132990054372a9677c1639d54e631 gnu: glibc-for-bootstrap: Update patch. Run ./pre-inst-env guix build --target=riscv64-linux-gnu bootstrap-tarballs Producing /gnu/store/4hdzva9i0wyyfbgj1lmqc1wkk644pv07-bootstrap-tarballs-0 With guix hash -rx 1nj0fdgj08bbmfny01mp2blv7c3p2iciqh31zmf04ap5s7ygsqlp * gnu/packages/bootstrap.scm (%bootstrap-executables): Add entries for riscv64-linux. (%bootstrap-guile-hash, %bootstrap-coreutils&co, %bootstrap-binutils, %bootstrap-glibc, %bootstrap-gcc): Add entry for riscv64-linux. (raw-build-guile3): New procedure. (make-raw-bag): Use raw-build-guile3 for riscv64-linux. * guix/packages.scm (%supported-systems): Add riscv64-linux. (%cuirass-supported-systems): Remove riscv64-linux. * guix/utils.scm (target-64bit?): Add riscv64-linux. * m4/guix.m4: Add riscv64-linux as a supported system. * doc/guix.texi (GNU Distribution): Add riscv64-linux. Efraim Flashner
2021-05-23gnu: bootstrap: Add support for powerpc-linux....On 923bb70a1bff657125c3008f119a477e5cb57c2b gnu:glibc-for-bootstrap: Fix patch. Run ./pre-inst-env guix build --target=powerpc-linux-gnu bootstrap-tarballs Producing /gnu/store/dyj1wvayyp1ihaknkxniz1xamcf4yrhl-bootstrap-tarballs-0 With guix hash -rx /gnu/store/dyj1wvayyp1ihaknkxniz1xamcf4yrhl-bootstrap-tarballs-0 02xx2ydj28pwv3vflqffinpq1icj09gzi9icm8j4bwc4lca9irxn * gnu/packages/bootstrap.scm (%bootstrap-executables): Add entries for powerpc-linux. (%bootstrap-guile-hash, %bootstrap-coreutils&co, %bootstrap-binutils, %bootstrap-glibc, %bootstrap-gcc): Add entry for powerpc-linux. * gnu/packages.scm (%supported-systems): Add powerpc-linux. (%hydra-supported-systems): Remove powerpc-linux. * m4/guix.m4: Add powerpc-linux as a supported system. Efraim Flashner
2021-03-30build-system: Rewrite using gexps....* guix/packages.scm (expand-input): Remove 'store', 'system', and 'cross-system' parameters; add #:native?. Rewrite to return name/gexp-input tuples. (bag->derivation): Adjust accordingly. Lower (bag-build bag). (bag->cross-derivation): Ditto. Instead of #:native-drvs and #:target-drvs, pass #:build-inputs, #:host-inputs, and #:target-inputs. (%derivation-cache): Remove. * gnu/packages/bootstrap.scm (raw-build): Turn into a monadic procedure. * gnu/packages/commencement.scm (glibc-final)[arguments]: Use 'gexp-input' for the #:allowed-references argument. * guix/build-system/cmake.scm (cmake-build): Remove 'store' parameter. Switch to the use of gexps and 'gexp->derivation'. (lower): Remove #:source from 'private-keywords'. * guix/build-system/glib-or-gtk.scm (glib-or-gtk-build, lower): Likewise. * guix/build-system/font.scm (font-build): Likewise. * guix/build-system/gnu.scm (gnu-build): Likewise, and remove 'canonicalize-reference'. (gnu-cross-build): Likewise, and expect #:build-inputs, #:host-inputs, and #:target-inputs instead of #:native-drvs and #:target-drvs. (lower): Likewise. * guix/build-system/perl.scm (perl-build, lower): Likewise. * guix/build-system/python.scm (python-build, lower): Likewise. * guix/build-system/ruby.scm (ruby-build, lower): Likewise. * guix/build-system/waf.scm (waf-build, lower): Likewise. * guix/build-system/trivial.scm (guile-for-build): Remove. (trivial-build): Remove 'store' parameter, change to gexps. (trivial-cross-build): Ditto, and change to #:build-inputs & co. * guix/build-system/cargo.scm (cargo-build): Change to 'gexp->derivation'. * guix/build-system/copy.scm (copy-build): Likewise. * guix/build-system/dune.scm (dune-build): Likewise. * guix/build-system/guile.scm (guile-build, guile-cross-build): Likewise. * guix/build-system/meson.scm (meson-build): Likewise. * guix/build-system/ocaml.scm (ocaml-build): Likewise. * guix/build-system/scons.scm (scons-build): Likewise. * guix/build-system/texlive.scm (texlive-build): Likewise. * guix/build-system/android-ndk.scm (android-ndk-build): Likewise. * guix/build-system/ant.scm (ant-build): Likewise. * guix/build-system/asdf.scm (asdf-build/source, asdf-build): Likewise. * guix/build-system/chicken.scm (chicken-build): Likewise. * guix/build-system/clojure.scm (clojure-build): Likewise. (source->output-path, maybe-guile->guile): Remove. * guix/build-system/dub.scm (dub-build): Likewise. * guix/build-system/emacs.scm (emacs-build): Likewise. * guix/build-system/go.scm (go-build): Likewise. * guix/build-system/haskell.scm (haskell-build): Likewise. * guix/build-system/julia.scm (julia-build): Likewise. * guix/build-system/linux-module.scm (linux-module-build) (linux-module-build-cross): Likewise. * guix/build-system/maven.scm (maven-build): Likewise. * guix/build-system/minify.scm (minify-build): Likewise. * guix/build-system/node.scm (node-build): Likewise. * guix/build-system/qt.scm (qt-build, qt-cross-build): Likewise. * guix/build-system/r.scm (r-build): Likewise. * guix/build-system/rakudo.scm (rakudo-build): Likewise. * guix/build-system/renpy.scm (renpy-build): Likewise. * tests/builders.scm ("gnu-build"): Call 'store-lower' on 'gnu-build'. Pass #:source parameter. * tests/packages.scm ("search paths"): Use 'abort-to-prompt' instead of a normal return from the 'build' method. ("package->bag, sensitivity to %current-target-system"): Change 'build' to match the new build system signature. squash! build-system: Rewrite using gexps. squash! build-system: Rewrite using gexps. Ludovic Courtès
2021-03-24Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2021-03-23gnu: bootstrap: Add support for powerpc64le-linux....The bootstrap tarballs used by these bootstrap packages were created via the following steps: - Create a new x86_64 VM using QEMU. - Use https://ftp.gnu.org/gnu/guix/guix-system-install-1.2.0.x86_64-linux.iso.xz to install Guix System 1.2.0 in the VM. - Run: guix pull --no-substitutes --commit=662e7e28d576ada91fc9dec7d27c100666114f03 - Run: guix build --no-substitutes --target=powerpc64le-linux-gnu bootstrap-tarballs With the exception of gcc-static, all bootstrap binaries contained in these tarballs can be built reproducibly. Unfortunately, gcc-static is not always reproducible when everything is built from source on separate machines. Despite investigation efforts, the cause remains unclear, so we have decided to move forward with these binaries to unblock further bootstrapping work. For details, see <https://bugs.gnu.org/41669>. * gnu/packages/bootstrap.scm (%bootstrap-executables) (bootstrap-executable-file-name, bootstrap-guile-url-path) (bootstrap-guile-hash, %bootstrap-coreutils&co, %bootstrap-binutils) (%bootstrap-glibc, %bootstrap-gcc): Add entries for powerpc64le-linux. (%bootstrap-executable-base-urls): Add an entry for alpha.gnu.org. Chris Marusich
2020-08-04gnu: bootstrap-gcc: Don't use CPATH search paths....This updates the bootstrap-gcc to use the same search path strategy as the main compilers, making the bootstrap environment more similar across architectures, and fixing the bootstrap path on non-x86 architectures again. This is a follow up to commit 7cde865f12dd67e55946a52a21103e71f447eced. * gnu/packages/bootstrap.scm (%bootstrap-gcc)[native-search-paths]: Use C_INCLUDE_PATH and CPLUS_INCLUDE_PATH instead of CPATH. Jakub Kądziołka
2020-06-01gnu: bootstrap: Add powerpc64-linux dynamic linker....This makes it possible to build bootstrap binaries for powerpc64-linux: guix build --target=powerpc64-linux-gnu bootstrap-tarballs * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add an entry for powerpc64-linux. Signed-off-by: Chris Marusich <cmmarusich@gmail.com> Léo Le Bouter
2020-05-22packages: Introduce <content-hash> and use it in <origin>....* guix/packages.scm (<content-hash>): New record type. (define-content-hash-constructor, build-content-hash) (content-hash): New macros. (print-content-hash): New procedure. (<origin>): Rename constructor to '%origin'. [sha256]: Remove field. [hash]: New field. Adjust users. (origin-compatibility-helper, origin): New macros. (origin-sha256): New deprecated procedure. (origin->derivation): Adjust accordingly. * tests/packages.scm ("package-source-derivation, origin, sha512"): New test. * guix/tests.scm: Hide (gcrypt hash) 'sha256' for proper syntax matching. * tests/challenge.scm: Add #:prefix for (gcrypt hash) and adjust users. * tests/derivations.scm: Likewise. * tests/store.scm: Likewise. * tests/graph.scm ("bag DAG, including origins"): Provide 'sha256' field with the right length. * gnu/packages/aspell.scm (aspell-dictionary) (aspell-dict-ca, aspell-dict-it): Use 'hash' and 'content-hash' for proper syntax matching. * gnu/packages/bash.scm (bash-patch): Rename 'sha256' to 'sha256-bv'. * gnu/packages/bootstrap.scm (bootstrap-executable): Rename 'sha256' to 'bv'. * gnu/packages/readline.scm (readline-patch): Likewise. * gnu/packages/virtualization.scm (qemu-patch): Rename 'sha256' to 'sha256-bv'. * guix/import/utils.scm: Hide (gcrypt hash) 'sha256'. Ludovic Courtès
2020-03-26gnu: bootstrap: Add support for the Hurd....On 3342a1182b15ec031f0ec6f602fd96c1dca3d4b0 gnu: make-bootstrap: Use _IOLBF on Guile 2.0 only. Run ./pre-inst-env guix build --target=i586-pc-gnu bootstrap-tarballs --verbosity=1 Producing /gnu/store/lhca65c997pvic5cfrpm0dasniwqlg2a-bootstrap-tarballs-0 With guix hash -rx /gnu/store/lhca65c997pvic5cfrpm0dasniwqlg2a-bootstrap-tarballs-0 07jnq2by98f2a45k8wd2gj62iazvwfa4z7p3w3id4m1g0fdsvc3b * gnu/packages/bootstrap.scm (%bootstrap-executables): Add entries for the Hurd. (bootstrap-executable-url): Use lilypond url for the Hurd. (bootstrap-guile-url-path): Likewise. (bootstrap-guile-hash): Add entry for the Hurd. (%bootstrap-coreutils&co): Likewise. (%bootstrap-binutils): Likewise. (%bootstrap-glibc): Likewise. (%bootstrap-gcc): Likewise. * guix/packages.scm (%supported-systems): Add i586-gnu. Co-authored-by: Jan Nieuwenhuizen <janneke@gnu.org> Efraim Flashner
2020-03-24gnu: bootstrap: Use fall-back mechanism for bootstrap-executables....* gnu/packages/bootstrap.scm (%bootstrap-executable-base-urls): New variable. Add lilypond.org url as a fall-back. (bootstrap-executable-file-name): New function. (bootstrap-executable): Use them to implement fall-back for donwloads of bootstrap executables. Jan Nieuwenhuizen
2020-02-17gnu: bootstrap: Remove %bootstrap-coreutils&co, %bootstrap-bash....* gnu/packages/bootstrap.scm (%bootstrap-inputs)[i686-linux,x86-linux]: Remove %bootstrap-coreutils&co, %bootstrap-bash. Jan Nieuwenhuizen
2020-02-17gnu: bootstrap: Add janneke's guix package url....* gnu/packages/bootstrap.scm (%bootstrap-base-urls): Add janneke's guix package url. Jan Nieuwenhuizen
2019-11-04gnu: bootstrap: Memoize 'bootstrap-origin'....* gnu/packages/bootstrap.scm (bootstrap-origin): Memoize with 'mlambdaq'. This improves memoization of origins in (gnu packages commencement). Ludovic Courtès
2019-10-27gnu: bootstrap: Cache the 'bootstrap-executable' origins....This reduces the number of lookups in the 'add-data-to-store' cache from 2705 to 2685 (hit rate: 10% to 9%) when running: GUIX_PROFILING=add-data-to-store-cache guix build libreoffice -nd * gnu/packages/bootstrap.scm (raw-build)[->store]: Use 'lower-object' instead of 'origin->derivation'. This allows the origin-to-derivation mapping to be cached. Ludovic Courtès
2019-10-27gnu: bootstrap: 'bootstrap-origin' preserves eq?-ness when no changes are made....This reduces the number of lookups in the 'add-data-to-store' cache from 2743 to 2705 (hit rate: 11% to 10%) when running GUIX_PROFILING=add-data-to-store-cache guix build libreoffice -nd The execution time of "guix build libreoffice -nd" goes from 1.80s to 1.78s. * gnu/packages/bootstrap.scm (bootstrap-origin): Return SOURCE unchanged when its has no patches and no snippet. Ludovic Courtès
2019-08-27gnu: bootstrap: Update to the 20190815 bootstrap binaries....These new bootstrap binaries were built using Guix at commit 9e6256ba0f32ab12d61c914a3fed879dac881762, tagged as "bootstrap-20190815". * gnu/packages/bootstrap.scm (%bootstrap-linux-libre-headers): Update the download URL. (%bootstrap-mescc-tools, %bootstrap-mes): Update the download URL and hash. Mark H Weaver
2019-08-27gnu: bootstrap: Add ftp.gnu.org to '%bootstrap-base-urls'....* gnu/packages/bootstrap.scm (%bootstrap-base-urls): Add ftp.gnu.org/gnu/guix/bootstrap. Ludovic Courtès
2019-08-22Merge branch 'master' into core-updatesMark H Weaver
2019-08-14gnu: mingw: Add x86_64 support....This patch parameterizes previously hard-coded instances of i686-w64-mingw32, adding support for x86_64-w64-mingw32. * gnu/packages/mingw.scm (make-mingw-w64): New procedure. (mingw-w64-i686, mingw-w64-x86_64): New variables. (%mingw-triplet): Remove. (mingw-w64): Update to point to 'mingw-w64-i686'. * gnu/packages/cross-base.scm (cross-gcc): Use 'libc' keyword argument if specified, instead of treating it as a boolean. (native-libc): Return the correct mingw-w64 depending on machine specified in target. * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add "x86_64-mingw". * gnu/build/cross-toolchain.scm (set-cross-path/mingw): Replace hardcoded 'i686-w64-mingw32' instances with 'target' keyword argument. (cross-gcc-build-phases): Update accordingly; use 'target-mingw?' implementation of target checking and add commentary. * gnu/ci.scm (%cross-targets): Add "x86_64-w64-mingw32". Carl Dong
2019-07-17Merge branch 'master' into core-updatesLudovic Courtès
2019-07-15gnu: guile-bootstrap: Use the new 'derivation' calling convention....* gnu/packages/bootstrap.scm (raw-build): In 'derivation' call, distinguish #:inputs from #:sources, passing a list of <derivation-input> as #:inputs. Ludovic Courtès
2019-06-14packages: Remove 'search-bootstrap-binary'....* gnu/packages.scm (%bootstrap-binaries-path, search-bootstrap-binary): Remove. * gnu/packages/bootstrap.scm (bootstrap-executable): Export. * guix/tests.scm (bootstrap-binary-file, search-bootstrap-binary): Export. * tests/derivations.scm: Remove (gnu packages) import. * tests/grafts.scm: Likewise. * tests/guix-daemon.sh: Likewise. Ludovic Courtès
2019-06-14tests: Make builds less expensive....The switch to the reduced bootstrap broke build time assumptions made by tests, notably the assumption that GNU-MAKE-BOOT0 was cheap to build. This commit adjusts this to make these tests cheaper. * gnu/packages/bootstrap.scm (%bootstrap-inputs-for-tests): New variable. * guix/tests.scm (gnu-make-for-tests): New variable. * tests/guix-environment.sh: Use GNU-MAKE-FOR-TESTS instead of GNU-MAKE-BOOT0. Remove test with FINDUTILS-BOOT0. * tests/guix-package-net.sh (boot_make): Use GNU-MAKE-FOR-TESTS. * tests/packages.scm ("GNU Make, bootstrap"): Likewise. * tests/profiles.scm ("profile-derivation relative symlinks, two entries"): Likewise. * tests/union.scm (%bootstrap-inputs): Remove. ("union-build"): Use %BOOTSTRAP-INPUTS-FOR-TESTS instead of %BOOTSTRAP-INPUTS. Ludovic Courtès
2019-06-14gnu: bootstrap: Download the bootstrap bash, mkdir, tar, and xz binaries....* gnu/packages/bootstrap.scm (%bootstrap-executables): New variable. (bootstrap-executable-url, bootstrap-executable): New procedure. (raw-build)[->store]: Use 'run-with-store' and 'origin->derivation'. Add calls to 'derivation->output-path', and remove the list of references passed to 'add-text-to-store' for BUILDER. Augment the list of #:inputs passed to 'derivation'. (package-from-tarball): Use 'bootstrap-executable' instead of 'search-bootstrap-binary'. (%bootstrap-glibc, %bootstrap-gcc, %bootstrap-mescc-tools) (%bootstrap-mes): Likewise. * guix/scripts/environment.scm (environment-bash): Use 'bootstrap-executable' instead of 'search-bootstrap-binary'. (guix-environment): Adjust CONTAINER? case accordingly. * po/guix/POTFILES.in: Add gnu/packages/bootstrap.scm. Ludovic Courtès
2019-06-13Merge branch 'master' into core-updatesLudovic Courtès
2019-05-29gnu: Add basic support for riscv64-linux-gnu targets....* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add "riscv64-linux". * gnu/packages/linux.scm (system->linux-architecture): Add "riscv" prefix. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> Carl Dong
2019-02-06Merge branch 'master' into core-updatesRicardo Wurmus