+1998-08-12 Andreas Jaeger <aj@arthur.rhein-neckar.de>
+
+ * sysdeps/unix/sysv/linux/configure.in: Obey --with-headers,
+ document it.
+
+ * sysdeps/unix/sysv/linux/alpha/configure.in: New file, contains
+ test for recent Linux 2.1.100+ headers.
+
1998-08-21 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nis/nss_compat/compat-initgroups.c: Optimize NIS query.
--- /dev/null
+ # Local configure fragment for sysdeps/unix/sysv/linux/alpha.
+
+# Don't bother trying to generate any glue code to be compatible with the
+# existing system library, because we are the only system library.
+inhibit_glue=yes
+
+if test -n "$sysheaders"; then
+ OLD_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS $SYSINCLUDES"
+fi
+echo $ac_n "checking installed Linux kernel header files""... $ac_c" 1>&6
+echo "configure:13: checking installed Linux kernel header files" >&5
+if eval "test \"`echo '$''{'libc_cv_linux21100'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 18 "configure"
+#include "confdefs.h"
+#include <linux/version.h>
+int main() {
+#if LINUX_VERSION_CODE < (2 *65536+ 1 *256+ 100) /* 2.1.100 */
+eat flaming death
+#endif
+; return 0; }
+EOF
+if { (eval echo configure:27: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ libc_cv_linux21100='2.1.100 or later'
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ libc_cv_linux21100='TOO OLD!'
+fi
+rm -f conftest*
+fi
+
+echo "$ac_t""$libc_cv_linux21100" 1>&6
+if test "$libc_cv_linux21100" != '2.1.100 or later'; then
+ { echo "configure: error: GNU libc requires kernel header files from
+Linux 2.1.100 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.1.100 or later. This check uses <linux/version.h>, 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." 1>&2; exit 1; }
+fi
+if test -n "$sysheaders"; then
+ CFLAGS=$OLD_CFLAGS
+fi
--- /dev/null
+sinclude(./aclocal.m4)dnl Autoconf lossage
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/alpha.
+
+# Don't bother trying to generate any glue code to be compatible with the
+# existing system library, because we are the only system library.
+inhibit_glue=yes
+
+define([LIBC_LINUX_VERSION],[2.1.100])dnl
+if test -n "$sysheaders"; then
+ OLD_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS $SYSINCLUDES"
+fi
+define([libc_cv_linuxVER], [libc_cv_linux]patsubst(LIBC_LINUX_VERSION,[\.]))dnl
+AC_CACHE_CHECK(installed Linux kernel header files, libc_cv_linuxVER, [dnl
+AC_TRY_COMPILE([#include <linux/version.h>],
+[#if LINUX_VERSION_CODE < ]dnl
+patsubst(LIBC_LINUX_VERSION,[^\([^.]*\)\.\([^.]*\)\.\([^.]*\)$],dnl
+[ (\1 *65536+ \2 *256+ \3) /* \1.\2.\3 */])[
+eat flaming death
+#endif],
+ libc_cv_linuxVER='LIBC_LINUX_VERSION or later',
+ libc_cv_linuxVER='TOO OLD!')])
+if test "$libc_cv_linuxVER" != 'LIBC_LINUX_VERSION or later'; then
+ AC_MSG_ERROR([GNU libc requires kernel header files from
+Linux LIBC_LINUX_VERSION 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 LIBC_LINUX_VERSION or later. This check uses <linux/version.h>, 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.])
+fi
+if test -n "$sysheaders"; then
+ CFLAGS=$OLD_CFLAGS
+fi
# existing system library, because we are the only system library.
inhibit_glue=yes
+if test -n "$sysheaders"; then
+ OLD_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS $SYSINCLUDES"
+fi
echo $ac_n "checking installed Linux kernel header files""... $ac_c" 1>&6
-echo "configure:12: checking installed Linux kernel header files" >&5
+echo "configure:16: checking installed Linux kernel header files" >&5
if eval "test \"`echo '$''{'libc_cv_linux2010'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 17 "configure"
+#line 21 "configure"
#include "confdefs.h"
#include <linux/version.h>
int main() {
#endif
; return 0; }
EOF
-if { (eval echo configure:26: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:30: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
libc_cv_linux2010='2.0.10 or later'
else
/usr/include/linux; make sure these directories use files from
Linux 2.0.10 or later. This check uses <linux/version.h>, so
make sure that file was built correctly when installing the kernel header
-files." 1>&2; exit 1; }
+files. To use kernel headers not from /usr/include/linux, use the
+configure option --with-headers." 1>&2; exit 1; }
+fi
+if test -n "$sysheaders"; then
+ CFLAGS=$OLD_CFLAGS
fi
-
# The Linux filesystem standard prescribes where to place "essential"
# files. I.e., when the installation prefix is "/usr" we have to place
# shared library objects and the configuration files on the root partition
inhibit_glue=yes
define([LIBC_LINUX_VERSION],[2.0.10])dnl
+if test -n "$sysheaders"; then
+ OLD_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS $SYSINCLUDES"
+fi
define([libc_cv_linuxVER], [libc_cv_linux]patsubst(LIBC_LINUX_VERSION,[\.]))dnl
AC_CACHE_CHECK(installed Linux kernel header files, libc_cv_linuxVER, [dnl
AC_TRY_COMPILE([#include <linux/version.h>],
/usr/include/linux; make sure these directories use files from
Linux LIBC_LINUX_VERSION or later. This check uses <linux/version.h>, so
make sure that file was built correctly when installing the kernel header
-files.])
+files. To use kernel headers not from /usr/include/linux, use the
+configure option --with-headers.])
+fi
+if test -n "$sysheaders"; then
+ CFLAGS=$OLD_CFLAGS
fi
-
# The Linux filesystem standard prescribes where to place "essential"
# files. I.e., when the installation prefix is "/usr" we have to place
# shared library objects and the configuration files on the root partition