me
/
guix
Archived
1
0
Fork 0
Commit Graph

152 Commits (28e63ccfb6a15863dfcc802fa1f6de1bec95692c)

Author SHA1 Message Date
Pierre Langlois 48b754553a
gnu: glibc-for-bootstrap: Build with GCC 7.
Fixes <https://issues.guix.gnu.org/52066>.

* gnu/packages/make-bootstrap.scm (glibc-for-bootstrap)[native-inputs]:
Add gcc-7.
2021-11-27 14:23:30 +00:00
Ludovic Courtès b00fbabdf6
gnu: guile: Use 'modify-inputs' where appropriate.
* 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-30 00:06:30 +02:00
Ludovic Courtès da8be73d5b
gnu: guile-static: Disable JIT on GNU/Hurd.
* gnu/packages/make-bootstrap.scm (make-guile-static): Pass
"--disable-jit" when targeting GNU/Hurd.
2021-09-30 00:06:30 +02:00
Ludovic Courtès 191c1992b8
gnu: make-bootstrap: Remove more input labels.
* 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-30 00:06:29 +02:00
Ludovic Courtès 26d31db742
gnu: make-bootstrap: Remove input labels.
* 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-30 00:06:29 +02:00
Thiago Jung Bauermann 106181c0a0
gnu: make-bootstrap: Enable tests in static gawk build.
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-28 23:45:01 +02:00
Ludovic Courtès 7d30e6e5c2
gnu: make-bootstrap: Allow compilation of the statically-link gawk.
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-28 23:45:00 +02:00
Ludovic Courtès 08005133ec
gnu: glibc-static: Fix static NSS support.
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-09-06 13:50:00 +02:00
Ludovic Courtès da32015db0
gnu: mes-minimal-stripped: Explicitly disallow references.
* gnu/packages/make-bootstrap.scm (%mes-minimal-stripped)[arguments]:
Add #:allowed-references.
2021-07-26 13:24:28 +02:00
Ludovic Courtès 81096caf7d
gnu: mes: Switch to Guile 3.0.
* 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-26 13:24:28 +02:00
Ludovic Courtès 114a9f1f80
gnu: mescc-tools: Update to 1.2.0.
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-26 13:24:28 +02:00
Ludovic Courtès 8b627a7701
gnu: mes-minimal: Remove unused variable.
* gnu/packages/make-bootstrap.scm (%mes-minimal): Remove unused
'triplet' variable.
2021-07-26 13:24:23 +02:00
Ludovic Courtès 0e47fcced4
Merge branch 'master' into core-updates 2021-07-18 19:50:01 +02:00
Maxime Devos 637a1e7dcc
utils: Define 'target-hurd?' predicate.
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-14 15:38:03 +02:00
Efraim Flashner 49e2e75ced
gnu: %guile-3.0-static-stripped: Rename to %guile-static-stripped.
* 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-08 09:39:05 +03:00
Efraim Flashner e48cff0965
gnu: make-bootstrap: Use guile-3.0 bootstrap tarball.
* gnu/packages/make-bootstrap.scm (%guile-bootstrap-tarball): Use
guile-3.0.
(%guile-static-stripped): Remove variable.
2021-07-08 09:29:03 +03:00
Efraim Flashner f819b46acb
gnu: make-bootstrap: Build with gcc-7.
* 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-08 09:28:38 +03:00
Ludovic Courtès dbacdb8c03
gnu: bootstrap-tarballs: Turn builder into a gexp.
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[arguments]: Turn
 #:builder into a gexp.
2021-07-05 23:57:20 +02:00
Ludovic Courtès 8740a62b6b
gnu: bootstrap-tarballs: Fix build.
* 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-07-05 22:18:23 +02:00
Marius Bakke 69b048bf62
gnu: guile-static: Fix build without GMP.
* gnu/packages/make-bootstrap.scm (make-guile-static)[arguments]: Add
"--enable-mini-gmp" to #:configure-flags.
2021-05-22 17:28:37 +02:00
Marius Bakke 986e9025a5
gnu: guile-static: Remove obsolete workaround.
* gnu/packages/make-bootstrap.scm (make-guile-static)[arguments]: Don't
disable JIT on ARMv7.
2021-05-22 17:28:37 +02:00
Efraim Flashner 2aab587f84
Merge remote-tracking branch 'origin/master' into core-updates 2021-03-24 20:50:44 +02:00
Jan (janneke) Nieuwenhuizen a9d537594d
bootstrap: mescc-tools-static: Base arguments on version 0.5.2.
* gnu/packages/make-bootstrap.scm (%mescc-tools-static)[arguments]: Use
fixed package-arguments of mescc-tools-0.5.2.
2021-03-14 16:43:46 +01:00
Ludovic Courtès 2a3fccf70f
gnu: binutils: Update to 2.35.1.
* 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-09-20 23:56:30 +02:00
Ludovic Courtès b2ee53d5ae
gnu: guile-static: Disable JIT on ARMv7.
* gnu/packages/make-bootstrap.scm (make-guile-static): Pass
"--disable-jit" when 'target-arm32?' is true.
2020-06-06 23:28:49 +02:00
Marius Bakke 3ba23f0582
gnu: Add relocatable static Guile 3.0 variant.
* gnu/packages/patches/guile-2.2-default-utf8.patch: New file, extracted from
commit 2acfe022a7.
* 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-01 22:06:33 +02:00
Marius Bakke e66bbd4201
gnu: %guile-static-stripped: Rewrite in terms of 'make-guile-static-stripped'.
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-01 22:06:33 +02:00
Marius Bakke db7c73f53a
gnu: %guile-static: Rewrite in terms of 'make-guile-static'.
The derivation remains unchanged.

