Commit | Line | Data |
---|---|---|
5798fd97 | 1 | dnl aclocal.m4 generated automatically by aclocal 1.3 |
5aadf8c1 | 2 | |
5798fd97 | 3 | dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. |
5aadf8c1 MG |
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 | |
2c9a3a48 | 305 | # serial 24 AM_PROG_LIBTOOL |
5aadf8c1 | 306 | AC_DEFUN(AM_PROG_LIBTOOL, |
5798fd97 MD |
307 | [AC_REQUIRE([AM_ENABLE_SHARED])dnl |
308 | AC_REQUIRE([AM_ENABLE_STATIC])dnl | |
309 | AC_REQUIRE([AC_CANONICAL_HOST])dnl | |
310 | AC_REQUIRE([AC_PROG_RANLIB])dnl | |
311 | AC_REQUIRE([AC_PROG_CC])dnl | |
312 | AC_REQUIRE([AM_PROG_LD])dnl | |
313 | AC_REQUIRE([AM_PROG_NM])dnl | |
314 | AC_REQUIRE([AC_PROG_LN_S])dnl | |
315 | dnl | |
5aadf8c1 MG |
316 | # Always use our own libtool. |
317 | LIBTOOL='$(SHELL) $(top_builddir)/libtool' | |
5798fd97 | 318 | AC_SUBST(LIBTOOL)dnl |
5aadf8c1 | 319 | |
5798fd97 MD |
320 | # Check for any special flags to pass to ltconfig. |
321 | libtool_flags= | |
322 | test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" | |
323 | test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" | |
5aadf8c1 MG |
324 | test "$silent" = yes && libtool_flags="$libtool_flags --silent" |
325 | test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc" | |
326 | test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" | |
327 | ||
328 | # Some flags need to be propagated to the compiler or linker for good | |
329 | # libtool support. | |
5798fd97 | 330 | case "$host" in |
5aadf8c1 | 331 | *-*-irix6*) |
5798fd97 MD |
332 | # Find out which ABI we are using. |
333 | echo '[#]line __oline__ "configure"' > conftest.$ac_ext | |
334 | if AC_TRY_EVAL(ac_compile); then | |
335 | case "`/usr/bin/file conftest.o`" in | |
336 | *32-bit*) | |
337 | LD="${LD-ld} -32" | |
338 | ;; | |
339 | *N32*) | |
340 | LD="${LD-ld} -n32" | |
341 | ;; | |
342 | *64-bit*) | |
343 | LD="${LD-ld} -64" | |
344 | ;; | |
345 | esac | |
346 | fi | |
347 | rm -rf conftest* | |
5aadf8c1 MG |
348 | ;; |
349 | ||
350 | *-*-sco3.2v5*) | |
351 | # On SCO OpenServer 5, we need -belf to get full-featured binaries. | |
352 | CFLAGS="$CFLAGS -belf" | |
353 | ;; | |
5798fd97 | 354 | esac |
5aadf8c1 MG |
355 | |
356 | # Actually configure libtool. ac_aux_dir is where install-sh is found. | |
357 | CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ | |
358 | LD="$LD" NM="$NM" RANLIB="$RANLIB" LN_S="$LN_S" \ | |
2c9a3a48 | 359 | ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig \ |
5aadf8c1 MG |
360 | $libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \ |
361 | || AC_MSG_ERROR([libtool configure failed]) | |
362 | ]) | |
363 | ||
5798fd97 MD |
364 | # AM_ENABLE_SHARED - implement the --enable-shared flag |
365 | # Usage: AM_ENABLE_SHARED[(DEFAULT)] | |
366 | # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to | |
367 | # `yes'. | |
368 | AC_DEFUN(AM_ENABLE_SHARED, | |
369 | [define([AM_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl | |
370 | AC_ARG_ENABLE(shared, | |
371 | changequote(<<, >>)dnl | |
2c9a3a48 | 372 | << --enable-shared build shared libraries [default=>>AM_ENABLE_SHARED_DEFAULT] |
5798fd97 | 373 | changequote([, ])dnl |
2c9a3a48 JB |
374 | [ --enable-shared=PKGS only build shared libraries if the current package |
375 | appears as an element in the PKGS list], | |
5798fd97 MD |
376 | [p=${PACKAGE-default} |
377 | case "$enableval" in | |
378 | yes) enable_shared=yes ;; | |
379 | no) enable_shared=no ;; | |
380 | *) | |
381 | enable_shared=no | |
382 | # Look at the argument we got. We use all the common list separators. | |
383 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," | |
384 | for pkg in $enableval; do | |
385 | if test "X$pkg" = "X$p"; then | |
386 | enable_shared=yes | |
387 | fi | |
388 | done | |
389 | IFS="$ac_save_ifs" | |
390 | ;; | |
391 | esac], | |
392 | enable_shared=AM_ENABLE_SHARED_DEFAULT)dnl | |
393 | ]) | |
394 | ||
395 | # AM_DISABLE_SHARED - set the default shared flag to --disable-shared | |
396 | AC_DEFUN(AM_DISABLE_SHARED, | |
397 | [AM_ENABLE_SHARED(no)]) | |
398 | ||
399 | # AM_DISABLE_STATIC - set the default static flag to --disable-static | |
400 | AC_DEFUN(AM_DISABLE_STATIC, | |
401 | [AM_ENABLE_STATIC(no)]) | |
402 | ||
403 | # AM_ENABLE_STATIC - implement the --enable-static flag | |
404 | # Usage: AM_ENABLE_STATIC[(DEFAULT)] | |
405 | # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to | |
406 | # `yes'. | |
407 | AC_DEFUN(AM_ENABLE_STATIC, | |
408 | [define([AM_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl | |
409 | AC_ARG_ENABLE(static, | |
410 | changequote(<<, >>)dnl | |
2c9a3a48 | 411 | << --enable-static build static libraries [default=>>AM_ENABLE_STATIC_DEFAULT] |
5798fd97 | 412 | changequote([, ])dnl |
2c9a3a48 JB |
413 | [ --enable-static=PKGS only build shared libraries if the current package |
414 | appears as an element in the PKGS list], | |
5798fd97 MD |
415 | [p=${PACKAGE-default} |
416 | case "$enableval" in | |
417 | yes) enable_static=yes ;; | |
418 | no) enable_static=no ;; | |
419 | *) | |
420 | enable_static=no | |
421 | # Look at the argument we got. We use all the common list separators. | |
422 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," | |
423 | for pkg in $enableval; do | |
424 | if test "X$pkg" = "X$p"; then | |
425 | enable_static=yes | |
426 | fi | |
427 | done | |
428 | IFS="$ac_save_ifs" | |
429 | ;; | |
430 | esac], | |
431 | enable_static=AM_ENABLE_STATIC_DEFAULT)dnl | |
432 | ]) | |
433 | ||
434 | ||
5aadf8c1 MG |
435 | # AM_PROG_LD - find the path to the GNU or non-GNU linker |
436 | AC_DEFUN(AM_PROG_LD, | |
437 | [AC_ARG_WITH(gnu-ld, | |
438 | [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], | |
439 | test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) | |
440 | AC_REQUIRE([AC_PROG_CC]) | |
441 | ac_prog=ld | |
442 | if test "$ac_cv_prog_gcc" = yes; then | |
443 | # Check if gcc -print-prog-name=ld gives a path. | |
444 | AC_MSG_CHECKING([for ld used by GCC]) | |
445 | ac_prog=`($CC -print-prog-name=ld) 2>&5` | |
446 | case "$ac_prog" in | |
447 | # Accept absolute paths. | |
5798fd97 | 448 | /* | [A-Za-z]:\\*) |
ef0f106f TP |
449 | test -z "$LD" && LD="$ac_prog" |
450 | ;; | |
5aadf8c1 MG |
451 | "") |
452 | # If it fails, then pretend we aren't using GCC. | |
453 | ac_prog=ld | |
454 | ;; | |
455 | *) | |
456 | # If it is relative, then search for the first ld in PATH. | |
457 | with_gnu_ld=unknown | |
458 | ;; | |
459 | esac | |
460 | elif test "$with_gnu_ld" = yes; then | |
461 | AC_MSG_CHECKING([for GNU ld]) | |
462 | else | |
463 | AC_MSG_CHECKING([for non-GNU ld]) | |
464 | fi | |
465 | AC_CACHE_VAL(ac_cv_path_LD, | |
466 | [if test -z "$LD"; then | |
467 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" | |
468 | for ac_dir in $PATH; do | |
469 | test -z "$ac_dir" && ac_dir=. | |
470 | if test -f "$ac_dir/$ac_prog"; then | |
471 | ac_cv_path_LD="$ac_dir/$ac_prog" | |
472 | # Check to see if the program is GNU ld. I'd rather use --version, | |
473 | # but apparently some GNU ld's only accept -v. | |
474 | # Break only if it was the GNU/non-GNU ld that we prefer. | |
475 | if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then | |
476 | test "$with_gnu_ld" != no && break | |
477 | else | |
478 | test "$with_gnu_ld" != yes && break | |
479 | fi | |
480 | fi | |
481 | done | |
482 | IFS="$ac_save_ifs" | |
483 | else | |
484 | ac_cv_path_LD="$LD" # Let the user override the test with a path. | |
485 | fi]) | |
486 | LD="$ac_cv_path_LD" | |
487 | if test -n "$LD"; then | |
488 | AC_MSG_RESULT($LD) | |
489 | else | |
490 | AC_MSG_RESULT(no) | |
491 | fi | |
492 | test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) | |
493 | AC_SUBST(LD) | |
494 | AM_PROG_LD_GNU | |
495 | ]) | |
496 | ||
497 | AC_DEFUN(AM_PROG_LD_GNU, | |
498 | [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld, | |
499 | [# I'd rather use --version here, but apparently some GNU ld's only accept -v. | |
500 | if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then | |
501 | ac_cv_prog_gnu_ld=yes | |
502 | else | |
503 | ac_cv_prog_gnu_ld=no | |
504 | fi]) | |
505 | ]) | |
506 | ||
507 | # AM_PROG_NM - find the path to a BSD-compatible name lister | |
508 | AC_DEFUN(AM_PROG_NM, | |
509 | [AC_MSG_CHECKING([for BSD-compatible nm]) | |
510 | AC_CACHE_VAL(ac_cv_path_NM, | |
2c9a3a48 JB |
511 | [case "$NM" in |
512 | /* | [A-Za-z]:\\*) | |
513 | ac_cv_path_NM="$NM" # Let the user override the test with a path. | |
514 | ;; | |
515 | *) | |
5aadf8c1 | 516 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" |
5798fd97 MD |
517 | for ac_dir in /usr/ucb /usr/ccs/bin $PATH /bin; do |
518 | test -z "$ac_dir" && ac_dir=. | |
5aadf8c1 MG |
519 | if test -f $ac_dir/nm; then |
520 | # Check to see if the nm accepts a BSD-compat flag. | |
5798fd97 MD |
521 | # Adding the `sed 1q' prevents false positives on HP-UX, which says: |
522 | # nm: unknown option "B" ignored | |
523 | if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then | |
5aadf8c1 | 524 | ac_cv_path_NM="$ac_dir/nm -B" |
5798fd97 | 525 | elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then |
5aadf8c1 MG |
526 | ac_cv_path_NM="$ac_dir/nm -p" |
527 | else | |
528 | ac_cv_path_NM="$ac_dir/nm" | |
529 | fi | |
530 | break | |
531 | fi | |
532 | done | |
533 | IFS="$ac_save_ifs" | |
534 | test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm | |
2c9a3a48 JB |
535 | ;; |
536 | esac]) | |
5aadf8c1 MG |
537 | NM="$ac_cv_path_NM" |
538 | AC_MSG_RESULT([$NM]) | |
539 | AC_SUBST(NM) | |
540 | ]) | |
541 | ||
539c89a1 JB |
542 | dnl Autoconf macros for configuring the QuickThreads package |
543 | ||
544 | dnl QTHREADS_CONFIGURE configures the QuickThreads package. The QT | |
545 | dnl sources should be in $srcdir/qt. If configuration succeeds, this | |
546 | dnl macro creates the appropriate symlinks in the qt object directory, | |
547 | dnl and sets the following variables, used in building libqthreads.a: | |
548 | dnl QTHREAD_LTLIBS --- set to libqthreads.la if configuration | |
549 | dnl succeeds, or the empty string if configuration fails. | |
550 | dnl qtmd_h --- the name of the machine-dependent header file. | |
3a629497 | 551 | dnl |
539c89a1 JB |
552 | dnl It also sets the following variables, which describe how clients |
553 | dnl can link against libqthreads.a: | |
554 | dnl THREAD_PACKAGE --- set to "QT" if configuration succeeds, or | |
555 | dnl the empty string if configuration fails. | |
556 | dnl THREAD_CPPFLAGS --- set to `-I' flags for thread header files | |
557 | dnl THREAD_LIBS_LOCAL --- linker options for use in this source tree | |
558 | dnl THREAD_LIBS_INSTALLED --- linker options for use after this package | |
559 | dnl is installed | |
560 | dnl It would be nice if all thread configuration packages for Guile | |
561 | dnl followed the same conventions. | |
3a629497 | 562 | dnl |
539c89a1 JB |
563 | dnl All of the above variables will be substituted into Makefiles in |
564 | dnl the usual autoconf fashion. | |
3a629497 | 565 | dnl |
539c89a1 JB |
566 | dnl We distinguish between THREAD_LIBS_LOCAL and |
567 | dnl THREAD_LIBS_INSTALLED because the thread library might be in | |
568 | dnl this tree, and be built using libtool. This means that: | |
569 | dnl 1) when building other executables in this tree, one must | |
570 | dnl pass the relative path to the ../libfoo.la file, but | |
571 | dnl 2) once the whole package has been installed, users should | |
572 | dnl link using -lfoo. | |
573 | dnl Normally, we only care about the first case, but since the | |
bcc695e3 | 574 | dnl guile-config script needs to give users all the flags they need |
539c89a1 JB |
575 | dnl to link programs against guile, the GUILE_WITH_THREADS macro |
576 | dnl needs to supply the second piece of information as well. | |
3a629497 | 577 | dnl |
539c89a1 JB |
578 | dnl This whole thing is a little confused about what ought to be |
579 | dnl done in the top-level configure script, and what ought to be | |
580 | dnl taken care of in the subdirectory. For example, qtmdc_lo and | |
581 | dnl friends really ought not to be even mentioned in the top-level | |
582 | dnl configure script, but here they are. | |
583 | ||
584 | AC_DEFUN([QTHREADS_CONFIGURE],[ | |
7bc24529 | 585 | AC_REQUIRE([AC_PROG_LN_S]) |
539c89a1 | 586 | |
b8f08e26 | 587 | AC_MSG_CHECKING(QuickThreads configuration) |
539c89a1 JB |
588 | # How can we refer to the qt source directory from within the qt build |
589 | # directory? For headers, we can rely on the fact that the qt src | |
590 | # directory appears in the #include path. | |
591 | qtsrcdir="`(cd $srcdir; pwd)`/qt" | |
592 | ||
593 | changequote(,)dnl We use [ and ] in a regexp in the case | |
594 | ||
595 | THREAD_PACKAGE=QT | |
596 | case "$host" in | |
597 | i[3456]86-*-*) | |
b8f08e26 | 598 | port_name=i386 |
539c89a1 JB |
599 | qtmd_h=md/i386.h |
600 | qtmds_s=md/i386.s | |
601 | qtmdc_c=md/null.c | |
602 | qtdmdb_s= | |
603 | ;; | |
604 | mips-sgi-irix[56]*) | |
b8f08e26 | 605 | port_name=irix |
539c89a1 JB |
606 | qtmd_h=md/mips.h |
607 | qtmds_s=md/mips-irix5.s | |
608 | qtmdc_c=md/null.c | |
609 | qtdmdb_s=md/mips_b.s | |
610 | ;; | |
611 | mips-*-*) | |
b8f08e26 | 612 | port_name=mips |
539c89a1 JB |
613 | qtmd_h=md/mips.h |
614 | qtmds_s=md/mips.s | |
615 | qtmdc_c=md/null.c | |
616 | qtdmdb_s=md/mips_b.s | |
617 | ;; | |
618 | sparc-*-sunos*) | |
b8f08e26 | 619 | port_name=sparc-sunos |
539c89a1 JB |
620 | qtmd_h=md/sparc.h |
621 | qtmds_s=md/_sparc.s | |
622 | qtmdc_c=md/null.c | |
623 | qtdmdb_s=md/_sparc_b.s | |
624 | ;; | |
625 | sparc-*-*) | |
b8f08e26 | 626 | port_name=sparc |
539c89a1 JB |
627 | qtmd_h=md/sparc.h |
628 | qtmds_s=md/sparc.s | |
629 | qtmdc_c=md/null.c | |
630 | qtdmdb_s=md/sparc_b.s | |
631 | ;; | |
632 | alpha-*-*) | |
b8f08e26 | 633 | port_name=alpha |
539c89a1 JB |
634 | qtmd_h=md/axp.h |
635 | qtmds_s=md/axp.s | |
636 | qtmdc_c=md/null.c | |
637 | qtdmdb_s=md/axp_b.s | |
638 | ;; | |
639 | *) | |
640 | echo "Unknown configuration; threads package disabled" | |
641 | THREAD_PACKAGE="" | |
642 | ;; | |
643 | esac | |
644 | changequote([, ]) | |
645 | ||
646 | # Did configuration succeed? | |
647 | if test -n "$THREAD_PACKAGE"; then | |
b8f08e26 | 648 | AC_MSG_RESULT($port_name) |
539c89a1 JB |
649 | QTHREAD_LTLIBS=libqthreads.la |
650 | THREAD_CPPFLAGS="-I$qtsrcdir -I../qt" | |
651 | THREAD_LIBS_LOCAL="../qt/libqthreads.la" | |
652 | THREAD_LIBS_INSTALLED="-lqthreads" | |
b8f08e26 MD |
653 | else |
654 | AC_MSG_RESULT(none; disabled) | |
3a629497 | 655 | fi |
539c89a1 JB |
656 | |
657 | AC_SUBST(QTHREAD_LTLIBS) | |
658 | AC_SUBST(qtmd_h) | |
659 | AC_SUBST(qtmds_s) | |
660 | AC_SUBST(qtmdc_c) | |
661 | AC_SUBST(qtdmdb_s) | |
662 | AC_SUBST(THREAD_PACKAGE) | |
663 | AC_SUBST(THREAD_CPPFLAGS) | |
664 | AC_SUBST(THREAD_LIBS_LOCAL) | |
665 | AC_SUBST(THREAD_LIBS_INSTALLED) | |
3a629497 JB |
666 | ]) |
667 |