[postgis-commits] svn - r2804 - in trunk: . macros
postgis-commits at postgis.refractions.net
postgis-commits at postgis.refractions.net
Thu Jun 5 07:30:55 PDT 2008
Author: mcayland
Date: 2008-06-05 07:30:54 -0700 (Thu, 05 Jun 2008)
New Revision: 2804
Added:
trunk/configure.ac
Removed:
trunk/configure.in
Modified:
trunk/macros/ac_proj4_version.m4
Log:
Update copyrights for configure.ac (rewritten from scratch, and now renamed from the deprecated form configure.in) and also the PROJ.4 version detection macro
Added: trunk/configure.ac
===================================================================
--- trunk/configure.ac 2008-06-05 12:09:48 UTC (rev 2803)
+++ trunk/configure.ac 2008-06-05 14:30:54 UTC (rev 2804)
@@ -0,0 +1,361 @@
+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 **********************************************************************
+
+AC_INIT()
+AC_CONFIG_HEADERS([postgis_config.h])
+
+dnl
+dnl Compilers
+dnl
+AC_PROG_CC
+AC_PROG_CPP
+AC_PROG_CXX
+
+
+dnl
+dnl Version Information imported from Version.config
+dnl
+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'`
+
+
+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
+
+
+dnl
+dnl Allow the user to specify the location of the html/docbook.xsl stylesheet
+dnl
+
+AC_ARG_WITH([xsldir], [Specify the path to the directory containing the docbook.xsl stylesheet], [XSLBASE="$withval"], [XSLBASE=""])
+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
+ XSLBASE="${p}"
+ break
+ fi
+ done
+fi
+
+
+dnl For XSLBASE, make sure the directory exists and that it contains html/docbook.xsl
+if test ! -d "$XSLBASE"; then
+ AC_MSG_ERROR([the docbook stylesheet directory specified using --with-xsldir does not exist])
+fi
+
+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
+
+AC_SUBST([XSLBASE])
+
+
+dnl
+dnl Detect iconv if it is installed (used for shp2pgsql encoding conversion if available)
+dnl
+
+LIBS_SAVE="$LIBS"
+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
+ AC_CHECK_LIB([c], [iconv_open], [HAVE_ICONV=1], [])
+ if test "x$HAVE_ICONV" = "x"; then
+ dnl If not found, check for iconv included as part of libiconv
+ AC_CHECK_LIB([iconv], [iconv_open], [HAVE_ICONV=1], [])
+ 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)
+ AC_CHECK_LIB([iconv], [libiconv_open], [HAVE_ICONV=1], [])
+ 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])
+ else
+ ICONV_LDFLAGS="$LIBS"
+ fi
+ else
+ ICONV_LDFLAGS="$LIBS"
+ 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
+
+LIBS="$LIBS_SAVE"
+
+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])
+
+
+dnl
+dnl Detect the version of PostgreSQL installed on the system
+dnl
+
+AC_ARG_WITH([pgconfig], [Specify the path to an alternative pg_config], [PGCONFIG="$withval"], [PGCONFIG=""])
+if test "x$PGCONFIG" = "x"; then
+ dnl PGCONFIG was not specified, so search within the current path
+ AC_PATH_PROG([PGCONFIG], [pg_config])
+
+ 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])
+ else
+ 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])
+ fi
+ fi
+fi
+
+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"
+
+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
+ fi
+fi
+
+dnl Note: We don't need the server-side LDFLAGS or CPPFLAGS because we get these from PGXS
+
+dnl Extract the linker and include flags for the frontend (for programs that use libpq)
+PGSQL_FE_LDFLAGS=-L`$PGCONFIG --libdir`
+PGSQL_FE_CPPFLAGS=-I`$PGCONFIG --includedir`
+
+AC_SUBST([PGSQL_FE_LDFLAGS])
+AC_SUBST([PGSQL_FE_CPPFLAGS])
+
+dnl Extract the documentation and man page directories
+PGSQL_DOCDIR=`$PGCONFIG --docdir`
+PGSQL_MANDIR=`$PGCONFIG --mandir`
+
+AC_SUBST([PGSQL_DOCDIR])
+AC_SUBST([PGSQL_MANDIR])
+
+
+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"
+
+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"
+
+AC_DEFINE_UNQUOTED([POSTGIS_PGSQL_VERSION], [$POSTGIS_PGSQL_VERSION], [PostgreSQL server version])
+AC_SUBST([POSTGIS_PGSQL_VERSION])
+
+
+dnl
+dnl Detect the version of GEOS installed on the system
+dnl
+
+AC_ARG_WITH([geosconfig], [Specify the path to an alternative geos-config], [GEOSCONFIG="$withval"], [GEOSCONFIG=""])
+if test "x$GEOSCONFIG" = "x"; then
+ dnl GEOSCONFIG was not specified, so search within the current path
+ AC_PATH_PROG([GEOSCONFIG], [geos-config])
+
+ 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.])
+ fi
+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
+ fi
+fi
+
+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"
+
+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])
+ fi
+ fi
+fi
+
+dnl Extract the linker and include flags
+GEOS_LDFLAGS=`$GEOSCONFIG --ldflags`
+GEOS_CPPFLAGS=-I`$GEOSCONFIG --includes`
+
+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"
+
+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"
+
+AC_DEFINE_UNQUOTED([POSTGIS_GEOS_VERSION], [$POSTGIS_GEOS_VERSION], [GEOS library version])
+AC_SUBST([POSTGIS_GEOS_VERSION])
+
+
+dnl
+dnl Detect the version of PROJ.4 installed
+dnl
+
+AC_ARG_WITH([projdir], [Specify the directory to an alternative PROJ installation], [PROJDIR="$withval"], [PROJDIR=""])
+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])
+ fi
+ fi
+fi
+
+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])])
+
+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"
+
+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"
+
+
+dnl
+dnl Allow the user to enable debugging with --enable-debug
+dnl
+dnl Currently we default to debug level 4. See DEBUG for more information.
+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)])
+
+
+dnl
+dnl Define version macros
+dnl
+
+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"
+
+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])
+
+AC_SUBST([POSTGIS_VERSION])
+AC_SUBST([POSTGIS_LIB_VERSION])
+AC_SUBST([POSTGIS_BUILD_DATE])
+AC_SUBST([POSTGIS_SCRIPTS_VERSION])
+
+
+dnl
+dnl Other parameters
+dnl
+
+dnl Always enable BBOX caching by default
+AC_DEFINE_UNQUOTED([POSTGIS_AUTOCACHE_BBOX], [1], [Enable caching of bounding box within geometries])
+
+dnl Always enable use of ANALYZE statistics by default
+AC_DEFINE_UNQUOTED([POSTGIS_USE_STATS], [1], [Enable use of ANALYZE statistics])
+
+
+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
+AC_OUTPUT([lwgeom/Makefile lwgeom/sqldefines.h loader/Makefile.pgsql2shp loader/Makefile.shp2pgsql regress/Makefile doc/Makefile])
+
Deleted: trunk/configure.in
===================================================================
--- trunk/configure.in 2008-06-05 12:09:48 UTC (rev 2803)
+++ trunk/configure.in 2008-06-05 14:30:54 UTC (rev 2804)
@@ -1,355 +0,0 @@
-dnl
-dnl PostGIS build system
-dnl
-dnl Written by Mark Cave-Ayland
-dnl
-
-AC_INIT()
-AC_CONFIG_HEADERS([postgis_config.h])
-
-dnl
-dnl Compilers
-dnl
-AC_PROG_CC
-AC_PROG_CPP
-AC_PROG_CXX
-
-
-dnl
-dnl Version Information imported from Version.config
-dnl
-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'`
-
-
-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
-
-
-dnl
-dnl Allow the user to specify the location of the html/docbook.xsl stylesheet
-dnl
-
-AC_ARG_WITH([xsldir], [Specify the path to the directory containing the docbook.xsl stylesheet], [XSLBASE="$withval"], [XSLBASE=""])
-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
- XSLBASE="${p}"
- break
- fi
- done
-fi
-
-
-dnl For XSLBASE, make sure the directory exists and that it contains html/docbook.xsl
-if test ! -d "$XSLBASE"; then
- AC_MSG_ERROR([the docbook stylesheet directory specified using --with-xsldir does not exist])
-fi
-
-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
-
-AC_SUBST([XSLBASE])
-
-
-dnl
-dnl Detect iconv if it is installed (used for shp2pgsql encoding conversion if available)
-dnl
-
-LIBS_SAVE="$LIBS"
-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
- AC_CHECK_LIB([c], [iconv_open], [HAVE_ICONV=1], [])
- if test "x$HAVE_ICONV" = "x"; then
- dnl If not found, check for iconv included as part of libiconv
- AC_CHECK_LIB([iconv], [iconv_open], [HAVE_ICONV=1], [])
- 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)
- AC_CHECK_LIB([iconv], [libiconv_open], [HAVE_ICONV=1], [])
- 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])
- else
- ICONV_LDFLAGS="$LIBS"
- fi
- else
- ICONV_LDFLAGS="$LIBS"
- 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
-
-LIBS="$LIBS_SAVE"
-
-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])
-
-
-dnl
-dnl Detect the version of PostgreSQL installed on the system
-dnl
-
-AC_ARG_WITH([pgconfig], [Specify the path to an alternative pg_config], [PGCONFIG="$withval"], [PGCONFIG=""])
-if test "x$PGCONFIG" = "x"; then
- dnl PGCONFIG was not specified, so search within the current path
- AC_PATH_PROG([PGCONFIG], [pg_config])
-
- 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])
- else
- 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])
- fi
- fi
-fi
-
-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"
-
-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
- fi
-fi
-
-dnl Note: We don't need the server-side LDFLAGS or CPPFLAGS because we get these from PGXS
-
-dnl Extract the linker and include flags for the frontend (for programs that use libpq)
-PGSQL_FE_LDFLAGS=-L`$PGCONFIG --libdir`
-PGSQL_FE_CPPFLAGS=-I`$PGCONFIG --includedir`
-
-AC_SUBST([PGSQL_FE_LDFLAGS])
-AC_SUBST([PGSQL_FE_CPPFLAGS])
-
-dnl Extract the documentation and man page directories
-PGSQL_DOCDIR=`$PGCONFIG --docdir`
-PGSQL_MANDIR=`$PGCONFIG --mandir`
-
-AC_SUBST([PGSQL_DOCDIR])
-AC_SUBST([PGSQL_MANDIR])
-
-
-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"
-
-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"
-
-AC_DEFINE_UNQUOTED([POSTGIS_PGSQL_VERSION], [$POSTGIS_PGSQL_VERSION], [PostgreSQL server version])
-AC_SUBST([POSTGIS_PGSQL_VERSION])
-
-
-dnl
-dnl Detect the version of GEOS installed on the system
-dnl
-
-AC_ARG_WITH([geosconfig], [Specify the path to an alternative geos-config], [GEOSCONFIG="$withval"], [GEOSCONFIG=""])
-if test "x$GEOSCONFIG" = "x"; then
- dnl GEOSCONFIG was not specified, so search within the current path
- AC_PATH_PROG([GEOSCONFIG], [geos-config])
-
- 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.])
- fi
-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
- fi
-fi
-
-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"
-
-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])
- fi
- fi
-fi
-
-dnl Extract the linker and include flags
-GEOS_LDFLAGS=`$GEOSCONFIG --ldflags`
-GEOS_CPPFLAGS=-I`$GEOSCONFIG --includes`
-
-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"
-
-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"
-
-AC_DEFINE_UNQUOTED([POSTGIS_GEOS_VERSION], [$POSTGIS_GEOS_VERSION], [GEOS library version])
-AC_SUBST([POSTGIS_GEOS_VERSION])
-
-
-dnl
-dnl Detect the version of PROJ.4 installed
-dnl
-
-AC_ARG_WITH([projdir], [Specify the directory to an alternative PROJ installation], [PROJDIR="$withval"], [PROJDIR=""])
-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])
- fi
- fi
-fi
-
-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])])
-
-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"
-
-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"
-
-
-dnl
-dnl Allow the user to enable debugging with --enable-debug
-dnl
-dnl Currently we default to debug level 4. See DEBUG for more information.
-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)])
-
-
-dnl
-dnl Define version macros
-dnl
-
-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"
-
-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])
-
-AC_SUBST([POSTGIS_VERSION])
-AC_SUBST([POSTGIS_LIB_VERSION])
-AC_SUBST([POSTGIS_BUILD_DATE])
-AC_SUBST([POSTGIS_SCRIPTS_VERSION])
-
-
-dnl
-dnl Other parameters
-dnl
-
-dnl Always enable BBOX caching by default
-AC_DEFINE_UNQUOTED([POSTGIS_AUTOCACHE_BBOX], [1], [Enable caching of bounding box within geometries])
-
-dnl Always enable use of ANALYZE statistics by default
-AC_DEFINE_UNQUOTED([POSTGIS_USE_STATS], [1], [Enable use of ANALYZE statistics])
-
-
-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
-AC_OUTPUT([lwgeom/Makefile lwgeom/sqldefines.h loader/Makefile.pgsql2shp loader/Makefile.shp2pgsql regress/Makefile doc/Makefile])
-
Modified: trunk/macros/ac_proj4_version.m4
===================================================================
--- trunk/macros/ac_proj4_version.m4 2008-06-05 12:09:48 UTC (rev 2803)
+++ trunk/macros/ac_proj4_version.m4 2008-06-05 14:30:54 UTC (rev 2804)
@@ -1,8 +1,18 @@
+dnl **********************************************************************
+dnl * $Id: ac_proj4_version.m4 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 **********************************************************************
+
dnl
dnl Return the PROJ.4 version number
dnl
-dnl Written by Mark Cave-Ayland
-dnl
AC_DEFUN([AC_PROJ_VERSION], [
AC_RUN_IFELSE(
More information about the postgis-commits
mailing list