Commit Graph

166 Commits

Author SHA1 Message Date
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
Jan Nieuwenhuizen
fb925c7257
bootstrap: Add mescc-tools-static-stripped-tarball.
* 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-15 14:46:13 -04:00
Jan Nieuwenhuizen
5b8c6abcfc
gnu: Add linux-libre-headers-bootstrap-tarball.
* gnu/packages/make-bootstrap.scm (%linux-libre-headers-stripped): New variable.
(%linux-libre-headers-bootstrap-tarball): New variable.
2019-08-15 14:46:10 -04:00
Marius Bakke
f16a866f74
gnu: bootstrap-tarballs: Don't include the native Mes when cross-compiling.
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[inputs]: Check
%CURRENT-TARGET-SYSTEM when deciding whether to use the reduced binary seeds.
2019-07-02 01:06:31 +02:00
Marius Bakke
25a54eb04d
gnu: make-bootstrap: Adjust for GCC 7.
* 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-02 01:06:31 +02:00
Marius Bakke
7c836efacc
gnu: make-bootstrap: Restore cross-compilation workarounds.
These workarounds were removed in cf82643647 and
218eb6e611, but were needed for %BOOTSTRAP-TARBALLS.

* gnu/packages/make-bootstrap.scm (%static-inputs)[coreutils, tar]: Add
<#:configure-flags>.
2019-07-02 01:06:30 +02:00
Marius Bakke
e050aa1990
gnu: make-bootstrap: Adjust for GCC7.
This is a follow-up to commit 01e8263feb.

* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc): Add the
GCC7 'treat-glibc-as-system-header' build phase.
2019-02-28 19:15:02 +01:00
Ludovic Courtès
86974d8a92
Merge branch 'master' into core-updates 2018-12-20 18:39:04 +01:00
Jan Nieuwenhuizen
20dd94b82f
bootstrap: Merge mes-minimal into mes-minimal-stripped.
* gnu/packages/make-bootstrap.scm (%mes-minimal): Remove.
(%mes-minimal-stripped): Configure using --mes.  Strip installation.
2018-12-16 22:49:10 +01:00
Jan Nieuwenhuizen
efa1ea20e6
bootstrap: mes-minimal-stripped: Do not strip bin.
* gnu/packages/make-bootstrap.scm (%mes-minimal-stripped): Do not strip bin.
2018-12-16 20:02:09 +01:00
Ludovic Courtès
4dd1edc7ae
gnu: glibc-stripped: Empty 'native-inputs' and 'propagated-inputs'.
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-14 23:55:55 +01:00
Marius Bakke
5b2da2a659
gnu: xz: Move liblzma.a to separate output.
* gnu/packages/compression.scm (xz)[arguments, outputs]: New fields.
* gnu/packages/make-bootstrap.scm (%static-inputs)[xz]: Don't inherit outputs.
2018-12-12 20:10:56 +01:00
Jan Nieuwenhuizen
da91723cc5
bootstrap: Force i686-linux for bootstrap-tarballs.
* 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-24 08:17:20 +01:00
Jan Nieuwenhuizen
d9ed0a4630
bootstrap: Update %bootstrap-tarballs.
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs): Update to use
%mescc-tools-bootstrap-tarball, %mes-bootstrap-tarball,
%linux-libre-headers-bootstrap-tarball.
2018-11-18 16:45:03 +01:00
Jan Nieuwenhuizen
a647da364a
bootstrap: Add %mes-minimal.
%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-18 16:38:11 +01:00
Jan Nieuwenhuizen
fae3c0d953
bootstrap: Add mescc-tools-static, mescc-tools-static-tarball.
* gnu/packages/make-bootstrap.scm (%mescc-tools-static,
%mescc-tools-bootstrap-tarball): New variable.
2018-11-18 08:08:17 +01:00
Jan Nieuwenhuizen
35dcf85157
bootstrap: Add %mes-stripped, %mes-bootstrap-tarball.
* 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-10-21 23:26:21 +02:00
Jan Nieuwenhuizen
d536c39e54
bootstrap: Replace GNU toolchain seeds with Mes for i686-linux.
* 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-23 09:46:26 +02:00
Jan Nieuwenhuizen
990ee30164
gnu: Add linux-libre-headers-bootstrap-tarball.
* gnu/packages/make-bootstrap.scm (%linux-libre-headers-stripped): New variable.
(%linux-libre-headers-bootstrap-tarball): New variable.
2018-09-23 09:46:25 +02:00
Marius Bakke
3f35e0da86
gnu: bootstrap-tarballs: Adjust to static outputs of zlib and libunistring.
* gnu/packages/make-bootstrap.scm (%gcc-static)[inputs]: Add ZLIB:STATIC.
(%guile-static)[inputs]: Add LIBUNISTRING:STATIC.
2018-08-21 17:24:26 +02:00
Marius Bakke
3359a70834
gnu: make-bootstrap: Inherit tar arguments in %static-inputs.
* gnu/packages/make-bootstrap.scm (%static-inputs)[tar]: Use
SUBSTITUTE-KEYWORD-ARGUMENTS so #:make-flags are inherited.
2018-04-05 23:42:26 +02:00
Mark H Weaver
647888845c
Merge branch 'master' into core-updates 2018-03-20 00:49:05 -04:00
Tobias Geerinckx-Rice
c695fb769c
gnu: Fix common unquote typos.
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-17 16:37:27 +01:00
Mark H Weaver
d1c86620f3
gnu: make-bootstrap: tarball-package: Use invoke instead of system*.
* gnu/packages/make-bootstrap.scm (tarball-package)[arguments]: Use invoke.
The builder always returns #t.
2018-03-16 06:44:26 -04:00
Mark H Weaver
1a83e2a286
gnu: guile-static-stripped: Use invoke instead of system*.
* gnu/packages/make-bootstrap.scm (guile-static-stripped)[arguments]: Use
invoke and remove vestigial plumbing.
2018-03-16 06:44:24 -04:00
Mark H Weaver
c2af3b0725
gnu: gcc-stripped: Use invoke instead of system*.
* gnu/packages/make-bootstrap.scm (gcc-stripped)[arguments]: Use invoke.  All
phases return #t.
2018-03-16 06:44:22 -04:00
Ricardo Wurmus
8c72ed923d
Merge branch 'master' into core-updates 2018-03-14 17:37:20 +01:00
Ludovic Courtès
63e48300d1
gnu: guile-static-stripped: Remove dependency on bash-minimal.
Previously guile-static-stripped, which is embedded in the initrd, would
depend on 'bash-minimal' and 'glibc'; the closure size was 77 MiB.  Now
the closure size is down to 45.7 MiB.

