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