Commit Graph

358 Commits

Author SHA1 Message Date
Jan Nieuwenhuizen f29fdd4e00
gnu: commencement: %bootstrap-inputs+toolchain: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (%bootstrap-inputs+toolchain): Use Gash
instead of coreutils&co.
2020-02-17 23:16:45 +01:00
Jan Nieuwenhuizen 47fb2466b8
gnu: commencement: Remove m4-mesboot.
* gnu/packages/commencement.scm (m4-mesboot): Remove.
2020-02-17 23:16:45 +01:00
Jan Nieuwenhuizen 15af8e1d9d
gnu: commencement: Add coreutils-mesboot.
* gnu/packages/commencement.scm (coreutils-mesboot): New variable.
(%boot-mesboot6-inputs): New variable.
2020-02-17 23:16:45 +01:00
Jan Nieuwenhuizen d7e8467f97
gnu: commencement: gcc-mesboot-wrapper: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (gcc-mesboot-wrapper): Use Gash instead of
coreutils&co.
(%boot-mesboot5-inputs): New variable.
2020-02-17 23:16:45 +01:00
Jan Nieuwenhuizen d9de3abcab
gnu: commencement: gcc-mesboot: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (gcc-mesboot): Use Gash instead of
coreutils&co.
2020-02-17 23:16:45 +01:00
Jan Nieuwenhuizen 8b58e499cb
gnu: commencement: gcc-mesboot1-wrapper: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (gcc-mesboot1-wrapper): Use Gash instead of
coreutils&co.
2020-02-17 23:16:45 +01:00
Jan Nieuwenhuizen 6ff4188195
gnu: commencement: glibc-mesboot: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (glibc-mesboot): Use Gash instead of
coreutils&co.
2020-02-17 23:16:44 +01:00
Jan Nieuwenhuizen c8a2128a1f
gnu: commencement: glibc-headers-mesboot: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (glibc-headers-mesboot): Use Gash instead of
coreutils&co.
2020-02-17 23:16:44 +01:00
Jan Nieuwenhuizen 8bf7b70307
gnu: commencement: binutils-mesboot: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (binutils-mesboot): Use Gash instead of
coreutils&co.
* gnu/packages/commencement.scm (%boot-mesboot3-inputs): New variable.
2020-02-17 23:16:44 +01:00
Jan Nieuwenhuizen 079b2cf3a2
gnu: commencement: Add hello-mesboot.
* gnu/packages/commencement.scm (hello-mesboot): New variable.
2020-02-17 23:16:44 +01:00
Jan Nieuwenhuizen 9c4a021211
gnu: commencement: Add xz-mesboot.
* gnu/packages/commencement.scm (xz-mesboot): New variable.
2020-02-17 23:16:44 +01:00
Jan Nieuwenhuizen f48fe4e9e1
gnu: commencement: Add gcc-mesboot1: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (gcc-mesboot1): Use Gash instead of
coreutils&co.
2020-02-17 23:16:44 +01:00
Jan Nieuwenhuizen c1deb83850
gnu: commencement: Add bash-mesboot.
* gnu/packages/commencement.scm (bash-mesboot): New variable.
2020-02-17 23:16:44 +01:00
Jan Nieuwenhuizen 9a935f664e
gnu: commencement: Add gcc-core-mesboot1.
* gnu/packages/commencement.scm (gcc-core-mesboot1): New variable.
(gmp-boot, mpfr-boot, mpc-boot): Scheme-only bootstrap.
* gnu/packages/patches/gcc-boot-4.6.4.patch: New file.
* gnu/packages/patches/gcc-boot-4.7.4.patch: Remove.
* gnu/local.mk (dist_patch_DATA): Update.
2020-02-17 23:16:43 +01:00
Jan Nieuwenhuizen aad146a0bb
gnu: commencement: Add sed-mesboot.
* gnu/packages/commencement.scm (sed-mesboot): New variable.
2020-02-17 23:16:43 +01:00
Jan Nieuwenhuizen 53d5cb253b
gnu: commencement: Add gawk-mesboot.
* gnu/packages/commencement.scm (gawk-mesboot): New variable.
2020-02-17 23:16:43 +01:00
Jan Nieuwenhuizen 635ec0f43a
gnu: commencement: Add make-mesboot.
* gnu/packages/commencement.scm (make-mesboot): New variable.
2020-02-17 23:16:43 +01:00
Jan Nieuwenhuizen e6c7d14ab3
gnu: commencement: Add coreutils-mesboot0.
* gnu/packages/commencement.scm (coreutils-mesboot0): New variable.
2020-02-17 23:16:43 +01:00
Jan Nieuwenhuizen e7c7326873
gnu: commencement: Add binutils-mesboot1.
* gnu/packages/commencement.scm (binutils-mesboot1): New variable.
2020-02-17 23:16:43 +01:00
Jan Nieuwenhuizen fa638c18b6
gnu: commencement: Add grep-mesboot.
* gnu/packages/commencement.scm (grep-mesboot): New variable.
2020-02-17 23:16:42 +01:00
Jan Nieuwenhuizen 125d7c5871
gnu: commencement: Add tar-mesboot.
* gnu/packages/commencement.scm (tar-mesboot): New variable.
2020-02-17 23:16:42 +01:00
Jan Nieuwenhuizen 71fb04a5e3
gnu: commencement: gcc-mesboot0: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (gcc-mesboot0): Use Gash instead of
coretutils&co.
* gnu/packages/commencement.scm (%boot-mesboot0-inputs): New variable.
2020-02-17 23:16:42 +01:00
Jan Nieuwenhuizen f6b911fb5f
gnu: commencement: glibc-mesboot0: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (glibc-mesboot0): Use Gash instead of
coretutils&co.
2020-02-17 23:16:42 +01:00
Jan Nieuwenhuizen 562c6e3c52
gnu: commencement: mesboot-headers: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (mesboot-headers): Use Gash instead of
coretutils&co.
2020-02-17 23:16:42 +01:00
Jan Nieuwenhuizen 2c67281481
gnu: commencement: Add gawk-mesboot0.
* gnu/packages/commencement.scm (gawk-mesboot0): New variable.
2020-02-17 23:16:42 +01:00
Jan Nieuwenhuizen 066169601c
gnu: commencement: gcc-core-mesboot0: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (gcc-core-mesboot0): Rename from
gcc-core-mesboot; Use Gash instead of coretutils&co.
2020-02-17 23:16:41 +01:00
Jan Nieuwenhuizen cb167958ea
gnu: commencement: binutils-mesboot0: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (binutils-mesboot0): Use Gash instead of
coretutils&co; downgrade to 2.14.0.
2020-02-17 23:16:41 +01:00
Jan Nieuwenhuizen b755ffef0a
gnu: commencement: Add sed-mesboot0.
* gnu/packages/commencement.scm (sed-mesboot0): New variable.
* gnu/packages/commencement.scm (%boot-tcc-inputs): New variable.
2020-02-17 23:16:41 +01:00
Jan Nieuwenhuizen 1a433d3964
gnu: commencement: Add patch-mesboot.
* gnu/packages/commencement.scm (patch-mesboot): New variable.
2020-02-17 23:16:41 +01:00
Jan Nieuwenhuizen aa196f1f02
gnu: commencement: diffutils-mesboot: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (diffutils-mesboot): Use Gash instead of
coretutils&co.
2020-02-17 23:16:41 +01:00
Jan Nieuwenhuizen 1be3efb397
gnu: commencement: tcc-boot: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (tcc-boot): Use Gash instead of coretutils&co.
2020-02-17 23:16:41 +01:00
Jan Nieuwenhuizen d9484fba91
gnu: commencement: Add bash-mesboot0.
* gnu/packages/commencement.scm (bash-mesboot0): New variable.
2020-02-17 23:16:40 +01:00
Jan Nieuwenhuizen 0bf3466372
gnu: commencement: Add bzip2-mesboot.
* gnu/packages/commencement.scm (bzip2-mesboot): New variable.
2020-02-17 23:16:40 +01:00
Jan Nieuwenhuizen 19be1dc65b
gnu: commencement: make-mesboot0: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (make-mesboot0): Use Gash instead of
coreutils&co.
(%boot-tcc0-inputs): New variable.
2020-02-17 23:16:40 +01:00
Jan Nieuwenhuizen b022827de5
gnu: commencement: Add gzip-mesboot.
* gnu/packages/commencement.scm (gzip-mesboot): New variable.
2020-02-17 23:16:40 +01:00
Jan Nieuwenhuizen 5dedce047c
gnu: commencement: tcc-boot0: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (tcc-boot0): Use Gash instead of
coretutils&co.
2020-02-17 23:16:40 +01:00
Jan Nieuwenhuizen c9c1cbf60d
gnu: commencement: mes-boot: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (mes-boot): Update to 0.21-32-g51c7e5f6f.  Use
Gash instead of coretutils&co.
2020-02-17 23:16:40 +01:00
Jan Nieuwenhuizen da2ae09b42
gnu: commencement: Add %bootstrap-mes-rewired.
* gnu/packages/commencement.scm (%bootstrap-mes-rewired): New variable.
2020-02-17 23:16:40 +01:00
Jan Nieuwenhuizen 9f5a22b9de
gnu: commencement: Add gash-core-utils-boot.
* gnu/packages/commencement.scm (gash-core-utils-boot): New variable.
(%boot-gash-inputs): New variable.
2020-02-17 23:16:39 +01:00
Jan Nieuwenhuizen d3aec6bd89
gnu: commencement: Add gash-boot.
* gnu/packages/commencement.scm (gash-boot): New variable.
2020-02-17 23:16:39 +01:00
Jan Nieuwenhuizen 899c8f3afa
gnu: commencement: Add %bootstrap-guile+guild.
* gnu/packages/commencement.scm (%bootstrap-guile+guild): New variable.
2020-02-17 23:16:39 +01:00
Marius Bakke 429243a43a
gnu: linux-libre-headers: Update to 5.4.20.
* gnu/packages/linux.scm (linux-libre-headers-4.19.56): Rename to ...
(linux-libre-headers-5.4.20): ... this.  Update to 5.4.20.
(linux-libre-headers): Adjust accordingly.
* gnu/packages/commencement.scm (rsync-boot0): New variable.
(linux-libre-headers-boot0)[native-inputs]: Add RSYNC-BOOT0.
2020-02-15 22:02:54 +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
Ludovic Courtès 558b0bbe29
gnu: commencement: Rationalize search path handling.
This commit ensures that only packages that correspond to compilers have
a search path set.  It also reduces manual handling of search path
environment variables.

