* linux_threads.c: Don't reference __pthread_initial_thread_bos.
[official-gcc.git] / boehm-gc / aclocal.m4
blob82da4b65b1ea979dd9935ef99f237438939c5993
1 dnl aclocal.m4 generated automatically by aclocal 1.4
3 dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
4 dnl This file is free software; the Free Software Foundation
5 dnl gives unlimited permission to copy and/or distribute it,
6 dnl with or without modifications, as long as this notice is preserved.
8 dnl This program is distributed in the hope that it will be useful,
9 dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
10 dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
11 dnl PARTICULAR PURPOSE.
13 # FIXME: We temporarily define our own version of AC_PROG_CC.  This is
14 # copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS.  We
15 # are probably using a cross compiler, which will not be able to fully
16 # link an executable.  This should really be fixed in autoconf
17 # itself.
19 AC_DEFUN(BOEHM_CONFIGURE,
21 dnl Default to --enable-multilib
22 AC_ARG_ENABLE(multilib,
23 [  --enable-multilib         build many library versions (default)],
24 [case "${enableval}" in
25   yes) multilib=yes ;;
26   no)  multilib=no ;;
27   *)   AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
28  esac], [multilib=yes])dnl
30 dnl We may get other options which we don't document:
31 dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
33 if test "[$]{srcdir}" = "."; then
34   if test "[$]{with_target_subdir}" != "."; then
35     boehm_gc_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1"
36   else
37     boehm_gc_basedir="[$]{srcdir}/[$]{with_multisrctop}$1"
38   fi
39 else
40   boehm_gc_basedir="[$]{srcdir}/$1"
42 AC_SUBST(boehm_gc_basedir)
44 AC_CANONICAL_HOST
46 AM_INIT_AUTOMAKE(boehm-gc, 4.13a2, no-define)
48 # FIXME: We temporarily define our own version of AC_PROG_CC.  This is
49 # copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS.  We
50 # are probably using a cross compiler, which will not be able to fully
51 # link an executable.  This should really be fixed in autoconf
52 # itself.
54 AC_DEFUN(LIB_AC_PROG_CC,
55 [AC_BEFORE([$0], [AC_PROG_CPP])dnl
56 AC_CHECK_PROG(CC, gcc, gcc)
57 if test -z "$CC"; then
58   AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
59   test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
62 AC_PROG_CC_GNU
64 if test $ac_cv_prog_gcc = yes; then
65   GCC=yes
66 dnl Check whether -g works, even if CFLAGS is set, in case the package
67 dnl plays around with CFLAGS (such as to build both debugging and
68 dnl normal versions of a library), tasteless as that idea is.
69   ac_test_CFLAGS="${CFLAGS+set}"
70   ac_save_CFLAGS="$CFLAGS"
71   CFLAGS=
72   AC_PROG_CC_G
73   if test "$ac_test_CFLAGS" = set; then
74     CFLAGS="$ac_save_CFLAGS"
75   elif test $ac_cv_prog_cc_g = yes; then
76     CFLAGS="-g -O2"
77   else
78     CFLAGS="-O2"
79   fi
80 else
81   GCC=
82   test "${CFLAGS+set}" = set || CFLAGS="-g"
86 LIB_AC_PROG_CC
88 # Likewise for AC_PROG_CXX.
89 AC_DEFUN(LIB_AC_PROG_CXX,
90 [AC_BEFORE([$0], [AC_PROG_CXXCPP])dnl
91 AC_CHECK_PROGS(CXX, $CCC c++ g++ gcc CC cxx cc++, gcc)
92 test -z "$CXX" && AC_MSG_ERROR([no acceptable c++ found in \$PATH])
94 AC_PROG_CXX_GNU
96 if test $ac_cv_prog_gxx = yes; then
97   GXX=yes
98 dnl Check whether -g works, even if CXXFLAGS is set, in case the package
99 dnl plays around with CXXFLAGS (such as to build both debugging and
100 dnl normal versions of a library), tasteless as that idea is.
101   ac_test_CXXFLAGS="${CXXFLAGS+set}"
102   ac_save_CXXFLAGS="$CXXFLAGS"
103   CXXFLAGS=
104   AC_PROG_CXX_G
105   if test "$ac_test_CXXFLAGS" = set; then
106     CXXFLAGS="$ac_save_CXXFLAGS"
107   elif test $ac_cv_prog_cxx_g = yes; then
108     CXXFLAGS="-g -O2"
109   else
110     CXXFLAGS="-O2"
111   fi
112 else
113   GXX=
114   test "${CXXFLAGS+set}" = set || CXXFLAGS="-g"
118 LIB_AC_PROG_CXX
120 # AC_CHECK_TOOL does AC_REQUIRE (AC_CANONICAL_BUILD).  If we don't
121 # run it explicitly here, it will be run implicitly before
122 # NEWLIB_CONFIGURE, which doesn't work because that means that it will
123 # be run before AC_CANONICAL_HOST.
124 AC_CANONICAL_BUILD
126 AC_CHECK_TOOL(AS, as)
127 AC_CHECK_TOOL(AR, ar)
128 AC_CHECK_TOOL(RANLIB, ranlib, :)
130 AC_PROG_INSTALL
132 AM_MAINTAINER_MODE
134 # We need AC_EXEEXT to keep automake happy in cygnus mode.  However,
135 # at least currently, we never actually build a program, so we never
136 # need to use $(EXEEXT).  Moreover, the test for EXEEXT normally
137 # fails, because we are probably configuring with a cross compiler
138 # which can't create executables.  So we include AC_EXEEXT to keep
139 # automake happy, but we don't execute it, since we don't care about
140 # the result.
141 if false; then
142   AC_EXEEXT
145 . [$]{boehm_gc_basedir}/configure.host
147 case [$]{boehm_gc_basedir} in
148 /* | [A-Za-z]:[/\\]*) boehm_gc_flagbasedir=[$]{boehm_gc_basedir} ;;
149 *) boehm_gc_flagbasedir='[$](top_builddir)/'[$]{boehm_gc_basedir} ;;
150 esac
152 boehm_gc_cflags="[$]{boehm_gc_cflags} -I"'[$](top_builddir)'"/$1/targ-include -I[$]{boehm_gc_flagbasedir}/libc/include"
153 case "${host}" in
154   *-*-cygwin32*)
155     boehm_gc_cflags="[$]{boehm_gc_cflags} -I[$]{boehm_gc_flagbasedir}/../winsup/include"
156     ;;
157 esac
159 boehm_gc_cflags="[$]{boehm_gc_cflags} -fno-builtin"
161 BOEHM_GC_CFLAGS=${boehm_gc_cflags}
162 AC_SUBST(BOEHM_GC_CFLAGS)
165 ))))
167 # Do all the work for Automake.  This macro actually does too much --
168 # some checks are only needed if your package does certain things.
169 # But this isn't really a big deal.
171 # serial 1
173 dnl Usage:
174 dnl AM_INIT_AUTOMAKE(package,version, [no-define])
176 AC_DEFUN(AM_INIT_AUTOMAKE,
177 [AC_REQUIRE([AC_PROG_INSTALL])
178 PACKAGE=[$1]
179 AC_SUBST(PACKAGE)
180 VERSION=[$2]
181 AC_SUBST(VERSION)
182 dnl test to see if srcdir already configured
183 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
184   AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
186 ifelse([$3],,
187 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
188 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
189 AC_REQUIRE([AM_SANITY_CHECK])
190 AC_REQUIRE([AC_ARG_PROGRAM])
191 dnl FIXME This is truly gross.
192 missing_dir=`cd $ac_aux_dir && pwd`
193 AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
194 AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
195 AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
196 AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
197 AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
198 AC_REQUIRE([AC_PROG_MAKE_SET])])
201 # Check to make sure that the build environment is sane.
204 AC_DEFUN(AM_SANITY_CHECK,
205 [AC_MSG_CHECKING([whether build environment is sane])
206 # Just in case
207 sleep 1
208 echo timestamp > conftestfile
209 # Do `set' in a subshell so we don't clobber the current shell's
210 # arguments.  Must try -L first in case configure is actually a
211 # symlink; some systems play weird games with the mod time of symlinks
212 # (eg FreeBSD returns the mod time of the symlink's containing
213 # directory).
214 if (
215    set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
216    if test "[$]*" = "X"; then
217       # -L didn't work.
218       set X `ls -t $srcdir/configure conftestfile`
219    fi
220    if test "[$]*" != "X $srcdir/configure conftestfile" \
221       && test "[$]*" != "X conftestfile $srcdir/configure"; then
223       # If neither matched, then we have a broken ls.  This can happen
224       # if, for instance, CONFIG_SHELL is bash and it inherits a
225       # broken ls alias from the environment.  This has actually
226       # happened.  Such a system could not be considered "sane".
227       AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
228 alias in your environment])
229    fi
231    test "[$]2" = conftestfile
232    )
233 then
234    # Ok.
235    :
236 else
237    AC_MSG_ERROR([newly created file is older than distributed files!
238 Check your system clock])
240 rm -f conftest*
241 AC_MSG_RESULT(yes)])
243 dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
244 dnl The program must properly implement --version.
245 AC_DEFUN(AM_MISSING_PROG,
246 [AC_MSG_CHECKING(for working $2)
247 # Run test in a subshell; some versions of sh will print an error if
248 # an executable is not found, even if stderr is redirected.
249 # Redirect stdin to placate older versions of autoconf.  Sigh.
250 if ($2 --version) < /dev/null > /dev/null 2>&1; then
251    $1=$2
252    AC_MSG_RESULT(found)
253 else
254    $1="$3/missing $2"
255    AC_MSG_RESULT(missing)
257 AC_SUBST($1)])
259 # Add --enable-maintainer-mode option to configure.
260 # From Jim Meyering
262 # serial 1
264 AC_DEFUN(AM_MAINTAINER_MODE,
265 [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
266   dnl maintainer-mode is disabled by default
267   AC_ARG_ENABLE(maintainer-mode,
268 [  --enable-maintainer-mode enable make rules and dependencies not useful
269                           (and sometimes confusing) to the casual installer],
270       USE_MAINTAINER_MODE=$enableval,
271       USE_MAINTAINER_MODE=no)
272   AC_MSG_RESULT($USE_MAINTAINER_MODE)
273   AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
274   MAINT=$MAINTAINER_MODE_TRUE
275   AC_SUBST(MAINT)dnl
279 # Define a conditional.
281 AC_DEFUN(AM_CONDITIONAL,
282 [AC_SUBST($1_TRUE)
283 AC_SUBST($1_FALSE)
284 if $2; then
285   $1_TRUE=
286   $1_FALSE='#'
287 else
288   $1_TRUE='#'
289   $1_FALSE=
290 fi])
293 # serial 25 AM_PROG_LIBTOOL
294 AC_DEFUN(AM_PROG_LIBTOOL,
295 [AC_REQUIRE([AM_ENABLE_SHARED])dnl
296 AC_REQUIRE([AM_ENABLE_STATIC])dnl
297 AC_REQUIRE([AC_CANONICAL_HOST])dnl
298 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
299 AC_REQUIRE([AC_PROG_RANLIB])dnl
300 AC_REQUIRE([AC_PROG_CC])dnl
301 AC_REQUIRE([AM_PROG_LD])dnl
302 AC_REQUIRE([AM_PROG_NM])dnl
303 AC_REQUIRE([AC_PROG_LN_S])dnl
305 # Always use our own libtool.
306 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
307 AC_SUBST(LIBTOOL)dnl
309 # Check for any special flags to pass to ltconfig.
310 libtool_flags=
311 test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
312 test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
313 test "$silent" = yes && libtool_flags="$libtool_flags --silent"
314 test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
315 test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
317 # Some flags need to be propagated to the compiler or linker for good
318 # libtool support.
319 case "$host" in
320 *-*-irix6*)
321   # Find out which ABI we are using.
322   echo '[#]line __oline__ "configure"' > conftest.$ac_ext
323   if AC_TRY_EVAL(ac_compile); then
324     case "`/usr/bin/file conftest.o`" in
325     *32-bit*)
326       LD="${LD-ld} -32"
327       ;;
328     *N32*)
329       LD="${LD-ld} -n32"
330       ;;
331     *64-bit*)
332       LD="${LD-ld} -64"
333       ;;
334     esac
335   fi
336   rm -rf conftest*
337   ;;
339 *-*-sco3.2v5*)
340   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
341   CFLAGS="$CFLAGS -belf"
342   ;;
344 *-*-cygwin32*)
345   AM_SYS_LIBTOOL_CYGWIN32
346   ;;
348 esac
350 # Actually configure libtool.  ac_aux_dir is where install-sh is found.
351 CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
352 LD="$LD" NM="$NM" RANLIB="$RANLIB" LN_S="$LN_S" \
353 DLLTOOL="$DLLTOOL" AS="$AS" \
354 ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
355 $libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \
356 || AC_MSG_ERROR([libtool configure failed])
358 # Redirect the config.log output again, so that the ltconfig log is not
359 # clobbered by the next message.
360 exec 5>>./config.log
363 # AM_ENABLE_SHARED - implement the --enable-shared flag
364 # Usage: AM_ENABLE_SHARED[(DEFAULT)]
365 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
366 #   `yes'.
367 AC_DEFUN(AM_ENABLE_SHARED,
368 [define([AM_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
369 AC_ARG_ENABLE(shared,
370 changequote(<<, >>)dnl
371 <<  --enable-shared[=PKGS]  build shared libraries [default=>>AM_ENABLE_SHARED_DEFAULT],
372 changequote([, ])dnl
373 [p=${PACKAGE-default}
374 case "$enableval" in
375 yes) enable_shared=yes ;;
376 no) enable_shared=no ;;
378   enable_shared=no
379   # Look at the argument we got.  We use all the common list separators.
380   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
381   for pkg in $enableval; do
382     if test "X$pkg" = "X$p"; then
383       enable_shared=yes
384     fi
385   done
386   IFS="$ac_save_ifs"
387   ;;
388 esac],
389 enable_shared=AM_ENABLE_SHARED_DEFAULT)dnl
392 # AM_DISABLE_SHARED - set the default shared flag to --disable-shared
393 AC_DEFUN(AM_DISABLE_SHARED,
394 [AM_ENABLE_SHARED(no)])
396 # AM_DISABLE_STATIC - set the default static flag to --disable-static
397 AC_DEFUN(AM_DISABLE_STATIC,
398 [AM_ENABLE_STATIC(no)])
400 # AM_ENABLE_STATIC - implement the --enable-static flag
401 # Usage: AM_ENABLE_STATIC[(DEFAULT)]
402 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
403 #   `yes'.
404 AC_DEFUN(AM_ENABLE_STATIC,
405 [define([AM_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
406 AC_ARG_ENABLE(static,
407 changequote(<<, >>)dnl
408 <<  --enable-static[=PKGS]  build static libraries [default=>>AM_ENABLE_STATIC_DEFAULT],
409 changequote([, ])dnl
410 [p=${PACKAGE-default}
411 case "$enableval" in
412 yes) enable_static=yes ;;
413 no) enable_static=no ;;
415   enable_static=no
416   # Look at the argument we got.  We use all the common list separators.
417   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
418   for pkg in $enableval; do
419     if test "X$pkg" = "X$p"; then
420       enable_static=yes
421     fi
422   done
423   IFS="$ac_save_ifs"
424   ;;
425 esac],
426 enable_static=AM_ENABLE_STATIC_DEFAULT)dnl
430 # AM_PROG_LD - find the path to the GNU or non-GNU linker
431 AC_DEFUN(AM_PROG_LD,
432 [AC_ARG_WITH(gnu-ld,
433 [  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
434 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
435 AC_REQUIRE([AC_PROG_CC])
436 ac_prog=ld
437 if test "$ac_cv_prog_gcc" = yes; then
438   # Check if gcc -print-prog-name=ld gives a path.
439   AC_MSG_CHECKING([for ld used by GCC])
440   ac_prog=`($CC -print-prog-name=ld) 2>&5`
441   case "$ac_prog" in
442   # Accept absolute paths.
443 changequote(,)dnl
444   /* | [A-Za-z]:\\*)
445 changequote([,])dnl
446     test -z "$LD" && LD="$ac_prog"
447     ;;
448   "")
449     # If it fails, then pretend we aren't using GCC.
450     ac_prog=ld
451     ;;
452   *)
453     # If it is relative, then search for the first ld in PATH.
454     with_gnu_ld=unknown
455     ;;
456   esac
457 elif test "$with_gnu_ld" = yes; then
458   AC_MSG_CHECKING([for GNU ld])
459 else
460   AC_MSG_CHECKING([for non-GNU ld])
462 AC_CACHE_VAL(ac_cv_path_LD,
463 [if test -z "$LD"; then
464   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
465   for ac_dir in $PATH; do
466     test -z "$ac_dir" && ac_dir=.
467     if test -f "$ac_dir/$ac_prog"; then
468       ac_cv_path_LD="$ac_dir/$ac_prog"
469       # Check to see if the program is GNU ld.  I'd rather use --version,
470       # but apparently some GNU ld's only accept -v.
471       # Break only if it was the GNU/non-GNU ld that we prefer.
472       if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
473         test "$with_gnu_ld" != no && break
474       else
475         test "$with_gnu_ld" != yes && break
476       fi
477     fi
478   done
479   IFS="$ac_save_ifs"
480 else
481   ac_cv_path_LD="$LD" # Let the user override the test with a path.
482 fi])
483 LD="$ac_cv_path_LD"
484 if test -n "$LD"; then
485   AC_MSG_RESULT($LD)
486 else
487   AC_MSG_RESULT(no)
489 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
490 AC_SUBST(LD)
491 AM_PROG_LD_GNU
494 AC_DEFUN(AM_PROG_LD_GNU,
495 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
496 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
497 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
498   ac_cv_prog_gnu_ld=yes
499 else
500   ac_cv_prog_gnu_ld=no
501 fi])
504 # AM_PROG_NM - find the path to a BSD-compatible name lister
505 AC_DEFUN(AM_PROG_NM,
506 [AC_MSG_CHECKING([for BSD-compatible nm])
507 AC_CACHE_VAL(ac_cv_path_NM,
508 [if test -n "$NM"; then
509   # Let the user override the test.
510   ac_cv_path_NM="$NM"
511 else
512   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
513   for ac_dir in /usr/ucb /usr/ccs/bin $PATH /bin; do
514     test -z "$ac_dir" && ac_dir=.
515     if test -f $ac_dir/nm; then
516       # Check to see if the nm accepts a BSD-compat flag.
517       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
518       #   nm: unknown option "B" ignored
519       if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
520         ac_cv_path_NM="$ac_dir/nm -B"
521       elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
522         ac_cv_path_NM="$ac_dir/nm -p"
523       else
524         ac_cv_path_NM="$ac_dir/nm"
525       fi
526       break
527     fi
528   done
529   IFS="$ac_save_ifs"
530   test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
531 fi])
532 NM="$ac_cv_path_NM"
533 AC_MSG_RESULT([$NM])
534 AC_SUBST(NM)
537 # AM_SYS_LIBTOOL_CYGWIN32 - find tools needed on cygwin32
538 AC_DEFUN(AM_SYS_LIBTOOL_CYGWIN32,
539 [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
540 AC_CHECK_TOOL(AS, as, false)