1# lib-link.m4 serial 4 (gettext-0.12) 2dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. 3dnl This file is free software, distributed under the terms of the GNU 4dnl General Public License. As a special exception to the GNU General 5dnl Public License, this file may be distributed as part of a program 6dnl that contains a configuration script generated by Autoconf, under 7dnl the same distribution terms as the rest of that program. 8 9dnl From Bruno Haible. 10 11dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and 12dnl the libraries corresponding to explicit and implicit dependencies. 13dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and 14dnl augments the CPPFLAGS variable. 15AC_DEFUN([AC_LIB_LINKFLAGS], 16[ 17 AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) 18 AC_REQUIRE([AC_LIB_RPATH]) 19 define([Name],[translit([$1],[./-], [___])]) 20 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], 21 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) 22 AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [ 23 AC_LIB_LINKFLAGS_BODY([$1], [$2]) 24 ac_cv_lib[]Name[]_libs="$LIB[]NAME" 25 ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME" 26 ac_cv_lib[]Name[]_cppflags="$INC[]NAME" 27 ]) 28 LIB[]NAME="$ac_cv_lib[]Name[]_libs" 29 LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs" 30 INC[]NAME="$ac_cv_lib[]Name[]_cppflags" 31 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) 32 AC_SUBST([LIB]NAME) 33 AC_SUBST([LTLIB]NAME) 34 dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the 35 dnl results of this search when this library appears as a dependency. 36 HAVE_LIB[]NAME=yes 37 undefine([Name]) 38 undefine([NAME]) 39]) 40 41dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode) 42dnl searches for libname and the libraries corresponding to explicit and 43dnl implicit dependencies, together with the specified include files and 44dnl the ability to compile and link the specified testcode. If found, it 45dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and 46dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and 47dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs 48dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty. 49AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], 50[ 51 AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) 52 AC_REQUIRE([AC_LIB_RPATH]) 53 define([Name],[translit([$1],[./-], [___])]) 54 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], 55 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) 56 57 dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME 58 dnl accordingly. 59 AC_LIB_LINKFLAGS_BODY([$1], [$2]) 60 61 dnl Add $INC[]NAME to CPPFLAGS before performing the following checks, 62 dnl because if the user has installed lib[]Name and not disabled its use 63 dnl via --without-lib[]Name-prefix, he wants to use it. 64 ac_save_CPPFLAGS="$CPPFLAGS" 65 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) 66 67 AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [ 68 ac_save_LIBS="$LIBS" 69 LIBS="$LIBS $LIB[]NAME" 70 AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no]) 71 LIBS="$ac_save_LIBS" 72 ]) 73 if test "$ac_cv_lib[]Name" = yes; then 74 HAVE_LIB[]NAME=yes 75 AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.]) 76 AC_MSG_CHECKING([how to link with lib[]$1]) 77 AC_MSG_RESULT([$LIB[]NAME]) 78 else 79 HAVE_LIB[]NAME=no 80 dnl If $LIB[]NAME didn't lead to a usable library, we don't need 81 dnl $INC[]NAME either. 82 CPPFLAGS="$ac_save_CPPFLAGS" 83 LIB[]NAME= 84 LTLIB[]NAME= 85 fi 86 AC_SUBST([HAVE_LIB]NAME) 87 AC_SUBST([LIB]NAME) 88 AC_SUBST([LTLIB]NAME) 89 undefine([Name]) 90 undefine([NAME]) 91]) 92 93dnl Determine the platform dependent parameters needed to use rpath: 94dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator, 95dnl hardcode_direct, hardcode_minus_L. 96AC_DEFUN([AC_LIB_RPATH], 97[ 98 AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS 99 AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld 100 AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host 101 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir 102 AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [ 103 CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ 104 ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh 105 . ./conftest.sh 106 rm -f ./conftest.sh 107 acl_cv_rpath=done 108 ]) 109 wl="$acl_cv_wl" 110 libext="$acl_cv_libext" 111 shlibext="$acl_cv_shlibext" 112 hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" 113 hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" 114 hardcode_direct="$acl_cv_hardcode_direct" 115 hardcode_minus_L="$acl_cv_hardcode_minus_L" 116 dnl Determine whether the user wants rpath handling at all. 117 AC_ARG_ENABLE(rpath, 118 [ --disable-rpath do not hardcode runtime library paths], 119 :, enable_rpath=yes) 120]) 121 122dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and 123dnl the libraries corresponding to explicit and implicit dependencies. 124dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. 125AC_DEFUN([AC_LIB_LINKFLAGS_BODY], 126[ 127 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], 128 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) 129 dnl By default, look in $includedir and $libdir. 130 use_additional=yes 131 AC_LIB_WITH_FINAL_PREFIX([ 132 eval additional_includedir=\"$includedir\" 133 eval additional_libdir=\"$libdir\" 134 ]) 135 AC_LIB_ARG_WITH([lib$1-prefix], 136[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib 137 --without-lib$1-prefix don't search for lib$1 in includedir and libdir], 138[ 139 if test "X$withval" = "Xno"; then 140 use_additional=no 141 else 142 if test "X$withval" = "X"; then 143 AC_LIB_WITH_FINAL_PREFIX([ 144 eval additional_includedir=\"$includedir\" 145 eval additional_libdir=\"$libdir\" 146 ]) 147 else 148 additional_includedir="$withval/include" 149 additional_libdir="$withval/lib" 150 fi 151 fi 152]) 153 AC_LIB_ARG_WITH([lib$1-type], 154[ --with-lib$1-type=TYPE type of library to search for (auto/static/shared) ], 155 [ with_lib$1_type=$withval ], [ with_lib$1_type=auto ]) 156 lib_type=`eval echo \$with_lib$1_type` 157 158 dnl Search the library and its dependencies in $additional_libdir and 159 dnl $LDFLAGS. Using breadth-first-seach. 160 LIB[]NAME= 161 LTLIB[]NAME= 162 INC[]NAME= 163 rpathdirs= 164 ltrpathdirs= 165 names_already_handled= 166 names_next_round='$1 $2' 167 while test -n "$names_next_round"; do 168 names_this_round="$names_next_round" 169 names_next_round= 170 for name in $names_this_round; do 171 already_handled= 172 for n in $names_already_handled; do 173 if test "$n" = "$name"; then 174 already_handled=yes 175 break 176 fi 177 done 178 if test -z "$already_handled"; then 179 names_already_handled="$names_already_handled $name" 180 dnl See if it was already located by an earlier AC_LIB_LINKFLAGS 181 dnl or AC_LIB_HAVE_LINKFLAGS call. 182 uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` 183 eval value=\"\$HAVE_LIB$uppername\" 184 if test -n "$value"; then 185 if test "$value" = yes; then 186 eval value=\"\$LIB$uppername\" 187 test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" 188 eval value=\"\$LTLIB$uppername\" 189 test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" 190 else 191 dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined 192 dnl that this library doesn't exist. So just drop it. 193 : 194 fi 195 else 196 dnl Search the library lib$name in $additional_libdir and $LDFLAGS 197 dnl and the already constructed $LIBNAME/$LTLIBNAME. 198 found_dir= 199 found_la= 200 found_so= 201 found_a= 202 if test $use_additional = yes; then 203 if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext" && test x$lib_type != xstatic; then 204 found_dir="$additional_libdir" 205 found_so="$additional_libdir/lib$name.$shlibext" 206 if test -f "$additional_libdir/lib$name.la"; then 207 found_la="$additional_libdir/lib$name.la" 208 fi 209 elif test x$lib_type != xshared; then 210 if test -f "$additional_libdir/lib$name.$libext"; then 211 found_dir="$additional_libdir" 212 found_a="$additional_libdir/lib$name.$libext" 213 if test -f "$additional_libdir/lib$name.la"; then 214 found_la="$additional_libdir/lib$name.la" 215 fi 216 fi 217 fi 218 fi 219 if test "X$found_dir" = "X"; then 220 for x in $LDFLAGS $LTLIB[]NAME; do 221 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) 222 case "$x" in 223 -L*) 224 dir=`echo "X$x" | sed -e 's/^X-L//'` 225 if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext" && test x$lib_type != xstatic; then 226 found_dir="$dir" 227 found_so="$dir/lib$name.$shlibext" 228 if test -f "$dir/lib$name.la"; then 229 found_la="$dir/lib$name.la" 230 fi 231 elif test x$lib_type != xshared; then 232 if test -f "$dir/lib$name.$libext"; then 233 found_dir="$dir" 234 found_a="$dir/lib$name.$libext" 235 if test -f "$dir/lib$name.la"; then 236 found_la="$dir/lib$name.la" 237 fi 238 fi 239 fi 240 ;; 241 esac 242 if test "X$found_dir" != "X"; then 243 break 244 fi 245 done 246 fi 247 if test "X$found_dir" != "X"; then 248 dnl Found the library. 249 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" 250 if test "X$found_so" != "X"; then 251 dnl Linking with a shared library. We attempt to hardcode its 252 dnl directory into the executable's runpath, unless it's the 253 dnl standard /usr/lib. 254 if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then 255 dnl No hardcoding is needed. 256 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" 257 else 258 dnl Use an explicit option to hardcode DIR into the resulting 259 dnl binary. 260 dnl Potentially add DIR to ltrpathdirs. 261 dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. 262 haveit= 263 for x in $ltrpathdirs; do 264 if test "X$x" = "X$found_dir"; then 265 haveit=yes 266 break 267 fi 268 done 269 if test -z "$haveit"; then 270 ltrpathdirs="$ltrpathdirs $found_dir" 271 fi 272 dnl The hardcoding into $LIBNAME is system dependent. 273 if test "$hardcode_direct" = yes; then 274 dnl Using DIR/libNAME.so during linking hardcodes DIR into the 275 dnl resulting binary. 276 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" 277 else 278 if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then 279 dnl Use an explicit option to hardcode DIR into the resulting 280 dnl binary. 281 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" 282 dnl Potentially add DIR to rpathdirs. 283 dnl The rpathdirs will be appended to $LIBNAME at the end. 284 haveit= 285 for x in $rpathdirs; do 286 if test "X$x" = "X$found_dir"; then 287 haveit=yes 288 break 289 fi 290 done 291 if test -z "$haveit"; then 292 rpathdirs="$rpathdirs $found_dir" 293 fi 294 else 295 dnl Rely on "-L$found_dir". 296 dnl But don't add it if it's already contained in the LDFLAGS 297 dnl or the already constructed $LIBNAME 298 haveit= 299 for x in $LDFLAGS $LIB[]NAME; do 300 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) 301 if test "X$x" = "X-L$found_dir"; then 302 haveit=yes 303 break 304 fi 305 done 306 if test -z "$haveit"; then 307 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" 308 fi 309 if test "$hardcode_minus_L" != no; then 310 dnl FIXME: Not sure whether we should use 311 dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" 312 dnl here. 313 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" 314 else 315 dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH 316 dnl here, because this doesn't fit in flags passed to the 317 dnl compiler. So give up. No hardcoding. This affects only 318 dnl very old systems. 319 dnl FIXME: Not sure whether we should use 320 dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" 321 dnl here. 322 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" 323 fi 324 fi 325 fi 326 fi 327 else 328 if test "X$found_a" != "X"; then 329 dnl Linking with a static library. 330 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" 331 else 332 dnl We shouldn't come here, but anyway it's good to have a 333 dnl fallback. 334 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" 335 fi 336 fi 337 dnl Assume the include files are nearby. 338 additional_includedir= 339 case "$found_dir" in 340 */lib | */lib/) 341 basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` 342 additional_includedir="$basedir/include" 343 ;; 344 esac 345 if test "X$additional_includedir" != "X"; then 346 dnl Potentially add $additional_includedir to $INCNAME. 347 dnl But don't add it 348 dnl 1. if it's the standard /usr/include, 349 dnl 2. if it's /usr/local/include and we are using GCC on Linux, 350 dnl 3. if it's already present in $CPPFLAGS or the already 351 dnl constructed $INCNAME, 352 dnl 4. if it doesn't exist as a directory. 353 if test "X$additional_includedir" != "X/usr/include"; then 354 haveit= 355 if test "X$additional_includedir" = "X/usr/local/include"; then 356 if test -n "$GCC"; then 357 case $host_os in 358 linux*) haveit=yes;; 359 esac 360 fi 361 fi 362 if test -z "$haveit"; then 363 for x in $CPPFLAGS $INC[]NAME; do 364 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) 365 if test "X$x" = "X-I$additional_includedir"; then 366 haveit=yes 367 break 368 fi 369 done 370 if test -z "$haveit"; then 371 if test -d "$additional_includedir"; then 372 dnl Really add $additional_includedir to $INCNAME. 373 INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" 374 fi 375 fi 376 fi 377 fi 378 fi 379 dnl Look for dependencies. 380 if test -n "$found_la"; then 381 dnl Read the .la file. It defines the variables 382 dnl dlname, library_names, old_library, dependency_libs, current, 383 dnl age, revision, installed, dlopen, dlpreopen, libdir. 384 save_libdir="$libdir" 385 case "$found_la" in 386 */* | *\\*) . "$found_la" ;; 387 *) . "./$found_la" ;; 388 esac 389 libdir="$save_libdir" 390 dnl We use only dependency_libs. 391 for dep in $dependency_libs; do 392 case "$dep" in 393 -L*) 394 additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` 395 dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. 396 dnl But don't add it 397 dnl 1. if it's the standard /usr/lib, 398 dnl 2. if it's /usr/local/lib and we are using GCC on Linux, 399 dnl 3. if it's already present in $LDFLAGS or the already 400 dnl constructed $LIBNAME, 401 dnl 4. if it doesn't exist as a directory. 402 if test "X$additional_libdir" != "X/usr/lib"; then 403 haveit= 404 if test "X$additional_libdir" = "X/usr/local/lib"; then 405 if test -n "$GCC"; then 406 case $host_os in 407 linux*) haveit=yes;; 408 esac 409 fi 410 fi 411 if test -z "$haveit"; then 412 haveit= 413 for x in $LDFLAGS $LIB[]NAME; do 414 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) 415 if test "X$x" = "X-L$additional_libdir"; then 416 haveit=yes 417 break 418 fi 419 done 420 if test -z "$haveit"; then 421 if test -d "$additional_libdir"; then 422 dnl Really add $additional_libdir to $LIBNAME. 423 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" 424 fi 425 fi 426 haveit= 427 for x in $LDFLAGS $LTLIB[]NAME; do 428 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) 429 if test "X$x" = "X-L$additional_libdir"; then 430 haveit=yes 431 break 432 fi 433 done 434 if test -z "$haveit"; then 435 if test -d "$additional_libdir"; then 436 dnl Really add $additional_libdir to $LTLIBNAME. 437 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" 438 fi 439 fi 440 fi 441 fi 442 ;; 443 -R*) 444 dir=`echo "X$dep" | sed -e 's/^X-R//'` 445 if test "$enable_rpath" != no; then 446 dnl Potentially add DIR to rpathdirs. 447 dnl The rpathdirs will be appended to $LIBNAME at the end. 448 haveit= 449 for x in $rpathdirs; do 450 if test "X$x" = "X$dir"; then 451 haveit=yes 452 break 453 fi 454 done 455 if test -z "$haveit"; then 456 rpathdirs="$rpathdirs $dir" 457 fi 458 dnl Potentially add DIR to ltrpathdirs. 459 dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. 460 haveit= 461 for x in $ltrpathdirs; do 462 if test "X$x" = "X$dir"; then 463 haveit=yes 464 break 465 fi 466 done 467 if test -z "$haveit"; then 468 ltrpathdirs="$ltrpathdirs $dir" 469 fi 470 fi 471 ;; 472 -l*) 473 dnl Handle this in the next round. 474 names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` 475 ;; 476 *.la) 477 dnl Handle this in the next round. Throw away the .la's 478 dnl directory; it is already contained in a preceding -L 479 dnl option. 480 names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` 481 ;; 482 *) 483 dnl Most likely an immediate library name. 484 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" 485 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" 486 ;; 487 esac 488 done 489 fi 490 else 491 dnl Didn't find the library; assume it is in the system directories 492 dnl known to the linker and runtime loader. (All the system 493 dnl directories known to the linker should also be known to the 494 dnl runtime loader, otherwise the system is severely misconfigured.) 495 if test "x$lib_type" = "xauto" || test "x$lib_type" = "xshared"; then 496 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" 497 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" 498 else 499 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l:lib$name.$libext" 500 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l:lib$name.$libext" 501 fi 502 fi 503 fi 504 fi 505 done 506 done 507 if test "X$rpathdirs" != "X"; then 508 if test -n "$hardcode_libdir_separator"; then 509 dnl Weird platform: only the last -rpath option counts, the user must 510 dnl pass all path elements in one option. We can arrange that for a 511 dnl single library, but not when more than one $LIBNAMEs are used. 512 alldirs= 513 for found_dir in $rpathdirs; do 514 alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" 515 done 516 dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl. 517 acl_save_libdir="$libdir" 518 libdir="$alldirs" 519 eval flag=\"$hardcode_libdir_flag_spec\" 520 libdir="$acl_save_libdir" 521 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" 522 else 523 dnl The -rpath options are cumulative. 524 for found_dir in $rpathdirs; do 525 acl_save_libdir="$libdir" 526 libdir="$found_dir" 527 eval flag=\"$hardcode_libdir_flag_spec\" 528 libdir="$acl_save_libdir" 529 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" 530 done 531 fi 532 fi 533 if test "X$ltrpathdirs" != "X"; then 534 dnl When using libtool, the option that works for both libraries and 535 dnl executables is -R. The -R options are cumulative. 536 for found_dir in $ltrpathdirs; do 537 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" 538 done 539 fi 540]) 541 542dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, 543dnl unless already present in VAR. 544dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes 545dnl contains two or three consecutive elements that belong together. 546AC_DEFUN([AC_LIB_APPENDTOVAR], 547[ 548 for element in [$2]; do 549 haveit= 550 for x in $[$1]; do 551 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) 552 if test "X$x" = "X$element"; then 553 haveit=yes 554 break 555 fi 556 done 557 if test -z "$haveit"; then 558 [$1]="${[$1]}${[$1]:+ }$element" 559 fi 560 done 561]) 562