[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