improved gdal and postgresql detection
This commit is contained in:
parent
bbbfd735c4
commit
691d3788f5
3 changed files with 149 additions and 4 deletions
114
config/ax_boost_iostreams.m4
Normal file
114
config/ax_boost_iostreams.m4
Normal file
|
@ -0,0 +1,114 @@
|
|||
# ===========================================================================
|
||||
# http://autoconf-archive.cryp.to/ax_boost_iostreams.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
# AX_BOOST_IOSTREAMS
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
# Test for IOStreams library from the Boost C++ libraries. The macro
|
||||
# requires a preceding call to AX_BOOST_BASE. Further documentation is
|
||||
# available at <http://randspringer.de/boost/index.html>.
|
||||
#
|
||||
# This macro calls:
|
||||
#
|
||||
# AC_SUBST(BOOST_IOSTREAMS_LIB)
|
||||
#
|
||||
# And sets:
|
||||
#
|
||||
# HAVE_BOOST_IOSTREAMS
|
||||
#
|
||||
# LAST MODIFICATION
|
||||
#
|
||||
# 2008-04-12
|
||||
#
|
||||
# COPYLEFT
|
||||
#
|
||||
# Copyright (c) 2008 Thomas Porschberg <thomas@randspringer.de>
|
||||
#
|
||||
# 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.
|
||||
|
||||
AC_DEFUN([AX_BOOST_IOSTREAMS],
|
||||
[
|
||||
AC_ARG_WITH([boost-iostreams],
|
||||
AS_HELP_STRING([--with-boost-iostreams@<:@=special-lib@:>@],
|
||||
[use the IOStreams library from boost - it is possible to specify a certain library for the linker
|
||||
e.g. --with-boost-iostreams=boost_iostreams-gcc-mt-d-1_33_1 ]),
|
||||
[
|
||||
if test "$withval" = "no"; then
|
||||
want_boost="no"
|
||||
elif test "$withval" = "yes"; then
|
||||
want_boost="yes"
|
||||
ax_boost_user_iostreams_lib=""
|
||||
else
|
||||
want_boost="yes"
|
||||
ax_boost_user_iostreams_lib="$withval"
|
||||
fi
|
||||
],
|
||||
[want_boost="yes"]
|
||||
)
|
||||
|
||||
if test "x$want_boost" = "xyes"; then
|
||||
AC_REQUIRE([AC_PROG_CC])
|
||||
CPPFLAGS_SAVED="$CPPFLAGS"
|
||||
CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
|
||||
export CPPFLAGS
|
||||
|
||||
LDFLAGS_SAVED="$LDFLAGS"
|
||||
LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
|
||||
export LDFLAGS
|
||||
|
||||
AC_CACHE_CHECK(whether the Boost::IOStreams library is available,
|
||||
ax_cv_boost_iostreams,
|
||||
[AC_LANG_PUSH([C++])
|
||||
AC_COMPILE_IFELSE(AC_LANG_PROGRAM([[@%:@include <boost/iostreams/filtering_stream.hpp>
|
||||
@%:@include <boost/range/iterator_range.hpp>
|
||||
]],
|
||||
[[std::string input = "Hello World!";
|
||||
namespace io = boost::iostreams;
|
||||
io::filtering_istream in(boost::make_iterator_range(input));
|
||||
return 0;
|
||||
]]),
|
||||
ax_cv_boost_iostreams=yes, ax_cv_boost_iostreams=no)
|
||||
AC_LANG_POP([C++])
|
||||
])
|
||||
if test "x$ax_cv_boost_iostreams" = "xyes"; then
|
||||
AC_DEFINE(HAVE_BOOST_IOSTREAMS,,[define if the Boost::IOStreams library is available])
|
||||
BOOSTLIBDIR=`echo $BOOST_LDFLAGS | sed -e 's/@<:@^\/@:>@*//'`
|
||||
if test "x$ax_boost_user_iostreams_lib" = "x"; then
|
||||
for libextension in `ls $BOOSTLIBDIR/libboost_iostreams*.{so,a}* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^lib\(boost_iostreams.*\)\.so.*$;\1;' -e 's;^lib\(boost_iostreams.*\)\.a*$;\1;'` ; do
|
||||
ax_lib=${libextension}
|
||||
AC_CHECK_LIB($ax_lib, exit,
|
||||
[BOOST_IOSTREAMS_LIB="-l$ax_lib"; AC_SUBST(BOOST_IOSTREAMS_LIB) link_iostreams="yes"; break],
|
||||
[link_iostreams="no"])
|
||||
done
|
||||
if test "x$link_iostreams" != "xyes"; then
|
||||
for libextension in `ls $BOOSTLIBDIR/boost_iostreams*.{dll,a}* 2>/dev/null | sed 's,.*/,,' | sed -e 's;^\(boost_iostreams.*\)\.dll.*$;\1;' -e 's;^\(boost_iostreams.*\)\.a*$;\1;'` ; do
|
||||
ax_lib=${libextension}
|
||||
AC_CHECK_LIB($ax_lib, exit,
|
||||
[BOOST_IOSTREAMS_LIB="-l$ax_lib"; AC_SUBST(BOOST_IOSTREAMS_LIB) link_iostreams="yes"; break],
|
||||
[link_iostreams="no"])
|
||||
done
|
||||
fi
|
||||
|
||||
else
|
||||
for ax_lib in $ax_boost_user_iostreams_lib boost_iostreams-$ax_boost_user_iostreams_lib; do
|
||||
AC_CHECK_LIB($ax_lib, main,
|
||||
[BOOST_IOSTREAMS_LIB="-l$ax_lib"; AC_SUBST(BOOST_IOSTREAMS_LIB) link_iostreams="yes"; break],
|
||||
[link_iostreams="no"])
|
||||
done
|
||||
|
||||
fi
|
||||
if test "x$link_iostreams" != "xyes"; then
|
||||
AC_MSG_ERROR(Could not link against $ax_lib !)
|
||||
fi
|
||||
fi
|
||||
|
||||
CPPFLAGS="$CPPFLAGS_SAVED"
|
||||
LDFLAGS="$LDFLAGS_SAVED"
|
||||
fi
|
||||
])
|
33
configure.ac
33
configure.ac
|
@ -73,11 +73,38 @@ if test "x$ax_cv_boost_serialization" = "xno"; then
|
|||
exit
|
||||
fi
|
||||
|
||||
AX_LIB_POSTGRESQL
|
||||
if test "$found_postgresql" = "yes"; then
|
||||
AM_CONDITIONAL(HAVE_POSTGRESQL, test "x$found_postgresql" = "xyes")
|
||||
AX_BOOST_IOSTREAMS
|
||||
if test "x$ax_cv_boost_iostreams" = "xno"; then
|
||||
echo
|
||||
echo "Error: You need to install the boost iostreams library!"
|
||||
echo
|
||||
exit
|
||||
fi
|
||||
|
||||
|
||||
AX_LIB_POSTGRESQL
|
||||
if test "x$found_postgresql" = "xyes"; then
|
||||
echo "checking whether to enable postgresql... yes"
|
||||
else
|
||||
echo "checking whether to enable postgresql... no"
|
||||
fi
|
||||
AM_CONDITIONAL(HAVE_POSTGRESQL, test "x$found_postgresql" = "xyes")
|
||||
|
||||
AC_ARG_WITH(gdal-config,
|
||||
[ --with-gdal-config=GDAL_CONFIG use gdal-config specified ],
|
||||
[
|
||||
GDAL_CONFIG=$withval;
|
||||
echo "using "$GDAL_CONFIG" for gdal-config";
|
||||
],[
|
||||
PROG="gdal-config";
|
||||
AC_PATH_PROG(GDAL_CONFIG, $PROG, "", $PATH)
|
||||
])
|
||||
GDAL_CFLAGS=`$GDAL_CONFIG --cflags`
|
||||
GDAL_LIBS=`$GDAL_CONFIG --libs`
|
||||
AC_SUBST(GDAL_CFLAGS)
|
||||
AC_SUBST(GDAL_LIBS)
|
||||
|
||||
|
||||
AX_CHECK_TIFF
|
||||
if test "x$link_tiff" = "xno"; then
|
||||
exit
|
||||
|
|
|
@ -6,8 +6,12 @@ gdal_la_SOURCES = \
|
|||
gdal_datasource.cpp\
|
||||
gdal_featureset.cpp
|
||||
|
||||
gdal_la_LIBADD = \
|
||||
${GDAL_LDFLAGS}
|
||||
|
||||
gdal_la_CXXFLAGS = \
|
||||
-I../../../include
|
||||
${GDAL_CFLAGS} \
|
||||
-I../../../include
|
||||
|
||||
gdal_la_LDFLAGS = \
|
||||
-module \
|
||||
|
|
Loading…
Add table
Reference in a new issue