This makes the clone procedure work correctly and fixes some test failures on
powerpc64le-linux, including tests/containers.scm.
* guix/build/syscalls.scm (clone): Add an entry for ppc64le.
This makes powerpc64le-linux a supported architecture for Guix, but not for
Guix System.
* Makefile.am (SUPPORTED_SYSTEMS): Add an entry for powerpc64le-linux.
* etc/guix-install.sh (chk_sys_arch): Same.
* guix/packages.scm (%supported-systems): Same.
* m4/guix.m4 (GUIX_ASSERT_SUPPORTED_SYSTEM): Same.
* tests/guix-build.sh (all_systems): Same.
* gnu/packages/elf.scm (libelf)[arguments]: Modify replacement 'configure phase
to invoke "./configure" with "--host=powerpc64le-unknown-linux-gnu" on
powerpc64le-linux.
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
* gnu/packages/tex.scm (texlive-latex-base)[arguments]: LuaJIT is not ported to
powerpc64le* yet. Update replacement 'build phase to add "luajittex" within the
"disabled-formats" list on powerpc64le*.
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
* gnu/packages/tex.scm (texlive-bin)[arguments]: Append "--disable-luajittex"
and "--disable-mfluajit" to keyword argument "#:configure-flags" on
powerpc64le* because LuaJIT is not ported to powerpc64le* yet. Also set
"#:tests?" to "#f" on powerpc64le*.
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
* gnu/packages/guile-xyz.scm (guile-avahi)[arguments]: Parallel builds fail on
powerpc64le-linux. Set "#:parallel-build?" to "#f".
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
* gnu/packages/dbm.scm (bdb-4.8)[arguments]: Modify 'configure phase to append
"--build=powerpc64le-unknown-linux-gnu" to configure's flags when compiling for
powerpc64le-linux.
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
* gnu/packages/commencement.scm (binutils-final)[arguments]: When checking if
the system is a Power architecture, instead of hard-coding "powerpc-linux",
use the target-powerpc? procedure so it works on more Power architectures.
[inputs]: Likewise.
* gnu/packages/commencement.scm (binutils-final)[arguments]: On
powerpc-linux allow a reference to static-bash-for-glibc.
[inputs]: On powerpc-linux add static-bash-for-glibc.
* gnu/packages/commencement.scm (gcc-boot0) [#:configure-flags]: Add
--with-long-double-128 when the boot triplet is "powerpc64le-guix-linux-gnu",
instead of "powerpc64le-linux-gnu", which is incorrect. The actual triplet
used during bootstrapping is "powerpc64le-guix-linux-gnu".
This should avoid some problems, such as "not a dynamic executable" errors.
* gnu/packages/patches/glibc-ldd-powerpc.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/base.scm: (glibc)[native-inputs]: Add it.
[arguments]: When building for powerpc* apply it.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash,
glibc-final)[native-inputs]: Add patch conditionally.
This patch has been adjusted to apply to master.
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Fixes: <https://bugs.gnu.org/46253>.
* gnu/packages/gcc.scm (gcc-4.7)[#:phases][pre-configure]: When the
gcc/config/rs6000 directory exists, replace "/lib64" with "/lib" in all files
within it. Note that this fix will be picked up by any package that re-uses
the pre-configure phase from gcc-4.7 (e.g., all the usual gcc packages).
(make-libstdc++)[#:phases][fix-rs6000-libdir]: New phase, which does the same
as above. It was necessary to duplicate the fix here because make-libstdc++
does not re-use the pre-configure phase from gcc-4.7.
The bootstrap tarballs used by these bootstrap packages were created via the
following steps:
- Create a new x86_64 VM using QEMU.
- Use
https://ftp.gnu.org/gnu/guix/guix-system-install-1.2.0.x86_64-linux.iso.xz
to install Guix System 1.2.0 in the VM.
- Run: guix pull --no-substitutes --commit=662e7e28d576ada91fc9dec7d27c100666114f03
- Run: guix build --no-substitutes --target=powerpc64le-linux-gnu bootstrap-tarballs
With the exception of gcc-static, all bootstrap binaries contained in these
tarballs can be built reproducibly. Unfortunately, gcc-static is not always
reproducible when everything is built from source on separate machines.
Despite investigation efforts, the cause remains unclear, so we have decided
to move forward with these binaries to unblock further bootstrapping work.
For details, see <https://bugs.gnu.org/41669>.
* gnu/packages/bootstrap.scm (%bootstrap-executables)
(bootstrap-executable-file-name, bootstrap-guile-url-path)
(bootstrap-guile-hash, %bootstrap-coreutils&co, %bootstrap-binutils)
(%bootstrap-glibc, %bootstrap-gcc): Add entries for powerpc64le-linux.
(%bootstrap-executable-base-urls): Add an entry for alpha.gnu.org.
Fixes CVE-2021-21341, CVE-2021-21342, CVE-2021-21343, CVE-2021-21344,
CVE-2021-21345, CVE-2021-21346, CVE-2021-21347, CVE-2021-21348,
CVE-2021-21349, CVE-2021-21350 and CVE-2021-21351.
* gnu/packages/xml.scm (java-xstream): Update to 1.4.16.
[inputs]: Add java-mxparser, a fork of java-xpp3 made by upstream.
Java-xpp3 is still needed.
Signed-off-by: Julien Lepiller <julien@lepiller.eu>
* gnu/packages/finance.scm (bitcoin-core): Rename to …
(bitcoin-core-0.21): … this, and update to 0.21.
(bitcoin-core-0.20): New variable.
Signed-off-by: Christopher Baines <mail@cbaines.net>
* gnu/packages/crates-io.scm (skim): Update to 0.9.4.
[arguments]: Update #:cargo-inputs: add rust-atty-0.2 and update
rust-beef-0.4 to rust-beef-0.5, rust-crossbeam-0.7 to
rust-crossbeam-0.8, rust-env-logger-0.6 to rust-env-logger-0.8,
rust-nix-0.14 to rust-nix-0.19, rust-time-0.1 to rust-time-0.2, and
rust-vte-0.3 to rust-vte-0.9.