* gnu/packages/make-bootstrap.scm (make-guile-static): New procedure.
(%guile-static): Adjust accordingly.
2020-05-01 22:06:33 +02:00
Marius Bakke 313bf502b5
gnu: gcc-static: Make sure #:modules is not overridden by the inherited GCC.
This fixes a regression introduced by 56c833ea28
and 25bc0f34c6 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-28 20:55:03 +01:00
Marius Bakke aebcbb27bc
gnu: guile-static: Provide a libgc variant with statically built libraries.
* 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-28 08:59:35 +01:00
Jan Nieuwenhuizen 3342a1182b
gnu: make-bootstrap: Use _IOLBF on Guile 2.0 only.
* 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-26 07:43:36 +01:00
Jan Nieuwenhuizen 25bc0f34c6
gnu: bootstrap: gcc-static: Use gcc-5.
* 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-24 23:31:34 +01:00
Jan Nieuwenhuizen eef44fea17
Revert "gnu: guile-static-stripped: Update to 2.2."
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 2acfe022a7.

* 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-03-24 23:31:34 +01:00
Jan Nieuwenhuizen 6340afee28
gnu: commencement: %bootstrap-tarballs: Remove %bootstrap-binaries-tarball.
* 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-17 23:21:03 +01:00
Marius Bakke 5d8a4354ac
gnu: isl: Move the static library to a separate output.
* gnu/packages/gcc.scm (isl)[outputs, arguments]: New fields.
* gnu/packages/make-bootstrap.scm (%gcc-static)[inputs]: Add ISL:STATIC.
2020-02-15 22:02:56 +01:00
Marius Bakke 3e3a37b2bc
gnu: binutils: Update to 2.34.
* 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-15 22:02:55 +01:00
Ludovic Courtès 2073b55e6b
gnu: gcc: Switch back to using 'C_INCLUDE_PATH' instead of 'CPATH'.
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-02-06 18:47:15 +01:00
Mathieu Othacehe 8bd2b15b06
gnu: make-bootstrap: Add cross-libc:static to the inputs.
This is a follow-up of 4610ab7c9a. 'getpw' & co
fail with a cross-compiled statically-linked guile.

* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc)[inputs]:
Add "cross-libc:static".
2020-01-16 10:15:12 +01:00
Efraim Flashner b7fd304e28
gnu: Remove static-bash-for-bootstrap.
* 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-28 15:20:37 +02:00
Ludovic Courtès 929c365ad0
gnu: make-bootstrap: Slightly clarify 'package-with-relocatable-glibc'.
* 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-09 23:04:14 +01:00
Ludovic Courtès 0c72a719ef
gnu: make-bootstrap: Memoize GCC variant.
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-11-09 23:04:14 +01:00
Ludovic Courtès a273796ce5
gnu: make-bootstrap: Memoize 'glibc-for-bootstrap'.
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-10-21 18:16:16 +02:00
Jan Nieuwenhuizen 737c83f0ff
bootstrap: bash: Update for bash-5.0.
* 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-29 17:47:18 +02:00
Jan Nieuwenhuizen bffd8fcd31
bootstrap: mes: Add mes-0.19.
* gnu/packages/mes.scm (mes-0.19): New variable.
(mes): Inherit it.
* gnu/packages/make-bootstrap.scm (%mes-minimal): Likewise.
2019-09-29 17:47:18 +02:00
Jan Nieuwenhuizen 066cb9bab2
bootstrap: mescc-tools: Use mescc-tools-0.5.2, mescc-tools.
* 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-09-29 17:47:18 +02:00
Mark H Weaver 0481289cbc
Merge branch 'master' into core-updates 2019-08-29 17:19:18 -04:00
Mark H Weaver 9e6256ba0f
bootstrap: guile-static: Disable parallel build.
* gnu/packages/make-bootstrap.scm (%guile-static)[arguments]:
Override #:parallel-build? to be #f.
2019-08-15 14:46:23 -04:00
Mark H Weaver fe507d7a3d
bootstrap: Build bootstrap bash deterministically.
* 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-15 14:46:20 -04:00
Mark H Weaver 6744cef5b0
bootstrap: Build the new reduced binary seed bootstrap on x86.
* 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-15 14:46:18 -04:00
Jan Nieuwenhuizen ed050b1cf5
bootstrap: Add mes-minimal-stripped-tarball.
* 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-15 14:46:16 -04:00