Reported by Danny Milosavljevic <dannym@scratchpost.org> in
<https://lists.gnu.org/archive/html/guix-devel/2018-02/msg00505.html>.

* gnu/packages/make-bootstrap.scm (%guile-static): Remove the
'pre-configure' phase.
(%guile-static-stripped)[arguments]: Add #:allowed-references.
2018-02-28 22:47:48 +01:00
Ludovic Courtès
29d37e999c
gnu: make-bootstrap: Build grep without PCRE support.
Partly fixes <https://bugs.gnu.org/24841>.
Reported by Chris Marusich <cmmarusich@gmail.com>.

This fixes cross-compilation of the statically-linked grep.

* gnu/packages/make-bootstrap.scm (%static-inputs): Add 'inputs' field
for grep.
2018-02-28 00:33:48 +01:00
Tobias Geerinckx-Rice
edbce464b9
gnu: make-bootstrap: Update phase style.
* gnu/packages/make-bootstrap.scm (%static-inputs): Use MODIFY-PHASES
syntax and end phases with #t.
(%binutils-static, %gcc-static)[arguments]: Likewise.
2018-02-20 16:06:10 +01:00
Ludovic Courtès
4610ab7c9a
gnu: make-bootstrap: Add libc:static to the inputs.
Fixes use of 'getpwnam' & co. from the statically-linked guile in the
initrd, as reported by Leo Famulari <leo@famulari.name> at
<https://lists.gnu.org/archive/html/guix-devel/2018-01/msg00061.html>.

* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc)[native-inputs]:
Add "libc:static".
2018-01-10 10:05:56 +01:00
Ludovic Courtès
c99a64e15f
gnu: guile-static: Reuse the existing phases.
This is a followup to 33c3a214a4.

