Commit | Line | Data |
---|---|---|
341eaef0 | 1 | dnl aclocal.m4 generated automatically by aclocal 1.2d |
5aadf8c1 MG |
2 | |
3 | dnl Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. | |
4 | dnl This Makefile.in 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. | |
7 | ||
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. | |
ebf50833 | 12 | |
3a629497 JB |
13 | dnl On the NeXT, #including <utime.h> doesn't give you a definition for |
14 | dnl struct utime, unless you #define _POSIX_SOURCE. | |
15 | ||
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, | |
19 | [AC_TRY_CPP([ | |
20 | #ifdef __EMX__ | |
21 | #include <sys/utime.h> | |
22 | #else | |
23 | #include <utime.h> | |
24 | #endif | |
25 | struct utime blah; | |
26 | ], | |
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) | |
31 | fi]) | |
32 | ||
33 | ||
34 | ||
35 | ||
36 | dnl | |
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. | |
42 | dnl | |
43 | AC_DEFUN([GUILE_HEADER_LIBC_WITH_UNISTD], | |
44 | [ | |
45 | AC_CHECK_HEADERS(libc.h unistd.h) | |
46 | AC_CACHE_CHECK( | |
47 | "whether libc.h and unistd.h can be included together", | |
48 | guile_cv_header_libc_with_unistd, | |
49 | [ | |
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" | |
54 | else | |
55 | AC_TRY_COMPILE( | |
56 | [ | |
57 | # include <libc.h> | |
58 | # include <unistd.h> | |
59 | ], | |
60 | [], | |
61 | [guile_cv_header_libc_with_unistd=yes], | |
62 | [guile_cv_header_libc_with_unistd=no] | |
63 | ) | |
64 | fi | |
65 | ] | |
66 | ) | |
67 | if test "$guile_cv_header_libc_with_unistd" = yes; then | |
68 | AC_DEFINE(LIBC_H_WITH_UNISTD_H) | |
69 | fi | |
70 | ] | |
71 | ) | |
72 | ||
0b89e78e MD |
73 | |
74 | ||
75 | dnl This is needed when we want to check for the same function repeatedly | |
76 | dnl with other parameters, such as libraries, varying. | |
77 | dnl | |
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, | |
83 | [AC_TRY_LINK( | |
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. */ | |
89 | #include <assert.h> | |
90 | /* Override any gcc2 internal prototype to avoid an error. */ | |
91 | ]ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus | |
92 | extern "C" | |
93 | #endif | |
94 | ])dnl | |
95 | [/* We use char because int might match the return type of a gcc2 | |
96 | builtin and then its argument prototype would still apply. */ | |
97 | char $1(); | |
98 | ], [ | |
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) | |
103 | choke me | |
104 | #else | |
105 | $1(); | |
106 | #endif | |
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 | |
109 | AC_MSG_RESULT(yes) | |
110 | ifelse([$3], , :, [$3]) | |
111 | else | |
112 | AC_MSG_RESULT(no) | |
113 | ifelse([$4], , , [$4 | |
114 | ])dnl | |
115 | fi | |
116 | ]) | |
117 | ||
db1e65d5 TP |
118 | |
119 | ||
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 | |
129 | guile_cv_uscore=yes | |
130 | else | |
131 | guile_cv_uscore=no | |
132 | fi]) | |
133 | AC_MSG_RESULT($guile_cv_uscore) | |
134 | rm -f conftest.c a.out | |
135 | ||
136 | if test $guile_cv_uscore = yes; then | |
137 | AC_DEFINE(USCORE) | |
138 | ||
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( [ | |
142 | #include <dlfcn.h> | |
143 | #include <stdio.h> | |
144 | fnord() { int i=42;} | |
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 | |
5aadf8c1 MG |
149 | AC_DEFINE(DLSYM_ADDS_USCORE) ], guile_cv_dlsym_adds_uscore=no, |
150 | guile_cv_dlsym_adds_uscore=no)) | |
db1e65d5 TP |
151 | |
152 | AC_MSG_RESULT($guile_cv_dlsym_adds_uscore) | |
153 | fi | |
154 | fi | |
155 | ]) | |
156 | ||
733943b9 TT |
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. | |
160 | ||
161 | # serial 1 | |
162 | ||
163 | dnl Usage: | |
1dc9c5b0 | 164 | dnl AM_INIT_AUTOMAKE(package,version, [no-define]) |
733943b9 TT |
165 | |
166 | AC_DEFUN(AM_INIT_AUTOMAKE, | |
167 | [AC_REQUIRE([AM_PROG_INSTALL]) | |
168 | PACKAGE=[$1] | |
169 | AC_SUBST(PACKAGE) | |
733943b9 TT |
170 | VERSION=[$2] |
171 | AC_SUBST(VERSION) | |
c7b6463e JB |
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]) | |
175 | fi | |
1dc9c5b0 JB |
176 | ifelse([$3],, |
177 | AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE") | |
178 | AC_DEFINE_UNQUOTED(VERSION, "$VERSION")) | |
341eaef0 GH |
179 | AC_REQUIRE([AM_SANITY_CHECK]) |
180 | AC_REQUIRE([AC_ARG_PROGRAM]) | |
1dc9c5b0 JB |
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) | |
341eaef0 | 188 | AC_REQUIRE([AC_PROG_MAKE_SET])]) |
733943b9 TT |
189 | |
190 | ||
191 | # serial 1 | |
192 | ||
193 | AC_DEFUN(AM_PROG_INSTALL, | |
194 | [AC_REQUIRE([AC_PROG_INSTALL]) | |
195 | test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' | |
196 | AC_SUBST(INSTALL_SCRIPT)dnl | |
ebf50833 | 197 | ]) |
733943b9 TT |
198 | |
199 | # | |
200 | # Check to make sure that the build environment is sane. | |
201 | # | |
202 | ||
203 | AC_DEFUN(AM_SANITY_CHECK, | |
204 | [AC_MSG_CHECKING([whether build environment is sane]) | |
1dc9c5b0 JB |
205 | # Just in case |
206 | sleep 1 | |
733943b9 | 207 | echo timestamp > conftestfile |
1dc9c5b0 JB |
208 | # Do `set' in a subshell so we don't clobber the current shell's |
209 | # arguments. Must try -L first in case configure is actually a | |
210 | # symlink; some systems play weird games with the mod time of symlinks | |
211 | # (eg FreeBSD returns the mod time of the symlink's containing | |
212 | # directory). | |
213 | if ( | |
214 | set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` | |
5aadf8c1 | 215 | if test "[$]*" = "X"; then |
1dc9c5b0 JB |
216 | # -L didn't work. |
217 | set X `ls -t $srcdir/configure conftestfile` | |
218 | fi | |
341eaef0 GH |
219 | if test "[$]*" != "X $srcdir/configure conftestfile" \ |
220 | && test "[$]*" != "X conftestfile $srcdir/configure"; then | |
221 | ||
222 | # If neither matched, then we have a broken ls. This can happen | |
223 | # if, for instance, CONFIG_SHELL is bash and it inherits a | |
224 | # broken ls alias from the environment. This has actually | |
225 | # happened. Such a system could not be considered "sane". | |
226 | AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken | |
227 | alias in your environment]) | |
228 | fi | |
229 | ||
1dc9c5b0 JB |
230 | test "[$]2" = conftestfile |
231 | ) | |
733943b9 TT |
232 | then |
233 | # Ok. | |
234 | : | |
235 | else | |
236 | AC_MSG_ERROR([newly created file is older than distributed files! | |
237 | Check your system clock]) | |
238 | fi | |
239 | rm -f conftest* | |
240 | AC_MSG_RESULT(yes)]) | |
241 | ||
1dc9c5b0 JB |
242 | dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) |
243 | dnl The program must properly implement --version. | |
244 | AC_DEFUN(AM_MISSING_PROG, | |
245 | [AC_MSG_CHECKING(for working $2) | |
246 | # Run test in a subshell; some versions of sh will print an error if | |
247 | # an executable is not found, even if stderr is redirected. | |
c7b6463e JB |
248 | # Redirect stdin to placate older versions of autoconf. Sigh. |
249 | if ($2 --version) < /dev/null > /dev/null 2>&1; then | |
1dc9c5b0 JB |
250 | $1=$2 |
251 | AC_MSG_RESULT(found) | |
252 | else | |
253 | $1="$3/missing $2" | |
254 | AC_MSG_RESULT(missing) | |
255 | fi | |
256 | AC_SUBST($1)]) | |
257 | ||
15ae1bee MD |
258 | # Add --enable-maintainer-mode option to configure. |
259 | # From Jim Meyering | |
260 | ||
261 | # serial 1 | |
262 | ||
263 | AC_DEFUN(AM_MAINTAINER_MODE, | |
264 | [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) | |
265 | dnl maintainer-mode is disabled by default | |
266 | AC_ARG_ENABLE(maintainer-mode, | |
267 | [ --enable-maintainer-mode enable make rules and dependencies not useful | |
268 | (and sometimes confusing) to the casual installer], | |
269 | USE_MAINTAINER_MODE=$enableval, | |
270 | USE_MAINTAINER_MODE=no) | |
271 | AC_MSG_RESULT($USE_MAINTAINER_MODE) | |
272 | if test $USE_MAINTAINER_MODE = yes; then | |
273 | MAINT= | |
274 | else | |
275 | MAINT='#M#' | |
276 | fi | |
277 | AC_SUBST(MAINT)dnl | |
278 | ] | |
279 | ) | |
280 | ||
3a629497 JB |
281 | # Like AC_CONFIG_HEADER, but automatically create stamp file. |
282 | ||
283 | AC_DEFUN(AM_CONFIG_HEADER, | |
284 | [AC_PREREQ([2.12]) | |
285 | AC_CONFIG_HEADER([$1]) | |
286 | dnl When config.status generates a header, we must update the stamp-h file. | |
287 | dnl This file resides in the same directory as the config header | |
288 | dnl that is generated. We must strip everything past the first ":", | |
289 | dnl and everything past the last "/". | |
290 | AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl | |
c7b6463e JB |
291 | ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, |
292 | <<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, | |
293 | <<am_indx=1 | |
294 | for am_file in <<$1>>; do | |
295 | case " <<$>>CONFIG_HEADERS " in | |
296 | *" <<$>>am_file "*<<)>> | |
297 | echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx | |
298 | ;; | |
299 | esac | |
300 | am_indx=`expr "<<$>>am_indx" + 1` | |
301 | done<<>>dnl>>) | |
3a629497 JB |
302 | changequote([,]))]) |
303 | ||
5aadf8c1 | 304 | |
86c5044a | 305 | # serial 15 AM_PROG_LIBTOOL |
5aadf8c1 MG |
306 | AC_DEFUN(AM_PROG_LIBTOOL, |
307 | [AC_REQUIRE([AC_CANONICAL_HOST]) | |
308 | AC_REQUIRE([AC_PROG_RANLIB]) | |
309 | AC_REQUIRE([AC_PROG_CC]) | |
310 | AC_REQUIRE([AM_PROG_LD]) | |
311 | AC_REQUIRE([AM_PROG_NM]) | |
312 | AC_REQUIRE([AC_PROG_LN_S]) | |
313 | ||
314 | # Always use our own libtool. | |
315 | LIBTOOL='$(SHELL) $(top_builddir)/libtool' | |
316 | AC_SUBST(LIBTOOL) | |
317 | ||
318 | dnl Allow the --disable-shared flag to stop us from building shared libs. | |
319 | AC_ARG_ENABLE(shared, | |
320 | [ --enable-shared build shared libraries [default=yes]], | |
321 | [if test "$enableval" = no; then | |
86c5044a | 322 | enable_shared=no |
5aadf8c1 | 323 | else |
86c5044a | 324 | enable_shared=yes |
5aadf8c1 MG |
325 | fi]) |
326 | libtool_shared= | |
327 | test "$enable_shared" = no && libtool_shared=" --disable-shared" | |
328 | ||
329 | dnl Allow the --disable-static flag to stop us from building static libs. | |
330 | AC_ARG_ENABLE(static, | |
331 | [ --enable-static build static libraries [default=yes]], | |
332 | [if test "$enableval" = no; then | |
86c5044a | 333 | enable_static=no |
5aadf8c1 | 334 | else |
86c5044a | 335 | enable_static=yes |
5aadf8c1 MG |
336 | fi]) |
337 | libtool_static= | |
338 | test "$enable_static" = no && libtool_static=" --disable-static" | |
339 | ||
340 | libtool_flags="$libtool_shared$libtool_static" | |
341 | test "$silent" = yes && libtool_flags="$libtool_flags --silent" | |
342 | test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc" | |
343 | test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" | |
344 | ||
345 | # Some flags need to be propagated to the compiler or linker for good | |
346 | # libtool support. | |
347 | [case "$host" in | |
348 | *-*-irix6*) | |
349 | ac_save_CFLAGS="$CFLAGS" | |
86c5044a MD |
350 | # -n32 always needs to be added to the linker when using GCC. |
351 | test "$ac_cv_prog_gcc" = yes && CFLAGS="$CFLAGS -n32" | |
352 | for f in '-32' '-64' '-cckr' '-n32' '-mips1' '-mips2' '-mips3' '-mips4'; do | |
353 | if echo " $CC $CFLAGS " | egrep -e "[ ]$f[ ]" > /dev/null; then | |
354 | LD="${LD-ld} $f" | |
355 | fi | |
5aadf8c1 MG |
356 | done |
357 | CFLAGS="$ac_save_CFLAGS" | |
358 | ;; | |
359 | ||
360 | *-*-sco3.2v5*) | |
361 | # On SCO OpenServer 5, we need -belf to get full-featured binaries. | |
362 | CFLAGS="$CFLAGS -belf" | |
363 | ;; | |
364 | esac] | |
365 | ||
366 | # Actually configure libtool. ac_aux_dir is where install-sh is found. | |
367 | CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ | |
368 | LD="$LD" NM="$NM" RANLIB="$RANLIB" LN_S="$LN_S" \ | |
369 | ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig \ | |
370 | $libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \ | |
371 | || AC_MSG_ERROR([libtool configure failed]) | |
372 | ]) | |
373 | ||
374 | # AM_PROG_LD - find the path to the GNU or non-GNU linker | |
375 | AC_DEFUN(AM_PROG_LD, | |
376 | [AC_ARG_WITH(gnu-ld, | |
377 | [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], | |
378 | test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) | |
379 | AC_REQUIRE([AC_PROG_CC]) | |
380 | ac_prog=ld | |
381 | if test "$ac_cv_prog_gcc" = yes; then | |
382 | # Check if gcc -print-prog-name=ld gives a path. | |
383 | AC_MSG_CHECKING([for ld used by GCC]) | |
384 | ac_prog=`($CC -print-prog-name=ld) 2>&5` | |
385 | case "$ac_prog" in | |
386 | # Accept absolute paths. | |
ef0f106f TP |
387 | /*) |
388 | test -z "$LD" && LD="$ac_prog" | |
389 | ;; | |
5aadf8c1 MG |
390 | "") |
391 | # If it fails, then pretend we aren't using GCC. | |
392 | ac_prog=ld | |
393 | ;; | |
394 | *) | |
395 | # If it is relative, then search for the first ld in PATH. | |
396 | with_gnu_ld=unknown | |
397 | ;; | |
398 | esac | |
399 | elif test "$with_gnu_ld" = yes; then | |
400 | AC_MSG_CHECKING([for GNU ld]) | |
401 | else | |
402 | AC_MSG_CHECKING([for non-GNU ld]) | |
403 | fi | |
404 | AC_CACHE_VAL(ac_cv_path_LD, | |
405 | [if test -z "$LD"; then | |
406 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" | |
407 | for ac_dir in $PATH; do | |
408 | test -z "$ac_dir" && ac_dir=. | |
409 | if test -f "$ac_dir/$ac_prog"; then | |
410 | ac_cv_path_LD="$ac_dir/$ac_prog" | |
411 | # Check to see if the program is GNU ld. I'd rather use --version, | |
412 | # but apparently some GNU ld's only accept -v. | |
413 | # Break only if it was the GNU/non-GNU ld that we prefer. | |
414 | if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then | |
415 | test "$with_gnu_ld" != no && break | |
416 | else | |
417 | test "$with_gnu_ld" != yes && break | |
418 | fi | |
419 | fi | |
420 | done | |
421 | IFS="$ac_save_ifs" | |
422 | else | |
423 | ac_cv_path_LD="$LD" # Let the user override the test with a path. | |
424 | fi]) | |
425 | LD="$ac_cv_path_LD" | |
426 | if test -n "$LD"; then | |
427 | AC_MSG_RESULT($LD) | |
428 | else | |
429 | AC_MSG_RESULT(no) | |
430 | fi | |
431 | test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) | |
432 | AC_SUBST(LD) | |
433 | AM_PROG_LD_GNU | |
434 | ]) | |
435 | ||
436 | AC_DEFUN(AM_PROG_LD_GNU, | |
437 | [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld, | |
438 | [# I'd rather use --version here, but apparently some GNU ld's only accept -v. | |
439 | if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then | |
440 | ac_cv_prog_gnu_ld=yes | |
441 | else | |
442 | ac_cv_prog_gnu_ld=no | |
443 | fi]) | |
444 | ]) | |
445 | ||
446 | # AM_PROG_NM - find the path to a BSD-compatible name lister | |
447 | AC_DEFUN(AM_PROG_NM, | |
448 | [AC_MSG_CHECKING([for BSD-compatible nm]) | |
449 | AC_CACHE_VAL(ac_cv_path_NM, | |
450 | [case "$NM" in | |
451 | /*) | |
452 | ac_cv_path_NM="$NM" # Let the user override the test with a path. | |
453 | ;; | |
454 | *) | |
455 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" | |
456 | for ac_dir in /usr/ucb $PATH /bin; do | |
457 | test -z "$ac_dir" && dir=. | |
458 | if test -f $ac_dir/nm; then | |
459 | # Check to see if the nm accepts a BSD-compat flag. | |
460 | if ($ac_dir/nm -B /dev/null 2>&1; exit 0) | grep /dev/null >/dev/null; then | |
461 | ac_cv_path_NM="$ac_dir/nm -B" | |
462 | elif ($ac_dir/nm -p /dev/null 2>&1; exit 0) | grep /dev/null >/dev/null; then | |
463 | ac_cv_path_NM="$ac_dir/nm -p" | |
464 | else | |
465 | ac_cv_path_NM="$ac_dir/nm" | |
466 | fi | |
467 | break | |
468 | fi | |
469 | done | |
470 | IFS="$ac_save_ifs" | |
471 | test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm | |
472 | ;; | |
473 | esac]) | |
474 | NM="$ac_cv_path_NM" | |
475 | AC_MSG_RESULT([$NM]) | |
476 | AC_SUBST(NM) | |
477 | ]) | |
478 | ||
3a629497 JB |
479 | dnl |
480 | dnl CY_AC_WITH_THREADS determines which thread library the user intends | |
481 | dnl to put underneath guile. Pass it the path to find the guile top-level | |
482 | dnl source directory. Eg CY_AC_WITH_THREADS(../..) for tcl/unix. | |
483 | dnl | |
484 | ||
485 | AC_DEFUN([CY_AC_WITH_THREADS],[ | |
486 | AC_CACHE_CHECK("threads package type",cy_cv_threads_package,[ | |
487 | AC_CACHE_VAL(cy_cv_threads_cflags,[ | |
488 | AC_CACHE_VAL(cy_cv_threads_libs,[ | |
489 | use_threads=no; | |
490 | AC_ARG_WITH(threads,[ --with-threads thread interface], | |
491 | use_threads=$withval, use_threads=no) | |
492 | test -n "$use_threads" || use_threads=qt | |
493 | threads_package=unknown | |
494 | if test "$use_threads" != no; then | |
495 | dnl | |
496 | dnl Test for the qt threads package - used for cooperative threads | |
497 | dnl This may not necessarily be built yet - so just check for the | |
498 | dnl header files. | |
499 | dnl | |
500 | if test "$use_threads" = yes || test "$use_threads" = qt; then | |
ec06dd30 AG |
501 | # Look for qt in source directory. |
502 | if test -f $srcdir/qt/qt.c; then | |
503 | qtsrcdir="`(cd $srcdir; pwd)`/qt" | |
3a629497 | 504 | threads_package=COOP |
ec06dd30 | 505 | cy_cv_threads_cflags="-I$qtsrcdir -I../qt" |
5aadf8c1 | 506 | cy_cv_threads_libs="../qt/libqthreads.a" |
3a629497 JB |
507 | fi |
508 | else | |
509 | if test -f $use_threads/qt.c; then | |
510 | # FIXME seems as though we should try to use an installed qt here. | |
511 | threads_package=COOP | |
512 | cy_cv_threads_cflags="-I$use_threads -I../qt" | |
5aadf8c1 | 513 | cy_cv_threads_libs="../qt/libqthreads.a" |
3a629497 JB |
514 | fi |
515 | fi | |
516 | if test "$use_threads" = pthreads; then | |
517 | # Look for pthreads in srcdir. See above to understand why | |
518 | # we always set threads_package. | |
519 | if test -f $srcdir/../../pthreads/pthreads/queue.c \ | |
520 | || test -f $srcdir/../pthreads/pthreads/queue.c; then | |
521 | threads_package=MIT | |
522 | cy_cv_threads_cflags="-I$srcdir/../../pthreads/include" | |
523 | cy_cv_threads_libs="-L../../pthreads/lib -lpthread" | |
524 | fi | |
525 | fi | |
526 | saved_CPP="$CPPFLAGS" | |
527 | saved_LD="$LDFLAGS" | |
528 | saved_LIBS="$LIBS" | |
529 | if test "$threads_package" = unknown; then | |
530 | dnl | |
531 | dnl Test for the FSU threads package | |
532 | dnl | |
533 | CPPFLAGS="-I$use_threads/include" | |
534 | LDFLAGS="-L$use_threads/lib" | |
535 | LIBS="-lgthreads -lmalloc" | |
536 | AC_TRY_LINK([#include <pthread.h>],[ | |
537 | pthread_equal(NULL,NULL); | |
538 | ], threads_package=FSU) | |
539 | fi | |
540 | if test "$threads_package" = unknown; then | |
541 | dnl | |
542 | dnl Test for the MIT threads package | |
543 | dnl | |
544 | LIBS="-lpthread" | |
545 | AC_TRY_LINK([#include <pthread.h>],[ | |
546 | pthread_equal(NULL,NULL); | |
547 | ], threads_package=MIT) | |
548 | fi | |
549 | if test "$threads_package" = unknown; then | |
550 | dnl | |
551 | dnl Test for the PCthreads package | |
552 | dnl | |
553 | LIBS="-lpthreads" | |
554 | AC_TRY_LINK([#include <pthread.h>],[ | |
555 | pthread_equal(NULL,NULL); | |
556 | ], threads_package=PCthreads) | |
557 | fi | |
558 | dnl | |
559 | dnl Set the appropriate flags! | |
560 | dnl | |
561 | cy_cv_threads_cflags="$CPPFLAGS $cy_cv_threads_cflags" | |
562 | cy_cv_threads_libs="$LDFLAGS $LIBS $cy_cv_threads_libs" | |
563 | cy_cv_threads_package=$threads_package | |
564 | CPPFLAGS="$saved_CPP" | |
565 | LDFLAGS="$saved_LD" | |
566 | LIBS="$saved_LIBS" | |
567 | if test "$threads_package" = unknown; then | |
568 | AC_MSG_ERROR("cannot find thread library installation") | |
569 | fi | |
570 | fi | |
571 | ]) | |
572 | ]) | |
573 | ], | |
574 | dnl | |
575 | dnl Set flags according to what is cached. | |
576 | dnl | |
577 | CPPFLAGS="$cy_cv_threads_cflags" | |
578 | LIBS="$cy_cv_threads_libs" | |
579 | ) | |
580 | ]) | |
581 |