summaryrefslogtreecommitdiff
path: root/gnu/packages/make-bootstrap.scm
AgeCommit message (Collapse)Author
2021-09-30gnu: guile: Use 'modify-inputs' where appropriate.Ludovic Courtès
* gnu/packages/guile.scm (guile-3.0)[propagated-inputs]: Use 'modify-inputs'. (guile-3.0/libgc-7)[propagated-inputs]: Likewise. (guile-for-guile-emacs)[native-inputs]: Likewise. * gnu/packages/make-bootstrap.scm (make-guile-static): Likewise.
2021-09-30gnu: guile-static: Disable JIT on GNU/Hurd.Ludovic Courtès
* gnu/packages/make-bootstrap.scm (make-guile-static): Pass "--disable-jit" when targeting GNU/Hurd.
2021-09-30gnu: make-bootstrap: Remove more input labels.Ludovic Courtès
* gnu/packages/make-bootstrap.scm (%binutils-static-stripped)[inputs]: Remove. [arguments]: Turn #:builder into a gexp. (%mes-minimal-stripped)[inputs]: Remove. [arguments]: Turn #:builder into a gexp. (make-guile-static-stripped): Likewise.
2021-09-30gnu: make-bootstrap: Remove input labels.Ludovic Courtès
* gnu/packages/make-bootstrap.scm (%static-inputs): Remove labels. (%static-binaries)[arguments]: Special-case 'name' for "bash-static". (%linux-libre-headers-stripped)[inputs]: Remove label. (%mes-minimal)[native-inputs]: Remove label. (tarball-package)[native-inputs]: Remove labels. [inputs]: Remove. [arguments]: Rewrite as a gexp. (%bootstrap-tarballs)[inputs]: Remove labels.
2021-09-28gnu: make-bootstrap: Enable tests in static gawk build.Thiago Jung Bauermann
The tests were disabled because gawk’s extension mechanism doesn’t work when it’s built statically, and some tests fail because of that. Another alternative is to disable the extension mechanism during configuration time, which causes the testsuite to pass again. * gnu/packages/make-bootstrap.scm (%static-inputs)[gawk]<#:tests?>: Remove. <#:configure-flags>: Add. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-09-28gnu: make-bootstrap: Allow compilation of the statically-link gawk.Ludovic Courtès
Previously, linking would fail due to the '-fno-common' default in GCC 10: ld: /gnu/store/…-glibc-2.33-static/lib/libc.a(getopt.o): in function `_getopt_internal_r': (.text+0x6e0): multiple definition of `_getopt_internal_r'; support/libsupport.a(getopt.o):/tmp/guix-build-gawk-5.1.0.drv-0/gawk-5.1.0/support/getopt.c:404: first defined here ld: /gnu/store/…-glibc-2.33-static/lib/libc.a(getopt.o): in function `_getopt_internal': Reported by Thiago Jung Bauermann <bauermann@kolabnow.com>. * gnu/packages/make-bootstrap.scm (%static-inputs) <gawk>: Remove getopt.o from libsupport.a.
2021-09-06gnu: glibc-static: Fix static NSS support.Ludovic Courtès
Support for static NSS broke in glibc 2.33, meaning that 'getpw' & co. would always fail. This patch backports the upstream fix to reinstate it. Reported by Marius Bakke. * gnu/packages/patches/glibc-static-nss.patch: New file. * gnu/packages/make-bootstrap.scm (glibc-for-bootstrap): Use it. * gnu/local.mk (dist_patch_DATA): Add it.
2021-07-26gnu: mes-minimal-stripped: Explicitly disallow references.Ludovic Courtès
* gnu/packages/make-bootstrap.scm (%mes-minimal-stripped)[arguments]: Add #:allowed-references.
2021-07-26gnu: mes: Switch to Guile 3.0.Ludovic Courtès
* gnu/packages/mes.scm (nyacc-1.00.2)[inputs]: Change GUILE-2.2 to GUILE-3.0. (mes-0.19)[native-inputs]: Likewise. * gnu/packages/make-bootstrap.scm (%mes-minimal)[native-inputs]: Likewise.
2021-07-26gnu: mescc-tools: Update to 1.2.0.Ludovic Courtès
Fixes <https://issues.guix.gnu.org/49515>. * gnu/packages/mes.scm (mescc-tools-0.5.2): Remove. (mescc-tools): Update to 1.2.0. Use 'git-fetch'. * gnu/packages/make-bootstrap.scm (%mescc-tools-static): Inherit from MESCC-TOOLS rather than MESCC-TOOLS-0.5.2. (%mes-minimal): Inherit from MES rather than MES-0.19. [arguments]: Remove 'delete-file-recursively' for /mes/scaffold.
2021-07-26gnu: mes-minimal: Remove unused variable.Ludovic Courtès
* gnu/packages/make-bootstrap.scm (%mes-minimal): Remove unused 'triplet' variable.
2021-07-18Merge branch 'master' into core-updatesLudovic Courtès
2021-07-14utils: Define 'target-hurd?' predicate.Maxime Devos
It behaves similarily to the other target-...? procedures. The usage of hurd-triplet? / target-hurd? in libgc appears incorrect to me, as (%current-system) is normally never false. * gnu/packages/hurd.scm (hurd-triplet?): Move to ... * guix/util.scm (target-hurd?): ... here, let its argument default to (%current-target-system) or (%current-system), and write a docstring. * gnu/packages/hurd.scm (hurd-target?, hurd-system?): Use target-hurd? instead of hurd-triplet?. * gnu/packages/bdw-gc.scm (libgc): Likewise. * gnu/packages/cross-base.scm (cross-libc)[arguments]<#:configure-flags>: Likewise. (cross-libc)[arguments]<#:phases>: Likewise. (cross-libc)[arguments]<#:native-inputs>: Likewise. * gnu/packages/make-boostrap.scm (%glibc-stripped)[inputs]: Likewise. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-07-08gnu: %guile-3.0-static-stripped: Rename to %guile-static-stripped.Efraim Flashner
* gnu/packages/make-bootstrap.scm (%guile-3.0-static-stripped): Rename to %guile-static-stripped. (%guile-bootstrap-tarball): Adjust accordingly. * gnu/system/linux-initrd.scm (expression->initrd): Use %guile-static-stripped as default guile. * doc/guix.texi (initial RAM disk)[expression->initrd]: Adjust documentation accordingly.
2021-07-08gnu: make-bootstrap: Use guile-3.0 bootstrap tarball.Efraim Flashner
* gnu/packages/make-bootstrap.scm (%guile-bootstrap-tarball): Use guile-3.0. (%guile-static-stripped): Remove variable.
2021-07-08gnu: make-bootstrap: Build with gcc-7.Efraim Flashner
* gnu/packages/make-bootstrap.scm (gcc-for-bootstrap)[Inherit]: Inherit from gcc-7. [inputs]: Use package-inputs from gcc-7. (package-with-relocatable-glibc)[native-inputs]: Have cross-gcc use gcc-7. (%gcc-static)[inherit]: Inherit from gcc-7. [arguments]: Use package-arguments from gcc-7. [inputs]: Replace isl-0.18 with isl. Use package-inputs from gcc-7. [native-inputs]: Use package-native-inputs from gcc-7. (%gcc-stripped)[inherit]: Inherit from gcc-7.
2021-07-05gnu: bootstrap-tarballs: Turn builder into a gexp.Ludovic Courtès
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[arguments]: Turn #:builder into a gexp.
2021-07-05gnu: bootstrap-tarballs: Fix build.Ludovic Courtès
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[arguments]: Make 'use-modules' the first expression. Failing that, 'match' would not be properly expanded when running on Guile 3.0.
2021-05-22gnu: guile-static: Fix build without GMP.Marius Bakke
* gnu/packages/make-bootstrap.scm (make-guile-static)[arguments]: Add "--enable-mini-gmp" to #:configure-flags.
2021-05-22gnu: guile-static: Remove obsolete workaround.Marius Bakke
* gnu/packages/make-bootstrap.scm (make-guile-static)[arguments]: Don't disable JIT on ARMv7.
2021-03-24Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2021-03-14bootstrap: mescc-tools-static: Base arguments on version 0.5.2.Jan (janneke) Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%mescc-tools-static)[arguments]: Use fixed package-arguments of mescc-tools-0.5.2.
2020-09-20gnu: binutils: Update to 2.35.1.Ludovic Courtès
* gnu/packages/base.scm (binutils): Update to 2.35.1. [arguments]: Remove #:make-flags. [properties]: Remove. (binutils+documentation): Remove. (binutils-gold): Inherit from BINUTILS. * gnu/packages/make-bootstrap.scm (%binutils-static)[arguments]: Remove #:make-flags.
2020-06-06gnu: guile-static: Disable JIT on ARMv7.Ludovic Courtès
* gnu/packages/make-bootstrap.scm (make-guile-static): Pass "--disable-jit" when 'target-arm32?' is true.
2020-05-01gnu: Add relocatable static Guile 3.0 variant.Marius Bakke
* gnu/packages/patches/guile-2.2-default-utf8.patch: New file, extracted from commit 2acfe022a740f79b593348cc6362cc4ee8f33bb4. * gnu/packages/patches/guile-3.0-linux-syscalls.patch, gnu/packages/patches/guile-3.0-relocatable.patch: New files. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. Move all Guile patches together while at it. * gnu/packages/make-bootstrap.scm (%guile-3.0-static-stripped): New public variable.
2020-05-01gnu: %guile-static-stripped: Rewrite in terms of 'make-guile-static-stripped'.Marius Bakke
The derivation changes slightly, but the end result is bit-identical. * gnu/packages/make-bootstrap.scm (make-guile-static-stripped): New procedure. (%guile-static-stripped): Adjust accordingly.
2020-05-01gnu: %guile-static: Rewrite in terms of 'make-guile-static'.Marius Bakke
The derivation remains unchanged. * gnu/packages/make-bootstrap.scm (make-guile-static): New procedure. (%guile-static): Adjust accordingly.
2020-03-28gnu: gcc-static: Make sure #:modules is not overridden by the inherited GCC.Marius Bakke
This fixes a regression introduced by 56c833ea287f8f6d3c72f8bddc314960c0164d64 and 25bc0f34c6c059394f546f29a203c2cb9b7cdcf6 where #:modules became ineffective. * gnu/packages/make-bootstrap.scm (%gcc-static)[arguments]: Prepend the required modules to those inherited from GCC-5. While at it, do not splice in the inherited arguments.
2020-03-28gnu: guile-static: Provide a libgc variant with statically built libraries.Marius Bakke
* gnu/packages/bdw-gc.scm (libgc/static-libs): New public variable. * gnu/packages/make-bootstrap.scm (%guile-static)[propagated-inputs]: Change from LIBGC to LIBGC/STATIC-LIBS.
2020-03-26gnu: make-bootstrap: Use _IOLBF on Guile 2.0 only.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%binutils-static-stripped, %gcc-stripped, %bootstrap-tarballs)[arguments]: Wrap use of '_IOLBF' in 'cond-expand' and use 'line instead on Guile > 2.0.
2020-03-24gnu: bootstrap: gcc-static: Use gcc-5.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (gcc-static): Use gcc-5. This fixes building libstdc++-boot0 with a newly built %bootstrap-gcc. (%gcc-stripped): Likewise. (gcc-for-bootstrap): Likewise. * gnu/packages/patches/gcc-5-hurd.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/gcc.scm (gcc-5): Use it.
2020-03-24Revert "gnu: guile-static-stripped: Update to 2.2."Jan Nieuwenhuizen
As discussed on IRC, keeping bootstrap Guile on 2.0 simplifies adding new architectures and removes the need for parameterizing gnu/packages/bootstrap.scm. This reverts commit 2acfe022a740f79b593348cc6362cc4ee8f33bb4. * gnu/packages/make-bootstrap.scm (%guile-static): Revert to guile-2.0. Retain build recipe. * gnu/packages/patches/guile-relocatable.patch: Update for Guile 2.0.14.
2020-02-17gnu: commencement: %bootstrap-tarballs: Remove %bootstrap-binaries-tarball.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[i686-linux, x86_64-linux]: Remove %bootstrap-binaries-tarball. * gnu/packages/commencement.scm (file-boot0): Drop bzlib dependency.
2020-02-15gnu: isl: Move the static library to a separate output.Marius Bakke
* gnu/packages/gcc.scm (isl)[outputs, arguments]: New fields. * gnu/packages/make-bootstrap.scm (%gcc-static)[inputs]: Add ISL:STATIC.
2020-02-15gnu: binutils: Update to 2.34.Marius Bakke
* gnu/packages/base.scm (binutils): Update to 2.34. [arguments]: Add #:make-flags. [properties]: New field. (binutils+documentation): New public variable. * gnu/packages/make-bootstrap.scm (%binutils-static)[arguments]: Inherit #:make-flags.
2020-02-06gnu: gcc: Switch back to using 'C_INCLUDE_PATH' instead of 'CPATH'.Ludovic Courtès
Fixes <https://bugs.gnu.org/30756>. Initially reported by Julien Lepiller <julien@lepiller.eu>. * gnu/packages/base.scm (make-gcc-libc): Remove 'treat-glibc-as-system-header' phase from 'arguments'. * gnu/packages/commencement.scm (gcc-final): Likewise. * gnu/packages/gcc.scm (gcc-4.7)[arguments]: Add "include/c++" to 'CPLUS_INCLUDE_PATH'. (gcc-6)[native-search-paths]: Remove. * gnu/packages/make-bootstrap.scm (gcc-for-bootstrap): Remove 'native-search-paths' and 'arguments'. * gnu/packages/patches/python-2.7-search-paths.patch, gnu/packages/patches/python-3-search-paths.patch: Replace "CPATH" with "C_INCLUDE_PATH". * guix/build-system/cmake.scm (lower): When not cross-compiling, move INPUTS from the 'host-inputs' field to the 'build-inputs' field of the bag, right after NATIVE-INPUTS. * guix/build-system/glib-or-gtk.scm (lower): Likewise. * guix/build-system/gnu.scm (lower): Likewise. * guix/build-system/meson.scm (lower): Likewise.
2020-01-16gnu: make-bootstrap: Add cross-libc:static to the inputs.Mathieu Othacehe
This is a follow-up of 4610ab7c9a5327df0d475262817bc081a5891aa8. 'getpw' & co fail with a cross-compiled statically-linked guile. * gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc)[inputs]: Add "cross-libc:static".
2019-11-28gnu: Remove static-bash-for-bootstrap.Efraim Flashner
* gnu/packages/make-bootstrap.scm (static-bash-for-bootstrap): Remove variable. (%static-inputs): Let gawk use static-bash if %current-target-system. Use static-bash.
2019-11-09gnu: make-bootstrap: Slightly clarify 'package-with-relocatable-glibc'.Ludovic Courtès
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc) [cross-bootstrap-libc]: Take an explicit 'target' argument. Remove redundant 'parameterize' form. [inputs, native-inputs]: Adjust accordingly.
2019-11-09gnu: make-bootstrap: Memoize GCC variant.Ludovic Courtès
This reduces the number of nodes in "guix graph guile-static-stripped" from 165 to 150. Likewise, the hit rate in the 'add-data-to-store' cache for "guix build guile-static-stripped -nd" goes from 24% to 12%. * gnu/packages/make-bootstrap.scm (gcc-for-bootstrap): New procedure. (package-with-relocatable-glibc): Use it.
2019-10-21gnu: make-bootstrap: Memoize 'glibc-for-bootstrap'.Ludovic Courtès
This reduces the graph shown by: guix graph -e '(@@ (gnu packages make-bootstrap) %gcc-static)' from 258 nodes (2398 edges) to 179 nodes (1872 edges). * gnu/packages/make-bootstrap.scm (glibc-for-bootstrap): Turn into an 'mlambdaq'. (package-with-relocatable-glibc, %glibc-stripped): Explicitly pass an argument to 'glibc-for-bootstrap'.
2019-09-29bootstrap: bash: Update for bash-5.0.Jan Nieuwenhuizen
* gnu/packages/patches/bash-4.4-linux-pgrp-pipe.patch: Remove. * gnu/packages/patches/bash-reproducible-linux-pgrp-pipe.patch: New file. * gnu/packages/make-bootstrap.scm (static-bash-for-bootstrap): Update to use it. * gnu/local.mk (dist_patch_DATA): Likewise.
2019-09-29bootstrap: mes: Add mes-0.19.Jan Nieuwenhuizen
* gnu/packages/mes.scm (mes-0.19): New variable. (mes): Inherit it. * gnu/packages/make-bootstrap.scm (%mes-minimal): Likewise.
2019-09-29bootstrap: mescc-tools: Use mescc-tools-0.5.2, mescc-tools.Jan Nieuwenhuizen
* gnu/packages/mes.scm (mescc-tools-0.5.2): New variable; rename from mescc-tools. (mescc-tools): Rename from mescc-tools-0.6.1. Fix build. * gnu/packages/make-bootstrap.scm (%mescc-tools-static): Inherit fixed mescc-tools-0.5.2.
2019-08-29Merge branch 'master' into core-updatesMark H Weaver
2019-08-15bootstrap: guile-static: Disable parallel build.Mark H Weaver
* gnu/packages/make-bootstrap.scm (%guile-static)[arguments]: Override #:parallel-build? to be #f.
2019-08-15bootstrap: Build bootstrap bash deterministically.Mark H Weaver
* gnu/packages/patches/bash-4.4-linux-pgrp-pipe.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/make-bootstrap.scm (static-bash-for-bootstrap): New variable. (%static-inputs): Use 'static-bash-for-bootstrap' instead of 'static-bash'.
2019-08-15bootstrap: Build the new reduced binary seed bootstrap on x86.Mark H Weaver
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[inputs]: On i686-linux and x86_64-linux, substitute linux-libre-headers, Mes, and MesCC, in place of GCC, binutils, and glibc.
2019-08-15bootstrap: Add mes-minimal-stripped-tarball.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%mes-minimal, %mes-minimal-stripped, %mes-bootstrap-tarball): New variable. Modified-By: Mark H Weaver <mhw@netris.org>
2019-08-15bootstrap: Add mescc-tools-static-stripped-tarball.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%mescc-tools-static, %mescc-tools-static-stripped, %mescc-tools-bootstrap-tarball): New variable. Modified-By: Mark H Weaver <mhw@netris.org>