📄 configure.in
字号:
GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.# Local configure fragment for sysdeps/unix/sysv/linux.# The Linux kernel headers can be found in# /lib/modules/$(uname -r)/build/include# Check whether this directory is available.if test -z "$sysheaders" && test "x$cross_compiling" = xno && test -d /lib/modules/`uname -r`/build/include; then sysheaders="/lib/modules/`uname -r`/build/include" ccheaders=`$CC -print-file-name=include` dnl We don't have to use -nostdinc. We just want one more directory dnl to be used. SYSINCLUDES="-I $sysheaders"fi# 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=yesdefine([LIBC_LINUX_VERSION],[2.0.10])dnlif test -n "$sysheaders"; then OLD_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $SYSINCLUDES"fidefine([libc_cv_linuxVER], [libc_cv_linux]patsubst(LIBC_LINUX_VERSION,[\.]))dnlAC_CACHE_CHECK(installed Linux kernel header files, libc_cv_linuxVER, [dnlAC_EGREP_CPP([eat flaming death], [#include <linux/version.h>#if !defined LINUX_VERSION_CODE || LINUX_VERSION_CODE < ]dnlpatsubst(LIBC_LINUX_VERSION,[^\([^.]*\)\.\([^.]*\)\.\([^.]*\)$],dnl[ (\1 *65536+ \2 *256+ \3) /* \1.\2.\3 */])[eat flaming death#endif], libc_cv_linuxVER='TOO OLD!', libc_cv_linuxVER='LIBC_LINUX_VERSION or later')])if test "$libc_cv_linuxVER" != 'LIBC_LINUX_VERSION or later'; then AC_MSG_ERROR([GNU libc requires kernel header files fromLinux 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 fromLinux LIBC_LINUX_VERSION or later. This check uses <linux/version.h>, somake sure that file was built correctly when installing the kernel headerfiles. To use kernel headers not from /usr/include/linux, use theconfigure option --with-headers.])fi# If the user gave a minimal version number test whether the available# kernel headers are young enough. Additionally we have minimal# kernel versions for some architectures.case "$machine" in alpha*) arch_minimum_kernel=2.1.100 libc_cv_gcc_unwind_find_fde=yes ;; arm*) arch_minimum_kernel=2.0.10 libc_cv_gcc_unwind_find_fde=yes ;; i386*) libc_cv_gcc_unwind_find_fde=yes arch_minimum_kernel=2.0.10 ;; ia64*) arch_minimum_kernel=2.4.0 ;; hppa*) libc_cv_gcc_unwind_find_fde=yes arch_minimum_kernel=2.4.19 ;; m68k*) arch_minimum_kernel=2.0.10 libc_cv_gcc_unwind_find_fde=yes ;; mips*) arch_minimum_kernel=2.4.0 libc_cv_gcc_unwind_find_fde=yes ;; powerpc/powerpc32) libc_cv_gcc_unwind_find_fde=yes arch_minimum_kernel=2.0.10 ;; powerpc/powerpc64) arch_minimum_kernel=2.4.19 ;; s390/s390-32) libc_cv_gcc_unwind_find_fde=yes arch_minimum_kernel=2.2.10 ;; s390/s390-64) libc_cv_gcc_unwind_find_fde=yes arch_minimum_kernel=2.4.0 ;; sh*) arch_minimum_kernel=2.3.99 libc_cv_gcc_unwind_find_fde=yes ;; sparc*) libc_cv_gcc_unwind_find_fde=yes arch_minimum_kernel=2.0.10 ;; x86_64*) arch_minimum_kernel=2.4.0 ;; *) arch_minimum_kernel=2.0.10 ;;esacif 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/'`)) arch_version=$((`echo "$arch_minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1 \* 65536 + \2 \* 256 + \3/'`)) changequote([,]) if test $user_version -lt $arch_version; then AC_MSG_WARN([minimum kernel version reset to $arch_minimum_kernel]) minimum_kernel=$arch_minimum_kernel fielse if test $arch_minimum_kernel != '2.0.10'; then minimum_kernel=$arch_minimum_kernel fifiif test -n "$minimum_kernel"; then AC_MSG_CHECKING(for kernel header at least $minimum_kernel)changequote(,)dnl decnum=`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/(\1 * 65536 + \2 * 256 + \3)/'`; abinum=`echo "$minimum_kernel.0.0.0" | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1,\2,\3/'`;changequote([,])dnl AC_EGREP_CPP([eat flaming death], [#include <linux/version.h>#if LINUX_VERSION_CODE < $decnumeat flaming death#endif], libc_minimum_kernel='too old!', libc_minimum_kernel=ok) AC_MSG_RESULT($libc_minimum_kernel) if test "$libc_minimum_kernel" = ok; then AC_DEFINE_UNQUOTED(__LINUX_KERNEL_VERSION, $decnum) AC_DEFINE_UNQUOTED(__ABI_TAG_VERSION, $abinum) else AC_MSG_ERROR([*** The available kernel headers are older than the requested*** compatible kernel version]) fifi# The result of the above test for the use of the FDE code is invalid if# the user overrides the decision about the minimum ABI.if test "$oldest_abi" != default && test "2.2.4" \< "$oldest_abi"; then libc_cv_gcc_unwind_find_fde=nofiif test -n "$sysheaders"; then CPPFLAGS=$OLD_CPPFLAGSfi# 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# in /lib and /etc.case "$prefix" in/usr | /usr/) # 64-bit libraries on bi-arch platforms go in /lib64 instead of /lib case $machine in sparc/sparc64 | x86_64 | powerpc/powerpc64 | s390/s390-64 ) libc_cv_slibdir="/lib64" if test "$libdir" = '${exec_prefix}/lib'; then libdir='${exec_prefix}/lib64'; # Locale data can be shared between 32bit and 64bit libraries libc_cv_localedir='${exec_prefix}/lib/locale' fi ;; *) libc_cv_slibdir="/lib" ;; esac # Allow the user to override the path with --sysconfdir if test $sysconfdir = '${prefix}/etc'; then libc_cv_sysconfdir=/etc else libc_cv_sysconfdir=$sysconfdir fi libc_cv_rootsbindir="/sbin" ;;esac# Under Linux the LinuxThreads or NPTL add-on should be available.case $add_ons in # Only one of the add-ons should be available. *linuxthreads*nptl*|*nptl*linuxthreads*) echo "\*** LinuxThreads and NPTL add-ons are both available. Only one must be used." exit 1 ;; # It is available. Good. *linuxthreads*) linuxthreads_missing= ;; *nptl*) linuxthreads_missing= ;; *) linuxthreads_missing=yes ;;esacif test "$linuxthreads_missing"; then if test $enable_sanity = yes; then echo "\*** On GNU/Linux systems it is normal to compile GNU libc with the*** \`linuxthreads' add-on. Without that, the library will be*** incompatible with normal GNU/Linux systems.*** If you really mean to not use this add-on, run configure again*** using the extra parameter \`--disable-sanity-checks'." exit 1 else echo "\*** WARNING: Are you sure you do not want to use the \`linuxthreads'*** add-on?" fifiif test "$prefix" = "/usr/local" -o "$prefix" = "/usr/local/" -o "$prefix" = "NONE"; then if test $enable_sanity = yes; then echo "\*** On GNU/Linux systems the GNU C Library should not be installed into*** /usr/local since this might make your system totally unusable.*** We strongly advise to use a different prefix. For details read the FAQ.*** If you really mean to do this, run configure again using the extra*** parameter \`--disable-sanity-checks'." exit 1 else echo "\*** WARNING: Do you really want to install the GNU C Library into /usr/local?*** This might make your system totally unusable, for details read the FAQ." fifi# One Linux we use ldconfig.use_ldconfig=yes# We need some extensions to the `ldd' script.changequote(,)case "$machine" in i[3456]86* | m68*) ldd_rewrite_script=../sysdeps/unix/sysv/linux/ldd-rewrite.sed ;; ia64*) ldd_rewrite_script=../sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed ;; s390*) ldd_rewrite_script=../sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed ;; sparc*) ldd_rewrite_script=../sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed ;; x86_64*) ldd_rewrite_script=../sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed ;; powerpc*) ldd_rewrite_script=../sysdeps/unix/sysv/linux/powerpc/ldd-rewrite.sed ;; *) ;;esacchangequote([,])if test $host = $build; then # If $prefix/include/{net,scsi} are symlinks, make install will # clobber what they're linked to (probably a kernel tree). # test -L ought to work on all Linux boxes. if test "x$prefix" != xNONE; then ac_prefix=$prefix else ac_prefix=$ac_default_prefix fi AC_MSG_CHECKING([for symlinks in ${ac_prefix}/include]) ac_message= if test -L ${ac_prefix}/include/net; then ac_message="$ac_message ${ac_prefix}/include/net is a symlink" fi if test -L ${ac_prefix}/include/scsi; then ac_message="$ac_message ${ac_prefix}/include/scsi is a symlink" fi if test -n "$ac_message"; then AC_MSG_ERROR([$ac_message\`make install' will destroy the target of the link(s).Delete the links and re-run configure, or better still, move the entire${ac_prefix}/include directory out of the way.]) else AC_MSG_RESULT(ok) fifi
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -