mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-30 16:12:58 -05:00
5f3f703918
* 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.
28 lines
1.1 KiB
Diff
28 lines
1.1 KiB
Diff
We want to allow builds in chroots that lack /bin/sh. Thus, system(3)
|
|
and popen(3) need to be tweaked to use the right shell. For the bootstrap
|
|
glibc, we just use whatever `sh' can be found in $PATH. The final glibc
|
|
instead uses the hard-coded absolute file name of `bash'.
|
|
|
|
--- a/sysdeps/posix/system.c
|
|
+++ b/sysdeps/posix/system.c
|
|
@@ -140,7 +140,7 @@ do_system (const char *line)
|
|
__posix_spawnattr_setflags (&spawn_attr,
|
|
POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK);
|
|
|
|
- status = __posix_spawn (&pid, SHELL_PATH, 0, &spawn_attr,
|
|
+ status = posix_spawnp (&pid, SHELL_NAME, 0, &spawn_attr,
|
|
(char *const[]){ (char*) SHELL_NAME,
|
|
(char*) "-c",
|
|
(char *) line, NULL },
|
|
--- a/libio/iopopen.c
|
|
+++ b/libio/iopopen.c
|
|
@@ -85,7 +85,7 @@ spawn_process (posix_spawn_file_actions_t *fa, FILE *fp, const char *command,
|
|
return false;
|
|
}
|
|
|
|
- if (__posix_spawn (&((_IO_proc_file *) fp)->pid, _PATH_BSHELL, fa, 0,
|
|
+ if (posix_spawnp (&((_IO_proc_file *) fp)->pid, "sh", fa, 0,
|
|
(char *const[]){ (char*) "sh", (char*) "-c",
|
|
(char *) command, NULL }, __environ) != 0)
|
|
return false;
|
|
|