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 AC_CACHE_CHECK(for .symver assembler directive, libc_cv_asm_symver_directive,
1034 [cat > conftest.s <<EOF
1037 .symver _sym,sym@VERS
1039 if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
1040 libc_cv_asm_symver_directive=yes
1042 libc_cv_asm_symver_directive=no
1045 AC_CACHE_CHECK(for ld --version-script, libc_cv_ld_version_script_option, [dnl
1046 if test $libc_cv_asm_symver_directive = yes; then
1047 cat > conftest.s <<EOF
1050 .symver _sym,sym@VERS
1052 cat > conftest.map <<EOF
1061 if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
1062 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $LDFLAGS -shared
1063 -o conftest.so conftest.o
1064 -nostartfiles -nostdlib
1065 -Wl,--version-script,conftest.map
1066 1>&AS_MESSAGE_LOG_FD]);
1068 libc_cv_ld_version_script_option=yes
1070 libc_cv_ld_version_script_option=no
1073 libc_cv_ld_version_script_option=no
1076 libc_cv_ld_version_script_option=no
1079 if test $shared != no &&
1080 test $libc_cv_asm_symver_directive = yes &&
1081 test $libc_cv_ld_version_script_option = yes &&
1082 test $enable_versioning = yes; then
1084 AC_DEFINE(DO_VERSIONING)
1088 AC_SUBST(VERSIONING)
1090 if test $elf = yes && test $shared != no && test $VERSIONING = no; then
1092 *** WARNING: You should not compile GNU libc without versioning. Not using
1093 *** versioning will introduce incompatibilities so that old binaries
1094 *** will not run anymore.
1095 *** For versioning you need recent binutils (binutils-2.8.1.0.23 or newer)."
1097 if test $elf = yes; then
1098 AC_CACHE_CHECK(for .previous assembler directive,
1099 libc_cv_asm_previous_directive, [dnl
1100 cat > conftest.s <<EOF
1101 .section foo_section
1104 if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
1105 libc_cv_asm_previous_directive=yes
1107 libc_cv_asm_previous_directive=no
1110 if test $libc_cv_asm_previous_directive = yes; then
1111 AC_DEFINE(HAVE_ASM_PREVIOUS_DIRECTIVE)
1113 AC_CACHE_CHECK(for .popsection assembler directive,
1114 libc_cv_asm_popsection_directive, [dnl
1115 cat > conftest.s <<EOF
1116 .pushsection foo_section
1119 if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
1120 libc_cv_asm_popsection_directive=yes
1122 libc_cv_asm_popsection_directive=no
1125 if test $libc_cv_asm_popsection_directive = yes; then
1126 AC_DEFINE(HAVE_ASM_POPSECTION_DIRECTIVE)
1129 AC_CACHE_CHECK(for .protected and .hidden assembler directive,
1130 libc_cv_asm_protected_directive, [dnl
1131 cat > conftest.s <<EOF
1137 if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
1138 libc_cv_asm_protected_directive=yes
1140 libc_cv_asm_protected_directive=no
1143 AC_SUBST(libc_cv_asm_protected_directive)
1144 AC_DEFINE(HAVE_PROTECTED)
1145 AC_DEFINE(HAVE_HIDDEN)
1147 if test $libc_cv_asm_protected_directive = yes; then
1148 AC_CACHE_CHECK(whether __attribute__((visibility())) is supported,
1149 libc_cv_visibility_attribute,
1150 [cat > conftest.c <<EOF
1151 int foo __attribute__ ((visibility ("hidden"))) = 1;
1152 int bar __attribute__ ((visibility ("protected"))) = 1;
1154 libc_cv_visibility_attribute=no
1155 if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then
1156 if grep '\.hidden.*foo' conftest.s >/dev/null; then
1157 if grep '\.protected.*bar' conftest.s >/dev/null; then
1158 libc_cv_visibility_attribute=yes
1164 if test $libc_cv_visibility_attribute = yes; then
1165 AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE)
1169 if test $libc_cv_visibility_attribute = yes; then
1170 AC_CACHE_CHECK(for broken __attribute__((visibility())),
1171 libc_cv_broken_visibility_attribute,
1172 [cat > conftest.c <<EOF
1174 int bar (int x) __asm__ ("foo") __attribute__ ((visibility ("hidden")));
1175 int bar (int x) { return x; }
1177 libc_cv_broken_visibility_attribute=yes
1178 if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s1>&AS_MESSAGE_LOG_FD); then
1180 if grep '\.hidden[ _]foo' conftest.s >/dev/null; then
1182 libc_cv_broken_visibility_attribute=no
1185 rm -f conftest.c conftest.s
1187 if test $libc_cv_broken_visibility_attribute = yes; then
1188 AC_DEFINE(HAVE_BROKEN_VISIBILITY_ATTRIBUTE)
1192 AC_CACHE_CHECK(for broken __attribute__((alias())),
1193 libc_cv_broken_alias_attribute,
1194 [cat > conftest.c <<EOF
1195 extern int foo (int x) __asm ("xyzzy");
1196 int bar (int x) { return x; }
1197 extern __typeof (bar) foo __attribute ((weak, alias ("bar")));
1199 extern __typeof (dfoo) dfoo __asm ("abccb");
1202 libc_cv_broken_alias_attribute=yes
1203 if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then
1204 if grep 'xyzzy' conftest.s >/dev/null &&
1205 grep 'abccb' conftest.s >/dev/null; then
1206 libc_cv_broken_alias_attribute=no
1209 rm -f conftest.c conftest.s
1211 if test $libc_cv_broken_alias_attribute = yes; then
1212 AC_DEFINE(HAVE_BROKEN_ALIAS_ATTRIBUTE)
1215 if test $libc_cv_visibility_attribute = yes -a $gnu_ld = yes; then
1216 AC_CACHE_CHECK(whether to put _rtld_local into .sdata section,
1217 libc_cv_have_sdata_section,
1218 [echo "int i;" > conftest.c
1219 libc_cv_have_sdata_section=no
1220 if ${CC-cc} $LDFLAGS -shared -Wl,--verbose conftest.c -o conftest.so 2>&1 \
1221 | grep '\.sdata' >/dev/null; then
1222 libc_cv_have_sdata_section=yes
1224 rm -f conftest.c conftest.so
1226 if test $libc_cv_have_sdata_section = yes; then
1227 AC_DEFINE(HAVE_SDATA_SECTION)
1231 AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support,
1232 libc_cv_initfinit_array, [dnl
1233 cat > conftest.c <<EOF
1234 int _start (void) { return 0; }
1235 int __start (void) { return 0; }
1236 int foo (void) { return 1; }
1237 int (*fp) (void) __attribute__ ((section (".init_array"))) = foo;
1239 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest conftest.c
1240 -static -nostartfiles -nostdlib 1>&AS_MESSAGE_LOG_FD])
1242 if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then
1243 libc_cv_initfinit_array=yes
1245 libc_cv_initfinit_array=no
1248 libc_cv_initfinit_array=no
1251 AC_SUBST(libc_cv_initfinit_array)
1252 if test $libc_cv_initfinit_array = yes; then
1253 AC_DEFINE(HAVE_INITFINI_ARRAY)
1256 AC_CACHE_CHECK(for libunwind-support in compiler,
1257 libc_cv_cc_with_libunwind, [dnl
1258 AC_TRY_LINK([#include <libunwind.h>], [
1261 unw_getcontext (&uc);
1262 unw_init_local (&c, &uc)],
1263 libc_cv_cc_with_libunwind=yes, libc_cv_cc_with_libunwind=no)])
1264 AC_SUBST(libc_cv_cc_with_libunwind)
1265 if test $libc_cv_cc_with_libunwind = yes; then
1266 AC_DEFINE(HAVE_CC_WITH_LIBUNWIND)
1269 AC_CACHE_CHECK(for -z nodelete option,
1270 libc_cv_z_nodelete, [dnl
1271 cat > conftest.c <<EOF
1272 int _start (void) { return 42; }
1274 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1275 -shared -o conftest.so conftest.c
1276 -nostartfiles -nostdlib
1277 -Wl,--enable-new-dtags,-z,nodelete 1>&AS_MESSAGE_LOG_FD])
1279 libc_cv_z_nodelete=yes
1281 libc_cv_z_nodelete=no
1284 AC_SUBST(libc_cv_z_nodelete)
1286 AC_CACHE_CHECK(for -z nodlopen option,
1287 libc_cv_z_nodlopen, [dnl
1288 cat > conftest.c <<EOF
1289 int _start (void) { return 42; }
1291 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1292 -shared -o conftest.so conftest.c
1293 -nostartfiles -nostdlib
1294 -Wl,--enable-new-dtags,-z,nodlopen 1>&AS_MESSAGE_LOG_FD])
1296 libc_cv_z_nodlopen=yes
1298 libc_cv_z_nodlopen=no
1301 AC_SUBST(libc_cv_z_nodlopen)
1303 AC_CACHE_CHECK(for -z initfirst option,
1304 libc_cv_z_initfirst, [dnl
1305 cat > conftest.c <<EOF
1306 int _start (void) { return 42; }
1308 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1309 -shared -o conftest.so conftest.c
1310 -nostartfiles -nostdlib
1311 -Wl,--enable-new-dtags,-z,initfirst 1>&AS_MESSAGE_LOG_FD])
1313 libc_cv_z_initfirst=yes
1315 libc_cv_z_initfirst=no
1318 AC_SUBST(libc_cv_z_initfirst)
1320 AC_CACHE_CHECK(for -z relro option,
1321 libc_cv_z_relro, [dnl
1322 if AC_TRY_COMMAND([${CC-cc} -v --help 2>&1|grep "z relro" 1>&AS_MESSAGE_LOG_FD])
1328 AC_SUBST(libc_cv_z_relro)
1329 if test $libc_cv_z_relro = yes; then
1330 AC_DEFINE(HAVE_Z_RELRO)
1333 AC_CACHE_CHECK(for -Bgroup option,
1334 libc_cv_Bgroup, [dnl
1335 cat > conftest.c <<EOF
1336 int _start (void) { return 42; }
1338 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1339 -shared -o conftest.so conftest.c
1340 -Wl,-Bgroup -nostdlib 1>&AS_MESSAGE_LOG_FD])
1347 AC_SUBST(libc_cv_Bgroup)
1349 AC_CACHE_CHECK(for libgcc_s suffix,
1350 libc_cv_libgcc_s_suffix, [dnl
1351 cat > conftest.c <<EOF
1352 int main (void) { return 0; }
1355 libc_cv_libgcc_s_suffix=`${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
1356 -shared -shared-libgcc -o conftest.so \
1357 conftest.c -v 2>&1 >/dev/null \
1358 | sed -n 's/^.* -lgcc_s\([^ ]*\) .*$/\1/p'`
1361 AC_SUBST(libc_cv_libgcc_s_suffix)
1363 AC_CACHE_CHECK(for --as-needed option,
1364 libc_cv_as_needed, [dnl
1365 cat > conftest.c <<EOF
1366 int main (void) { return 0; }
1368 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1369 -shared -o conftest.so conftest.c
1370 -lgcc_s$libc_cv_libgcc_s_suffix -Wl,--as-needed
1371 -nostdlib 1>&AS_MESSAGE_LOG_FD])
1373 libc_cv_as_needed=yes
1375 libc_cv_as_needed=no
1378 AC_SUBST(libc_cv_as_needed)
1381 AC_CACHE_CHECK(whether --noexecstack is desirable for .S files,
1382 libc_cv_as_noexecstack, [dnl
1383 cat > conftest.c <<EOF
1386 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS
1387 -S -o conftest.s conftest.c 1>&AS_MESSAGE_LOG_FD]) \
1388 && grep -q .note.GNU-stack conftest.s \
1389 && AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -Wa,--noexecstack
1390 -c -o conftest.o conftest.s 1>&AS_MESSAGE_LOG_FD])
1392 libc_cv_as_noexecstack=yes
1394 libc_cv_as_noexecstack=no
1397 if test $libc_cv_as_noexecstack = yes; then
1398 ASFLAGS_config="$ASFLAGS_config -Wa,--noexecstack"
1400 AC_SUBST(ASFLAGS_config)
1402 AC_CACHE_CHECK(for -z combreloc,
1403 libc_cv_z_combreloc, [dnl
1404 cat > conftest.c <<EOF
1405 extern int bar (int);
1407 int foo (void) { return bar (mumble); }
1409 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1410 -shared -o conftest.so conftest.c
1411 -nostdlib -nostartfiles
1412 -Wl,-z,combreloc 1>&AS_MESSAGE_LOG_FD])
1414 dnl The following test is a bit weak. We must use a tool which can test
1415 dnl cross-platform since the gcc used can be a cross compiler. Without
1416 dnl introducing new options this is not easily doable. Instead use a tool
1417 dnl which always is cross-platform: readelf. To detect whether -z combreloc
1418 dnl look for a section named .rel.dyn.
1419 if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
1420 libc_cv_z_combreloc=yes
1422 libc_cv_z_combreloc=no
1425 libc_cv_z_combreloc=no
1428 if test "$libc_cv_z_combreloc" = yes; then
1429 AC_DEFINE(HAVE_Z_COMBRELOC)
1431 AC_SUBST(libc_cv_z_combreloc)
1433 AC_CACHE_CHECK(for -z execstack,
1434 libc_cv_z_execstack, [dnl
1435 cat > conftest.c <<EOF
1436 int _start (void) { return 42; }
1438 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1439 -shared -o conftest.so conftest.c
1440 -Wl,-z,execstack -nostdlib
1441 1>&AS_MESSAGE_LOG_FD])
1443 libc_cv_z_execstack=yes
1445 libc_cv_z_execstack=no
1448 AC_SUBST(libc_cv_z_execstack)
1450 AC_CACHE_CHECK(for -fpie, libc_cv_fpie, [dnl
1451 cat > conftest.c <<EOF
1453 main () { return 0;}
1455 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -pie -fpie
1456 -o conftest conftest.c 1>&AS_MESSAGE_LOG_FD])
1464 AC_SUBST(libc_cv_fpie)
1467 AC_CACHE_CHECK(for -fno-unit-at-a-time, libc_cv_fno_unit_at_a_time, [dnl
1468 cat > conftest.c <<EOF
1471 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -S -fno-unit-at-a-time
1472 conftest.c 1>&AS_MESSAGE_LOG_FD])
1474 libc_cv_fno_unit_at_a_time=yes
1476 libc_cv_fno_unit_at_a_time=no
1479 if test $libc_cv_fno_unit_at_a_time = yes; then
1480 fno_unit_at_a_time=-fno-unit-at-a-time
1482 AC_SUBST(fno_unit_at_a_time)
1484 if test $elf != yes; then
1485 AC_CACHE_CHECK(for .init and .fini sections, libc_cv_have_initfini,
1486 [AC_TRY_COMPILE(, [asm (".section .init");
1487 asm (".section .fini");
1488 asm ("${libc_cv_dot_text}");],
1489 libc_cv_have_initfini=yes,
1490 libc_cv_have_initfini=no)])
1491 AC_SUBST(libc_cv_have_initfini)dnl
1492 if test $libc_cv_have_initfini = yes; then
1493 AC_DEFINE(HAVE_INITFINI)
1497 if test $elf = yes -a $gnu_ld = yes; then
1498 AC_CACHE_CHECK(whether cc puts quotes around section names,
1499 libc_cv_have_section_quotes,
1500 [cat > conftest.c <<EOF
1501 static const int foo
1502 __attribute__ ((section ("bar"))) = 1;
1504 if ${CC-cc} -S conftest.c -o conftest.s; then
1505 if grep '\.section.*"bar"' conftest.s >/dev/null; then
1506 libc_cv_have_section_quotes=yes
1508 libc_cv_have_section_quotes=no
1511 libc_cv_have_section_quotes=unknown
1515 if test $libc_cv_have_section_quotes = yes; then
1516 AC_DEFINE(HAVE_SECTION_QUOTES)
1520 dnl AC_CHECK_ASM_UNDERSCORE([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
1521 AC_DEFUN(AC_CHECK_ASM_UNDERSCORE,
1522 [cat > conftest.$ac_ext <<EOF
1523 dnl This sometimes fails to find confdefs.h, for some reason.
1524 dnl [#]line $LINENO "[$]0"
1525 [#]line $LINENO "configure"
1526 #include "confdefs.h"
1527 void underscore_test(void) {
1530 if AC_TRY_EVAL(ac_compile); then
1531 if grep _underscore_test conftest* >/dev/null; then
1532 ifelse([$1], , :, [rm -f conftest*
1535 ifelse([$2], , , [rm -f conftest*
1539 echo "configure: failed program was:" >&AS_MESSAGE_LOG_FD
1540 cat conftest.$ac_ext >&AS_MESSAGE_LOG_FD
1541 ifelse([$2], , , [rm -f conftest*
1546 if test $elf = yes; then
1547 libc_cv_asm_underscores=no
1549 if test $ac_cv_prog_cc_works = yes; then
1550 AC_CACHE_CHECK(for _ prefix on C symbol names, libc_cv_asm_underscores,
1551 [AC_TRY_LINK([asm ("_glibc_foobar:");], [glibc_foobar ();],
1552 libc_cv_asm_underscores=yes,
1553 libc_cv_asm_underscores=no)])
1555 AC_CACHE_CHECK(for _ prefix on C symbol names, libc_cv_asm_underscores,
1556 [AC_CHECK_ASM_UNDERSCORE(libc_cv_asm_underscores=yes,
1557 libc_cv_asm_underscores=no)])
1560 if test $libc_cv_asm_underscores = no; then
1561 AC_DEFINE(NO_UNDERSCORES)
1564 if test $elf = yes; then
1565 libc_cv_weak_symbols=yes
1568 AC_CACHE_CHECK(for assembler .weak directive, libc_cv_asm_weak_directive,
1570 cat > conftest.s <<EOF
1572 ${libc_cv_asm_global_directive} foo
1575 .weak bar; bar = foo
1577 if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
1578 libc_cv_asm_weak_directive=yes
1580 libc_cv_asm_weak_directive=no
1584 if test $libc_cv_asm_weak_directive = no; then
1585 AC_CACHE_CHECK(for assembler .weakext directive,
1586 libc_cv_asm_weakext_directive,
1588 cat > conftest.s <<EOF
1590 ${libc_cv_asm_global_directive} foo
1594 ${libc_cv_asm_global_directive} baz
1597 if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
1598 libc_cv_asm_weakext_directive=yes
1600 libc_cv_asm_weakext_directive=no
1606 if test $libc_cv_asm_weak_directive = yes; then
1607 AC_DEFINE(HAVE_ASM_WEAK_DIRECTIVE)
1608 elif test $libc_cv_asm_weakext_directive = yes; then
1609 AC_DEFINE(HAVE_ASM_WEAKEXT_DIRECTIVE)
1612 dnl The standard hppa assembler uses `;' to start comments and `!'
1613 dnl as a line separator. CRIS uses `;' to start comments and `@' for
1615 case "${host_cpu}-${host_os}" in
1617 libc_cv_asm_line_sep='@'
1618 AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
1621 AC_CACHE_CHECK(for assembler line separator,
1622 libc_cv_asm_line_sep, [dnl
1623 cat > conftest.s <<EOF
1626 if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
1627 libc_cv_asm_line_sep='!'
1629 if test -z "$enable_hacker_mode"; then
1630 echo "*** You need a newer assembler to compile glibc"
1634 libc_cv_asm_line_sep=';'
1637 AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
1641 AC_CACHE_CHECK(whether CFI directives are supported, libc_cv_asm_cfi_directives, [dnl
1642 cat > conftest.s <<EOF
1644 .type func,@function
1648 .cfi_rel_offset 1, 0
1651 if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
1652 libc_cv_asm_cfi_directives=yes
1654 libc_cv_asm_cfi_directives=no
1657 if test $libc_cv_asm_cfi_directives = yes; then
1658 AC_DEFINE(HAVE_ASM_CFI_DIRECTIVES)
1661 AC_CACHE_CHECK(if -g produces usable source locations for assembler-with-cpp,
1662 libc_cv_cpp_asm_debuginfo, [dnl
1663 cat > conftest.S <<EOF
1664 #include "confdefs.h"
1669 ${libc_cv_asm_global_directive} foo
1671 /* Unfortunately this test only works for a real instruction,
1672 not for any of the machine-independent pseudo-ops.
1673 So we just have to assume everybody has a "nop". */
1680 if AC_TRY_COMMAND([${CC-cc} $CPPFLAGS $ASFLAGS -g -c conftest.S 1>&AS_MESSAGE_LOG_FD]) && {
1681 ac_pattern='conftest\.S'
1682 AC_TRY_COMMAND([readelf --debug-dump=line conftest.o |
1683 grep $ac_pattern 1>&AS_MESSAGE_LOG_FD])
1685 libc_cv_cpp_asm_debuginfo=yes
1687 libc_cv_cpp_asm_debuginfo=no
1689 rm -f conftest*])AC_SUBST(libc_cv_cpp_asm_debuginfo)
1690 if test $libc_cv_cpp_asm_debuginfo = yes; then
1691 AC_DEFINE(HAVE_CPP_ASM_DEBUGINFO)
1694 AC_CACHE_CHECK(for ld --no-whole-archive, libc_cv_ld_no_whole_archive, [dnl
1695 cat > conftest.c <<\EOF
1700 dnl No \ in command here because it ends up inside ''.
1701 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1702 -nostdlib -nostartfiles -Wl,--no-whole-archive
1703 -o conftest conftest.c 1>&AS_MESSAGE_LOG_FD]); then
1704 libc_cv_ld_no_whole_archive=yes
1706 libc_cv_ld_no_whole_archive=no
1709 if test $libc_cv_ld_no_whole_archive = yes; then
1710 no_whole_archive=-Wl,--no-whole-archive
1712 AC_SUBST(no_whole_archive)dnl
1714 AC_CACHE_CHECK(for gcc -fexceptions, libc_cv_gcc_exceptions, [dnl
1715 cat > conftest.c <<\EOF
1720 dnl No \ in command here because it ends up inside ''.
1721 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
1722 -nostdlib -nostartfiles -fexceptions
1723 -o conftest conftest.c 1>&AS_MESSAGE_LOG_FD]); then
1724 libc_cv_gcc_exceptions=yes
1726 libc_cv_gcc_exceptions=no
1729 if test $libc_cv_gcc_exceptions = yes; then
1730 exceptions=-fexceptions
1732 AC_SUBST(exceptions)dnl
1734 if test "$host_cpu" = powerpc ; then
1735 # Check for a bug present in at least versions 2.8.x of GCC
1736 # and versions 1.0.x of EGCS.
1737 AC_CACHE_CHECK(whether clobbering cr0 causes problems,libc_cv_c_asmcr0_bug,[dnl
1738 AC_TRY_COMPILE([int tester(int x) { asm ("" : : : "cc"); return x & 123; }],,
1739 libc_cv_c_asmcr0_bug='no',
1740 libc_cv_c_asmcr0_bug='yes')])
1741 if test "$libc_cv_c_asmcr0_bug" != 'no'; then
1742 AC_DEFINE(BROKEN_PPC_ASM_CR0)
1746 AC_CACHE_CHECK(for DWARF2 unwind info support, libc_cv_gcc_dwarf2_unwind_info,
1747 [cat > conftest.c <<EOF
1748 #line $LINENO "configure"
1749 static char *__EH_FRAME_BEGIN__;
1752 #ifdef CHECK__register_frame
1753 __register_frame (__EH_FRAME_BEGIN__);
1754 __deregister_frame (__EH_FRAME_BEGIN__);
1756 #ifdef CHECK__register_frame_info
1757 __register_frame_info (__EH_FRAME_BEGIN__);
1758 __deregister_frame_info (__EH_FRAME_BEGIN__);
1763 /* FIXME: this is fragile. */
1772 dl_iterate_phdr () {}
1774 libc_unwind_check="${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame_info \
1776 -nostdlib -nostartfiles -o conftest conftest.c \
1778 # Some platforms' specs put -lgcc first. The second one doesn't hurt.
1779 if AC_TRY_COMMAND([$libc_unwind_check >&AS_MESSAGE_LOG_FD]) ||
1780 AC_TRY_COMMAND([$libc_unwind_check -lgcc_eh -lgcc >&AS_MESSAGE_LOG_FD])
1782 if $libc_unwind_check -v 2>&1 >/dev/null \
1783 | grep -- --eh-frame-hdr 2>&1 >/dev/null; then
1784 libc_cv_gcc_dwarf2_unwind_info=no_registry_needed
1786 libc_cv_gcc_dwarf2_unwind_info=static
1789 libc_cv_gcc_dwarf2_unwind_info=no
1791 if test $libc_cv_gcc_dwarf2_unwind_info = no; then
1792 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame
1793 $LDFLAGS -nostdlib -nostartfiles
1794 -o conftest conftest.c -lgcc >&AS_MESSAGE_LOG_FD]); then
1795 libc_cv_gcc_dwarf2_unwind_info=yes
1797 libc_cv_gcc_dwarf2_unwind_info=no
1801 case $libc_cv_gcc_dwarf2_unwind_info in
1803 AC_DEFINE(HAVE_DWARF2_UNWIND_INFO)
1806 AC_DEFINE(HAVE_DWARF2_UNWIND_INFO)
1807 AC_DEFINE(HAVE_DWARF2_UNWIND_INFO_STATIC)
1811 dnl Check whether compiler understands __builtin_expect.
1812 AC_CACHE_CHECK(for __builtin_expect, libc_cv_gcc_builtin_expect,
1813 [cat > conftest.c <<EOF
1814 #line $LINENO "configure"
1817 a = __builtin_expect (a, 10);
1818 return a == 10 ? 0 : 1;
1821 dnl No \ in command here because it ends up inside ''.
1822 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles
1823 -o conftest conftest.c -lgcc >&AS_MESSAGE_LOG_FD]); then
1824 libc_cv_gcc_builtin_expect=yes
1826 libc_cv_gcc_builtin_expect=no
1829 if test "$libc_cv_gcc_builtin_expect" = yes; then
1830 AC_DEFINE(HAVE_BUILTIN_EXPECT)
1833 AC_CACHE_CHECK(for __builtin_memset, libc_cv_gcc_builtin_memset, [dnl
1834 cat > conftest.c <<\EOF
1837 __builtin_memset (x, 0, 1000);
1841 if AC_TRY_COMMAND([${CC-cc} -O3 -S conftest.c -o - | fgrep "memset" > /dev/null]);
1843 libc_cv_gcc_builtin_memset=no
1845 libc_cv_gcc_builtin_memset=yes
1848 if test "$libc_cv_gcc_builtin_memset" = yes ; then
1849 AC_DEFINE(HAVE_BUILTIN_MEMSET)
1852 AC_CACHE_CHECK(for redirection of built-in functions, libc_cv_gcc_builtin_redirection, [dnl
1853 cat > conftest.c <<\EOF
1854 extern char *strstr (const char *, const char *) __asm ("my_strstr");
1855 char *foo (const char *a, const char *b)
1857 return __builtin_strstr (a, b);
1861 if AC_TRY_COMMAND([${CC-cc} -O3 -S conftest.c -o - | fgrep "my_strstr" > /dev/null]);
1863 libc_cv_gcc_builtin_redirection=yes
1865 libc_cv_gcc_builtin_redirection=no
1868 if test "$libc_cv_gcc_builtin_redirection" = yes ; then
1869 AC_DEFINE(HAVE_BUILTIN_REDIRECTION)
1872 dnl Check whether the compiler supports subtraction of local labels.
1873 AC_CACHE_CHECK(for local label subtraction, libc_cv_gcc_subtract_local_labels,
1874 [cat > conftest.c <<EOF
1876 #line $LINENO "configure"
1879 static const int ar[] = { &&l1 - &&l1, &&l2 - &&l1 };
1880 void *p = &&l1 + ar[a];
1889 dnl No \ in command here because it ends up inside ''.
1890 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles
1891 -o conftest conftest.c -lgcc >&AS_MESSAGE_LOG_FD]); then
1892 libc_cv_gcc_subtract_local_labels=yes
1894 libc_cv_gcc_subtract_local_labels=no
1897 if test "$libc_cv_gcc_subtract_local_labels" = yes; then
1898 AC_DEFINE(HAVE_SUBTRACT_LOCAL_LABELS)
1901 dnl Check whether the compiler supports the __thread keyword.
1902 if test "x$use__thread" != xno; then
1903 AC_CACHE_CHECK([for __thread], libc_cv_gcc___thread,
1904 [cat > conftest.c <<\EOF
1905 __thread int a = 42;
1907 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c >&AS_MESSAGE_LOG_FD]); then
1908 libc_cv_gcc___thread=yes
1910 libc_cv_gcc___thread=no
1913 if test "$libc_cv_gcc___thread" = yes; then
1914 AC_DEFINE(HAVE___THREAD)
1917 libc_cv_gcc___thread=no
1920 if test "$libc_cv_gcc___thread" = yes; then
1921 dnl Check whether the compiler supports the tls_model attribute.
1922 AC_CACHE_CHECK([for tls_model attribute], libc_cv_gcc_tls_model_attr, [dnl
1923 cat > conftest.c <<\EOF
1924 extern __thread int a __attribute__((tls_model ("initial-exec")));
1926 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -S -Werror conftest.c >&AS_MESSAGE_LOG_FD]); then
1927 libc_cv_gcc_tls_model_attr=yes
1929 libc_cv_gcc_tls_model_attr=no
1932 if test "$libc_cv_gcc_tls_model_attr" = yes; then
1933 AC_DEFINE(HAVE_TLS_MODEL_ATTRIBUTE)
1937 dnl Check whether we have the gd library available.
1938 AC_MSG_CHECKING(for libgd)
1939 if test "$with_gd" != "no"; then
1940 old_CFLAGS="$CFLAGS"
1941 CFLAGS="$CFLAGS $libgd_include"
1942 old_LDFLAGS="$LDFLAGS"
1943 LDFLAGS="$LDFLAGS $libgd_ldflags"
1945 LIBS="$LIBS -lgd -lpng -lz -lm"
1946 AC_TRY_LINK([#include <gd.h>], [gdImagePng (0, 0)], LIBGD=yes, LIBGD=no)
1947 CFLAGS="$old_CFLAGS"
1948 LDFLAGS="$old_LDFLAGS"
1953 AC_MSG_RESULT($LIBGD)
1956 dnl check for the size of 'long double'.
1957 AC_CHECK_SIZEOF(long double, 0)
1958 sizeof_long_double=$ac_cv_sizeof_long_double
1959 AC_SUBST(sizeof_long_double)
1961 ### End of automated tests.
1962 ### Now run sysdeps configure fragments.
1964 # They also can set these variables.
1966 ldd_rewrite_script=no
1967 libc_cv_sysconfdir=$sysconfdir
1968 libc_cv_gcc_unwind_find_fde=no
1971 # Iterate over all the sysdep directories we will use, running their
1972 # configure fragments, and looking for a uname implementation.
1974 for dir in $sysnames; do
1977 *) dest=$srcdir/$dir ;;
1979 if test -r $dest/configure; then
1980 AC_MSG_RESULT(running configure fragment for $dir)
1984 if test -z "$uname"; then
1985 if test -r $dest/uname.c ||
1986 test -r $dest/uname.S ||
1987 { test -r $dest/syscalls.list &&
1988 grep '^uname[ ]' $dest/syscalls.list >/dev/null; }; then
1995 if test x$libc_cv_gcc_unwind_find_fde = xyes; then
1996 AC_DEFINE(EXPORT_UNWIND_FIND_FDE)
1998 AC_SUBST(libc_cv_gcc_unwind_find_fde)
2000 # If we will use the generic uname implementation, we must figure out what
2001 # it will say by examining the system, and write the results in config-name.h.
2002 if test "$uname" = "sysdeps/generic"; then
2005 uname_sysname=`echo $config_os | sed 's/[0-9.]*$//'`
2007 if test $uname_sysname != $config_os; then
2008 config_release=`echo $config_os | sed s/$uname_sysname//`
2011 AC_DEFUN(LIBC_KERNEL_ID, [dnl
2012 if test -r /vmunix; then
2013 kernel_id=`strings /vmunix | grep UNIX`
2014 elif test -r /dynix; then
2015 kernel_id=`strings /dynix | grep DYNIX`
2021 AC_CACHE_CHECK(OS release for uname, libc_cv_uname_release, [dnl
2024 kernel_release=`echo "$kernel_id" | sed 's/^[^0-9.]*\([0-9.]*\).*$/\1/'`
2026 if test x`echo "$config_release" | sed "s/^$kernel_release//"` \
2027 != x$config_release; then
2028 # The configuration release is a substring of the kernel release.
2029 libc_cv_uname_release=$kernel_release
2030 elif test x$config_release != x; then
2031 libc_cv_uname_release=$config_release
2032 elif test x$kernel_release != x; then
2033 libc_cv_uname_release=$kernel_release
2035 libc_cv_uname_release=unknown
2037 uname_release="$libc_cv_uname_release"
2039 AC_CACHE_CHECK(OS version for uname, libc_cv_uname_version, [dnl
2042 kernel_version=`echo "$kernel_id" | sed 's/^[^#]*#\([0-9]*\).*$/\1/'`
2044 if test -n "$kernel_version"; then
2045 libc_cv_uname_version="$kernel_version"
2047 libc_cv_uname_version=unknown
2049 uname_version="$libc_cv_uname_version"
2051 AC_SUBST(uname_sysname) AC_SUBST(uname_release) AC_SUBST(uname_version)dnl
2052 config_uname=config-name.h:config-name.in
2054 # For non-generic uname, we don't need to create config-name.h at all.
2058 dnl This is tested by existing code and it's simpler to avoid changing it.
2059 AC_DEFINE(USE_IN_LIBIO)
2061 # Test for old glibc 2.0.x headers so that they can be removed properly
2062 # Search only in includedir.
2063 AC_MSG_CHECKING(for old glibc 2.0.x headers)
2064 if eval test -f "${includedir}/elfclass.h" -a -f "${includedir}/fcntlbits.h"
2066 old_glibc_headers=yes
2068 old_glibc_headers=no
2070 AC_MSG_RESULT($old_glibc_headers)
2071 if test ${old_glibc_headers} = yes; then
2072 AC_MSG_WARN(*** During \"make install\" old headers from glibc 2.0.x will)
2073 AC_MSG_WARN(*** be removed.)
2075 AC_SUBST(old_glibc_headers)
2077 AC_SUBST(libc_cv_slibdir)
2078 AC_SUBST(libc_cv_localedir)
2079 AC_SUBST(libc_cv_sysconfdir)
2080 AC_SUBST(libc_cv_rootsbindir)
2081 AC_SUBST(libc_cv_forced_unwind)
2083 AC_SUBST(use_ldconfig)
2084 AC_SUBST(ldd_rewrite_script)
2086 AC_SUBST(gnu_ld) AC_SUBST(gnu_as) AC_SUBST(elf) AC_SUBST(xcoff)
2087 if test $gnu_ld = yes; then
2088 AC_DEFINE(HAVE_GNU_LD)
2090 if test $gnu_as = yes; then
2091 AC_DEFINE(HAVE_GNU_AS)
2093 if test $elf = yes; then
2096 if test $xcoff = yes; then
2097 AC_DEFINE(HAVE_XCOFF)
2102 if test $shared = default; then
2103 if test $gnu_ld = yes; then
2106 # For now we do not assume shared libs are available. In future more
2107 # tests might become available.
2112 if test x"$libc_cv_idn" = xyes; then
2113 AC_DEFINE(HAVE_LIBIDN)
2116 AC_CACHE_CHECK([whether -fPIC is default], pic_default,
2118 cat > conftest.c <<EOF
2119 #if defined __PIC__ || defined __pic__ || defined PIC || defined pic
2120 # error PIC is default.
2123 if eval "${CC-cc} -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
2127 AC_SUBST(pic_default)
2132 AC_SUBST(static_nss)
2133 AC_SUBST(nopic_initfini)
2138 *door*) linux_doors=yes ;;
2139 *) linux_doors=no ;;
2141 AC_SUBST(linux_doors)
2143 dnl See sysdeps/mach/configure.in for this variable.
2144 AC_SUBST(mach_interface_list)
2146 if test "`(cd $srcdir; pwd)`" = "`pwd`"; then
2149 config_makefile=Makefile
2152 VERSION=`sed -n -e 's/^#define VERSION "\([^"]*\)"/\1/p' < $srcdir/version.h`
2153 RELEASE=`sed -n -e 's/^#define RELEASE "\([^"]*\)"/\1/p' < $srcdir/version.h`
2157 AC_CONFIG_FILES([config.make ${config_makefile} ${config_uname}])
2158 AC_CONFIG_COMMANDS([default],[[
2159 case $CONFIG_FILES in *config.make*)
2160 echo "$config_vars" >> config.make;;
2162 test -d bits || mkdir bits]],[[config_vars='$config_vars']])