1 | ## libtool.m4 - Configure libtool for the host system. -*-Shell-script-*-
|
---|
2 | ## Copyright (C) 1996-1999,2000 Free Software Foundation, Inc.
|
---|
3 | ## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
|
---|
4 | ##
|
---|
5 | ## This program is free software; you can redistribute it and/or modify
|
---|
6 | ## it under the terms of the GNU General Public License as published by
|
---|
7 | ## the Free Software Foundation; either version 2 of the License, or
|
---|
8 | ## (at your option) any later version.
|
---|
9 | ##
|
---|
10 | ## This program is distributed in the hope that it will be useful, but
|
---|
11 | ## WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
12 | ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
13 | ## General Public License for more details.
|
---|
14 | ##
|
---|
15 | ## You should have received a copy of the GNU General Public License
|
---|
16 | ## along with this program; if not, write to the Free Software
|
---|
17 | ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
---|
18 | ##
|
---|
19 | ## As a special exception to the GNU General Public License, if you
|
---|
20 | ## distribute this file as part of a program that contains a
|
---|
21 | ## configuration script generated by Autoconf, you may include it under
|
---|
22 | ## the same distribution terms that you use for the rest of that program.
|
---|
23 |
|
---|
24 | # serial 45 AC_PROG_LIBTOOL
|
---|
25 | AC_DEFUN(AC_PROG_LIBTOOL,[AC_REQUIRE([_AC_PROG_LIBTOOL])
|
---|
26 | dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX
|
---|
27 | dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX.
|
---|
28 | AC_PROVIDE_IFELSE([AC_PROG_CXX],
|
---|
29 | [AC_LIBTOOL_CXX],
|
---|
30 | [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX
|
---|
31 | ])])
|
---|
32 |
|
---|
33 | dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly.
|
---|
34 | dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run
|
---|
35 | dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both.
|
---|
36 | AC_PROVIDE_IFELSE([AC_PROG_GCJ],
|
---|
37 | [AC_LIBTOOL_GCJ],
|
---|
38 | [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
|
---|
39 | [AC_LIBTOOL_GCJ],
|
---|
40 | [ifdef([AC_PROG_GCJ],
|
---|
41 | [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ
|
---|
42 | ])])
|
---|
43 | ifdef([A][M_PROG_GCJ],
|
---|
44 | [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ
|
---|
45 | ])])])])])
|
---|
46 |
|
---|
47 | AC_DEFUN(_AC_PROG_LIBTOOL,
|
---|
48 | [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
|
---|
49 | AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl
|
---|
50 | AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl
|
---|
51 |
|
---|
52 | # Save cache, so that ltconfig can load it
|
---|
53 | AC_CACHE_SAVE
|
---|
54 |
|
---|
55 | # Actually configure libtool. ac_aux_dir is where install-sh is found.
|
---|
56 | AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
|
---|
57 | MAGIC="$MAGIC" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
|
---|
58 | LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
|
---|
59 | AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
|
---|
60 | objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
|
---|
61 | deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \
|
---|
62 | ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
|
---|
63 | $libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \
|
---|
64 | || AC_MSG_ERROR([libtool configure failed])
|
---|
65 |
|
---|
66 | # Reload cache, that may have been modified by ltconfig
|
---|
67 | AC_CACHE_LOAD
|
---|
68 |
|
---|
69 | # This can be used to rebuild libtool when needed
|
---|
70 | LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh"
|
---|
71 |
|
---|
72 | # Always use our own libtool.
|
---|
73 | LIBTOOL='$(SHELL) $(top_builddir)/libtool'
|
---|
74 | AC_SUBST(LIBTOOL)dnl
|
---|
75 |
|
---|
76 | # Redirect the config.log output again, so that the ltconfig log is not
|
---|
77 | # clobbered by the next message.
|
---|
78 | exec 5>>./config.log
|
---|
79 | ])
|
---|
80 |
|
---|
81 | AC_DEFUN(AC_LIBTOOL_SETUP,
|
---|
82 | [AC_PREREQ(2.13)dnl
|
---|
83 | AC_REQUIRE([AC_ENABLE_SHARED])dnl
|
---|
84 | AC_REQUIRE([AC_ENABLE_STATIC])dnl
|
---|
85 | AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
|
---|
86 | AC_REQUIRE([AC_CANONICAL_HOST])dnl
|
---|
87 | AC_REQUIRE([AC_CANONICAL_BUILD])dnl
|
---|
88 | AC_REQUIRE([AC_PROG_CC])dnl
|
---|
89 | AC_REQUIRE([AC_PROG_LD])dnl
|
---|
90 | AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
|
---|
91 | AC_REQUIRE([AC_PROG_NM])dnl
|
---|
92 | AC_REQUIRE([AC_PROG_LN_S])dnl
|
---|
93 | AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
|
---|
94 | # Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
|
---|
95 | AC_REQUIRE([AC_OBJEXT])dnl
|
---|
96 | AC_REQUIRE([AC_EXEEXT])dnl
|
---|
97 | dnl
|
---|
98 |
|
---|
99 | # Only perform the check for file, if the check method requires it
|
---|
100 | case "$deplibs_check_method" in
|
---|
101 | file_magic*)
|
---|
102 | if test "$file_magic_cmd" = '${MAGIC}'; then
|
---|
103 | AC_PATH_MAGIC
|
---|
104 | fi
|
---|
105 | ;;
|
---|
106 | esac
|
---|
107 |
|
---|
108 | AC_CHECK_TOOL(RANLIB, ranlib, :)
|
---|
109 | AC_CHECK_TOOL(STRIP, strip, :)
|
---|
110 |
|
---|
111 | # Check for any special flags to pass to ltconfig.
|
---|
112 | libtool_flags="--cache-file=$cache_file"
|
---|
113 | test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
|
---|
114 | test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
|
---|
115 | test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
|
---|
116 | test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
|
---|
117 | test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
|
---|
118 | ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
|
---|
119 | [libtool_flags="$libtool_flags --enable-dlopen"])
|
---|
120 | ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
|
---|
121 | [libtool_flags="$libtool_flags --enable-win32-dll"])
|
---|
122 | AC_ARG_ENABLE(libtool-lock,
|
---|
123 | [ --disable-libtool-lock avoid locking (might break parallel builds)])
|
---|
124 | test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
|
---|
125 | test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
|
---|
126 |
|
---|
127 | AC_ARG_WITH(pic,
|
---|
128 | [ --with-pic try to use only PIC/non-PIC objects [default=use both]],
|
---|
129 | pic_mode="$withval", pic_mode=default)
|
---|
130 | test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic"
|
---|
131 | test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
|
---|
132 |
|
---|
133 | # Some flags need to be propagated to the compiler or linker for good
|
---|
134 | # libtool support.
|
---|
135 | case "$host" in
|
---|
136 | *-*-irix6*)
|
---|
137 | # Find out which ABI we are using.
|
---|
138 | echo '[#]line __oline__ "configure"' > conftest.$ac_ext
|
---|
139 | if AC_TRY_EVAL(ac_compile); then
|
---|
140 | case "`/usr/bin/file conftest.o`" in
|
---|
141 | *32-bit*)
|
---|
142 | LD="${LD-ld} -32"
|
---|
143 | ;;
|
---|
144 | *N32*)
|
---|
145 | LD="${LD-ld} -n32"
|
---|
146 | ;;
|
---|
147 | *64-bit*)
|
---|
148 | LD="${LD-ld} -64"
|
---|
149 | ;;
|
---|
150 | esac
|
---|
151 | fi
|
---|
152 | rm -rf conftest*
|
---|
153 | ;;
|
---|
154 |
|
---|
155 | *-*-sco3.2v5*)
|
---|
156 | # On SCO OpenServer 5, we need -belf to get full-featured binaries.
|
---|
157 | SAVE_CFLAGS="$CFLAGS"
|
---|
158 | CFLAGS="$CFLAGS -belf"
|
---|
159 | AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
|
---|
160 | [AC_LANG_SAVE
|
---|
161 | AC_LANG_C
|
---|
162 | AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
|
---|
163 | AC_LANG_RESTORE])
|
---|
164 | if test x"$lt_cv_cc_needs_belf" != x"yes"; then
|
---|
165 | # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
|
---|
166 | CFLAGS="$SAVE_CFLAGS"
|
---|
167 | fi
|
---|
168 | ;;
|
---|
169 |
|
---|
170 | ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
|
---|
171 | [*-*-cygwin* | *-*-mingw*)
|
---|
172 | AC_CHECK_TOOL(DLLTOOL, dlltool, false)
|
---|
173 | AC_CHECK_TOOL(AS, as, false)
|
---|
174 | AC_CHECK_TOOL(OBJDUMP, objdump, false)
|
---|
175 |
|
---|
176 | # recent cygwin and mingw systems supply a stub DllMain which the user
|
---|
177 | # can override, but on older systems we have to supply one
|
---|
178 | AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
|
---|
179 | [AC_TRY_LINK([],
|
---|
180 | [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
|
---|
181 | DllMain (0, 0, 0);],
|
---|
182 | [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
|
---|
183 |
|
---|
184 | case "$host/$CC" in
|
---|
185 | *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
|
---|
186 | # old mingw systems require "-dll" to link a DLL, while more recent ones
|
---|
187 | # require "-mdll"
|
---|
188 | SAVE_CFLAGS="$CFLAGS"
|
---|
189 | CFLAGS="$CFLAGS -mdll"
|
---|
190 | AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
|
---|
191 | [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
|
---|
192 | CFLAGS="$SAVE_CFLAGS" ;;
|
---|
193 | *-*-cygwin*)
|
---|
194 | # cygwin systems need to pass --dll to the linker, and not link
|
---|
195 | # crt.o which will require a WinMain@16 definition.
|
---|
196 | lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
|
---|
197 | esac
|
---|
198 | ;;
|
---|
199 | ])
|
---|
200 | esac
|
---|
201 | ])
|
---|
202 |
|
---|
203 | # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
|
---|
204 | AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
|
---|
205 |
|
---|
206 | # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
|
---|
207 | AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
|
---|
208 |
|
---|
209 | # AC_ENABLE_SHARED - implement the --enable-shared flag
|
---|
210 | # Usage: AC_ENABLE_SHARED[(DEFAULT)]
|
---|
211 | # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
|
---|
212 | # `yes'.
|
---|
213 | AC_DEFUN(AC_ENABLE_SHARED, [dnl
|
---|
214 | define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
|
---|
215 | AC_ARG_ENABLE(shared,
|
---|
216 | changequote(<<, >>)dnl
|
---|
217 | << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
|
---|
218 | changequote([, ])dnl
|
---|
219 | [p=${PACKAGE-default}
|
---|
220 | case "$enableval" in
|
---|
221 | yes) enable_shared=yes ;;
|
---|
222 | no) enable_shared=no ;;
|
---|
223 | *)
|
---|
224 | enable_shared=no
|
---|
225 | # Look at the argument we got. We use all the common list separators.
|
---|
226 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
|
---|
227 | for pkg in $enableval; do
|
---|
228 | if test "X$pkg" = "X$p"; then
|
---|
229 | enable_shared=yes
|
---|
230 | fi
|
---|
231 | done
|
---|
232 | IFS="$ac_save_ifs"
|
---|
233 | ;;
|
---|
234 | esac],
|
---|
235 | enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
|
---|
236 | ])
|
---|
237 |
|
---|
238 | # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
|
---|
239 | AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
|
---|
240 | AC_ENABLE_SHARED(no)])
|
---|
241 |
|
---|
242 | # AC_ENABLE_STATIC - implement the --enable-static flag
|
---|
243 | # Usage: AC_ENABLE_STATIC[(DEFAULT)]
|
---|
244 | # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
|
---|
245 | # `yes'.
|
---|
246 | AC_DEFUN(AC_ENABLE_STATIC, [dnl
|
---|
247 | define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
|
---|
248 | AC_ARG_ENABLE(static,
|
---|
249 | changequote(<<, >>)dnl
|
---|
250 | << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
|
---|
251 | changequote([, ])dnl
|
---|
252 | [p=${PACKAGE-default}
|
---|
253 | case "$enableval" in
|
---|
254 | yes) enable_static=yes ;;
|
---|
255 | no) enable_static=no ;;
|
---|
256 | *)
|
---|
257 | enable_static=no
|
---|
258 | # Look at the argument we got. We use all the common list separators.
|
---|
259 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
|
---|
260 | for pkg in $enableval; do
|
---|
261 | if test "X$pkg" = "X$p"; then
|
---|
262 | enable_static=yes
|
---|
263 | fi
|
---|
264 | done
|
---|
265 | IFS="$ac_save_ifs"
|
---|
266 | ;;
|
---|
267 | esac],
|
---|
268 | enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
|
---|
269 | ])
|
---|
270 |
|
---|
271 | # AC_DISABLE_STATIC - set the default static flag to --disable-static
|
---|
272 | AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
|
---|
273 | AC_ENABLE_STATIC(no)])
|
---|
274 |
|
---|
275 |
|
---|
276 | # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
|
---|
277 | # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
|
---|
278 | # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
|
---|
279 | # `yes'.
|
---|
280 | AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
|
---|
281 | define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
|
---|
282 | AC_ARG_ENABLE(fast-install,
|
---|
283 | changequote(<<, >>)dnl
|
---|
284 | << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
|
---|
285 | changequote([, ])dnl
|
---|
286 | [p=${PACKAGE-default}
|
---|
287 | case "$enableval" in
|
---|
288 | yes) enable_fast_install=yes ;;
|
---|
289 | no) enable_fast_install=no ;;
|
---|
290 | *)
|
---|
291 | enable_fast_install=no
|
---|
292 | # Look at the argument we got. We use all the common list separators.
|
---|
293 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
|
---|
294 | for pkg in $enableval; do
|
---|
295 | if test "X$pkg" = "X$p"; then
|
---|
296 | enable_fast_install=yes
|
---|
297 | fi
|
---|
298 | done
|
---|
299 | IFS="$ac_save_ifs"
|
---|
300 | ;;
|
---|
301 | esac],
|
---|
302 | enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
|
---|
303 | ])
|
---|
304 |
|
---|
305 | # AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
|
---|
306 | AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
|
---|
307 | AC_ENABLE_FAST_INSTALL(no)])
|
---|
308 |
|
---|
309 | # AC_LIBTOOL_PICMODE - implement the --with-pic flag
|
---|
310 | # Usage: AC_LIBTOOL_PICMODE[(MODE)]
|
---|
311 | # Where MODE is either `yes' or `no'. If omitted, it defaults to
|
---|
312 | # `both'.
|
---|
313 | AC_DEFUN(AC_LIBTOOL_PICMODE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
|
---|
314 | pic_mode=ifelse($#,1,$1,default)])
|
---|
315 |
|
---|
316 |
|
---|
317 | # AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
|
---|
318 | AC_DEFUN(AC_PATH_TOOL_PREFIX,
|
---|
319 | [AC_MSG_CHECKING([for $1])
|
---|
320 | AC_CACHE_VAL(lt_cv_path_MAGIC,
|
---|
321 | [case "$MAGIC" in
|
---|
322 | /*)
|
---|
323 | lt_cv_path_MAGIC="$MAGIC" # Let the user override the test with a path.
|
---|
324 | ;;
|
---|
325 | ?:/*)
|
---|
326 | ac_cv_path_MAGIC="$MAGIC" # Let the user override the test with a dos path.
|
---|
327 | ;;
|
---|
328 | *)
|
---|
329 | ac_save_MAGIC="$MAGIC"
|
---|
330 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
|
---|
331 | dnl $ac_dummy forces splitting on constant user-supplied paths.
|
---|
332 | dnl POSIX.2 word splitting is done only on the output of word expansions,
|
---|
333 | dnl not every word. This closes a longstanding sh security hole.
|
---|
334 | ac_dummy="ifelse([$2], , $PATH, [$2])"
|
---|
335 | for ac_dir in $ac_dummy; do
|
---|
336 | test -z "$ac_dir" && ac_dir=.
|
---|
337 | if test -f $ac_dir/$1; then
|
---|
338 | lt_cv_path_MAGIC="$ac_dir/$1"
|
---|
339 | if test -n "$file_magic_test_file"; then
|
---|
340 | case "$deplibs_check_method" in
|
---|
341 | "file_magic "*)
|
---|
342 | file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
|
---|
343 | MAGIC="$lt_cv_path_MAGIC"
|
---|
344 | if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
|
---|
345 | egrep "$file_magic_regex" > /dev/null; then
|
---|
346 | :
|
---|
347 | else
|
---|
348 | cat <<EOF 1>&2
|
---|
349 |
|
---|
350 | *** Warning: the command libtool uses to detect shared libraries,
|
---|
351 | *** $file_magic_cmd, produces output that libtool cannot recognize.
|
---|
352 | *** The result is that libtool may fail to recognize shared libraries
|
---|
353 | *** as such. This will affect the creation of libtool libraries that
|
---|
354 | *** depend on shared libraries, but programs linked with such libtool
|
---|
355 | *** libraries will work regardless of this problem. Nevertheless, you
|
---|
356 | *** may want to report the problem to your system manager and/or to
|
---|
357 | *** bug-libtool@gnu.org
|
---|
358 |
|
---|
359 | EOF
|
---|
360 | fi ;;
|
---|
361 | esac
|
---|
362 | fi
|
---|
363 | break
|
---|
364 | fi
|
---|
365 | done
|
---|
366 | IFS="$ac_save_ifs"
|
---|
367 | MAGIC="$ac_save_MAGIC"
|
---|
368 | ;;
|
---|
369 | esac])
|
---|
370 | MAGIC="$lt_cv_path_MAGIC"
|
---|
371 | if test -n "$MAGIC"; then
|
---|
372 | AC_MSG_RESULT($MAGIC)
|
---|
373 | else
|
---|
374 | AC_MSG_RESULT(no)
|
---|
375 | fi
|
---|
376 | ])
|
---|
377 |
|
---|
378 |
|
---|
379 | # AC_PATH_MAGIC - find a file program which can recognise a shared library
|
---|
380 | AC_DEFUN(AC_PATH_MAGIC,
|
---|
381 | [AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
|
---|
382 | AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
|
---|
383 | if test -z "$lt_cv_path_MAGIC"; then
|
---|
384 | if test -n "$ac_tool_prefix"; then
|
---|
385 | AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
|
---|
386 | else
|
---|
387 | MAGIC=:
|
---|
388 | fi
|
---|
389 | fi
|
---|
390 | ])
|
---|
391 |
|
---|
392 |
|
---|
393 | # AC_PROG_LD - find the path to the GNU or non-GNU linker
|
---|
394 | AC_DEFUN(AC_PROG_LD,
|
---|
395 | [AC_ARG_WITH(gnu-ld,
|
---|
396 | [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
|
---|
397 | test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
|
---|
398 | AC_REQUIRE([AC_PROG_CC])dnl
|
---|
399 | AC_REQUIRE([AC_CANONICAL_HOST])dnl
|
---|
400 | AC_REQUIRE([AC_CANONICAL_BUILD])dnl
|
---|
401 | ac_prog=ld
|
---|
402 | if test "$ac_cv_prog_gcc" = yes; then
|
---|
403 | # Check if gcc -print-prog-name=ld gives a path.
|
---|
404 | AC_MSG_CHECKING([for ld used by GCC])
|
---|
405 | case $host in
|
---|
406 | *-*-mingw*)
|
---|
407 | # gcc leaves a trailing carriage return which upsets mingw
|
---|
408 | ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
|
---|
409 | *)
|
---|
410 | ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
|
---|
411 | esac
|
---|
412 | case "$ac_prog" in
|
---|
413 | # Accept absolute paths.
|
---|
414 | changequote(,)dnl
|
---|
415 | [\\/]* | [A-Za-z]:[\\/]*)
|
---|
416 | re_direlt='/[^/][^/]*/\.\./'
|
---|
417 | changequote([,])dnl
|
---|
418 | # Canonicalize the path of ld
|
---|
419 | ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
|
---|
420 | while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
|
---|
421 | ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
|
---|
422 | done
|
---|
423 | test -z "$LD" && LD="$ac_prog"
|
---|
424 | ;;
|
---|
425 | "")
|
---|
426 | # If it fails, then pretend we aren't using GCC.
|
---|
427 | ac_prog=ld
|
---|
428 | ;;
|
---|
429 | *)
|
---|
430 | # If it is relative, then search for the first ld in PATH.
|
---|
431 | with_gnu_ld=unknown
|
---|
432 | ;;
|
---|
433 | esac
|
---|
434 | elif test "$with_gnu_ld" = yes; then
|
---|
435 | AC_MSG_CHECKING([for GNU ld])
|
---|
436 | else
|
---|
437 | AC_MSG_CHECKING([for non-GNU ld])
|
---|
438 | fi
|
---|
439 | AC_CACHE_VAL(ac_cv_path_LD,
|
---|
440 | [if test -z "$LD"; then
|
---|
441 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
|
---|
442 | for ac_dir in $PATH; do
|
---|
443 | test -z "$ac_dir" && ac_dir=.
|
---|
444 | if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
|
---|
445 | ac_cv_path_LD="$ac_dir/$ac_prog"
|
---|
446 | # Check to see if the program is GNU ld. I'd rather use --version,
|
---|
447 | # but apparently some GNU ld's only accept -v.
|
---|
448 | # Break only if it was the GNU/non-GNU ld that we prefer.
|
---|
449 | if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
|
---|
450 | test "$with_gnu_ld" != no && break
|
---|
451 | else
|
---|
452 | test "$with_gnu_ld" != yes && break
|
---|
453 | fi
|
---|
454 | fi
|
---|
455 | done
|
---|
456 | IFS="$ac_save_ifs"
|
---|
457 | else
|
---|
458 | ac_cv_path_LD="$LD" # Let the user override the test with a path.
|
---|
459 | fi])
|
---|
460 | LD="$ac_cv_path_LD"
|
---|
461 | if test -n "$LD"; then
|
---|
462 | AC_MSG_RESULT($LD)
|
---|
463 | else
|
---|
464 | AC_MSG_RESULT(no)
|
---|
465 | fi
|
---|
466 | test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
|
---|
467 | AC_PROG_LD_GNU
|
---|
468 | ])
|
---|
469 |
|
---|
470 | AC_DEFUN(AC_PROG_LD_GNU,
|
---|
471 | [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
|
---|
472 | [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
|
---|
473 | if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
|
---|
474 | ac_cv_prog_gnu_ld=yes
|
---|
475 | else
|
---|
476 | ac_cv_prog_gnu_ld=no
|
---|
477 | fi])
|
---|
478 | with_gnu_ld=$ac_cv_prog_gnu_ld
|
---|
479 | ])
|
---|
480 |
|
---|
481 | # AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
|
---|
482 | # -- PORTME Some linkers may need a different reload flag.
|
---|
483 | AC_DEFUN(AC_PROG_LD_RELOAD_FLAG,
|
---|
484 | [AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
|
---|
485 | [lt_cv_ld_reload_flag='-r'])
|
---|
486 | reload_flag=$lt_cv_ld_reload_flag
|
---|
487 | test -n "$reload_flag" && reload_flag=" $reload_flag"
|
---|
488 | ])
|
---|
489 |
|
---|
490 | # AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
|
---|
491 | # -- PORTME fill in with the dynamic library characteristics
|
---|
492 | AC_DEFUN(AC_DEPLIBS_CHECK_METHOD,
|
---|
493 | [AC_CACHE_CHECK([how to recognise dependant libraries],
|
---|
494 | lt_cv_deplibs_check_method,
|
---|
495 | [lt_cv_file_magic_cmd='${MAGIC}'
|
---|
496 | lt_cv_file_magic_test_file=
|
---|
497 | lt_cv_deplibs_check_method='unknown'
|
---|
498 | # Need to set the preceding variable on all platforms that support
|
---|
499 | # interlibrary dependencies.
|
---|
500 | # 'none' -- dependencies not supported.
|
---|
501 | # `unknown' -- same as none, but documents that we really don't know.
|
---|
502 | # 'pass_all' -- all dependencies passed with no checks.
|
---|
503 | # 'test_compile' -- check by making test program.
|
---|
504 | # 'file_magic [regex]' -- check by looking for files in library path
|
---|
505 | # which responds to the $file_magic_cmd with a given egrep regex.
|
---|
506 | # If you have `file' or equivalent on your system and you're not sure
|
---|
507 | # whether `pass_all' will *always* work, you probably want this one.
|
---|
508 |
|
---|
509 | case "$host_os" in
|
---|
510 | aix4*)
|
---|
511 | lt_cv_deplibs_check_method=pass_all
|
---|
512 | ;;
|
---|
513 |
|
---|
514 | beos*)
|
---|
515 | lt_cv_deplibs_check_method=pass_all
|
---|
516 | ;;
|
---|
517 |
|
---|
518 | bsdi4*)
|
---|
519 | changequote(,)dnl
|
---|
520 | lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
|
---|
521 | changequote([, ])dnl
|
---|
522 | lt_cv_file_magic_cmd='/usr/bin/file -L'
|
---|
523 | lt_cv_file_magic_test_file=/shlib/libc.so
|
---|
524 | ;;
|
---|
525 |
|
---|
526 | cygwin* | mingw*)
|
---|
527 | lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
|
---|
528 | lt_cv_file_magic_cmd='${OBJDUMP} -f'
|
---|
529 | ;;
|
---|
530 |
|
---|
531 | freebsd* )
|
---|
532 | if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
---|
533 | case "$host_cpu" in
|
---|
534 | i*86 )
|
---|
535 | # Not sure whether the presence of OpenBSD here was a mistake.
|
---|
536 | # Let's accept both of them until this is cleared up.
|
---|
537 | changequote(,)dnl
|
---|
538 | lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'
|
---|
539 | changequote([, ])dnl
|
---|
540 | lt_cv_file_magic_cmd=/usr/bin/file
|
---|
541 | lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
|
---|
542 | ;;
|
---|
543 | esac
|
---|
544 | else
|
---|
545 | lt_cv_deplibs_check_method=pass_all
|
---|
546 | fi
|
---|
547 | ;;
|
---|
548 |
|
---|
549 | gnu*)
|
---|
550 | lt_cv_deplibs_check_method=pass_all
|
---|
551 | ;;
|
---|
552 |
|
---|
553 | hpux10.20*)
|
---|
554 | # TODO: Does this work for hpux-11 too?
|
---|
555 | lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
|
---|
556 | lt_cv_file_magic_cmd=/usr/bin/file
|
---|
557 | lt_cv_file_magic_test_file=/usr/lib/libc.sl
|
---|
558 | ;;
|
---|
559 |
|
---|
560 | irix5* | irix6*)
|
---|
561 | case "$host_os" in
|
---|
562 | irix5*)
|
---|
563 | # this will be overridden with pass_all, but let us keep it just in case
|
---|
564 | lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
|
---|
565 | ;;
|
---|
566 | *)
|
---|
567 | case "$LD" in
|
---|
568 | *-32|*"-32 ") libmagic=32-bit;;
|
---|
569 | *-n32|*"-n32 ") libmagic=N32;;
|
---|
570 | *-64|*"-64 ") libmagic=64-bit;;
|
---|
571 | *) libmagic=never-match;;
|
---|
572 | esac
|
---|
573 | # this will be overridden with pass_all, but let us keep it just in case
|
---|
574 | changequote(,)dnl
|
---|
575 | lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"
|
---|
576 | changequote([, ])dnl
|
---|
577 | ;;
|
---|
578 | esac
|
---|
579 | lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
|
---|
580 | lt_cv_deplibs_check_method=pass_all
|
---|
581 | ;;
|
---|
582 |
|
---|
583 | # This must be Linux ELF.
|
---|
584 | linux-gnu*)
|
---|
585 | case "$host_cpu" in
|
---|
586 | alpha* | i*86 | powerpc* | sparc* | ia64* )
|
---|
587 | lt_cv_deplibs_check_method=pass_all ;;
|
---|
588 | *)
|
---|
589 | # glibc up to 2.1.1 does not perform some relocations on ARM
|
---|
590 | changequote(,)dnl
|
---|
591 | lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;;
|
---|
592 | changequote([, ])dnl
|
---|
593 | esac
|
---|
594 | lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
|
---|
595 | ;;
|
---|
596 |
|
---|
597 | netbsd*)
|
---|
598 | if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then :
|
---|
599 | else
|
---|
600 | changequote(,)dnl
|
---|
601 | lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
|
---|
602 | changequote([, ])dnl
|
---|
603 | lt_cv_file_magic_cmd='/usr/bin/file -L'
|
---|
604 | lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
|
---|
605 | fi
|
---|
606 | ;;
|
---|
607 |
|
---|
608 | osf3* | osf4* | osf5*)
|
---|
609 | # this will be overridden with pass_all, but let us keep it just in case
|
---|
610 | lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
|
---|
611 | lt_cv_file_magic_test_file=/shlib/libc.so
|
---|
612 | lt_cv_deplibs_check_method=pass_all
|
---|
613 | ;;
|
---|
614 |
|
---|
615 | sco3.2v5*)
|
---|
616 | lt_cv_deplibs_check_method=pass_all
|
---|
617 | ;;
|
---|
618 |
|
---|
619 | solaris*)
|
---|
620 | lt_cv_deplibs_check_method=pass_all
|
---|
621 | lt_cv_file_magic_test_file=/lib/libc.so
|
---|
622 | ;;
|
---|
623 |
|
---|
624 | sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
|
---|
625 | case "$host_vendor" in
|
---|
626 | ncr)
|
---|
627 | lt_cv_deplibs_check_method=pass_all
|
---|
628 | ;;
|
---|
629 | motorola)
|
---|
630 | changequote(,)dnl
|
---|
631 | lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
|
---|
632 | changequote([, ])dnl
|
---|
633 | lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
|
---|
634 | ;;
|
---|
635 | esac
|
---|
636 | ;;
|
---|
637 | esac
|
---|
638 | ])
|
---|
639 | file_magic_cmd=$lt_cv_file_magic_cmd
|
---|
640 | deplibs_check_method=$lt_cv_deplibs_check_method
|
---|
641 | ])
|
---|
642 |
|
---|
643 |
|
---|
644 | # AC_PROG_NM - find the path to a BSD-compatible name lister
|
---|
645 | AC_DEFUN(AC_PROG_NM,
|
---|
646 | [AC_MSG_CHECKING([for BSD-compatible nm])
|
---|
647 | AC_CACHE_VAL(ac_cv_path_NM,
|
---|
648 | [if test -n "$NM"; then
|
---|
649 | # Let the user override the test.
|
---|
650 | ac_cv_path_NM="$NM"
|
---|
651 | else
|
---|
652 | IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
|
---|
653 | for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
|
---|
654 | test -z "$ac_dir" && ac_dir=.
|
---|
655 | tmp_nm=$ac_dir/${ac_tool_prefix}nm
|
---|
656 | if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
|
---|
657 | # Check to see if the nm accepts a BSD-compat flag.
|
---|
658 | # Adding the `sed 1q' prevents false positives on HP-UX, which says:
|
---|
659 | # nm: unknown option "B" ignored
|
---|
660 | # Tru64's nm complains that /dev/null is an invalid object file
|
---|
661 | if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
|
---|
662 | ac_cv_path_NM="$tmp_nm -B"
|
---|
663 | break
|
---|
664 | elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
|
---|
665 | ac_cv_path_NM="$tmp_nm -p"
|
---|
666 | break
|
---|
667 | else
|
---|
668 | ac_cv_path_NM=${ac_cv_path_NM="$tmp_nm"} # keep the first match, but
|
---|
669 | continue # so that we can try to find one that supports BSD flags
|
---|
670 | fi
|
---|
671 | fi
|
---|
672 | done
|
---|
673 | IFS="$ac_save_ifs"
|
---|
674 | test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
|
---|
675 | fi])
|
---|
676 | NM="$ac_cv_path_NM"
|
---|
677 | AC_MSG_RESULT([$NM])
|
---|
678 | ])
|
---|
679 |
|
---|
680 | # AC_CHECK_LIBM - check for math library
|
---|
681 | AC_DEFUN(AC_CHECK_LIBM,
|
---|
682 | [AC_REQUIRE([AC_CANONICAL_HOST])dnl
|
---|
683 | LIBM=
|
---|
684 | case "$host" in
|
---|
685 | *-*-beos* | *-*-cygwin*)
|
---|
686 | # These system don't have libm
|
---|
687 | ;;
|
---|
688 | *-ncr-sysv4.3*)
|
---|
689 | AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
|
---|
690 | AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
|
---|
691 | ;;
|
---|
692 | *)
|
---|
693 | AC_CHECK_LIB(m, main, LIBM="-lm")
|
---|
694 | ;;
|
---|
695 | esac
|
---|
696 | ])
|
---|
697 |
|
---|
698 | # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
|
---|
699 | # the libltdl convenience library and INCLTDL to the include flags for
|
---|
700 | # the libltdl header and adds --enable-ltdl-convenience to the
|
---|
701 | # configure arguments. Note that LIBLTDL and INCLTDL are not
|
---|
702 | # AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
|
---|
703 | # provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
|
---|
704 | # with '${top_builddir}/' and INCLTDL will be prefixed with
|
---|
705 | # '${top_srcdir}/' (note the single quotes!). If your package is not
|
---|
706 | # flat and you're not using automake, define top_builddir and
|
---|
707 | # top_srcdir appropriately in the Makefiles.
|
---|
708 | AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
|
---|
709 | case "$enable_ltdl_convenience" in
|
---|
710 | no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
|
---|
711 | "") enable_ltdl_convenience=yes
|
---|
712 | ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
|
---|
713 | esac
|
---|
714 | LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
|
---|
715 | INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
|
---|
716 | ])
|
---|
717 |
|
---|
718 | # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
|
---|
719 | # the libltdl installable library and INCLTDL to the include flags for
|
---|
720 | # the libltdl header and adds --enable-ltdl-install to the configure
|
---|
721 | # arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
|
---|
722 | # AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
|
---|
723 | # libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
|
---|
724 | # be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
|
---|
725 | # with '${top_srcdir}/' (note the single quotes!). If your package is
|
---|
726 | # not flat and you're not using automake, define top_builddir and
|
---|
727 | # top_srcdir appropriately in the Makefiles.
|
---|
728 | # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
|
---|
729 | AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
|
---|
730 | AC_CHECK_LIB(ltdl, main,
|
---|
731 | [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
|
---|
732 | [if test x"$enable_ltdl_install" = xno; then
|
---|
733 | AC_MSG_WARN([libltdl not installed, but installation disabled])
|
---|
734 | else
|
---|
735 | enable_ltdl_install=yes
|
---|
736 | fi
|
---|
737 | ])
|
---|
738 | if test x"$enable_ltdl_install" = x"yes"; then
|
---|
739 | ac_configure_args="$ac_configure_args --enable-ltdl-install"
|
---|
740 | LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
|
---|
741 | INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
|
---|
742 | else
|
---|
743 | ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
|
---|
744 | LIBLTDL="-lltdl"
|
---|
745 | INCLTDL=
|
---|
746 | fi
|
---|
747 | ])
|
---|
748 |
|
---|
749 | # If this macro is not defined by Autoconf, define it here.
|
---|
750 | ifdef([AC_PROVIDE_IFELSE],
|
---|
751 | [],
|
---|
752 | [define([AC_PROVIDE_IFELSE],
|
---|
753 | [ifdef([AC_PROVIDE_$1],
|
---|
754 | [$2], [$3])])])
|
---|
755 |
|
---|
756 | # AC_LIBTOOL_CXX - enable support for C++ libraries
|
---|
757 | AC_DEFUN(AC_LIBTOOL_CXX,[AC_REQUIRE([_AC_LIBTOOL_CXX])])
|
---|
758 | AC_DEFUN(_AC_LIBTOOL_CXX,
|
---|
759 | [AC_REQUIRE([AC_PROG_LIBTOOL])
|
---|
760 | AC_REQUIRE([AC_PROG_CXX])
|
---|
761 | AC_REQUIRE([AC_PROG_CXXCPP])
|
---|
762 | LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh"
|
---|
763 | lt_save_CC="$CC"
|
---|
764 | lt_save_CFLAGS="$CFLAGS"
|
---|
765 | dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
|
---|
766 | dnl is set to the C++ compiler.
|
---|
767 | AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \
|
---|
768 | MAGIC="$MAGIC" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
|
---|
769 | LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
|
---|
770 | AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
|
---|
771 | objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
|
---|
772 | deplibs_check_method="$deplibs_check_method" \
|
---|
773 | file_magic_cmd="$file_magic_cmd" \
|
---|
774 | ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
|
---|
775 | --build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \
|
---|
776 | || AC_MSG_ERROR([libtool tag configuration failed])
|
---|
777 | CC="$lt_save_CC"
|
---|
778 | CFLAGS="$lt_save_CFLAGS"
|
---|
779 |
|
---|
780 | # Redirect the config.log output again, so that the ltconfig log is not
|
---|
781 | # clobbered by the next message.
|
---|
782 | exec 5>>./config.log
|
---|
783 | ])
|
---|
784 |
|
---|
785 | # AC_LIBTOOL_GCJ - enable support for GCJ libraries
|
---|
786 | AC_DEFUN(AC_LIBTOOL_GCJ,[AC_REQUIRE([_AC_LIBTOOL_GCJ])])
|
---|
787 | AC_DEFUN(_AC_LIBTOOL_GCJ,
|
---|
788 | [AC_REQUIRE([AC_PROG_LIBTOOL])
|
---|
789 | AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
|
---|
790 | [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
|
---|
791 | [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
|
---|
792 | [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
|
---|
793 | [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])
|
---|
794 | LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh"
|
---|
795 | lt_save_CC="$CC"
|
---|
796 | lt_save_CFLAGS="$CFLAGS"
|
---|
797 | dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
|
---|
798 | dnl is set to the C++ compiler.
|
---|
799 | AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="" \
|
---|
800 | MAGIC="$MAGIC" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
|
---|
801 | LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
|
---|
802 | AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
|
---|
803 | objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
|
---|
804 | deplibs_check_method="$deplibs_check_method" \
|
---|
805 | file_magic_cmd="$file_magic_cmd" \
|
---|
806 | ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
|
---|
807 | --build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \
|
---|
808 | || AC_MSG_ERROR([libtool tag configuration failed])
|
---|
809 | CC="$lt_save_CC"
|
---|
810 | CFLAGS="$lt_save_CFLAGS"
|
---|
811 |
|
---|
812 | # Redirect the config.log output again, so that the ltconfig log is not
|
---|
813 | # clobbered by the next message.
|
---|
814 | exec 5>>./config.log
|
---|
815 | ])
|
---|
816 |
|
---|
817 | dnl old names
|
---|
818 | AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
|
---|
819 | AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
|
---|
820 | AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
|
---|
821 | AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
|
---|
822 | AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
|
---|
823 | AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
|
---|
824 | AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
|
---|
825 |
|
---|
826 | dnl This is just to silence aclocal about the macro not being used
|
---|
827 | ifelse([AC_DISABLE_FAST_INSTALL])dnl
|
---|
828 |
|
---|
829 | AC_DEFUN([LT_AC_PROG_GCJ],[
|
---|
830 | AC_CHECK_TOOL(GCJ, gcj, no)
|
---|
831 | test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
|
---|
832 | AC_SUBST(GCJFLAGS)
|
---|
833 | ])
|
---|
834 | ## ltdl.m4 - Configure ltdl for the target system. -*-Shell-script-*-
|
---|
835 | ## Copyright (C) 1999-2000 Free Software Foundation, Inc.
|
---|
836 | ##
|
---|
837 | ## This program is free software; you can redistribute it and/or modify
|
---|
838 | ## it under the terms of the GNU General Public License as published by
|
---|
839 | ## the Free Software Foundation; either version 2 of the License, or
|
---|
840 | ## (at your option) any later version.
|
---|
841 | ##
|
---|
842 | ## This program is distributed in the hope that it will be useful, but
|
---|
843 | ## WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
844 | ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
845 | ## General Public License for more details.
|
---|
846 | ##
|
---|
847 | ## You should have received a copy of the GNU General Public License
|
---|
848 | ## along with this program; if not, write to the Free Software
|
---|
849 | ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
---|
850 | ##
|
---|
851 | ## As a special exception to the GNU General Public License, if you
|
---|
852 | ## distribute this file as part of a program that contains a
|
---|
853 | ## configuration script generated by Autoconf, you may include it under
|
---|
854 | ## the same distribution terms that you use for the rest of that program.
|
---|
855 |
|
---|
856 | # serial 1 AC_LIB_LTDL
|
---|
857 |
|
---|
858 | AC_DEFUN(AC_LIB_LTDL,
|
---|
859 | [AC_PREREQ(2.13)dnl
|
---|
860 | AC_REQUIRE([AC_PROG_CC])dnl
|
---|
861 | AC_REQUIRE([AC_C_CONST])dnl
|
---|
862 | AC_REQUIRE([AC_C_INLINE])dnl
|
---|
863 |
|
---|
864 | dnl AC_LIB_LTDL must perform all the checks necessary for compilation
|
---|
865 | dnl of the ltdl objects -- including compiler checks (above) and header
|
---|
866 | dnl checks (below).
|
---|
867 | AC_REQUIRE([AC_HEADER_STDC])dnl
|
---|
868 |
|
---|
869 | AC_CHECK_HEADERS(malloc.h memory.h stdlib.h stdio.h ctype.h dlfcn.h dl.h dld.h)
|
---|
870 | AC_CHECK_HEADERS(string.h strings.h, break)
|
---|
871 | AC_CHECK_FUNCS(strchr index, break)
|
---|
872 | AC_CHECK_FUNCS(strrchr rindex, break)
|
---|
873 | AC_CHECK_FUNCS(strcmp)
|
---|
874 |
|
---|
875 | AC_REQUIRE([AC_LTDL_ENABLE_INSTALL])dnl
|
---|
876 | AC_REQUIRE([AC_LTDL_SHLIBEXT])dnl
|
---|
877 | AC_REQUIRE([AC_LTDL_SHLIBPATH])dnl
|
---|
878 | AC_REQUIRE([AC_LTDL_SYSSEARCHPATH])dnl
|
---|
879 | AC_REQUIRE([AC_LTDL_OBJDIR])dnl
|
---|
880 | AC_REQUIRE([AC_LTDL_DLPREOPEN])dnl
|
---|
881 | AC_REQUIRE([AC_LTDL_DLLIB])dnl
|
---|
882 | AC_REQUIRE([AC_LTDL_SYMBOL_USCORE])dnl
|
---|
883 | ])
|
---|
884 |
|
---|
885 | AC_DEFUN(AC_LTDL_ENABLE_INSTALL,
|
---|
886 | [AC_ARG_ENABLE(ltdl-install,
|
---|
887 | [ --enable-ltdl-install install libltdl])
|
---|
888 |
|
---|
889 | AM_CONDITIONAL(INSTALL_LTDL, test x"${enable_ltdl_install-no}" != xno)
|
---|
890 | AM_CONDITIONAL(CONVENIENCE_LTDL, test x"${enable_ltdl_convenience-no}" != xno)
|
---|
891 | ])])
|
---|
892 |
|
---|
893 |
|
---|
894 | AC_DEFUN(AC_LTDL_SNARF_CONFIG,
|
---|
895 | [# Read the libtool configuration
|
---|
896 | rm -f conftest
|
---|
897 | ./libtool --config > conftest
|
---|
898 | . ./conftest
|
---|
899 | rm -f conftest
|
---|
900 | ])
|
---|
901 |
|
---|
902 | AC_DEFUN(AC_LTDL_SHLIBEXT,
|
---|
903 | [AC_REQUIRE([AC_LTDL_SNARF_CONFIG])dnl
|
---|
904 | AC_CACHE_CHECK([which extension is used for shared libraries],
|
---|
905 | libltdl_cv_shlibext, [dnl
|
---|
906 | (
|
---|
907 | last=
|
---|
908 | for spec in $library_names_spec; do
|
---|
909 | last="$spec"
|
---|
910 | done
|
---|
911 | changequote(, )
|
---|
912 | echo "$last" | sed 's/\[.*\]//;s/^[^.]*//;s/\$.*$//;s/\.$//' > conftest
|
---|
913 | changequote([, ])
|
---|
914 | )
|
---|
915 | libltdl_cv_shlibext=`cat conftest`
|
---|
916 | rm -f conftest
|
---|
917 | ])
|
---|
918 | if test -n "$libltdl_cv_shlibext"; then
|
---|
919 | AC_DEFINE_UNQUOTED(LTDL_SHLIB_EXT, "$libltdl_cv_shlibext",
|
---|
920 | [Define to the extension used for shared libraries, say, ".so". ])
|
---|
921 | fi
|
---|
922 | ])
|
---|
923 |
|
---|
924 | AC_DEFUN(AC_LTDL_SHLIBPATH,
|
---|
925 | [AC_REQUIRE([AC_LTDL_SNARF_CONFIG])dnl
|
---|
926 | AC_CACHE_CHECK([which variable specifies run-time library path],
|
---|
927 | libltdl_cv_shlibpath_var, [libltdl_cv_shlibpath_var="$shlibpath_var"])
|
---|
928 | if test -n "$libltdl_cv_shlibpath_var"; then
|
---|
929 | AC_DEFINE_UNQUOTED(LTDL_SHLIBPATH_VAR, "$libltdl_cv_shlibpath_var",
|
---|
930 | [Define to the name of the environment variable that determines the dynamic library search path. ])
|
---|
931 | fi
|
---|
932 | ])
|
---|
933 |
|
---|
934 | AC_DEFUN(AC_LTDL_SYSSEARCHPATH,
|
---|
935 | [AC_REQUIRE([AC_LTDL_SNARF_CONFIG])dnl
|
---|
936 | AC_CACHE_CHECK([for the default library search path],
|
---|
937 | libltdl_cv_sys_search_path, [libltdl_cv_sys_search_path="$sys_lib_dlsearch_path_spec"])
|
---|
938 | if test -n "$libltdl_cv_sys_search_path"; then
|
---|
939 | case "$host" in
|
---|
940 | *-*-mingw*) pathsep=";" ;;
|
---|
941 | *) pathsep=":" ;;
|
---|
942 | esac
|
---|
943 | sys_search_path=
|
---|
944 | for dir in $libltdl_cv_sys_search_path; do
|
---|
945 | if test -z "$sys_search_path"; then
|
---|
946 | sys_search_path="$dir"
|
---|
947 | else
|
---|
948 | sys_search_path="$sys_search_path$pathsep$dir"
|
---|
949 | fi
|
---|
950 | done
|
---|
951 | AC_DEFINE_UNQUOTED(LTDL_SYSSEARCHPATH, "$sys_search_path",
|
---|
952 | [Define to the system default library search path. ])
|
---|
953 | fi
|
---|
954 | ])
|
---|
955 |
|
---|
956 | AC_DEFUN(AC_LTDL_OBJDIR,
|
---|
957 | [AC_CACHE_CHECK([for objdir],
|
---|
958 | libltdl_cv_objdir, [libltdl_cv_objdir="$objdir"
|
---|
959 | if test -n "$objdir"; then
|
---|
960 | :
|
---|
961 | else
|
---|
962 | rm -f .libs 2>/dev/null
|
---|
963 | mkdir .libs 2>/dev/null
|
---|
964 | if test -d .libs; then
|
---|
965 | libltdl_cv_objdir=.libs
|
---|
966 | else
|
---|
967 | # MS-DOS does not allow filenames that begin with a dot.
|
---|
968 | libltdl_cv_objdir=_libs
|
---|
969 | fi
|
---|
970 | rmdir .libs 2>/dev/null
|
---|
971 | fi])
|
---|
972 | AC_DEFINE_UNQUOTED(LTDL_OBJDIR, "$libltdl_cv_objdir/",
|
---|
973 | [Define to the sub-directory in which libtool stores uninstalled libraries. ])
|
---|
974 | ])
|
---|
975 |
|
---|
976 | AC_DEFUN(AC_LTDL_DLPREOPEN,
|
---|
977 | [AC_REQUIRE([AC_LTDL_GLOBAL_SYMBOL_PIPE])dnl
|
---|
978 | AC_CACHE_CHECK([whether libtool supports -dlopen/-dlpreopen],
|
---|
979 | libltdl_cv_preloaded_symbols, [dnl
|
---|
980 | if test -n "$global_symbol_pipe"; then
|
---|
981 | libltdl_cv_preloaded_symbols=yes
|
---|
982 | else
|
---|
983 | libltdl_cv_preloaded_symbols=no
|
---|
984 | fi
|
---|
985 | ])
|
---|
986 | if test x"$libltdl_cv_preloaded_symbols" = x"yes"; then
|
---|
987 | AC_DEFINE(HAVE_PRELOADED_SYMBOLS, 1,
|
---|
988 | [Define if libtool can extract symbol lists from object files. ])
|
---|
989 | fi
|
---|
990 | ])
|
---|
991 |
|
---|
992 | AC_DEFUN(AC_LTDL_DLLIB,
|
---|
993 | [LIBADD_DL=
|
---|
994 | AC_CHECK_LIB(dl, dlopen, [AC_DEFINE(HAVE_LIBDL, 1,
|
---|
995 | [Define if you have the libdl library or equivalent. ]) LIBADD_DL="-ldl"],
|
---|
996 | [AC_CHECK_FUNC(dlopen, [AC_DEFINE(HAVE_LIBDL, 1,
|
---|
997 | [Define if you have the libdl library or equivalent.])],
|
---|
998 | [AC_CHECK_LIB(svld, dlopen, [AC_DEFINE(HAVE_LIBDL, 1,
|
---|
999 | [Define if you have the libdl library or equivalent.]) LIBADD_DL="-lsvld"]
|
---|
1000 | )])])
|
---|
1001 | AC_CHECK_FUNC(shl_load, [AC_DEFINE(HAVE_SHL_LOAD, 1,
|
---|
1002 | [Define if you have the shl_load function.])],
|
---|
1003 | [AC_CHECK_LIB(dld, shl_load,
|
---|
1004 | [AC_DEFINE(HAVE_SHL_LOAD, 1,
|
---|
1005 | [Define if you have the shl_load function.])
|
---|
1006 | LIBADD_DL="$LIBADD_DL -ldld"])
|
---|
1007 | ])
|
---|
1008 | AC_CHECK_LIB(dld, dld_link, [AC_DEFINE(HAVE_DLD, 1,
|
---|
1009 | [Define if you have the GNU dld library.])dnl
|
---|
1010 | test "x$ac_cv_lib_dld_shl_load" = yes || LIBADD_DL="$LIBADD_DL -ldld"])
|
---|
1011 | AC_SUBST(LIBADD_DL)
|
---|
1012 |
|
---|
1013 | if test "x$ac_cv_func_dlopen" = xyes || test "x$ac_cv_lib_dl_dlopen" = xyes; then
|
---|
1014 | LIBS_SAVE="$LIBS"
|
---|
1015 | LIBS="$LIBS $LIBADD_DL"
|
---|
1016 | AC_CHECK_FUNCS(dlerror)
|
---|
1017 | LIBS="$LIBS_SAVE"
|
---|
1018 | fi
|
---|
1019 | ])
|
---|
1020 |
|
---|
1021 | AC_DEFUN(AC_LTDL_GLOBAL_SYMBOL_PIPE,
|
---|
1022 | [dnl Check for command to grab the raw symbol name followed
|
---|
1023 | dnl by C symbol name from nm.
|
---|
1024 | AC_REQUIRE([AC_CANONICAL_HOST])dnl
|
---|
1025 | AC_REQUIRE([AC_PROG_NM])dnl
|
---|
1026 | # Check for command to grab the raw symbol name followed by C symbol from nm.
|
---|
1027 | AC_MSG_CHECKING([command to parse $NM output])
|
---|
1028 | AC_CACHE_VAL(ac_cv_sys_global_symbol_pipe,
|
---|
1029 | [# These are sane defaults that work on at least a few old systems.
|
---|
1030 | # {They come from Ultrix. What could be older than Ultrix?!! ;)}
|
---|
1031 |
|
---|
1032 | changequote(,)dnl
|
---|
1033 | # Character class describing NM global symbol codes.
|
---|
1034 | ac_symcode='[BCDEGRST]'
|
---|
1035 |
|
---|
1036 | # Regexp to match symbols that can be accessed directly from C.
|
---|
1037 | ac_sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
|
---|
1038 |
|
---|
1039 | # Transform the above into a raw symbol and a C symbol.
|
---|
1040 | ac_symxfrm='\1 \2\3 \3'
|
---|
1041 |
|
---|
1042 | # Transform an extracted symbol line into a proper C declaration
|
---|
1043 | ac_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
|
---|
1044 |
|
---|
1045 | # Define system-specific variables.
|
---|
1046 | case "$host_os" in
|
---|
1047 | aix*)
|
---|
1048 | ac_symcode='[BCDT]'
|
---|
1049 | ;;
|
---|
1050 | cygwin* | mingw*)
|
---|
1051 | ac_symcode='[ABCDGISTW]'
|
---|
1052 | ;;
|
---|
1053 | hpux*)
|
---|
1054 | ac_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^. .* \(.*\)$/extern char \1;/p'"
|
---|
1055 | ;;
|
---|
1056 | irix*)
|
---|
1057 | ac_symcode='[BCDEGRST]'
|
---|
1058 | ;;
|
---|
1059 | solaris*)
|
---|
1060 | ac_symcode='[BDT]'
|
---|
1061 | ;;
|
---|
1062 | esac
|
---|
1063 |
|
---|
1064 | # If we're using GNU nm, then use its standard symbol codes.
|
---|
1065 | if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
|
---|
1066 | ac_symcode='[ABCDGISTW]'
|
---|
1067 | fi
|
---|
1068 | changequote([,])dnl
|
---|
1069 |
|
---|
1070 | # Try without a prefix undercore, then with it.
|
---|
1071 | for ac_symprfx in "" "_"; do
|
---|
1072 |
|
---|
1073 | ac_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($ac_symcode\)[ ][ ]*\($ac_symprfx\)$ac_sympat$/$ac_symxfrm/p'"
|
---|
1074 |
|
---|
1075 | # Check to see that the pipe works correctly.
|
---|
1076 | ac_pipe_works=no
|
---|
1077 | rm -f conftest.$ac_ext
|
---|
1078 | cat > conftest.$ac_ext <<EOF
|
---|
1079 | #ifdef __cplusplus
|
---|
1080 | extern "C" {
|
---|
1081 | #endif
|
---|
1082 | char nm_test_var;
|
---|
1083 | void nm_test_func(){}
|
---|
1084 | #ifdef __cplusplus
|
---|
1085 | }
|
---|
1086 | #endif
|
---|
1087 | int main(){nm_test_var='a';nm_test_func;return 0;}
|
---|
1088 | EOF
|
---|
1089 |
|
---|
1090 | if AC_TRY_EVAL(ac_compile); then
|
---|
1091 | # Now try to grab the symbols.
|
---|
1092 | ac_nlist=conftest.nm
|
---|
1093 |
|
---|
1094 | if AC_TRY_EVAL(NM conftest.$ac_objext \| $ac_cv_sys_global_symbol_pipe \> $ac_nlist) && test -s "$ac_nlist"; then
|
---|
1095 |
|
---|
1096 | # Try sorting and uniquifying the output.
|
---|
1097 | if sort "$ac_nlist" | uniq > "$ac_nlist"T; then
|
---|
1098 | mv -f "$ac_nlist"T "$ac_nlist"
|
---|
1099 | else
|
---|
1100 | rm -f "$ac_nlist"T
|
---|
1101 | fi
|
---|
1102 |
|
---|
1103 | # Make sure that we snagged all the symbols we need.
|
---|
1104 | if egrep ' nm_test_var$' "$ac_nlist" >/dev/null; then
|
---|
1105 | if egrep ' nm_test_func$' "$ac_nlist" >/dev/null; then
|
---|
1106 | cat <<EOF > conftest.c
|
---|
1107 | #ifdef __cplusplus
|
---|
1108 | extern "C" {
|
---|
1109 | #endif
|
---|
1110 |
|
---|
1111 | EOF
|
---|
1112 | # Now generate the symbol file.
|
---|
1113 | eval "$ac_global_symbol_to_cdecl"' < "$ac_nlist" >> conftest.c'
|
---|
1114 |
|
---|
1115 | cat <<EOF >> conftest.c
|
---|
1116 | #if defined (__STDC__) && __STDC__
|
---|
1117 | # define lt_ptr_t void *
|
---|
1118 | #else
|
---|
1119 | # define lt_ptr_t char *
|
---|
1120 | # define const
|
---|
1121 | #endif
|
---|
1122 |
|
---|
1123 | /* The mapping between symbol names and symbols. */
|
---|
1124 | const struct {
|
---|
1125 | const char *name;
|
---|
1126 | lt_ptr_t address;
|
---|
1127 | }
|
---|
1128 | changequote(,)dnl
|
---|
1129 | lt_preloaded_symbols[] =
|
---|
1130 | changequote([,])dnl
|
---|
1131 | {
|
---|
1132 | EOF
|
---|
1133 | sed 's/^. \(.*\) \(.*\)$/ {"\2", (lt_ptr_t) \&\2},/' < "$ac_nlist" >> conftest.c
|
---|
1134 | cat <<\EOF >> conftest.c
|
---|
1135 | {0, (lt_ptr_t) 0}
|
---|
1136 | };
|
---|
1137 |
|
---|
1138 | #ifdef __cplusplus
|
---|
1139 | }
|
---|
1140 | #endif
|
---|
1141 | EOF
|
---|
1142 | # Now try linking the two files.
|
---|
1143 | mv conftest.$ac_objext conftstm.$ac_objext
|
---|
1144 | ac_save_LIBS="$LIBS"
|
---|
1145 | ac_save_CFLAGS="$CFLAGS"
|
---|
1146 | LIBS="conftstm.$ac_objext"
|
---|
1147 | CFLAGS="$CFLAGS$no_builtin_flag"
|
---|
1148 | if AC_TRY_EVAL(ac_link) && test -s conftest; then
|
---|
1149 | ac_pipe_works=yes
|
---|
1150 | else
|
---|
1151 | echo "configure: failed program was:" >&AC_FD_CC
|
---|
1152 | cat conftest.c >&AC_FD_CC
|
---|
1153 | fi
|
---|
1154 | LIBS="$ac_save_LIBS"
|
---|
1155 | CFLAGS="$ac_save_CFLAGS"
|
---|
1156 | else
|
---|
1157 | echo "cannot find nm_test_func in $ac_nlist" >&AC_FD_CC
|
---|
1158 | fi
|
---|
1159 | else
|
---|
1160 | echo "cannot find nm_test_var in $ac_nlist" >&AC_FD_CC
|
---|
1161 | fi
|
---|
1162 | else
|
---|
1163 | echo "cannot run $ac_cv_sys_global_symbol_pipe" >&AC_FD_CC
|
---|
1164 | fi
|
---|
1165 | else
|
---|
1166 | echo "$progname: failed program was:" >&AC_FD_CC
|
---|
1167 | cat conftest.c >&AC_FD_CC
|
---|
1168 | fi
|
---|
1169 | rm -rf conftest* conftst*
|
---|
1170 |
|
---|
1171 | # Do not use the global_symbol_pipe unless it works.
|
---|
1172 | if test "$ac_pipe_works" = yes; then
|
---|
1173 | if test x"$ac_symprfx" = x"_"; then
|
---|
1174 | ac_cv_sys_symbol_underscore=yes
|
---|
1175 | else
|
---|
1176 | ac_cv_sys_symbol_underscore=no
|
---|
1177 | fi
|
---|
1178 | break
|
---|
1179 | else
|
---|
1180 | ac_cv_sys_global_symbol_pipe=
|
---|
1181 | fi
|
---|
1182 | done
|
---|
1183 | ])
|
---|
1184 |
|
---|
1185 | ac_result=yes
|
---|
1186 | if test -z "$ac_cv_sys_global_symbol_pipe"; then
|
---|
1187 | ac_result=no
|
---|
1188 | fi
|
---|
1189 | AC_MSG_RESULT($ac_result)
|
---|
1190 | ])
|
---|
1191 |
|
---|
1192 | AC_DEFUN(AC_LTDL_SYMBOL_USCORE,
|
---|
1193 | [dnl does the compiler prefix global symbols with an underscore?
|
---|
1194 | AC_REQUIRE([AC_LTDL_GLOBAL_SYMBOL_PIPE])dnl
|
---|
1195 | AC_MSG_CHECKING([for _ prefix in compiled symbols])
|
---|
1196 | AC_CACHE_VAL(ac_cv_sys_symbol_underscore,
|
---|
1197 | [ac_cv_sys_symbol_underscore=no
|
---|
1198 | cat > conftest.$ac_ext <<EOF
|
---|
1199 | void nm_test_func(){}
|
---|
1200 | int main(){nm_test_func;return 0;}
|
---|
1201 | EOF
|
---|
1202 | if AC_TRY_EVAL(ac_compile); then
|
---|
1203 | # Now try to grab the symbols.
|
---|
1204 | ac_nlist=conftest.nm
|
---|
1205 | if AC_TRY_EVAL(NM conftest.$ac_objext \| $ac_cv_sys_global_symbol_pipe \> $ac_nlist) && test -s "$ac_nlist"; then
|
---|
1206 | # See whether the symbols have a leading underscore.
|
---|
1207 | if egrep '^. _nm_test_func' "$ac_nlist" >/dev/null; then
|
---|
1208 | ac_cv_sys_symbol_underscore=yes
|
---|
1209 | else
|
---|
1210 | if egrep '^. nm_test_func ' "$ac_nlist" >/dev/null; then
|
---|
1211 | :
|
---|
1212 | else
|
---|
1213 | echo "configure: cannot find nm_test_func in $ac_nlist" >&AC_FD_CC
|
---|
1214 | fi
|
---|
1215 | fi
|
---|
1216 | else
|
---|
1217 | echo "configure: cannot run $ac_cv_sys_global_symbol_pipe" >&AC_FD_CC
|
---|
1218 | fi
|
---|
1219 | else
|
---|
1220 | echo "configure: failed program was:" >&AC_FD_CC
|
---|
1221 | cat conftest.c >&AC_FD_CC
|
---|
1222 | fi
|
---|
1223 | rm -rf conftest*
|
---|
1224 | ])
|
---|
1225 | AC_MSG_RESULT($ac_cv_sys_symbol_underscore)
|
---|
1226 | AC_LTDL_DLSYM_USCORE
|
---|
1227 | ])
|
---|
1228 |
|
---|
1229 | AC_DEFUN(AC_LTDL_DLSYM_USCORE,
|
---|
1230 | [AC_REQUIRE([AC_LTDL_SYMBOL_USCORE])dnl
|
---|
1231 | if test x"$ac_cv_sys_symbol_underscore" = xyes; then
|
---|
1232 | if test x"$ac_cv_func_dlopen" = xyes ||
|
---|
1233 | test x"$ac_cv_lib_dl_dlopen" = xyes ; then
|
---|
1234 | AC_CACHE_CHECK([whether we have to add an underscore for dlsym],
|
---|
1235 | libltdl_cv_need_uscore, [dnl
|
---|
1236 | AC_TRY_RUN([
|
---|
1237 | #if HAVE_DLFCN_H
|
---|
1238 | #include <dlfcn.h>
|
---|
1239 | #endif
|
---|
1240 |
|
---|
1241 | #include <stdio.h>
|
---|
1242 |
|
---|
1243 | #ifdef RTLD_GLOBAL
|
---|
1244 | # define LTDL_GLOBAL RTLD_GLOBAL
|
---|
1245 | #else
|
---|
1246 | # ifdef DL_GLOBAL
|
---|
1247 | # define LTDL_GLOBAL DL_GLOBAL
|
---|
1248 | # else
|
---|
1249 | # define LTDL_GLOBAL 0
|
---|
1250 | # endif
|
---|
1251 | #endif
|
---|
1252 |
|
---|
1253 | /* We may have to define LTDL_LAZY_OR_NOW in the command line if we
|
---|
1254 | find out it does not work in some platform. */
|
---|
1255 | #ifndef LTDL_LAZY_OR_NOW
|
---|
1256 | # ifdef RTLD_LAZY
|
---|
1257 | # define LTDL_LAZY_OR_NOW RTLD_LAZY
|
---|
1258 | # else
|
---|
1259 | # ifdef DL_LAZY
|
---|
1260 | # define LTDL_LAZY_OR_NOW DL_LAZY
|
---|
1261 | # else
|
---|
1262 | # ifdef RTLD_NOW
|
---|
1263 | # define LTDL_LAZY_OR_NOW RTLD_NOW
|
---|
1264 | # else
|
---|
1265 | # ifdef DL_NOW
|
---|
1266 | # define LTDL_LAZY_OR_NOW DL_NOW
|
---|
1267 | # else
|
---|
1268 | # define LTDL_LAZY_OR_NOW 0
|
---|
1269 | # endif
|
---|
1270 | # endif
|
---|
1271 | # endif
|
---|
1272 | # endif
|
---|
1273 | #endif
|
---|
1274 |
|
---|
1275 | fnord() { int i=42;}
|
---|
1276 | main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
|
---|
1277 | if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
|
---|
1278 | if(ptr1 && !ptr2) { dlclose(self); exit(0); } } exit(1); }
|
---|
1279 | ], libltdl_cv_need_uscore=no, libltdl_cv_need_uscore=yes,
|
---|
1280 | libltdl_cv_need_uscore=cross
|
---|
1281 | )])
|
---|
1282 | fi
|
---|
1283 | fi
|
---|
1284 |
|
---|
1285 | if test x"$libltdl_cv_need_uscore" = xyes; then
|
---|
1286 | AC_DEFINE(NEED_USCORE, 1,
|
---|
1287 | [Define if dlsym() requires a leading underscode in symbol names. ])
|
---|
1288 | fi
|
---|
1289 | ])
|
---|