This is a followup to c823b95825, fixing
tests for sed and diffutils on armhf-linux.
* gnu/packages/base.scm (sed)[source]: Add
"coreutils-gnulib-tests.patch".
(diffutils)[source]: Likewise.
* gnu/packages/commencement.scm (diffutils-boot0)[source]: New field.
The time zone database is architecture-independent,
so trying to cross-compile it is pointless!
* gnu/packages/base.scm
(tzdata)[arguments]<#:target>: Set to #f.
(tzdata)[allowed-references]: Only include the "out" output itself,
to make sure no (architecture-dependent) binaries are installed.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
Fixes <https://bugs.gnu.org/49459>.
* gnu/packages/patches/coreutils-gnulib-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/base.scm (coreutils)[source]: Use it.
Fixes <https://bugs.gnu.org/49417>.
Reported by Maxime Devos <maximedevos@telenet.be>.
* gnu/packages/patches/glibc-cross-objcopy.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/base.scm (glibc)[source]: Use it.
Fixes <https://bugs.gnu.org/49113>.
Reported by Maxime Devos <maximedevos@telenet.be>.
Previously, the cross-compiled libc.so linker script would read:
OUTPUT_FORMAT(elf64-little)
instead of:
OUTPUT_FORMAT(elf64-littleaarch64)
This is because glibc 2.33 runs "objdump -f" instead of
"aarch64-linux-gnu-objdump -f" to determine the output format.
* gnu/packages/patches/glibc-cross-objdump.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/base.scm (glibc)[source]: Use it.
This test fails on filesystems where tail detects that it cannot use
inotify safely. See https://issues.guix.gnu.org/47935 for more details.
* gnu/packages/base.scm (coreutils)[phases]: Disable
inotify-dir-recreate tests, quote Hurd substitute* call to reduce
rebuilds.
Fixes: <https://bugs.gnu.org/41498>.
* gnu/packages/base.scm (sed)[arguments]: New field. This adds a
snippet, equivalent to the patch submitted upstream, which fixes an
issue that prevents sed from building on SELinux-enabled kernels.
Adjusted by Efraim Flashner to apply to master.
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>
* gnu/packages/base.scm (make-glibc-utf8-locales): Add keyword parameters
locales and name with the old values as default.
[name]: Use name parameter.
[arguments]: Use locales parameter.
Co-authored-by: Efraim Flashner <efraim@flashner.co.il>
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/patches/glibc-dl-cache.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/base.scm (glibc)[source]: Remove 'snippet' and 'modules'.
[arguments]: In 'pre-configure' phase, substitute @STORE_DIRECTORY@ in
'elf/dl-cache.c'.
* gnu/packages/base.scm (coreutils)[arguments]: When compiling for the Hurd,
remove hanging "timeout-group" test. Remove tests "shred-passes", "l-chunk"
and "stats" from XFAIL_TESTS, they pass now.
Fixes: <https://bugs.gnu.org/41498>.
* gnu/packages/base.scm (sed)[origin][snippet]: New field. This adds a
snippet, equivalent to the patch submitted upstream, which fixes an
issue that prevents sed from building on SELinux-enabled kernels.
The upgrade to Make 4.3 and Coreutils 8.30 introduced test failures that
this commit addresses.
* gnu/packages/base.scm (coreutils-8.30): New variable.
* gnu/packages/linux.scm (proot)[native-inputs]: Add COREUTILS-8.30 and
GNU-MAKE-4.2.
The sparse03.at test apparently freezes the Hurd; messages
on the console:
165: listing sparse files bigger than 2^33
ext2fs: device:hd0s1: warning: bit already cleared for block 245780
ext2fs: device:hd0s1: warning: bit already cleared for block 245781
ext2fs: device:hd0s1: warning: bit already cleared for block 245782
...
ext2fs: BUG: unexpected fault on disk image ... err 0xa
ext2fs: disk-pager.c:98: fault_handler: Assertion 'err' failed.
the other tests just fail.
* gnu/packages/base.scm (tar)[arguments]: When compiling for the Hurd,
skip `sparse' and failing tests.
This reverts commit 67cbfeae30, which is
not longer necessary now that the 'ld.so' linker script of the cross
glibc contains "libhurduser.so libmachuser.so".
Until now cross-compilation would fail with:
i586-pc-gnu-ld: src/copy.o: undefined reference to symbol 'file_chauthor'
i586-pc-gnu-ld: /gnu/store/…-glibc-cross-i586-pc-gnu-2.29/lib/libhurduser.so.0.3: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
* gnu/packages/base.scm (coreutils)[arguments]: When 'hurd-target?', add
#:configure-flags.
* gnu/packages/base.scm (gnu-make-4.2): New public variable.
* gnu/packages/java.scm (openjdk9, openjdk10, openjdk11,
openjdk12)[native-inputs]: Add it.
* gnu/packages/patches/glibc-hurd-signal-sa-siginfo.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/base.scm (glibc): Use it.
* gnu/packages/base.scm (coreutils): Improve description and state that there
is no shell included.
Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
* gnu/packages/linux.scm (libcap)[supported-systems]: Remove the Hurd.
* gnu/packages/base.scm (coreutils)[inputs]: Include libcap only for supported
systems. Fixes building on the Hurd.
Fix coreutils cross-compilation for aarch64 that was broken by 8.32
update. The following error occured:
src/ls.c: In function 'print_dir':
src/ls.c:3026:24: error: 'SYS_getdents' undeclared (first use in this function); did you mean 'SYS_getdents64'?
if (syscall (SYS_getdents, dirfd (dirp), NULL, 0) == -1
^~~~~~~~~~~~
SYS_getdents64
* gnu/packages/patches/coreutils-ls.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/base.scm (coreutils): Apply it.
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.
* gnu/packages/patches/glibc-CVE-2019-19126.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/base.scm (glibc): Update to 2.30.
[source](patches): Adjust for 2.30.
(glibc-2.29): New public variable.
Until now the following wouldn't build:
--8<---------------cut here---------------start------------->8---
(use-modules (gnu packages commencement)
(gnu packages gcc)
(gnu packages base))
(make-gcc-libc gcc-9 glibc-2.27)
--8<---------------cut here---------------end--------------->8---
* gnu/packages/base.scm (make-gcc-libc)[phases]: Add environment
variables to place the target libc on the system header search path.
[make-flags]: Remove unncessary FLAGS_FOR_TARGET.
[native-inputs]: Construct in a way that doesn't require emptying
inputs.
* 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.
* 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.
The patch for glibc 2.28 and earlier replaces the same content, but the context
in the patch is different enough to fail to merge.
* gnu/packages/base.scm (make-glibc-locales)[source]: Add patch.
* gnu/packages/patches/glibc-locales.patch: Adjust for glibc 2.29 and move old
file...
* gnu/packages/patches/glibc-locales-2.28.patch: ...here.
* gnu/local.mk (dist_patch_DATA): Add it.