1 dnl Process this file with autoconf to produce a configure script.
3 AC_PREREQ(2.53)dnl dnl Minimum Autoconf version required.
4 AC_INIT([GNU C Library], [(see version.h)], [glibc])
5 AC_CONFIG_SRCDIR([include/features.h])
6 AC_CONFIG_HEADERS([config.h])
7 AC_CONFIG_AUX_DIR([scripts])
9 if test "`cd $srcdir; /bin/pwd`" = "`/bin/pwd`"; then
10 AC_MSG_ERROR([you must configure in a separate build directory])
13 # This will get text that should go into config.make.
16 # Check for a --with-gmp argument and set gmp-srcdir in config.make.
18 AC_HELP_STRING([--with-gmp=DIRECTORY],
19 [find GMP source code in DIRECTORY (not needed)]),
22 yes) AC_MSG_ERROR([--with-gmp requires an argument; use --with-gmp=DIRECTORY]) ;;
24 *) config_vars="$config_vars
25 gmp-srcdir = $withval" ;;
28 # Check for a --with-gd argument and set libgd-LDFLAGS in config.make.
30 AC_HELP_STRING([--with-gd=DIR],
31 [find libgd include dir and library with prefix DIR]),
35 *) libgd_include="-I$withval/include"
36 libgd_ldflags="-L$withval/lib" ;;
39 AC_ARG_WITH([gd-include],
40 AC_HELP_STRING([--with-gd-include=DIR],
41 [find libgd include files in DIR]),
43 case "$with_gd_include" in
45 *) libgd_include="-I$withval" ;;
49 AC_HELP_STRING([--with-gd-lib=DIR],
50 [find libgd library files in DIR]),
52 case "$with_gd_lib" in
54 *) libgd_ldflags="-L$withval" ;;
58 if test -n "$libgd_include"; then
59 config_vars="$config_vars
60 CFLAGS-memusagestat.c = $libgd_include"
62 if test -n "$libgd_ldflags"; then
63 config_vars="$config_vars
64 libgd-LDFLAGS = $libgd_ldflags"
67 dnl Arguments to specify presence of other packages/features.
69 AC_HELP_STRING([--with-fp],
70 [if using floating-point hardware @<:@default=yes@:>@]),
74 AC_ARG_WITH([binutils],
75 AC_HELP_STRING([--with-binutils=PATH],
76 [specify location of binutils (as and ld)]),
77 [path_binutils=$withval],
80 AC_HELP_STRING([--with-elf],
81 [if using the ELF object format]),
85 AC_HELP_STRING([--with-xcoff],
86 [if using the XCOFF object format]),
90 AC_HELP_STRING([--without-cvs],
91 [if CVS should not be used]),
94 if test "$with_cvs" = yes; then
95 if test -d $srcdir/CVS && grep :pserver: $srcdir/CVS/Root > /dev/null
102 AC_ARG_WITH([headers],
103 AC_HELP_STRING([--with-headers=PATH],
104 [location of system headers to use
105 (for example /usr/src/linux/include)
106 @<:@default=compiler default@:>@]),
107 [sysheaders=$withval],
110 AC_ARG_ENABLE([sanity-checks],
111 AC_HELP_STRING([--disable-sanity-checks],
112 [really do not use threads (should not be used except in special situations) @<:@default=yes@:>@]),
113 [enable_sanity=$enableval],
116 AC_SUBST(enable_check_abi)
117 AC_ARG_ENABLE([check-abi],
118 AC_HELP_STRING([--enable-check-abi],
119 [do "make check-abi" in "make check" (no/warn/yes)
120 @<:@default=no@:>@]),
121 [enable_check_abi=$enableval],
122 [enable_check_abi=no])
124 dnl Arguments to enable or disable building the static, shared, profiled,
125 dnl and -fomit-frame-pointer libraries.
126 dnl I've disabled this for now since we cannot build glibc without static
127 dnl libraries built in the moment.
128 dnl AC_ARG_ENABLE([static],
129 dnl AC_HELP_STRING([--enable-static],
130 dnl [build static library @<:@default=yes@:>@]),
131 dnl [static=$enableval],
134 AC_ARG_ENABLE([shared],
135 AC_HELP_STRING([--enable-shared],
136 [build shared library @<:@default=yes if GNU ld & ELF@:>@]),
139 AC_ARG_ENABLE([profile],
140 AC_HELP_STRING([--enable-profile],
141 [build profiled library @<:@default=yes@:>@]),
142 [profile=$enableval],
144 AC_ARG_ENABLE([omitfp],
145 AC_HELP_STRING([--enable-omitfp],
146 [build undebuggable optimized library @<:@default=no@:>@]),
149 AC_ARG_ENABLE([bounded],
150 AC_HELP_STRING([--enable-bounded],
151 [build with runtime bounds checking @<:@default=no@:>@]),
152 [bounded=$enableval],
154 AC_ARG_ENABLE([versioning],
155 AC_HELP_STRING([--disable-versioning],
156 [do not include versioning information in the library objects @<:@default=yes if supported@:>@]),
157 [enable_versioning=$enableval],
158 [enable_versioning=yes])
160 AC_ARG_ENABLE([oldest-abi],
161 AC_HELP_STRING([--enable-oldest-abi=ABI],
162 [configure the oldest ABI supported @<:@e.g. 2.2@:>@ @<:@default=glibc default@:>@]),
163 [oldest_abi=$enableval],
165 if test "$oldest_abi" = yes || test "$oldest_abi" = no; then
168 AC_DEFINE_UNQUOTED(GLIBC_OLDEST_ABI, "$oldest_abi")
172 dnl Generic infrastructure for drop-in additions to libc.
173 AC_ARG_ENABLE([add-ons],
174 AC_HELP_STRING([--enable-add-ons@<:@=DIRS...@:>@],
175 [configure and build add-ons in DIR1,DIR2,... search for add-ons if no parameter given]),
176 [case "$enableval" in
177 yes) add_ons=`cd $srcdir && echo */configure | sed -e 's!/configure!!g'`
178 add_ons_automatic=yes
179 test "$add_ons" = "*" && add_ons= ;;
180 *) add_ons=`echo "$enableval" | sed 's/,/ /g'`
181 add_ons_automatic=no ;;
183 [add_ons= add_ons_automatic=no])
185 dnl Let the user avoid using TLS. Don't know why but...
187 AC_HELP_STRING([--with-tls],
188 [enable support for TLS]),
192 AC_ARG_WITH([__thread],
193 AC_HELP_STRING([--without-__thread],
194 [do not use TLS features even when supporting them]),
195 [use__thread=$withval],
198 AC_ARG_ENABLE([hidden-plt],
199 AC_HELP_STRING([--disable-hidden-plt],
200 [do not hide internal function calls to avoid PLT]),
203 if test "x$hidden" = xno; then
207 AC_ARG_ENABLE([bind-now],
208 AC_HELP_STRING([--enable-bind-now],
209 [disable lazy relocations in DSOs]),
210 [bindnow=$enableval],
214 dnl On some platforms we cannot use dynamic loading. We must provide
215 dnl static NSS modules.
216 AC_ARG_ENABLE([static-nss],
217 AC_HELP_STRING([--enable-static-nss],
218 [build static NSS modules @<:@default=no@:>@]),
219 [static_nss=$enableval],
221 dnl Enable static NSS also if we build no shared objects.
222 if test x"$static_nss" = xyes || test x"$shared" = xno; then
224 AC_DEFINE(DO_STATIC_NSS)
227 AC_ARG_ENABLE([force-install],
228 AC_HELP_STRING([--disable-force-install],
229 [don't force installation of files from this package, even if they are older than the installed files]),
230 [force_install=$enableval],
232 AC_SUBST(force_install)
234 dnl On some platforms we allow dropping compatibility with all kernel
236 AC_ARG_ENABLE([kernel],
237 AC_HELP_STRING([--enable-kernel=VERSION],
238 [compile for compatibility with kernel not older than VERSION]),
239 [minimum_kernel=$enableval],
241 dnl Prevent unreasonable values.
242 if test "$minimum_kernel" = yes || test "$minimum_kernel" = no; then
243 # Better nothing than this.
246 if test "$minimum_kernel" = current; then
247 minimum_kernel=`uname -r 2>/dev/null` || minimum_kernel=
251 dnl For the development we sometimes want gcc to issue even more warnings.
252 dnl This is not the default since many of the extra warnings are not
254 AC_ARG_ENABLE([all-warnings],
255 AC_HELP_STRING([--enable-all-warnings],
256 [enable all useful warnings gcc can issue]),
257 [all_warnings=$enableval],
259 AC_SUBST(all_warnings)
263 # The way shlib-versions is used to generate soversions.mk uses a
264 # fairly simplistic model for name recognition that can't distinguish
265 # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os
266 # of `gnu*' here to be `gnu-gnu*' just so that shlib-versions can
267 # tell. This doesn't get used much beyond that, so it's fairly safe.
272 host_os=`echo $host_os | sed -e 's/gnu/gnu-gnu/'`
276 # We keep the original values in `$config_*' and never modify them, so we
277 # can write them unchanged into config.make. Everything else uses
278 # $machine, $vendor, and $os, and changes them whenever convenient.
279 config_machine=$host_cpu config_vendor=$host_vendor config_os=$host_os
281 # Don't allow vendor == "unknown"
282 test "$config_vendor" = unknown && config_vendor=
283 config_os="`echo $config_os | sed 's/^unknown-//'`"
285 # Some configurations imply other options.
287 gnu* | linux* | bsd4.4* | netbsd* | freebsd*)
288 # These systems always use GNU tools.
289 gnu_ld=yes gnu_as=yes ;;
292 # i586-linuxaout is mangled into i586-pc-linux-gnuaout
293 linux*ecoff* | linux*aout* | gnu*aout* | gnu*ecoff*)
295 gnu* | linux* | freebsd* | netbsd* | sysv4* | solaris2* | irix6*)
296 # These systems (almost) always use the ELF format.
300 # These systems are always xcoff
306 # The configure fragment of an add-on port can modify these to supplement
307 # or override the table in the case statement below. No fragment should
308 # ever change the config_* variables, however.
309 machine=$config_machine
310 vendor=$config_vendor
313 # config.guess on some IBM machines says `rs6000' instead of `powerpc'.
315 if test "$machine" = rs6000; then
319 # Braindead PowerPC box with absolutely no FPU.
320 case "$machine-$host_os" in
327 # An add-on can set this when it the tuple to disable the sanity check below.
330 dnl Having this here, though empty, makes sure that if add-ons' fragments
331 dnl do AC_CONFIG_SUBDIRS([some-dir]), which just sets $subdirs, then
332 dnl our AC_OUTPUT will actually use it.
337 if test x"$add_ons" != x; then
338 for f in $add_ons; do
343 *** It seems that you're using an old \`crypt' add-on. crypt is now
344 *** part of glibc and using the old add-on will not work with this
345 *** release. Start again with fresh sources and without the old
346 *** \`crypt' add-on.])
350 *** It seems that you're using an old \`localedata' add-on. localedata
351 *** is now part of glibc and using the old add-on will not work with
352 *** this release. Start again with fresh sources and without the old
353 *** \`localedata' add-on.])
357 # Test whether such a subdir really exists.
358 test -d $srcdir/$f || {
359 AC_MSG_ERROR(add-on directory \"$f\" does not exist)
363 # Now source each add-on's configure fragment.
364 # The fragments can use $srcdir/$libc_add_on to find themselves,
365 # and test $add_ons_automatic to see if they were explicitly requested.
366 # A fragment can clear (or even change) $libc_add_on to affect
367 # whether it goes into the list to be actually used in the build.
369 for libc_add_on in $add_ons; do
370 libc_add_on_frag=$srcdir/$libc_add_on/configure
371 if test -r $libc_add_on_frag; then
372 AC_MSG_RESULT(running configure fragment for add-on $libc_add_on)
375 AC_MSG_WARN(add-on fragment $libc_add_on_frag missing)
377 if test -n "$libc_add_on"; then
378 use_add_ons="$use_add_ons $libc_add_on"
379 add_ons_pfx="$add_ons_pfx $libc_add_on/"
380 add_ons_sfx="$add_ons_sfx /$libc_add_on"
383 # Use echo to strip excess whitespace.
384 add_ons="`echo $use_add_ons`"
390 ### I put this here to prevent those annoying emails from people who cannot
391 ### read and try to compile glibc on unsupported platforms. --drepper
393 ### By using the undocumented --enable-hacker-mode option for configure
394 ### one can skip this test to make the configuration not fail for unsupported
397 if test -z "$enable_hacker_mode" && test x"$libc_config_ok" != xyes; then
398 case "$machine-$host_os" in
399 *-linux* | *-gnu* | arm*-none* | powerpc-aix4.3.*)
402 echo "*** The GNU C library is currently not available for this platform."
403 echo "*** So far nobody cared to port it and if there is no volunteer it"
404 echo "*** might never happen. So, if you have interest to see glibc on"
405 echo "*** this platform visit"
406 echo "*** http://www.gnu.org/software/libc/porting.html"
407 echo "*** and join the group of porters"
413 dnl We need to use [ and ] for other purposes for a while now.
415 # Expand the configuration machine name into a subdirectory by architecture
416 # type and particular chip. If an add-on configure fragment already set
417 # base_machine, we don't change it.
418 test -n "$base_machine" || case "$machine" in
419 a29k | am29000) base_machine=a29k machine=a29k ;;
420 alpha*) base_machine=alpha machine=alpha/$machine ;;
421 arm*) base_machine=arm machine=arm/arm32/$machine ;;
422 c3[012]) base_machine=cx0 machine=cx0/c30 ;;
423 c4[04]) base_machine=cx0 machine=cx0/c40 ;;
424 hppa*64*) base_machine=hppa machine=hppa/hppa64 ;;
425 hppa*) base_machine=hppa machine=hppa/hppa1.1 ;;
426 i[34567]86) base_machine=i386 machine=i386/$machine ;;
427 ia64) base_machine=ia64 machine=ia64 ;;
428 m680?0) base_machine=m68k machine=m68k/$machine ;;
429 m68k) base_machine=m68k machine=m68k/m68020 ;;
430 m88???) base_machine=m88k machine=m88k/$machine ;;
431 m88k) base_machine=m88k machine=m88k/m88100 ;;
432 mips64*) base_machine=mips64
433 case "$CC $CFLAGS $CPPFLAGS " in
434 *" -mabi=n32 "*) mips_cc_abi=n32 ;;
435 *" -mabi=64 "*|*" -mabi=n64 "*) mips_cc_abi=64 ;;
436 *" -mabi=32 "*|*" -mabi=o32 "*) mips_cc_abi=32 ;;
437 *) mips_cc_abi=default ;;
440 *abin32*) mips_config_abi=n32 ;;
441 *abi64*|*abin64*) mips_config_abi=64 ;;
442 *abi32*|*abio32*) mips_config_abi=32 ;;
443 *) mips_config_abi=$mips_cc_abi ;;
445 case $mips_config_abi in
446 default) machine=mips/mips64/n32 mips_config_abi=n32 ;;
447 n32) machine=mips/mips64/n32 ;;
448 64) machine=mips/mips64/n64 ;;
449 32) machine=mips/mips32/kern64 ;;
451 machine=$machine/$config_machine
452 if test $mips_config_abi != $mips_cc_abi; then
453 # This won't make it to config.make, but we want to
454 # set this in case configure tests depend on it.
455 CPPFLAGS="$CPPFLAGS -mabi=$mips_config_abi"
458 mips*) base_machine=mips machine=mips/mips32/$machine ;;
459 powerpc) base_machine=powerpc machine=powerpc/powerpc32 ;;
460 powerpc64) base_machine=powerpc machine=powerpc/powerpc64 ;;
461 s390) base_machine=s390 machine=s390/s390-32 ;;
462 s390x) base_machine=s390 machine=s390/s390-64 ;;
463 sh3*) base_machine=sh machine=sh/sh3 ;;
464 sh4*) base_machine=sh machine=sh/sh4 ;;
466 base_machine=sparc machine=sparc/sparc32 ;;
467 sparcv8 | supersparc | hypersparc)
468 base_machine=sparc machine=sparc/sparc32/sparcv8 ;;
469 sparcv8plus | sparcv8plusa | sparcv9)
470 base_machine=sparc machine=sparc/sparc32/sparcv9 ;;
471 sparcv8plusb | sparcv9b)
472 base_machine=sparc machine=sparc/sparc32/sparcv9b ;;
473 sparc64 | ultrasparc)
474 base_machine=sparc machine=sparc/sparc64 ;;
475 sparc64b | ultrasparc3)
476 base_machine=sparc machine=sparc/sparc64/sparcv9b ;;
477 thumb*) base_machine=thumb machine=arm/thumb/$machine ;;
478 *) base_machine=$machine ;;
481 AC_SUBST(base_machine)
483 if test "$base_machine" = "i386"; then
484 AC_DEFINE(USE_REGPARMS)
487 # Compute the list of sysdep directories for this configuration.
488 # This can take a while to compute.
489 sysdep_dir=$srcdir/sysdeps
490 AC_MSG_CHECKING(sysdep dirs)
491 dnl We need to use [ and ] for other purposes for a while now.
493 # Make sco3.2v4 become sco3.2.4 and sunos4.1.1_U1 become sunos4.1.1.U1.
494 os="`echo $os | sed 's/\([0-9A-Z]\)[v_]\([0-9A-Z]\)/\1.\2/g'`"
499 netbsd* | 386bsd* | freebsd* | bsdi*)
500 base_os=unix/bsd/bsd4.4 ;;
501 osf* | sunos* | ultrix* | newsos* | dynix* | *bsd*)
503 sysv* | isc* | esix* | sco* | minix* | irix4* | linux*)
506 base_os=unix/sysv/irix6/$os ;;
508 base_os=unix/sysv/sysv4 ;;
510 base_os=unix/sysv/hpux/$os ;;
512 base_os=unix/sysv/aix/aix4.3 ;;
514 base_os=standalone ;;
519 # For sunos4.1.1, try sunos4.1.1, then sunos4.1, then sunos4, then sunos.
522 while o=`echo $tail | sed 's/\.[^.]*$//'`; test $o != $tail; do
526 o=`echo $tail | sed 's/[0-9]*$//'`
527 if test $o != $tail; then
530 # For linux-gnu, try linux-gnu, then linux.
531 o=`echo $tail | sed 's/-.*$//'`
532 if test $o != $tail; then
536 # For unix/sysv/sysv4, try unix/sysv/sysv4, then unix/sysv, then unix.
539 while b=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$b"; do
545 # For sparc/sparc32, try sparc/sparc32 and then sparc.
548 while m=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$m"; do
550 # Prepend the machine's FPU directory unless --without-fp.
551 if test "$with_fp" = yes; then
554 mach="$mach /$1/nofpu"
560 dnl We are done with glob and regexp uses of [ and ]; return to autoconf.
563 # Find what sysdep directories exist.
565 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
566 for d in $add_ons_pfx ''; do
567 for b in $base ''; do
568 for m0 in $mach ''; do
569 for v in /$vendor ''; do
570 test "$v" = / && continue
571 for o in /$ostry ''; do
572 test "$o" = / && continue
573 for m in $mach ''; do
574 for a in $add_ons_sfx ''; do
575 if test "$m0$b$v$o$m"; then
576 try="${d}sysdeps$m0$b$v$o$m$a"
577 test -n "$enable_debug_configure" &&
578 echo "$0 [DEBUG]: try $try" >&2
579 if test -d $srcdir/$try; then
580 sysnames="$sysnames $try"
581 { test -n "$o" || test -n "$b"; } && os_used=t
582 { test -n "$m" || test -n "$m0"; } && machine_used=t
594 if test -z "$os_used" && test "$os" != none; then
595 AC_MSG_ERROR(Operating system $os is not supported.)
597 if test -z "$machine_used" && test "$machine" != none; then
598 AC_MSG_ERROR(The $machine is not supported.)
601 # We have now validated the configuration.
604 # If using ELF, look for an `elf' subdirectory of each machine directory.
605 # We prepend these rather than inserting them whereever the machine appears
606 # because things specified by the machine's ELF ABI should override
607 # OS-specific things, and should always be the same for any OS on the
608 # machine (otherwise what's the point of an ABI?).
609 if test "$elf" = yes; then
611 for d in $add_ons_pfx ''; do
613 if test -d $srcdir/${d}sysdeps$m/elf; then
614 elf_dirs="$elf_dirs ${d}sysdeps$m/elf"
618 sysnames="`echo $elf_dirs | sed -e 's,//,/,g'` $sysnames"
622 # Expand the list of system names into a full list of directories
623 # from each element's parent name and Implies file (if present).
626 while test $# -gt 0; do
630 case " $names " in *" $name "*)
631 # Already in the list.
635 # Report each name as we discover it, so there is no long pause in output.
636 echo $ECHO_N "$name $ECHO_C" >&AS_MESSAGE_FD
638 name_base=`echo $name | sed -e 's@\(.*sysdeps\)/.*@\1@'`
642 *) xsrcdir=$srcdir/ ;;
644 test -n "$enable_debug_configure" &&
645 echo "[DEBUG]: name/Implies $xsrcdir$name/Implies" >&2
647 if test -f $xsrcdir$name/Implies; then
648 # Collect more names from the `Implies' file (removing comments).
649 implied_candidate="`sed 's/#.*$//' < $xsrcdir$name/Implies`"
651 for x in $implied_candidate; do
653 if test -d $xsrcdir$name_base/$x; then
654 implied="$implied $name_base/$x";
657 for d in $add_ons_pfx ''; do
661 *) try_srcdir=$srcdir/ ;;
663 test -n "$enable_debug_configure" &&
664 echo "[DEBUG]: $name implied $x try($d) {$try_srcdir}$try" >&2
665 if test $try != $xsrcdir$name_base/$x && test -d $try_srcdir$try;
667 implied="$implied $try"
671 if test $found = no; then
672 AC_MSG_WARN($name/Implies specifies nonexistent $x)
679 # Add NAME to the list of names.
682 # Find the parent of NAME, using the empty string if it has none.
684 parent="`echo $name | sed -n -e 's=/[^/]*$==' -e '/sysdeps$/q' -e p`"
687 # Add the names implied by NAME, and NAME's parent (if it has one), to
688 # the list of names to be processed (the argument list). We prepend the
689 # implied names to the list and append the parent. We want implied
690 # directories to come before further directories inferred from the
691 # configuration components; this ensures that for sysv4, unix/common
692 # (implied by unix/sysv/sysv4) comes before unix/sysv (in ostry (here $*)
694 sysnames="`echo $implied $* $parent`"
695 test -n "$sysnames" && set $sysnames
698 # Add the default directories.
699 default_sysnames=sysdeps/generic
700 if test "$elf" = yes; then
701 default_sysnames="sysdeps/generic/elf $default_sysnames"
703 sysnames="$names $default_sysnames"
705 # The other names were emitted during the scan.
706 AC_MSG_RESULT($default_sysnames)
712 if test "$INSTALL" = "${srcdir}/scripts/install-sh -c"; then
713 # The makefiles need to use a different form to find it in $srcdir.
714 INSTALL='\$(..)./scripts/install-sh -c'
719 if test $host != $build; then
720 AC_CHECK_PROGS(BUILD_CC, gcc cc)
722 AC_SUBST(cross_compiling)
724 # We need the C++ compiler only for testing.
727 AC_SUBST(MIG)dnl Needed by sysdeps/mach/configure.in
729 # Accept binutils 2.13 or newer.
730 AC_CHECK_PROG_VER(AS, $AS, --version,
731 [GNU assembler.* \([0-9]*\.[0-9.]*\)],
732 [2.1[3-9]*], AS=: critic_missing="$critic_missing as")
733 AC_CHECK_PROG_VER(LD, $LD, --version,
734 [GNU ld.* \([0-9][0-9]*\.[0-9.]*\)],
735 [2.1[3-9]*], LD=: critic_missing="$critic_missing ld")
737 # We need the physical current working directory. We cannot use the
738 # "pwd -P" shell builtin since that's not portable. Instead we try to
739 # find a pwd binary. Note that assigning to the PWD environment
740 # variable might have some interesting side effects, so we don't do
742 AC_PATH_PROG(PWD_P, pwd, no)
743 if test "$PWD_P" = no; then
744 AC_MSG_ERROR(*** A pwd binary could not be found.)
747 # These programs are version sensitive.
749 AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v,
750 [version \([egcygnustpi-]*[0-9.]*\)], [3.[2-9]*],
751 critic_missing="$critic_missing gcc")
752 AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version,
753 [GNU Make[^0-9]*\([0-9][0-9.]*\)],
754 [3.79* | 3.[89]*], critic_missing="$critic_missing make")
756 AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version,
757 [GNU gettext.* \([0-9]*\.[0-9.]*\)],
758 [0.10.3[6-9]* | 0.10.[4-9][0-9]* | 0.1[1-9]* | 0.[2-9][0-9]* | [1-9].*],
759 MSGFMT=: aux_missing="$aux_missing msgfmt")
760 AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version,
761 [GNU texinfo.* \([0-9][0-9.]*\)],
763 MAKEINFO=: aux_missing="$aux_missing makeinfo")
764 AC_CHECK_PROG_VER(SED, sed, --version,
765 [GNU sed version \([0-9]*\.[0-9.]*\)],
766 [3.0[2-9]*|3.[1-9]*|[4-9]*],
767 SED=: aux_missing="$aux_missing sed")
769 AC_CHECK_PROGS(AUTOCONF, autoconf, no)
771 xno|x|x:) AUTOCONF=no ;;
774 whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works, libc_cv_autoconf_works, [dnl
775 if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then
776 libc_cv_autoconf_works=yes
778 libc_cv_autoconf_works=no
780 test $libc_cv_autoconf_works = yes || AUTOCONF=no
783 if test "x$with_cvs" = xyes && test "x$AUTOCONF" = xno; then
784 # If --without-cvs they probably won't change configure.in, so no complaints.
785 aux_missing="$aux_missing autoconf"
788 test -n "$critic_missing" && AC_MSG_ERROR([
789 *** These critical programs are missing or too old:$critic_missing
790 *** Check the INSTALL file for required versions.])
792 test -n "$aux_missing" && AC_MSG_WARN([
793 *** These auxiliary programs are missing or incompatible versions:$aux_missing
794 *** some features will be disabled.
795 *** Check the INSTALL file for required versions.])
797 # if using special system headers, find out the compiler's sekrit
798 # header directory and add that to the list. NOTE: Only does the right
799 # thing on a system that doesn't need fixincludes. (Not presently a problem.)
800 if test -n "$sysheaders"; then
801 ccheaders=`$CC -print-file-name=include`
802 SYSINCLUDES="-nostdinc -isystem $ccheaders -isystem $sysheaders"
804 AC_SUBST(SYSINCLUDES)
806 # check if ranlib is necessary
807 AC_CACHE_CHECK(whether ranlib is necessary, libc_cv_ranlib_necessary, [dnl
808 cat > conftest.c <<EOF
813 $CC $CFLAGS $CPPFLAGS -c conftest.c
814 $AR cr conftest.a conftest.o
815 cp conftest.a conftest2.a
817 if cmp -s conftest.a conftest2.a; then
818 libc_cv_ranlib_necessary=no
820 libc_cv_ranlib_necessary=yes
823 if test "$libc_cv_ranlib_necessary" = no; then
827 # Test if LD_LIBRARY_PATH contains the notation for the current directory
828 # since this would lead to problems installing/building glibc.
829 # LD_LIBRARY_PATH contains the current directory if one of the following
831 # - one of the terminals (":" and ";") is the first or last sign
832 # - two terminals occur directly after each other
833 # - the path contains an element with a dot in it
834 AC_MSG_CHECKING(LD_LIBRARY_PATH variable)
836 case ${LD_LIBRARY_PATH} in
837 [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
838 ld_library_path_setting="contains current directory"
841 ld_library_path_setting="ok"
845 AC_MSG_RESULT($ld_library_path_setting)
846 if test "$ld_library_path_setting" != "ok"; then
848 *** LD_LIBRARY_PATH shouldn't contain the current directory when
849 *** building glibc. Please change the environment variable
850 *** and run configure again.])
853 AC_CACHE_CHECK(whether GCC supports -static-libgcc, libc_cv_gcc_static_libgcc, [dnl
854 if $CC -v -static-libgcc 2>&1 | grep -q 'unrecognized option.*static-libgcc'; then
855 libc_cv_gcc_static_libgcc=
857 libc_cv_gcc_static_libgcc=-static-libgcc
859 AC_SUBST(libc_cv_gcc_static_libgcc)
861 AC_PATH_PROG(BASH, bash, no)
862 if test "$BASH" != no &&
863 $BASH -c 'test "$BASH_VERSINFO" \
864 && test "$BASH_VERSINFO" -ge 2 >&/dev/null'; then
865 libc_cv_have_bash2=yes
867 libc_cv_have_bash2=no
869 AC_SUBST(libc_cv_have_bash2)
871 dnl We need a ksh compatible shell for tzselect.
872 if test "$BASH" = no; then
873 AC_PATH_PROG(KSH, ksh, no)
874 if test "$KSH" = no; then
884 AC_SUBST(libc_cv_have_ksh)
887 AC_PATH_PROG(PERL, perl, no)
888 if test "$PERL" != no &&
889 (eval `$PERL -V:apiversion`; test `expr "$apiversion" \< 5` -ne 0); then
892 AC_PATH_PROG(INSTALL_INFO, install-info, no,
893 $PATH:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin)
894 AC_PATH_PROG(BISON, bison, no, $PATH:/usr/local/bin:/usr/bin:/bin)
896 AC_CACHE_CHECK(for signed size_t type, libc_cv_signed_size_t, [dnl
897 echo '#include <stddef.h>
898 FOOBAR __SIZE_TYPE__ FOOBAR' > conftest.c
899 if eval "$ac_cpp conftest.c 2>/dev/null" \
900 | grep '^FOOBAR.*unsigned.*FOOBAR$' >/dev/null; then
901 libc_cv_signed_size_t=no
903 libc_cv_signed_size_t=yes
906 if test $libc_cv_signed_size_t = yes; then
907 dnl Do this by hand instead of AC_DEFINE so can add #undef to avoid warnings.
908 cat >> confdefs.h <<\EOF
910 #define __SIZE_TYPE__ unsigned
914 AC_CACHE_CHECK(for libc-friendly stddef.h, libc_cv_friendly_stddef, [dnl
916 [#define __need_size_t
917 #define __need_wchar_t
920 #include <stddef.h>], [size_t size; wchar_t wchar;
922 #error stddef.h ignored __need_*
924 if (&size == NULL || &wchar == NULL) abort ();],
925 libc_cv_friendly_stddef=yes,
926 libc_cv_friendly_stddef=no)])
927 if test $libc_cv_friendly_stddef = yes; then
928 config_vars="$config_vars
929 override stddef.h = # The installed <stddef.h> seems to be libc-friendly."
932 AC_CACHE_CHECK(whether we need to use -P to assemble .S files,
933 libc_cv_need_minus_P, [dnl
934 cat > conftest.S <<EOF
935 #include "confdefs.h"
936 /* Nothing whatsoever. */
938 if AC_TRY_COMMAND(${CC-cc} $CPPFLAGS $ASFLAGS -c conftest.S 1>&AS_MESSAGE_LOG_FD); then
939 libc_cv_need_minus_P=no
941 libc_cv_need_minus_P=yes
944 if test $libc_cv_need_minus_P = yes; then
945 config_vars="$config_vars
946 asm-CPPFLAGS = -P # The assembler can't grok cpp's # line directives."
949 AC_MSG_CHECKING(whether .text pseudo-op must be used)
950 AC_CACHE_VAL(libc_cv_dot_text, [dnl
951 cat > conftest.s <<EOF
955 if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
956 libc_cv_dot_text=.text
959 if test -z "$libc_cv_dot_text"; then
965 AC_CACHE_CHECK(for assembler global-symbol directive,
966 libc_cv_asm_global_directive, [dnl
967 libc_cv_asm_global_directive=UNKNOWN
968 for ac_globl in .globl .global .EXPORT; do
969 cat > conftest.s <<EOF
974 if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
975 libc_cv_asm_global_directive=${ac_globl}
978 test $libc_cv_asm_global_directive != UNKNOWN && break
980 if test $libc_cv_asm_global_directive = UNKNOWN; then
981 AC_MSG_ERROR(cannot determine asm global directive)
983 AC_DEFINE_UNQUOTED(ASM_GLOBAL_DIRECTIVE, ${libc_cv_asm_global_directive})
986 AC_CACHE_CHECK(for .set assembler directive, libc_cv_asm_set_directive, [dnl
987 cat > conftest.s <<EOF
990 .set glibc_conftest_frobozz,foo
991 $libc_cv_asm_global_directive glibc_conftest_frobozz
993 # The alpha-dec-osf1 assembler gives only a warning for `.set'
994 # (but it doesn't work), so we must do a linking check to be sure.
995 cat > conftest1.c <<\EOF
996 extern int glibc_conftest_frobozz;
997 void _start() { glibc_conftest_frobozz = 1; }
999 if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
1000 -nostartfiles -nostdlib \
1001 -o conftest conftest.s conftest1.c 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
1002 libc_cv_asm_set_directive=yes
1004 libc_cv_asm_set_directive=no
1007 if test $libc_cv_asm_set_directive = yes; then
1008 AC_DEFINE(HAVE_ASM_SET_DIRECTIVE)
1011 AC_CACHE_CHECK(for assembler .type directive prefix,
1012 libc_cv_asm_type_prefix, [dnl
1013 libc_cv_asm_type_prefix=no
1014 for ac_try_prefix in '@' '%' '#'; do
1015 cat > conftest.s <<EOF
1017 ${libc_cv_asm_global_directive} foo
1018 .type foo, ${ac_try_prefix}object
1023 if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
1024 libc_cv_asm_type_prefix=${ac_try_prefix}
1027 test "x$libc_cv_asm_type_prefix" != xno && break
1029 if test "x$libc_cv_asm_type_prefix" != xno; then
1030 AC_DEFINE_UNQUOTED(ASM_TYPE_DIRECTIVE_PREFIX, ${libc_cv_asm_type_prefix})
1033 # The Aix ld uses global .symbol_names instead of symbol_names.
1034 # Unfortunately also used in the PPC64 ELF ABI.
1035 case "${os}${machine}" in
1036 aix4.3* | linux*powerpc/powerpc64*)
1037 AC_DEFINE(HAVE_ASM_GLOBAL_DOT_NAME)
1040 AC_CACHE_CHECK(for .symver assembler directive, libc_cv_asm_symver_directive,
1041 [cat > conftest.s <<EOF
1044 .symver _sym,sym@VERS
1046 if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
1047 libc_cv_asm_symver_directive=yes
1049 libc_cv_asm_symver_directive=no
1052 AC_CACHE_CHECK(for ld --version-script, libc_cv_ld_version_script_option, [dnl
1053 if test $libc_cv_asm_symver_directive = yes; then
1054 cat > conftest.s <<EOF
1057 .symver _sym,sym@VERS
1059 cat > conftest.map <<EOF
1068 if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
1069 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $LDFLAGS -shared
1070 -o conftest.so conftest.o
1071 -nostartfiles -nostdlib
1072 -Wl,--version-script,conftest.map
1073 1>&AS_MESSAGE_LOG_FD]);
1075 libc_cv_ld_version_script_option=yes
1077 libc_cv_ld_version_script_option=no
1080 libc_cv_ld_version_script_option=no
1083 libc_cv_ld_version_script_option=no
1086 if test $shared != no &&
1087 test $libc_cv_asm_symver_directive = yes &&
1088 test $libc_cv_ld_version_script_option = yes &&
1089 test $enable_versioning = yes; then
1091 AC_DEFINE(DO_VERSIONING)
1095 AC_SUBST(VERSIONING)
1097 if test $elf = yes && test $shared != no && test $VERSIONING = no; then
1099 *** WARNING: You should not compile GNU libc without versioning. Not using
1100 *** versioning will introduce incompatibilities so that old binaries
1101 *** will not run anymore.
1102 *** For versioning you need recent binutils (binutils-2.8.1.0.23 or newer)."
1104 if test $elf = yes; then
1105 AC_CACHE_CHECK(for .previous assembler directive,
1106 libc_cv_asm_previous_directive, [dnl
1107 cat > conftest.s <<EOF
1108 .section foo_section
1111 if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
1112 libc_cv_asm_previous_directive=yes
1114 libc_cv_asm_previous_directive=no
1117 if test $libc_cv_asm_previous_directive = yes; then
1118 AC_DEFINE(HAVE_ASM_PREVIOUS_DIRECTIVE)
1120 AC_CACHE_CHECK(for .popsection assembler directive,
1121 libc_cv_asm_popsection_directive, [dnl
1122 cat > conftest.s <<EOF
1123 .pushsection foo_section
1126 if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
1127 libc_cv_asm_popsection_directive=yes
1129 libc_cv_asm_popsection_directive=no
1132 if test $libc_cv_asm_popsection_directive = yes; then
1133 AC_DEFINE(HAVE_ASM_POPSECTION_DIRECTIVE)
1136 AC_CACHE_CHECK(for .protected and .hidden assembler directive,
1137 libc_cv_asm_protected_directive, [dnl
1138 cat > conftest.s <<EOF
1144 if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
1145 libc_cv_asm_protected_directive=yes
1147 libc_cv_asm_protected_directive=no
1150 AC_SUBST(libc_cv_asm_protected_directive)
1151 AC_DEFINE(HAVE_PROTECTED)
1152 AC_DEFINE(HAVE_HIDDEN)
1154 if test $libc_cv_asm_protected_directive = yes; then
1155 AC_CACHE_CHECK(whether __attribute__((visibility())) is supported,
1156 libc_cv_visibility_attribute,
1157 [cat > conftest.c <<EOF
1158 int foo __attribute__ ((visibility ("hidden"))) = 1;
1159 int bar __attribute__ ((visibility ("protected"))) = 1;
1161 libc_cv_visibility_attribute=no
1162 if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then
1163 if grep '\.hidden.*foo' conftest.s >/dev/null; then
1164 if grep '\.protected.*bar' conftest.s >/dev/null; then
1165 libc_cv_visibility_attribute=yes
1171 if test $libc_cv_visibility_attribute = yes; then
1172 AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE)
1176 if test $libc_cv_visibility_attribute = yes; then
1177 AC_CACHE_CHECK(for broken __attribute__((visibility())),
1178 libc_cv_broken_visibility_attribute,
1179 [cat > conftest.c <<EOF
1181 int bar (int x) __asm__ ("foo") __attribute__ ((visibility ("hidden")));
1182 int bar (int x) { return x; }
1184 libc_cv_broken_visibility_attribute=yes
1185 if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s1>&AS_MESSAGE_LOG_FD); then
1187 if grep '\.hidden[ _]foo' conftest.s >/dev/null; then
1189 libc_cv_broken_visibility_attribute=no
1192 rm -f conftest.c conftest.s
1194 if test $libc_cv_broken_visibility_attribute = yes; then
1195 AC_DEFINE(HAVE_BROKEN_VISIBILITY_ATTRIBUTE)
1199 AC_CACHE_CHECK(for broken __attribute__((alias())),
1200 libc_cv_broken_alias_attribute,
1201 [cat > conftest.c <<EOF
1202 extern int foo (int x) __asm ("xyzzy");
1203 int bar (int x) { return x; }
1204 extern __typeof (bar) foo __attribute ((weak, alias ("bar")));
1206 extern __typeof (dfoo) dfoo __asm ("abccb");
1209 libc_cv_broken_alias_attribute=yes
1210 if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then
1211 if grep 'xyzzy' conftest.s >/dev/null &&
1212 grep 'abccb' conftest.s >/dev/null; then
1213 libc_cv_broken_alias_attribute=no
1216 rm -f conftest.c conftest.s
1218 if test $libc_cv_broken_alias_attribute = yes; then
1219 AC_DEFINE(HAVE_BROKEN_ALIAS_ATTRIBUTE)
1222 if test $libc_cv_visibility_attribute = yes -a $gnu_ld = yes; then
1223 AC_CACHE_CHECK(whether to put _rtld_local into .sdata section,
1224 libc_cv_have_sdata_section,
1225 [echo "int i;" > conftest.c
1226 libc_cv_have_sdata_section=no
1227 if ${CC-cc} $LDFLAGS -shared -Wl,--verbose conftest.c -o conftest.so 2>&1 \
1228 | grep '\.sdata' >/dev/null; then
1229 libc_cv_have_sdata_section=yes
1231 rm -f conftest.c conftest.so
1233 if test $libc_cv_have_sdata_section = yes; then
1234 AC_DEFINE(HAVE_SDATA_SECTION)
1238 AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support,
1239 libc_cv_initfinit_array, [dnl
1240 cat > conftest.c <<EOF
1241 int _start (void) { return 0; }
1242 int __start (void) { return 0; }
1243 int foo (void) { return 1; }
1244 int (*fp) (void) __attribute__ ((section (".init_array"))) = foo;
1246 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest conftest.c
1247 -static -nostartfiles -nostdlib 1>&AS_MESSAGE_LOG_FD])
1249 if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then
1250 libc_cv_initfinit_array=yes
1252 libc_cv_initfinit_array=no
1255 libc_cv_initfinit_array=no
1258 AC_SUBST(libc_cv_initfinit_array)
1259 if test $libc_cv_initfinit_array = yes; then
1260 AC_DEFINE(HAVE_INITFINI_ARRAY)
1263 AC_CACHE_CHECK(for libunwind-support in compiler,
1264 libc_cv_cc_with_libunwind, [dnl
1265 AC_TRY_LINK([#include <libunwind.h>], [
1268 unw_getcontext (&uc);
1269 unw_init_local (&c, &uc)],
1270 libc_cv_cc_with_libunwind=yes, libc_cv_cc_with_libunwind=no)])
1271 AC_SUBST(libc_cv_cc_with_libunwind)
1272 if test $libc_cv_cc_with_libunwind = yes; then
1273 AC_DEFINE(HAVE_CC_WITH_LIBUNWIND)
1276 AC_CACHE_CHECK(for -z nodelete option,
1277 libc_cv_z_nodelete, [dnl
1278 cat > conftest.c <<EOF
1279 int _start (void) { return 42; }
1281 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1282 -shared -o conftest.so conftest.c
1283 -nostartfiles -nostdlib
1284 -Wl,--enable-new-dtags,-z,nodelete 1>&AS_MESSAGE_LOG_FD])
1286 libc_cv_z_nodelete=yes
1288 libc_cv_z_nodelete=no
1291 AC_SUBST(libc_cv_z_nodelete)
1293 AC_CACHE_CHECK(for -z nodlopen option,
1294 libc_cv_z_nodlopen, [dnl
1295 cat > conftest.c <<EOF
1296 int _start (void) { return 42; }
1298 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1299 -shared -o conftest.so conftest.c
1300 -nostartfiles -nostdlib
1301 -Wl,--enable-new-dtags,-z,nodlopen 1>&AS_MESSAGE_LOG_FD])
1303 libc_cv_z_nodlopen=yes
1305 libc_cv_z_nodlopen=no
1308 AC_SUBST(libc_cv_z_nodlopen)
1310 AC_CACHE_CHECK(for -z initfirst option,
1311 libc_cv_z_initfirst, [dnl
1312 cat > conftest.c <<EOF
1313 int _start (void) { return 42; }
1315 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1316 -shared -o conftest.so conftest.c
1317 -nostartfiles -nostdlib
1318 -Wl,--enable-new-dtags,-z,initfirst 1>&AS_MESSAGE_LOG_FD])
1320 libc_cv_z_initfirst=yes
1322 libc_cv_z_initfirst=no
1325 AC_SUBST(libc_cv_z_initfirst)
1327 AC_CACHE_CHECK(for -z relro option,
1328 libc_cv_z_relro, [dnl
1329 if AC_TRY_COMMAND([${CC-cc} -v --help 2>&1|grep "z relro" 1>&AS_MESSAGE_LOG_FD])
1335 AC_SUBST(libc_cv_z_relro)
1336 if test $libc_cv_z_relro = yes; then
1337 AC_DEFINE(HAVE_Z_RELRO)
1340 AC_CACHE_CHECK(for -Bgroup option,
1341 libc_cv_Bgroup, [dnl
1342 cat > conftest.c <<EOF
1343 int _start (void) { return 42; }
1345 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1346 -shared -o conftest.so conftest.c
1347 -Wl,-Bgroup -nostdlib 1>&AS_MESSAGE_LOG_FD])
1354 AC_SUBST(libc_cv_Bgroup)
1356 AC_CACHE_CHECK(for libgcc_s suffix,
1357 libc_cv_libgcc_s_suffix, [dnl
1358 cat > conftest.c <<EOF
1359 int main (void) { return 0; }
1362 libc_cv_libgcc_s_suffix=`${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
1363 -shared -shared-libgcc -o conftest.so \
1364 conftest.c -v 2>&1 >/dev/null \
1365 | sed -n 's/^.* -lgcc_s\([^ ]*\) .*$/\1/p'`
1368 AC_SUBST(libc_cv_libgcc_s_suffix)
1370 AC_CACHE_CHECK(for --as-needed option,
1371 libc_cv_as_needed, [dnl
1372 cat > conftest.c <<EOF
1373 int main (void) { return 0; }
1375 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1376 -shared -o conftest.so conftest.c
1377 -lgcc_s$libc_cv_libgcc_s_suffix -Wl,--as-needed
1378 -nostdlib 1>&AS_MESSAGE_LOG_FD])
1380 libc_cv_as_needed=yes
1382 libc_cv_as_needed=no
1385 AC_SUBST(libc_cv_as_needed)
1388 AC_CACHE_CHECK(whether --noexecstack is desirable for .S files,
1389 libc_cv_as_noexecstack, [dnl
1390 cat > conftest.c <<EOF
1393 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS
1394 -S -o conftest.s conftest.c 1>&AS_MESSAGE_LOG_FD]) \
1395 && grep -q .note.GNU-stack conftest.s \
1396 && AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -Wa,--noexecstack
1397 -c -o conftest.o conftest.s 1>&AS_MESSAGE_LOG_FD])
1399 libc_cv_as_noexecstack=yes
1401 libc_cv_as_noexecstack=no
1404 if test $libc_cv_as_noexecstack = yes; then
1405 ASFLAGS_config="$ASFLAGS_config -Wa,--noexecstack"
1407 AC_SUBST(ASFLAGS_config)
1409 AC_CACHE_CHECK(for -z combreloc,
1410 libc_cv_z_combreloc, [dnl
1411 cat > conftest.c <<EOF
1412 extern int bar (int);
1414 int foo (void) { return bar (mumble); }
1416 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1417 -shared -o conftest.so conftest.c
1418 -nostdlib -nostartfiles
1419 -Wl,-z,combreloc 1>&AS_MESSAGE_LOG_FD])
1421 dnl The following test is a bit weak. We must use a tool which can test
1422 dnl cross-platform since the gcc used can be a cross compiler. Without
1423 dnl introducing new options this is not easily doable. Instead use a tool
1424 dnl which always is cross-platform: readelf. To detect whether -z combreloc
1425 dnl look for a section named .rel.dyn.
1426 if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
1427 libc_cv_z_combreloc=yes
1429 libc_cv_z_combreloc=no
1432 libc_cv_z_combreloc=no
1435 if test "$libc_cv_z_combreloc" = yes; then
1436 AC_DEFINE(HAVE_Z_COMBRELOC)
1438 AC_SUBST(libc_cv_z_combreloc)
1440 AC_CACHE_CHECK(for -z execstack,
1441 libc_cv_z_execstack, [dnl
1442 cat > conftest.c <<EOF
1443 int _start (void) { return 42; }
1445 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1446 -shared -o conftest.so conftest.c
1447 -Wl,-z,execstack -nostdlib
1448 1>&AS_MESSAGE_LOG_FD])
1450 libc_cv_z_execstack=yes
1452 libc_cv_z_execstack=no
1455 AC_SUBST(libc_cv_z_execstack)
1457 AC_CACHE_CHECK(for -fpie, libc_cv_fpie, [dnl
1458 cat > conftest.c <<EOF
1460 main () { return 0;}
1462 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -pie -fpie
1463 -o conftest conftest.c 1>&AS_MESSAGE_LOG_FD])
1471 AC_SUBST(libc_cv_fpie)
1474 AC_CACHE_CHECK(for -fno-unit-at-a-time, libc_cv_fno_unit_at_a_time, [dnl
1475 cat > conftest.c <<EOF
1478 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -S -fno-unit-at-a-time
1479 conftest.c 1>&AS_MESSAGE_LOG_FD])
1481 libc_cv_fno_unit_at_a_time=yes
1483 libc_cv_fno_unit_at_a_time=no
1486 if test $libc_cv_fno_unit_at_a_time = yes; then
1487 fno_unit_at_a_time=-fno-unit-at-a-time
1489 AC_SUBST(fno_unit_at_a_time)
1491 if test $elf != yes; then
1492 AC_CACHE_CHECK(for .init and .fini sections, libc_cv_have_initfini,
1493 [AC_TRY_COMPILE(, [asm (".section .init");
1494 asm (".section .fini");
1495 asm ("${libc_cv_dot_text}");],
1496 libc_cv_have_initfini=yes,
1497 libc_cv_have_initfini=no)])
1498 AC_SUBST(libc_cv_have_initfini)dnl
1499 if test $libc_cv_have_initfini = yes; then
1500 AC_DEFINE(HAVE_INITFINI)
1504 if test $elf = yes -a $gnu_ld = yes; then
1505 AC_CACHE_CHECK(whether cc puts quotes around section names,
1506 libc_cv_have_section_quotes,
1507 [cat > conftest.c <<EOF
1508 static const int foo
1509 __attribute__ ((section ("bar"))) = 1;
1511 if ${CC-cc} -S conftest.c -o conftest.s; then
1512 if grep '\.section.*"bar"' conftest.s >/dev/null; then
1513 libc_cv_have_section_quotes=yes
1515 libc_cv_have_section_quotes=no
1518 libc_cv_have_section_quotes=unknown
1522 if test $libc_cv_have_section_quotes = yes; then
1523 AC_DEFINE(HAVE_SECTION_QUOTES)
1527 dnl AC_CHECK_ASM_UNDERSCORE([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
1528 AC_DEFUN(AC_CHECK_ASM_UNDERSCORE,
1529 [cat > conftest.$ac_ext <<EOF
1530 dnl This sometimes fails to find confdefs.h, for some reason.
1531 dnl [#]line $LINENO "[$]0"
1532 [#]line $LINENO "configure"
1533 #include "confdefs.h"
1534 void underscore_test(void) {
1537 if AC_TRY_EVAL(ac_compile); then
1538 if grep _underscore_test conftest* >/dev/null; then
1539 ifelse([$1], , :, [rm -f conftest*
1542 ifelse([$2], , , [rm -f conftest*
1546 echo "configure: failed program was:" >&AS_MESSAGE_LOG_FD
1547 cat conftest.$ac_ext >&AS_MESSAGE_LOG_FD
1548 ifelse([$2], , , [rm -f conftest*
1553 if test $elf = yes; then
1554 libc_cv_asm_underscores=no
1556 if test $ac_cv_prog_cc_works = yes; then
1557 AC_CACHE_CHECK(for _ prefix on C symbol names, libc_cv_asm_underscores,
1558 [AC_TRY_LINK([asm ("_glibc_foobar:");], [glibc_foobar ();],
1559 libc_cv_asm_underscores=yes,
1560 libc_cv_asm_underscores=no)])
1562 AC_CACHE_CHECK(for _ prefix on C symbol names, libc_cv_asm_underscores,
1563 [AC_CHECK_ASM_UNDERSCORE(libc_cv_asm_underscores=yes,
1564 libc_cv_asm_underscores=no)])
1567 if test $libc_cv_asm_underscores = no; then
1568 AC_DEFINE(NO_UNDERSCORES)
1571 if test $elf = yes; then
1572 libc_cv_weak_symbols=yes
1575 AC_CACHE_CHECK(for assembler .weak directive, libc_cv_asm_weak_directive,
1577 cat > conftest.s <<EOF
1579 ${libc_cv_asm_global_directive} foo
1582 .weak bar; bar = foo
1584 if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
1585 libc_cv_asm_weak_directive=yes
1587 libc_cv_asm_weak_directive=no
1591 if test $libc_cv_asm_weak_directive = no; then
1592 AC_CACHE_CHECK(for assembler .weakext directive,
1593 libc_cv_asm_weakext_directive,
1595 cat > conftest.s <<EOF
1597 ${libc_cv_asm_global_directive} foo
1601 ${libc_cv_asm_global_directive} baz
1604 if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
1605 libc_cv_asm_weakext_directive=yes
1607 libc_cv_asm_weakext_directive=no
1613 if test $libc_cv_asm_weak_directive = yes; then
1614 AC_DEFINE(HAVE_ASM_WEAK_DIRECTIVE)
1615 elif test $libc_cv_asm_weakext_directive = yes; then
1616 AC_DEFINE(HAVE_ASM_WEAKEXT_DIRECTIVE)
1619 dnl The standard hppa assembler uses `;' to start comments and `!'
1620 dnl as a line separator. CRIS uses `;' to start comments and `@' for
1622 case "${host_cpu}-${host_os}" in
1624 libc_cv_asm_line_sep='@'
1625 AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
1628 AC_CACHE_CHECK(for assembler line separator,
1629 libc_cv_asm_line_sep, [dnl
1630 cat > conftest.s <<EOF
1633 if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
1634 libc_cv_asm_line_sep='!'
1636 if test -z "$enable_hacker_mode"; then
1637 echo "*** You need a newer assembler to compile glibc"
1641 libc_cv_asm_line_sep=';'
1644 AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
1648 AC_CACHE_CHECK(whether CFI directives are supported, libc_cv_asm_cfi_directives, [dnl
1649 cat > conftest.s <<EOF
1651 .type func,@function
1655 .cfi_rel_offset 1, 0
1658 if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
1659 libc_cv_asm_cfi_directives=yes
1661 libc_cv_asm_cfi_directives=no
1664 if test $libc_cv_asm_cfi_directives = yes; then
1665 AC_DEFINE(HAVE_ASM_CFI_DIRECTIVES)
1668 AC_CACHE_CHECK(if -g produces usable source locations for assembler-with-cpp,
1669 libc_cv_cpp_asm_debuginfo, [dnl
1670 cat > conftest.S <<EOF
1671 #include "confdefs.h"
1676 ${libc_cv_asm_global_directive} foo
1678 /* Unfortunately this test only works for a real instruction,
1679 not for any of the machine-independent pseudo-ops.
1680 So we just have to assume everybody has a "nop". */
1687 if AC_TRY_COMMAND([${CC-cc} $CPPFLAGS $ASFLAGS -g -c conftest.S 1>&AS_MESSAGE_LOG_FD]) && {
1688 ac_pattern='conftest\.S'
1689 AC_TRY_COMMAND([readelf --debug-dump=line conftest.o |
1690 grep $ac_pattern 1>&AS_MESSAGE_LOG_FD])
1692 libc_cv_cpp_asm_debuginfo=yes
1694 libc_cv_cpp_asm_debuginfo=no
1696 rm -f conftest*])AC_SUBST(libc_cv_cpp_asm_debuginfo)
1697 if test $libc_cv_cpp_asm_debuginfo = yes; then
1698 AC_DEFINE(HAVE_CPP_ASM_DEBUGINFO)
1701 AC_CACHE_CHECK(for ld --no-whole-archive, libc_cv_ld_no_whole_archive, [dnl
1702 cat > conftest.c <<\EOF
1707 dnl No \ in command here because it ends up inside ''.
1708 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1709 -nostdlib -nostartfiles -Wl,--no-whole-archive
1710 -o conftest conftest.c 1>&AS_MESSAGE_LOG_FD]); then
1711 libc_cv_ld_no_whole_archive=yes
1713 libc_cv_ld_no_whole_archive=no
1716 if test $libc_cv_ld_no_whole_archive = yes; then
1717 no_whole_archive=-Wl,--no-whole-archive
1719 AC_SUBST(no_whole_archive)dnl
1721 AC_CACHE_CHECK(for gcc -fexceptions, libc_cv_gcc_exceptions, [dnl
1722 cat > conftest.c <<\EOF
1727 dnl No \ in command here because it ends up inside ''.
1728 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1729 -nostdlib -nostartfiles -fexceptions
1730 -o conftest conftest.c 1>&AS_MESSAGE_LOG_FD]); then
1731 libc_cv_gcc_exceptions=yes
1733 libc_cv_gcc_exceptions=no
1736 if test $libc_cv_gcc_exceptions = yes; then
1737 exceptions=-fexceptions
1739 AC_SUBST(exceptions)dnl
1741 if test "$host_cpu" = powerpc ; then
1742 # Check for a bug present in at least versions 2.8.x of GCC
1743 # and versions 1.0.x of EGCS.
1744 AC_CACHE_CHECK(whether clobbering cr0 causes problems,libc_cv_c_asmcr0_bug,[dnl
1745 AC_TRY_COMPILE([int tester(int x) { asm ("" : : : "cc"); return x & 123; }],,
1746 libc_cv_c_asmcr0_bug='no',
1747 libc_cv_c_asmcr0_bug='yes')])
1748 if test "$libc_cv_c_asmcr0_bug" != 'no'; then
1749 AC_DEFINE(BROKEN_PPC_ASM_CR0)
1753 AC_CACHE_CHECK(for DWARF2 unwind info support, libc_cv_gcc_dwarf2_unwind_info,
1754 [cat > conftest.c <<EOF
1755 #line $LINENO "configure"
1756 static char *__EH_FRAME_BEGIN__;
1759 #ifdef CHECK__register_frame
1760 __register_frame (__EH_FRAME_BEGIN__);
1761 __deregister_frame (__EH_FRAME_BEGIN__);
1763 #ifdef CHECK__register_frame_info
1764 __register_frame_info (__EH_FRAME_BEGIN__);
1765 __deregister_frame_info (__EH_FRAME_BEGIN__);
1770 /* FIXME: this is fragile. */
1779 dl_iterate_phdr () {}
1781 libc_unwind_check="${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame_info \
1783 -nostdlib -nostartfiles -o conftest conftest.c \
1785 # Some platforms' specs put -lgcc first. The second one doesn't hurt.
1786 if AC_TRY_COMMAND([$libc_unwind_check >&AS_MESSAGE_LOG_FD]) ||
1787 AC_TRY_COMMAND([$libc_unwind_check -lgcc_eh -lgcc >&AS_MESSAGE_LOG_FD])
1789 if $libc_unwind_check -v 2>&1 >/dev/null \
1790 | grep -- --eh-frame-hdr 2>&1 >/dev/null; then
1791 libc_cv_gcc_dwarf2_unwind_info=no_registry_needed
1793 libc_cv_gcc_dwarf2_unwind_info=static
1796 libc_cv_gcc_dwarf2_unwind_info=no
1798 if test $libc_cv_gcc_dwarf2_unwind_info = no; then
1799 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame
1800 $LDFLAGS -nostdlib -nostartfiles
1801 -o conftest conftest.c -lgcc >&AS_MESSAGE_LOG_FD]); then
1802 libc_cv_gcc_dwarf2_unwind_info=yes
1804 libc_cv_gcc_dwarf2_unwind_info=no
1808 case $libc_cv_gcc_dwarf2_unwind_info in
1810 AC_DEFINE(HAVE_DWARF2_UNWIND_INFO)
1813 AC_DEFINE(HAVE_DWARF2_UNWIND_INFO)
1814 AC_DEFINE(HAVE_DWARF2_UNWIND_INFO_STATIC)
1818 dnl Check whether compiler understands __builtin_expect.
1819 AC_CACHE_CHECK(for __builtin_expect, libc_cv_gcc_builtin_expect,
1820 [cat > conftest.c <<EOF
1821 #line $LINENO "configure"
1824 a = __builtin_expect (a, 10);
1825 return a == 10 ? 0 : 1;
1828 dnl No \ in command here because it ends up inside ''.
1829 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles
1830 -o conftest conftest.c -lgcc >&AS_MESSAGE_LOG_FD]); then
1831 libc_cv_gcc_builtin_expect=yes
1833 libc_cv_gcc_builtin_expect=no
1836 if test "$libc_cv_gcc_builtin_expect" = yes; then
1837 AC_DEFINE(HAVE_BUILTIN_EXPECT)
1840 AC_CACHE_CHECK(for __builtin_memset, libc_cv_gcc_builtin_memset, [dnl
1841 cat > conftest.c <<\EOF
1844 __builtin_memset (x, 0, 1000);
1848 if AC_TRY_COMMAND([${CC-cc} -O3 -S conftest.c -o - | fgrep "memset" > /dev/null]);
1850 libc_cv_gcc_builtin_memset=no
1852 libc_cv_gcc_builtin_memset=yes
1855 if test "$libc_cv_gcc_builtin_memset" = yes ; then
1856 AC_DEFINE(HAVE_BUILTIN_MEMSET)
1859 AC_CACHE_CHECK(for redirection of built-in functions, libc_cv_gcc_builtin_redirection, [dnl
1860 cat > conftest.c <<\EOF
1861 extern char *strstr (const char *, const char *) __asm ("my_strstr");
1862 char *foo (const char *a, const char *b)
1864 return __builtin_strstr (a, b);
1868 if AC_TRY_COMMAND([${CC-cc} -O3 -S conftest.c -o - | fgrep "my_strstr" > /dev/null]);
1870 libc_cv_gcc_builtin_redirection=yes
1872 libc_cv_gcc_builtin_redirection=no
1875 if test "$libc_cv_gcc_builtin_redirection" = yes ; then
1876 AC_DEFINE(HAVE_BUILTIN_REDIRECTION)
1879 dnl Check whether the compiler supports subtraction of local labels.
1880 AC_CACHE_CHECK(for local label subtraction, libc_cv_gcc_subtract_local_labels,
1881 [cat > conftest.c <<EOF
1883 #line $LINENO "configure"
1886 static const int ar[] = { &&l1 - &&l1, &&l2 - &&l1 };
1887 void *p = &&l1 + ar[a];
1896 dnl No \ in command here because it ends up inside ''.
1897 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles
1898 -o conftest conftest.c -lgcc >&AS_MESSAGE_LOG_FD]); then
1899 libc_cv_gcc_subtract_local_labels=yes
1901 libc_cv_gcc_subtract_local_labels=no
1904 if test "$libc_cv_gcc_subtract_local_labels" = yes; then
1905 AC_DEFINE(HAVE_SUBTRACT_LOCAL_LABELS)
1908 dnl Check whether the compiler supports the __thread keyword.
1909 if test "x$use__thread" != xno; then
1910 AC_CACHE_CHECK([for __thread], libc_cv_gcc___thread,
1911 [cat > conftest.c <<\EOF
1912 __thread int a = 42;
1914 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c >&AS_MESSAGE_LOG_FD]); then
1915 libc_cv_gcc___thread=yes
1917 libc_cv_gcc___thread=no
1920 if test "$libc_cv_gcc___thread" = yes; then
1921 AC_DEFINE(HAVE___THREAD)
1924 libc_cv_gcc___thread=no
1927 if test "$libc_cv_gcc___thread" = yes; then
1928 dnl Check whether the compiler supports the tls_model attribute.
1929 AC_CACHE_CHECK([for tls_model attribute], libc_cv_gcc_tls_model_attr, [dnl
1930 cat > conftest.c <<\EOF
1931 extern __thread int a __attribute__((tls_model ("initial-exec")));
1933 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -S -Werror conftest.c >&AS_MESSAGE_LOG_FD]); then
1934 libc_cv_gcc_tls_model_attr=yes
1936 libc_cv_gcc_tls_model_attr=no
1939 if test "$libc_cv_gcc_tls_model_attr" = yes; then
1940 AC_DEFINE(HAVE_TLS_MODEL_ATTRIBUTE)
1944 dnl Check whether we have the gd library available.
1945 AC_MSG_CHECKING(for libgd)
1946 if test "$with_gd" != "no"; then
1947 old_CFLAGS="$CFLAGS"
1948 CFLAGS="$CFLAGS $libgd_include"
1949 old_LDFLAGS="$LDFLAGS"
1950 LDFLAGS="$LDFLAGS $libgd_ldflags"
1952 LIBS="$LIBS -lgd -lpng -lz -lm"
1953 AC_TRY_LINK([#include <gd.h>], [gdImagePng (0, 0)], LIBGD=yes, LIBGD=no)
1954 CFLAGS="$old_CFLAGS"
1955 LDFLAGS="$old_LDFLAGS"
1960 AC_MSG_RESULT($LIBGD)
1963 dnl check for the size of 'long double'.
1964 AC_CHECK_SIZEOF(long double, 0)
1965 sizeof_long_double=$ac_cv_sizeof_long_double
1966 AC_SUBST(sizeof_long_double)
1968 ### End of automated tests.
1969 ### Now run sysdeps configure fragments.
1971 # They also can set these variables.
1973 ldd_rewrite_script=no
1974 libc_cv_sysconfdir=$sysconfdir
1975 libc_cv_gcc_unwind_find_fde=no
1978 # Iterate over all the sysdep directories we will use, running their
1979 # configure fragments, and looking for a uname implementation.
1981 for dir in $sysnames; do
1984 *) dest=$srcdir/$dir ;;
1986 if test -r $dest/configure; then
1987 AC_MSG_RESULT(running configure fragment for $dir)
1991 if test -z "$uname"; then
1992 if test -r $dest/uname.c ||
1993 test -r $dest/uname.S ||
1994 { test -r $dest/syscalls.list &&
1995 grep '^uname[ ]' $dest/syscalls.list >/dev/null; }; then
2002 if test x$libc_cv_gcc_unwind_find_fde = xyes; then
2003 AC_DEFINE(EXPORT_UNWIND_FIND_FDE)
2005 AC_SUBST(libc_cv_gcc_unwind_find_fde)
2007 # If we will use the generic uname implementation, we must figure out what
2008 # it will say by examining the system, and write the results in config-name.h.
2009 if test "$uname" = "sysdeps/generic"; then
2012 uname_sysname=`echo $config_os | sed 's/[0-9.]*$//'`
2014 if test $uname_sysname != $config_os; then
2015 config_release=`echo $config_os | sed s/$uname_sysname//`
2018 AC_DEFUN(LIBC_KERNEL_ID, [dnl
2019 if test -r /vmunix; then
2020 kernel_id=`strings /vmunix | grep UNIX`
2021 elif test -r /dynix; then
2022 kernel_id=`strings /dynix | grep DYNIX`
2028 AC_CACHE_CHECK(OS release for uname, libc_cv_uname_release, [dnl
2031 kernel_release=`echo "$kernel_id" | sed 's/^[^0-9.]*\([0-9.]*\).*$/\1/'`
2033 if test x`echo "$config_release" | sed "s/^$kernel_release//"` \
2034 != x$config_release; then
2035 # The configuration release is a substring of the kernel release.
2036 libc_cv_uname_release=$kernel_release
2037 elif test x$config_release != x; then
2038 libc_cv_uname_release=$config_release
2039 elif test x$kernel_release != x; then
2040 libc_cv_uname_release=$kernel_release
2042 libc_cv_uname_release=unknown
2044 uname_release="$libc_cv_uname_release"
2046 AC_CACHE_CHECK(OS version for uname, libc_cv_uname_version, [dnl
2049 kernel_version=`echo "$kernel_id" | sed 's/^[^#]*#\([0-9]*\).*$/\1/'`
2051 if test -n "$kernel_version"; then
2052 libc_cv_uname_version="$kernel_version"
2054 libc_cv_uname_version=unknown
2056 uname_version="$libc_cv_uname_version"
2058 AC_SUBST(uname_sysname) AC_SUBST(uname_release) AC_SUBST(uname_version)dnl
2059 config_uname=config-name.h:config-name.in
2061 # For non-generic uname, we don't need to create config-name.h at all.
2065 dnl This is tested by existing code and it's simpler to avoid changing it.
2066 AC_DEFINE(USE_IN_LIBIO)
2068 # Test for old glibc 2.0.x headers so that they can be removed properly
2069 # Search only in includedir.
2070 AC_MSG_CHECKING(for old glibc 2.0.x headers)
2071 if eval test -f "${includedir}/elfclass.h" -a -f "${includedir}/fcntlbits.h"
2073 old_glibc_headers=yes
2075 old_glibc_headers=no
2077 AC_MSG_RESULT($old_glibc_headers)
2078 if test ${old_glibc_headers} = yes; then
2079 AC_MSG_WARN(*** During \"make install\" old headers from glibc 2.0.x will)
2080 AC_MSG_WARN(*** be removed.)
2082 AC_SUBST(old_glibc_headers)
2084 AC_SUBST(libc_cv_slibdir)
2085 AC_SUBST(libc_cv_localedir)
2086 AC_SUBST(libc_cv_sysconfdir)
2087 AC_SUBST(libc_cv_rootsbindir)
2088 AC_SUBST(libc_cv_forced_unwind)
2090 AC_SUBST(use_ldconfig)
2091 AC_SUBST(ldd_rewrite_script)
2093 AC_SUBST(gnu_ld) AC_SUBST(gnu_as) AC_SUBST(elf) AC_SUBST(xcoff)
2094 if test $gnu_ld = yes; then
2095 AC_DEFINE(HAVE_GNU_LD)
2097 if test $gnu_as = yes; then
2098 AC_DEFINE(HAVE_GNU_AS)
2100 if test $elf = yes; then
2103 if test $xcoff = yes; then
2104 AC_DEFINE(HAVE_XCOFF)
2109 if test $shared = default; then
2110 if test $gnu_ld = yes; then
2113 # For now we do not assume shared libs are available. In future more
2114 # tests might become available.
2119 if test x"$libc_cv_idn" = xyes; then
2120 AC_DEFINE(HAVE_LIBIDN)
2123 AC_CACHE_CHECK([whether -fPIC is default], pic_default,
2125 cat > conftest.c <<EOF
2126 #if defined __PIC__ || defined __pic__ || defined PIC || defined pic
2127 # error PIC is default.
2130 if eval "${CC-cc} -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
2134 AC_SUBST(pic_default)
2139 AC_SUBST(static_nss)
2140 AC_SUBST(nopic_initfini)
2145 *door*) linux_doors=yes ;;
2146 *) linux_doors=no ;;
2148 AC_SUBST(linux_doors)
2150 dnl See sysdeps/mach/configure.in for this variable.
2151 AC_SUBST(mach_interface_list)
2153 if test "`(cd $srcdir; pwd)`" = "`pwd`"; then
2156 config_makefile=Makefile
2159 VERSION=`sed -n -e 's/^#define VERSION "\([^"]*\)"/\1/p' < $srcdir/version.h`
2160 RELEASE=`sed -n -e 's/^#define RELEASE "\([^"]*\)"/\1/p' < $srcdir/version.h`
2164 AC_CONFIG_FILES([config.make ${config_makefile} ${config_uname}])
2165 AC_CONFIG_COMMANDS([default],[[
2166 case $CONFIG_FILES in *config.make*)
2167 echo "$config_vars" >> config.make;;
2169 test -d bits || mkdir bits]],[[config_vars='$config_vars']])