ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/ermyth/m4/lib-link.m4
Revision: 1.1
Committed: Thu Jul 19 08:24:51 2007 UTC (16 years, 10 months ago) by pippijn
Branch: MAIN
CVS Tags: HEAD
Log Message:
initial import. the most important changes since Atheme are:
- fixed many memory leaks
- fixed many bugs
- converted to C++ and use more STL containers
- added a (not very enhanced yet) perl module
- greatly improved XML-RPC speed
- added a JSON-RPC module with code from json-cpp
- added a valgrind memcheck module to operserv
- added a more object oriented base64 implementation
- added a specialised unit test framework
- improved stability
- use gettimeofday() if available
- reworked adding/removing commands
- MemoServ IGNORE DEL can now remove indices

File Contents

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