* gnu/packages/make-bootstrap.scm (%guile-static)[arguments]: Use
'substitute-keyword-arguments'.  Honor the existing phases.
2017-12-31 01:20:30 +01:00
Ludovic Courtès
2acfe022a7
gnu: guile-static-stripped: Update to 2.2.
* gnu/packages/make-bootstrap.scm (%guile-static): Replace GUILE-2.0
with GUILE-2.2.  Use "guile-2.2-default-utf8.patch" instead of
"guile-default-utf8.patch".
* gnu/packages/patches/guile-2.2-default-utf8.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-07-18 15:31:12 +02:00
Ludovic Courtès
d5ec5ed719
packages: Mark 'replacement' as an "innate" field.
Suggested by Mark H Weaver
at <https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00355.html>.

* guix/packages.scm (<package>)[replacement]: Mark as "innate".
* gnu/packages/base.scm (glibc-2.25-patched, glibc-2.24)
(glibc-2.23, glibc-2.22, glibc-2.21, glibc-locales): Remove
'replacement' field, which was set to #f.
* gnu/packages/commencement.scm (perl-boot0): Likewise.
* gnu/packages/fontutils.scm (graphite2/fixed): Likewise.
* gnu/packages/ghostscript.scm (ghostscript/fixed): Likewise.
* gnu/packages/gnupg.scm (libgcrypt-1.7.8): Likewise.
* gnu/packages/guile.scm (guile-2.0/fixed, guile-2.2): Likewise.
* gnu/packages/icu4c.scm (icu4c/fixed): Likewise.
* gnu/packages/image.scm (libpng-apng): Likewise.
* gnu/packages/make-bootstrap.scm (%guile-static): Likewise.
* gnu/packages/pcre.scm (pcre/fixed): Likewise.
* gnu/packages/perl.scm (perl/fixed): Likewise.
* gnu/packages/ruby.scm (ruby-2.3, ruby-2.2, ruby-2.1)
(ruby-1.8): Likewise.
* gnu/packages/tls.scm (gnutls-3.5.13, gnutls/guile-2.2): Likewise.
* gnu/packages/xml.scm (expat-2.2.1): Likewise.
2017-07-03 23:51:22 +02:00
Mark H Weaver
e0775d2a01
gnu: Fix another call to cross-gcc.
This is a followup to commit 7b3318e34f.

* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc)
[native-inputs]: Fix 'cross-gcc' call.
* gnu/packages/cross-base.scm: Fix example 'cross-gcc' call in a comment.
2017-05-26 04:05:21 -04:00
Marius Bakke
84157bb8bf
Merge branch 'master' into core-updates
Most conflicts are from 6fd52309b8.
2017-03-30 22:59:53 +02:00
Tobias Geerinckx-Rice
6fd52309b8
gnu: Use HTTPS for almost all gnu.org HOME-PAGEs.
All HTTP gnu.org (and supported subdomain) HOME-PAGEs changed to HTTPS.
2017-03-30 01:30:16 +02:00
Efraim Flashner
b05fa64fcf
gnu: %static-inputs: Use 'grep' without custom phase.
This reverts commit 1063d325ea for during
creation of the bootstrap-binaries.

* gnu/packages/make-bootstrap.scm (%static-inputs): Use a custom 'grep'
without the absolute path name in fgrep/egrep.
2017-02-17 12:45:31 +02:00
Leo Famulari
74288230ea
Merge branch 'master' into core-updates 2017-01-06 17:14:41 -05:00
Carlos Sánchez de La Lama
fc649d0aad
gnu: gcc: Adjust for PowerPC.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Add powerpc specific
substitutions for dynamic linker and start files locations in
'pre-configure' phase.
* gnu/packages/make-bootstrap.scm (%gcc-static)[arguments]: Add
"gcc/config/rs6000/sysv4.h" to the list of files in 'remove-lgcc_s'
phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-04 23:55:36 +01:00
Manolis Ragkousis
62596a158b
gnu: Use hurd-triplet? to check if GNU/Hurd.
* gnu/packages/make-bootstrap.scm (hurd-triplet?): Move it from here..
* gnu/packages/hurd.scm: ..to here. New exported procedure.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)
  [arguments]: Replace string-match.
  [inputs]: Same.