* gnu/packages/commencement.scm (tcc-boot0)[native-search-paths]: Remove
copy/pasted comment.
(gcc-core-mesboot)[arguments]: In 'install2' phase, do not copy
TCC/include to OUT/include.
[native-search-paths]: Remove leading slash in "lib/gcc-lib/…" directory name.
(mesboot-headers)[native-search-paths]: Remove.
(glibc-mesboot0)[native-search-paths]: Remove.
(gcc-mesboot0)[native-inputs]: Reorder so that we have libc, then
kernel-headers, then gcc.
[arguments]: Rewrite 'setenv' phase to only set CONFIG_SHELL and create
'config.cache'.
(gcc-mesboot1)[native-inputs]: Reorder similarly.
[arguments]: In 'setenv' phase, only set CONFIG_SHELL, C_INCLUDE_PATH,
and CPLUS_INCLUDE_PATH.
(glibc-headers-mesboot)[arguments]: In 'setenv' phase, replace
references to '%build-inputs' by references to 'inputs'; simplify
setting of CONFIG_SHELL and SHELL; simplify patching of /bin/pwd in
the "configure" file; leave C_INCLUDE_PATH and LIBRARY_PATH unset.
(glibc-mesboot)[native-search-paths]: Remove.
(gcc-mesboot)[native-inputs]: Reorder.
[arguments]: Remove clause for #:phases that would change the 'setenv'
phase.
2020-02-06 18:47:15 +01:00
Ludovic Courtès a1caea07f6
gnu: commencement: Avoid hard-coded GCC version numbers.
* gnu/packages/commencement.scm (gcc-mesboot1, gcc-mesboot): Use
'package-version' instead of hard-coding the version number.
2020-02-06 18:47:15 +01:00
Marius Bakke 52665d2b6b
Merge branch 'staging' into core-updates 2020-02-03 15:45:44 +01:00
Marius Bakke 82ca7b2a3a
gnu: commencement: Remove unused module imports.
* gnu/packages/commencement.scm: Do not import (guix licenses),
(srfi srfi-26), and (ice-9 regex).
2020-02-03 12:34:31 +01:00
Marius Bakke cdba91486a
gnu: make: Update to 4.3.
* gnu/packages/patches/make-impure-dirs.patch: Adjust for renamed files.
* gnu/packages/patches/make-glibc-compat.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/base.scm (gnu-make): Update to 4.3.
[source](uri): Change to ".gz" tarball.
[source](patches): Remove obsolete.
[arguments]: Remove #:configure-flags.  Adjust for renamed files.
[inputs]: Change from GUILE-2.0 to GUILE-3.0.
* gnu/packages/commencement.scm (gnu-make-boot0)[arguments]: Add #:configure-flags.
2020-01-21 23:17:20 +01:00
Marius Bakke 73fec9ca10
gnu: python-boot0: Update to 3.5.9.
* gnu/packages/commencement.scm (python-boot0): Update to 3.5.9.
2020-01-14 18:31:35 +01:00
Marius Bakke 404efac48b
gnu: python-boot0: Do not inherit source snippet from python.
This is in preparation for Python 3.8 which requires changes.

* gnu/packages/commencement.scm (python-boot0)[source]: Copy modules and
snippet from PYTHON instead of inheriting.
2020-01-14 18:31:35 +01:00
Marius Bakke b7bf02a418
Merge branch 'master' into core-updates 2020-01-11 22:38:24 +01:00
Jonathan Brielmaier 34e8f0afef
gnu: make-gcc-toolchain: Fix typo in description.
* gnu/packages/commencement.scm (make-gcc-toolchain)[description]: Fix typo
and triple spacing.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2020-01-11 21:28:05 +01:00
Mathieu Othacehe ce9383c090
Merge remote-tracking branch 'master' into core-updates. 2019-12-31 11:04:51 +01:00
Konrad Hinsen 4ac5d4fee1
gnu: Add gfortran-toolchain
* gnu/packages/commencement.scm: (gfortran-toolchain): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-12-15 00:34:05 +01:00
Efraim Flashner c9e676d0b1
Merge remote-tracking branch 'origin/master' into core-updates 2019-12-12 04:10:59 +02:00
Ludovic Courtès deeaa9e199
gnu: tcc-boot0: Add ftp.gnu.org URL for the source tarball.
The generated source tarball from gitlab.com is now mirrored at
ftp.gnu.org to ensure that it remains available, unchanged.

