2008-06-05 14:30:54 +00:00
dnl **********************************************************************
dnl * $Id: configure.ac 2797 2008-05-31 09:56:44Z mcayland $
dnl *
dnl * PostGIS - Spatial Types for PostgreSQL
dnl * http://postgis.refractions.net
dnl * Copyright 2008 Mark Cave-Ayland
dnl *
dnl * This is free software; you can redistribute and/or modify it under
dnl * the terms of the GNU General Public Licence. See the COPYING file.
dnl *
dnl **********************************************************************
2008-05-14 17:10:19 +00:00
AC_INIT()
AC_CONFIG_HEADERS([postgis_config.h])
2005-04-18 14:46:48 +00:00
2008-07-01 14:15:33 +00:00
dnl Invoke libtool: we do this as it is the easiest way to find the PIC
dnl flags required to build liblwgeom
AC_PROG_LIBTOOL
2005-04-18 14:46:48 +00:00
dnl
dnl Compilers
dnl
AC_PROG_CC
2008-05-14 17:10:19 +00:00
AC_PROG_CPP
2005-04-18 14:46:48 +00:00
AC_PROG_CXX
2008-07-01 14:15:33 +00:00
dnl
dnl Define PIC flags in PICFLAGS (note: this variable is set as part of libtool initialisation above)
dnl
PICFLAGS="$lt_prog_compiler_pic"
AC_SUBST([PICFLAGS])
dnl
dnl For GCC enable additional warning flags -Wall and -Wmissing-prototypes (using macro included with libtool)
dnl
WARNFLAGS=""
AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -Wall], [dummy], [-Wall], [], [WARNFLAGS="$WARNFLAGS -Wall"], [])
AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -Wmissing-prototypes], [dummy], [-Wmissing-prototypes], [], [WARNFLAGS="$WARNFLAGS -Wmissing-prototypes"], [])
AC_SUBST([WARNFLAGS])
2005-06-06 18:42:21 +00:00
2008-10-19 14:52:29 +00:00
dnl
dnl Define executable suffix for use with the loader Makefiles
dnl
EXESUFFIX="$ac_cv_exeext"
AC_SUBST([EXESUFFIX])
2005-06-06 18:42:21 +00:00
dnl
2008-05-14 17:10:19 +00:00
dnl Version Information imported from Version.config
2005-06-06 18:42:21 +00:00
dnl
2008-05-14 17:10:19 +00:00
POSTGIS_MAJOR_VERSION=`cat Version.config | grep POSTGIS_MAJOR_VERSION | sed 's/[[^=]]*=\([[0-9]]\)/\1/g'`
POSTGIS_MINOR_VERSION=`cat Version.config | grep POSTGIS_MINOR_VERSION | sed 's/[[^=]]*=\([[0-9]]\)/\1/g'`
POSTGIS_MICRO_VERSION=`cat Version.config | grep POSTGIS_MICRO_VERSION | sed 's/[[^=]]*=\([[0-9]]\)/\1/g'`
2005-07-04 09:47:03 +00:00
2008-10-16 18:12:34 +00:00
AC_DEFINE_UNQUOTED([POSTGIS_MAJOR_VERSION], ["$POSTGIS_MAJOR_VERSION"], [PostGIS major version])
AC_DEFINE_UNQUOTED([POSTGIS_MINOR_VERSION], ["$POSTGIS_MINOR_VERSION"], [PostGIS minor version])
AC_DEFINE_UNQUOTED([POSTGIS_MICRO_VERSION], ["$POSTGIS_MICRO_VERSION"], [PostGIS micro version])
AC_SUBST([POSTGIS_MAJOR_VERSION])
AC_SUBST([POSTGIS_MINOR_VERSION])
AC_SUBST([POSTGIS_MICRO_VERSION])
2005-06-06 18:42:21 +00:00
2008-07-03 09:28:38 +00:00
dnl
dnl Search for flex/bison to build the parser
dnl
AC_PROG_LEX
AC_PROG_YACC
AC_SUBST([LEX])
AC_SUBST([YACC])
2008-05-20 22:10:54 +00:00
dnl
dnl Search for xsltproc which is required for building documentation
dnl
AC_PATH_PROG([XSLTPROC], [xsltproc], [])
if test "x$XSLTPROC" = "x"; then
AC_MSG_WARN([xsltproc is not installed so documentation cannot be built])
fi
2008-09-11 12:18:37 +00:00
dnl
dnl Search for db2pdf which is required for building PDF documentation
dnl
AC_PATH_PROG([DB2PDF], [db2pdf], [])
if test "x$DB2PDF" = "x"; then
AC_MSG_WARN([db2pdf is not installed so PDF documentation cannot be built])
fi
2008-10-16 18:12:34 +00:00
dnl
dnl Search for dblatex which is required for building PDF documentation
dnl
AC_PATH_PROG([DBLATEX], [dblatex], [])
if test "x$DBLATEX" = "x"; then
AC_MSG_WARN([dblatex is not installed so PDF documentation cannot be built])
fi
2008-05-20 22:10:54 +00:00
dnl
dnl Allow the user to specify the location of the html/docbook.xsl stylesheet
dnl
2008-07-14 10:05:14 +00:00
AC_ARG_WITH([xsldir],
[AS_HELP_STRING([--with-xsldir=PATH], [specify the directory containing the docbook.xsl stylesheet])],
[XSLBASE="$withval"], [XSLBASE=""])
2008-07-14 11:40:41 +00:00
XSLBASE_AUTO=""
2008-05-20 22:10:54 +00:00
if test "x$XSLBASE" = "x"; then
dnl If the user did not specify a directory for the docbook stylesheet, choose the first directory
dnl that matches from the following list
SEARCHPATH="
/usr/share/sgml/docbook/xsl-stylesheets
/usr/share/xml/docbook/stylesheet/nwalsh
/usr/share/sgml/docbook/stylesheet/xsl/nwalsh
"
for p in ${SEARCHPATH}; do
if test -r "${p}"/html/docbook.xsl; then
2008-07-14 11:40:41 +00:00
XSLBASE_AUTO="${p}"
2008-05-20 22:10:54 +00:00
break
fi
done
2008-07-14 11:40:41 +00:00
dnl Check to see if the automatically searched paths above located a valid Docbook stylesheet
if test "x$XSLBASE_AUTO" = "x"; then
AC_MSG_WARN([could not locate Docbook stylesheets required to build the documentation])
fi
else
dnl The user specified an alternate directory so make sure everything looks sensible
2008-07-14 10:05:14 +00:00
if test ! -d "$XSLBASE"; then
AC_MSG_ERROR([the docbook stylesheet directory specified using --with-xsldir does not exist])
fi
2008-05-27 14:47:06 +00:00
2008-07-14 10:05:14 +00:00
if test ! -f "$XSLBASE/html/docbook.xsl"; then
AC_MSG_ERROR([the docbook stylesheet directory specified using --with-xsldir does not contain the html/docbook.xsl file])
fi
2008-05-20 22:10:54 +00:00
fi
2008-07-14 11:40:41 +00:00
dnl
dnl If XSLBASE has been set then at this point we know it must be valid and so we can just use it. If XSLBASE_AUTO has been set, and XSLBASE
dnl is empty then a valid stylesheet was found in XSLBASE_AUTO so we should use that. Otherwise just continue silently with a blank XSLBASE
dnl variable which will trigger the error message in the documentation Makefile
dnl
if test "x$XSLBASE" = "x"; then
if test ! "x$XSLBASE_AUTO" = "x"; then
XSLBASE="$XSLBASE_AUTO"
fi
fi
2008-05-20 22:10:54 +00:00
AC_SUBST([XSLBASE])
2009-01-05 00:08:26 +00:00
2008-12-22 23:37:58 +00:00
dnl
dnl Detect CUnit if it is installed (used for unit testing)
dnl
2009-01-05 00:08:26 +00:00
CUNIT_LDFLAGS=""
AC_CHECK_HEADER([CUnit/CUnit.h], [
AC_CHECK_LIB([cunit], [CU_initialize_registry], [CUNIT_LDFLAGS=-lcunit], [AC_MSG_WARN([could not locate CUnit required for liblwgeom unit tests])])
],
[
AC_MSG_WARN([could not locate CUnit required for liblwgeom unit tests])
])
AC_SUBST([CUNIT_LDFLAGS])
2008-12-22 23:37:58 +00:00
2008-05-20 22:10:54 +00:00
2008-05-27 14:47:06 +00:00
dnl
dnl Detect iconv if it is installed (used for shp2pgsql encoding conversion if available)
dnl
HAVE_ICONV_H=0
AC_CHECK_HEADER([iconv.h], [HAVE_ICONV_H=1], [])
dnl If we find the header file, try and link against the library
if test "x$HAVE_ICONV_H" != "x0"; then
dnl Check for iconv includes as part of libc
2008-07-14 10:41:05 +00:00
AC_CHECK_LIB([c], [iconv_open], [ICONV_LDFLAGS=-lc HAVE_ICONV=1], [])
2008-05-27 14:47:06 +00:00
if test "x$HAVE_ICONV" = "x"; then
dnl If not found, check for iconv included as part of libiconv
2008-07-14 10:41:05 +00:00
AC_CHECK_LIB([iconv], [iconv_open], [ICONV_LDFLAGS=-liconv HAVE_ICONV=1], [])
2008-05-27 14:47:06 +00:00
if test "x$HAVE_ICONV" = "x"; then
dnl If not found, check for Win32 iconv (some of them use a lib prefix for functions within the iconv DLLs)
2008-07-14 10:41:05 +00:00
AC_CHECK_LIB([iconv], [libiconv_open], [ICONV_LDFLAGS=-liconv HAVE_ICONV=1], [])
2008-05-27 14:47:06 +00:00
if test "x$HAVE_ICONV" = "x"; then
dnl No iconv library was found; issue a warning to the console
AC_MSG_WARN([could not find iconv library: no support for encoding conversion will be included])
fi
fi
fi
else
dnl No iconv header was found; issue a warning to the console
AC_MSG_WARN([could not find iconv.h header: no support for encoding conversion will be included])
fi
dnl Only define HAVE_ICONV in postgis_config.h if we detect iconv sucessfully
if test "x$HAVE_ICONV" != "x"; then
AC_DEFINE_UNQUOTED([HAVE_ICONV], [$HAVE_ICONV], [Defined if libiconv headers and library are present])
fi
AC_SUBST([ICONV_LDFLAGS])
2005-05-10 09:35:34 +00:00
dnl
2008-05-14 17:10:19 +00:00
dnl Detect the version of PostgreSQL installed on the system
2005-05-10 09:35:34 +00:00
dnl
2008-07-14 10:05:14 +00:00
AC_ARG_WITH([pgconfig],
[AS_HELP_STRING([--with-pgconfig=FILE], [specify an alternative pg_config file])],
[PGCONFIG="$withval"], [PGCONFIG=""])
2008-05-14 17:10:19 +00:00
if test "x$PGCONFIG" = "x"; then
dnl PGCONFIG was not specified, so search within the current path
2005-04-18 14:46:48 +00:00
AC_PATH_PROG([PGCONFIG], [pg_config])
2006-04-18 09:10:36 +00:00
2008-05-14 17:10:19 +00:00
dnl If we couldn't find pg_config, display an error
if test "x$PGCONFIG" = "x"; then
AC_MSG_ERROR([could not find pg_config within the current path. You may need to try re-running configure with a --with-pgconfig parameter.])
fi
else
dnl PGCONFIG was specified; display a message to the user
if test "x$PGCONFIG" = "xyes"; then
AC_MSG_ERROR([you must specify a parameter to --with-pgconfig, e.g. --with-pgconfig=/path/to/pg_config])
2005-05-10 08:31:14 +00:00
else
2008-05-14 17:10:19 +00:00
if test -f $PGCONFIG; then
AC_MSG_RESULT([Using user-specified pg_config file: $PGCONFIG])
else
AC_MSG_ERROR([the user-specified pg_config file $PGCONFIG does not exist])
2005-04-14 11:23:30 +00:00
fi
fi
2008-05-14 17:10:19 +00:00
fi
2006-11-10 15:17:10 +00:00
2008-11-06 15:15:06 +00:00
dnl
dnl Ensure that $PG_CONFIG --pgxs points to a valid file. This is because some distributions such as Debian
dnl also include pg_config as part of libpq-dev packages, but don't install the Makefile it points to unless
dnl the postgresql-server-dev packages are installed :)
dnl
PGXS=`$PGCONFIG --pgxs`
if test ! -f $PGXS; then
AC_MSG_ERROR([the PGXS Makefile $PGXS cannot be found. Please install the PostgreSQL server development packages and re-run configure.])
fi
AC_SUBST([PGXS])
2008-05-14 17:10:19 +00:00
dnl Extract the version information from pg_config
dnl Note: we extract the major & minor separately, ensure they are numeric, and then combine to give
dnl the final version. This is to guard against user error...
PGSQL_MAJOR_VERSION=`$PGCONFIG --version | sed 's/[[A-Za-z ]]*//' | cut -d. -f1 | sed 's/[[^0-9]]//g'`
PGSQL_MINOR_VERSION=`$PGCONFIG --version | sed 's/[[A-Za-z ]]*//' | cut -d. -f2 | sed 's/[[^0-9]]//g'`
POSTGIS_PGSQL_VERSION="$PGSQL_MAJOR_VERSION$PGSQL_MINOR_VERSION"
2008-03-28 19:25:16 +00:00
2008-05-14 17:10:19 +00:00
dnl Ensure that we are using PostgreSQL >= 8.1
if test ! "$PGSQL_MAJOR_VERSION" -ge 8; then
AC_MSG_ERROR([PostGIS requires PostgreSQL >= 8.1])
else
if test "$PGSQL_MAJOR_VERSION" -eq 8; then
if test ! "$PGSQL_MINOR_VERSION" -ge 1; then
AC_MSG_ERROR([PostGIS requires PostgreSQL >= 8.1])
fi
2006-11-10 15:17:10 +00:00
fi
2008-05-14 17:10:19 +00:00
fi
2006-11-10 15:17:10 +00:00
2008-05-14 17:10:19 +00:00
dnl Note: We don't need the server-side LDFLAGS or CPPFLAGS because we get these from PGXS
2008-03-28 19:25:16 +00:00
2008-05-14 17:10:19 +00:00
dnl Extract the linker and include flags for the frontend (for programs that use libpq)
2008-12-22 21:49:00 +00:00
PGSQL_FE_LDFLAGS=-L`$PGCONFIG --libdir`" -lpq"
PGSQL_FE_CPPFLAGS=-I`$PGCONFIG --includedir`
2007-05-14 17:51:32 +00:00
2008-05-14 17:10:19 +00:00
AC_SUBST([PGSQL_FE_LDFLAGS])
AC_SUBST([PGSQL_FE_CPPFLAGS])
2005-01-24 11:00:04 +00:00
2008-05-22 14:34:32 +00:00
dnl Extract the documentation and man page directories
PGSQL_DOCDIR=`$PGCONFIG --docdir`
PGSQL_MANDIR=`$PGCONFIG --mandir`
AC_SUBST([PGSQL_DOCDIR])
AC_SUBST([PGSQL_MANDIR])
2008-10-19 14:52:29 +00:00
dnl Extract the executable directory
PGSQL_BINDIR=`$PGCONFIG --bindir`
AC_SUBST([PGSQL_BINDIR])
2005-01-24 11:00:04 +00:00
2008-05-14 17:10:19 +00:00
dnl Ensure that we can parse libpq-fe.h
CPPFLAGS_SAVE="$CPPFLAGS"
CPPFLAGS="$PGSQL_FE_CPPFLAGS"
AC_CHECK_HEADER([libpq-fe.h], [], [AC_MSG_ERROR([could not find libpq-fe.h])])
CPPFLAGS="$CPPFLAGS_SAVE"
2005-01-24 11:00:04 +00:00
2008-05-14 17:10:19 +00:00
dnl Ensure we can link against libpq
LIBS_SAVE="$LIBS"
LIBS="$PGSQL_FE_LDFLAGS"
AC_CHECK_LIB([pq], [PQserverVersion],
[],
[AC_MSG_ERROR([could not find libpq])],
[])
LIBS="$LIBS_SAVE"
2005-01-24 15:22:56 +00:00
2008-05-14 17:10:19 +00:00
AC_DEFINE_UNQUOTED([POSTGIS_PGSQL_VERSION], [$POSTGIS_PGSQL_VERSION], [PostgreSQL server version])
AC_SUBST([POSTGIS_PGSQL_VERSION])
2005-07-05 15:13:39 +00:00
2005-01-24 15:22:56 +00:00
2005-04-18 14:46:48 +00:00
dnl
2008-05-14 17:10:19 +00:00
dnl Detect the version of GEOS installed on the system
2005-04-18 14:46:48 +00:00
dnl
2008-07-14 10:05:14 +00:00
AC_ARG_WITH([geosconfig],
[AS_HELP_STRING([--with-geosconfig=FILE], [specify an alternative geos-config file])],
[GEOSCONFIG="$withval"], [GEOSCONFIG=""])
2008-05-14 17:10:19 +00:00
if test "x$GEOSCONFIG" = "x"; then
dnl GEOSCONFIG was not specified, so search within the current path
AC_PATH_PROG([GEOSCONFIG], [geos-config])
2005-12-15 23:57:24 +00:00
2008-05-14 17:10:19 +00:00
dnl If we couldn't find geos-config, display an error
if test "x$GEOSCONFIG" = "x"; then
AC_MSG_ERROR([could not find geos-config within the current path. You may need to try re-running configure with a --with-geosconfig parameter.])
2005-04-18 14:46:48 +00:00
fi
2008-05-14 17:10:19 +00:00
else
dnl GEOSCONFIG was specified; display a message to the user
if test "x$GEOSCONFIG" = "xyes"; then
AC_MSG_ERROR([you must specify a parameter to --with-geosconfig, e.g. --with-geosconfig=/path/to/geos-config])
else
if test -f $GEOSCONFIG; then
AC_MSG_RESULT([Using user-specified geos-config file: $GEOSCONFIG])
else
AC_MSG_ERROR([the user-specified geos-config file $GEOSCONFIG does not exist])
fi
2005-04-18 14:46:48 +00:00
fi
2008-05-14 17:10:19 +00:00
fi
2005-04-18 14:46:48 +00:00
2008-05-14 17:10:19 +00:00
dnl Extract the version information from pg_config
dnl Note: we extract the major & minor separately, ensure they are numeric, and then combine to give
dnl the final version. This is to guard against user error...
GEOS_MAJOR_VERSION=`$GEOSCONFIG --version | cut -d. -f1 | sed 's/[[^0-9]]//g'`
GEOS_MINOR_VERSION=`$GEOSCONFIG --version | cut -d. -f2 | sed 's/[[^0-9]]//g'`
POSTGIS_GEOS_VERSION="$GEOS_MAJOR_VERSION$GEOS_MINOR_VERSION"
2005-04-18 14:46:48 +00:00
2008-05-14 17:10:19 +00:00
dnl Ensure that we are using GEOS >= 2.2.0 (requires CAPI)
if test ! "$GEOS_MAJOR_VERSION" -ge 2; then
AC_MSG_ERROR([PostGIS requires GEOS >= 2.2])
else
if test "$GEOS_MAJOR_VERSION" -eq 2; then
if test ! "$GEOS_MINOR_VERSION" -ge 2; then
AC_MSG_ERROR([PostGIS requires GEOS >= 2.2])
2005-12-14 12:24:26 +00:00
fi
fi
2008-05-14 17:10:19 +00:00
fi
2005-12-14 12:24:26 +00:00
2008-05-14 17:10:19 +00:00
dnl Extract the linker and include flags
GEOS_LDFLAGS=`$GEOSCONFIG --ldflags`
GEOS_CPPFLAGS=-I`$GEOSCONFIG --includes`
2005-04-14 11:23:30 +00:00
2008-05-14 17:10:19 +00:00
dnl Ensure that we can parse geos_c.h
CPPFLAGS_SAVE="$CPPFLAGS"
CPPFLAGS="$GEOS_CPPFLAGS"
AC_CHECK_HEADER([geos_c.h], [], [AC_MSG_ERROR([could not find geos_c.h - you may need to specify the directory of a geos-config file using --with-geosconfig])])
CPPFLAGS="$CPPFLAGS_SAVE"
2007-06-15 19:06:11 +00:00
2008-05-14 17:10:19 +00:00
dnl Ensure we can link against libgeos_c
LIBS_SAVE="$LIBS"
LIBS="$GEOS_LDFLAGS"
AC_CHECK_LIB([geos_c], [initGEOS],
[],
[AC_MSG_ERROR([could not find libgeos_c - you may need to specify the directory of a geos-config file using --with-geosconfig])],
[])
LIBS="$LIBS_SAVE"
2005-04-19 10:41:22 +00:00
2008-05-14 17:10:19 +00:00
AC_DEFINE_UNQUOTED([POSTGIS_GEOS_VERSION], [$POSTGIS_GEOS_VERSION], [GEOS library version])
AC_SUBST([POSTGIS_GEOS_VERSION])
2005-12-19 15:07:24 +00:00
2008-05-14 17:10:19 +00:00
dnl
dnl Detect the version of PROJ.4 installed
dnl
2005-12-19 15:07:24 +00:00
2008-07-14 10:05:14 +00:00
AC_ARG_WITH([projdir],
[AS_HELP_STRING([--with-projdir=PATH], [specify the PROJ.4 installation directory])],
[PROJDIR="$withval"], [PROJDIR=""])
2008-05-14 17:10:19 +00:00
if test ! "x$PROJDIR" = "x"; then
dnl Make sure that the directory exists
if test "x$PROJDIR" = "xyes"; then
AC_MSG_ERROR([you must specifiy a parameter to --with-projdir, e.g. --with-projdir=/path/to])
else
if test -d "$PROJDIR"; then
AC_MSG_RESULT([Using user-specified proj directory: $PROJDIR])
dnl Add the include directory to PROJ_CPPFLAGS
PROJ_CPPFLAGS="-I$PROJDIR/include"
PROJ_LDFLAGS="-L$PROJDIR/lib"
else
AC_MSG_ERROR([the --with-projdir directory "$PROJDIR" cannot be found])
2006-01-17 14:53:34 +00:00
fi
2005-12-19 15:07:24 +00:00
fi
2008-05-14 17:10:19 +00:00
fi
2005-12-19 15:07:24 +00:00
2008-05-14 17:10:19 +00:00
dnl Check that we can find the proj_api.h header file
CPPFLAGS_SAVE="$CPPFLAGS"
CPPFLAGS="$PROJ_CPPFLAGS"
AC_CHECK_HEADER([proj_api.h], [], [AC_MSG_ERROR([could not find proj_api.h - you may need to specify the directory of a PROJ.4 installation using --with-projdir])])
2005-12-19 15:07:24 +00:00
2008-05-14 17:10:19 +00:00
dnl Return the PROJ.4 version number
AC_PROJ_VERSION([POSTGIS_PROJ_VERSION])
AC_DEFINE_UNQUOTED([POSTGIS_PROJ_VERSION], [$POSTGIS_PROJ_VERSION], [PROJ library version])
AC_SUBST([POSTGIS_PROJ_VERSION])
CPPFLAGS="$CPPFLAGS_SAVE"
2005-12-19 15:07:24 +00:00
2008-07-24 10:22:16 +00:00
dnl Ensure that we are using PROJ >= 4.5.0 (requires pj_set_searchpath)
if test ! "$POSTGIS_PROJ_VERSION" -ge 45; then
AC_MSG_ERROR([PostGIS requires PROJ >= 4.5.0])
fi
2008-05-14 17:10:19 +00:00
dnl Ensure we can link against libproj
LIBS_SAVE="$LIBS"
LIBS="$PROJ_LDFLAGS"
AC_CHECK_LIB([proj], [pj_get_release],
[],
[AC_MSG_ERROR([could not find libproj - you may need to specify the directory of a PROJ.4 installation using --with-projdir])],
[])
LIBS="$LIBS_SAVE"
2005-12-19 15:07:24 +00:00
2005-04-14 11:23:30 +00:00
2008-05-31 09:56:44 +00:00
dnl
dnl Allow the user to enable debugging with --enable-debug
dnl
2008-05-31 10:35:04 +00:00
dnl Currently we default to debug level 4. See DEBUG for more information.
2008-05-31 09:56:44 +00:00
dnl
AC_ARG_ENABLE([debug], AC_HELP_STRING([--enable-debug], [Enable verbose debugging messages]),
[POSTGIS_DEBUG_LEVEL=4], [POSTGIS_DEBUG_LEVEL=0])
AC_DEFINE_UNQUOTED([POSTGIS_DEBUG_LEVEL], [$POSTGIS_DEBUG_LEVEL], [PostGIS library debug level (0=disabled)])
2008-11-20 15:00:57 +00:00
dnl
dnl Allow the user to enable GEOS profiling with --enable-profile
dnl
AC_ARG_ENABLE([profile], AC_HELP_STRING([--enable-profile], [Enable GEOS profiling messages]),
[POSTGIS_PROFILE=1], [POSTGIS_PROFILE=0])
AC_DEFINE_UNQUOTED([POSTGIS_PROFILE], [$POSTGIS_PROFILE], [Enable GEOS profiling (0=disabled)])
2008-05-31 09:56:44 +00:00
2008-05-14 17:10:19 +00:00
dnl
dnl Define version macros
dnl
2005-11-01 17:11:20 +00:00
2008-05-14 17:10:19 +00:00
POSTGIS_VERSION="$POSTGIS_MAJOR_VERSION.$POSTGIS_MINOR_VERSION USE_GEOS=1 USE_PROJ=1 USE_STATS=1"
POSTGIS_LIB_VERSION="$POSTGIS_MAJOR_VERSION.$POSTGIS_MINOR_VERSION.$POSTGIS_MICRO_VERSION"
POSTGIS_BUILD_DATE=`date -u "+%Y-%m-%d %H:%M:%S"`
POSTGIS_SCRIPTS_VERSION="$POSTGIS_LIB_VERSION"
2005-05-10 09:35:34 +00:00
2008-05-14 17:10:19 +00:00
AC_DEFINE_UNQUOTED([POSTGIS_VERSION], ["$POSTGIS_VERSION"], [PostGIS version])
AC_DEFINE_UNQUOTED([POSTGIS_LIB_VERSION], ["$POSTGIS_LIB_VERSION"], [PostGIS library version])
AC_DEFINE_UNQUOTED([POSTGIS_BUILD_DATE], ["$POSTGIS_BUILD_DATE"], [PostGIS build date])
AC_DEFINE_UNQUOTED([POSTGIS_SCRIPTS_VERSION], ["$POSTGIS_SCRIPTS_VERSION"], [PostGIS scripts version])
2005-05-10 09:35:34 +00:00
2008-05-14 17:10:19 +00:00
AC_SUBST([POSTGIS_VERSION])
AC_SUBST([POSTGIS_LIB_VERSION])
AC_SUBST([POSTGIS_BUILD_DATE])
AC_SUBST([POSTGIS_SCRIPTS_VERSION])
2005-04-18 14:46:48 +00:00
2005-04-14 11:23:30 +00:00
2008-05-14 17:10:19 +00:00
dnl
dnl Other parameters
dnl
2007-05-14 17:51:32 +00:00
2008-05-14 17:10:19 +00:00
dnl Always enable BBOX caching by default
AC_DEFINE_UNQUOTED([POSTGIS_AUTOCACHE_BBOX], [1], [Enable caching of bounding box within geometries])
2007-05-14 17:51:32 +00:00
2008-05-14 17:10:19 +00:00
dnl Always enable use of ANALYZE statistics by default
AC_DEFINE_UNQUOTED([POSTGIS_USE_STATS], [1], [Enable use of ANALYZE statistics])
2007-05-14 17:51:32 +00:00
2005-04-18 14:46:48 +00:00
2008-05-14 17:10:19 +00:00
CPPFLAGS="$PGSQL_CPPFLAGS $GEOS_CPPFLAGS $PROJ_CPPFLAGS"
dnl AC_MSG_RESULT([CPPFLAGS: $CPPFLAGS])
SHLIB_LINK="$PGSQL_LDFLAGS $GEOS_LDFLAGS $PROJ_LDFLAGS -lgeos_c -lproj"
AC_SUBST([SHLIB_LINK])
dnl AC_MSG_RESULT([SHLIB_LINK: $SHLIB_LINK])
dnl Output the relevant files
2008-12-22 23:37:58 +00:00
AC_OUTPUT([liblwgeom/Makefile liblwgeom/cunit/Makefile lwgeom/Makefile lwgeom/sqldefines.h loader/Makefile topology/Makefile regress/Makefile doc/Makefile])
2005-01-24 15:22:56 +00:00