* gnu/packages/cross-base.scm (cross-libc)[native-inputs]: Same.
2017-01-03 16:00:39 +02:00
Manolis Ragkousis
f13f60cb26
gnu: make-bootstrap: Produce the correct %glibc-bootstrap-tarball for Hurd systems.
* gnu/packages/make-bootstrap.scm (%glibc-bootstrap-tarball): Make it a procedure.
  (%glibc-stripped): Make it a procedure and move the kernel specific part from
  here to ...
* guix/build/make-bootstrap.scm (make-stripped-libc): ... here. New file.
* Makefile.am (MODULES): Add it.
2016-12-07 12:59:02 +02:00
Mark H Weaver
8b6ad165d1
Merge branch 'master' into core-updates 2016-11-06 03:29:06 -05:00
Ludovic Courtès
fb77c61422
gnu: Remove '%final-inputs' references at the top level.
Due to circular dependencies, referring to bindings exported by other
modules from the top level is frowned upon.  This patch addresses one of
the remaining cases.

* gnu/packages/base.scm (%final-inputs): New procedure.
* gnu/packages/cross-base.scm: Remove (gnu packages commencement) import.
(cross-gcc): Use the new '%final-inputs'.
* gnu/packages/make-bootstrap.scm: Remove (gnu packages commencement) import.
(package-with-relocatable-glibc): Use the new '%final-inputs'.
2016-11-04 15:36:00 +01:00
Mark H Weaver
ca0635b4ba
Merge branch 'master' into core-updates 2016-10-23 14:16:39 -04:00
Carlos Sánchez de La Lama
80c9164fd7
gnu: %static-inputs: Use bash from PATH in bootstrap tar.
gnu/packages/make-bootstrap.scm (%static-inputs): Use bash from PATH.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-10-19 23:20:19 +02:00
Ludovic Courtès
c62a31ca80
gnu: guile: Graft 2.0.13.
* gnu/packages/guile.scm (guile-2.0.13): New variable.
(guile-2.0)[replacement]: New field.
(guile-2.0/fixed)[properties, replacement]: New fields.
(guile-next)[replacement]: New field.
* gnu/packages/make-bootstrap.scm (%guile-static)[replacement]: New
field.
2016-10-13 23:08:17 +02:00
Ludovic Courtès
3abd66aa0c
gnu: make-bootstrap: Remove duplicate definition of 'bash-static'.
* gnu/packages/make-bootstrap.scm (%bash-static): Remove.
(%static-inputs): Use STATIC-BASH instead of %BASH-STATIC.
2016-10-13 16:26:53 +02:00
Manolis Ragkousis
55de892b43 gnu: glibc: Rename linux-headers input to kernel-headers.
* gnu/packages/base.scm (glibc)[propagated-inputs]: Use a kernel
  agnostic name for the kernel headers.
  [arguments]: Adjust accordingly.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)
  [propagated-inputs]: Adjust accordingly.
* gnu/packages/cross-base.scm (cross-gcc-arguments)[arguments]: Adjust
  accordingly.
  (cross-gcc)[native-inputs]: Adjust accordingly.
* gnu/packages/make-bootstrap.scm (%glibc-stripped)[arguments]: Adjust
  accordingly.
  [inputs]: Adjust accordingly.
2016-05-10 14:39:50 +03:00
Ludovic Courtès
7de1f10363
gnu: Add missing synopses and descriptions.
* gnu/packages/bootstrap.scm (package-from-tarball)
(%bootstrap-glibc, %bootstrap-gcc): Set 'description' field.
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs): Set 'synopsis'
and 'description'.
2016-04-27 11:57:48 +02:00
Ludovic Courtès
75710da667 Merge branch 'master' into core-updates 2015-09-13 21:28:01 +02:00
Ludovic Courtès
90f2801e21 gnu: Set license of the bootstrap tools.
* gnu/packages/bootstrap.scm (package-from-tarball)[license]: Set to
  GPL3+.
* gnu/packages/make-bootstrap.scm (%static-binaries)[license]:
  Likewise.
2015-09-06 12:36:15 +02:00
Alex Kost
f24931d841 gnu: bash-light: Rename to bash-minimal.
* gnu/packages/bash.scm (bash-light): Rename to ...
  (bash-minimal): ...this.
  (static-bash): Use it.
