* gnu/packages/commencement.scm (gcc-toolchain): Bind to the default
gcc-toolchain-11 being consitent with others.
(gcc-toolchain-11): Make it from gcc-11.
(gcc-toolchain-aka-gcc): Bind to gcc-toolchain.
Previously, the value memoized for ‘glibc-final’ was influenced by that
of ‘%current-target-system’ since it is used as a default argument to
‘libc-for-target’. Thus, due to the order in which modules were loaded
versus the time at which ‘%current-target-system’ was set, it was
possible to end up with ‘glibc-final’ set to the “wrong” libc, for
instance when doing:
guix build -f guix.scm --target=i586-pc-gnu
from another project such as the Shepherd.
This is similar to the problem fixed in
625a847d2a.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)
(glibc-final): Explicitly pass (%current-system) as the first argument
to ‘libc-for-target’ so that the value of ‘%current-target-system’ at
that time has no influence.
Change-Id: I2f05898b8f9d1f99d4c75108441c7ad38728225f
Fixes a regression introduced in
95ea1277ae where:
guix build coreutils --target=i586-pc-gnu coreutils
would never complete due to a dependency loop introduced in
‘%final-inputs’.
* gnu/packages/commencement.scm (%final-inputs): Pass argument to
‘target-hurd?’.
Change-Id: I4df7907fb9afcd2b170ba19307666eaa81f12d41
Fixes <https://issues.guix.gnu.org/66472>.
Until now, we were unconditionally using ‘glibc-utf8-locales’, which
targets the glibc version used on Linux (2.35) rather than that used on
the Hurd (2.37). This would lead to build failures due to the inability
to use locale encoding when targeting i586-gnu.
* gnu/packages/base.scm (glibc-utf8-locales/hurd): New variable.
* gnu/packages/commencement.scm (glibc-utf8-locales-final/hurd): New
variable.
(%boot5-inputs): Use it when ‘target-hurd?’ returns #t.
(%final-inputs): Likewise.
Change-Id: I1666d615dffbe3561cf2d9612b85cd31a48a7dcd
Otherwise this causes odd issues, I presume arising from when %current-system
differs from the system argument passed to %final-inputs.
* gnu/packages/commencement.scm (%final-inputs): Set %current-system to
system.
* gnu/packages/base.scm (%final-inputs): Add optional system parameter.
* gnu/ci.scm (base-packages): New procedure to memoize the base packages
depending on system.
(package->job): Pass system to base-packages.
Co-authored-by: Josselin Poiret <dev@jpoiret.xyz>
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/commencement.scm (hurd-minimal-boot0): Remove redundant let
and package-with-bootstrap-guile.
[name]: New field; give proper name.
[version]: New field.
[source]: Update to 0.9.git20230216, using hurd-headers-boot0' source.
[inputs]: Add autoconf-boot0, automake-boot0, gnumach-headers-boot0.
[native-inputs]: Add autoconf-boot0, automake-boot0, and
gnumach-headers-boot0.
* gnu/packages/commencement.scm (hurd-version-boot0, hurd-source-boot0):
Remove.
* gnu/packages/commencement.scm (hurd-headers-boot0): Remove redundant outer
let and package-with-bootstrap-guile.
[name]: New field; give proper name.
[version]: New field.
[source]: Update to 0.9.git20230216, using git-fetch-from-tarball.
[inputs]: Add autoconf-boot0, automake-boot0, gnumach-headers-boot0.
Now that we have `git-fetch-from-tarball' to break the cycle in commencement
for git-fetch sources, we can finally update mig to use git-fetch to allow
`--with-commit' builds.
* gnu/packages/hurd.scm (mig)[source]: Use git-fetch again.
* gnu/packages/commencement.scm (mig-boot0)[source]: Use
git-fetch-from-tarball accordingly.
* gnu/packages/commencement.scm (mig-boot0): Remove redundant
outer let.
[name]: New field, give proper name.
[version]: New field
[source]: Update to 1.8+git20230520.
[native-inputs]: Add autoconf-boot0, automake-boot0.
[inputs]: Add gnumach-headers-boot0.
* gnu/packages/commencement.scm (gnumach-headers-boot0)[name]: New field; give
proper name.
[source]: Update to 1.8+git20221224, using git-fetch-from-tarball.
[native-inputs]: Add autoconf-boot0, automake-boot0, texinfo-boot0.
[arguments]: Add 'patch-compat' phase to allow building hurd-minimal etc, with
our out-of-date bootstsrap binaries.
Fixes <https://issues.guix.gnu.org/63789>.
Reported by Janneke Nieuwenhuizen <janneke@gnu.org>.
* gnu/packages/commencement.scm (gcc-boot0)[source]: Use
'%bootstrap-coreutils&co' when on GNU/Hurd.
This could do with more investigating, but this reflects what I see locally.
* gnu/packages/base.scm (findutils)[arguments]: Update XFAIL_TESTS for the
hurd.
* gnu/packages/commencement.scm (findutils-boot0): Stop clearing the
make-flags, so the above change applies to findutils-boot0.
This reverts commit 08acdd0765.
This change is now unnecessary now that gcc-boot0 uses
gexps (a795a02a9d).
* gnu/packages/gcc.scm (gcc-11)[arguments]: Use gexp for modify-phases.
[native-inputs]: Remove.
* gnu/packages/commencement.scm (gcc-boot0)[native-inputs]: Remove.
There are currently problems with native or cross building for i586-gnu, and
one factor mixed up with this is that some of the gcc packages use sexp's for
the phases, and thus introducing gexp's has caused problems.
As part of the going in circles with this, this commit switches gcc-boot0 to
use gexp's in it's arguments, and then also modifies libstdc++-boot0,
libstdc++-boot0-gcc7, cross-gcc-wrapper, gcc-final and make-libstdc++ to
handle this change.
If done correctly, this change shouldn't affect any derivations.
* gnu/packages/commencement.scm (libstdc++-boot0, libstdc++-boot0-gcc7,
gcc-boot0, gcc-final)[arguments]: Use gexps.
(cross-gcc-wrapper): Use gexps in the generated package.
* gnu/packages/gcc.scm (make-libstdc++): Use gexps in the generated package.
It didn't work when it was introduced in
08acdd0765.
* gnu/packages/gcc.scm (gcc-11)[arguments]: Remove the procedure arguments,
and use %build-inputs rather than inputs.
* gnu/packages/commencement.scm (gcc-boot0)[native-inputs]: Add hurd-patch, as
this package inherits from gcc-11.
* gnu/packages/commencement.scm (coreutils-boot0)[arguments]: When
building for armhf-linux include the workaround to force 32-bit time.
Rearrange arguments so that the configure-flags for armhf-linux aren't
overridden.
* gnu/packages/commencement.scm (gcc-boot0)[source]: Delete offending files
from GCC.
(libstdc++-boot0)[arguments]: Add #:modules.
(libstdc++): Inherit from from GCC-BOOT0 rather than GCC.
(gcc-final)[arguments]: Add phase to workaround libstdc++ build system issue.
Add #:modules.
* gnu/packages/gcc.scm (make-libstdc++): Likewise.
* gnu/packages/compression.scm (zlib): Update to 1.2.12.
[source](patches): New field.
[arguments]: Set CC variable.
* gnu/packages/commencement.scm (zlib-final)[source]: New field.
* gnu/packages/patches/zlib-cc.patch,
gnu/packages/patches/zlib-correct-crc32-inputs.patch: New files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/commencement.scm (linux-libre-headers-boot0)
[arguments]: Adjust 'lower-version-requirements phase to accept
gcc-4.8.4, used by armhf-linux.