* gnu/packages/commencement.scm (tcc-boot0)[source]: Add "mirror://gnu" URL.
2019-12-08 00:47:26 +01:00
Marius Bakke 717867a6ef
gnu: findutils: Update to 4.7.0.
* gnu/packages/patches/findutils-gnulib-libio.patch,
gnu/packages/patches/findutils-makedev.patch,
gnu/packages/patches/findutils-test-xargs.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/base.scm (findutils): Update to 4.7.0.
[source](uri): Adjust for file name change.
[source](snippet): Remove.
[source](patches): Remove obsolete.
[arguments]: Remove obsolete workaround.  Add phase to patch tests.
* gnu/packages/commencement.scm (findutils-boot0)[arguments]: Allow 32-bit
time_t on 64-bit systems.
2019-12-05 17:59:01 +01:00
Mathieu Othacehe 154d97abdd
Merge remote-tracking branch master into core-updates 2019-11-16 09:34:27 +01:00
Ludovic Courtès 537b2daba9
gnu: commencement: Ensure 'gnu-make-final' refers to the native 'pkg-config'.
Fixes <https://bugs.gnu.org/38093>.

When running:

  guix build --target=arm-linux-gnueabihf -e '(@ (gnu packages base) coreutils)'

the '%current-target-system' parameter is set by the time the top-level
of (gnu packages commencement) is evaluated.  Consequently, we need to
ensure that the 'pkg-config' macro evaluates in a context where
'%current-target-system' is unset.

* gnu/packages/commencement.scm (gnu-make-final): Refer to '%pkg-config'
instead of 'pkg-config'.
* tests/guix-build.sh: Add test.
2019-11-07 18:39:55 +01:00
Ludovic Courtès 32793c09ff
gnu: commencement: Memoize uses of 'cross-gcc-wrapper'.
This improves caching down the road.

