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 dnl On the NeXT, #including <utime.h> doesn't give you a definition for
14 dnl struct utime, unless you #define _POSIX_SOURCE.
16 AC_DEFUN(GUILE_STRUCT_UTIMBUF, [
17 AC_CACHE_CHECK([whether we need POSIX to get struct utimbuf],
18 guile_cv_struct_utimbuf_needs_posix,
21 #include <sys/utime.h>
27 guile_cv_struct_utimbuf_needs_posix=no,
28 guile_cv_struct_utimbuf_needs_posix=yes)])
29 if test "$guile_cv_struct_utimbuf_needs_posix" = yes; then
30 AC_DEFINE(UTIMBUF_NEEDS_POSIX)
37 dnl Apparently, at CMU they have a weird version of libc.h that is
38 dnl installed in /usr/local/include and conflicts with unistd.h.
39 dnl In these situations, we should not #include libc.h.
40 dnl This test arranges to #define LIBC_H_WITH_UNISTD_H iff libc.h is
41 dnl present on the system, and is safe to #include.
43 AC_DEFUN([GUILE_HEADER_LIBC_WITH_UNISTD],
45 AC_CHECK_HEADERS(libc.h unistd.h)
47 "whether libc.h and unistd.h can be included together",
48 guile_cv_header_libc_with_unistd,
50 if test "$ac_cv_header_libc_h" = "no"; then
51 guile_cv_header_libc_with_unistd="no"
52 elif test "$ac_cv_header_unistd.h" = "no"; then
53 guile_cv_header_libc_with_unistd="yes"
61 [guile_cv_header_libc_with_unistd=yes],
62 [guile_cv_header_libc_with_unistd=no]
67 if test "$guile_cv_header_libc_with_unistd" = yes; then
68 AC_DEFINE(LIBC_H_WITH_UNISTD_H)
75 dnl This is needed when we want to check for the same function repeatedly
76 dnl with other parameters, such as libraries, varying.
78 dnl GUILE_NAMED_CHECK_FUNC(FUNCTION, TESTNAME,
79 dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
80 AC_DEFUN(GUILE_NAMED_CHECK_FUNC,
81 [AC_MSG_CHECKING([for $1])
82 AC_CACHE_VAL(ac_cv_func_$1_$2,
84 dnl Don't include <ctype.h> because on OSF/1 3.0 it includes <sys/types.h>
85 dnl which includes <sys/select.h> which contains a prototype for
86 dnl select. Similarly for bzero.
87 [/* System header to define __stub macros and hopefully few prototypes,
88 which can conflict with char $1(); below. */
90 /* Override any gcc2 internal prototype to avoid an error. */
91 ]ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus
95 [/* We use char because int might match the return type of a gcc2
96 builtin and then its argument prototype would still apply. */
99 /* The GNU C library defines this for functions which it implements
100 to always fail with ENOSYS. Some functions are actually named
101 something starting with __ and the normal name is an alias. */
102 #if defined (__stub_$1) || defined (__stub___$1)
107 ], eval "ac_cv_func_$1_$2=yes", eval "ac_cv_func_$1_$2=no")])
108 if eval "test \"`echo '$ac_cv_func_'$1'_'$2`\" = yes"; then
110 ifelse([$3], , :, [$3])
120 dnl Check checks whether dlsym (if present) requires a leading underscore.
121 dnl Written by Dan Hagerty <hag@ai.mit.edu> for scsh-0.5.0.
122 AC_DEFUN(GUILE_DLSYM_USCORE, [
123 AC_MSG_CHECKING(for underscore before symbols)
124 AC_CACHE_VAL(guile_cv_uscore,[
125 echo "main(){int i=1;}
126 fnord(){int i=23; int ltuae=42;}" > conftest.c
127 ${CC} conftest.c > /dev/null
128 if (nm a.out | grep _fnord) > /dev/null; then
133 AC_MSG_RESULT($guile_cv_uscore)
134 rm -f conftest.c a.out
136 if test $guile_cv_uscore = yes; then
139 if test $ac_cv_func_dlopen = yes -o $ac_cv_lib_dl_dlopen = yes ; then
140 AC_MSG_CHECKING(whether dlsym always adds an underscore for us)
141 AC_CACHE_VAL(guile_cv_dlsym_adds_uscore,AC_TRY_RUN( [
145 main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY);
146 if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
147 if(ptr1 && !ptr2) exit(0); } exit(1); }
148 ], [guile_cv_dlsym_adds_uscore=yes
149 AC_DEFINE(DLSYM_ADDS_USCORE) ], guile_cv_dlsym_adds_uscore=no,
150 guile_cv_dlsym_adds_uscore=no))
152 AC_MSG_RESULT($guile_cv_dlsym_adds_uscore)
157 # Do all the work for Automake. This macro actually does too much --
158 # some checks are only needed if your package does certain things.
159 # But this isn't really a big deal.
164 dnl AM_INIT_AUTOMAKE(package,version, [no-define])
166 AC_DEFUN(AM_INIT_AUTOMAKE,
167 [AC_REQUIRE([AC_PROG_INSTALL])
172 dnl test to see if srcdir already configured
173 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
174 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
177 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
178 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
179 AC_REQUIRE([AM_SANITY_CHECK])
180 AC_REQUIRE([AC_ARG_PROGRAM])
181 dnl FIXME This is truly gross.
182 missing_dir=`cd $ac_aux_dir && pwd`
183 AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
184 AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
185 AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
186 AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
187 AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
188 AC_REQUIRE([AC_PROG_MAKE_SET])])
191 # Check to make sure that the build environment is sane.
194 AC_DEFUN(AM_SANITY_CHECK,
195 [AC_MSG_CHECKING([whether build environment is sane])
198 echo timestamp > conftestfile
199 # Do `set' in a subshell so we don't clobber the current shell's
200 # arguments. Must try -L first in case configure is actually a
201 # symlink; some systems play weird games with the mod time of symlinks
202 # (eg FreeBSD returns the mod time of the symlink's containing
205 set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
206 if test "[$]*" = "X"; then
208 set X `ls -t $srcdir/configure conftestfile`
210 if test "[$]*" != "X $srcdir/configure conftestfile" \
211 && test "[$]*" != "X conftestfile $srcdir/configure"; then
213 # If neither matched, then we have a broken ls. This can happen
214 # if, for instance, CONFIG_SHELL is bash and it inherits a
215 # broken ls alias from the environment. This has actually
216 # happened. Such a system could not be considered "sane".
217 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
218 alias in your environment])
221 test "[$]2" = conftestfile
227 AC_MSG_ERROR([newly created file is older than distributed files!
228 Check your system clock])
233 dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
234 dnl The program must properly implement --version.
235 AC_DEFUN(AM_MISSING_PROG,
236 [AC_MSG_CHECKING(for working $2)
237 # Run test in a subshell; some versions of sh will print an error if
238 # an executable is not found, even if stderr is redirected.
239 # Redirect stdin to placate older versions of autoconf. Sigh.
240 if ($2 --version) < /dev/null > /dev/null 2>&1; then
245 AC_MSG_RESULT(missing)
249 # Add --enable-maintainer-mode option to configure.
254 AC_DEFUN(AM_MAINTAINER_MODE,
255 [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
256 dnl maintainer-mode is disabled by default
257 AC_ARG_ENABLE(maintainer-mode,
258 [ --enable-maintainer-mode enable make rules and dependencies not useful
259 (and sometimes confusing) to the casual installer],
260 USE_MAINTAINER_MODE=$enableval,
261 USE_MAINTAINER_MODE=no)
262 AC_MSG_RESULT($USE_MAINTAINER_MODE)
263 AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
264 MAINT=$MAINTAINER_MODE_TRUE
269 # Define a conditional.
271 AC_DEFUN(AM_CONDITIONAL,
282 # Like AC_CONFIG_HEADER, but automatically create stamp file.
284 AC_DEFUN(AM_CONFIG_HEADER,
286 AC_CONFIG_HEADER([$1])
287 dnl When config.status generates a header, we must update the stamp-h file.
288 dnl This file resides in the same directory as the config header
289 dnl that is generated. We must strip everything past the first ":",
290 dnl and everything past the last "/".
291 AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
292 ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
293 <<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
295 for am_file in <<$1>>; do
296 case " <<$>>CONFIG_HEADERS " in
297 *" <<$>>am_file "*<<)>>
298 echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
301 am_indx=`expr "<<$>>am_indx" + 1`
306 # serial 35 AC_PROG_LIBTOOL
307 AC_DEFUN(AC_PROG_LIBTOOL,
308 [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
310 # Save cache, so that ltconfig can load it
313 # Actually configure libtool. ac_aux_dir is where install-sh is found.
314 CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
315 LD="$LD" NM="$NM" RANLIB="$RANLIB" LN_S="$LN_S" \
316 DLLTOOL="$DLLTOOL" AS="$AS" \
317 ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
318 $libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \
319 || AC_MSG_ERROR([libtool configure failed])
321 # Reload cache, that may have been modified by ltconfig
324 # This can be used to rebuild libtool when needed
325 LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
327 # Always use our own libtool.
328 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
331 # Redirect the config.log output again, so that the ltconfig log is not
332 # clobbered by the next message.
336 AC_DEFUN(AC_LIBTOOL_SETUP,
338 AC_REQUIRE([AC_ENABLE_SHARED])dnl
339 AC_REQUIRE([AC_ENABLE_STATIC])dnl
340 AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
341 AC_REQUIRE([AC_CANONICAL_HOST])dnl
342 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
343 AC_REQUIRE([AC_PROG_RANLIB])dnl
344 AC_REQUIRE([AC_PROG_CC])dnl
345 AC_REQUIRE([AC_PROG_LD])dnl
346 AC_REQUIRE([AC_PROG_NM])dnl
347 AC_REQUIRE([AC_SYS_NM_PARSE])dnl
348 AC_REQUIRE([AC_SYS_SYMBOL_UNDERSCORE])dnl
349 AC_REQUIRE([AC_PROG_LN_S])dnl
352 # Check for any special flags to pass to ltconfig.
353 libtool_flags="--cache-file=$cache_file"
354 test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
355 test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
356 test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
357 test "$lt_dlopen" = yes && libtool_flags="$libtool_flags --enable-dlopen"
358 test "$silent" = yes && libtool_flags="$libtool_flags --silent"
359 test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
360 test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
362 # Some flags need to be propagated to the compiler or linker for good
366 # Find out which ABI we are using.
367 echo '[#]line __oline__ "configure"' > conftest.$ac_ext
368 if AC_TRY_EVAL(ac_compile); then
369 case "`/usr/bin/file conftest.o`" in
385 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
386 SAVE_CFLAGS="$CFLAGS"
387 CFLAGS="$CFLAGS -belf"
388 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
389 [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
390 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
391 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
392 CFLAGS="$SAVE_CFLAGS"
397 AC_SYS_LIBTOOL_CYGWIN
402 # enable the --disable-libtool-lock switch
404 AC_ARG_ENABLE(libtool-lock,
405 [ --disable-libtool-lock force libtool not to do file locking],
406 need_locks=$enableval,
409 if test x"$need_locks" = xno; then
410 libtool_flags="$libtool_flags --disable-lock"
414 # AC_LIBTOOL_DLOPEN - check for dlopen support
415 AC_DEFUN(AC_LIBTOOL_DLOPEN, [lt_dlopen=yes])
417 # AC_ENABLE_SHARED - implement the --enable-shared flag
418 # Usage: AC_ENABLE_SHARED[(DEFAULT)]
419 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
421 AC_DEFUN(AC_ENABLE_SHARED,
422 [define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
423 AC_ARG_ENABLE(shared,
424 changequote(<<, >>)dnl
425 << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
427 [p=${PACKAGE-default}
429 yes) enable_shared=yes ;;
430 no) enable_shared=no ;;
433 # Look at the argument we got. We use all the common list separators.
434 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
435 for pkg in $enableval; do
436 if test "X$pkg" = "X$p"; then
443 enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
446 # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
447 AC_DEFUN(AC_DISABLE_SHARED,
448 [AC_ENABLE_SHARED(no)])
450 # AC_ENABLE_STATIC - implement the --enable-static flag
451 # Usage: AC_ENABLE_STATIC[(DEFAULT)]
452 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
454 AC_DEFUN(AC_ENABLE_STATIC,
455 [define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
456 AC_ARG_ENABLE(static,
457 changequote(<<, >>)dnl
458 << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
460 [p=${PACKAGE-default}
462 yes) enable_static=yes ;;
463 no) enable_static=no ;;
466 # Look at the argument we got. We use all the common list separators.
467 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
468 for pkg in $enableval; do
469 if test "X$pkg" = "X$p"; then
476 enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
479 # AC_DISABLE_STATIC - set the default static flag to --disable-static
480 AC_DEFUN(AC_DISABLE_STATIC,
481 [AC_ENABLE_STATIC(no)])
484 # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
485 # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
486 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
488 AC_DEFUN(AC_ENABLE_FAST_INSTALL,
489 [define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
490 AC_ARG_ENABLE(fast-install,
491 changequote(<<, >>)dnl
492 << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
494 [p=${PACKAGE-default}
496 yes) enable_fast_install=yes ;;
497 no) enable_fast_install=no ;;
499 enable_fast_install=no
500 # Look at the argument we got. We use all the common list separators.
501 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
502 for pkg in $enableval; do
503 if test "X$pkg" = "X$p"; then
504 enable_fast_install=yes
510 enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
513 # AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
514 AC_DEFUN(AC_DISABLE_FAST_INSTALL,
515 [AC_ENABLE_FAST_INSTALL(no)])
518 # AC_PROG_LD - find the path to the GNU or non-GNU linker
521 [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
522 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
523 AC_REQUIRE([AC_PROG_CC])dnl
524 AC_REQUIRE([AC_CANONICAL_HOST])dnl
525 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
527 if test "$ac_cv_prog_gcc" = yes; then
528 # Check if gcc -print-prog-name=ld gives a path.
529 AC_MSG_CHECKING([for ld used by GCC])
530 ac_prog=`($CC -print-prog-name=ld) 2>&5`
532 # Accept absolute paths.
534 /* | [A-Za-z]:[\\/]*)
535 re_direlt='/[^/][^/]*/\.\./'
537 # Canonicalize the path of ld
538 ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
539 while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
540 ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
542 test -z "$LD" && LD="$ac_prog"
545 # If it fails, then pretend we aren't using GCC.
549 # If it is relative, then search for the first ld in PATH.
553 elif test "$with_gnu_ld" = yes; then
554 AC_MSG_CHECKING([for GNU ld])
556 AC_MSG_CHECKING([for non-GNU ld])
558 AC_CACHE_VAL(ac_cv_path_LD,
559 [if test -z "$LD"; then
560 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
561 for ac_dir in $PATH; do
562 test -z "$ac_dir" && ac_dir=.
563 if test -f "$ac_dir/$ac_prog"; then
564 ac_cv_path_LD="$ac_dir/$ac_prog"
565 # Check to see if the program is GNU ld. I'd rather use --version,
566 # but apparently some GNU ld's only accept -v.
567 # Break only if it was the GNU/non-GNU ld that we prefer.
568 if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
569 test "$with_gnu_ld" != no && break
571 test "$with_gnu_ld" != yes && break
577 ac_cv_path_LD="$LD" # Let the user override the test with a path.
580 if test -n "$LD"; then
585 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
590 AC_DEFUN(AC_PROG_LD_GNU,
591 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
592 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
593 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
594 ac_cv_prog_gnu_ld=yes
600 # AC_PROG_NM - find the path to a BSD-compatible name lister
602 [AC_MSG_CHECKING([for BSD-compatible nm])
603 AC_CACHE_VAL(ac_cv_path_NM,
604 [if test -n "$NM"; then
605 # Let the user override the test.
608 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
609 for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
610 test -z "$ac_dir" && ac_dir=.
611 if test -f $ac_dir/nm; then
612 # Check to see if the nm accepts a BSD-compat flag.
613 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
614 # nm: unknown option "B" ignored
615 if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
616 ac_cv_path_NM="$ac_dir/nm -B"
618 elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
619 ac_cv_path_NM="$ac_dir/nm -p"
622 ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
623 continue # so that we can try to find one that supports BSD flags
628 test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
635 # AC_SYS_NM_PARSE - Check for command to grab the raw symbol name followed
636 # by C symbol name from nm.
637 AC_DEFUN(AC_SYS_NM_PARSE,
638 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
639 AC_REQUIRE([AC_PROG_NM])dnl
640 # Check for command to grab the raw symbol name followed by C symbol from nm.
641 AC_MSG_CHECKING([command to parse $NM output])
642 AC_CACHE_VAL(ac_cv_sys_global_symbol_pipe,
643 [# These are sane defaults that work on at least a few old systems.
644 # {They come from Ultrix. What could be older than Ultrix?!! ;)}
647 # Character class describing NM global symbol codes.
648 ac_symcode='[BCDEGRST]'
650 # Regexp to match symbols that can be accessed directly from C.
651 ac_sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
653 # Transform the above into a raw symbol and a C symbol.
654 ac_symxfrm='\1 \2\3 \3'
656 # Transform an extracted symbol line into a proper C declaration
657 ac_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
659 # Define system-specific variables.
665 ac_symcode='[ABCDGISTW]'
668 ac_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^. .* \(.*\)$/extern char \1;/p'"
671 ac_symcode='[BCDEGRST]'
678 # If we're using GNU nm, then use its standard symbol codes.
679 if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
680 ac_symcode='[ABCDGISTW]'
684 # Try without a prefix undercore, then with it.
685 for ac_symprfx in "" "_"; do
687 ac_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($ac_symcode\)[ ][ ]*\($ac_symprfx\)$ac_sympat$/$ac_symxfrm/p'"
689 # Check to see that the pipe works correctly.
691 rm -f conftest.$ac_ext
692 cat > conftest.$ac_ext <<EOF
697 void nm_test_func(){}
701 int main(){nm_test_var='a';nm_test_func;return 0;}
704 if AC_TRY_EVAL(ac_compile); then
705 # Now try to grab the symbols.
708 if AC_TRY_EVAL(NM conftest.$ac_objext \| $ac_cv_sys_global_symbol_pipe \> $ac_nlist) && test -s "$ac_nlist"; then
710 # Try sorting and uniquifying the output.
711 if sort "$ac_nlist" | uniq > "$ac_nlist"T; then
712 mv -f "$ac_nlist"T "$ac_nlist"
717 # Make sure that we snagged all the symbols we need.
718 if egrep ' nm_test_var$' "$ac_nlist" >/dev/null; then
719 if egrep ' nm_test_func$' "$ac_nlist" >/dev/null; then
720 cat <<EOF > conftest.c
726 # Now generate the symbol file.
727 eval "$ac_global_symbol_to_cdecl"' < "$ac_nlist" >> conftest.c'
729 cat <<EOF >> conftest.c
730 #if defined (__STDC__) && __STDC__
731 # define lt_ptr_t void *
733 # define lt_ptr_t char *
737 /* The mapping between symbol names and symbols. */
743 lt_preloaded_symbols[] =
747 sed 's/^. \(.*\) \(.*\)$/ {"\2", (lt_ptr_t) \&\2},/' < "$ac_nlist" >> conftest.c
748 cat <<\EOF >> conftest.c
756 # Now try linking the two files.
757 mv conftest.$ac_objext conftestm.$ac_objext
759 ac_save_CFLAGS="$CFLAGS"
760 LIBS="conftestm.$ac_objext"
761 CFLAGS="$CFLAGS$no_builtin_flag"
762 if AC_TRY_EVAL(ac_link) && test -s conftest; then
765 echo "configure: failed program was:" >&AC_FD_CC
766 cat conftest.c >&AC_FD_CC
769 CFLAGS="$ac_save_CFLAGS"
771 echo "cannot find nm_test_func in $ac_nlist" >&AC_FD_CC
774 echo "cannot find nm_test_var in $ac_nlist" >&AC_FD_CC
777 echo "cannot run $ac_cv_sys_global_symbol_pipe" >&AC_FD_CC
780 echo "$progname: failed program was:" >&AC_FD_CC
781 cat conftest.c >&AC_FD_CC
785 # Do not use the global_symbol_pipe unless it works.
786 if test "$ac_pipe_works" = yes; then
787 if test x"$ac_symprfx" = x"_"; then
788 ac_cv_sys_symbol_underscore=yes
790 ac_cv_sys_symbol_underscore=no
794 ac_cv_sys_global_symbol_pipe=
800 if test -z "$ac_cv_sys_global_symbol_pipe"; then
803 AC_MSG_RESULT($ac_result)
806 # AC_SYS_LIBTOOL_CYGWIN - find tools needed on cygwin
807 AC_DEFUN(AC_SYS_LIBTOOL_CYGWIN,
808 [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
809 AC_CHECK_TOOL(AS, as, false)
812 # AC_SYS_SYMBOL_UNDERSCORE - does the compiler prefix global symbols
813 # with an underscore?
814 AC_DEFUN(AC_SYS_SYMBOL_UNDERSCORE,
815 [AC_REQUIRE([AC_PROG_NM])dnl
816 AC_REQUIRE([AC_SYS_NM_PARSE])dnl
817 AC_MSG_CHECKING([for _ prefix in compiled symbols])
818 AC_CACHE_VAL(ac_cv_sys_symbol_underscore,
819 [ac_cv_sys_symbol_underscore=no
820 cat > conftest.$ac_ext <<EOF
821 void nm_test_func(){}
822 int main(){nm_test_func;return 0;}
824 if AC_TRY_EVAL(ac_compile); then
825 # Now try to grab the symbols.
827 if AC_TRY_EVAL(NM conftest.$ac_objext \| $ac_cv_sys_global_symbol_pipe \> $ac_nlist) && test -s "$ac_nlist"; then
828 # See whether the symbols have a leading underscore.
829 if egrep '^. _nm_test_func' "$ac_nlist" >/dev/null; then
830 ac_cv_sys_symbol_underscore=yes
832 if egrep '^. nm_test_func ' "$ac_nlist" >/dev/null; then
835 echo "configure: cannot find nm_test_func in $ac_nlist" >&AC_FD_CC
839 echo "configure: cannot run $ac_cv_sys_global_symbol_pipe" >&AC_FD_CC
842 echo "configure: failed program was:" >&AC_FD_CC
843 cat conftest.c >&AC_FD_CC
847 AC_MSG_RESULT($ac_cv_sys_symbol_underscore)
848 USE_SYMBOL_UNDERSCORE=${ac_cv_sys_symbol_underscore=no}
849 AC_SUBST(USE_SYMBOL_UNDERSCORE)dnl
852 # AC_CHECK_LIBM - check for math library
853 AC_DEFUN(AC_CHECK_LIBM, [
854 AC_CHECK_LIB(mw, _mwvalidcheckl)
858 # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
859 # the libltdl convenience library, adds --enable-ltdl-convenience to
860 # the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
861 # is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
862 # to be `${top_builddir}/libltdl'. Make sure you start DIR with
863 # '${top_builddir}/' (note the single quotes!) if your package is not
864 # flat, and, if you're not using automake, define top_builddir as
865 # appropriate in the Makefiles.
866 AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [
867 case "$enable_ltdl_convenience" in
868 no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
869 "") enable_ltdl_convenience=yes
870 ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
872 LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
875 # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
876 # the libltdl installable library, and adds --enable-ltdl-install to
877 # the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
878 # is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
879 # to be `${top_builddir}/libltdl'. Make sure you start DIR with
880 # '${top_builddir}/' (note the single quotes!) if your package is not
881 # flat, and, if you're not using automake, define top_builddir as
882 # appropriate in the Makefiles.
883 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
884 AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [
885 AC_CHECK_LIB(ltdl, main, LIBLTDL="-lltdl", [
886 case "$enable_ltdl_install" in
887 no) AC_MSG_WARN([libltdl not installed, but installation disabled]) ;;
888 "") enable_ltdl_install=yes
889 ac_configure_args="$ac_configure_args --enable-ltdl-install" ;;
892 if test x"$enable_ltdl_install" != x"no"; then
893 LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
898 AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
899 AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
900 AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
901 AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
902 AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
903 AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
904 AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
905 AC_DEFUN(AM_SYS_NM_PARSE, [indir([AC_SYS_NM_PARSE])])dnl
906 AC_DEFUN(AM_SYS_SYMBOL_UNDERSCORE, [indir([AC_SYS_SYMBOL_UNDERSCORE])])dnl
907 AC_DEFUN(AM_SYS_LIBTOOL_CYGWIN, [indir([AC_SYS_LIBTOOL_CYGWIN])])dnl
912 # @defmac AC_PROG_CC_STDC
913 # @maindex PROG_CC_STDC
915 # If the C compiler in not in ANSI C mode by default, try to add an option
916 # to output variable @code{CC} to make it so. This macro tries various
917 # options that select ANSI C on some system or another. It considers the
918 # compiler to be in ANSI C mode if it handles function prototypes correctly.
920 # If you use this macro, you should check after calling it whether the C
921 # compiler has been set to accept ANSI C; if not, the shell variable
922 # @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source
923 # code in ANSI C, you can make an un-ANSIfied copy of it by using the
924 # program @code{ansi2knr}, which comes with Ghostscript.
927 AC_DEFUN(AM_PROG_CC_STDC,
928 [AC_REQUIRE([AC_PROG_CC])
929 AC_BEFORE([$0], [AC_C_INLINE])
930 AC_BEFORE([$0], [AC_C_CONST])
931 dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require
932 dnl a magic option to avoid problems with ANSI preprocessor commands
934 dnl FIXME: can't do this because then AC_AIX won't work due to a
935 dnl circular dependency.
936 dnl AC_BEFORE([$0], [AC_PROG_CPP])
937 AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C)
938 AC_CACHE_VAL(am_cv_prog_cc_stdc,
939 [am_cv_prog_cc_stdc=no
941 # Don't try gcc -ansi; that turns off useful extensions and
942 # breaks some systems' header files.
944 # Ultrix and OSF/1 -std1
945 # HP-UX -Aa -D_HPUX_SOURCE
946 # SVR4 -Xc -D__EXTENSIONS__
947 for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
949 CC="$ac_save_CC $ac_arg"
953 #include <sys/types.h>
954 #include <sys/stat.h>
955 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
956 struct buf { int x; };
957 FILE * (*rcsopen) (struct buf *, struct stat *, int);
958 static char *e (p, i)
964 static char *f (char * (*g) (char **, int), char **p, ...)
969 s = g (p, va_arg (v,int));
973 int test (int i, double x);
974 struct s1 {int (*f) (int a);};
975 struct s2 {int (*f) (double a);};
976 int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
980 return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
982 [am_cv_prog_cc_stdc="$ac_arg"; break])
986 if test -z "$am_cv_prog_cc_stdc"; then
987 AC_MSG_RESULT([none needed])
989 AC_MSG_RESULT($am_cv_prog_cc_stdc)
991 case "x$am_cv_prog_cc_stdc" in
993 *) CC="$CC $am_cv_prog_cc_stdc" ;;
997 dnl Autoconf macros for configuring the QuickThreads package
998 dnl Jim Blandy <jimb@red-bean.com> --- July 1998
1000 dnl Copyright (C) 1998 Free Software Foundation, Inc.
1002 dnl This file is part of GUILE.
1004 dnl GUILE is free software; you can redistribute it and/or modify
1005 dnl it under the terms of the GNU General Public License as
1006 dnl published by the Free Software Foundation; either version 2, or
1007 dnl (at your option) any later version.
1009 dnl GUILE is distributed in the hope that it will be useful, but
1010 dnl WITHOUT ANY WARRANTY; without even the implied warranty of
1011 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1012 dnl GNU General Public License for more details.
1014 dnl You should have received a copy of the GNU General Public
1015 dnl License along with GUILE; see the file COPYING. If not, write
1016 dnl to the Free Software Foundation, Inc., 59 Temple Place, Suite
1017 dnl 330, Boston, MA 02111-1307 USA
1021 dnl QTHREADS_CONFIGURE configures the QuickThreads package. The QT
1022 dnl sources should be in $srcdir/qt. If configuration succeeds, this
1023 dnl macro creates the appropriate symlinks in the qt object directory,
1024 dnl and sets the following variables, used in building libqthreads.a:
1025 dnl QTHREAD_LTLIBS --- set to libqthreads.la if configuration
1026 dnl succeeds, or the empty string if configuration fails.
1027 dnl qtmd_h, qtmds_s, qtmdc_c, qtdmdb_s --- the names of the machine-
1028 dnl dependent source files.
1029 dnl qthread_asflags --- flags to pass to the compiler when processing
1030 dnl assembly-language files.
1032 dnl It also sets the following variables, which describe how clients
1033 dnl can link against libqthreads.a:
1034 dnl THREAD_PACKAGE --- set to "QT" if configuration succeeds, or
1035 dnl the empty string if configuration fails.
1036 dnl THREAD_CPPFLAGS --- set to `-I' flags for thread header files
1037 dnl THREAD_LIBS_LOCAL --- linker options for use in this source tree
1038 dnl THREAD_LIBS_INSTALLED --- linker options for use after this package
1040 dnl It would be nice if all thread configuration packages for Guile
1041 dnl followed the same conventions.
1043 dnl All of the above variables will be substituted into Makefiles in
1044 dnl the usual autoconf fashion.
1046 dnl We distinguish between THREAD_LIBS_LOCAL and
1047 dnl THREAD_LIBS_INSTALLED because the thread library might be in
1048 dnl this tree, and be built using libtool. This means that:
1049 dnl 1) when building other executables in this tree, one must
1050 dnl pass the relative path to the ../libfoo.la file, but
1051 dnl 2) once the whole package has been installed, users should
1052 dnl link using -lfoo.
1053 dnl Normally, we only care about the first case, but since the
1054 dnl guile-config script needs to give users all the flags they need
1055 dnl to link programs against guile, the GUILE_WITH_THREADS macro
1056 dnl needs to supply the second piece of information as well.
1058 dnl This whole thing is a little confused about what ought to be
1059 dnl done in the top-level configure script, and what ought to be
1060 dnl taken care of in the subdirectory. For example, qtmds_s and
1061 dnl friends really ought not to be even mentioned in the top-level
1062 dnl configure script, but here they are.
1064 AC_DEFUN([QTHREADS_CONFIGURE],[
1065 AC_REQUIRE([AC_PROG_LN_S])
1067 AC_MSG_CHECKING(QuickThreads configuration)
1068 # How can we refer to the qt source directory from within the qt build
1069 # directory? For headers, we can rely on the fact that the qt src
1070 # directory appears in the #include path.
1071 qtsrcdir="`(cd $srcdir; pwd)`/qt"
1073 changequote(,)dnl We use [ and ] in a regexp in the case
1086 ## NetBSD needs to be told to pass the assembly code through
1087 ## the C preprocessor. Other GCC installations seem to do
1088 ## this by default, but NetBSD's doesn't. We could get the
1089 ## same effect by giving the file a name ending with .S
1090 ## instead of .s, but I don't see how to tell automake to do
1092 qthread_asflags='-x assembler-with-cpp'
1099 qtmds_s=md/mips-irix5.s
1101 qtdmdb_s=md/mips_b.s
1108 qtdmdb_s=md/mips_b.s
1111 port_name=sparc-sunos
1115 qtdmdb_s=md/_sparc_b.s
1122 qtdmdb_s=md/sparc_b.s
1132 echo "Unknown configuration; threads package disabled"
1138 # Did configuration succeed?
1139 if test -n "$THREAD_PACKAGE"; then
1140 AC_MSG_RESULT($port_name)
1141 QTHREAD_LTLIBS=libqthreads.la
1142 THREAD_CPPFLAGS="-I$qtsrcdir -I../qt"
1143 THREAD_LIBS_LOCAL="../qt/libqthreads.la"
1144 THREAD_LIBS_INSTALLED="-lqthreads"
1146 AC_MSG_RESULT(none; disabled)
1149 AC_SUBST(QTHREAD_LTLIBS)
1154 AC_SUBST(qthread_asflags)
1155 AC_SUBST(THREAD_PACKAGE)
1156 AC_SUBST(THREAD_CPPFLAGS)
1157 AC_SUBST(THREAD_LIBS_LOCAL)
1158 AC_SUBST(THREAD_LIBS_INSTALLED)