* gnu/packages/make-bootstrap.scm (%bash-static): Use it.
2015-09-06 12:33:21 +03:00
Manolis Ragkousis
70db9576f4 gnu: make-bootstrap: Remove unneeded configure flag from %gcc-static.
With this commit "guix build bootstrap-tarballs --target=i686-pc-gnu" works.

* gnu/packages/make-bootstrap.scm (%gcc-static): Remove unneeded
  --disable-decimal-float.
2015-09-04 13:50:38 +02:00
Mark H Weaver
92226a470d Build tarballs with deterministic file ordering.
* guix/packages.scm (patch-and-repack)[build],
  gnu/system/install.scm (self-contained-tarball)[build],
  gnu/packages/make-bootstrap.scm (tarball-package),
  gnu/packages/admin.scm (isc-dhcp),
  gnu/packages/video.scm (avidemux): Pass "--sort=name" to 'tar'.
2015-09-03 12:57:01 -04:00
Ludovic Courtès
96c4621056 gnu: Use 'install-file' instead of 'mkdir-p' and 'copy-file' in obvious cases.
* gnu/packages/bioinformatics.scm (bedtools, bowtie, bwa, hisat, samtools,
  plink, star): Use 'install-file' instead of 'mkdir-p' + 'copy-file'.
* gnu/packages/check.scm (catch-framework): Likewise.
* gnu/packages/code.scm (global): Likewise.
* gnu/packages/emacs.scm (magit-svn, haskell-mode, emacs-pdf-tools):
  Likewise.
* gnu/packages/engineering.scm (fastcap, fasthenry): Likewise.
* gnu/packages/gnuzilla.scm (nss): Likewise.
* gnu/packages/guile.scm (guile-minikanren): Likewise.
* gnu/packages/java.scm (swt): Likewise.
* gnu/packages/make-bootstrap.scm (%static-binaries): Likewise.
* gnu/packages/maths.scm (lpsolve): Likewise.
* gnu/packages/mp3.scm (mpc123): Likewise.
* gnu/packages/ninja.scm (ninja): Likewise.
* gnu/packages/python.scm (python-numpy, python-pyparsing): Likewise.
* gnu/packages/screen.scm (dtach): Likewise.
* gnu/packages/synergy.scm (synergy): Likewise.
* gnu/packages/textutils.scm (utf8proc): Likewise.
* gnu/packages/version-control.scm (git-test-sequence): Likewise.
* gnu/packages/wicd.scm (wicd): Likewise.
2015-08-29 01:25:08 +02:00
Mark H Weaver
c09e6a5f5e gnu: Build tarballs deterministically.
* gnu/packages/make-bootstrap.scm (tarball-package)[arguments]: Build tarball
  deterministically.
* gnu/packages/admin.scm (isc-dhcp)[arguments]: In 'post-configure' phase,
  create bind.tar.gz deterministically.
* gnu/packages/video.scm (avidemux)[arguments]: In 'repack-ffmpeg' phase,
  create ffmpeg-1.2.1.tar.bz2 deterministically.
2015-07-14 19:44:38 -04:00
Ludovic Courtès
c92f1c0a33 gnu: Refer to 'gcc' instead of 'gcc-4.9'.
* gnu/packages/commencement.scm (gcc-boot0, cross-gcc-wrapper,
  libstdc++, gcc-final): Refer to GCC instead of GCC-4.9.
* gnu/packages/cross-base.scm (%xgcc): New variable.
  (cross-gcc-arguments, cross-gcc): Refer to %XGCC instead of GCC-4.9.
* gnu/packages/llvm.scm (clang-from-llvm): Refer to GCC instead of GCC-4.9.
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc,
  %gcc-static, %gcc-stripped): Likewise.
2015-06-26 17:06:30 +02:00
Ludovic Courtès
1f175851e6 gnu: make-bootstrap: Build libbacktrace, required by cc1.
Fixes <http://hydra.gnu.org/build/506982/nixlog/1/tail-reload>.

* gnu/packages/make-bootstrap.scm (%gcc-static): Remove
  --disable-libbacktrace.  It is needed by cc1-checksum.
2015-06-15 15:01:55 +02:00
Ludovic Courtès
86d7043cad gnu: make-bootstrap: Update patching of gawk's configure.
* gnu/packages/make-bootstrap.scm (%static-inputs)[gawk]: Change
  "-export-dynamic" to "-Wl,-export-dynamic" to account for current
  'configure' file.
