blob: 85d7f733b9acba11538b9eba7f1ad5a3d4ad488d [file] [log] [blame]
The Android Open Source Project86abe4b2009-03-03 19:29:20 -08001dnl aclocal.m4 generated automatically by aclocal 1.4-p6
2
3dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
4dnl This file is free software; the Free Software Foundation
5dnl gives unlimited permission to copy and/or distribute it,
6dnl with or without modifications, as long as this notice is preserved.
7
8dnl This program is distributed in the hope that it will be useful,
9dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
10dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
11dnl PARTICULAR PURPOSE.
12
13# lib-prefix.m4 serial 4 (gettext-0.14.2)
14dnl Copyright (C) 2001-2005 Free Software Foundation, Inc.
15dnl This file is free software; the Free Software Foundation
16dnl gives unlimited permission to copy and/or distribute it,
17dnl with or without modifications, as long as this notice is preserved.
18
19dnl From Bruno Haible.
20
21dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and
22dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't
23dnl require excessive bracketing.
24ifdef([AC_HELP_STRING],
25[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])],
26[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])])
27
28dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed
29dnl to access previously installed libraries. The basic assumption is that
30dnl a user will want packages to use other packages he previously installed
31dnl with the same --prefix option.
32dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate
33dnl libraries, but is otherwise very convenient.
34AC_DEFUN([AC_LIB_PREFIX],
35[
36 AC_BEFORE([$0], [AC_LIB_LINKFLAGS])
37 AC_REQUIRE([AC_PROG_CC])
38 AC_REQUIRE([AC_CANONICAL_HOST])
39 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
40 dnl By default, look in $includedir and $libdir.
41 use_additional=yes
42 AC_LIB_WITH_FINAL_PREFIX([
43 eval additional_includedir=\"$includedir\"
44 eval additional_libdir=\"$libdir\"
45 ])
46 AC_LIB_ARG_WITH([lib-prefix],
47[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
48 --without-lib-prefix don't search for libraries in includedir and libdir],
49[
50 if test "X$withval" = "Xno"; then
51 use_additional=no
52 else
53 if test "X$withval" = "X"; then
54 AC_LIB_WITH_FINAL_PREFIX([
55 eval additional_includedir=\"$includedir\"
56 eval additional_libdir=\"$libdir\"
57 ])
58 else
59 additional_includedir="$withval/include"
60 additional_libdir="$withval/lib"
61 fi
62 fi
63])
64 if test $use_additional = yes; then
65 dnl Potentially add $additional_includedir to $CPPFLAGS.
66 dnl But don't add it
67 dnl 1. if it's the standard /usr/include,
68 dnl 2. if it's already present in $CPPFLAGS,
69 dnl 3. if it's /usr/local/include and we are using GCC on Linux,
70 dnl 4. if it doesn't exist as a directory.
71 if test "X$additional_includedir" != "X/usr/include"; then
72 haveit=
73 for x in $CPPFLAGS; do
74 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
75 if test "X$x" = "X-I$additional_includedir"; then
76 haveit=yes
77 break
78 fi
79 done
80 if test -z "$haveit"; then
81 if test "X$additional_includedir" = "X/usr/local/include"; then
82 if test -n "$GCC"; then
83 case $host_os in
84 linux* | gnu* | k*bsd*-gnu) haveit=yes;;
85 esac
86 fi
87 fi
88 if test -z "$haveit"; then
89 if test -d "$additional_includedir"; then
90 dnl Really add $additional_includedir to $CPPFLAGS.
91 CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir"
92 fi
93 fi
94 fi
95 fi
96 dnl Potentially add $additional_libdir to $LDFLAGS.
97 dnl But don't add it
98 dnl 1. if it's the standard /usr/lib,
99 dnl 2. if it's already present in $LDFLAGS,
100 dnl 3. if it's /usr/local/lib and we are using GCC on Linux,
101 dnl 4. if it doesn't exist as a directory.
102 if test "X$additional_libdir" != "X/usr/lib"; then
103 haveit=
104 for x in $LDFLAGS; do
105 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
106 if test "X$x" = "X-L$additional_libdir"; then
107 haveit=yes
108 break
109 fi
110 done
111 if test -z "$haveit"; then
112 if test "X$additional_libdir" = "X/usr/local/lib"; then
113 if test -n "$GCC"; then
114 case $host_os in
115 linux*) haveit=yes;;
116 esac
117 fi
118 fi
119 if test -z "$haveit"; then
120 if test -d "$additional_libdir"; then
121 dnl Really add $additional_libdir to $LDFLAGS.
122 LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir"
123 fi
124 fi
125 fi
126 fi
127 fi
128])
129
130dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix,
131dnl acl_final_exec_prefix, containing the values to which $prefix and
132dnl $exec_prefix will expand at the end of the configure script.
133AC_DEFUN([AC_LIB_PREPARE_PREFIX],
134[
135 dnl Unfortunately, prefix and exec_prefix get only finally determined
136 dnl at the end of configure.
137 if test "X$prefix" = "XNONE"; then
138 acl_final_prefix="$ac_default_prefix"
139 else
140 acl_final_prefix="$prefix"
141 fi
142 if test "X$exec_prefix" = "XNONE"; then
143 acl_final_exec_prefix='${prefix}'
144 else
145 acl_final_exec_prefix="$exec_prefix"
146 fi
147 acl_save_prefix="$prefix"
148 prefix="$acl_final_prefix"
149 eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
150 prefix="$acl_save_prefix"
151])
152
153dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the
154dnl variables prefix and exec_prefix bound to the values they will have
155dnl at the end of the configure script.
156AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX],
157[
158 acl_save_prefix="$prefix"
159 prefix="$acl_final_prefix"
160 acl_save_exec_prefix="$exec_prefix"
161 exec_prefix="$acl_final_exec_prefix"
162 $1
163 exec_prefix="$acl_save_exec_prefix"
164 prefix="$acl_save_prefix"
165])
166
167# lib-link.m4 serial 6 (gettext-0.14.3)
168dnl Copyright (C) 2001-2005 Free Software Foundation, Inc.
169dnl This file is free software; the Free Software Foundation
170dnl gives unlimited permission to copy and/or distribute it,
171dnl with or without modifications, as long as this notice is preserved.
172
173dnl From Bruno Haible.
174
175AC_PREREQ(2.50)
176
177dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
178dnl the libraries corresponding to explicit and implicit dependencies.
179dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
180dnl augments the CPPFLAGS variable.
181AC_DEFUN([AC_LIB_LINKFLAGS],
182[
183 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
184 AC_REQUIRE([AC_LIB_RPATH])
185 define([Name],[translit([$1],[./-], [___])])
186 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
187 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
188 AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [
189 AC_LIB_LINKFLAGS_BODY([$1], [$2])
190 ac_cv_lib[]Name[]_libs="$LIB[]NAME"
191 ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
192 ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
193 ])
194 LIB[]NAME="$ac_cv_lib[]Name[]_libs"
195 LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
196 INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
197 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
198 AC_SUBST([LIB]NAME)
199 AC_SUBST([LTLIB]NAME)
200 dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
201 dnl results of this search when this library appears as a dependency.
202 HAVE_LIB[]NAME=yes
203 undefine([Name])
204 undefine([NAME])
205])
206
207dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode)
208dnl searches for libname and the libraries corresponding to explicit and
209dnl implicit dependencies, together with the specified include files and
210dnl the ability to compile and link the specified testcode. If found, it
211dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and
212dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
213dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
214dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
215AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
216[
217 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
218 AC_REQUIRE([AC_LIB_RPATH])
219 define([Name],[translit([$1],[./-], [___])])
220 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
221 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
222
223 dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
224 dnl accordingly.
225 AC_LIB_LINKFLAGS_BODY([$1], [$2])
226
227 dnl Add $INC[]NAME to CPPFLAGS before performing the following checks,
228 dnl because if the user has installed lib[]Name and not disabled its use
229 dnl via --without-lib[]Name-prefix, he wants to use it.
230 ac_save_CPPFLAGS="$CPPFLAGS"
231 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
232
233 AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [
234 ac_save_LIBS="$LIBS"
235 LIBS="$LIBS $LIB[]NAME"
236 AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no])
237 LIBS="$ac_save_LIBS"
238 ])
239 if test "$ac_cv_lib[]Name" = yes; then
240 HAVE_LIB[]NAME=yes
241 AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.])
242 AC_MSG_CHECKING([how to link with lib[]$1])
243 AC_MSG_RESULT([$LIB[]NAME])
244 else
245 HAVE_LIB[]NAME=no
246 dnl If $LIB[]NAME didn't lead to a usable library, we don't need
247 dnl $INC[]NAME either.
248 CPPFLAGS="$ac_save_CPPFLAGS"
249 LIB[]NAME=
250 LTLIB[]NAME=
251 fi
252 AC_SUBST([HAVE_LIB]NAME)
253 AC_SUBST([LIB]NAME)
254 AC_SUBST([LTLIB]NAME)
255 undefine([Name])
256 undefine([NAME])
257])
258
259dnl Determine the platform dependent parameters needed to use rpath:
260dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator,
261dnl hardcode_direct, hardcode_minus_L.
262AC_DEFUN([AC_LIB_RPATH],
263[
264 dnl Tell automake >= 1.10 to complain if config.rpath is missing.
265 m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])])
266 AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS
267 AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld
268 AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host
269 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
270 AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [
271 CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
272 ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
273 . ./conftest.sh
274 rm -f ./conftest.sh
275 acl_cv_rpath=done
276 ])
277 wl="$acl_cv_wl"
278 libext="$acl_cv_libext"
279 shlibext="$acl_cv_shlibext"
280 hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
281 hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
282 hardcode_direct="$acl_cv_hardcode_direct"
283 hardcode_minus_L="$acl_cv_hardcode_minus_L"
284 dnl Determine whether the user wants rpath handling at all.
285 AC_ARG_ENABLE(rpath,
286 [ --disable-rpath do not hardcode runtime library paths],
287 :, enable_rpath=yes)
288])
289
290dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
291dnl the libraries corresponding to explicit and implicit dependencies.
292dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
293AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
294[
295 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
296 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
297 dnl By default, look in $includedir and $libdir.
298 use_additional=yes
299 AC_LIB_WITH_FINAL_PREFIX([
300 eval additional_includedir=\"$includedir\"
301 eval additional_libdir=\"$libdir\"
302 ])
303 AC_LIB_ARG_WITH([lib$1-prefix],
304[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib
305 --without-lib$1-prefix don't search for lib$1 in includedir and libdir],
306[
307 if test "X$withval" = "Xno"; then
308 use_additional=no
309 else
310 if test "X$withval" = "X"; then
311 AC_LIB_WITH_FINAL_PREFIX([
312 eval additional_includedir=\"$includedir\"
313 eval additional_libdir=\"$libdir\"
314 ])
315 else
316 additional_includedir="$withval/include"
317 additional_libdir="$withval/lib"
318 fi
319 fi
320])
321 dnl Search the library and its dependencies in $additional_libdir and
322 dnl $LDFLAGS. Using breadth-first-seach.
323 LIB[]NAME=
324 LTLIB[]NAME=
325 INC[]NAME=
326 rpathdirs=
327 ltrpathdirs=
328 names_already_handled=
329 names_next_round='$1 $2'
330 while test -n "$names_next_round"; do
331 names_this_round="$names_next_round"
332 names_next_round=
333 for name in $names_this_round; do
334 already_handled=
335 for n in $names_already_handled; do
336 if test "$n" = "$name"; then
337 already_handled=yes
338 break
339 fi
340 done
341 if test -z "$already_handled"; then
342 names_already_handled="$names_already_handled $name"
343 dnl See if it was already located by an earlier AC_LIB_LINKFLAGS
344 dnl or AC_LIB_HAVE_LINKFLAGS call.
345 uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
346 eval value=\"\$HAVE_LIB$uppername\"
347 if test -n "$value"; then
348 if test "$value" = yes; then
349 eval value=\"\$LIB$uppername\"
350 test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value"
351 eval value=\"\$LTLIB$uppername\"
352 test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value"
353 else
354 dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined
355 dnl that this library doesn't exist. So just drop it.
356 :
357 fi
358 else
359 dnl Search the library lib$name in $additional_libdir and $LDFLAGS
360 dnl and the already constructed $LIBNAME/$LTLIBNAME.
361 found_dir=
362 found_la=
363 found_so=
364 found_a=
365 if test $use_additional = yes; then
366 if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
367 found_dir="$additional_libdir"
368 found_so="$additional_libdir/lib$name.$shlibext"
369 if test -f "$additional_libdir/lib$name.la"; then
370 found_la="$additional_libdir/lib$name.la"
371 fi
372 else
373 if test -f "$additional_libdir/lib$name.$libext"; then
374 found_dir="$additional_libdir"
375 found_a="$additional_libdir/lib$name.$libext"
376 if test -f "$additional_libdir/lib$name.la"; then
377 found_la="$additional_libdir/lib$name.la"
378 fi
379 fi
380 fi
381 fi
382 if test "X$found_dir" = "X"; then
383 for x in $LDFLAGS $LTLIB[]NAME; do
384 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
385 case "$x" in
386 -L*)
387 dir=`echo "X$x" | sed -e 's/^X-L//'`
388 if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
389 found_dir="$dir"
390 found_so="$dir/lib$name.$shlibext"
391 if test -f "$dir/lib$name.la"; then
392 found_la="$dir/lib$name.la"
393 fi
394 else
395 if test -f "$dir/lib$name.$libext"; then
396 found_dir="$dir"
397 found_a="$dir/lib$name.$libext"
398 if test -f "$dir/lib$name.la"; then
399 found_la="$dir/lib$name.la"
400 fi
401 fi
402 fi
403 ;;
404 esac
405 if test "X$found_dir" != "X"; then
406 break
407 fi
408 done
409 fi
410 if test "X$found_dir" != "X"; then
411 dnl Found the library.
412 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name"
413 if test "X$found_so" != "X"; then
414 dnl Linking with a shared library. We attempt to hardcode its
415 dnl directory into the executable's runpath, unless it's the
416 dnl standard /usr/lib.
417 if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
418 dnl No hardcoding is needed.
419 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
420 else
421 dnl Use an explicit option to hardcode DIR into the resulting
422 dnl binary.
423 dnl Potentially add DIR to ltrpathdirs.
424 dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
425 haveit=
426 for x in $ltrpathdirs; do
427 if test "X$x" = "X$found_dir"; then
428 haveit=yes
429 break
430 fi
431 done
432 if test -z "$haveit"; then
433 ltrpathdirs="$ltrpathdirs $found_dir"
434 fi
435 dnl The hardcoding into $LIBNAME is system dependent.
436 if test "$hardcode_direct" = yes; then
437 dnl Using DIR/libNAME.so during linking hardcodes DIR into the
438 dnl resulting binary.
439 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
440 else
441 if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
442 dnl Use an explicit option to hardcode DIR into the resulting
443 dnl binary.
444 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
445 dnl Potentially add DIR to rpathdirs.
446 dnl The rpathdirs will be appended to $LIBNAME at the end.
447 haveit=
448 for x in $rpathdirs; do
449 if test "X$x" = "X$found_dir"; then
450 haveit=yes
451 break
452 fi
453 done
454 if test -z "$haveit"; then
455 rpathdirs="$rpathdirs $found_dir"
456 fi
457 else
458 dnl Rely on "-L$found_dir".
459 dnl But don't add it if it's already contained in the LDFLAGS
460 dnl or the already constructed $LIBNAME
461 haveit=
462 for x in $LDFLAGS $LIB[]NAME; do
463 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
464 if test "X$x" = "X-L$found_dir"; then
465 haveit=yes
466 break
467 fi
468 done
469 if test -z "$haveit"; then
470 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
471 fi
472 if test "$hardcode_minus_L" != no; then
473 dnl FIXME: Not sure whether we should use
474 dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
475 dnl here.
476 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
477 else
478 dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH
479 dnl here, because this doesn't fit in flags passed to the
480 dnl compiler. So give up. No hardcoding. This affects only
481 dnl very old systems.
482 dnl FIXME: Not sure whether we should use
483 dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
484 dnl here.
485 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
486 fi
487 fi
488 fi
489 fi
490 else
491 if test "X$found_a" != "X"; then
492 dnl Linking with a static library.
493 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a"
494 else
495 dnl We shouldn't come here, but anyway it's good to have a
496 dnl fallback.
497 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name"
498 fi
499 fi
500 dnl Assume the include files are nearby.
501 additional_includedir=
502 case "$found_dir" in
503 */lib | */lib/)
504 basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
505 additional_includedir="$basedir/include"
506 ;;
507 esac
508 if test "X$additional_includedir" != "X"; then
509 dnl Potentially add $additional_includedir to $INCNAME.
510 dnl But don't add it
511 dnl 1. if it's the standard /usr/include,
512 dnl 2. if it's /usr/local/include and we are using GCC on Linux,
513 dnl 3. if it's already present in $CPPFLAGS or the already
514 dnl constructed $INCNAME,
515 dnl 4. if it doesn't exist as a directory.
516 if test "X$additional_includedir" != "X/usr/include"; then
517 haveit=
518 if test "X$additional_includedir" = "X/usr/local/include"; then
519 if test -n "$GCC"; then
520 case $host_os in
521 linux* | gnu* | k*bsd*-gnu) haveit=yes;;
522 esac
523 fi
524 fi
525 if test -z "$haveit"; then
526 for x in $CPPFLAGS $INC[]NAME; do
527 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
528 if test "X$x" = "X-I$additional_includedir"; then
529 haveit=yes
530 break
531 fi
532 done
533 if test -z "$haveit"; then
534 if test -d "$additional_includedir"; then
535 dnl Really add $additional_includedir to $INCNAME.
536 INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir"
537 fi
538 fi
539 fi
540 fi
541 fi
542 dnl Look for dependencies.
543 if test -n "$found_la"; then
544 dnl Read the .la file. It defines the variables
545 dnl dlname, library_names, old_library, dependency_libs, current,
546 dnl age, revision, installed, dlopen, dlpreopen, libdir.
547 save_libdir="$libdir"
548 case "$found_la" in
549 */* | *\\*) . "$found_la" ;;
550 *) . "./$found_la" ;;
551 esac
552 libdir="$save_libdir"
553 dnl We use only dependency_libs.
554 for dep in $dependency_libs; do
555 case "$dep" in
556 -L*)
557 additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
558 dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
559 dnl But don't add it
560 dnl 1. if it's the standard /usr/lib,
561 dnl 2. if it's /usr/local/lib and we are using GCC on Linux,
562 dnl 3. if it's already present in $LDFLAGS or the already
563 dnl constructed $LIBNAME,
564 dnl 4. if it doesn't exist as a directory.
565 if test "X$additional_libdir" != "X/usr/lib"; then
566 haveit=
567 if test "X$additional_libdir" = "X/usr/local/lib"; then
568 if test -n "$GCC"; then
569 case $host_os in
570 linux* | gnu* | k*bsd*-gnu) haveit=yes;;
571 esac
572 fi
573 fi
574 if test -z "$haveit"; then
575 haveit=
576 for x in $LDFLAGS $LIB[]NAME; do
577 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
578 if test "X$x" = "X-L$additional_libdir"; then
579 haveit=yes
580 break
581 fi
582 done
583 if test -z "$haveit"; then
584 if test -d "$additional_libdir"; then
585 dnl Really add $additional_libdir to $LIBNAME.
586 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
587 fi
588 fi
589 haveit=
590 for x in $LDFLAGS $LTLIB[]NAME; do
591 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
592 if test "X$x" = "X-L$additional_libdir"; then
593 haveit=yes
594 break
595 fi
596 done
597 if test -z "$haveit"; then
598 if test -d "$additional_libdir"; then
599 dnl Really add $additional_libdir to $LTLIBNAME.
600 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
601 fi
602 fi
603 fi
604 fi
605 ;;
606 -R*)
607 dir=`echo "X$dep" | sed -e 's/^X-R//'`
608 if test "$enable_rpath" != no; then
609 dnl Potentially add DIR to rpathdirs.
610 dnl The rpathdirs will be appended to $LIBNAME at the end.
611 haveit=
612 for x in $rpathdirs; do
613 if test "X$x" = "X$dir"; then
614 haveit=yes
615 break
616 fi
617 done
618 if test -z "$haveit"; then
619 rpathdirs="$rpathdirs $dir"
620 fi
621 dnl Potentially add DIR to ltrpathdirs.
622 dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
623 haveit=
624 for x in $ltrpathdirs; do
625 if test "X$x" = "X$dir"; then
626 haveit=yes
627 break
628 fi
629 done
630 if test -z "$haveit"; then
631 ltrpathdirs="$ltrpathdirs $dir"
632 fi
633 fi
634 ;;
635 -l*)
636 dnl Handle this in the next round.
637 names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
638 ;;
639 *.la)
640 dnl Handle this in the next round. Throw away the .la's
641 dnl directory; it is already contained in a preceding -L
642 dnl option.
643 names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
644 ;;
645 *)
646 dnl Most likely an immediate library name.
647 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep"
648 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep"
649 ;;
650 esac
651 done
652 fi
653 else
654 dnl Didn't find the library; assume it is in the system directories
655 dnl known to the linker and runtime loader. (All the system
656 dnl directories known to the linker should also be known to the
657 dnl runtime loader, otherwise the system is severely misconfigured.)
658 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
659 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name"
660 fi
661 fi
662 fi
663 done
664 done
665 if test "X$rpathdirs" != "X"; then
666 if test -n "$hardcode_libdir_separator"; then
667 dnl Weird platform: only the last -rpath option counts, the user must
668 dnl pass all path elements in one option. We can arrange that for a
669 dnl single library, but not when more than one $LIBNAMEs are used.
670 alldirs=
671 for found_dir in $rpathdirs; do
672 alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
673 done
674 dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl.
675 acl_save_libdir="$libdir"
676 libdir="$alldirs"
677 eval flag=\"$hardcode_libdir_flag_spec\"
678 libdir="$acl_save_libdir"
679 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
680 else
681 dnl The -rpath options are cumulative.
682 for found_dir in $rpathdirs; do
683 acl_save_libdir="$libdir"
684 libdir="$found_dir"
685 eval flag=\"$hardcode_libdir_flag_spec\"
686 libdir="$acl_save_libdir"
687 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
688 done
689 fi
690 fi
691 if test "X$ltrpathdirs" != "X"; then
692 dnl When using libtool, the option that works for both libraries and
693 dnl executables is -R. The -R options are cumulative.
694 for found_dir in $ltrpathdirs; do
695 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
696 done
697 fi
698])
699
700dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR,
701dnl unless already present in VAR.
702dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes
703dnl contains two or three consecutive elements that belong together.
704AC_DEFUN([AC_LIB_APPENDTOVAR],
705[
706 for element in [$2]; do
707 haveit=
708 for x in $[$1]; do
709 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
710 if test "X$x" = "X$element"; then
711 haveit=yes
712 break
713 fi
714 done
715 if test -z "$haveit"; then
716 [$1]="${[$1]}${[$1]:+ }$element"
717 fi
718 done
719])
720
721# lib-ld.m4 serial 3 (gettext-0.13)
722dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
723dnl This file is free software; the Free Software Foundation
724dnl gives unlimited permission to copy and/or distribute it,
725dnl with or without modifications, as long as this notice is preserved.
726
727dnl Subroutines of libtool.m4,
728dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
729dnl with libtool.m4.
730
731dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
732AC_DEFUN([AC_LIB_PROG_LD_GNU],
733[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld,
734[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
735case `$LD -v 2>&1 </dev/null` in
736*GNU* | *'with BFD'*)
737 acl_cv_prog_gnu_ld=yes ;;
738*)
739 acl_cv_prog_gnu_ld=no ;;
740esac])
741with_gnu_ld=$acl_cv_prog_gnu_ld
742])
743
744dnl From libtool-1.4. Sets the variable LD.
745AC_DEFUN([AC_LIB_PROG_LD],
746[AC_ARG_WITH(gnu-ld,
747[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
748test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
749AC_REQUIRE([AC_PROG_CC])dnl
750AC_REQUIRE([AC_CANONICAL_HOST])dnl
751# Prepare PATH_SEPARATOR.
752# The user is always right.
753if test "${PATH_SEPARATOR+set}" != set; then
754 echo "#! /bin/sh" >conf$$.sh
755 echo "exit 0" >>conf$$.sh
756 chmod +x conf$$.sh
757 if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
758 PATH_SEPARATOR=';'
759 else
760 PATH_SEPARATOR=:
761 fi
762 rm -f conf$$.sh
763fi
764ac_prog=ld
765if test "$GCC" = yes; then
766 # Check if gcc -print-prog-name=ld gives a path.
767 AC_MSG_CHECKING([for ld used by GCC])
768 case $host in
769 *-*-mingw*)
770 # gcc leaves a trailing carriage return which upsets mingw
771 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
772 *)
773 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
774 esac
775 case $ac_prog in
776 # Accept absolute paths.
777 [[\\/]* | [A-Za-z]:[\\/]*)]
778 [re_direlt='/[^/][^/]*/\.\./']
779 # Canonicalize the path of ld
780 ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
781 while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
782 ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
783 done
784 test -z "$LD" && LD="$ac_prog"
785 ;;
786 "")
787 # If it fails, then pretend we aren't using GCC.
788 ac_prog=ld
789 ;;
790 *)
791 # If it is relative, then search for the first ld in PATH.
792 with_gnu_ld=unknown
793 ;;
794 esac
795elif test "$with_gnu_ld" = yes; then
796 AC_MSG_CHECKING([for GNU ld])
797else
798 AC_MSG_CHECKING([for non-GNU ld])
799fi
800AC_CACHE_VAL(acl_cv_path_LD,
801[if test -z "$LD"; then
802 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
803 for ac_dir in $PATH; do
804 test -z "$ac_dir" && ac_dir=.
805 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
806 acl_cv_path_LD="$ac_dir/$ac_prog"
807 # Check to see if the program is GNU ld. I'd rather use --version,
808 # but apparently some GNU ld's only accept -v.
809 # Break only if it was the GNU/non-GNU ld that we prefer.
810 case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in
811 *GNU* | *'with BFD'*)
812 test "$with_gnu_ld" != no && break ;;
813 *)
814 test "$with_gnu_ld" != yes && break ;;
815 esac
816 fi
817 done
818 IFS="$ac_save_ifs"
819else
820 acl_cv_path_LD="$LD" # Let the user override the test with a path.
821fi])
822LD="$acl_cv_path_LD"
823if test -n "$LD"; then
824 AC_MSG_RESULT($LD)
825else
826 AC_MSG_RESULT(no)
827fi
828test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
829AC_LIB_PROG_LD_GNU
830])
831
832dnl @synopsis AC_JNI_INCLUDE_DIR
833dnl
834dnl AC_JNI_INCLUDE_DIR finds include directories needed
835dnl for compiling programs using the JNI interface.
836dnl
837dnl JNI include directories are usually in the java distribution
838dnl This is deduced from the value of JAVAC. When this macro
839dnl completes, a list of directories is left in the variable
840dnl JNI_INCLUDE_DIRS.
841dnl
842dnl Example usage follows:
843dnl
844dnl AC_JNI_INCLUDE_DIR
845dnl
846dnl for JNI_INCLUDE_DIR in $JNI_INCLUDE_DIRS
847dnl do
848dnl CPPFLAGS="$CPPFLAGS -I$JNI_INCLUDE_DIR"
849dnl done
850dnl
851dnl If you want to force a specific compiler:
852dnl
853dnl - at the configure.in level, set JAVAC=yourcompiler before calling
854dnl AC_JNI_INCLUDE_DIR
855dnl
856dnl - at the configure level, setenv JAVAC
857dnl
858dnl Note: This macro can work with the autoconf M4 macros for Java programs.
859dnl This particular macro is not part of the original set of macros.
860dnl
861dnl @author Don Anderson <dda@sleepycat.com>
862dnl @version $Id: ac_jni_include_dirs.m4,v 1.3 2004/12/24 01:16:37 guidod Exp $
863dnl
864AC_DEFUN([AC_JNI_INCLUDE_DIR],[
865
866JNI_INCLUDE_DIRS=""
867
868test "x$JAVAC" = x && AC_MSG_ERROR(['$JAVAC' undefined])
869AC_PATH_PROG(_ACJNI_JAVAC, $JAVAC, no)
870test "x$_ACJNI_JAVAC" = xno && AC_MSG_ERROR([$JAVAC could not be found in path])
871
872_ACJNI_FOLLOW_SYMLINKS("$_ACJNI_JAVAC")
873_JTOPDIR=`echo "$_ACJNI_FOLLOWED" | sed -e 's://*:/:g' -e 's:/[[^/]]*$::'`
874case "$host_os" in
875 darwin*) _JTOPDIR=`echo "$_JTOPDIR" | sed -e 's:/[[^/]]*$::'`
876 _JINC="$_JTOPDIR/Headers";;
877 *) _JINC="$_JTOPDIR/include";;
878esac
879if test -f "$_JINC/jni.h"; then
880 JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JINC"
881else
882 _JTOPDIR=`echo "$_JTOPDIR" | sed -e 's:/[[^/]]*$::'`
883 if test -f "$_JTOPDIR/include/jni.h"; then
884 JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JTOPDIR/include"
885 else
886 AC_MSG_ERROR([cannot find java include files])
887 fi
888fi
889
890# get the likely subdirectories for system specific java includes
891case "$host_os" in
892bsdi*) _JNI_INC_SUBDIRS="bsdos";;
893linux*) _JNI_INC_SUBDIRS="linux genunix";;
894osf*) _JNI_INC_SUBDIRS="alpha";;
895solaris*) _JNI_INC_SUBDIRS="solaris";;
896mingw*) _JNI_INC_SUBDIRS="win32";;
897cygwin*) _JNI_INC_SUBDIRS="win32";;
898*) _JNI_INC_SUBDIRS="genunix";;
899esac
900
901# add any subdirectories that are present
902for JINCSUBDIR in $_JNI_INC_SUBDIRS
903do
904 if test -d "$_JTOPDIR/include/$JINCSUBDIR"; then
905 JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JTOPDIR/include/$JINCSUBDIR"
906 fi
907done
908])
909
910# _ACJNI_FOLLOW_SYMLINKS <path>
911# Follows symbolic links on <path>,
912# finally setting variable _ACJNI_FOLLOWED
913# --------------------
914AC_DEFUN([_ACJNI_FOLLOW_SYMLINKS],[
915# find the include directory relative to the javac executable
916_cur="$1"
917while ls -ld "$_cur" 2>/dev/null | grep " -> " >/dev/null; do
918 AC_MSG_CHECKING(symlink for $_cur)
919 _slink=`ls -ld "$_cur" | sed 's/.* -> //'`
920 case "$_slink" in
921 /*) _cur="$_slink";;
922 # 'X' avoids triggering unwanted echo options.
923 *) _cur=`echo "X$_cur" | sed -e 's/^X//' -e 's:[[^/]]*$::'`"$_slink";;
924 esac
925 AC_MSG_RESULT($_cur)
926done
927_ACJNI_FOLLOWED="$_cur"
928])# _ACJNI
929