summaryrefslogtreecommitdiff
path: root/gnu/packages/make-bootstrap.scm
AgeCommit message (Collapse)Author
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>
2019-08-15gnu: Add linux-libre-headers-bootstrap-tarball.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%linux-libre-headers-stripped): New variable. (%linux-libre-headers-bootstrap-tarball): New variable.
2019-07-02gnu: bootstrap-tarballs: Don't include the native Mes when cross-compiling.Marius Bakke
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[inputs]: Check %CURRENT-TARGET-SYSTEM when deciding whether to use the reduced binary seeds.
2019-07-02gnu: make-bootstrap: Adjust for GCC 7.Marius Bakke
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc)[native-inputs]: Add SEARCH-PATHS to CROSS-GCC, and NATIVE-SEARCH-PATHS to the native GCC.
2019-07-02gnu: make-bootstrap: Restore cross-compilation workarounds.Marius Bakke
These workarounds were removed in cf8264364761857ca3550398369a0f20d7b0d512 and 218eb6e611c0a238802bf9cb5742d37cea0bb012, but were needed for %BOOTSTRAP-TARBALLS. * gnu/packages/make-bootstrap.scm (%static-inputs)[coreutils, tar]: Add <#:configure-flags>.
2019-02-28gnu: make-bootstrap: Adjust for GCC7.Marius Bakke
This is a follow-up to commit 01e8263febb9634564b4b73af49b81a36567a11b. * gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc): Add the GCC7 'treat-glibc-as-system-header' build phase.
2018-12-20Merge branch 'master' into core-updatesLudovic Courtès
2018-12-16bootstrap: Merge mes-minimal into mes-minimal-stripped.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%mes-minimal): Remove. (%mes-minimal-stripped): Configure using --mes. Strip installation.
2018-12-16bootstrap: mes-minimal-stripped: Do not strip bin.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%mes-minimal-stripped): Do not strip bin.
2018-12-14gnu: glibc-stripped: Empty 'native-inputs' and 'propagated-inputs'.Ludovic Courtès
These would needlessly pull in linux-libre-headers when running "guix build bootstrap-tarballs --target=i586-pc-gnu". * gnu/packages/make-bootstrap.scm (%glibc-stripped)[native-inputs] [propagated-inputs]: New fields.
2018-12-12gnu: xz: Move liblzma.a to separate output.Marius Bakke
* gnu/packages/compression.scm (xz)[arguments, outputs]: New fields. * gnu/packages/make-bootstrap.scm (%static-inputs)[xz]: Don't inherit outputs.
2018-11-24bootstrap: Force i686-linux for bootstrap-tarballs.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%mescc-tools-static): Force i686-linux for bootstrap-tarballs. (%mes-minimal): Likewise. Remove i686-linux cross-compiler dependency. * gnu/packages/commencement.scm (mes-boot): Support strict i686-linux build on x86_64.
2018-11-18bootstrap: Update %bootstrap-tarballs.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs): Update to use %mescc-tools-bootstrap-tarball, %mes-bootstrap-tarball, %linux-libre-headers-bootstrap-tarball.
2018-11-18bootstrap: Add %mes-minimal.Jan Nieuwenhuizen
%mes-minimal introduces a Mes for bootstrap that does not depend on graphviz, perl, and texinfo and thus does not build any documentation. This removes ~100 dependencies from bootstrap-tarballs. * gnu/packages/make-bootstrap.scm (%mes-minimal): New variable. (%mes-minmal-stripped): Rename from %mes-stripped. (%mes-bootstrap-tarball): Update.
2018-11-18bootstrap: Add mescc-tools-static, mescc-tools-static-tarball.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%mescc-tools-static, %mescc-tools-bootstrap-tarball): New variable.
2018-10-21bootstrap: Add %mes-stripped, %mes-bootstrap-tarball.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%mes-stripped): New variable. (%mes-bootstrap-tarball): New variable. * gnu/packages/mes.scm: Oops, remove stray (gnu packages commencement) module include.
2018-09-23bootstrap: Replace GNU toolchain seeds with Mes for i686-linux.Jan Nieuwenhuizen
* gnu/packages/bootstrap.scm (%bootstrap-inputs)[i686-linux]: Replace %bootstrap-gcc, %bootstrap-binutils, %bootstrap-glibc with %mescc-tools-seed, %mes-seed, %srfi-43 and %tinycc-seed. * gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[i686-linux]: Replace gcc-tarball, binutils-tarball, glibc-tarball with %mescc-tools-seed, %mes-seed, %srfi-43 and %tinycc-seed. * gnu/packages/commencement.scm (%bootstrap-inputs+toolchain)[i686-linux]: Add glibc-mesboot, binutils-mesboot, gcc-wrapper, gcc-mesboot. (file-boot0)[i686-linux]: Disable strip-binaries?, validate-runpath?. (libstdc++-boot0)[i686-linux]: Add libtool install workarourd: copy libstdc++.so.0.0.20 from gcc-mesboot. (gcc-boot0)[i686-linux]: Add libtool install workaround: touch libcc1.so.0.0.0, libcc1plugin.so.0.0.0. (perl-boot0): Disable validate-runpath?. (bison-boot0)[i686-linux]: Do not use ranlib -D.
2018-09-23gnu: Add linux-libre-headers-bootstrap-tarball.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%linux-libre-headers-stripped): New variable. (%linux-libre-headers-bootstrap-tarball): New variable.
2018-08-21gnu: bootstrap-tarballs: Adjust to static outputs of zlib and libunistring.Marius Bakke
* gnu/packages/make-bootstrap.scm (%gcc-static)[inputs]: Add ZLIB:STATIC. (%guile-static)[inputs]: Add LIBUNISTRING:STATIC.
2018-04-05gnu: make-bootstrap: Inherit tar arguments in %static-inputs.Marius Bakke
* gnu/packages/make-bootstrap.scm (%static-inputs)[tar]: Use SUBSTITUTE-KEYWORD-ARGUMENTS so #:make-flags are inherited.
2018-03-20Merge branch 'master' into core-updatesMark H Weaver
2018-03-17gnu: Fix common unquote typos.Tobias Geerinckx-Rice
It's easy to mistype ‘("foo" foo)’ as ‘("foo", foo)’ (which also works). Fix such typos for the proper edification of our young. * gnu/packages/android.scm: Move unquotes to their operands. * gnu/packages/bootloaders.scm: Likewise. * gnu/packages/build-tools.scm: Likewise. * gnu/packages/chemistry.scm: Likewise. * gnu/packages/compression.scm: Likewise. * gnu/packages/connman.scm: Likewise. * gnu/packages/django.scm: Likewise. * gnu/packages/emulators.scm: Likewise. * gnu/packages/engineering.scm: Likewise. * gnu/packages/file-systems.scm: Likewise. * gnu/packages/freedesktop.scm: Likewise. * gnu/packages/games.scm: Likewise. * gnu/packages/gimp.scm: Likewise. * gnu/packages/gl.scm: Likewise. * gnu/packages/gnome.scm: Likewise. * gnu/packages/graphics.scm: Likewise. * gnu/packages/haskell.scm: Likewise. * gnu/packages/irc.scm: Likewise. * gnu/packages/julia.scm: Likewise. * gnu/packages/kde-frameworks.scm: Likewise. * gnu/packages/linux.scm: Likewise. * gnu/packages/lua.scm: Likewise. * gnu/packages/mail.scm: Likewise. * gnu/packages/make-bootstrap.scm: Likewise. * gnu/packages/messaging.scm: Likewise. * gnu/packages/music.scm: Likewise. * gnu/packages/networking.scm: Likewise. * gnu/packages/ocaml.scm: Likewise. * gnu/packages/perl.scm: Likewise. * gnu/packages/python.scm: Likewise. * gnu/packages/python-web.scm: Likewise. * gnu/packages/qt.scm: Likewise. * gnu/packages/ratpoison.scm: Likewise. * gnu/packages/sdl.scm: Likewise. * gnu/packages/sml.scm: Likewise. * gnu/packages/terminals.scm: Likewise. * gnu/packages/text-editors.scm: Likewise. * gnu/packages/video.scm: Likewise. * gnu/packages/virtualization.scm: Likewise. * gnu/packages/vulkan.scm: Likewise. * gnu/packages/wget.scm: Likewise. * gnu/packages/wine.scm: Likewise. * gnu/packages/wm.scm: Likewise. * gnu/packages/xdisorg.scm: Likewise. * gnu/packages/xml.scm: Likewise. * gnu/packages/xorg.scm: Likewise.
2018-03-16gnu: make-bootstrap: tarball-package: Use invoke instead of system*.Mark H Weaver
* gnu/packages/make-bootstrap.scm (tarball-package)[arguments]: Use invoke. The builder always returns #t.
2018-03-16gnu: guile-static-stripped: Use invoke instead of system*.Mark H Weaver
* gnu/packages/make-bootstrap.scm (guile-static-stripped)[arguments]: Use invoke and remove vestigial plumbing.
2018-03-16gnu: gcc-stripped: Use invoke instead of system*.Mark H Weaver
* gnu/packages/make-bootstrap.scm (gcc-stripped)[arguments]: Use invoke. All phases return #t.