~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to m4/search_for_lib.m4

  • Committer: Monty Taylor
  • Date: 2008-11-21 01:28:19 UTC
  • mto: This revision was merged to the branch mainline in revision 594.
  • Revision ID: monty@inaugust.com-20081121012819-dxeqcc20iqqng77o
Configure cleanups. Added generic search_for_lib m4 macro.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
dnl SEARCH_FOR_LIB(LIB, FUNCTIONS, FUNCTION,
 
2
dnl                [ACTION-IF-NOT-FOUND])
 
3
 
 
4
AC_DEFUN([SEARCH_FOR_LIB],
 
5
[
 
6
  AS_VAR_PUSHDEF([with_lib], [with_lib$1])
 
7
  AS_VAR_PUSHDEF([ac_header], [ac_cv_header_$3])
 
8
  AS_VAR_PUSHDEF([libs_var], AS_TR_CPP([$1_LIBS]))
 
9
  AS_VAR_PUSHDEF([cppflags_var], AS_TR_CPP([$1_CPPFLAGS]))
 
10
  AS_VAR_PUSHDEF([have_lib], [ac_cv_have_$1])
 
11
  AS_LITERAL_IF([$1],
 
12
                [AS_VAR_PUSHDEF([ac_lib], [ac_cv_lib_$1_$2])],
 
13
                [AS_VAR_PUSHDEF([ac_lib], [ac_cv_lib_$1''_$2])])
 
14
 
 
15
  AC_ARG_WITH([lib$1],
 
16
    [AS_HELP_STRING([--with-lib$1@<:@=DIR@:>@],
 
17
       [Use lib$1 in DIR])],
 
18
    [ AS_VAR_SET([with_lib], [$withval]) ],
 
19
    [ AS_VAR_SET([with_lib], [yes]) ])
 
20
 
 
21
  AS_IF([test AS_VAR_GET([with_lib]) = yes],[
 
22
    AC_CHECK_HEADERS([$3])
 
23
    AS_IF([test AS_VAR_GET([ac_header]) = no],
 
24
      AC_MSG_WARN([Couldn't find $3. Try installing lib$3 development packages])
 
25
      [$4])
 
26
 
 
27
    my_save_LIBS="$LIBS"
 
28
    LIBS=""
 
29
    AC_CHECK_LIB($1, $2)
 
30
    AS_VAR_SET([libs_var],[${LIBS}])
 
31
    LIBS="${my_save_LIBS}"
 
32
    AS_VAR_SET([cppflags_var],[""])
 
33
    AS_IF([test AS_VAR_GET([ac_header]) = "$3" -a AS_VAR_GET([ac_lib]) = yes],
 
34
      [AS_VAR_SET([have_lib],[yes])],
 
35
      [AS_VAR_SET([have_lib],[no])
 
36
       [$4]])
 
37
  ],[
 
38
    AC_MSG_CHECKING(for $1 in $withval)
 
39
    if test -f $withval/$3 -a -f $withval/lib$1.a
 
40
    then
 
41
      owd=`pwd`
 
42
      if cd $withval; then withval=`pwd`; cd $owd; fi
 
43
      AS_VAR_SET([cppflags_var],[-I$withval])
 
44
      AS_VAR_SET([libs_var],[-L$withval -l$1])
 
45
      AS_VAR_SET([have_lib],[yes])
 
46
    elif test -f $withval/include/$3 -a -f $withval/lib/lib$1.a; then
 
47
      owd=`pwd`
 
48
      if cd $withval; then withval=`pwd`; cd $owd; fi
 
49
      AS_VAR_SET([cppflags_var],[-I$withval/include])
 
50
      AS_VAR_SET([libs_var],[-L$withval/lib -l$1])
 
51
      AS_VAR_SET([have_lib],[yes])
 
52
    else
 
53
      AC_MSG_WARN([$3 or lib$1.a not found in $withval])
 
54
      AS_VAR_SET([have_lib],[no])
 
55
      [$4]
 
56
    fi
 
57
  ])
 
58
  AC_SUBST(LIBMEMCACHED_LIBS)
 
59
  AC_SUBST(LIBMEMCACHED_CPPFLAGS)
 
60
  AM_CONDITIONAL(HAVE_MEMCACHED,[test "$ac_cv_have_memcached" = "yes"])
 
61
  AS_VAR_POPDEF([with_lib])
 
62
  AS_VAR_POPDEF([ac_header])
 
63
  AS_VAR_POPDEF([libs_var])
 
64
  AS_VAR_POPDEF([cppflags_var])
 
65
  AS_VAR_POPDEF([have_lib])
 
66
  AS_VAR_POPDEF([ac_lib])
 
67
])