diff --git a/ChangeLog b/ChangeLog index 4d4840da75..578f1b65d2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,20 @@ +2016-02-24 Joseph Myers + + * sysdeps/unix/sysv/linux/configure.ac (LIBC_LINUX_VERSION): + Define to 3.2.0. + (arch_minimum_kernel): Likewise. + * sysdeps/unix/sysv/linux/configure: Regenerated. + * sysdeps/unix/sysv/linux/i386/configure.ac (arch_minimum_kernel): + Define to 2.6.32. + * sysdeps/unix/sysv/linux/i386/configure: Regenerated. + * sysdeps/unix/sysv/linux/x86_64/64/configure.ac + (arch_minimum_kernel): Define to 2.6.32. + * sysdeps/unix/sysv/linux/x86_64/64/configure: Regenerated. + * README: Document Linux 3.2 requirement. + * manual/install.texi (Linux): Document Linux 3.2 headers + requirement. + * INSTALL: Regenerated. + 2016-02-24 Andreas Schwab * math/test-math-isinff.cc (do_test): Only call isinfl and isnanl diff --git a/INSTALL b/INSTALL index a0d0c058cd..31e256d413 100644 --- a/INSTALL +++ b/INSTALL @@ -426,7 +426,7 @@ Specific advice for GNU/Linux systems ===================================== If you are installing the GNU C Library on GNU/Linux systems, you need -to have the header files from a 2.6.32 or newer kernel around for +to have the header files from a 3.2 or newer kernel around for reference. These headers must be installed using 'make headers_install'; the headers present in the kernel source directory are not suitable for direct use by the GNU C Library. You do not need to diff --git a/NEWS b/NEWS index dc5a382c9e..f963b938c8 100644 --- a/NEWS +++ b/NEWS @@ -7,6 +7,13 @@ using `glibc' in the "product" field. Version 2.24 +* The minimum Linux kernel version that this version of the GNU C Library + can be used with is 3.2, except on i[4567]86 and x86_64, where Linux + kernel version 2.6.32 or later suffices (on architectures that already + required kernel versions more recent than 3.2, those requirements remain + unchanged). Linux 3.2 or later kernel headers are required on all + architectures. + * The pap_AN locale has been deleted. This has been deprecated for a long time. It has been replaced by pap_AW & pap_CW, both of which have long been included in previous releases. diff --git a/README b/README index e5d584ab23..be687c7dc3 100644 --- a/README +++ b/README @@ -17,7 +17,9 @@ GNU/Hurd support requires out-of-tree patches that will eventually be incorporated into an official GNU C Library release. When working with Linux kernels, this version of the GNU C Library -requires Linux kernel version 2.6.32 or later. +requires Linux kernel version 3.2 or later on all architectures except +i[4567]86 and x86_64, where Linux kernel version 2.6.32 or later +suffices. Also note that the shared version of the libgcc_s library must be installed for the pthread library to work correctly. diff --git a/manual/install.texi b/manual/install.texi index b329950ff0..95021b4a50 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -489,7 +489,7 @@ patches, although we try to avoid this. @cindex kernel header files If you are installing @theglibc{} on @gnulinuxsystems{}, you need to have -the header files from a 2.6.32 or newer kernel around for reference. +the header files from a 3.2 or newer kernel around for reference. These headers must be installed using @samp{make headers_install}; the headers present in the kernel source directory are not suitable for direct use by @theglibc{}. You do not need to use that kernel, just have diff --git a/sysdeps/unix/sysv/linux/configure b/sysdeps/unix/sysv/linux/configure index ef9d4256d3..ab96601f0c 100644 --- a/sysdeps/unix/sysv/linux/configure +++ b/sysdeps/unix/sysv/linux/configure @@ -39,13 +39,13 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking installed Linux kernel header files" >&5 $as_echo_n "checking installed Linux kernel header files... " >&6; } -if ${libc_cv_linux2632+:} false; then : +if ${libc_cv_linux320+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include -#if !defined LINUX_VERSION_CODE || LINUX_VERSION_CODE < (2 *65536+ 6 *256+ 32) /* 2.6.32 */ +#if !defined LINUX_VERSION_CODE || LINUX_VERSION_CODE < (3 *65536+ 2 *256+ 0) /* 3.2.0 */ # error kernel headers missing or too old #endif int @@ -57,20 +57,20 @@ main () } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - libc_cv_linux2632='2.6.32 or later' + libc_cv_linux320='3.2.0 or later' else - libc_cv_linux2632='missing or too old!' + libc_cv_linux320='missing or too old!' fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_linux2632" >&5 -$as_echo "$libc_cv_linux2632" >&6; } -if test "$libc_cv_linux2632" != '2.6.32 or later'; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_linux320" >&5 +$as_echo "$libc_cv_linux320" >&6; } +if test "$libc_cv_linux320" != '3.2.0 or later'; then as_fn_error $? "GNU libc requires kernel header files from -Linux 2.6.32 or later to be installed before configuring. +Linux 3.2.0 or later to be installed before configuring. The kernel header files are found usually in /usr/include/asm and /usr/include/linux; make sure these directories use files from -Linux 2.6.32 or later. This check uses , so +Linux 3.2.0 or later. This check uses , so make sure that file was built correctly when installing the kernel header files. To use kernel headers not from /usr/include/linux, use the configure option --with-headers." "$LINENO" 5 @@ -82,7 +82,7 @@ fi # set arch_minimum_kernel already, let that override our defaults here. # Note that we presume such a fragment has set libc_cv_gcc_unwind_find_fde # if appropriate too. -test -n "$arch_minimum_kernel" || arch_minimum_kernel=2.6.32 +test -n "$arch_minimum_kernel" || arch_minimum_kernel=3.2.0 if test -n "$minimum_kernel"; then user_version=$((`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1 \* 65536 + \2 \* 256 + \3/'`)) diff --git a/sysdeps/unix/sysv/linux/configure.ac b/sysdeps/unix/sysv/linux/configure.ac index 6738e2d653..b3e74bd2e2 100644 --- a/sysdeps/unix/sysv/linux/configure.ac +++ b/sysdeps/unix/sysv/linux/configure.ac @@ -1,7 +1,7 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. # Local configure fragment for sysdeps/unix/sysv/linux. -define([LIBC_LINUX_VERSION],[2.6.32])dnl +define([LIBC_LINUX_VERSION],[3.2.0])dnl if test -n "$sysheaders"; then OLD_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $SYSINCLUDES" @@ -33,7 +33,7 @@ fi # set arch_minimum_kernel already, let that override our defaults here. # Note that we presume such a fragment has set libc_cv_gcc_unwind_find_fde # if appropriate too. -test -n "$arch_minimum_kernel" || arch_minimum_kernel=2.6.32 +test -n "$arch_minimum_kernel" || arch_minimum_kernel=3.2.0 if test -n "$minimum_kernel"; then changequote(,) user_version=$((`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1 \* 65536 + \2 \* 256 + \3/'`)) diff --git a/sysdeps/unix/sysv/linux/i386/configure b/sysdeps/unix/sysv/linux/i386/configure index f119e62fc3..eb72659dc3 100644 --- a/sysdeps/unix/sysv/linux/i386/configure +++ b/sysdeps/unix/sysv/linux/i386/configure @@ -1,5 +1,7 @@ # This file is generated from configure.ac by Autoconf. DO NOT EDIT! # Local configure fragment for sysdeps/unix/sysv/linux/i386. +arch_minimum_kernel=2.6.32 + libc_cv_gcc_unwind_find_fde=yes ldd_rewrite_script=sysdeps/unix/sysv/linux/ldd-rewrite.sed diff --git a/sysdeps/unix/sysv/linux/i386/configure.ac b/sysdeps/unix/sysv/linux/i386/configure.ac index 64ab2cc2c8..1a11da6dad 100644 --- a/sysdeps/unix/sysv/linux/i386/configure.ac +++ b/sysdeps/unix/sysv/linux/i386/configure.ac @@ -1,5 +1,7 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. # Local configure fragment for sysdeps/unix/sysv/linux/i386. +arch_minimum_kernel=2.6.32 + libc_cv_gcc_unwind_find_fde=yes ldd_rewrite_script=sysdeps/unix/sysv/linux/ldd-rewrite.sed diff --git a/sysdeps/unix/sysv/linux/x86_64/64/configure b/sysdeps/unix/sysv/linux/x86_64/64/configure index 9d1a8d271d..4d3f84567b 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/configure +++ b/sysdeps/unix/sysv/linux/x86_64/64/configure @@ -1,6 +1,8 @@ # This file is generated from configure.ac by Autoconf. DO NOT EDIT! # Local configure fragment for sysdeps/unix/sysv/linux/x86_64/64. +arch_minimum_kernel=2.6.32 + test -n "$libc_cv_slibdir" || case "$prefix" in /usr | /usr/) diff --git a/sysdeps/unix/sysv/linux/x86_64/64/configure.ac b/sysdeps/unix/sysv/linux/x86_64/64/configure.ac index 8e863b94ad..81114e8b27 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/configure.ac +++ b/sysdeps/unix/sysv/linux/x86_64/64/configure.ac @@ -1,4 +1,6 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. # Local configure fragment for sysdeps/unix/sysv/linux/x86_64/64. +arch_minimum_kernel=2.6.32 + LIBC_SLIBDIR_RTLDDIR([lib64], [lib64])