]> git.ipfire.org Git - thirdparty/glibc.git/blame - configure.in
Update.
[thirdparty/glibc.git] / configure.in
CommitLineData
f4017d20 1dnl Process this file with autoconf to produce a configure script.
ff3d7ed3 2AC_REVISION([$CVSid$])
8a523922 3AC_PREREQ(2.11)dnl dnl Minimum Autoconf version required.
5107cf1d 4AC_INIT(include/features.h)
28f540f4
RM
5AC_CONFIG_HEADER(config.h)
6
7# This will get text that should go into config.make.
8config_vars=
9
10# Check for a --with-gmp argument and set gmp-srcdir in config.make.
11AC_ARG_WITH(gmp, dnl
12 --with-gmp=DIRECTORY find GMP source code in DIRECTORY (not needed),
13 [dnl
14case "$with_gmp" in
15yes) AC_MSG_ERROR(--with-gmp requires an argument; use --with-gmp=DIRECTORY) ;;
16''|no) ;;
17*) config_vars="$config_vars
18gmp-srcdir = $withval" ;;
19esac
20])
75914335
RM
21# Check for a --with-gettext argument and set gettext-srcdir in config.make.
22AC_ARG_WITH(gettext, dnl
23 --with-gettext=DIR find GNU gettext source code in DIR (not needed),
24 [dnl
25case "$with_gettext" in
26yes)
27 AC_MSG_ERROR(--with-gettext requires an argument; use --with-gettext=DIR) ;;
28''|no) ;;
29*)
30 config_vars="$config_vars
31gettext-srcdir = $withval" ;;
32esac
33])
28f540f4 34
ff3d7ed3 35dnl Arguments to specify presence of other packages/features.
335aa320 36AC_ARG_WITH(fp, dnl
a18f587d 37[ --with-fp if using floating-point hardware [default=yes]],
335aa320 38 with_fp=$withval, with_fp=yes)
650425ce 39AC_ARG_WITH(binutils, dnl
a5a0310d 40 --with-binutils=PATH specify location of binutils (as and ld),
650425ce 41 path_binutils=$withval, path_binutils='')
28f540f4
RM
42AC_ARG_WITH(elf, dnl
43 --with-elf if using the ELF object format,
335aa320 44 elf=$withval, elf=no)
4d06461a
UD
45AC_ARG_WITH(cvs, dnl
46[ --without-cvs if CVS should not be used],
47 with_cvs=$withval, with_cvs=yes)
48AC_SUBST(with_cvs)
28f540f4 49
dbe7a0f5
UD
50AC_ARG_WITH(headers, dnl
51[ --with-headers=PATH location of system headers to use
52 [e.g. /usr/src/linux/include]
53 [default=compiler default]],
54 sysheaders=$withval, sysheaders='')
55
deab9dea
RM
56AC_ARG_ENABLE(libio, dnl
57[ --enable-libio build in GNU libio instead of GNU stdio],
f4482045
RM
58 [if test $enableval = yes; then
59 stdio=libio
60 else
61 stdio=stdio
62 fi],
63 stdio=default)
deab9dea 64
a18f587d
UD
65AC_ARG_ENABLE(sanity-checks, dnl
66[ --disable-sanity-checks really do not use threads (should not be used
67 except in special situations) [default=yes]],
68 enable_sanity=$enableval, enable_sanity=yes)
69
650425ce
UD
70dnl Arguments to enable or disable building the static, shared, profiled,
71dnl and -fomit-frame-pointer libraries.
72AC_ARG_ENABLE(static, dnl
73[ --enable-static build static library [default=yes]],
74 static=$enableval, static=yes)
ff3d7ed3
RM
75AC_ARG_ENABLE(shared, dnl
76[ --enable-shared build shared library [default=yes if GNU ld & ELF]],
6b3a2224 77 shared=$enableval, shared=default)
ff3d7ed3
RM
78AC_ARG_ENABLE(profile, dnl
79[ --enable-profile build profiled library [default=yes]],
6b3a2224 80 profile=$enableval, profile=yes)
ff3d7ed3 81AC_ARG_ENABLE(omitfp, dnl
6b3a2224
RM
82[ --enable-omitfp build undebuggable optimized library [default=no]],
83 omitfp=$enableval, omitfp=no)
5a97622d
UD
84AC_ARG_ENABLE(bounded, dnl
85[ --enable-bounded build with runtime bounds checking [default=no]],
86 bounded=$enableval, bounded=no)
650425ce
UD
87AC_ARG_ENABLE(versioning, dnl
88[ --disable-versioning do not include versioning information in the
89 library objects [default=yes if supported]],
90 enable_versioning=$enableval, enable_versioning=yes)
6b3a2224
RM
91
92dnl Generic infrastructure for drop-in additions to libc.
93AC_ARG_ENABLE(add-ons, dnl
73237de3
UD
94[ --enable-add-ons[=DIR1,DIR2]...
95 configure and build add-ons in DIR1,DIR2,...
96 search for add-ons if no parameter given],
61952351 97 [case "$enableval" in
b9b49b44
UD
98 yes) if test "$srcdir" = "."; then
99 add_ons=`echo */configure | sed -e 's!/configure!!g'`
100 else
101 add_ons=`echo $srcdir/*/configure | \
566efee2 102 sed -e 's!/configure!!g' -e "s!$srcdir/!!g"`
b9b49b44 103 fi;;
61952351
UD
104 *) add_ons=`echo "$enableval" | sed 's/,/ /g'`;;
105 esac],
106 [add_ons=])
107
6b3a2224 108AC_CONFIG_SUBDIRS($add_ons)
57ba7bb4 109add_ons_pfx=
da74e902 110if test x"$add_ons" != x; then
57ba7bb4 111 for f in $add_ons; do
af6f3906
UD
112 # Test whether such a subdir really exists.
113 if test -d $srcdir/$f; then
114 add_ons_pfx="$add_ons_pfx $f/"
115 else
116 AC_MSG_ERROR(add-on directory \"$f\" does not exist)
117 fi
57ba7bb4
UD
118 done
119fi
ff3d7ed3 120
5107cf1d
UD
121dnl On some platforms we cannot use dynamic loading. We must provide
122dnl static NSS modules.
123AC_ARG_ENABLE(static-nss, dnl
124[ --enable-static-nss build static NSS modules [default=no]],
125 static_nss=$enableval, static_nss=no)
126if test x"$static_nss" = xyes; then
127 AC_DEFINE(DO_STATIC_NSS)
128fi
129
73237de3 130AC_ARG_ENABLE(force-install,
310b3460 131[ --disable-force-install don't force installation of files from this package,
73237de3
UD
132 even if they are older than the installed files],
133 force_install=$enableval, force_install=yes)
134AC_SUBST(force_install)
135
28f540f4 136AC_CANONICAL_HOST
8a523922
UD
137
138# The way shlib-versions is used to generate soversions.mk uses a
139# fairly simplistic model for name recognition that can't distinguish
140# i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os
141# of `gnu*' here to be `gnu-gnu*' just so that shlib-versions can
142# tell. This doesn't get used much beyond that, so it's fairly safe.
143case "$host_os" in
144linux*)
145 ;;
146gnu*)
147 host_os=`echo $host_os | sed -e 's/gnu/gnu-gnu/'`
148 ;;
149esac
150
61eb22d3
UD
151###
152### I put this here to prevent those annoying emails from people who cannot
153### read and try to compile glibc on unsupported platforms. --drepper
154###
650425ce
UD
155### By using the undocumented --enable-hacker-mode option for configure
156### one can skip this test to make the configuration not fail for unsupported
157### platforms.
158###
159if test -z "$enable_hacker_mode"; then
4d06461a
UD
160 case "$machine-$host_os" in
161 *-linux* | *-gnu* | arm*-none*)
650425ce
UD
162 ;;
163 *)
164 echo "*** The GNU C library is currently not available for this platform."
165 echo "*** So far nobody cared to port it and if there is no volunteer it"
166 echo "*** might never happen. So, if you have interest to see glibc on"
167 echo "*** this platform visit"
b9b49b44 168 echo "*** http://www.gnu.org/software/libc/porting.html"
650425ce
UD
169 echo "*** and join the group of porters"
170 exit 1
171 ;;
172 esac
173fi
61eb22d3 174
28f540f4
RM
175# We keep the original values in `$config_*' and never modify them, so we
176# can write them unchanged into config.make. Everything else uses
177# $machine, $vendor, and $os, and changes them whenever convenient.
178config_machine=$host_cpu config_vendor=$host_vendor config_os=$host_os
179
a2fe9c76
RM
180# Some configurations imply other options.
181case "$host_os" in
182gnu* | linux* | bsd4.4* | netbsd* | freebsd*)
183 # These systems always use GNU tools.
c8cf0b14 184 gnu_ld=yes gnu_as=yes ;;
a2fe9c76
RM
185esac
186case "$host_os" in
7799b7b3
UD
187# i586-linuxaout is mangled into i586-pc-linux-gnuaout
188linux*ecoff* | linux*aout* | gnu*aout* | gnu*ecoff*)
3776d592 189 ;;
ba909880 190gnu* | linux* | sysv4* | solaris2* | irix6*)
3776d592
RM
191 # These systems (almost) always use the ELF format.
192 elf=yes
84724245 193 ;;
a2fe9c76
RM
194esac
195
28f540f4
RM
196machine=$config_machine
197vendor=$config_vendor
198os=$config_os
199
200dnl We need to use [ and ] for other purposes for a while now.
201changequote(,)dnl
202# Expand the configuration machine name into a subdirectory by architecture
203# type and particular chip.
204case "$machine" in
f0523145
RM
205a29k | am29000) base_machine=a29k machine=a29k ;;
206alpha*) base_machine=alpha machine=alpha/$machine ;;
7799b7b3 207arm*) base_machine=arm machine=arm/$machine ;;
60c96635
UD
208c3[012]) base_machine=cx0 machine=cx0/c30 ;;
209c4[04]) base_machine=cx0 machine=cx0/c40 ;;
f0523145 210hppa*) base_machine=hppa machine=hppa/$machine ;;
a8922de8 211i[3456]86) base_machine=i386 machine=i386/$machine ;;
f0523145
RM
212m680?0) base_machine=m68k machine=m68k/$machine ;;
213m68k) base_machine=m68k machine=m68k/m68020 ;;
214m88???) base_machine=m88k machine=m88k/$machine ;;
215m88k) base_machine=m88k machine=m88k/m88100 ;;
f0523145 216mips64*) base_machine=mips64 machine=mips/mips64/$machine ;;
9a97d1f7
UD
217mips*) base_machine=mips
218 case "`uname -m`" in
219 IP22) machine=mips/mips3 ;;
220 *) machine=mips/$machine ,,
221 esac ;;
ca34d7a7
UD
222sparc | sparcv[67])
223 base_machine=sparc machine=sparc/sparc32 ;;
224sparcv8 | supersparc | hypersparc)
225 base_machine=sparc machine=sparc/sparc32/sparcv8 ;;
226sparc64 | ultrasparc)
227 base_machine=sparc machine=sparc/sparc64 ;;
28f540f4 228esac
f0523145
RM
229changequote([,])dnl
230AC_SUBST(base_machine)
28f540f4 231
dfd2257a
UD
232if test "$base_machine" = "i386"; then
233 AC_DEFINE(USE_REGPARMS)
234fi
235
f0523145 236# Compute the list of sysdep directories for this configuration.
f332db02 237# This can take a while to compute.
f0523145 238sysdep_dir=$srcdir/sysdeps
f332db02 239AC_MSG_CHECKING(sysdep dirs)
f0523145
RM
240dnl We need to use [ and ] for other purposes for a while now.
241changequote(,)dnl
28f540f4
RM
242# Make sco3.2v4 become sco3.2.4 and sunos4.1.1_U1 become sunos4.1.1.U1.
243os="`echo $os | sed 's/\([0-9A-Z]\)[v_]\([0-9A-Z]\)/\1.\2/g'`"
244
245case "$os" in
246gnu*)
247 base_os=mach/hurd ;;
883bc19b 248netbsd* | 386bsd* | freebsd* | bsdi*)
28f540f4 249 base_os=unix/bsd/bsd4.4 ;;
222c4e71 250osf* | sunos* | ultrix* | newsos* | dynix* | *bsd*)
28f540f4 251 base_os=unix/bsd ;;
d586354e 252sysv* | isc* | esix* | sco* | minix* | irix4* | linux*)
28f540f4 253 base_os=unix/sysv ;;
f802accb
UD
254irix6*)
255 base_os=unix/sysv/irix6/$os ;;
d586354e 256solaris[2-9]*)
28f540f4
RM
257 base_os=unix/sysv/sysv4 ;;
258none)
259 base_os=standalone ;;
260*)
261 base_os='' ;;
262esac
263
264# For sunos4.1.1, try sunos4.1.1, then sunos4.1, then sunos4, then sunos.
265tail=$os
266ostry=$os
267while o=`echo $tail | sed 's/\.[^.]*$//'`; test $o != $tail; do
268 ostry="$ostry /$o"
269 tail=$o
75914335 270done
28f540f4
RM
271o=`echo $tail | sed 's/[0-9]*$//'`
272if test $o != $tail; then
273 ostry="$ostry /$o"
274fi
ec4b0518
UD
275# For linux-gnu, try linux-gnu, then linux.
276o=`echo $tail | sed 's/-.*$//'`
277if test $o != $tail; then
278 ostry="$ostry /$o"
279fi
28f540f4
RM
280
281# For unix/sysv/sysv4, try unix/sysv/sysv4, then unix/sysv, then unix.
282base=
283tail=$base_os
284while b=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$b"; do
285 set $b
286 base="$base /$1"
287 tail="$2"
288done
289
290# For sparc/sparc9, try sparc/sparc9 and then sparc.
291mach=
292tail=$machine
293while m=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$m"; do
294 set $m
10ceac89
RM
295 # Prepend the machine's FPU directory unless --without-fp.
296 if test "$with_fp" = yes; then
297 mach="$mach /$1/fpu"
82d00cab 298 fi
28f540f4
RM
299 mach="$mach /$1"
300 tail="$2"
301done
302
303dnl We are done with glob and regexp uses of [ and ]; return to autoconf.
304changequote([,])dnl
305
306# Find what sysdep directories exist.
307sysnames=
57ba7bb4
UD
308IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
309for d in $add_ons_pfx ''; do
310 for b in $base ''; do
311 for m0 in $mach ''; do
312 for v in /$vendor ''; do
ae828bc6 313 test "$v" = / && continue
57ba7bb4 314 for o in /$ostry ''; do
ae828bc6 315 test "$o" = / && continue
57ba7bb4
UD
316 for m in $mach ''; do
317 if test "$m0$b$v$o$m"; then
318 try="${d}sysdeps$m0$b$v$o$m"
319 test -n "$enable_debug_configure" &&
320 echo "$0 [DEBUG]: try $try" >&2
321 case $try in
322 /*) dest=$try ;;
323 *) dest=$srcdir/$try ;;
324 esac
325 if test -d $dest; then
326 sysnames="$sysnames $try"
327 { test -n "$o" || test -n "$b"; } && os_used=t
328 { test -n "$m" || test -n "$m0"; } && machine_used=t
329 fi
330 fi
331 done
28f540f4
RM
332 done
333 done
334 done
335 done
336done
57ba7bb4 337IFS="$ac_save_ifs"
28f540f4
RM
338
339if test -z "$os_used" && test "$os" != none; then
340 AC_MSG_ERROR(Operating system $os is not supported.)
341fi
342if test -z "$machine_used" && test "$machine" != none; then
343 AC_MSG_ERROR(The $machine is not supported.)
344fi
345
346# We have now validated the configuration.
347
335aa320 348
10ceac89
RM
349# If using ELF, look for an `elf' subdirectory of each machine directory.
350# We prepend these rather than inserting them whereever the machine appears
351# because things specified by the machine's ELF ABI should override
352# OS-specific things, and should always be the same for any OS on the
353# machine (otherwise what's the point of an ABI?).
354if test "$elf" = yes; then
355 elf_dirs=
57ba7bb4
UD
356 for d in $add_ons_pfx ''; do
357 case $d in
358 /*) xsrcdir= ;;
359 *) xsrcdir=$srcdir/ ;;
360 esac
361 for m in $mach; do
362 if test -d $xsrcdir${d}sysdeps$m/elf; then
c2bb8cab 363 elf_dirs="$elf_dirs ${d}sysdeps$m/elf"
57ba7bb4
UD
364 fi
365 done
28f540f4 366 done
57ba7bb4 367 sysnames="`echo $elf_dirs | sed -e 's,//,/,g'` $sysnames"
28f540f4
RM
368fi
369
335aa320 370
28f540f4
RM
371# Expand the list of system names into a full list of directories
372# from each element's parent name and Implies file (if present).
373set $sysnames
e50ec9f9 374names=
28f540f4
RM
375while test $# -gt 0; do
376 name=$1
377 shift
378
e50ec9f9 379 case " $names " in *" $name "*)
f332db02
RM
380 # Already in the list.
381 continue
e50ec9f9 382 esac
f332db02
RM
383
384 # Report each name as we discover it, so there is no long pause in output.
385 echo $ac_n "$name $ac_c" >&AC_FD_MSG
386
57ba7bb4
UD
387 name_base=`echo $name | sed -e 's@\(.*sysdeps\)/.*@\1@'`
388
389 case $name in
390 /*) xsrcdir= ;;
391 *) xsrcdir=$srcdir/ ;;
392 esac
393 test -n "$enable_debug_configure" &&
394 echo "[DEBUG]: name/Implies $xsrcdir$name/Implies" >&2
395
396 if test -f $xsrcdir$name/Implies; then
28f540f4 397 # Collect more names from the `Implies' file (removing comments).
57ba7bb4
UD
398 implied_candidate="`sed 's/#.*$//' < $xsrcdir$name/Implies`"
399 implied=
400 for x in $implied_candidate; do
401 if test -d $xsrcdir$name_base/$x; then
402 implied="$implied $name_base/$x";
403 else
404 AC_MSG_WARN($name/Implies specifies nonexistent $x)
405 fi
28f540f4
RM
406 done
407 else
408 implied=
409 fi
410
411 # Add NAME to the list of names.
412 names="$names $name"
413
414 # Find the parent of NAME, using the empty string if it has none.
415changequote(,)dnl
57ba7bb4 416 parent="`echo $name | sed -n -e 's=/[^/]*$==' -e '/sysdeps$/q' -e p`"
28f540f4
RM
417changequote([,])dnl
418
419 # Add the names implied by NAME, and NAME's parent (if it has one), to
420 # the list of names to be processed (the argument list). We prepend the
421 # implied names to the list and append the parent. We want implied
422 # directories to come before further directories inferred from the
423 # configuration components; this ensures that for sysv4, unix/common
424 # (implied by unix/sysv/sysv4) comes before unix/sysv (in ostry (here $*)
425 # after sysv4).
426 sysnames="`echo $implied $* $parent`"
427 test -n "$sysnames" && set $sysnames
428done
429
430# Add the default directories.
f2ea0f5b 431sysnames="$names sysdeps/generic"
f332db02
RM
432AC_SUBST(sysnames)
433# The other names were emitted during the scan.
f2ea0f5b 434AC_MSG_RESULT(sysdeps/generic)
28f540f4 435
f332db02
RM
436
437### Locate tools.
28f540f4 438
28f540f4 439AC_PROG_INSTALL
26761c28 440if test "$INSTALL" = "${srcdir}/install-sh -c"; then
28f540f4 441 # The makefiles need to use a different form to find it in $srcdir.
f41c8091 442 INSTALL='\$(..)./install-sh -c'
28f540f4 443fi
0e3426bb 444AC_PROG_LN_S
ae828bc6 445
63bda0c1 446# These programs are version sensitive.
4bca4c17
UD
447AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
448AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v,
449 [version \([egcst0-9.-]*\)],
450 [egcs-2.91.*|egcs-2.90.2[789]|egcs-2.90.[3-9][0-9]|*2.8.[1-9]*|*2.9.[0-9]*],
451 critic_missing=t)
63bda0c1
UD
452AC_CHECK_PROG_VER(MAKE, make gmake, --version,
453 [version \([0-9][0-9.]*\), by],
4bca4c17 454 [3.75 | 3.76.[1-9] | 3.7[789]* | 3.[89]*], critic_missing=t)
63bda0c1
UD
455
456AC_CHECK_PROG_VER(MSGFMT, msgfmt gmsgfmt, --version,
457 [GNU gettext.*\([0-9][0-9]*\.[0-9]*\)],
4bca4c17 458 [0.[1-9][0-9] | [1-9].*], MSGFMT=: aux_missing=t)
63bda0c1
UD
459AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version,
460 [GNU texinfo \([0-9][0-9.]*\)],
4bca4c17 461 [3.1[1-9] | 3.[2-9][0-9]], MAKEINFO=: aux_missing=t)
63bda0c1 462
4bca4c17
UD
463if test -n "$critic_missing"; then
464AC_MSG_ERROR([
63bda0c1
UD
465*** Some critical program is missing or too old.
466*** Check the INSTALL file for required versions.])
4bca4c17 467fi
63bda0c1 468
4bca4c17 469test -n "$aux_missing" && AC_MSG_WARN([
63bda0c1
UD
470*** An auxiliary program is missing or too old;
471*** some features will be disabled.
472*** Check the INSTALL file for required versions.])
28f540f4 473
ebbad4cc 474AC_PROG_CC_LOCAL
22d57dd3 475AC_CANONICAL_BUILD
072ebcef 476if test $host != $build; then
22d57dd3 477 AC_CHECK_PROGS(BUILD_CC, gcc cc)
072ebcef 478fi
779ae82e 479AC_SUBST(cross_compiling)
7c713e28 480AC_PROG_CPP
650425ce 481LIBC_PROG_BINUTILS
ff3d7ed3
RM
482AC_CHECK_TOOL(AR, ar)
483AC_CHECK_TOOL(RANLIB, ranlib, :)
4bca4c17 484AC_CHECK_TOOL(MIG, mig)
28f540f4 485
dbe7a0f5
UD
486# if using special system headers, find out the compiler's sekrit
487# header directory and add that to the list. NOTE: Only does the right
488# thing on a system that doesn't need fixincludes. (Not presently a problem.)
489if test -n "$sysheaders"; then
490 ccheaders=`$CC -print-file-name=include`
491 SYSINCLUDES="-nostdinc -isystem $ccheaders -isystem $sysheaders"
492fi
493AC_SUBST(SYSINCLUDES)
494
97a47867
UD
495# check if ranlib is necessary
496AC_CACHE_CHECK(whether ranlib is necessary, libc_cv_ranlib_necessary, [dnl
497cat > conftest.c <<EOF
498int a;
499char b;
500void c(void) {}
501EOF
502$CC $CFLAGS -c conftest.c
503$AR cr conftest.a conftest.c
504cp conftest.a conftest2.a
505$RANLIB conftest.a
506if cmp -s conftest.a conftest2.a; then
507 libc_cv_ranlib_necessary=no
f38931a9 508else
97a47867
UD
509 libc_cv_ranlib_necessary=yes
510fi
511rm -rf conftest*])
512if test "$libc_cv_ranlib_necessary" = no; then
513 RANLIB=:
f38931a9 514fi
f38931a9 515
3911660e
UD
516# Test if LD_LIBRARY_PATH contains the notation for the current directory
517# since this would lead to problems installing/building glibc.
518# LD_LIBRARY_PATH contains the current directory if one of the following
519# is true:
520# - one of the terminals (":" and ";") is the first or last sign
521# - two terminals occur directly after each other
522# - the path contains an element with a dot in it
523AC_MSG_CHECKING(LD_LIBRARY_PATH variable)
524changequote(,)dnl
525case ${LD_LIBRARY_PATH} in
526 [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
b3a86ae1 527 ld_library_path_setting="contains current directory"
3911660e
UD
528 ;;
529 *)
530 ld_library_path_setting="ok"
531 ;;
532esac
533changequote([,])dnl
534AC_MSG_RESULT($ld_library_path_setting)
535if test "$ld_library_path_setting" != "ok"; then
63bda0c1
UD
536AC_MSG_ERROR([
537*** LD_LIBRARY_PATH shouldn't contain the current directory when
538*** building glibc. Please change the environment variable
539*** and run configure again.])
3911660e 540fi
8e31cf7e 541
84384f5b 542AC_PATH_PROG(BASH, bash, no)
a18f587d 543if test "$BASH" != no &&
f43ce637 544 $BASH -c 'test "$BASH_VERSINFO" \
6973fc01 545 && test "$BASH_VERSINFO" -ge 2 >&/dev/null'; then
84384f5b
UD
546 libc_cv_have_bash2=yes
547else
548 libc_cv_have_bash2=no
549fi
550AC_SUBST(libc_cv_have_bash2)
551
5290baf0
UD
552dnl We need a ksh compatible shell for tzselect.
553if test "$BASH" = no; then
554 AC_PATH_PROG(KSH, ksh, no)
555 if test "$KSH" = no; then
556 libc_cv_have_ksh=no
557 else
558 libc_cv_have_ksh=yes
559 fi
560else
561 KSH="$BASH"
562 AC_SUBST(KSH)
563 libc_cv_have_ksh=yes
564fi
565AC_SUBST(libc_cv_have_ksh)
566
5aa8ff62 567AC_PROG_AWK
a2b08ee5
UD
568AC_PATH_PROGS(PERL, perl, no)
569AC_SUBST(PERL)
570
b8dc6a10 571AC_CACHE_CHECK(for signed size_t type, libc_cv_signed_size_t, [dnl
28f540f4
RM
572echo '#include <stddef.h>
573FOOBAR __SIZE_TYPE__ FOOBAR' > conftest.c
574if eval "$ac_cpp conftest.c 2>/dev/null" \
575| grep '^FOOBAR.*unsigned.*FOOBAR$' >/dev/null; then
576 libc_cv_signed_size_t=no
577else
578 libc_cv_signed_size_t=yes
579fi
580rm -f conftest*])
28f540f4
RM
581if test $libc_cv_signed_size_t = yes; then
582 dnl Do this by hand instead of AC_DEFINE so can add #undef to avoid warnings.
583 cat >> confdefs.h <<\EOF
584#undef __SIZE_TYPE__
585#define __SIZE_TYPE__ unsigned
586EOF
587fi
588
b8dc6a10 589AC_CACHE_CHECK(for libc-friendly stddef.h, libc_cv_friendly_stddef, [dnl
28f540f4
RM
590AC_TRY_COMPILE(dnl
591[#define __need_size_t
592#define __need_wchar_t
593#include <stddef.h>
594#define __need_NULL
595#include <stddef.h>], [size_t size; wchar_t wchar;
596#ifdef offsetof
597#error stddef.h ignored __need_*
598#endif
599if (&size == NULL || &wchar == NULL) abort ();],
600 libc_cv_friendly_stddef=yes,
601 libc_cv_friendly_stddef=no)])
28f540f4
RM
602if test $libc_cv_friendly_stddef = yes; then
603 config_vars="$config_vars
604override stddef.h = # The installed <stddef.h> seems to be libc-friendly."
605fi
606
b8dc6a10
RM
607AC_CACHE_CHECK(whether we need to use -P to assemble .S files,
608 libc_cv_need_minus_P, [dnl
28f540f4
RM
609cat > conftest.S <<EOF
610#include "confdefs.h"
611/* Nothing whatsoever. */
612EOF
613if ${CC-cc} $CFLAGS -c conftest.S 2>/dev/null; then
614 libc_cv_need_minus_P=no
615else
616 libc_cv_need_minus_P=yes
617fi
618rm -f conftest*])
28f540f4
RM
619if test $libc_cv_need_minus_P = yes; then
620 config_vars="$config_vars
621asm-CPPFLAGS = -P # The assembler can't grok cpp's # line directives."
622fi
623
b8dc6a10
RM
624AC_CACHE_CHECK(for assembler global-symbol directive,
625 libc_cv_asm_global_directive, [dnl
9a70fcab
UD
626libc_cv_asm_global_directive=UNKNOWN
627for ac_globl in .globl .global; do
628 cat > conftest.s <<EOF
629.text
630${ac_globl} foo
ae1025be 631foo:
9a70fcab
UD
632EOF
633 if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
634 libc_cv_asm_global_directive=${ac_globl}
635 fi
636 rm -f conftest*
637 test $libc_cv_asm_global_directive != UNKNOWN && break
638done])
9a70fcab
UD
639if test $libc_cv_asm_global_directive = UNKNOWN; then
640 AC_MSG_ERROR(cannot determine asm global directive)
641else
642 AC_DEFINE_UNQUOTED(ASM_GLOBAL_DIRECTIVE, ${libc_cv_asm_global_directive})
643fi
644
b8dc6a10 645AC_CACHE_CHECK(for .set assembler directive, libc_cv_asm_set_directive, [dnl
9a70fcab 646cat > conftest.s <<EOF
e215c478 647.text
ae1025be 648foo:
df2a0c93 649.set glibc_conftest_frobozz,foo
9a70fcab 650$libc_cv_asm_global_directive glibc_conftest_frobozz
e215c478 651EOF
df2a0c93
RM
652# The alpha-dec-osf1 assembler gives only a warning for `.set'
653# (but it doesn't work), so we must do a linking check to be sure.
654cat > conftest1.c <<\EOF
655extern int glibc_conftest_frobozz;
656main () { printf ("%d\n", glibc_conftest_frobozz); }
657EOF
658if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
cb2f05ed 659 -o conftest conftest.s conftest1.c 1>&AC_FD_CC 2>&AC_FD_CC; then
e215c478
RM
660 libc_cv_asm_set_directive=yes
661else
662 libc_cv_asm_set_directive=no
663fi
65b3cbcb 664rm -f conftest*])
e215c478
RM
665if test $libc_cv_asm_set_directive = yes; then
666 AC_DEFINE(HAVE_ASM_SET_DIRECTIVE)
667fi
668
377a515b
UD
669AC_CACHE_CHECK(for .symver assembler directive, libc_cv_asm_symver_directive,
670[cat > conftest.s <<EOF
671.text
4cca6b86 672_sym:
377a515b
UD
673.symver _sym,sym@VERS
674EOF
675if ${CC-cc} -c $CFLAGS $CPPFLAGS conftest.s 1>&AC_FD_CC 2>&AC_FD_CC; then
676 libc_cv_asm_symver_directive=yes
677else
678 libc_cv_asm_symver_directive=no
679fi
680rm -f conftest*])
681AC_CACHE_CHECK(for ld --version-script, libc_cv_ld_version_script_option, [dnl
682if test $libc_cv_asm_symver_directive = yes; then
683 cat > conftest.s <<EOF
684.text
4cca6b86 685_sym:
377a515b
UD
686.symver _sym,sym@VERS
687EOF
688 cat > conftest.map <<EOF
f43ce637 689VERS_1 {
377a515b
UD
690 global: sym;
691};
f43ce637
UD
692
693VERS_2 {
694 global: sym;
695} VERS_1;
377a515b
UD
696EOF
697 if ${CC-cc} -c $CFLAGS $CPPFLAGS conftest.s 1>&AC_FD_CC 2>&AC_FD_CC; then
5ae3e846
UD
698 if AC_TRY_COMMAND([${CC-cc} $CFLAGS -shared -o conftest.so conftest.o
699 -nostartfiles -nostdlib
ae1025be
UD
700 -Wl,--version-script,conftest.map
701 1>&AC_FD_CC]);
377a515b
UD
702 then
703 libc_cv_ld_version_script_option=yes
704 else
705 libc_cv_ld_version_script_option=no
706 fi
707 else
708 libc_cv_ld_version_script_option=no
709 fi
710else
711 libc_cv_ld_version_script_option=no
712fi
713rm -f conftest*])
714if test $libc_cv_asm_symver_directive = yes &&
650425ce
UD
715 test $libc_cv_ld_version_script_option = yes &&
716 test $enable_versioning = yes; then
377a515b
UD
717 VERSIONING=yes
718 AC_DEFINE(DO_VERSIONING)
719else
720 VERSIONING=no
721fi
722AC_SUBST(VERSIONING)
723
f43ce637
UD
724if test $VERSIONING = no; then
725 echo "\
f4017d20 726*** WARNING: You should not compile GNU libc without versioning. Not using
f43ce637
UD
727*** versioning will introduce incompatibilities so that old binaries
728*** will not run anymore.
729*** For versioning you need recent binutils (binutils-2.8.1.0.17 or newer)."
730fi
fd26970f
UD
731if test $elf = yes; then
732 AC_CACHE_CHECK(for .previous assembler directive,
733 libc_cv_asm_previous_directive, [dnl
734 cat > conftest.s <<EOF
735.section foo_section
736.previous
737EOF
738 if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AC_FD_CC); then
739 libc_cv_asm_previous_directive=yes
740 else
741 libc_cv_asm_previous_directive=no
742 fi
743 rm -f conftest*])
744 if test $libc_cv_asm_previous_directive = yes; then
745 AC_DEFINE(HAVE_ASM_PREVIOUS_DIRECTIVE)
746 else
747 AC_CACHE_CHECK(for .popsection assembler directive,
748 libc_cv_asm_popsection_directive, [dnl
749 cat > conftest.s <<EOF
750.pushsection foo_section
751.popsection
752EOF
753 if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AC_FD_CC); then
754 libc_cv_asm_popsection_directive=yes
755 else
756 libc_cv_asm_popsection_directive=no
757 fi
758 rm -f conftest*])
759 if test $libc_cv_asm_popsection_directive = yes; then
760 AC_DEFINE(HAVE_ASM_POPSECTION_DIRECTIVE)
761 fi
762 fi
763fi
764
b8dc6a10
RM
765if test $elf != yes; then
766 AC_CACHE_CHECK(for .init and .fini sections, libc_cv_have_initfini,
767 [AC_TRY_COMPILE(, [asm (".section .init");
84724245
RM
768 asm (".section .fini");
769 asm (".text");],
b8dc6a10
RM
770 libc_cv_have_initfini=yes,
771 libc_cv_have_initfini=no)])
772 AC_SUBST(libc_cv_have_initfini)dnl
773 if test $libc_cv_have_initfini = yes; then
774 AC_DEFINE(HAVE_INITFINI)
775 fi
776fi
e215c478 777
9a0a462c
UD
778dnl AC_CHECK_ASM_UNDERSCORE([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
779AC_DEFUN(AC_CHECK_ASM_UNDERSCORE,
780[cat > conftest.$ac_ext <<EOF
781dnl This sometimes fails to find confdefs.h, for some reason.
782dnl [#]line __oline__ "[$]0"
783[#]line __oline__ "configure"
784#include "confdefs.h"
785void underscore_test(void) {
786return; }
787EOF
788if AC_TRY_EVAL(ac_compile); then
789 if grep _underscore_test conftest* >/dev/null; then
790 ifelse([$1], , :, [rm -f conftest*
791 $1])
792 else
793 ifelse([$2], , , [rm -f conftest*
794 $2])
795 fi
796else
797 echo "configure: failed program was:" >&AC_FD_CC
798 cat conftest.$ac_ext >&AC_FD_CC
799 ifelse([$2], , , [rm -f conftest*
800 $2])
801fi
802rm -f conftest*])
803
c224a18a
RM
804if test $elf = yes; then
805 libc_cv_asm_underscores=no
806else
9a0a462c
UD
807 if test $ac_cv_prog_cc_works = yes; then
808 AC_CACHE_CHECK(for _ prefix on C symbol names, libc_cv_asm_underscores,
809 [AC_TRY_LINK([asm ("_glibc_foobar:");], [glibc_foobar ();],
810 libc_cv_asm_underscores=yes,
811 libc_cv_asm_underscores=no)])
812 else
813 AC_CACHE_CHECK(for _ prefix on C symbol names, libc_cv_asm_underscores,
814 [AC_CHECK_ASM_UNDERSCORE(libc_cv_asm_underscores=yes,
815 libc_cv_asm_underscores=no)])
816 fi
c224a18a
RM
817fi
818if test $libc_cv_asm_underscores = no; then
819 AC_DEFINE(NO_UNDERSCORES)
820fi
821
822if test $elf = yes; then
823 libc_cv_weak_symbols=yes
9a97d1f7
UD
824fi
825
826AC_CACHE_CHECK(for assembler .weak directive, libc_cv_asm_weak_directive,
c224a18a
RM
827 [dnl
828cat > conftest.s <<EOF
829.text
830${libc_cv_asm_global_directive} foo
ae1025be 831foo:
c224a18a
RM
832.weak foo
833.weak bar; bar = foo
834EOF
9a97d1f7
UD
835if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
836 libc_cv_asm_weak_directive=yes
837else
838 libc_cv_asm_weak_directive=no
839fi
840rm -f conftest*])
c224a18a 841
c8cf0b14 842if test $libc_cv_asm_weak_directive = no; then
c224a18a
RM
843 AC_CACHE_CHECK(for assembler .weakext directive,
844 libc_cv_asm_weakext_directive,
845 [dnl
846cat > conftest.s <<EOF
847.text
848${libc_cv_asm_global_directive} foo
ae1025be 849foo:
f802accb
UD
850.weakext bar foo
851.weakext baz
852${libc_cv_asm_global_directive} baz
9a97d1f7 853baz:
c224a18a
RM
854EOF
855 if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
856 libc_cv_asm_weakext_directive=yes
857 else
858 libc_cv_asm_weakext_directive=no
859 fi
860 rm -f conftest*])
861
9a97d1f7 862fi # no .weak
c224a18a 863
ffcf9634 864if test $libc_cv_asm_weak_directive = yes; then
c224a18a 865 AC_DEFINE(HAVE_ASM_WEAK_DIRECTIVE)
ffcf9634 866elif test $libc_cv_asm_weakext_directive = yes; then
c224a18a
RM
867 AC_DEFINE(HAVE_ASM_WEAKEXT_DIRECTIVE)
868fi
869
a641835a
RM
870AC_CACHE_CHECK(for ld --no-whole-archive, libc_cv_ld_no_whole_archive, [dnl
871cat > conftest.c <<\EOF
5f0e6fc7 872_start () {}
dcf0671d
UD
873int __eh_pc;
874__throw () {}
a641835a 875EOF
dcea62dd
RM
876dnl No \ in command here because it ends up inside ''.
877if AC_TRY_COMMAND([${CC-cc} $CFLAGS
878 -nostdlib -nostartfiles -Wl,--no-whole-archive
ae1025be 879 -o conftest conftest.c 1>&AC_FD_CC]); then
a641835a
RM
880 libc_cv_ld_no_whole_archive=yes
881else
882 libc_cv_ld_no_whole_archive=no
883fi
884rm -f conftest*])
885AC_SUBST(libc_cv_ld_no_whole_archive)dnl
886
b236e99d
UD
887AC_CACHE_CHECK(for gcc -fno-exceptions, libc_cv_gcc_no_exceptions, [dnl
888cat > conftest.c <<\EOF
889_start () {}
890int __eh_pc;
891__throw () {}
892EOF
893dnl No \ in command here because it ends up inside ''.
894if AC_TRY_COMMAND([${CC-cc} $CFLAGS
895 -nostdlib -nostartfiles -fno-exceptions
ae1025be 896 -o conftest conftest.c 1>&AC_FD_CC]); then
b236e99d
UD
897 libc_cv_gcc_no_exceptions=yes
898else
899 libc_cv_gcc_no_exceptions=no
900fi
901rm -f conftest*])
902AC_SUBST(libc_cv_gcc_no_exceptions)dnl
903
d71b808a
UD
904if test "$base_machine" = alpha ; then
905AC_CACHE_CHECK(for function ..ng prefix, libc_cv_gcc_alpha_ng_prefix, [dnl
906cat > conftest.c <<\EOF
907foo () { }
908EOF
909dnl
9756dfe1 910if AC_TRY_COMMAND([${CC-cc} -S conftest.c -o - | fgrep "\$foo..ng" > /dev/null]);
d71b808a
UD
911then
912 libc_cv_gcc_alpha_ng_prefix=yes
913else
914 libc_cv_gcc_alpha_ng_prefix=no
915fi
916rm -f conftest* ])
917if test $libc_cv_gcc_alpha_ng_prefix = yes ; then
918 AC_DEFINE(ASM_ALPHA_NG_SYMBOL_PREFIX, "$")
919else
920 AC_DEFINE(ASM_ALPHA_NG_SYMBOL_PREFIX, "")
921fi
922fi
923
650425ce
UD
924AC_CACHE_CHECK(for DWARF2 unwind info support, libc_cv_gcc_dwarf2_unwind_info,
925[cat > conftest.c <<EOF
926#line __oline__ "configure"
927static char __EH_FRAME_BEGIN__[];
928_start ()
929{
9756dfe1 930#ifdef CHECK__register_frame
650425ce
UD
931 __register_frame (__EH_FRAME_BEGIN__);
932 __deregister_frame (__EH_FRAME_BEGIN__);
9756dfe1
UD
933#endif
934#ifdef CHECK__register_frame_info
935 __register_frame_info (__EH_FRAME_BEGIN__);
936 __deregister_frame_info (__EH_FRAME_BEGIN__);
937#endif
650425ce
UD
938}
939int __eh_pc;
940__throw () {}
941/* FIXME: this is fragile. */
942malloc () {}
943strcmp () {}
944strlen () {}
945memcpy () {}
946memset () {}
947free () {}
948abort () {}
dfd2257a 949__bzero () {}
650425ce
UD
950EOF
951dnl No \ in command here because it ends up inside ''.
9756dfe1 952if AC_TRY_COMMAND([${CC-cc} $CFLAGS -DCHECK__register_frame_info
650425ce
UD
953 -nostdlib -nostartfiles
954 -o conftest conftest.c -lgcc >&AC_FD_CC]); then
9756dfe1 955 libc_cv_gcc_dwarf2_unwind_info=static
650425ce
UD
956else
957 libc_cv_gcc_dwarf2_unwind_info=no
958fi
9756dfe1
UD
959if test $libc_cv_gcc_dwarf2_unwind_info = no; then
960 if AC_TRY_COMMAND([${CC-cc} $CFLAGS -DCHECK__register_frame
961 -nostdlib -nostartfiles
962 -o conftest conftest.c -lgcc >&AC_FD_CC]); then
963 libc_cv_gcc_dwarf2_unwind_info=yes
964 else
965 libc_cv_gcc_dwarf2_unwind_info=no
966 fi
967fi
650425ce 968rm -f conftest*])
9756dfe1
UD
969case $libc_cv_gcc_dwarf2_unwind_info in
970yes)
650425ce 971 AC_DEFINE(HAVE_DWARF2_UNWIND_INFO)
9756dfe1
UD
972 ;;
973static)
974 AC_DEFINE(HAVE_DWARF2_UNWIND_INFO)
975 AC_DEFINE(HAVE_DWARF2_UNWIND_INFO_STATIC)
976 ;;
977esac
650425ce 978
c224a18a
RM
979### End of automated tests.
980### Now run sysdeps configure fragments.
981
28f540f4
RM
982# sysdeps configure fragments may set these with files to be linked below.
983libc_link_dests=
984libc_link_sources=
985
cb343854
UD
986# They also can set these variables.
987ldd_rewrite_script=no
988
28f540f4
RM
989# Iterate over all the sysdep directories we will use, running their
990# configure fragments, and looking for a uname implementation.
991uname=
992for dir in $sysnames; do
57ba7bb4
UD
993 case $dir in
994 /*) dest=$dir ;;
995 *) dest=$srcdir/$dir ;;
996 esac
997 if test -r $dest/configure; then
998 AC_MSG_RESULT(running configure fragment for $dest)
999 . $dest/configure
28f540f4 1000 fi
4ca84cff 1001[
28f540f4 1002 if test -z "$uname"; then
e7f1f046
UD
1003 if test -r $dest/uname.c ||
1004 test -r $dest/uname.S ||
1005 { test -r $dest/syscalls.list &&
1006 grep '^uname[ ]' $dest/syscalls.list >/dev/null; }; then
b86199fb 1007 uname=$dir
4ca84cff 1008 fi
28f540f4 1009 fi
4ca84cff 1010]dnl
28f540f4
RM
1011done
1012
1013AC_LINK_FILES(`echo $libc_link_sources`, `echo $libc_link_dests`)
1014
1015# If we will use the generic uname implementation, we must figure out what
1016# it will say by examining the system, and write the results in config-name.h.
e7f1f046 1017if test "$uname" = "sysdeps/generic"; then
28f540f4
RM
1018
1019changequote(,)dnl
1020 uname_sysname=`echo $config_os | sed 's/[0-9.]*$//'`
1021changequote([,])dnl
1022 if test $uname_sysname != $config_os; then
1023 config_release=`echo $config_os | sed s/$uname_sysname//`
1024 fi
1025dnl
1026AC_DEFUN(LIBC_KERNEL_ID, [dnl
1027 if test -r /vmunix; then
1028 kernel_id=`strings /vmunix | grep UNIX`
1029 elif test -r /dynix; then
1030 kernel_id=`strings /dynix | grep DYNIX`
1031 else
1032 kernel_id=
1033 fi
1034])dnl
1035
b8dc6a10 1036 AC_CACHE_CHECK(OS release for uname, libc_cv_uname_release, [dnl
28f540f4
RM
1037AC_REQUIRE([LIBC_KERNEL_ID])dnl
1038changequote(,)dnl
1039 kernel_release=`echo "$kernel_id" | sed 's/^[^0-9.]*\([0-9.]*\).*$/\1/'`
1040changequote([,])dnl
1041 if test x`echo "$config_release" | sed "s/^$kernel_release//"` \
1042 != x$config_release; then
1043 # The configuration release is a substring of the kernel release.
1044 libc_cv_uname_release=$kernel_release
1045 elif test x$config_release != x; then
1046 libc_cv_uname_release=$config_release
1047 elif test x$kernel_release != x; then
1048 libc_cv_uname_release=$kernel_release
1049 else
1050 libc_cv_uname_release=unknown
1051 fi])
28f540f4
RM
1052 uname_release="$libc_cv_uname_release"
1053
b8dc6a10 1054 AC_CACHE_CHECK(OS version for uname, libc_cv_uname_version, [dnl
28f540f4
RM
1055AC_REQUIRE([LIBC_KERNEL_ID])dnl
1056changequote(,)dnl
1057 kernel_version=`echo "$kernel_id" | sed 's/^[^#]*#\([0-9]*\).*$/\1/'`
1058changequote([,])dnl
1059 if test -n "$kernel_version"; then
1060 libc_cv_uname_version="$kernel_version"
1061 else
1062 libc_cv_uname_version=unknown
1063 fi])
28f540f4
RM
1064 uname_version="$libc_cv_uname_version"
1065
1066AC_SUBST(uname_sysname) AC_SUBST(uname_release) AC_SUBST(uname_version)dnl
1067 config_uname=config-name.h:config-name.in
1068else
1069 # For non-generic uname, we don't need to create config-name.h at all.
1070 config_uname=
1071fi
1072
96aa2d94
RM
1073AC_MSG_CHECKING(stdio selection)
1074AC_SUBST(stdio)
1075case $stdio in
1076libio) AC_DEFINE(USE_IN_LIBIO) ;;
1077default) stdio=stdio ;;
1078esac
1079AC_MSG_RESULT($stdio)
1080
26b4d766
UD
1081AC_MSG_CHECKING(ldap selection)
1082AC_SUBST(LDAP)
1083case $add_ons in
1084*ldap*)
1085 ldap=yes
1086 LDAP=ldap ;;
1087*) ldap=no
1088 LDAP= ;;
1089esac
1090AC_MSG_RESULT($ldap)
1091
84384f5b
UD
1092AC_SUBST(libc_cv_slibdir)
1093AC_SUBST(libc_cv_sysconfdir)
1ef32c3d
UD
1094AC_SUBST(libc_cv_rootsbindir)
1095
1096AC_SUBST(has_ldconfig)
cb343854 1097AC_SUBST(ldd_rewrite_script)
84384f5b 1098
c224a18a 1099AC_SUBST(gnu_ld) AC_SUBST(gnu_as) AC_SUBST(elf)
28f540f4
RM
1100if test $gnu_ld = yes; then
1101 AC_DEFINE(HAVE_GNU_LD)
1102fi
1103if test $gnu_as = yes; then
1104 AC_DEFINE(HAVE_GNU_AS)
1105fi
1106if test $elf = yes; then
1107 AC_DEFINE(HAVE_ELF)
1108fi
28f540f4 1109
650425ce 1110AC_SUBST(static)
ff3d7ed3
RM
1111AC_SUBST(shared)
1112if test $shared = default; then
1113 if test $gnu_ld = yes; then
1114 shared=$elf
f65fd747
UD
1115 else
1116 # For now we do not assume shared libs are available. In future more
1117 # tests might become available.
1118 shared=no
ff3d7ed3
RM
1119 fi
1120fi
cc3fa755
UD
1121
1122AC_CACHE_CHECK([whether -fPIC is default], pic_default,
1123[pic_default=yes
1124cat > conftest.c <<EOF
9756dfe1 1125#if defined __PIC__ || defined __pic__ || defined PIC || defined pic
cc3fa755
UD
1126# error PIC is default.
1127#endif
1128EOF
1129if eval "${CC-cc} -S conftest.c 2>&AC_FD_CC 1>&AC_FD_CC"; then
1130 pic_default=no
1131fi
1132rm -f conftest.*])
1133AC_SUBST(pic_default)
1134
ff3d7ed3
RM
1135AC_SUBST(profile)
1136AC_SUBST(omitfp)
5a97622d 1137AC_SUBST(bounded)
5107cf1d 1138AC_SUBST(static_nss)
5ae3e846 1139AC_SUBST(nopic_initfini)
ff3d7ed3 1140
edf5b2d7
UD
1141AC_SUBST(DEFINES)
1142
28f540f4
RM
1143if test "`(cd $srcdir; pwd)`" = "`pwd`"; then
1144 config_makefile=
1145else
1146 config_makefile=Makefile
1147fi
1148
df4ef2ab
UD
1149VERSION=`sed -e 's/^#define VERSION "\([^"]*\)"/\1/p' -e d < $srcdir/version.h`
1150AC_SUBST(VERSION)
1151
ae1025be 1152AC_OUTPUT(config.make glibcbug ${config_makefile} ${config_uname}, ,
5107cf1d 1153 [echo '$config_vars' >> config.make; test -d bits || mkdir bits])