2015-06-15 00:09:25 +02:00
Ludovic Courtès
8dca238b15 gnu: make-bootstrap: Switch to GCC 4.9.
* gnu/packages/make-bootstrap.scm: Replace all occurrences of "gcc-4.8" with
  "gcc-4.9".
  (%gcc-static): Add --disable-libcilkrts, --disable-libvtv,
  --disable-libbacktrace.
2015-06-15 00:09:24 +02:00
Mark H Weaver
bcf2971f6e Merge branch 'master' into core-updates
Conflicts:
	gnu/packages/commencement.scm
	gnu/packages/xml.scm
2015-06-14 08:49:42 -04:00
Ludovic Courtès
0004c5904c packages: Make 'location' field innate.
* guix/packages.scm (<package>)[location]: Add 'innate' property.
* guix/build-system/gnu.scm (static-package): Remove 'loc' parameter and
  'location' field.
* gnu/packages/autotools.scm (autoconf-wrapper): Remove 'location' field.
* gnu/packages/commencement.scm (gnu-make-boot0, diffutils-boot0, gcc-final):
  Likewise.
* gnu/packages/cross-base.scm (cross): Likewise.
* gnu/packages/emacs.scm (emacs-no-x, emacs-no-x-toolkit): Likewise.
* gnu/packages/make-bootstrap.scm (tarball-package): Likewise.
* gnu/packages/maths.scm (petsc-complex): Likewise.
2015-06-11 23:33:32 +02:00
Ludovic Courtès
b15389e159 gnu: linux-libre-headers: Do not retain reference to the bootstrap tools.
* gnu/packages/linux.scm (linux-libre-headers)[install-phase]: Remove
  ".install" files from the output.
  [arguments]: Add #:allowed-references.
2015-06-04 14:37:53 +02:00
Mark H Weaver
270b501ee2 gnu: gcc-static: Remove -lgcc_s from GNU_USER_TARGET_LIB_SPEC.
* gnu/packages/make-bootstrap.scm (%gcc-static): Add 'remove-lgcc_s
  phase.
* gnu/packages/gcc.scm (gcc-4.7): Add comment.
2015-01-07 12:33:38 -05:00
Ludovic Courtès
bdb36958fb gnu: Split (gnu packages base), adding (gnu packages commencement).
* gnu/packages/base.scm (gnu-make-boot0, diffutils-boot0,
  findutils-boot0, %boot0-inputs, nix-system->gnu-triplet, boot-triplet,
  binutils-boot0, gcc-boot0, perl-boot0, linux-libre-headers-boot0,
  texinfo-boot0, %boot1-inputs, glibc-final-with-bootstrap-bash,
  cross-gcc-wrapper, static-bash-for-glibc, glibc-final,
  gcc-boot0-wrapped, %boot2-inputs, binutils-final, libstdc++,
  gcc-final, ld-wrapper-boot3, %boot3-inputs, bash-final, %boot4-inputs,
  guile-final, gnu-make-final, ld-wrapper, coreutils-final, grep-final,
  %boot5-inputs, %final-inputs, canonical-package, gcc-toolchain,
  gcc-toolchain-4.8, gcc-toolchain-4.9): Move to...