* gnu/packages/commencement.scm (gcc-boot0-intermediate-wrapped)
(gcc-boot0-wrapped): Use 'mlambda' instead of 'lambda'.
2019-11-04 23:35:32 +01:00
Ludovic Courtès fd67cdb7e3
gnu: commencement: Clean up 'gnu-make-final' dependencies.
* gnu/packages/commencement.scm (gnu-make-final): Remove GUILE-FINAL
from the inputs of 'pkg-config'.
2019-10-14 15:42:42 +02:00
Ludovic Courtès 6254823271
gnu: bison-boot0: Remove conditional parallel build/test flags.
* gnu/packages/commencement.scm (bison-boot0)[arguments]: Remove
conditional #:parallel-build? and #:parallel-tests? flags.
Append (package-arguments bison).
2019-10-14 15:40:35 +02:00
Ludovic Courtès e5c1f5cfdf
gnu: bison-boot0: Set name to "bison-boot0".
* gnu/packages/commencement.scm (bison-boot0)[name]: New field.
2019-10-14 15:38:23 +02:00
Ludovic Courtès 57bc2dcf0b
gnu: commencement: Remove 'm4-boot0*'.
* gnu/packages/commencement.scm (m4-boot0*): Remove.
(bison-boot0, flex-boot0): Use M4-BOOT0 instead.
2019-10-14 15:37:25 +02:00
Ludovic Courtès efa8fddabe
gnu: commencement: Use 'package-with-explicit-inputs' for Hurd packages.
* gnu/packages/commencement.scm (with-boot0): New procedure.
(gnumach-headers-boot0, mig-boot0)
(hurd-headers-boot0, hurd-minimal-boot0)
(hurd-core-headers-boot0): Use it instead of 'package-with-explicit-inputs'.
2019-10-14 00:08:10 +02:00
Ludovic Courtès 8f417ed280
gnu: commencement: Further optimize the package object graph.
For a package like:

  (define-public xxx
    (package
      (inherit (@ (gnu packages base) coreutils))
      (name "xxx")
      (inputs (@ (gnu packages commencement) %final-inputs))
      (native-inputs '())
      (propagated-inputs '())
      (arguments '(#:implicit-inputs? #f))))

this reduces the package object graph from 176 nodes (1852 edges) to 113
nodes (1114 edges).

The number of 'add-data-to-store' calls in "guix build coreutils -nd"
drops from 2045 to 1301, and the number of memoization tables drops from
102 to 40.

"guix build libreoffice -nd" goes from 2.40s to 2.27s.

* gnu/packages/commencement.scm (with-boot4): New variable.
(guile-final, glibc-utf8-locales-final): Use it.
(with-boot4, with-boot5): New variable.
(gnu-make-final): Rewrite to avoid 'package-with-explicit-inputs'.
(coreutils-final): Use 'with-boot5' instead of
'package-with-explicit-inputs'.
(grep-final): Likewise.
(with-boot6): New variable.
(sed-final, %final-inputs): Use it.
2019-10-14 00:08:10 +02:00
Ludovic Courtès dab669e075
gnu: ld-wrapper: Memoize.
The command:

  guix graph -e '(@@ (gnu packages commencement) coreutils-final)'

now shows 93 nodes (992 edges) instead of 176 nodes (1241 edges).

* gnu/packages/commencement.scm (ld-wrapper-boot0): Use 'mlambda'
instead of 'lambda'.
(ld-wrapper-boot3): Likewise.
2019-10-12 15:18:25 +02:00
Ludovic Courtès 099dbc4fd3
gnu: Improve memoization of 'package-with-bootstrap-guile'.
Before that, the command:

  GUIX_PROFILING=memoization guix build -e '(@@ (gnu packages commencement) gnu-make-final)' -nd

would show that 'package-with-bootstrap-guile' was called 2256
times (hit rate: 89%).  Now, it is called 745 times (hit rate: 85%).

"guix build libreoffice -nd" goes from 2.60s to 2.40s (-8%).

* gnu/packages/commencement.scm (gnu-make-final)
(coreutils-final, grep-final, sed-final, %final-inputs): Call
'package-with-bootstrap-guile' before 'package-with-explicit-inputs'.
2019-10-12 15:18:25 +02:00
Ludovic Courtès 99b73d0f0c
gnu: commencement: Reduce the graph of package objects.
The graph returned by:

  guix graph -e '(@@ (gnu packages commencement) guile-final)'

now contains 94 nodes (664 edges) instead of 394 (2674 edges).

Likewise, this command:

  GUIX_PROFILING=add-data-to-store-cache guix build coreutils -nd

shows that the number of lookups to the 'add-data-to-store' caches goes
from 8935 to 5303.

Overall, "guix build libreoffice -nd" goes from 3.17s to 2.60s (-18%).

* gnu/packages/commencement.scm (diffutils-boot0): Remove call to
'package-with-bootstrap-guile' and 'package-with-explicit-inputs', and
adjust accordingly.
(findutils-boot0, file-boot0, binutils-boot0, libstdc++-boot0)
(gcc-boot0, perl-boot0, m4-boot0, bison-boot0, flex-boot0)
(linux-libre-headers-boot0, texinfo-boot0, python-boot0)
(ld-wrapper-boot0, glibc-final-with-bootstrap-bash)
(static-bash-for-glibc, gettext-boot0, glibc-final, binutils-final)
(libstdc++, zlib-final, bash-final): Likewise.
(expat-sans-tests)[inputs]: New field.
[arguments]: Add #:implicit-inputs? and #:guile.
(m4-boot0*): New variable.
2019-10-12 12:25:08 +02:00
Ludovic Courtès 9a45a24f7f
gnu: Remove unnecessary uses of 'package-with-bootstrap-guile'.
This reduces the object graph returned by:

  guix graph -e '(@@ (gnu packages commencement) glibc-final-with-bootstrap-bash)

from 333 nodes (1542 edges) to 148 nodes (886 edges).

This improves 'package-derivation' memoization and, consequently, the
'add-data-to-store' cache shown by:

  GUIX_PROFILING=add-data-to-store-cache guix build coreutils -nd

goes from 10948 lookups to 8935 lookups.

* gnu/packages/commencement.scm (mes-boot): Remove call to
'package-with-bootstrap-guile'.  Call 'bootstrap-origin' on the source
of NYACC-0.86.
(tcc-boot0): Likewise.
(tcc-boot): Remove call to 'package-with-bootstrap-guile' and call
'bootstrap-origin' on its source.
(make-mesboot0): Remove call to 'package-with-bootstrap-guile'.
(diffutils-mesboot): Likewise.
(binutils-mesboot0): Likewise, and call 'bootstrap-origin' for its
source.
(gcc-core-mesboot): Likewise.
(mesboot-headers): Remove call to 'package-with-bootstrap-guile'.
(glibc-mesboot0): Likewise, and call 'bootstrap-origin' for its source.
(gcc-mesboot0): Remove call to 'package-with-bootstrap-guile'.
(binutils-mesboot): Likewise.
(make-mesboot): Likewise.
(gcc-mesboot1): Likewise, and call 'bootstrap-origin' for its source.
(gcc-mesboot1-wrapper): Remove call to 'package-with-bootstrap-guile'.
(glibc-headers-mesboot): Likewise, and call 'bootstrap-origin' for its
source.
(glibc-mesboot): Remove call to 'package-with-bootstrap-guile'.
(gcc-mesboot): Likewise, and call to 'bootstrap-origin' for its source.
(gcc-mesboot-wrapper): Remove call to 'package-with-bootstrap-guile'.
(m4-mesboot): Likewise.
(gnu-make-boot0): Likewise, and call 'bootstrap-origin' for its source.
2019-10-12 12:25:08 +02:00
Ludovic Courtès 0b2ea78173
maint: Placate 'assert-no-store-file-names'.
Reported by Vagrant Cascadian <vagrant@debian.org>.

* Makefile.am (assert-no-store-file-names): Exclude
"binutils-boot-2.20.1a.patch" since it contains a store file name as a
comment.
* gnu/packages/commencement.scm (glibc-mesboot0): Use an ellipsis
instead of an actual store file name in comment.
2019-09-08 23:03:43 +02:00
Jan Nieuwenhuizen d7303a048d
bootstrap: mes-boot: Fix at 0.19.
This allows updating Mes without triggering a rebuild.

* gnu/packages/commencement.scm (mes-boot): Fix 0.19.
2019-09-08 10:49:15 +02:00
Mark H Weaver 65542a8852
Merge branch 'master' into core-updates 2019-09-06 20:46:00 -04:00
Mathieu Othacehe 58a75996ec
gnu: glibc-utf8-locales: Fix cross-compilation.
* gnu/packages/base.scm (glibc-utf8-locales)[inputs]: Move to ...
[native-inputs]: ... here, in order to fix cross-compilation.
* gnu/packages/commencement.scm (glibc-utf8-locales-final)[inputs]: Move to ...
[native-inputs]: ... here, in order to fix cross-compilation.
2019-09-04 18:05:59 +02:00
Ludovic Courtès c55fae4520
gnu: bison-boot0: Build sequentially.
This is a followup to 2c35ae8219 and
b1593c1c4f.

* gnu/packages/commencement.scm (bison-boot0)[arguments]: Add
 #:parallel-build? and #:parallel-tests? on x86.
2019-08-28 23:57:17 +02:00
Ludovic Courtès 64de896a71
Merge branch 'master' into core-updates 2019-07-17 15:51:10 +02:00
Carl Dong 6869b6635a
gnu: Allow building toolchain with non-default libc.
* gnu/packages/base.scm (make-gcc-libc): Make public.
* gnu/packages/commencement.scm (make-gcc-toolchain): Add 'libc'
  optional argument to specify using a non-default glibc package, also
  make public.
2019-07-16 11:13:15 -04:00
Marius Bakke 33f460addf
gnu: flex: Remove superfluous input.
The configure script will warn that "make indent" is unavailable, but
apart from that this input is not actually used for the build process.

* gnu/packages/flex.scm (flex)[inputs]: Remove INDENT.
* gnu/packages/commencement.scm (flex-boot0)[inputs]: Likewise.
2019-07-09 21:07:13 +02:00
Marius Bakke 680bc34da4
gnu: Python: Update to 3.7.4.
* gnu/packages/python.scm (python-3.7): Update to 3.7.4.
[source](snippet): Move disabled tests ...
[arguments]<#:make-flags>: ... here.  Enable previously failing tests.
<#:phases>: Add 'set-TZDIR'.
[native-inputs]: Add TZDATA-FOR-TESTS.
* gnu/packages/commencement.scm (python-boot0)[arguments]: Clear <#:make-flags>.
Delete 'set-TZDIR' phase.
* gnu/packages/patches/python-3-fix-tests.patch: Disable two new tests that do
not work in the build container.  Adjust context.
2019-07-09 20:59:58 +02:00
Marius Bakke 4f5fe46388
gnu: commencement: Fix Python build on non-x86 platforms.
* gnu/packages/commencement.scm (python-boot0)[version, source]: Downgrade to 3.5.7.
[arguments]: Remove <#:make-flags>.  Add <#:phases>.
[native-inputs]: Remove artifical dependency on PKG-CONFIG.
2019-07-07 16:32:53 +02:00
Marius Bakke 5f3f703918
gnu: glibc: Update to 2.29.
* gnu/packages/patches/glibc-bootstrap-system.patch,
gnu/packages/patches/glibc-supported-locales.patch: Adjust for glibc 2.29.
* gnu/packages/patches/glibc-2.28-supported-locales.patch,
gnu/packages/patches/glibc-CVE-2019-7309.patch,
gnu/packages/patches/glibc-CVE-2019-9169.patch,
gnu/packages/patches/glibc-2.29-git-updates.patch: New files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/base.scm (glibc): Update to 2.29.
[source](patches): Add 'glibc-CVE-2019-7309.patch',
'glibc-CVE-2019-9169.patch', and 'glibc-2.29-git-updates.patch'.  Remove
'glibc-hurd-magic-pid.patch'.
[native-inputs]: Add PYTHON-MINIMAL.
(glibc-2.28): New public variable.
* gnu/packages/commencement.scm (expat-sans-tests, python-boot0): New variables.
(glibc-final-with-bootstrap-bash)[native-inputs]: Add PYTHON-BOOT0.
* gnu/packages/python.scm (python-3.7)[arguments]: Disable test that fails
with glibc 2.29.
2019-07-02 16:45:17 +02:00
Marius Bakke 1290855490
gnu: linux-libre-headers: Update to 4.19.56.
* gnu/packages/linux.scm (linux-libre-headers-4.14.67): Rename to ...
(linux-libre-headers-4.19.56): ... this.  Adjust hash accordingly.
(linux-libre-headers): Set to LINUX-LIBRE-HEADERS-4.19.56.
* gnu/packages/commencement.scm (linux-libre-headers-boot0)[native-inputs]:
Add FLEX-BOOT0 and BISON-BOOT0.
2019-07-02 01:06:31 +02:00
Marius Bakke 742f2deaa3
gnu: commencement: Remove outdated comment.
* gnu/packages/commencement.scm (bison-boot0): Remove bash comment, which is
no longer accurate.
2019-07-02 01:06:31 +02:00
Marius Bakke 3730e3c64e
gnu: gettext: Update to 0.20.1.
* gnu/packages/gettext.scm (gettext-minimal): Update to 0.20.1.
[source](snippet): Remove.
[inputs]: Remove EXPAT.  Add LIBUNISTRING, LIBXML2, and NCURSES.
[arguments]: Add #:configure-flags and a "patch-fixed-paths" phase.  Delete
"link-expat" phase.
* gnu/packages/commencement.scm (gettext-boot0): Stay on version 0.19.8.1.
[arguments]: Adjust accordingly.

Co-authored-by: Miguel <rosen644835@gmail.com>
2019-07-02 01:06:31 +02:00
Marius Bakke 2b5e412b30
gnu: commencement: Return #t from all phases.
While at it, remove useless (and ...) indirections, because the procedures
never return #f anyway: instead they would raise an exception upon failure.

* gnu/packages/commencement.scm (mes-boot, tcc-boot0, tcc-boot,
diffutils-mesboot, binutils-mesboot0, gcc-core-mesboot, gcc-mesboot0,
glibc-headers-mesboot, glibc-mesboot, gnu-make-boot0): Return #t from phases
and remove (and ...) blocks.
2019-06-20 23:56:58 +02:00
Ludovic Courtès 20e4ee1e3b
gnu: gcc-mesboot-wrapper: Fix 'version' field.
Until now the 'version' field would match
'gcc-mesboot1-wrapper' ("4.7.4") instead of that of
'gcc-mesboot' ("4.9.4").

* gnu/packages/commencement.scm (gcc-mesboot-wrapper)[version]: New
field.
2019-06-17 17:14:46 +02:00
Ludovic Courtès 1380be3c73
gnu: commencement: '%bootstrap-inputs+toolchain' no longer contains Mes.
* gnu/packages/commencement.scm (%bootstrap-inputs+toolchain): On
i686-linux and x86_64-linux, remove "bootstrap-mescc-tools" and "mes"
from %BOOTSTRAP-INPUTS.
2019-06-17 12:25:29 +02:00
Ludovic Courtès b644008ca2
gnu: mes-boot, tcc-boot0: Require nyacc 0.86.
This is a followup to b801646727.

* gnu/packages/commencement.scm (mes-boot, tcc-boot0): Use source from
NYACC-0.86 instead of NYACC.
2019-06-13 18:09:21 +02:00
Marius Bakke 57df83e07d
Merge branch 'staging' into core-updates 2019-05-25 00:25:15 +02:00
Carl Dong bdfc327639
gnu: gcc: Add 9.1.0.
* gnu/packages/gcc.scm (gcc-9): New variable.
* gnu/packages/commencement.scm (gcc-toolchain-9): New variable.
* gnu/packages/patches/gcc-9-strmov-store-file-names.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add the patch.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-05-06 10:18:15 +02:00
Marius Bakke 3b458d5462
Merge branch 'master' into core-updates 2019-05-01 23:11:41 +02:00
Efraim Flashner 36a4366d79
gnu: Fix descriptions to not use quotes.
* gnu/packages/admin.scm (wpa-supplicant-minimal, mingetty, di),
* gnu/packages/audio.scm (fil-plugins),
* gnu/packages/base.scm (make-ld-wrapper, make-glibc-locales),
* gnu/packages/bioinformatics.scm (r-samtools),
* gnu/packages/chez.scm (chez-mit),
* gnu/packages/commencement.scm (make-gcc-toolchain),
* gnu/packages/compression.scm (fastjar),
* gnu/packages/cran.scm (r-maps, r-rcpp),
* gnu/packages/databases.scm (sparql-query),
* gnu/packages/dunst.scm (dunst),
* gnu/packages/ftp.scm (ncftp),
* gnu/packages/gl.scm (freeglut),
* gnu/packages/haskell-check.scm (ghc-tasty-golden),
* gnu/packages/haskell.scm (ghc-case-insensitive, ghc-text,
ghc-haskell-src, ghc-syb, ghc-deepseq-generics, ghc-network-uri,
ghc-rerebase, ghc-zlib),
* gnu/packages/image.scm (jbig2dec),
* gnu/packages/kde-frameworks.scm (kinit, karchive),
* gnu/packages/linux.scm (wireless-tools, perf, module-init-tools, kbd),
* gnu/packages/lirc.scm (lirc),
* gnu/packages/lisp.scm (uglify-js),
* gnu/packages/mate.scm (mate-netbook),
* gnu/packages/microcom.scm (microcom),
* gnu/packages/music.scm (bristol),
* gnu/packages/networking.scm (perl-geo-ip),
* gnu/packages/patchutils.scm (patches),
* gnu/packages/perl-check.scm (perl-test-more-utf8),
* gnu/packages/perl.scm (perl-log-report-optional, perl-file-which,
perl-io-tty, perl-log-any, perl-digest-sha1, perl-class-load,
perl-regexp-common, perl-module-pluggable, perl-class-modifier),
* gnu/packages/python-xyz.scm (python-backports-abc, python-natsort),
* gnu/packages/samba.scm (iniparser),
* gnu/packages/search.scm (mlocate),
* gnu/packages/spice.scm (spice),
* gnu/packages/statistics.scm (r-dt, r-lubridate, r-estimability,
r-commonmark, r-digest, r-viridislite, r-stringr),
* gnu/packages/tex.scm (texlive-latex-changebar),
* gnu/packages/version-control.scm (subversion),
* gnu/packages/w3m.scm (w3m),
* gnu/packages/web.scm (perl-http-parser,
perl-plack-middleware-reverseproxy),
* gnu/packages/xorg.scm (xkeyboard-config, mkfontdir, xcursor-theme,
mkfontscale, xinit, font-alias)[description]: Use @code instead of quotes.
2019-03-31 20:51:10 +03:00
Efraim Flashner 3670ea70e2
gnu: glibc-final-with-bootstrap-bash: Don't enable obsolete rpc.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)
[arguments]: Remove 'enable-obsolete-rpc' configure flag.

This brings this glibc package in line with the other glibc packages
which are also built without the pre-2.14 glibc RPC functions. These
functions cause build failures on armhf-linux and aarch64-linux.
2019-02-09 21:53:41 +01:00
Marius Bakke 01e8263feb
gnu: Use GCC 7 as the default compiler.
* gnu/packages/cross-base.scm (%gcc-cross-include-paths): Remove
CROSS_C_INCLUDE_PATH & co in favor of CROSS_CPATH.
* gnu/build/cross-toolchain.scm (%gcc-cross-include-paths): Likewise.
(cross-gcc-build-phases): Set CROSS_C_INCLUDE_PATH and
CROSS_CPLUS_INCLUDE_PATH when building the cross GCC.
* gnu/packages/commencement.scm (libstdc++): Add
"--disable-libstdcxx-dual-abi" to #:configure-flags.
(gcc-boot0)[arguments]: Add "--disable-libmpx"
to #:configure-flags.
(gcc-final): Add phase to set C_INCLUDE_PATH and CPLUS_INCLUDE_PATH before
building GCC.
(gcc-toolchain-5): Use MAKE-GCC-TOOLCHAIN.
(gcc-toolchain-7): Change to GCC-TOOLCHAIN.
* gnu/packages/gcc.scm (gcc): Change from GCC-5 to GCC-7.
(gfortran): Change to GFORTRAN-7.
(gcc-objc): Change to GCC-OBJC-7.
(gcc-objc++): Change to GCC-OBJC++-7.
* gnu/packages/rust.scm (rust-1.19.0)[native-search-paths]: Change from
C_INCLUDE_PATH & co to CPATH.
2019-02-09 21:53:41 +01:00
Efraim Flashner e992d56669
gnu: diffutils: Update to 3.7.
* gnu/packages/base.scm (diffutils): Update to 3.7.
[source]: Remove patch.
[native-inputs]: Add perl.
* gnu/packages/commencement.scm (diffutils-boot0)[native-inputs]: Don't
add perl.
* gnu/packages/patches/diffutils-getopt.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2019-01-07 11:59:03 +02:00
Efraim Flashner 5fe2c549b4
gnu: gcc-boot0: Fix build on non-Intel systems.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Fix 'match case
for alternate systems so a 'phase is added.
2019-01-06 11:48:39 +02:00
Ludovic Courtès 6f1e0bb792
gnu: commencement: Do not graft early bootstrap packages.
This is a followup to e47c69f226 and a
repetition of f00b85ff8d.

* gnu/packages/commencement.scm (file-boot0): Use 'inherit' instead of
'package/inherit'.
2018-12-24 18:18:24 +01:00
Efraim Flashner e47c69f226
gnu: file: Fix CVE-2018-10360.
* gnu/packages/patches/file-CVE-2018-10360.patch: New file.
* gnu/packages/file.scm (file)[replacement]: New field.
(file/fixed): New variable.
* gnu/packages/commencement.scm (file-boot0): Use 'package/inherit' to
receive security fixes.
* gnu/local.mk (dist_patch_DATA): Register it.
2018-12-24 11:12:52 +02:00
Jan Nieuwenhuizen b02dc758a5
bootstrap: tcc-boot0: Update for mes 0.19.
* gnu/packages/commencement.scm (tcc-boot0): Update for mes 0.19.
2018-12-20 12:04:04 +01:00
Jan Nieuwenhuizen df2242a462
bootstrap: mes-boot: Update for mes 0.19.
* gnu/packages/commencement.scm (mes-boot): Update for mes 0.19.
(mes-boot0): Remove.
2018-12-20 12:04:04 +01:00
Jan Nieuwenhuizen ef809e3ac0
bootstrap: Add mes-boot0; decouple mes-boot from Mes.
* gnu/packages/commencement.scm (mes-boot0): New variable.
(mes-boot): Use it.
2018-12-16 22:49:11 +01:00
Jan Nieuwenhuizen 9c14fd0770
bootstrap: Remove development hacks.
* gnu/packages/commencement.scm (%fake-bootstrap?): Remove.  Update users to
always keep true bootstrap; i.e., do not use %bootstrap-guile.
(mes-boot0): Remove.  Update users.
(nyacc-boot): Likewise.
2018-12-16 22:49:10 +01:00
Jan Nieuwenhuizen cdd3bcf038
bootstrap: Do not fake, use Mes instead of Guile.
* gnu/packages/commencement.scm (%fake-bootstrap?): Do not fake, use Mes
instead of Guile.
2018-12-16 22:49:10 +01:00
Jan Nieuwenhuizen 99ff4b102c
bootstrap: mes-boot: Use mes-boot0 version.
* gnu/packages/commencement.scm (mes-boot): Use mes-boot0 version.
2018-12-11 18:10:13 +01:00
Marius Bakke 4ae7dc7b9a
gnu: Remove duplicate linux-libre-headers package from bootstrap inputs.
GLIBC-FINAL already propagates linux-libre-headers, so drop the bootstrap input.

* gnu/packages/commencement.scm (%boot2-inputs): Remove
%BOOTSTRAP-LINUX-LIBRE-HEADERS.
2018-11-24 08:18:32 +01:00
Marius Bakke 77e02d948c
gnu: gcc-boot0: Improve gcc-wrapper workarounds.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Adjust the libcc1
build scripts instead of copying libcc1.so from %BOOT0-INPUTS.
2018-11-24 08:18:32 +01:00
Marius Bakke a6facf9482
gnu: libstdc++-boot0: Improve gcc-wrapper workaround.
* gnu/packages/commencement.scm (libstdc++-boot0): Adjust the configure script
instead of copying libstdc++.so from %BOOT0-INPUTS.
2018-11-24 08:18:32 +01:00
Marius Bakke f4bf64138c
gnu: Remove gcc-for-libstdc++.
* gnu/packages/commencement.scm (gcc-for-libstdc++): Remove variable.
(libstdc++-boot0): Inherit GCC-4.9 instead.
2018-11-24 08:18:31 +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 4fd4efc812
bootstrap: Replace %mescc-tools-seed with %bootstrap-mescc-tools.
* gnu/packages/bootstrap.scm (%mescc-tools-seed): Remove.
(%bootstrap-inputs): Replace %mescc-tools-seed with %bootstrap-mescc-tools.
* gnu/packages/commencement.scm (mes-boot): Likewise.
(tcc-boot0): Likewise.
(mescc-tools-boot): Remove.
2018-11-18 16:45:03 +01:00
Jan Nieuwenhuizen 1a99a9c45c
bootstrap: Build with %bootstrap-mes.
* gnu/packages/bootstrap.scm (%tinycc-seed): Remove.
(%bootstrap-inputs): Use %bootstrap-mes instead of %mes-seed and %tinycc-seed.
* gnu/packages/commencement.scm (mescc-tools-boot, mes-boot, tcc-boot0): Build
with %bootstrap-mes instead of %mes-seed and %tinycc-seed.
2018-10-23 20:54:42 +02:00
Jan Nieuwenhuizen 7cbf6f1ca2
gnu: mescc-tools: Update to 0.5.2-0.bb062b0d.
* gnu/packages/mes.scm (mescc-tools): Update to 0.5.2-0.bb062b0d.
mescc
* gnu/packages/commencement.scm (mescc-tools-boot): Stay at 0.5.2
2018-10-23 20:54:42 +02:00
Jan Nieuwenhuizen f266199dc1
gnu: mes: Update to 0.18.0-08f04f55.
This update is a preparation for the %bootstrap-mes package; due to some small
problems it fails to build with plain mes-0.18.  mes-boot0 stays at 0.18 only
to avoid another rebuild world.

%bootstrap-mes brings the building and packaging the Mes bootstrap seeds from
manual operation into Guix.  We will bump mes and mes-boot0 to a future 0.18.1
or 0.19 and regenerate %bootstrap-mes in a nex iteration.

    08f04f55 build: Oops, remove stray lib/linux/x86_64-mes/crt1.
    33f37f27 build: x86_64 bootstrap build fixes and workaround.
    4ae2a111 doc: Release update.
    5277669b mescc: Oops, delete wrong line of assembly.
    44cc97a8 admin: Release update.

* gnu/packages/mes.scm (mes): Update to 0.18.0-08f04f55.
* gnu/packages/commencement.scm (mes-boot0): Stay at 0.18.0.
2018-10-21 23:26:21 +02:00
Jan Nieuwenhuizen 09c5a5680a
gnu: tcc-boot0: Update for mes 0.18.
* gnu/packages/commencement.scm (tcc-boot0): Update for mes 0.18.
2018-10-07 16:29:39 +02:00
Jan Nieuwenhuizen fc4ff50f2d
gnu: mescc-tools-boot: Update to 0.5.2.
* gnu/packages/commencement.scm (mescc-tools-boot): Update to 0.5.2.
* gnu/packages/patches/mescc-tools-boot.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2018-10-07 16:29:39 +02:00
Jan Nieuwenhuizen 189ac60eac
gnu: mes-boot0: Update to 0.18
* gnu/packages/commencement.scm (mes-boot0): Update to 0.18.
2018-10-07 16:29:38 +02:00
Jan Nieuwenhuizen eb4434598c
bootstrap: Reduced Binary Seed bootstrap for x86_64 too.
* gnu/packages/bootstrap.scm (%bootstrap-inputs): Replace %bootstrap-libc,
%bootstrap-gcc, and %bootstrap-binutils with Mes seeds for x86_64 too.
* gnu/packages/commencement.scm (tcc-boot0, tcc-boot, gcc-mesboot1,
gcc-mesboot1-wrapper, m4-mesboot, %bootstrap-inputs+toolchain,
libstdc++-boot0, gcc-boot0, bison-boot0): For x86_64-linux, use i686-linux
glibc-dynamic-linker and Mes bootstrap settings.
(gcc-boot0-intermediate-wrapped): New variable, extract from
static-bash-for-glibc.
(static-bash-for-glibc): Use it.
(gcc-final): Copy gmp&co phase from gcc-boot0, inherit other arguments
from gcc; avoid i686-linux impersonation from gcc-boot0.
* doc/guix.texi (Bootstrapping, Reduced Binary Seed Bootstrap): Note
x86_64-linux also as Reduced Binary Seed bootstrap.
2018-09-23 09:46:26 +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 cffe966dd5
bootstrap: perl-boot0: Disable validate-runpath?.
* gnu/packages/commencement.scm (perl-boot0): Add disable validate-runpath? to
args, and actually pass args.
2018-09-23 09:46:26 +02:00
Jan Nieuwenhuizen 56f45b7c78
bootstrap: bison-boot0: Do not use `ranlib -D'.
* gnu/packages/commencement.scm (bison-boot0): Do not use `ranlib -D' for
i686-linux bootstrap.
2018-09-23 09:46:26 +02:00
Jan Nieuwenhuizen 0b652851b1
bootstrap: Add Mes bootstrap.
* gnu/packages/patches/mes-nyacc-0.86.0.patch: Support bootstrap build.
* gnu/packages/commencement.scm (%fake-bootstrap mes-boot0, mescc-tools-boot,
nyacc-boot, mes-boot, tcc-boot0, tcc-boot, make-mesboot0, diffutils-mesboot,
binutils-mesboot0, gcc-core-mesboot, mesboot-headers, glibc-mesboot0,
gcc-mesboot0, binutils-mesboot, make-mesboot, gmp-boot, mpfr-boot, mpc-boot,
gcc-mesboot1, gcc-mesboot1-wrapper, glibc-headers-mesboot, glibc-mesboot,
gcc-mesboot, gcc-mesboot-wrapper, m4-mesboot): New variable.
* gnu/packages/patches/binutils-boot-2.20.1a.patch: New file. New file.
* gnu/packages/patches/gcc-boot-2.95.3.patch: New file.
* gnu/packages/patches/gcc-boot-4.7.4.patch: New file.
* gnu/packages/patches/glibc-boot-2.16.0.patch: New file.
* gnu/packages/patches/glibc-boot-2.2.5.patch: New file.
* gnu/packages/patches/glibc-bootstrap-system-2.16.0.patch: New file.
* gnu/packages/patches/tcc-boot-0.9.27.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add them.
2018-09-23 09:46:26 +02:00
Jan Nieuwenhuizen 517af02ea1
bootstrap: static-bash-for-glibc: Consider %current-system at run time.
* gnu/packages/commencement.scm (static-bash-for-glibc): Rewrite so
that (%boot1-inputs) is evaluated run time, rather than at load time.
2018-09-23 09:46:25 +02:00
Jan Nieuwenhuizen f50b013f8c
bootstrap: Use thunk for inputs in package-with-explicit-inputs.
* gnu/packages/commencement.scm (diffutils-boot0, findutils-boot0, perl-boot0,
bison-boot0, flex-boot0, texinfo-boot0, static-bash-for-glibc, gettext-boot0,
bash-final, guile-final, glibc-utf8-locales-final, gnu-make-final,
coreutils-final, grep-final, sed-final, %final-inputs): Use thunk for inputs
in package-with-explicit-inputs.  This makes --system=i686-linux behave
identical to a native x86 build and prepares for Mes bootstrap.
(ld-wrapper-boot0, ld-wrapper-boot3): Change to procedure.  Explicitly
add #:guile-for-build.  Update users.
2018-09-23 09:46:25 +02:00
Jan Nieuwenhuizen 32f4a073e1
gnu: m4-boot0: New variable.
* gnu/packages/commencement.scm (m4-boot0): New variable.
2018-09-23 09:46:25 +02:00
Jan Nieuwenhuizen c362904485
bootstrap: %bootstrap-inputs+toolchain: Replace %bootstrap-inputs.
* gnu/packages/commencement.scm (%bootstrap-inputs+toolchain): : New procedure
replacing %bootstrap-inputs to prepare for Mes bootstrap.  Update users.
* tests/union.scm (%bootstrap-inputs): New variable: set to
%bootstrap-inputs+toolchain.
2018-09-23 09:46:25 +02:00
Jan Nieuwenhuizen a2b2070b67
bootstrap: %bootstrap-inputs: Wrap input lists into thunks.
* gnu/packages/bootstrap.scm (%bootstrap-inputs): Change to procedure.  Update
users; prepares for Mes bootstrap.
* gnu/packages/commencement.scm (%boot0-inputs, %boot1-inputs, %boot2-inputs,
%boot3-inputs, %boot4-inputs, %boot5-inputs, %boot-6-inputs): Change to
procedure.  Update users.
* tests/builders.scm (%bootstrap-inputs, %bootstrap-search-paths): Make a
procedure, filter on package?.  Update users.
2018-09-22 22:40:12 +02:00
Marius Bakke 3469a5ea47
gnu: gcc@4.9: Fix FTBFS with Glibc >= 2.28.
* gnu/packages/commencement.scm (gcc-for-libstdc++): New variable.
(libstdc++-boot0): Inherit from GCC-FOR-LIBSTDC++ instead of GCC-4.9.
* gnu/packages/gcc.scm (gcc-4.9)[source](patches): Add
"gcc-4.9-libsanitizer-ustat.patch".
* gnu/packages/patches/gcc-4.9-libsanitizer-ustat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2018-09-01 12:58:47 +02:00
Ludovic Courtès 5ae27f577b
gnu: gcc-toolchain: Add version 8.
* gnu/packages/commencement.scm (gcc-toolchain-8): New variable.
2018-06-30 17:50:20 +02:00
Mark H Weaver 9d10a63402
Merge branch 'master' into core-updates 2018-05-24 02:34:08 -04:00
Ricardo Wurmus 8efe2a22ea
gnu: Use "code" instead of "indent".
This is a follow-up to commit e470abf8b7.

* gnu/packages/commencement.scm,
gnu/packages/flex.scm: Use module "code" instead of "indent".
2018-05-23 13:59:46 +02:00
Mark H Weaver 539bf8f2c0
Merge branch 'master' into core-updates 2018-05-17 01:00:50 -04:00
Chris Marusich ede121de42
guix: Separate the package name and version with "@", not "-".
* guix/packages.scm (package-full-name): By default, use "@" to separate
  the package name and package version.  Add an optional delimiter
  argument so that there is still a way to explicitly use a different
  delimiter.
* gnu/packages/commencement.scm (gcc-boot0) <unpack-gmp&co>: Adjust
  accordingly.
* tests/graph.scm: Adjust accordingly.
* tests/profiles.scm: Adjust accordingly.
* NEWS: Mention the change.

Fixes: <https://bugs.gnu.org/31088>.
Reported by Pierre Neidhardt <ambrevar@gmail.com>.
2018-05-08 21:55:46 -07:00
Mark H Weaver 3d5ad159b3
Merge branch 'master' into core-updates 2018-04-30 04:03:54 -04:00
Ludovic Courtès 5a48a066ab
gnu: gcc-toolchain: Add "static" output.
This allows the use of 'gcc-toolchain' to create statically-linked
executables (requires libc.a.)

* gnu/packages/commencement.scm (make-gcc-toolchain): Add "static"
output.  Add "libc-static" to 'inputs'.  Add call to 'union-build' for
the "static" output.
2018-04-28 22:33:47 +02:00
Ludovic Courtès 78ca500a75
gnu: commencement: Avoid extra Perl build in the DAG.
* gnu/packages/commencement.scm (grep-final): Move reference to
PERL-BOOT0 outside of 'package-with-explicit-inputs'.  Previously we
would actually depend on a variant of 'perl-boot0' built with
%BOOT5-INPUTS, which defeated the intent to not add an extra Perl build
in the DAG.
2018-04-01 18:48:23 +02:00
Ludovic Courtès 301a424906
gnu: sed: Update to 4.5.
* gnu/packages/base.scm (sed): Update to 4.5.
[arguments]: Remove 'patch-test-suite' phase.
[native-inputs]: New field.
2018-04-01 18:41:28 +02:00
Mark H Weaver e3cfef22c4
gnu: Use invoke and return #t from all builders.
* gnu/packages/admin.scm, gnu/packages/android.scm, gnu/packages/audio.scm,
gnu/packages/avr.scm, gnu/packages/base.scm, gnu/packages/bioinformatics.scm,
gnu/packages/certs.scm, gnu/packages/check.scm, gnu/packages/code.scm,
gnu/packages/commencement.scm, gnu/packages/dictionaries.scm,
gnu/packages/docbook.scm, gnu/packages/emacs.scm, gnu/packages/embedded.scm,
gnu/packages/fonts.scm, gnu/packages/games.scm, gnu/packages/gnome.scm,
gnu/packages/gnu-doc.scm, gnu/packages/guile.scm, gnu/packages/hurd.scm,
gnu/packages/javascript.scm, gnu/packages/libreoffice.scm,
gnu/packages/linux.scm, gnu/packages/lisp.scm, gnu/packages/lxde.scm,
gnu/packages/mail.scm, gnu/packages/markup.scm, gnu/packages/mate.scm,
gnu/packages/pkg-config.scm, gnu/packages/qt.scm, gnu/packages/rust.scm,
gnu/packages/scheme.scm, gnu/packages/sdl.scm, gnu/packages/statistics.scm,
gnu/packages/syncthing.scm, gnu/packages/tex.scm, gnu/packages/web.scm,
gnu/packages/wine.scm, gnu/packages/xfce.scm: In the builders of packages
using 'trivial-build-system', use invoke where appropriate, raise exceptions
on errors, and otherwise return #t.
2018-03-27 21:35:41 -04:00
Mark H Weaver 75f3aaced0
gnu: perl-boot0: Return #t from all phases.
* gnu/packages/commencement.scm (perl-boot0): Return #t from the
'disable-pthreads' phase.
2018-03-25 05:02:02 -04:00
Marius Bakke 5e8cb5e698
gnu: glibc: Update to 2.27.
* gnu/packages/base.scm (glibc/linux): Update to 2.27.
[source](patches): Add 'glibc-hidden-visibility-ldconfig.patch' and
'glibc-2.27-git-fixes.patch'.
[native-inputs]: Add BISON.
[arguments]: Remove deprecated "--enable-add-ons" from #:configure-flags.
Also remove unneeded "libc_cv_ssp=no" and "libcv_ssp_strong=no".
(glibc-2.26): New public variable.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[native-inputs]:
Add BISON-BOOT0.
* gnu/packages/patches/glibc-2.27-git-fixes.patch,
gnu/packages/patches/glibc-hidden-visibility-ldconfig.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
2018-03-22 18:58:05 +01:00
Mark H Weaver 60ff6ec48f
gettext-boot0: Return #t from chdir phase.
* gnu/packages/commencement.scm (gettext-boot0)[arguments]: Return #t from
chdir phase.
2018-03-16 09:08:35 -04:00
Ricardo Wurmus 8c72ed923d
Merge branch 'master' into core-updates 2018-03-14 17:37:20 +01:00
Ricardo Wurmus 48b97be90b
Revert "gnu: Add replacement for static-bash-for-glibc."
This reverts commit c4fb2b9f4e.
2018-03-14 16:28:22 +01:00
Ricardo Wurmus c4fb2b9f4e
gnu: Add replacement for static-bash-for-glibc.
This is needed to replace the static bash used in glibc-final.

* gnu/packages/commencement.scm (patched-glibc-final-with-bootstrap-bash,
patched-static-bash-for-glibc): New variables.
(static-bash-for-glibc)[replacement]: Use patched-static-bash-for-glibc as a
replacement.
2018-03-14 11:39:14 +01:00
Marius Bakke 5e268faf85
gnu: Remove gcc-for-libstdc++.
* gnu/packages/commencement.scm (libstdc++-boot0): Remove variable.
(libstdc++-boot0): Use GCC-4.9 instead.
2018-03-08 20:22:42 +01:00
Ludovic Courtès 7c788ed227
gnu: commencement: 'glibc-final' inherits the replacement of 'glibc'.
That was the intent of commit b672a81607,
but that commit left 'glibc-final' ungrafted.

Reported by Ricardo Wurmus at
<https://lists.gnu.org/archive/html/guix-devel/2018-02/msg00435.html>.

* gnu/packages/commencement.scm (glibc-final): Use 'package/inherit' so
that we inherit the 'replacement' of GLIBC.
2018-03-07 21:39:32 +01:00
Ludovic Courtès 0fccb24765
gnu: commencement: 'glibc-final' now inherits from 'glibc'.
* gnu/packages/commencement.scm (glibc-final): Inherit from GLIBC
instead of GLIBC-FINAL-WITH-BOOTSTRAP-BASH.
[propagated-inputs]: New fields.
2018-03-07 21:39:32 +01:00
Chris Marusich a1df45e904
gnu: commencement: Add commentary regarding grafts.
* gnu/packages/commencement.scm: Add comments that were originally
  included only in the Git commit message of
  f00b85ff8d.

Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
2018-02-27 05:29:37 +01:00
Tobias Geerinckx-Rice 53bfec7bc4
gnu: commencement: Update phase style.
* gnu/packages/commencement.scm (gnu-make-boot0): Substitute INVOKE for
SYSTEM* and end phases with #t.
(glibc-final-with-bootstrap-bash)[arguments]: Use MODIFY-PHASES syntax
and end phase with #t.
(gcc-boot0)[arguments]: Do all of the above.
2018-02-20 16:06:09 +01:00
Ludovic Courtès 8102cf0b37
gnu: commencement: Memoize 'linux-libre-headers-boot0'.
Fixes <https://bugs.gnu.org/30155>.

The effect can be seen in the package graph produced by:

  guix graph -e '(@@ (gnu packages commencement) static-bash-for-glibc)'

This reduces the number of "duplicate" nodes in this graph, i.e.,
distinct package objects that correspond to the same derivation (objects
that are not 'eq?' but semantically equal.)

* gnu/packages/commencement.scm (linux-libre-headers-boot0): Make an
'mlambda' instead of a 'lambda'.
(hurd-core-headers-boot0): Ditto.
2018-01-18 16:14:06 +01:00
Efraim Flashner 809b0a9044
gnu: gcc@4.9: Fix building with glibc@2.26.
* gnu/packages/gcc.scm (gcc@4.9)[source]: Add snippet to adjust
linux-unwind.h to changes in glibc.
* gnu/packages/commencement.scm (gcc-for-libstdc++): New variable.
(libstdc++-boot0): Inherit from gcc-for-libstdc++, update note.
2018-01-18 08:59:20 +02:00