AC-Archive
Autoconf Macro Archive

ac-archive.sf.net: - Project CVS - Download
Macro Index
- AM Support
- C++ Support
- C Support
- Fortran Support
- Java Support
- Cross Compilation
- Installed Packages
- Miscellaneous
- LaTeX Support
- Uncategorized
- archive macros
- adl's macros
- bkorb's macros
- guidod's macros
- latex's macros
- other's macros
- rleigh's macros
- obsoleted macros
- released macros
- search index

Documentation
- Contribute!
- History
- acincludedir m4
- acinclude (tool)
- macro howto
- ax tricks
- maintainers
- License
- Topics

generated...
2007年08月05日

(C) 2007 guidod
Synopsis
AX_LIB_SQLITE3([MINIMUM-VERSION])
, 
Version

2006年07月15日

Author

Mateusz Loskot <mateusz@loskot.net>

License

AllPermissive
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. Users of this software should generally follow the principles of the MIT License includings its disclaimer.

Category

cryp.to ac-archive's C++ Support (released)

Documentation

Test for the SQLite 3 library of a particular version (or newer)

This macro takes only one optional argument, required version of SQLite 3 library. If required version is not passed, 3.0.0 is used in the test of existance of SQLite 3.

If no intallation prefix to the installed SQLite library is given the macro searches under /usr, /usr/local, and /opt.

This macro calls:

 AC_SUBST(SQLITE3_CFLAGS)
 AC_SUBST(SQLITE3_LDFLAGS)
 AC_SUBST(SQLITE3_VERSION)

And sets:

 HAVE_SQLITE3
M4 Source Code
AC_DEFUN([AX_LIB_SQLITE3],
[
 AC_ARG_WITH([sqlite3],
 AC_HELP_STRING(
 [--with-sqlite3=@&lt;:@ARG@:&gt;@],
 [use SQLite 3 library @&lt;:@default=yes@:&gt;@, optionally specify the prefix for sqlite3 library]
 ),
 [
 if test "$withval" = "no"; then
 WANT_SQLITE3="no"
 elif test "$withval" = "yes"; then
 WANT_SQLITE3="yes"
 ac_sqlite3_path=""
 else
 WANT_SQLITE3="yes"
 ac_sqlite3_path="$withval"
 fi
 ],
 [WANT_SQLITE3="yes"]
 )
 SQLITE3_CFLAGS=""
 SQLITE3_LDFLAGS=""
 SQLITE3_VERSION=""
 if test "x$WANT_SQLITE3" = "xyes"; then
 ac_sqlite3_header="sqlite3.h"
 sqlite3_version_req=ifelse([1ドル], [], [3.0.0], [1ドル])
 sqlite3_version_req_shorten=`expr $sqlite3_version_req : '\([[0-9]]*\.[[0-9]]*\)'`
 sqlite3_version_req_major=`expr $sqlite3_version_req : '\([[0-9]]*\)'`
 sqlite3_version_req_minor=`expr $sqlite3_version_req : '[[0-9]]*\.\([[0-9]]*\)'`
 sqlite3_version_req_micro=`expr $sqlite3_version_req : '[[0-9]]*\.[[0-9]]*\.\([[0-9]]*\)'`
 if test "x$sqlite3_version_req_micro" = "x" ; then
 sqlite3_version_req_micro="0"
 fi
 sqlite3_version_req_number=`expr $sqlite3_version_req_major \* 1000000 \
 \+ $sqlite3_version_req_minor \* 1000 \
 \+ $sqlite3_version_req_micro`
 AC_MSG_CHECKING([for SQLite3 library &gt;= $sqlite3_version_req])
 if test "$ac_sqlite3_path" != ""; then
 ac_sqlite3_ldflags="-L$ac_sqlite3_path/lib"
 ac_sqlite3_cppflags="-I$ac_sqlite3_path/include"
 else
 for ac_sqlite3_path_tmp in /usr /usr/local /opt ; do
 if test -f "$ac_sqlite3_path_tmp/include/$ac_sqlite3_header" \
 &amp;&amp; test -r "$ac_sqlite3_path_tmp/include/$ac_sqlite3_header"; then
 ac_sqlite3_path=$ac_sqlite3_path_tmp
 ac_sqlite3_ldflags="-I$ac_sqlite3_path_tmp/include"
 ac_sqlite3_cppflags="-L$ac_sqlite3_path_tmp/lib"
 break;
 fi
 done
 fi
 ac_sqlite3_ldflags="$ac_sqlite3_ldflags -lsqlite3"
 saved_CPPFLAGS="$CPPFLAGS"
 CPPFLAGS="$CPPFLAGS $ac_sqlite3_cppflags"
 AC_LANG_PUSH(C++)
 AC_COMPILE_IFELSE(
 [
 AC_LANG_PROGRAM([[@%:@include &lt;sqlite3.h&gt;]],
 [[
#if (SQLITE_VERSION_NUMBER &gt;= $sqlite3_version_req_number)
// Everything is okay
#else
# error SQLite version is too old
#endif
 ]]
 )
 ],
 [
 AC_MSG_RESULT([yes])
 success="yes"
 ],
 [
 AC_MSG_RESULT([not found])
 succees="no"
 ]
 )
 AC_LANG_POP([C++])
 CPPFLAGS="$saved_CPPFLAGS"
 if test "$success" = "yes"; then
 SQLITE3_CFLAGS="$ac_sqlite3_cppflags"
 SQLITE3_LDFLAGS="$ac_sqlite3_ldflags"
 ac_sqlite3_header_path="$ac_sqlite3_path/include/$ac_sqlite3_header"
 dnl Retrieve SQLite release version
 if test "x$ac_sqlite3_header_path" != "x"; then
 ac_sqlite3_version=`cat $ac_sqlite3_header_path \
 | grep '#define.*SQLITE_VERSION.*\"' | sed -e 's/.* "//' \
 | sed -e 's/"//'`
 if test $ac_sqlite3_version != ""; then
 SQLITE3_VERSION=$ac_sqlite3_version
 else
 AC_MSG_WARN([Can not find SQLITE_VERSION macro in sqlite3.h header to retrieve SQLite version!])
 fi
 fi
 AC_SUBST(SQLITE3_CFLAGS)
 AC_SUBST(SQLITE3_LDFLAGS)
 AC_SUBST(SQLITE3_VERSION)
 AC_DEFINE(HAVE_SQLITE3)
 fi
 fi
])

AltStyle によって変換されたページ (->オリジナル) /