* gnu/packages/commencement.scm: ... here.  New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* build-aux/check-final-inputs-self-contained.scm: Adjust accordingly.
* gnu/packages/cross-base.scm: Likewise.
* gnu/packages/make-bootstrap.scm: Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/gnu.scm (standard-packages, gnu-build,
  gnu-cross-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* guix/download.scm (url-fetch): Likewise.
* guix/gexp.scm (default-guile): Likewise.
* guix/git-download.scm (git-fetch): Likewise.
* guix/monads.scm (run-with-store): Likewise.
* guix/packages.scm (default-guile): Likewise.
* guix/scripts/package.scm (guix-package): Likewise.
* guix/scripts/refresh.scm: Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.
* tests/builders.scm (%bootstrap-inputs, %bootstrap-search-paths):
  Likewise.
* tests/packages.scm ("GNU Make, bootstrap"): Likewise.
* tests/guix-package.sh: Likewise.
* gnu/services/base.scm: Use 'canonical-package' instead of xxx-final.
* gnu/services/xorg.scm: Likewise.
* gnu/system/vm.scm: Likewise.
* guix/scripts/pull.scm (guix-pull): Likewise.
2014-08-28 09:21:54 +02:00
Ludovic Courtès
6e3ecad6ca gnu: make-bootstrap: Make sure %gcc-stripped binaries are usable.
* gnu/packages/make-bootstrap.scm (%gcc-stripped):
  When (%current-target-system) is false, run gcc, g++, and cpp with
  --version.
2014-06-14 15:58:23 +02:00
Ludovic Courtès
c4873bc4f5 gnu: make-bootstrap: Build %gcc-static with --disable-lto.
* gnu/packages/make-bootstrap.scm (%gcc-static): Pass --disable-lto.
2014-06-14 15:34:56 +02:00
Ludovic Courtès
97b465feb1 gnu: make-bootstrap: Build libstdc++ in '%gcc-static'.
* gnu/packages/make-bootstrap.scm (%gcc-static): Re-enable C++.
2014-06-13 17:57:41 +02:00
Ludovic Courtès
37550e67b9 gnu: make-bootstrap: Use single-output GCCs.
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc)[native-inputs]:
  Add 'outputs' field for the rewritten GCC.
  (%gcc-stripped): Add 'outputs' field.
2014-06-13 15:57:23 +02:00
Ludovic Courtès
288a09ca91 gnu: make-bootstrap: Fix compilation of %gcc-static.
* gnu/packages/make-bootstrap.scm (%gcc-static)[arguments]
  <#:configure-flags>: Add --disable-bootstrap
  --with-stage1-ldflags=-static.
  Remove #:make-flags.
2014-06-12 23:27:25 +02:00
Ludovic Courtès
84e6756c57 gnu: gcc: Add a "lib" output.
* gnu/packages/gcc.scm (gcc-4.7)[configure-flags]: Add
  --with-gxx-include-dir.
  [outputs]: New field.
  [arguments] <phases>: Adjust to use the "lib" output.  Add
  'substitute*' calls for "libstdc++-v3/python/Makefile.in" and
  "gcc/config.in".
* gnu/packages/base.scm (gcc-boot0) <symlink-libgcc_eh>: Use the "lib"
  output.
  (cross-gcc-wrapper): Add 'outputs' field.
  (glibc-final)[arguments]: Adjust #:allowed-references to list
  '(GCC-BOOT0 "lib").
  (libstdc++): Add 'outputs' field.
  (gcc-final)[arguments]: Add "lib" to #:allowed-references.
* gnu/packages/make-bootstrap.scm (%gcc-static): Add 'outputs' field.
2014-06-09 11:58:43 +02:00
Ludovic Courtès
78214b4b89 gnu: make-bootstrap: Add missing export.
* gnu/packages/make-bootstrap.scm: Export '%guile-static-stripped'.  The
  problem was hidden because of <http://bugs.gnu.org/17418>.
2014-05-06 15:01:39 +02:00
John Darrington
db6190899e gnu: gnu-build-system: Add CC_FOR_BUILD to configure flags.
* guix/build/gnu-build-system.scm: Add new configure flag: CC_FOR_BUILD=gcc

* gnu/packages/gnupg.scm, gnu/packages/guile.scm, gnu/packages/make-bootstrap.scm:
  remove CC_FOR_BUILD from these package descriptions.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2013-12-17 21:28:07 +01:00
Ludovic Courtès
0ece707470 gnu: make-bootstrap: Add missing inputs for Canadian cross of '%gcc-static'.
* gnu/packages/make-bootstrap.scm (%gcc-static): Add 'native-inputs'
  field.
2013-11-23 16:07:29 +01:00
Ludovic Courtès
953ab5030f gnu: make-bootstrap: Simplify '%gcc-static'.
* gnu/packages/make-bootstrap.scm (%gcc-static): Add a bunch of
  --disable configure flags.  Remove useless 'inputs' field.
2013-11-20 19:01:27 +01:00
Ludovic Courtès
69f777d14c gnu: make-bootstrap: Build libc and Guile without a .gnu_debuglink.
* gnu/packages/make-bootstrap.scm (glibc-for-bootstrap, %guile-static):
  Add 'outputs' field.
