Merge branch 'core-updates'
system: Define 'GUIX_LOCPATH' to work around 'glibc' package defect.
Our 'glibc' package currently ignores /run/current-system/locale,
although the intent is to look for locales in that directory.
* gnu/packages/base.scm (glibc/linux): Add comment about
/run/current-system/locale being ignored.
* gnu/system.scm (operating-system-environment-variables): Add
'GUIX_LOCPATH'.
* gnu/tests/base.scm (run-basic-test): Add "locale" test.
Merge branch 'core-updates'
gnu: glibc-locales: Fix build.
* gnu/packages/patches/glibc-locales.patch: Adjust to glibc-2.23.
* gnu/packages/base.scm (glibc-locales)[arguments]:
Pass 'lib_cv_complocaledir'.
gnu: Add glibc 2.22.
* gnu/packages/base.scm (glibc-2.22): New variable.
(glibc-2.21): Inherit from it; remove 'arguments' field.
gnu: glibc-2.21: Fix substitutes in glibc-2.21.
* gnu/packages/base.scm (glibc-2.21)[arguments]: Add back substitution
for /bin/pwd which was removed in the update of glibc to 2.23.
gnu: tar: Allow cross-compilation.
* gnu/packages/base.scm (tar)[inputs]: New field.
gnu: make: Update to 4.2.
* gnu/packages/base.scm (make): Update to 4.2.
gnu: base: Add glibc-for-target macro.
* gnu/packages/base.scm (glibc): Add macro.
(glibc/linux): Rename glibc to glibc/linux.
(glibc/hurd): Adjust accordingly.
Merge branch 'master' into core-updates
gnu: glibc-hurd-headers: Use correct "--host".
* gnu/packages/base.scm (glibc/hurd-headers)[arguments]: Use "i586-pc-gnu"
instead of "i686-pc-gnu".
gnu: glibc-hurd: Update to 20160518.
* gnu/packages/base.scm (glibc/hurd)[version]: Update to version 20160518.
[propagated-inputs]: Use hurd-core-headers.
[native-inputs]: Remove libpthread's source and "patch/libpthread-patch".
[arguments]: Add augment-libc.so and pre-configure-set-pwd phases.
Remove prepare-libpthread phase. Stop removing "--with-headers="
from original-configure-flags.
* gnu/packages/patches/glibc-hurd-extern-inline.patch: Remove patch.
* gnu/packages/patches/libpthread-glibc-preparation.patch: Likewise.
* gnu/local.mk (dist_patch_DATA): Remove them.
gnu: glibc: Refer to the target kernel headers when cross-compiling.
This fixes a regression introduced in
efc4eb147512fa7a2c6d74d9b296cfc22b1ef198 whereby the build process
corresponding to 'guix build glibc --target=mips64el-linux-gnu' would
refer to the native headers instead of the target headers, leading to a
build failure:
../sysdeps/unix/sysv/linux/statfs64.c: In function ‘__statfs64’:
../sysdeps/unix/sysv/linux/statfs64.c:73:1: error: control reaches end of non-void function [-Werror=return-type]
}
^
When we were using CROSS_CPATH instead of CROSS_C_INCLUDE_PATH, the
problem was hidden by the fact that CPATH corresponds to '-I' whereas
C_INCLUDE_PATH corresponds to '-isystem', and '-isystem' directories are
searched after '-I' directories.
* gnu/packages/base.scm (glibc)[arguments]: Refer to the kernel headers
from '%build-target-inputs' when cross-building.
gnu: tar: Update to 1.29.
* gnu/packages/base.scm (tar): Update to 1.29.
[source]: Remove 'tar-d_ino_in_dirent-fix.patch'.
[arguments]: New field.
* gnu/packages/patches/tar-d_ino_in_dirent-fix.patch: Remove.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
Merge branch 'master' into core-updates
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.
Merge branch 'master' into gnome-updates
gnu: Add libiconv.
* gnu/packages/base.scm (libiconv): New variable.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Merge branch 'master' into core-updates