2013-11-03 22:35:17 +01:00
Ludovic Courtès
c9323eac74 gnu: make-bootstrap: Allow bit-reproducibility for 'glibc-stripped'.
* gnu/packages/make-bootstrap.scm (%glibc-stripped): Remove '.install'
  and '..install.cmd' files.
2013-11-02 22:28:30 +01:00
Ludovic Courtès
55a5674f21 gnu: make-bootstrap: Add C++ header files to the bootstrap GCC.
* gnu/packages/make-bootstrap.scm (%gcc-stripped): Add $gcc/include/c++.
2013-11-02 15:17:08 +01:00
Ludovic Courtès
9ae7cee342 gnu: Switch to GCC 4.8 as the default compiler.
* gnu/packages/base.scm (gcc-boot0, cross-gcc-wrapper, gcc-final): Base
  on GCC-4.8.
* gnu/packages/cross-base.scm (cross-gcc): Likewise.
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc,
  %gcc-static, %gcc-stripped): Likewise.
2013-11-01 13:04:38 +01:00
Ludovic Courtès
dfb52abbd6 Remove weirdnesses caused by 'letrec*' behavior of record field initializers.
* gnu/packages/bootstrap.scm (package-from-tarball): Remove '*' from
  parameter names.  Adjust accordingly.
* gnu/packages/linux-initrd.scm (expression->initrd): Use 'name'
  directly, removing the 'name*' alias.
* gnu/packages/linux.scm (linux-libre-headers, linux-libre): Rename
  'version*' to 'version'.
2013-10-15 23:42:58 +02:00
Ludovic Courtès
01eafd38fb gnu: Use the 'patches' field of <origin>.
* gnu/packages/apr.scm,
  gnu/packages/autotools.scm,
  gnu/packages/avahi.scm,
  gnu/packages/cdrom.scm,
  gnu/packages/cmake.scm,
  gnu/packages/cpio.scm,
  gnu/packages/cross-base.scm,
  gnu/packages/emacs.scm,
  gnu/packages/flex.scm,
  gnu/packages/fontutils.scm,
  gnu/packages/glib.scm,
  gnu/packages/grub.scm,
  gnu/packages/guile.scm,
  gnu/packages/idutils.scm,
  gnu/packages/libevent.scm,
  gnu/packages/linux.scm,
  gnu/packages/mail.scm,
  gnu/packages/make-bootstrap.scm,
  gnu/packages/mp3.scm,
  gnu/packages/oggvorbis.scm,
  gnu/packages/pdf.scm,
  gnu/packages/plotutils.scm,
  gnu/packages/qemu.scm,
  gnu/packages/recutils.scm,
  gnu/packages/rush.scm,
  gnu/packages/scheme.scm,
  gnu/packages/system.scm,
  gnu/packages/tcsh.scm,
  gnu/packages/valgrind.scm,
  gnu/packages/vpn.scm,
  gnu/packages/w3m: Use the 'patches' field of <origin> instead of
  adding a patch as input plus using #:patches.
2013-10-09 00:11:34 +02:00
Ludovic Courtès
e47185a4a7 gnu: make-bootstrap: Remove the `debug' output from the static Coreutils.
* gnu/packages/make-bootstrap.scm (%static-inputs)[coreutils]: Add
  `outputs' field.
2013-08-29 00:05:03 +02:00
Ludovic Courtès
75ca2f4f47 gnu: make-bootstrap: Add a couple of synopses.
* gnu/packages/make-bootstrap.scm (%guile-static,
  %guile-static-stripped): Add synopsis.
2013-08-21 11:44:16 +02:00
Ludovic Courtès
3e8f16ba91 gnu: guile-static-stripped: Make sure the resulting binary works.
* gnu/packages/make-bootstrap.scm (%guile-static-stripped): When
  compiling natively, make sure the final binary works.
2013-08-21 11:38:51 +02:00
Ludovic Courtès
ffd2093440 gnu: make-bootstrap: Skip tests for the statically-linked gawk.
* gnu/packages/make-bootstrap.scm (%static-inputs)[gawk]: Add #:tests? #f.
2013-07-14 16:58:43 +02:00
Ludovic Courtès
3a4ebc1124 gnu: make-bootstrap: guile-static-stripped has no "debug" output.
* gnu/packages/make-bootstrap.scm (%guile-static-stripped): Add
  `outputs' field.
2013-07-05 14:39:47 +02:00