[DebianGIS-dev] r1286 - packages/gdal-grass/trunk
frankie at alioth.debian.org
frankie at alioth.debian.org
Wed Dec 5 09:28:28 UTC 2007
Author: frankie
Date: 2007-12-05 09:28:28 +0000 (Wed, 05 Dec 2007)
New Revision: 1286
Removed:
packages/gdal-grass/trunk/Makefile.in
packages/gdal-grass/trunk/README
packages/gdal-grass/trunk/aclocal.m4
packages/gdal-grass/trunk/configure
packages/gdal-grass/trunk/configure.in
packages/gdal-grass/trunk/grass57dataset.cpp
packages/gdal-grass/trunk/ogrgrass.h
packages/gdal-grass/trunk/ogrgrassdatasource.cpp
packages/gdal-grass/trunk/ogrgrassdriver.cpp
packages/gdal-grass/trunk/ogrgrasslayer.cpp
Log:
Moving to merge mode for svn-buildpackage
Deleted: packages/gdal-grass/trunk/Makefile.in
===================================================================
--- packages/gdal-grass/trunk/Makefile.in 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/Makefile.in 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,49 +0,0 @@
-
-CC = @CC@
-CXX = @CXX@
-LD = @CXX@
-
-CPPFLAGS = -DUSE_CPL -DGRASS_GISBASE=\"@GRASS_GISBASE@\" \
- @GDAL_INC@ @GRASS_INCLUDE@ @CPPFLAGS@
-CXXFLAGS = @CXX_WFLAGS@ @CXX_PIC@
-
-RANLIB = @RANLIB@
-SO_EXT = @SO_EXT@
-LD_SHARED = @LD_SHARED@
-
-LIBS = @LIBS@
-
-GRASSTABLES_DIR = @prefix@/share/gdal/grass
-
-AUTOLOAD_DIR = @AUTOLOAD_DIR@
-
-GLIBNAME = gdal_GRASS.so
-OLIBNAME = ogr_GRASS.so
-
-default: $(GLIBNAME) $(OLIBNAME)
-
-install: default
- install -d $(AUTOLOAD_DIR)
- cp $(GLIBNAME) $(AUTOLOAD_DIR)
- cp $(OLIBNAME) $(AUTOLOAD_DIR)
- test -d ${GRASSTABLES_DIR} || mkdir ${GRASSTABLES_DIR}
- test -d ${GRASSTABLES_DIR}/etc || mkdir ${GRASSTABLES_DIR}/etc
- cp @GRASS_GISBASE@/etc/ellipse.table ${GRASSTABLES_DIR}/etc
- cp @GRASS_GISBASE@/etc/datum.table ${GRASSTABLES_DIR}/etc
-
-clean:
- rm -f $(OLIBNAME) $(GLIBNAME) *.o
-
-distclean: clean
- rm -fr Makefile config.status config.log autom*.cache
-
-
-$(GLIBNAME): grass57dataset.o
- $(LD_SHARED) grass57dataset.o $(LIBS) -o $(GLIBNAME)
-
-$(OLIBNAME): ogrgrassdriver.o ogrgrassdatasource.o ogrgrasslayer.o
- $(LD_SHARED) ogrgrassdriver.o ogrgrassdatasource.o ogrgrasslayer.o $(LIBS) -o $(OLIBNAME)
-
-%.o: %.cpp
- $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -o $@ $<
-
Deleted: packages/gdal-grass/trunk/README
===================================================================
--- packages/gdal-grass/trunk/README 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/README 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,63 +0,0 @@
- Standalone GRASS 6 Drivers for GDAL and OGR
- ===========================================
-
-This package contains standalone drivers for GRASS raster and vector
-files that can be built after GDAL has been built and installed as an
-"autoload" driver.
-
-This is particularly useful in resolving problems with GRASS depending
-on GDAL, but GDAL with GRASS support depending on GRASS. With this
-package you can configure and install GDAL normally (--without-grass), then
-build and install GRASS normally and finally build and install this driver.
-
-To build this driver it is necessary for it to find GDAL and GRASS support
-files. Typically the configure and build process would look something like:
-
-./configure --with-gdal=/usr/local/bin/gdal-config --with-grass=/usr/local/grass-6.0.0
-make
-sudo make install
-
-See also:
-
- http://www.gdal.org/
- http://grass.itc.it/
-
-
----
-
-FAQs
-----
-
-
-Question:
-
-I am trying to install gdal-grass 1.3.1 on Red hat enterprise linux
-advanced server 3.0. I have previously installed gdal 1.3.1 without-
-grass, and Grass 6.0.1 with-gdal. I have tried to configure gdal-grass
-with:
-
-./configure --with-gdal=/usr/local/gdal/bin/gdal-config --with-
-grass=/usr/local/grass-6.0.1
-
-It seems to find gdal alright, but then balks at the Grass location. The
-Grass location specified above is indeed the correct location. I have
-also tried adding --with-grass=/usr/local/grass-6.0.1/lib, but with no
-success. My error is:
-
-...
-checking for G_asprintf in -lgrass_gis ... no
-configure: error: --with-grass=/usr/local/grass-6.0.1 requested, but
-libraries not found?
-
-
-Answer:
-
-Your problem is likely to be solved by editing /etc/ld.so.conf to
-include the locations of proj, gdal, grass, and geos. Specifically,
-the full path to both gdal-config and geos-config, and the full paths
-to the library locations of proj (often /usr/local/lib) and grass (/
-usr/local/grass-6.0.1/lib). After editing ld.so.conf, run ldconfig,
-and you should be good to go.
-
-I ran into this problem this weekend (and posted for help to this
-list), so it seems to be a pretty common issue.
Deleted: packages/gdal-grass/trunk/aclocal.m4
===================================================================
--- packages/gdal-grass/trunk/aclocal.m4 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/aclocal.m4 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,202 +0,0 @@
-AC_DEFUN(AC_COMPILER_LOCALHACK,
-[
- AC_MSG_CHECKING([if local/include already standard])
-
- rm -f comp.out
- echo 'int main() { int i = 1; if( *((unsigned char *) &i) == 0 ) printf( "BIGENDIAN"); return 0; }' >> conftest.c
- ${CC} $CPPFLAGS $EXTRA_INCLUDES -o conftest conftest.c 2> comp.out
- COMP_CHECK=`grep "system directory" comp.out | grep /usr/local/include`
- if test -z "$COMP_CHECK" ; then
- AC_MSG_RESULT([no, everything is ok])
- else
- AC_MSG_RESULT([yes, stripping extras])
- CXXFLAGS=`echo "$CXXFLAGS " | sed "s/-I\/usr\/local\/include //"`
- CFLAGS=`echo "$CFLAGS " | sed "s/-I\/usr\/local\/include //"`
- EXTRA_INCLUDES=`echo "$EXTRA_INCLUDES " | sed "s/-I\/usr\/local\/include //"`
- fi
- rm -f comp.out
-])
-
-AC_DEFUN(AC_COMPILER_WFLAGS,
-[
- # Remove -g from compile flags, we will add via CFG variable if
- # we need it.
- CXXFLAGS=`echo "$CXXFLAGS " | sed "s/-g //"`
- CFLAGS=`echo "$CFLAGS " | sed "s/-g //"`
-
- # check for GNU compiler, and use -Wall
- if test "$GCC" = "yes"; then
- C_WFLAGS="-Wall"
- AC_DEFINE(USE_GNUCC, 1, [Define to 1, if you have GNU C
- compiler])
- fi
- if test "$GXX" = "yes"; then
- CXX_WFLAGS="-Wall"
- AC_DEFINE(USE_GNUCC, 1, [Define to 1, if you have GNU C
- compiler])
- fi
- AC_SUBST(CXX_WFLAGS,$CXX_WFLAGS)
- AC_SUBST(C_WFLAGS,$C_WFLAGS)
-])
-
-AC_DEFUN(AC_COMPILER_PIC,
-[
- echo 'void f(){}' > conftest.c
- if test -z "`${CC-cc} -fPIC -c conftest.c 2>&1`"; then
- C_PIC=-fPIC
- else
- C_PIC=
- fi
- if test -z "`${CXX-g++} -fPIC -c conftest.c 2>&1`"; then
- CXX_PIC=-fPIC
- else
- CXX_PIC=
- fi
- rm -f conftest*
-
- AC_SUBST(CXX_PIC,$CXX_PIC)
- AC_SUBST(C_PIC,$C_PIC)
-])
-
-dnl
-dnl Try to find something to link shared libraries with. Use "c++ -shared"
-dnl in preference to "ld -shared" because it will link in required c++
-dnl run time support for us.
-dnl
-AC_DEFUN(AC_LD_SHARED,
-[
- echo 'void g(); int main(){ g(); return 0; }' > conftest1.c
-
- echo '#include <stdio.h>' > conftest2.c
- echo 'void g(); void g(){printf("");}' >> conftest2.c
- ${CC} ${C_PIC} -c conftest2.c
-
- SO_EXT="so"
- export SO_EXT
- LD_SHARED="/bin/true"
- if test ! -z "`uname -a | grep IRIX`" ; then
- IRIX_ALL=-all
- else
- IRIX_ALL=
- fi
-
- AC_ARG_WITH(ld-shared,[ --with-ld-shared=cmd provide shared library link],,)
-
- if test "$with_ld_shared" != "" ; then
- if test "$with_ld_shared" = "no" ; then
- echo "user disabled shared library support."
- else
- echo "using user supplied .so link command ... $with_ld_shared"
- fi
- LD_SHARED="$with_ld_shared"
- fi
-
- dnl Check For Cygwin case. Actually verify that the produced DLL works.
-
- if test ! -z "`uname -a | grep CYGWIN`" \
- -a "$LD_SHARED" = "/bin/true" \
- -a -z "`gcc -shared conftest2.o -o libconftest.dll`" ; then
- if test -z "`${CC} conftest1.c -L./ -lconftest -o conftest1 2>&1`"; then
- LD_LIBRARY_PATH_OLD="$LD_LIBRARY_PATH"
- if test -z "$LD_LIBRARY_PATH" ; then
- LD_LIBRARY_PATH="`pwd`"
- else
- LD_LIBRARY_PATH="`pwd`:$LD_LIBRARY_PATH"
- fi
- export LD_LIBRARY_PATH
- if test -z "`./conftest1 2>&1`" ; then
- echo "checking for Cygwin gcc -shared ... yes"
- LD_SHARED="c++ -shared"
- SO_EXT="dll"
- fi
- LD_LIBRARY_PATH="$LD_LIBRARY_PATH_OLD"
- fi
- fi
-
- dnl Test special MacOS (Darwin) case.
-
- if test ! -z "`uname | grep Darwin`" \
- -a "$LD_SHARED" = "/bin/true" \
- -a -z "`${CXX} -dynamiclib conftest2.o -o libconftest.so 2>&1`" ; then
- ${CC} -c conftest1.c
- if test -z "`${CXX} conftest1.o libconftest.so -o conftest1 2>&1`"; then
- DYLD_LIBRARY_PATH_OLD="$DYLD_LIBRARY_PATH"
- if test -z "$DYLD_LIBRARY_PATH" ; then
- DYLD_LIBRARY_PATH="`pwd`"
- else
- DYLD_LIBRARY_PATH="`pwd`:$DYLD_LIBRARY_PATH"
- fi
- export DYLD_LIBRARY_PATH
- if test -z "`./conftest1 2>&1`" ; then
- echo "checking for ${CXX} -dynamiclib ... yes"
- LD_SHARED="${CXX} -dynamiclib"
- SO_EXT=dylib
- fi
- DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH_OLD"
- fi
- rm -f conftest1.o
- fi
-
- if test "$LD_SHARED" = "/bin/true" \
- -a -z "`${CXX} -shared $IRIX_ALL conftest2.o -o libconftest.so 2>&1|grep -v WARNING`" ; then
- if test -z "`${CC} conftest1.c libconftest.so -o conftest1 2>&1`"; then
- LD_LIBRARY_PATH_OLD="$LD_LIBRARY_PATH"
- if test -z "$LD_LIBRARY_PATH" ; then
- LD_LIBRARY_PATH="`pwd`"
- else
- LD_LIBRARY_PATH="`pwd`:$LD_LIBRARY_PATH"
- fi
- export LD_LIBRARY_PATH
- if test -z "`./conftest1 2>&1`" ; then
- echo "checking for ${CXX} -shared ... yes"
- LD_SHARED="${CXX} -shared $IRIX_ALL"
- else
- echo "checking for ${CXX} -shared ... no(3)"
- fi
- LD_LIBRARY_PATH="$LD_LIBRARY_PATH_OLD"
- else
- echo "checking for ${CXX} -shared ... no(2)"
- fi
- else
- if test "$LD_SHARED" = "/bin/true" ; then
- echo "checking for ${CXX} -shared ... no(1)"
- fi
- fi
-
- if test "$LD_SHARED" = "/bin/true" \
- -a -z "`ld -shared conftest2.o -o libconftest.so 2>&1`" ; then
- if test -z "`${CC} conftest1.c libconftest.so -o conftest1 2>&1`"; then
- LD_LIBRARY_PATH_OLD="$LD_LIBRARY_PATH"
- if test -z "$LD_LIBRARY_PATH" ; then
- LD_LIBRARY_PATH="`pwd`"
- else
- LD_LIBRARY_PATH="`pwd`:$LD_LIBRARY_PATH"
- fi
- export LD_LIBRARY_PATH
- if test -z "`./conftest1 2>&1`" ; then
- echo "checking for ld -shared ... yes"
- LD_SHARED="ld -shared"
- fi
- LD_LIBRARY_PATH="$LD_LIBRARY_PATH_OLD"
- fi
- fi
-
- if test "$LD_SHARED" = "/bin/true" ; then
- echo "checking for ld -shared ... no"
- if test ! -x /bin/true ; then
- LD_SHARED=/usr/bin/true
- fi
- fi
- if test "$LD_SHARED" = "no" ; then
- if test -x /bin/true ; then
- LD_SHARED=/bin/true
- else
- LD_SHARED=/usr/bin/true
- fi
- fi
-
- rm -f conftest* libconftest*
-
- AC_SUBST(LD_SHARED,$LD_SHARED)
- AC_SUBST(SO_EXT,$SO_EXT)
-])
Deleted: packages/gdal-grass/trunk/configure
===================================================================
--- packages/gdal-grass/trunk/configure 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/configure 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,3901 +0,0 @@
-#! /bin/sh
-# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59.
-#
-# Copyright (C) 2003 Free Software Foundation, Inc.
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
-fi
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
-
-# Work around bugs in pre-3.0 UWIN ksh.
-$as_unset ENV MAIL MAILPATH
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
-do
- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- $as_unset $as_var
- fi
-done
-
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
- /^X\/\(\/\/\)$/{ s//\1/; q; }
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-
-
-# PATH needs CR, and LINENO needs CR and PATH.
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conf$$.sh
-fi
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" || {
- # Find who we are. Look in the path if we contain no path at all
- # relative or not.
- case $0 in
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
- ;;
- esac
- # We did not find ourselves, most probably we were run as `sh COMMAND'
- # in which case we are not to be found in the path.
- if test "x$as_myself" = x; then
- as_myself=$0
- fi
- if test ! -f "$as_myself"; then
- { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
- { (exit 1); exit 1; }; }
- fi
- case $CONFIG_SHELL in
- '')
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for as_base in sh bash ksh sh5; do
- case $as_dir in
- /*)
- if ("$as_dir/$as_base" -c '
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
- fi;;
- esac
- done
-done
-;;
- esac
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line before each line; the second 'sed' does the real
- # work. The second script uses 'N' to pair each line-number line
- # with the numbered line, and appends trailing '-' during
- # substitution so that $LINENO is not a special case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
- sed '=' <$as_myself |
- sed '
- N
- s,$,-,
- : loop
- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
- t loop
- s,-$,,
- s,^['$as_cr_digits']*\n,,
- ' >$as_me.lineno &&
- chmod +x $as_me.lineno ||
- { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensible to this).
- . ./$as_me.lineno
- # Exit status is that of the last command.
- exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- # We could just check for DJGPP; but this test a) works b) is more generic
- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
- if test -f conf$$.exe; then
- # Don't use ln at all; we don't have any links
- as_ln_s='cp -p'
- else
- as_ln_s='ln -s'
- fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.file
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-as_executable_p="test -f"
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS=" $as_nl"
-
-# CDPATH.
-$as_unset CDPATH
-
-
-# Name of the host.
-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-exec 6>&1
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_config_libobj_dir=.
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-# Maximum number of lines to put in a shell here document.
-# This variable seems obsolete. It should probably be removed, and
-# only ac_max_sed_lines should be used.
-: ${ac_max_here_lines=38}
-
-# Identity of this package.
-PACKAGE_NAME=
-PACKAGE_TARNAME=
-PACKAGE_VERSION=
-PACKAGE_STRING=
-PACKAGE_BUGREPORT=
-
-ac_unique_file="Makefile.in"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX RANLIB ac_ct_RANLIB CXX_PIC C_PIC LD_SHARED SO_EXT CXX_WFLAGS C_WFLAGS GDAL_CONFIG GDAL_INC AUTOLOAD_DIR GRASS_INCLUDE GRASS_GISBASE LIBOBJS LTLIBOBJS'
-ac_subst_files=''
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-ac_prev=
-for ac_option
-do
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case $ac_option in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir=$ac_optarg ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build_alias ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build_alias=$ac_optarg ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file=$ac_optarg ;;
-
- --config-cache | -C)
- cache_file=config.cache ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir=$ac_optarg ;;
-
- -disable-* | --disable-*)
- ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
- { (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- eval "enable_$ac_feature=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
- { (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- case $ac_option in
- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_$ac_feature='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix=$ac_optarg ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he | -h)
- ac_init_help=long ;;
- -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
- ac_init_help=recursive ;;
- -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
- ac_init_help=short ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host_alias ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host_alias=$ac_optarg ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir=$ac_optarg ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir=$ac_optarg ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir=$ac_optarg ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir=$ac_optarg ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir=$ac_optarg ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir=$ac_optarg ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir=$ac_optarg ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix=$ac_optarg ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix=$ac_optarg ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix=$ac_optarg ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name=$ac_optarg ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir=$ac_optarg ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir=$ac_optarg ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site=$ac_optarg ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir=$ac_optarg ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir=$ac_optarg ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target_alias ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target_alias=$ac_optarg ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers | -V)
- ac_init_version=: ;;
-
- -with-* | --with-*)
- ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
- { (exit 1); exit 1; }; }
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case $ac_option in
- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
- *) ac_optarg=yes ;;
- esac
- eval "with_$ac_package='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
- { (exit 1); exit 1; }; }
- ac_package=`echo $ac_package | sed 's/-/_/g'`
- eval "with_$ac_package=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes=$ac_optarg ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries=$ac_optarg ;;
-
- -*) { echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; }
- ;;
-
- *=*)
- ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
- # Reject names that are not valid shell variable names.
- expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
- { (exit 1); exit 1; }; }
- ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
- eval "$ac_envvar='$ac_optarg'"
- export $ac_envvar ;;
-
- *)
- # FIXME: should be removed in autoconf 3.0.
- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- { echo "$as_me: error: missing argument to $ac_option" >&2
- { (exit 1); exit 1; }; }
-fi
-
-# Be sure to have absolute paths.
-for ac_var in exec_prefix prefix
-do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
- [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# Be sure to have absolute paths.
-for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
- localstatedir libdir includedir oldincludedir infodir mandir
-do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
- [\\/$]* | ?:[\\/]* ) ;;
- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
- echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used." >&2
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_confdir=`(dirname "$0") 2>/dev/null ||
-$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$0" : 'X\(//\)[^/]' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$0" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
- { (exit 1); exit 1; }; }
- else
- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
- { (exit 1); exit 1; }; }
- fi
-fi
-(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
- { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
- { (exit 1); exit 1; }; }
-srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
-ac_env_build_alias_set=${build_alias+set}
-ac_env_build_alias_value=$build_alias
-ac_cv_env_build_alias_set=${build_alias+set}
-ac_cv_env_build_alias_value=$build_alias
-ac_env_host_alias_set=${host_alias+set}
-ac_env_host_alias_value=$host_alias
-ac_cv_env_host_alias_set=${host_alias+set}
-ac_cv_env_host_alias_value=$host_alias
-ac_env_target_alias_set=${target_alias+set}
-ac_env_target_alias_value=$target_alias
-ac_cv_env_target_alias_set=${target_alias+set}
-ac_cv_env_target_alias_value=$target_alias
-ac_env_CC_set=${CC+set}
-ac_env_CC_value=$CC
-ac_cv_env_CC_set=${CC+set}
-ac_cv_env_CC_value=$CC
-ac_env_CFLAGS_set=${CFLAGS+set}
-ac_env_CFLAGS_value=$CFLAGS
-ac_cv_env_CFLAGS_set=${CFLAGS+set}
-ac_cv_env_CFLAGS_value=$CFLAGS
-ac_env_LDFLAGS_set=${LDFLAGS+set}
-ac_env_LDFLAGS_value=$LDFLAGS
-ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
-ac_cv_env_LDFLAGS_value=$LDFLAGS
-ac_env_CPPFLAGS_set=${CPPFLAGS+set}
-ac_env_CPPFLAGS_value=$CPPFLAGS
-ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
-ac_cv_env_CPPFLAGS_value=$CPPFLAGS
-ac_env_CXX_set=${CXX+set}
-ac_env_CXX_value=$CXX
-ac_cv_env_CXX_set=${CXX+set}
-ac_cv_env_CXX_value=$CXX
-ac_env_CXXFLAGS_set=${CXXFLAGS+set}
-ac_env_CXXFLAGS_value=$CXXFLAGS
-ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set}
-ac_cv_env_CXXFLAGS_value=$CXXFLAGS
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
-\`configure' configures this package to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE. See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
- -h, --help display this help and exit
- --help=short display options specific to this package
- --help=recursive display the short help of all the included packages
- -V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking...' messages
- --cache-file=FILE cache test results in FILE [disabled]
- -C, --config-cache alias for \`--cache-file=config.cache'
- -n, --no-create do not create output files
- --srcdir=DIR find the sources in DIR [configure dir or \`..']
-
-_ACEOF
-
- cat <<_ACEOF
-Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --infodir=DIR info documentation [PREFIX/info]
- --mandir=DIR man documentation [PREFIX/man]
-_ACEOF
-
- cat <<\_ACEOF
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
-
- cat <<\_ACEOF
-
-Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-ld-shared=cmd provide shared library link
- --with-gdal=PATH GDAL (PATH is path to gdal-config)
- --with-autoload=DIR Directory for autoload drivers
- --with-grass=ARG Include GRASS support (ARG=GRASS install tree dir)
-
-Some influential environment variables:
- CC C compiler command
- CFLAGS C compiler flags
- LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
- nonstandard directory <lib dir>
- CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
- headers in a nonstandard directory <include dir>
- CXX C++ compiler command
- CXXFLAGS C++ compiler flags
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-_ACEOF
-fi
-
-if test "$ac_init_help" = "recursive"; then
- # If there are subdirs, report their specific --help.
- ac_popdir=`pwd`
- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d $ac_dir || continue
- ac_builddir=.
-
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
- .) # No --srcdir option. We are building in place.
- ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
- case "$ac_dir" in
- .) ac_abs_builddir=`pwd`;;
- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
- *) ac_abs_builddir=`pwd`/"$ac_dir";;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
- case ${ac_top_builddir}. in
- .) ac_abs_top_builddir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
- case $ac_srcdir in
- .) ac_abs_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
- case $ac_top_srcdir in
- .) ac_abs_top_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
- esac;;
-esac
-
- cd $ac_dir
- # Check for guested configure; otherwise get Cygnus style configure.
- if test -f $ac_srcdir/configure.gnu; then
- echo
- $SHELL $ac_srcdir/configure.gnu --help=recursive
- elif test -f $ac_srcdir/configure; then
- echo
- $SHELL $ac_srcdir/configure --help=recursive
- elif test -f $ac_srcdir/configure.ac ||
- test -f $ac_srcdir/configure.in; then
- echo
- $ac_configure --help
- else
- echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi
- cd $ac_popdir
- done
-fi
-
-test -n "$ac_init_help" && exit 0
-if $ac_init_version; then
- cat <<\_ACEOF
-
-Copyright (C) 2003 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
- exit 0
-fi
-exec 5>config.log
-cat >&5 <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by $as_me, which was
-generated by GNU Autoconf 2.59. Invocation command line was
-
- $ $0 $@
-
-_ACEOF
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
-
-/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-hostinfo = `(hostinfo) 2>/dev/null || echo unknown`
-/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
-/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- echo "PATH: $as_dir"
-done
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_sep=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
- for ac_arg
- do
- case $ac_arg in
- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- continue ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
- ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- case $ac_pass in
- 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
- 2)
- ac_configure_args1="$ac_configure_args1 '$ac_arg'"
- if test $ac_must_keep_next = true; then
- ac_must_keep_next=false # Got value, back to normal.
- else
- case $ac_arg in
- *=* | --config-cache | -C | -disable-* | --disable-* \
- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
- | -with-* | --with-* | -without-* | --without-* | --x)
- case "$ac_configure_args0 " in
- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
- esac
- ;;
- -* ) ac_must_keep_next=true ;;
- esac
- fi
- ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
- # Get rid of the leading space.
- ac_sep=" "
- ;;
- esac
- done
-done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log. We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Be sure not to use single quotes in there, as some shells,
-# such as our DU 5.0 friend, will then `close' the trap.
-trap 'exit_status=$?
- # Save into config.log some information that might help in debugging.
- {
- echo
-
- cat <<\_ASBOX
-## ---------------- ##
-## Cache variables. ##
-## ---------------- ##
-_ASBOX
- echo
- # The following way of writing the cache mishandles newlines in values,
-{
- (set) 2>&1 |
- case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- sed -n \
- "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
- ;;
- *)
- sed -n \
- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
- ;;
- esac;
-}
- echo
-
- cat <<\_ASBOX
-## ----------------- ##
-## Output variables. ##
-## ----------------- ##
-_ASBOX
- echo
- for ac_var in $ac_subst_vars
- do
- eval ac_val=$`echo $ac_var`
- echo "$ac_var='"'"'$ac_val'"'"'"
- done | sort
- echo
-
- if test -n "$ac_subst_files"; then
- cat <<\_ASBOX
-## ------------- ##
-## Output files. ##
-## ------------- ##
-_ASBOX
- echo
- for ac_var in $ac_subst_files
- do
- eval ac_val=$`echo $ac_var`
- echo "$ac_var='"'"'$ac_val'"'"'"
- done | sort
- echo
- fi
-
- if test -s confdefs.h; then
- cat <<\_ASBOX
-## ----------- ##
-## confdefs.h. ##
-## ----------- ##
-_ASBOX
- echo
- sed "/^$/d" confdefs.h | sort
- echo
- fi
- test "$ac_signal" != 0 &&
- echo "$as_me: caught signal $ac_signal"
- echo "$as_me: exit $exit_status"
- } >&5
- rm -f core *.core &&
- rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
- ' 0
-for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo >confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
-echo "$as_me: loading site script $ac_site_file" >&6;}
- sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file"
- fi
-done
-
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in `(set) 2>&1 |
- sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val="\$ac_cv_env_${ac_var}_value"
- eval ac_new_val="\$ac_env_${ac_var}_value"
- case $ac_old_set,$ac_new_set in
- set,)
- { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,set)
- { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
- { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
-echo "$as_me: former value: $ac_old_val" >&2;}
- { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
-echo "$as_me: current value: $ac_new_val" >&2;}
- ac_cache_corrupted=:
- fi;;
- esac
- # Pass precious variables to config.status.
- if test "$ac_new_set" = set; then
- case $ac_new_val in
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
- ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
- *) ac_arg=$ac_var=$ac_new_val ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- esac
- fi
-done
-if $ac_cache_corrupted; then
- { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}gcc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="gcc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- CC=$ac_ct_CC
-else
- CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- CC=$ac_ct_CC
-else
- CC="$ac_cv_prog_CC"
-fi
-
-fi
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# != 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
- fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-fi
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- for ac_prog in cl
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- test -n "$CC" && break
- done
-fi
-if test -z "$CC"; then
- ac_ct_CC=$CC
- for ac_prog in cl
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- test -n "$ac_ct_CC" && break
-done
-
- CC=$ac_ct_CC
-fi
-
-fi
-
-
-test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
-
-# Provide some information about the compiler.
-echo "$as_me:$LINENO:" \
- "checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
- (eval $ac_compiler --version </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
- (eval $ac_compiler -v </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
- (eval $ac_compiler -V </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
- (eval $ac_link_default) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- # Find the output, starting from the most likely. This scheme is
-# not robust to junk in `.', hence go to wildcards (a.*) only as a last
-# resort.
-
-# Be careful to initialize this variable, since it used to be cached.
-# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
-ac_cv_exeext=
-# b.out is created by i960 compilers.
-for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
-do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
- ;;
- conftest.$ac_ext )
- # This is the source file.
- ;;
- [ab].out )
- # We found the default executable, but exeext='' is most
- # certainly right.
- break;;
- *.* )
- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- # FIXME: I believe we export ac_cv_exeext for Libtool,
- # but it would be cool to find out if it's true. Does anybody
- # maintain Libtool? --akim.
- export ac_cv_exeext
- break;;
- * )
- break;;
- esac
-done
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
-See \`config.log' for more details." >&5
-echo "$as_me: error: C compiler cannot create executables
-See \`config.log' for more details." >&2;}
- { (exit 77); exit 77; }; }
-fi
-
-ac_exeext=$ac_cv_exeext
-echo "$as_me:$LINENO: result: $ac_file" >&5
-echo "${ECHO_T}$ac_file" >&6
-
-# Check the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-echo "$as_me:$LINENO: checking whether the C compiler works" >&5
-echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
-# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
-# If not cross compiling, check that we can run a simple program.
-if test "$cross_compiling" != yes; then
- if { ac_try='./$ac_file'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
- fi
- fi
-fi
-echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
-
-rm -f a.out a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-# Check the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
-echo "$as_me:$LINENO: result: $cross_compiling" >&5
-echo "${ECHO_T}$cross_compiling" >&6
-
-echo "$as_me:$LINENO: checking for suffix of executables" >&5
-echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;;
- *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- export ac_cv_exeext
- break;;
- * ) break;;
- esac
-done
-else
- { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-rm -f conftest$ac_cv_exeext
-echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
-echo "${ECHO_T}$ac_cv_exeext" >&6
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-echo "$as_me:$LINENO: checking for suffix of object files" >&5
-echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
-if test "${ac_cv_objext+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
- *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
- break;;
- esac
-done
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
-echo "${ECHO_T}$ac_cv_objext" >&6
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_compiler_gnu=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_compiler_gnu=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
-GCC=`test $ac_compiler_gnu = yes && echo yes`
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-CFLAGS="-g"
-echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
-echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
-if test "${ac_cv_prog_cc_g+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_prog_cc_g=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_prog_cc_g=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
-if test "$ac_test_CFLAGS" = set; then
- CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-g"
- fi
-else
- if test "$GCC" = yes; then
- CFLAGS="-O2"
- else
- CFLAGS=
- fi
-fi
-echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
-echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
-if test "${ac_cv_prog_cc_stdc+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_prog_cc_stdc=no
-ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
- char **p;
- int i;
-{
- return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
- char *s;
- va_list v;
- va_start (v,p);
- s = g (p, va_arg (v,int));
- va_end (v);
- return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
- function prototypes and stuff, but not '\xHH' hex character constants.
- These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std1 is added to get
- proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
- array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std1. */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
-_ACEOF
-# Don't try gcc -ansi; that turns off useful extensions and
-# breaks some systems' header files.
-# AIX -qlanglvl=ansi
-# Ultrix and OSF/1 -std1
-# HP-UX 10.20 and later -Ae
-# HP-UX older versions -Aa -D_HPUX_SOURCE
-# SVR4 -Xc -D__EXTENSIONS__
-for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
- CC="$ac_save_CC $ac_arg"
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_prog_cc_stdc=$ac_arg
-break
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext
-done
-rm -f conftest.$ac_ext conftest.$ac_objext
-CC=$ac_save_CC
-
-fi
-
-case "x$ac_cv_prog_cc_stdc" in
- x|xno)
- echo "$as_me:$LINENO: result: none needed" >&5
-echo "${ECHO_T}none needed" >&6 ;;
- *)
- echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
- CC="$CC $ac_cv_prog_cc_stdc" ;;
-esac
-
-# Some people use a C++ compiler to compile C. Since we use `exit',
-# in C++ we need to declare it. In case someone uses the same compiler
-# for both compiling C and C++ we need to have the C++ compiler decide
-# the declaration of exit, since it's the most demanding environment.
-cat >conftest.$ac_ext <<_ACEOF
-#ifndef __cplusplus
- choke me
-#endif
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- for ac_declaration in \
- '' \
- 'extern "C" void std::exit (int) throw (); using std::exit;' \
- 'extern "C" void std::exit (int); using std::exit;' \
- 'extern "C" void exit (int) throw ();' \
- 'extern "C" void exit (int);' \
- 'void exit (int);'
-do
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_declaration
-#include <stdlib.h>
-int
-main ()
-{
-exit (42);
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-continue
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_declaration
-int
-main ()
-{
-exit (42);
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-rm -f conftest*
-if test -n "$ac_declaration"; then
- echo '#ifdef __cplusplus' >>confdefs.h
- echo $ac_declaration >>confdefs.h
- echo '#endif' >>confdefs.h
-fi
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-ac_ext=cc
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CXX+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$CXX"; then
- ac_cv_prog_CXX="$CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-CXX=$ac_cv_prog_CXX
-if test -n "$CXX"; then
- echo "$as_me:$LINENO: result: $CXX" >&5
-echo "${ECHO_T}$CXX" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- test -n "$CXX" && break
- done
-fi
-if test -z "$CXX"; then
- ac_ct_CXX=$CXX
- for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_CXX"; then
- ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CXX="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
-if test -n "$ac_ct_CXX"; then
- echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5
-echo "${ECHO_T}$ac_ct_CXX" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- test -n "$ac_ct_CXX" && break
-done
-test -n "$ac_ct_CXX" || ac_ct_CXX="g++"
-
- CXX=$ac_ct_CXX
-fi
-
-
-# Provide some information about the compiler.
-echo "$as_me:$LINENO:" \
- "checking for C++ compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
- (eval $ac_compiler --version </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
- (eval $ac_compiler -v </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
- (eval $ac_compiler -V </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-
-echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_cxx_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_compiler_gnu=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_compiler_gnu=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6
-GXX=`test $ac_compiler_gnu = yes && echo yes`
-ac_test_CXXFLAGS=${CXXFLAGS+set}
-ac_save_CXXFLAGS=$CXXFLAGS
-CXXFLAGS="-g"
-echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5
-echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6
-if test "${ac_cv_prog_cxx_g+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_cxx_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_prog_cxx_g=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_prog_cxx_g=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6
-if test "$ac_test_CXXFLAGS" = set; then
- CXXFLAGS=$ac_save_CXXFLAGS
-elif test $ac_cv_prog_cxx_g = yes; then
- if test "$GXX" = yes; then
- CXXFLAGS="-g -O2"
- else
- CXXFLAGS="-g"
- fi
-else
- if test "$GXX" = yes; then
- CXXFLAGS="-O2"
- else
- CXXFLAGS=
- fi
-fi
-for ac_declaration in \
- '' \
- 'extern "C" void std::exit (int) throw (); using std::exit;' \
- 'extern "C" void std::exit (int); using std::exit;' \
- 'extern "C" void exit (int) throw ();' \
- 'extern "C" void exit (int);' \
- 'void exit (int);'
-do
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_declaration
-#include <stdlib.h>
-int
-main ()
-{
-exit (42);
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_cxx_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-continue
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_declaration
-int
-main ()
-{
-exit (42);
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_cxx_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-rm -f conftest*
-if test -n "$ac_declaration"; then
- echo '#ifdef __cplusplus' >>confdefs.h
- echo $ac_declaration >>confdefs.h
- echo '#endif' >>confdefs.h
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_RANLIB+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
- echo "$as_me:$LINENO: result: $RANLIB" >&5
-echo "${ECHO_T}$RANLIB" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
- ac_ct_RANLIB=$RANLIB
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_RANLIB"; then
- ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_RANLIB="ranlib"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
- test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
- echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
-echo "${ECHO_T}$ac_ct_RANLIB" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- RANLIB=$ac_ct_RANLIB
-else
- RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-
- echo 'void f(){}' > conftest.c
- if test -z "`${CC-cc} -fPIC -c conftest.c 2>&1`"; then
- C_PIC=-fPIC
- else
- C_PIC=
- fi
- if test -z "`${CXX-g++} -fPIC -c conftest.c 2>&1`"; then
- CXX_PIC=-fPIC
- else
- CXX_PIC=
- fi
- rm -f conftest*
-
- CXX_PIC=$CXX_PIC
-
- C_PIC=$C_PIC
-
-
-
- echo 'void g(); int main(){ g(); return 0; }' > conftest1.c
-
- echo '#include <stdio.h>' > conftest2.c
- echo 'void g(); void g(){printf("");}' >> conftest2.c
- ${CC} ${C_PIC} -c conftest2.c
-
- SO_EXT="so"
- export SO_EXT
- LD_SHARED="/bin/true"
- if test ! -z "`uname -a | grep IRIX`" ; then
- IRIX_ALL=-all
- else
- IRIX_ALL=
- fi
-
-
-# Check whether --with-ld-shared or --without-ld-shared was given.
-if test "${with_ld_shared+set}" = set; then
- withval="$with_ld_shared"
-
-fi;
-
- if test "$with_ld_shared" != "" ; then
- if test "$with_ld_shared" = "no" ; then
- echo "user disabled shared library support."
- else
- echo "using user supplied .so link command ... $with_ld_shared"
- fi
- LD_SHARED="$with_ld_shared"
- fi
-
-
- if test ! -z "`uname -a | grep CYGWIN`" \
- -a "$LD_SHARED" = "/bin/true" \
- -a -z "`gcc -shared conftest2.o -o libconftest.dll`" ; then
- if test -z "`${CC} conftest1.c -L./ -lconftest -o conftest1 2>&1`"; then
- LD_LIBRARY_PATH_OLD="$LD_LIBRARY_PATH"
- if test -z "$LD_LIBRARY_PATH" ; then
- LD_LIBRARY_PATH="`pwd`"
- else
- LD_LIBRARY_PATH="`pwd`:$LD_LIBRARY_PATH"
- fi
- export LD_LIBRARY_PATH
- if test -z "`./conftest1 2>&1`" ; then
- echo "checking for Cygwin gcc -shared ... yes"
- LD_SHARED="c++ -shared"
- SO_EXT="dll"
- fi
- LD_LIBRARY_PATH="$LD_LIBRARY_PATH_OLD"
- fi
- fi
-
-
- if test ! -z "`uname | grep Darwin`" \
- -a "$LD_SHARED" = "/bin/true" \
- -a -z "`${CXX} -dynamiclib conftest2.o -o libconftest.so 2>&1`" ; then
- ${CC} -c conftest1.c
- if test -z "`${CXX} conftest1.o libconftest.so -o conftest1 2>&1`"; then
- DYLD_LIBRARY_PATH_OLD="$DYLD_LIBRARY_PATH"
- if test -z "$DYLD_LIBRARY_PATH" ; then
- DYLD_LIBRARY_PATH="`pwd`"
- else
- DYLD_LIBRARY_PATH="`pwd`:$DYLD_LIBRARY_PATH"
- fi
- export DYLD_LIBRARY_PATH
- if test -z "`./conftest1 2>&1`" ; then
- echo "checking for ${CXX} -dynamiclib ... yes"
- LD_SHARED="${CXX} -dynamiclib"
- SO_EXT=dylib
- fi
- DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH_OLD"
- fi
- rm -f conftest1.o
- fi
-
- if test "$LD_SHARED" = "/bin/true" \
- -a -z "`${CXX} -shared $IRIX_ALL conftest2.o -o libconftest.so 2>&1|grep -v WARNING`" ; then
- if test -z "`${CC} conftest1.c libconftest.so -o conftest1 2>&1`"; then
- LD_LIBRARY_PATH_OLD="$LD_LIBRARY_PATH"
- if test -z "$LD_LIBRARY_PATH" ; then
- LD_LIBRARY_PATH="`pwd`"
- else
- LD_LIBRARY_PATH="`pwd`:$LD_LIBRARY_PATH"
- fi
- export LD_LIBRARY_PATH
- if test -z "`./conftest1 2>&1`" ; then
- echo "checking for ${CXX} -shared ... yes"
- LD_SHARED="${CXX} -shared $IRIX_ALL"
- else
- echo "checking for ${CXX} -shared ... no(3)"
- fi
- LD_LIBRARY_PATH="$LD_LIBRARY_PATH_OLD"
- else
- echo "checking for ${CXX} -shared ... no(2)"
- fi
- else
- if test "$LD_SHARED" = "/bin/true" ; then
- echo "checking for ${CXX} -shared ... no(1)"
- fi
- fi
-
- if test "$LD_SHARED" = "/bin/true" \
- -a -z "`ld -shared conftest2.o -o libconftest.so 2>&1`" ; then
- if test -z "`${CC} conftest1.c libconftest.so -o conftest1 2>&1`"; then
- LD_LIBRARY_PATH_OLD="$LD_LIBRARY_PATH"
- if test -z "$LD_LIBRARY_PATH" ; then
- LD_LIBRARY_PATH="`pwd`"
- else
- LD_LIBRARY_PATH="`pwd`:$LD_LIBRARY_PATH"
- fi
- export LD_LIBRARY_PATH
- if test -z "`./conftest1 2>&1`" ; then
- echo "checking for ld -shared ... yes"
- LD_SHARED="ld -shared"
- fi
- LD_LIBRARY_PATH="$LD_LIBRARY_PATH_OLD"
- fi
- fi
-
- if test "$LD_SHARED" = "/bin/true" ; then
- echo "checking for ld -shared ... no"
- if test ! -x /bin/true ; then
- LD_SHARED=/usr/bin/true
- fi
- fi
- if test "$LD_SHARED" = "no" ; then
- if test -x /bin/true ; then
- LD_SHARED=/bin/true
- else
- LD_SHARED=/usr/bin/true
- fi
- fi
-
- rm -f conftest* libconftest*
-
- LD_SHARED=$LD_SHARED
-
- SO_EXT=$SO_EXT
-
-
-
- # Remove -g from compile flags, we will add via CFG variable if
- # we need it.
- CXXFLAGS=`echo "$CXXFLAGS " | sed "s/-g //"`
- CFLAGS=`echo "$CFLAGS " | sed "s/-g //"`
-
- # check for GNU compiler, and use -Wall
- if test "$GCC" = "yes"; then
- C_WFLAGS="-Wall"
-
-cat >>confdefs.h <<\_ACEOF
-#define USE_GNUCC 1
-_ACEOF
-
- fi
- if test "$GXX" = "yes"; then
- CXX_WFLAGS="-Wall"
-
-cat >>confdefs.h <<\_ACEOF
-#define USE_GNUCC 1
-_ACEOF
-
- fi
- CXX_WFLAGS=$CXX_WFLAGS
-
- C_WFLAGS=$C_WFLAGS
-
-
-
-
-
-# Check whether --with-gdal or --without-gdal was given.
-if test "${with_gdal+set}" = set; then
- withval="$with_gdal"
-
-fi;
-
-if test "$with_gdal" = "yes" -o "$with_gdal" = "" ; then
-
- if test "`basename xx/$with_gdal`" = "gdal-config" ; then
- GDAL_CONFIG="$with_gdal"
- fi
-
- if test -z "$GDAL_CONFIG" ; then
- # Extract the first word of "gdal-config", so it can be a program name with args.
-set dummy gdal-config; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_GDAL_CONFIG+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- case $GDAL_CONFIG in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_GDAL_CONFIG="$GDAL_CONFIG" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_GDAL_CONFIG="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
- test -z "$ac_cv_path_GDAL_CONFIG" && ac_cv_path_GDAL_CONFIG="no"
- ;;
-esac
-fi
-GDAL_CONFIG=$ac_cv_path_GDAL_CONFIG
-
-if test -n "$GDAL_CONFIG"; then
- echo "$as_me:$LINENO: result: $GDAL_CONFIG" >&5
-echo "${ECHO_T}$GDAL_CONFIG" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- fi
-
- if test "$GDAL_CONFIG" = "no" ; then
- { { echo "$as_me:$LINENO: error: couldn't find gdal-config" >&5
-echo "$as_me: error: couldn't find gdal-config" >&2;}
- { (exit 1); exit 1; }; }
- fi
-
-elif test -n "$with_gdal" -a "$with_gdal" != "no" ; then
-
- GDAL_CONFIG=$with_gdal
-
- if test -f "$GDAL_CONFIG" -a -x "$GDAL_CONFIG" ; then
- echo "$as_me:$LINENO: result: user supplied gdal-config ($GDAL_CONFIG)" >&5
-echo "${ECHO_T}user supplied gdal-config ($GDAL_CONFIG)" >&6
- else
- { { echo "$as_me:$LINENO: error: '$GDAL_CONFIG' is not an executable. Make sure you use --with-gdal=/path/to/gdal-config" >&5
-echo "$as_me: error: '$GDAL_CONFIG' is not an executable. Make sure you use --with-gdal=/path/to/gdal-config" >&2;}
- { (exit 1); exit 1; }; }
- fi
-
-else
-
- { { echo "$as_me:$LINENO: error: gdal required to build GDAL GRASS 5.7 driver" >&5
-echo "$as_me: error: gdal required to build GDAL GRASS 5.7 driver" >&2;}
- { (exit 1); exit 1; }; }
-
-fi
-
-LIBS="`$GDAL_CONFIG --libs` $LIBS"
-GDAL_INC=`$GDAL_CONFIG --cflags`
-
-GDAL_INC=$GDAL_INC
-
-
-
-# Check whether --with-autoload or --without-autoload was given.
-if test "${with_autoload+set}" = set; then
- withval="$with_autoload"
-
-fi;
-
-if test "$with_autoload" != "" ; then
- AUTOLOAD_DIR=$with_autoload
-else
- if $GDAL_CONFIG --autoload > /dev/null 2>&1 ; then
- AUTOLOAD_DIR=`$GDAL_CONFIG --autoload`
- else
- AUTOLOAD_DIR=`$GDAL_CONFIG --prefix`/lib/gdalplugins
- fi
-fi
-
-echo "$as_me:$LINENO: result: using $AUTOLOAD_DIR as GDAL shared library autoload directory" >&5
-echo "${ECHO_T}using $AUTOLOAD_DIR as GDAL shared library autoload directory" >&6
-AUTOLOAD_DIR=$AUTOLOAD_DIR
-
-
-
-GRASS_SETTING=no
-GRASS_INCLUDE=
-GRASS_GISBASE=
-export GRASS_INCLUDE GRASS_SETTING GRASS_GISBASE
-
-
-# Check whether --with-grass or --without-grass was given.
-if test "${with_grass+set}" = set; then
- withval="$with_grass"
-
-fi;
-
-if test "$with_grass" = "no" ; then
- { { echo "$as_me:$LINENO: error: grass required for this driver, please install GRASS 5.7 and rebuild" >&5
-echo "$as_me: error: grass required for this driver, please install GRASS 5.7 and rebuild" >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-if test "$with_grass" != "yes" ; then
-
-
-echo "$as_me:$LINENO: checking for G_asprintf in -lgrass_gis" >&5
-echo $ECHO_N "checking for G_asprintf in -lgrass_gis... $ECHO_C" >&6
-if test "${ac_cv_lib_grass_gis_G_asprintf+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lgrass_gis -L$with_grass/lib -lgrass_I -lgrass_vask -lgrass_gmath -lgrass_gis -lgrass_datetime -lgrass_gproj -lgrass_vect -lgrass_dbmibase -lgrass_dbmiclient -lgrass_dgl -lgrass_dig2 -lgrass_rtree -lgrass_linkm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any gcc2 internal prototype to avoid an error. */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char G_asprintf ();
-int
-main ()
-{
-G_asprintf ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_grass_gis_G_asprintf=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_grass_gis_G_asprintf=no
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_grass_gis_G_asprintf" >&5
-echo "${ECHO_T}$ac_cv_lib_grass_gis_G_asprintf" >&6
-if test $ac_cv_lib_grass_gis_G_asprintf = yes; then
- GRASS_SETTING=grass57+
-else
- GRASS_SETTING=no
-fi
-
-
- if test "$GRASS_SETTING" = "grass57+" ; then
- LIBS="-L$with_grass/lib -lgrass_I -lgrass_vask -lgrass_gmath -lgrass_gis -lgrass_datetime -lgrass_gproj -lgrass_vect -lgrass_dbmibase -lgrass_dbmiclient -lgrass_dgl -lgrass_dig2 -lgrass_rtree -lgrass_linkm $LIBS"
- GRASS_INCLUDE="-I$with_grass/include"
- GRASS_GISBASE="$with_grass"
- else
- { { echo "$as_me:$LINENO: error: --with-grass=$with_grass requested, but libraries not found! Perhaps you need to set LD_LIBRARY_PATH to include $with_grass/lib?" >&5
-echo "$as_me: error: --with-grass=$with_grass requested, but libraries not found! Perhaps you need to set LD_LIBRARY_PATH to include $with_grass/lib?" >&2;}
- { (exit 1); exit 1; }; }
- fi
-fi
-
-GRASS_INCLUDE=$GRASS_INCLUDE
-
-GRASS_GISBASE=$GRASS_GISBASE
-
-
-
-rm -f conftest*
-
- ac_config_files="$ac_config_files Makefile"
-
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=/{
-s/:*\$(srcdir):*/:/;
-s/:*\${srcdir}:*/:/;
-s/:*@srcdir@:*/:/;
-s/^\([^=]*=[ ]*\):*/\1/;
-s/:*$//;
-s/^[^=]*=[ ]*$//;
-}'
-fi
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-#
-# If the first sed substitution is executed (which looks for macros that
-# take arguments), then we branch to the quote section. Otherwise,
-# look for a macro that doesn't take arguments.
-cat >confdef2opt.sed <<\_ACEOF
-t clear
-: clear
-s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g
-t quote
-s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g
-t quote
-d
-: quote
-s,[ `~#$^&*(){}\\|;'"<>?],\\&,g
-s,\[,\\&,g
-s,\],\\&,g
-s,\$,$$,g
-p
-_ACEOF
-# We use echo to avoid assuming a particular line-breaking character.
-# The extra dot is to prevent the shell from consuming trailing
-# line-breaks from the sub-command output. A line-break within
-# single-quotes doesn't work because, if this script is created in a
-# platform that uses two characters for line-breaks (e.g., DOS), tr
-# would break.
-ac_LF_and_DOT=`echo; echo .`
-DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'`
-rm -f confdef2opt.sed
-
-
-ac_libobjs=
-ac_ltlibobjs=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_i=`echo "$ac_i" |
- sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
- # 2. Add them.
- ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
- ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-
-: ${CONFIG_STATUS=./config.status}
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
-fi
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
-
-# Work around bugs in pre-3.0 UWIN ksh.
-$as_unset ENV MAIL MAILPATH
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
-do
- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- $as_unset $as_var
- fi
-done
-
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
- /^X\/\(\/\/\)$/{ s//\1/; q; }
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-
-
-# PATH needs CR, and LINENO needs CR and PATH.
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conf$$.sh
-fi
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" || {
- # Find who we are. Look in the path if we contain no path at all
- # relative or not.
- case $0 in
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
- ;;
- esac
- # We did not find ourselves, most probably we were run as `sh COMMAND'
- # in which case we are not to be found in the path.
- if test "x$as_myself" = x; then
- as_myself=$0
- fi
- if test ! -f "$as_myself"; then
- { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
-echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
- { (exit 1); exit 1; }; }
- fi
- case $CONFIG_SHELL in
- '')
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for as_base in sh bash ksh sh5; do
- case $as_dir in
- /*)
- if ("$as_dir/$as_base" -c '
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
- fi;;
- esac
- done
-done
-;;
- esac
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line before each line; the second 'sed' does the real
- # work. The second script uses 'N' to pair each line-number line
- # with the numbered line, and appends trailing '-' during
- # substitution so that $LINENO is not a special case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
- sed '=' <$as_myself |
- sed '
- N
- s,$,-,
- : loop
- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
- t loop
- s,-$,,
- s,^['$as_cr_digits']*\n,,
- ' >$as_me.lineno &&
- chmod +x $as_me.lineno ||
- { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
-echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensible to this).
- . ./$as_me.lineno
- # Exit status is that of the last command.
- exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- # We could just check for DJGPP; but this test a) works b) is more generic
- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
- if test -f conf$$.exe; then
- # Don't use ln at all; we don't have any links
- as_ln_s='cp -p'
- else
- as_ln_s='ln -s'
- fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.file
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-as_executable_p="test -f"
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS=" $as_nl"
-
-# CDPATH.
-$as_unset CDPATH
-
-exec 6>&1
-
-# Open the log real soon, to keep \$[0] and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling. Logging --version etc. is OK.
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
-} >&5
-cat >&5 <<_CSEOF
-
-This file was extended by $as_me, which was
-generated by GNU Autoconf 2.59. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-_CSEOF
-echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
-echo >&5
-_ACEOF
-
-# Files that config.status was made for.
-if test -n "$ac_config_files"; then
- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_headers"; then
- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_links"; then
- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_commands"; then
- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
-
-Usage: $0 [OPTIONS] [FILE]...
-
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -q, --quiet do not print progress messages
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
-
-Configuration files:
-$config_files
-
-Report bugs to <bug-autoconf at gnu.org>."
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-ac_cs_version="\\
-config.status
-configured by $0, generated by GNU Autoconf 2.59,
- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
-
-Copyright (C) 2003 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-srcdir=$srcdir
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-# If no file are specified by the user, then we need to provide default
-# value. By we need to know if files were specified by the user.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=*)
- ac_option=`expr "x$1" : 'x\([^=]*\)='`
- ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
- ac_shift=:
- ;;
- -*)
- ac_option=$1
- ac_optarg=$2
- ac_shift=shift
- ;;
- *) # This is not an option, so the user has probably given explicit
- # arguments.
- ac_option=$1
- ac_need_defaults=false;;
- esac
-
- case $ac_option in
- # Handling of the options.
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- ac_cs_recheck=: ;;
- --version | --vers* | -V )
- echo "$ac_cs_version"; exit 0 ;;
- --he | --h)
- # Conflict between --help and --header
- { { echo "$as_me:$LINENO: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; };;
- --help | --hel | -h )
- echo "$ac_cs_usage"; exit 0 ;;
- --debug | --d* | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- $ac_shift
- CONFIG_FILES="$CONFIG_FILES $ac_optarg"
- ac_need_defaults=false;;
- --header | --heade | --head | --hea )
- $ac_shift
- CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
- ac_need_defaults=false;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil | --si | --s)
- ac_cs_silent=: ;;
-
- # This is an error.
- -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; } ;;
-
- *) ac_config_targets="$ac_config_targets $1" ;;
-
- esac
- shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
- exec 6>/dev/null
- ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-if \$ac_cs_recheck; then
- echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
- exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-fi
-
-_ACEOF
-
-
-
-
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-for ac_config_target in $ac_config_targets
-do
- case "$ac_config_target" in
- # Handling of arguments.
- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-fi
-
-# Have a temporary directory for convenience. Make it in the build tree
-# simply because there is no reason to put it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Create a temporary directory, and hook for its removal unless debugging.
-$debug ||
-{
- trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
- trap '{ (exit 1); exit 1; }' 1 2 13 15
-}
-
-# Create a (secure) tmp directory for tmp files.
-
-{
- tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
-} ||
-{
- tmp=./confstat$$-$RANDOM
- (umask 077 && mkdir $tmp)
-} ||
-{
- echo "$me: cannot create a temporary directory in ." >&2
- { (exit 1); exit 1; }
-}
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-
-#
-# CONFIG_FILES section.
-#
-
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
-if test -n "\$CONFIG_FILES"; then
- # Protect against being on the right side of a sed subst in config.status.
- sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
- s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
-s, at SHELL@,$SHELL,;t t
-s, at PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
-s, at PACKAGE_NAME@,$PACKAGE_NAME,;t t
-s, at PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
-s, at PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
-s, at PACKAGE_STRING@,$PACKAGE_STRING,;t t
-s, at PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
-s, at exec_prefix@,$exec_prefix,;t t
-s, at prefix@,$prefix,;t t
-s, at program_transform_name@,$program_transform_name,;t t
-s, at bindir@,$bindir,;t t
-s, at sbindir@,$sbindir,;t t
-s, at libexecdir@,$libexecdir,;t t
-s, at datadir@,$datadir,;t t
-s, at sysconfdir@,$sysconfdir,;t t
-s, at sharedstatedir@,$sharedstatedir,;t t
-s, at localstatedir@,$localstatedir,;t t
-s, at libdir@,$libdir,;t t
-s, at includedir@,$includedir,;t t
-s, at oldincludedir@,$oldincludedir,;t t
-s, at infodir@,$infodir,;t t
-s, at mandir@,$mandir,;t t
-s, at build_alias@,$build_alias,;t t
-s, at host_alias@,$host_alias,;t t
-s, at target_alias@,$target_alias,;t t
-s, at DEFS@,$DEFS,;t t
-s, at ECHO_C@,$ECHO_C,;t t
-s, at ECHO_N@,$ECHO_N,;t t
-s, at ECHO_T@,$ECHO_T,;t t
-s, at LIBS@,$LIBS,;t t
-s, at CC@,$CC,;t t
-s, at CFLAGS@,$CFLAGS,;t t
-s, at LDFLAGS@,$LDFLAGS,;t t
-s, at CPPFLAGS@,$CPPFLAGS,;t t
-s, at ac_ct_CC@,$ac_ct_CC,;t t
-s, at EXEEXT@,$EXEEXT,;t t
-s, at OBJEXT@,$OBJEXT,;t t
-s, at CXX@,$CXX,;t t
-s, at CXXFLAGS@,$CXXFLAGS,;t t
-s, at ac_ct_CXX@,$ac_ct_CXX,;t t
-s, at RANLIB@,$RANLIB,;t t
-s, at ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
-s, at CXX_PIC@,$CXX_PIC,;t t
-s, at C_PIC@,$C_PIC,;t t
-s, at LD_SHARED@,$LD_SHARED,;t t
-s, at SO_EXT@,$SO_EXT,;t t
-s, at CXX_WFLAGS@,$CXX_WFLAGS,;t t
-s, at C_WFLAGS@,$C_WFLAGS,;t t
-s, at GDAL_CONFIG@,$GDAL_CONFIG,;t t
-s, at GDAL_INC@,$GDAL_INC,;t t
-s, at AUTOLOAD_DIR@,$AUTOLOAD_DIR,;t t
-s, at GRASS_INCLUDE@,$GRASS_INCLUDE,;t t
-s, at GRASS_GISBASE@,$GRASS_GISBASE,;t t
-s, at LIBOBJS@,$LIBOBJS,;t t
-s, at LTLIBOBJS@,$LTLIBOBJS,;t t
-CEOF
-
-_ACEOF
-
- cat >>$CONFIG_STATUS <<\_ACEOF
- # Split the substitutions into bite-sized pieces for seds with
- # small command number limits, like on Digital OSF/1 and HP-UX.
- ac_max_sed_lines=48
- ac_sed_frag=1 # Number of current file.
- ac_beg=1 # First line for current file.
- ac_end=$ac_max_sed_lines # Line after last line for current file.
- ac_more_lines=:
- ac_sed_cmds=
- while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- else
- sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- fi
- if test ! -s $tmp/subs.frag; then
- ac_more_lines=false
- else
- # The purpose of the label and of the branching condition is to
- # speed up the sed processing (if there are no `@' at all, there
- # is no need to browse any of the substitutions).
- # These are the two extra sed commands mentioned above.
- (echo ':t
- /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
- fi
- ac_sed_frag=`expr $ac_sed_frag + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_lines`
- fi
- done
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
- fi
-fi # test -n "$CONFIG_FILES"
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
- - | *:- | *:-:* ) # input from stdin
- cat >$tmp/stdin
- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- * ) ac_file_in=$ac_file.in ;;
- esac
-
- # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
- ac_dir=`(dirname "$ac_file") 2>/dev/null ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- { if $as_mkdir_p; then
- mkdir -p "$ac_dir"
- else
- as_dir="$ac_dir"
- as_dirs=
- while test ! -d "$as_dir"; do
- as_dirs="$as_dir $as_dirs"
- as_dir=`(dirname "$as_dir") 2>/dev/null ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- done
- test ! -n "$as_dirs" || mkdir $as_dirs
- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
- { (exit 1); exit 1; }; }; }
-
- ac_builddir=.
-
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
- .) # No --srcdir option. We are building in place.
- ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
- case "$ac_dir" in
- .) ac_abs_builddir=`pwd`;;
- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
- *) ac_abs_builddir=`pwd`/"$ac_dir";;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
- case ${ac_top_builddir}. in
- .) ac_abs_top_builddir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
- case $ac_srcdir in
- .) ac_abs_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
- case $ac_top_srcdir in
- .) ac_abs_top_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
- esac;;
-esac
-
-
-
- if test x"$ac_file" != x-; then
- { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
- rm -f "$ac_file"
- fi
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- if test x"$ac_file" = x-; then
- configure_input=
- else
- configure_input="$ac_file. "
- fi
- configure_input=$configure_input"Generated from `echo $ac_file_in |
- sed 's,.*/,,'` by configure."
-
- # First look for the input files in the build tree, otherwise in the
- # src tree.
- ac_file_inputs=`IFS=:
- for f in $ac_file_in; do
- case $f in
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo "$f";;
- *) # Relative
- if test -f "$f"; then
- # Build tree
- echo "$f"
- elif test -f "$srcdir/$f"; then
- # Source tree
- echo "$srcdir/$f"
- else
- # /dev/null tree
- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- fi;;
- esac
- done` || { (exit 1); exit 1; }
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
- sed "$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s, at configure_input@,$configure_input,;t t
-s, at srcdir@,$ac_srcdir,;t t
-s, at abs_srcdir@,$ac_abs_srcdir,;t t
-s, at top_srcdir@,$ac_top_srcdir,;t t
-s, at abs_top_srcdir@,$ac_abs_top_srcdir,;t t
-s, at builddir@,$ac_builddir,;t t
-s, at abs_builddir@,$ac_abs_builddir,;t t
-s, at top_builddir@,$ac_top_builddir,;t t
-s, at abs_top_builddir@,$ac_abs_top_builddir,;t t
-" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
- rm -f $tmp/stdin
- if test x"$ac_file" != x-; then
- mv $tmp/out $ac_file
- else
- cat $tmp/out
- rm -f $tmp/out
- fi
-
-done
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-{ (exit 0); exit 0; }
-_ACEOF
-chmod +x $CONFIG_STATUS
-ac_clean_files=$ac_clean_files_save
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded. So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status. When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
- ac_cs_success=:
- ac_config_status_args=
- test "$silent" = yes &&
- ac_config_status_args="$ac_config_status_args --quiet"
- exec 5>/dev/null
- $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
- exec 5>>config.log
- # Use ||, not &&, to avoid exiting from the if with $? = 1, which
- # would make configure fail if this is the last instruction.
- $ac_cs_success || { (exit 1); exit 1; }
-fi
-
-
-
-
Deleted: packages/gdal-grass/trunk/configure.in
===================================================================
--- packages/gdal-grass/trunk/configure.in 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/configure.in 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,147 +0,0 @@
-dnl ***************************************************************************
-dnl $Id: configure.in,v 1.10 2006/08/23 20:06:02 fwarmerdam Exp $
-dnl
-dnl Project: GDAL GRASS Plugin
-dnl Purpose: Configure source file.
-dnl Author: Frank Warmerdam, warmerdam at pobox.com
-dnl
-dnl ***************************************************************************
-dnl Copyright (c) 2005, Frank Warmerdam
-dnl
-dnl Permission is hereby granted, free of charge, to any person obtaining a
-dnl copy of this software and associated documentation files (the "Software"),
-dnl to deal in the Software without restriction, including without limitation
-dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
-dnl and/or sell copies of the Software, and to permit persons to whom the
-dnl Software is furnished to do so, subject to the following conditions:
-dnl
-dnl The above copyright notice and this permission notice shall be included
-dnl in all copies or substantial portions of the Software.
-dnl
-dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-dnl DEALINGS IN THE SOFTWARE.
-dnl ***************************************************************************
-
-dnl Disable configure caching ... it causes lots of hassles.
-define([AC_CACHE_LOAD], )
-define([AC_CACHE_SAVE], )
-
-dnl Process this file with autoconf to produce a configure script.
-AC_INIT(Makefile.in)
-
-dnl We require autoconf 2.52+ for libtool support on cygwin/mingw hosts
-AC_PREREQ(2.52)
-
-dnl Checks for programs.
-AC_PROG_CC
-AC_PROG_CXX
-
-AC_PROG_RANLIB
-AC_COMPILER_PIC
-AC_LD_SHARED
-AC_COMPILER_WFLAGS
-
-dnl ---------------------------------------------------------------------------
-dnl Find GDAL
-dnl ---------------------------------------------------------------------------
-
-AC_ARG_WITH(gdal,
-[ --with-gdal[=PATH] GDAL (PATH is path to gdal-config)],,)
-
-if test "$with_gdal" = "yes" -o "$with_gdal" = "" ; then
-
- if test "`basename xx/$with_gdal`" = "gdal-config" ; then
- GDAL_CONFIG="$with_gdal"
- fi
-
- if test -z "$GDAL_CONFIG" ; then
- AC_PATH_PROG(GDAL_CONFIG, gdal-config, no)
- fi
-
- if test "$GDAL_CONFIG" = "no" ; then
- AC_MSG_ERROR([couldn't find gdal-config])
- fi
-
-elif test -n "$with_gdal" -a "$with_gdal" != "no" ; then
-
- GDAL_CONFIG=$with_gdal
-
- if test -f "$GDAL_CONFIG" -a -x "$GDAL_CONFIG" ; then
- AC_MSG_RESULT([user supplied gdal-config ($GDAL_CONFIG)])
- else
- AC_MSG_ERROR(['$GDAL_CONFIG' is not an executable. Make sure you use --with-gdal=/path/to/gdal-config])
- fi
-
-else
-
- AC_MSG_ERROR([gdal required to build GDAL GRASS 5.7 driver])
-
-fi
-
-LIBS="`$GDAL_CONFIG --libs` $LIBS"
-GDAL_INC=`$GDAL_CONFIG --cflags`
-
-AC_SUBST(GDAL_INC, $GDAL_INC)
-
-dnl ---------------------------------------------------------------------------
-dnl Where to put driver?
-dnl ---------------------------------------------------------------------------
-AC_ARG_WITH(autoload,[ --with-autoload[=DIR] Directory for autoload drivers],,)
-
-if test "$with_autoload" != "" ; then
- AUTOLOAD_DIR=$with_autoload
-else
- if $GDAL_CONFIG --autoload > /dev/null 2>&1 ; then
- AUTOLOAD_DIR=`$GDAL_CONFIG --autoload`
- else
- AUTOLOAD_DIR=`$GDAL_CONFIG --prefix`/lib/gdalplugins
- fi
-fi
-
-AC_MSG_RESULT(using $AUTOLOAD_DIR as GDAL shared library autoload directory)
-AC_SUBST(AUTOLOAD_DIR,$AUTOLOAD_DIR)
-
-dnl ---------------------------------------------------------------------------
-dnl Find GRASS 5.7
-dnl ---------------------------------------------------------------------------
-
-GRASS_SETTING=no
-GRASS_INCLUDE=
-GRASS_GISBASE=
-export GRASS_INCLUDE GRASS_SETTING GRASS_GISBASE
-
-AC_ARG_WITH(grass,[ --with-grass[=ARG] Include GRASS support (ARG=GRASS install tree dir)],,)
-
-if test "$with_grass" = "no" ; then
- AC_MSG_ERROR([grass required for this driver, please install GRASS 5.7 and rebuild])
-fi
-
-if test "$with_grass" != "yes" ; then
-
- AC_CHECK_LIB(grass_gis,G_asprintf,GRASS_SETTING=grass57+,GRASS_SETTING=no,-L$with_grass/lib -lgrass_I -lgrass_vask -lgrass_gmath -lgrass_gis -lgrass_datetime -lgrass_gproj -lgrass_vect -lgrass_dbmibase -lgrass_dbmiclient -lgrass_dgl -lgrass_dig2 -lgrass_rtree -lgrass_linkm)
-
- if test "$GRASS_SETTING" = "grass57+" ; then
- LIBS="-L$with_grass/lib -lgrass_I -lgrass_vask -lgrass_gmath -lgrass_gis -lgrass_datetime -lgrass_gproj -lgrass_vect -lgrass_dbmibase -lgrass_dbmiclient -lgrass_dgl -lgrass_dig2 -lgrass_rtree -lgrass_linkm $LIBS"
- GRASS_INCLUDE="-I$with_grass/include"
- GRASS_GISBASE="$with_grass"
- else
- AC_MSG_ERROR([--with-grass=$with_grass requested, but libraries not found! Perhaps you need to set LD_LIBRARY_PATH to include $with_grass/lib?])
- fi
-fi
-
-AC_SUBST(GRASS_INCLUDE,$GRASS_INCLUDE)
-AC_SUBST(GRASS_GISBASE,$GRASS_GISBASE)
-
-dnl ---------------------------------------------------------------------------
-
-rm -f conftest*
-
-AC_OUTPUT(Makefile)
-
-
-
Deleted: packages/gdal-grass/trunk/grass57dataset.cpp
===================================================================
--- packages/gdal-grass/trunk/grass57dataset.cpp 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/grass57dataset.cpp 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,1011 +0,0 @@
-/******************************************************************************
- * $Id: grass57dataset.cpp,v 1.8 2006/11/09 15:56:47 rblazek Exp $
- *
- * Project: GRASS Driver
- * Purpose: Implement GRASS raster read/write support
- * This version is for GRASS 5.7+ and uses GRASS libraries
- * directly instead of using libgrass.
- * Author: Frank Warmerdam <warmerdam at pobox.com>
- * Radim Blazek <blazek at itc.it>
- *
- ******************************************************************************
- * Copyright (c) 2000 Frank Warmerdam <warmerdam at pobox.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- ******************************************************************************
- *
- * $Log: grass57dataset.cpp,v $
- * Revision 1.8 2006/11/09 15:56:47 rblazek
- * set also the band invalid if reopen fails
- *
- * Revision 1.7 2006/11/09 15:30:45 rblazek
- * check if ResetReading failed
- *
- * Revision 1.6 2006/02/13 17:39:31 rblazek
- * header files moved to grass
- *
- * Revision 1.5 2005/09/30 21:07:57 fwarmerdam
- * applied patches from bug 822, add georef support
- *
- * Revision 1.4 2005/05/06 18:21:14 fwarmerdam
- * Applied patch from Radim. Better logic to reset the region.
- *
- * Revision 1.3 2004/09/24 14:28:49 fwarmerdam
- * fixed some typos with floating point (from Radim)
- *
- * Revision 1.2 2004/09/22 20:39:15 fwarmerdam
- * some updates to reduce spurious error reports
- *
- * Revision 1.1 2004/09/13 18:18:26 fwarmerdam
- * Variant code from Radim that works with GRASS 5.7 libraries directly.
- * Currently coordinate system support is broken with this version.
- *
- */
-
-#include <stdlib.h>
-
-extern "C" {
-#ifdef __cplusplus
-#define class _class
-#endif
-#include <grass/imagery.h>
-#ifdef __cplusplus
-#undef class
-#endif
-
-#include <grass/gprojects.h>
-#include <grass/gis.h>
-}
-
-#include "gdal_priv.h"
-#include "cpl_string.h"
-#include "ogr_spatialref.h"
-
-#define GRASS_MAX_COLORS 100000 // what is the right value
-
-CPL_CVSID("$Id: grass57dataset.cpp,v 1.8 2006/11/09 15:56:47 rblazek Exp $");
-
-CPL_C_START
-void GDALRegister_GRASS(void);
-CPL_C_END
-
-/************************************************************************/
-/* Grass2CPLErrorHook() */
-/************************************************************************/
-
-int Grass2CPLErrorHook( char * pszMessage, int bFatal )
-
-{
- if( !bFatal )
- //CPLDebug( "GRASS", "%s", pszMessage );
- CPLError( CE_Warning, CPLE_AppDefined, "GRASS warning: %s", pszMessage );
- else
- CPLError( CE_Warning, CPLE_AppDefined, "GRASS fatal error: %s", pszMessage );
-
- return 0;
-}
-
-/************************************************************************/
-/* ==================================================================== */
-/* GRASSDataset */
-/* ==================================================================== */
-/************************************************************************/
-
-class GRASSRasterBand;
-
-class GRASSDataset : public GDALDataset
-{
- friend class GRASSRasterBand;
-
- char *pszGisdbase;
- char *pszLocation; /* LOCATION_NAME */
- char *pszElement; /* cellhd or group */
-
- struct Cell_head sCellInfo; /* raster region */
-
- char *pszProjection;
-
- double adfGeoTransform[6];
-
- public:
- GRASSDataset();
- ~GRASSDataset();
-
- virtual const char *GetProjectionRef(void);
- virtual CPLErr GetGeoTransform( double * );
-
- static GDALDataset *Open( GDALOpenInfo * );
-
- private:
- static bool SplitPath ( char *, char **, char **, char **, char **, char ** );
-};
-
-/************************************************************************/
-/* ==================================================================== */
-/* GRASSRasterBand */
-/* ==================================================================== */
-/************************************************************************/
-
-class GRASSRasterBand : public GDALRasterBand
-{
- friend class GRASSDataset;
-
- char *pszCellName;
- char *pszMapset;
- int hCell;
- int nGRSType; // GRASS raster type: CELL_TYPE, FCELL_TYPE, DCELL_TYPE
- bool nativeNulls; // use GRASS native NULL values
-
- struct Colors sGrassColors;
- GDALColorTable *poCT;
-
- struct Cell_head sOpenWindow; /* the region when the raster was opened */
-
- int bHaveMinMax;
- double dfCellMin;
- double dfCellMax;
-
- double dfNoData;
-
- bool valid;
-
- public:
-
- GRASSRasterBand( GRASSDataset *, int,
- const char *, const char * );
- virtual ~GRASSRasterBand();
-
- virtual CPLErr IReadBlock( int, int, void * );
- virtual CPLErr IRasterIO ( GDALRWFlag, int, int, int, int, void *, int, int, GDALDataType, int, int );
- virtual GDALColorInterp GetColorInterpretation();
- virtual GDALColorTable *GetColorTable();
- virtual double GetMinimum( int *pbSuccess = NULL );
- virtual double GetMaximum( int *pbSuccess = NULL );
- virtual double GetNoDataValue( int *pbSuccess = NULL );
-
- private:
- CPLErr ResetReading( struct Cell_head * );
-
-};
-
-
-/************************************************************************/
-/* GRASSRasterBand() */
-/************************************************************************/
-
-GRASSRasterBand::GRASSRasterBand( GRASSDataset *poDS, int nBand,
- const char * pszMapset,
- const char * pszCellName )
-
-{
- struct Cell_head sCellInfo;
-
- // Note: GISDBASE, LOCATION_NAME ans MAPSET was set in GRASSDataset::Open
-
- this->poDS = poDS;
- this->nBand = nBand;
- this->valid = false;
-
- this->pszCellName = G_store ( (char *) pszCellName );
- this->pszMapset = G_store ( (char *) pszMapset );
-
- G_get_cellhd( (char *) pszCellName, (char *) pszMapset, &sCellInfo );
- nGRSType = G_raster_map_type( (char *) pszCellName, (char *) pszMapset );
-
-/* -------------------------------------------------------------------- */
-/* Get min/max values. */
-/* -------------------------------------------------------------------- */
- struct FPRange sRange;
-
- if( G_read_fp_range( (char *) pszCellName, (char *) pszMapset,
- &sRange ) == -1 )
- {
- bHaveMinMax = FALSE;
- }
- else
- {
- bHaveMinMax = TRUE;
- G_get_fp_range_min_max( &sRange, &dfCellMin, &dfCellMax );
- }
-
-/* -------------------------------------------------------------------- */
-/* Setup band type, and preferred nodata value. */
-/* -------------------------------------------------------------------- */
- // Negative values are also (?) stored as 4 bytes (format = 3)
- // => raster with format < 3 has only positive values
-
- // GRASS modules usually do not waste space and only the format necessary to keep
- // full raster values range is used -> no checks if shorter type could be used
-
- if( nGRSType == CELL_TYPE ) {
- if ( sCellInfo.format == 0 ) { // 1 byte / cell -> possible range 0,255
- if ( bHaveMinMax && dfCellMin > 0 ) {
- this->eDataType = GDT_Byte;
- dfNoData = 0.0;
- } else if ( bHaveMinMax && dfCellMax < 255 ) {
- this->eDataType = GDT_Byte;
- dfNoData = 255.0;
- } else { // maximum is not known or full range is used
- this->eDataType = GDT_UInt16;
- dfNoData = 256.0;
- }
- nativeNulls = false;
- } else if ( sCellInfo.format == 1 ) { // 2 bytes / cell -> possible range 0,65535
- if ( bHaveMinMax && dfCellMin > 0 ) {
- this->eDataType = GDT_UInt16;
- dfNoData = 0.0;
- } else if ( bHaveMinMax && dfCellMax < 65535 ) {
- this->eDataType = GDT_UInt16;
- dfNoData = 65535;
- } else { // maximum is not known or full range is used
- CELL cval;
- this->eDataType = GDT_Int32;
- G_set_c_null_value ( &cval, 1);
- dfNoData = (double) cval;
- nativeNulls = true;
- }
- nativeNulls = false;
- } else { // 3-4 bytes
- CELL cval;
- this->eDataType = GDT_Int32;
- G_set_c_null_value ( &cval, 1);
- dfNoData = (double) cval;
- nativeNulls = true;
- }
- }
- else if( nGRSType == FCELL_TYPE ) {
- FCELL fval;
- this->eDataType = GDT_Float32;
- G_set_f_null_value ( &fval, 1);
- dfNoData = (double) fval;
- nativeNulls = true;
- }
- else if( nGRSType == DCELL_TYPE )
- {
- DCELL dval;
- this->eDataType = GDT_Float64;
- G_set_d_null_value ( &dval, 1);
- dfNoData = (double) dval;
- nativeNulls = true;
- }
-
- nBlockXSize = poDS->nRasterXSize;;
- nBlockYSize = 1;
-
- G_set_window( &(((GRASSDataset *)poDS)->sCellInfo) );
- if ( (hCell = G_open_cell_old((char *) pszCellName, (char *) pszMapset)) < 0 ) {
- CPLError( CE_Warning, CPLE_AppDefined, "GRASS: Cannot open raster '%s'", pszCellName );
- return;
- }
- G_copy((void *) &sOpenWindow, (void *) &(((GRASSDataset *)poDS)->sCellInfo), sizeof(struct Cell_head));
-
-/* -------------------------------------------------------------------- */
-/* Do we have a color table? */
-/* -------------------------------------------------------------------- */
- poCT = NULL;
- if( G_read_colors( (char *) pszCellName, (char *) pszMapset, &sGrassColors ) == 1 )
- {
- int maxcolor;
- CELL min, max;
-
- G_get_color_range ( &min, &max, &sGrassColors);
-
- if ( bHaveMinMax ) {
- if ( max < dfCellMax ) {
- maxcolor = max;
- } else {
- maxcolor = (int) ceil ( dfCellMax );
- }
- if ( maxcolor > GRASS_MAX_COLORS ) {
- maxcolor = GRASS_MAX_COLORS;
- CPLDebug( "GRASS", "Too many values, color table cut to %d entries.", maxcolor );
- }
- } else {
- if ( max < GRASS_MAX_COLORS ) {
- maxcolor = max;
- } else {
- maxcolor = GRASS_MAX_COLORS;
- CPLDebug( "GRASS", "Too many values, color table set to %d entries.", maxcolor );
- }
- }
-
- poCT = new GDALColorTable();
- for( int iColor = 0; iColor <= maxcolor; iColor++ )
- {
- int nRed, nGreen, nBlue;
- GDALColorEntry sColor;
-
- if( G_get_color( iColor, &nRed, &nGreen, &nBlue, &sGrassColors ) )
- {
- sColor.c1 = nRed;
- sColor.c2 = nGreen;
- sColor.c3 = nBlue;
- sColor.c4 = 255;
-
- poCT->SetColorEntry( iColor, &sColor );
- }
- else
- {
- sColor.c1 = 0;
- sColor.c2 = 0;
- sColor.c3 = 0;
- sColor.c4 = 0;
-
- poCT->SetColorEntry( iColor, &sColor );
- }
- }
-
- /* Create metadata enries for color table rules */
- char key[200], value[200];
- int rcount = G_colors_count ( &sGrassColors );
-
- sprintf ( value, "%d", rcount );
- this->SetMetadataItem( "COLOR_TABLE_RULES_COUNT", value );
-
- /* Add the rules in reverse order */
- for ( int i = rcount-1; i >= 0; i-- ) {
- DCELL val1, val2;
- unsigned char r1, g1, b1, r2, g2, b2;
-
- G_get_f_color_rule ( &val1, &r1, &g1, &b1, &val2, &r2, &g2, &b2, &sGrassColors, i );
-
-
- sprintf ( key, "COLOR_TABLE_RULE_RGB_%d", rcount-i-1 );
- sprintf ( value, "%e %e %d %d %d %d %d %d", val1, val2, r1, g1, b1, r2, g2, b2 );
- this->SetMetadataItem( key, value );
- }
- } else {
- this->SetMetadataItem( "COLOR_TABLE_RULES_COUNT", "0" );
- }
-
- this->valid = true;
-}
-
-/************************************************************************/
-/* ~GRASSRasterBand() */
-/************************************************************************/
-
-GRASSRasterBand::~GRASSRasterBand()
-{
- if( poCT != NULL ) {
- G_free_colors( &sGrassColors );
- delete poCT;
- }
-
- if( hCell >= 0 )
- G_close_cell( hCell );
-
- if ( pszCellName )
- free ( pszCellName );
-
- if ( pszMapset )
- free ( pszMapset );
-}
-
-/************************************************************************/
-/* ResetReading */
-/* */
-/* Reset current window and reopen cell if the window has changed, */
-/* reset GRASS variables */
-/* */
-/* Returns CE_Failure if fails, otherwise CE_None */
-/************************************************************************/
-CPLErr GRASSRasterBand::ResetReading ( struct Cell_head *sNewWindow )
-{
-
- /* Check if the window has changed */
- if ( sNewWindow->north != sOpenWindow.north || sNewWindow->south != sOpenWindow.south ||
- sNewWindow->east != sOpenWindow.east || sNewWindow->west != sOpenWindow.west ||
- sNewWindow->ew_res != sOpenWindow.ew_res || sNewWindow->ns_res != sOpenWindow.ns_res ||
- sNewWindow->rows != sOpenWindow.rows || sNewWindow->cols != sOpenWindow.cols )
- {
- if( hCell >= 0 ) {
- G_close_cell( hCell );
- hCell = -1;
- }
-
- /* Set window */
- G_set_window( sNewWindow );
-
- /* Open raster */
- G__setenv( "GISDBASE", ((GRASSDataset *)poDS)->pszGisdbase );
- G__setenv( "LOCATION_NAME", ((GRASSDataset *)poDS)->pszLocation );
- G__setenv( "MAPSET", pszMapset);
- G_reset_mapsets();
- G_add_mapset_to_search_path ( pszMapset );
-
- if ( (hCell = G_open_cell_old( pszCellName, pszMapset)) < 0 ) {
- CPLError( CE_Warning, CPLE_AppDefined, "GRASS: Cannot open raster '%s'", pszCellName );
- this->valid = false;
- return CE_Failure;
- }
-
- G_copy((void *) &sOpenWindow, (void *) sNewWindow, sizeof(struct Cell_head));
-
- }
- else
- {
- /* The windows are identical, check current window */
- struct Cell_head sCurrentWindow;
-
- G_get_window ( &sCurrentWindow );
-
- if ( sNewWindow->north != sCurrentWindow.north || sNewWindow->south != sCurrentWindow.south ||
- sNewWindow->east != sCurrentWindow.east || sNewWindow->west != sCurrentWindow.west ||
- sNewWindow->ew_res != sCurrentWindow.ew_res || sNewWindow->ns_res != sCurrentWindow.ns_res ||
- sNewWindow->rows != sCurrentWindow.rows || sNewWindow->cols != sCurrentWindow.cols
- )
- {
- /* Reset window */
- G_set_window( sNewWindow );
- }
- }
-
-
- return CE_None;
-}
-
-/************************************************************************/
-/* IReadBlock() */
-/* */
-/************************************************************************/
-
-CPLErr GRASSRasterBand::IReadBlock( int nBlockXOff, int nBlockYOff, void * pImage )
-
-{
- if ( ! this->valid ) return CE_Failure;
-
- // Reset window because IRasterIO could be previosly called
- if ( ResetReading ( &(((GRASSDataset *)poDS)->sCellInfo) ) != CE_None ) {
- return CE_Failure;
- }
-
- if ( eDataType == GDT_Byte || eDataType == GDT_UInt16 ) {
- CELL *cbuf;
-
- cbuf = G_allocate_c_raster_buf();
- G_get_c_raster_row ( hCell, cbuf, nBlockYOff );
-
- /* Reset NULLs */
- for ( int col = 0; col < nBlockXSize; col++ ) {
- if ( G_is_c_null_value(&(cbuf[col])) )
- cbuf[col] = (CELL) dfNoData;
- }
-
- GDALCopyWords ( (void *) cbuf, GDT_Int32, sizeof(CELL),
- pImage, eDataType, GDALGetDataTypeSize(eDataType)/8,
- nBlockXSize );
-
- free ( cbuf );
-
- } else if ( eDataType == GDT_Int32 ) {
- G_get_c_raster_row ( hCell, (CELL *) pImage, nBlockYOff );
- } else if ( eDataType == GDT_Float32 ) {
- G_get_f_raster_row ( hCell, (FCELL *) pImage, nBlockYOff );
- } else if ( eDataType == GDT_Float64 ) {
- G_get_d_raster_row ( hCell, (DCELL *) pImage, nBlockYOff );
- }
-
- return CE_None;
-}
-
-/************************************************************************/
-/* IRasterIO() */
-/* */
-/************************************************************************/
-
-CPLErr GRASSRasterBand::IRasterIO ( GDALRWFlag eRWFlag,
- int nXOff, int nYOff, int nXSize, int nYSize,
- void * pData, int nBufXSize, int nBufYSize,
- GDALDataType eBufType,
- int nPixelSpace, int nLineSpace )
-{
- /* GRASS library does that, we have only calculate and reset the region in map units
- * and if the region has changed, reopen the raster */
-
- /* Calculate the region */
- struct Cell_head sWindow;
- struct Cell_head *psDsWindow;
-
- if ( ! this->valid ) return CE_Failure;
-
- psDsWindow = &(((GRASSDataset *)poDS)->sCellInfo);
-
- sWindow.north = psDsWindow->north - nYOff * psDsWindow->ns_res;
- sWindow.south = sWindow.north - nYSize * psDsWindow->ns_res;
- sWindow.west = psDsWindow->west + nXOff * psDsWindow->ew_res;
- sWindow.east = sWindow.west + nXSize * psDsWindow->ew_res;
- sWindow.proj = psDsWindow->proj;
- sWindow.zone = psDsWindow->zone;
-
- sWindow.cols = nBufXSize;
- sWindow.rows = nBufYSize;
-
- /* Reset resolution */
- G_adjust_Cell_head ( &sWindow, 1, 1);
-
- if ( ResetReading ( &sWindow ) != CE_None )
- {
- return CE_Failure;
- }
-
- /* Read Data */
- CELL *cbuf = NULL;
- FCELL *fbuf = NULL;
- DCELL *dbuf = NULL;
- bool direct = false;
-
- /* Reset space if default (0) */
- if ( nPixelSpace == 0 )
- nPixelSpace = GDALGetDataTypeSize ( eBufType ) / 8;
-
- if ( nLineSpace == 0 )
- nLineSpace = nBufXSize * nPixelSpace;
-
- if ( nGRSType == CELL_TYPE && ( !nativeNulls || eBufType != GDT_Int32 || sizeof(CELL) != 4 ||
- nPixelSpace != sizeof(CELL) ) )
- {
- cbuf = G_allocate_c_raster_buf();
- } else if( nGRSType == FCELL_TYPE && ( eBufType != GDT_Float32 || nPixelSpace != sizeof(FCELL) ) ) {
- fbuf = G_allocate_f_raster_buf();
- } else if( nGRSType == DCELL_TYPE && ( eBufType != GDT_Float64 || nPixelSpace != sizeof(DCELL) ) ) {
- dbuf = G_allocate_d_raster_buf();
- } else {
- direct = true;
- }
-
- for ( int row = 0; row < nBufYSize; row++ ) {
- char *pnt = (char *)pData + row * nLineSpace;
-
- if ( nGRSType == CELL_TYPE ) {
- if ( direct ) {
- G_get_c_raster_row ( hCell, (CELL *) pnt, row );
- } else {
- G_get_c_raster_row ( hCell, cbuf, row );
-
- /* Reset NULLs */
- for ( int col = 0; col < nBufXSize; col++ ) {
- if ( G_is_c_null_value(&(cbuf[col])) )
- cbuf[col] = (CELL) dfNoData;
- }
-
- GDALCopyWords ( (void *) cbuf, GDT_Int32, sizeof(CELL),
- (void *) pnt, eBufType, nPixelSpace,
- nBufXSize );
- }
- } else if( nGRSType == FCELL_TYPE ) {
- if ( direct ) {
- G_get_f_raster_row ( hCell, (FCELL *) pnt, row );
- } else {
- G_get_f_raster_row ( hCell, fbuf, row );
-
- GDALCopyWords ( (void *) fbuf, GDT_Float32, sizeof(FCELL),
- (void *) pnt, eBufType, nPixelSpace,
- nBufXSize );
- }
- } else if( nGRSType == DCELL_TYPE ) {
- if ( direct ) {
- G_get_d_raster_row ( hCell, (DCELL *) pnt, row );
- } else {
- G_get_d_raster_row ( hCell, dbuf, row );
-
- GDALCopyWords ( (void *) dbuf, GDT_Float64, sizeof(DCELL),
- (void *) pnt, eBufType, nPixelSpace,
- nBufXSize );
- }
- }
- }
-
- if ( cbuf ) free ( cbuf );
- if ( fbuf ) free ( fbuf );
- if ( dbuf ) free ( dbuf );
-
- return CE_None;
-}
-
-/************************************************************************/
-/* GetColorInterpretation() */
-/************************************************************************/
-
-GDALColorInterp GRASSRasterBand::GetColorInterpretation()
-
-{
- if( poCT != NULL )
- return GCI_PaletteIndex;
- else
- return GCI_GrayIndex;
-}
-
-/************************************************************************/
-/* GetColorTable() */
-/************************************************************************/
-
-GDALColorTable *GRASSRasterBand::GetColorTable()
-
-{
- return poCT;
-}
-
-/************************************************************************/
-/* GetMinimum() */
-/************************************************************************/
-
-double GRASSRasterBand::GetMinimum( int *pbSuccess )
-
-{
- if( pbSuccess )
- *pbSuccess = bHaveMinMax;
-
- if( bHaveMinMax )
- return dfCellMin;
-
- else if( eDataType == GDT_Float32 || eDataType == GDT_Float64 )
- return -4294967295.0;
- else
- return 0;
-}
-
-/************************************************************************/
-/* GetMaximum() */
-/************************************************************************/
-
-double GRASSRasterBand::GetMaximum( int *pbSuccess )
-
-{
- if( pbSuccess )
- *pbSuccess = bHaveMinMax;
-
- if( bHaveMinMax )
- return dfCellMax;
-
- else if( eDataType == GDT_Float32 || eDataType == GDT_Float64 )
- return 4294967295.0;
- else if( eDataType == GDT_UInt32 )
- return 4294967295.0;
- else if( eDataType == GDT_UInt16 )
- return 65535;
- else
- return 255;
-}
-
-/************************************************************************/
-/* GetNoDataValue() */
-/************************************************************************/
-
-double GRASSRasterBand::GetNoDataValue( int *pbSuccess )
-
-{
- if( pbSuccess )
- *pbSuccess = TRUE;
-
- return dfNoData;
-}
-
-/************************************************************************/
-/* ==================================================================== */
-/* GRASSDataset */
-/* ==================================================================== */
-/************************************************************************/
-
-
-/************************************************************************/
-/* GRASSDataset() */
-/************************************************************************/
-
-GRASSDataset::GRASSDataset()
-{
- pszProjection = NULL;
-
- adfGeoTransform[0] = 0.0;
- adfGeoTransform[1] = 1.0;
- adfGeoTransform[2] = 0.0;
- adfGeoTransform[3] = 0.0;
- adfGeoTransform[4] = 0.0;
- adfGeoTransform[5] = 1.0;
-}
-
-/************************************************************************/
-/* ~GRASSDataset() */
-/************************************************************************/
-
-GRASSDataset::~GRASSDataset()
-{
-
- if ( pszGisdbase )
- free ( pszGisdbase );
-
- if ( pszLocation )
- free ( pszLocation );
-
- if ( pszElement )
- free ( pszElement );
-
- CPLFree( pszProjection );
-}
-
-/************************************************************************/
-/* GetProjectionRef() */
-/************************************************************************/
-
-const char *GRASSDataset::GetProjectionRef()
-{
- if( pszProjection == NULL )
- return "";
- else
- return pszProjection;
-}
-
-/************************************************************************/
-/* GetGeoTransform() */
-/************************************************************************/
-
-CPLErr GRASSDataset::GetGeoTransform( double * padfGeoTransform )
-{
- memcpy( padfGeoTransform, adfGeoTransform, sizeof(double) * 6 );
-
- return CE_None;
-}
-
-/************************************************************************/
-/* SplitPath() */
-/* Split full path to cell or group to: */
-/* gisdbase, location, mapset, element, name */
-/* New string are allocated and should be freed when no longer needed. */
-/* */
-/* Returns: true - OK */
-/* false - failed */
-/************************************************************************/
-bool GRASSDataset::SplitPath( char *path, char **gisdbase, char **location,
- char **mapset, char **element, char **name )
-{
- char *p, *ptr[5], *tmp;
- int i = 0;
-
- *gisdbase = *location = *mapset = *element = *name = NULL;
-
- if ( !path || strlen(path) == 0 )
- return false;
-
- tmp = G_store ( path );
-
- while ( (p = strrchr(tmp,'/')) != NULL && i < 4 ) {
- *p = '\0';
-
- if ( strlen(p+1) == 0 ) /* repeated '/' */
- continue;
-
- ptr[i++] = p+1;
- }
-
- /* Note: empty GISDBASE == 0 is not accepted (relative path) */
- if ( i != 4 ) {
- free ( tmp );
- return false;
- }
-
- *gisdbase = G_store ( tmp );
- *location = G_store ( ptr[3] );
- *mapset = G_store ( ptr[2] );
- *element = G_store ( ptr[1] );
- *name = G_store ( ptr[0] );
-
- free ( tmp );
- return true;
-}
-
-/************************************************************************/
-/* Open() */
-/************************************************************************/
-
-typedef int (*GrassErrorHandler)(char *, int);
-
-GDALDataset *GRASSDataset::Open( GDALOpenInfo * poOpenInfo )
-
-{
- char *pszGisdb = NULL, *pszLoc = NULL;
- char *pszMapset = NULL, *pszElem = NULL, *pszName = NULL;
- char **papszCells = NULL;
- char **papszMapsets = NULL;
- static char fake_gisbase[50];
- static bool hasGisbase;
-
-/* -------------------------------------------------------------------- */
-/* Does this even look like a grass file path? */
-/* -------------------------------------------------------------------- */
- if( strstr(poOpenInfo->pszFilename,"/cellhd/") == NULL
- && strstr(poOpenInfo->pszFilename,"/group/") == NULL )
- return NULL;
-
- /* Always init, if no rasters are opened G_no_gisinit resets the projection and
- * rasters in different projection may be then opened */
-
- // Don't use GISRC file and read/write GRASS variables (from location G_VAR_GISRC) to memory only.
- G_set_gisrc_mode ( G_GISRC_MODE_MEMORY );
-
- // Init GRASS libraries (required)
- G_no_gisinit(); // Doesn't check write permissions for mapset compare to G_gisinit
-
- // Set error function
- G_set_error_routine ( (GrassErrorHandler) Grass2CPLErrorHook );
-
-
- if ( !getenv( "GISBASE" ) ) {
- // we are outside a GRASS session
- // TODO: use function instead of hardcoded path
- sprintf(fake_gisbase, "GISBASE=/usr/local/share/gdal/grass/" );
- putenv( fake_gisbase );
- hasGisbase = false;
- } else {
- hasGisbase = true;
- }
-
- if ( !SplitPath( poOpenInfo->pszFilename, &pszGisdb, &pszLoc, &pszMapset,
- &pszElem, &pszName) ) {
- return NULL;
- }
-
-/* -------------------------------------------------------------------- */
-/* Check element name */
-/* -------------------------------------------------------------------- */
- if ( strcmp(pszElem,"cellhd") != 0 && strcmp(pszElem,"group") != 0 ) {
- free(pszGisdb);
- free(pszLoc);
- free(pszMapset);
- free(pszElem);
- free(pszName);
- return NULL;
- }
-
-/* -------------------------------------------------------------------- */
-/* Set GRASS variables */
-/* -------------------------------------------------------------------- */
-
- G__setenv( "GISDBASE", pszGisdb );
- G__setenv( "LOCATION_NAME", pszLoc );
- G__setenv( "MAPSET", pszMapset); // group is searched only in current mapset
- G_reset_mapsets();
- G_add_mapset_to_search_path ( pszMapset );
-
-/* -------------------------------------------------------------------- */
-/* Check if this is a valid grass cell. */
-/* -------------------------------------------------------------------- */
- if ( strcmp(pszElem,"cellhd") == 0 ) {
-
- if ( G_find_file2("cell", pszName, pszMapset) == NULL ) {
- free(pszGisdb); free(pszLoc); free(pszMapset); free(pszElem); free(pszName);
- return NULL;
- }
-
- papszMapsets = CSLAddString( papszMapsets, pszMapset );
- papszCells = CSLAddString( papszCells, pszName );
- }
-/* -------------------------------------------------------------------- */
-/* Check if this is a valid GRASS imagery group. */
-/* -------------------------------------------------------------------- */
- else {
- struct Ref ref;
-
- I_init_group_ref( &ref );
- if ( I_get_group_ref( pszName, &ref ) == 0 ) {
- free(pszGisdb); free(pszLoc); free(pszMapset); free(pszElem); free(pszName);
- return NULL;
- }
-
- for( int iRef = 0; iRef < ref.nfiles; iRef++ )
- {
- papszCells = CSLAddString( papszCells, ref.file[iRef].name );
- papszMapsets = CSLAddString( papszMapsets, ref.file[iRef].mapset );
- G_add_mapset_to_search_path ( ref.file[iRef].mapset );
- }
-
- I_free_group_ref( &ref );
- }
-
- free( pszMapset );
- free( pszName );
-
-/* -------------------------------------------------------------------- */
-/* Create a corresponding GDALDataset. */
-/* -------------------------------------------------------------------- */
- GRASSDataset *poDS;
-
- poDS = new GRASSDataset();
-
- /* notdef: should only allow read access to an existing cell, right? */
- poDS->eAccess = poOpenInfo->eAccess;
-
- poDS->pszGisdbase = pszGisdb;
- poDS->pszLocation = pszLoc;
- poDS->pszElement = pszElem;
-
-/* -------------------------------------------------------------------- */
-/* Capture some information from the file that is of interest. */
-/* -------------------------------------------------------------------- */
-
- if( G_get_cellhd( papszCells[0], papszMapsets[0], &(poDS->sCellInfo) ) != 0 ) {
- CPLError( CE_Warning, CPLE_AppDefined, "GRASS: Cannot open raster header");
- /* TODO: delete poDS ? */
- return NULL;
- }
-
- poDS->nRasterXSize = poDS->sCellInfo.cols;
- poDS->nRasterYSize = poDS->sCellInfo.rows;
-
- poDS->adfGeoTransform[0] = poDS->sCellInfo.west;
- poDS->adfGeoTransform[1] = poDS->sCellInfo.ew_res;
- poDS->adfGeoTransform[2] = 0.0;
- poDS->adfGeoTransform[3] = poDS->sCellInfo.north;
- poDS->adfGeoTransform[4] = 0.0;
- poDS->adfGeoTransform[5] = -1 * poDS->sCellInfo.ns_res;
-
-/* -------------------------------------------------------------------- */
-/* Try to get a projection definition. */
-/* -------------------------------------------------------------------- */
- struct Key_Value *projinfo, *projunits;
-
- if ( hasGisbase ) {
- projinfo = G_get_projinfo();
- projunits = G_get_projunits();
- poDS->pszProjection = GPJ_grass_to_wkt ( projinfo, projunits, 0, 0);
- }
-
-/* -------------------------------------------------------------------- */
-/* Create band information objects. */
-/* -------------------------------------------------------------------- */
- for( int iBand = 0; papszCells[iBand] != NULL; iBand++ )
- {
- GRASSRasterBand *rb = new GRASSRasterBand( poDS, iBand+1, papszMapsets[iBand],
- papszCells[iBand] );
-
- if ( !rb->valid ) {
- CPLError( CE_Warning, CPLE_AppDefined, "GRASS: Cannot open raster band %d", iBand);
- // TODO: delete poDS ?
- return NULL;
- }
-
- poDS->SetBand( iBand+1, rb );
- }
-
- return poDS;
-}
-
-/************************************************************************/
-/* GDALRegister_GRASS() */
-/************************************************************************/
-
-void GDALRegister_GRASS()
-{
- GDALDriver *poDriver;
-
- if( GDALGetDriverByName( "GRASS" ) == NULL )
- {
- poDriver = new GDALDriver();
-
- poDriver->SetDescription( "GRASS" );
- poDriver->SetMetadataItem( GDAL_DMD_LONGNAME,
- "GRASS Database Rasters (5.7+)" );
- poDriver->SetMetadataItem( GDAL_DMD_HELPTOPIC,
- "frmt_grass.html" );
-
- poDriver->pfnOpen = GRASSDataset::Open;
-
- GetGDALDriverManager()->RegisterDriver( poDriver );
- }
-}
-
Deleted: packages/gdal-grass/trunk/ogrgrass.h
===================================================================
--- packages/gdal-grass/trunk/ogrgrass.h 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/ogrgrass.h 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,186 +0,0 @@
-/******************************************************************************
- * $Id: ogrgrass.h,v 1.1 2005/08/05 15:32:43 fwarmerdam Exp $
- *
- * Project: OpenGIS Simple Features Reference Implementation
- * Purpose: Private definitions for OGR/GRASS driver.
- * Author: Radim Blazek, radim.blazek at gmail.com
- *
- ******************************************************************************
- * Copyright (c) 2005, Radim Blazek <radim.blazek at gmail.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- ******************************************************************************
- *
- * $Log: ogrgrass.h,v $
- * Revision 1.1 2005/08/05 15:32:43 fwarmerdam
- * New
- *
- *
- */
-
-#ifndef _OGRGRASS_H_INCLUDED
-#define _OGRGRASS_H_INLLUDED
-
-#include "ogrsf_frmts.h"
-
-extern "C" {
- #include <grass/gprojects.h>
- #include <grass/gis.h>
- #include <grass/dbmi.h>
- #include <grass/Vect.h>
-}
-
-/************************************************************************/
-/* OGRGRASSLayer */
-/************************************************************************/
-class OGRGRASSLayer : public OGRLayer
-{
- public:
- OGRGRASSLayer( int layer, struct Map_info * map );
- ~OGRGRASSLayer();
-
- // Layer info
- OGRFeatureDefn * GetLayerDefn() { return poFeatureDefn; }
- int GetFeatureCount( int );
- OGRErr GetExtent(OGREnvelope *psExtent, int bForce);
- virtual OGRSpatialReference *GetSpatialRef();
- int TestCapability( const char * );
-
- // Reading
- void ResetReading();
- virtual OGRErr SetNextByIndex( long nIndex );
- OGRFeature * GetNextFeature();
- OGRFeature *GetFeature( long nFeatureId );
-
- // Filters
- virtual OGRErr SetAttributeFilter( const char *query );
- virtual void SetSpatialFilter( OGRGeometry * poGeomIn );
-
- // Write access, not supported:
- virtual OGRErr CreateField( OGRFieldDefn *poField, int bApproxOK = TRUE );
- OGRErr SetFeature( OGRFeature *poFeature );
- OGRErr CreateFeature( OGRFeature *poFeature );
-
- private:
- char *pszName;
- OGRSpatialReference *poSRS;
- OGRFeatureDefn *poFeatureDefn;
- char *pszQuery; // Attribute filter string
-
- int iNextId;
- int nTotalCount;
- int iLayer; // Layer number
- int iLayerIndex; // Layer index (in GRASS category index)
- int iCatField; // Field where category (key) is stored
- int nFields;
- int *paFeatureIndex; // Array of indexes to category index array
-
- // Vector map
- struct Map_info *poMap;
- struct field_info *poLink;
-
- // Database connection
- bool bHaveAttributes;
-
- dbString *poDbString;
- dbDriver *poDriver;
- dbCursor *poCursor;
-
- bool bCursorOpened; // Sequential database cursor opened
- int iCurrentCat; // Current category in select cursor
-
- struct line_pnts *poPoints;
- struct line_cats *poCats;
-
- bool StartDbDriver ();
- bool StopDbDriver ();
-
- OGRGeometry *GetFeatureGeometry ( long nFeatureId, int *cat );
- bool SetAttributes ( OGRFeature *feature, dbTable *table );
-
- // Features matching spatial filter for ALL features/elements in GRASS
- char *paSpatialMatch;
- bool SetSpatialMatch();
-
- // Features matching attribute filter for ALL features/elements in GRASS
- char *paQueryMatch;
- bool OpenSequentialCursor();
- bool ResetSequentialCursor();
- bool SetQueryMatch();
-};
-
-/************************************************************************/
-/* OGRGRASSDataSource */
-/************************************************************************/
-class OGRGRASSDataSource : public OGRDataSource
-{
- public:
- OGRGRASSDataSource();
- ~OGRGRASSDataSource();
-
- int Open( const char *, int bUpdate, int bTestOpen,
- int bSingleNewFile = FALSE );
-
- const char *GetName() { return pszName; }
- int GetLayerCount() { return nLayers; }
- OGRLayer *GetLayer( int );
-
- int TestCapability( const char * );
-
- // Not implemented (returns NULL):
- virtual OGRLayer *CreateLayer( const char *,
- OGRSpatialReference * = NULL,
- OGRwkbGeometryType = wkbUnknown,
- char ** = NULL );
-
-
- private:
- OGRGRASSLayer **papoLayers;
- char *pszName; // Date source name
- char *pszGisdbase; // GISBASE
- char *pszLocation; // location name
- char *pszMapset; // mapset name
- char *pszMap; // name of vector map
-
- struct Map_info map;
- int nLayers;
-
- static bool SplitPath ( char *, char **, char **, char **, char ** );
-};
-
-/************************************************************************/
-/* OGRGRASSDriver */
-/************************************************************************/
-class OGRGRASSDriver : public OGRSFDriver
-{
- public:
- ~OGRGRASSDriver();
-
- const char *GetName();
- OGRDataSource *Open( const char *, int );
-
- int TestCapability( const char * );
-
- // Not implemented (return error/NULL):
- virtual OGRDataSource *CreateDataSource( const char *pszName,
- char ** = NULL );
- OGRErr DeleteDataSource( const char *pszDataSource );
-};
-
-#endif /* ndef _OGRGRASS_H_INCLUDED */
Deleted: packages/gdal-grass/trunk/ogrgrassdatasource.cpp
===================================================================
--- packages/gdal-grass/trunk/ogrgrassdatasource.cpp 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/ogrgrassdatasource.cpp 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,309 +0,0 @@
-/******************************************************************************
- * $Id: ogrgrassdatasource.cpp,v 1.1 2005/08/05 15:32:43 fwarmerdam Exp $
- *
- * Project: OpenGIS Simple Features Reference Implementation
- * Purpose: Implements OGRGRASSDataSource class.
- * Author: Radim Blazek, radim.blazek at gmail.com
- *
- ******************************************************************************
- * Copyright (c) 2005, Radim Blazek <radim.blazek at gmail.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- ******************************************************************************
- *
- * $Log: ogrgrassdatasource.cpp,v $
- * Revision 1.1 2005/08/05 15:32:43 fwarmerdam
- * New
- *
- *
- */
-
-#include "ogrgrass.h"
-#include "cpl_conv.h"
-#include "cpl_string.h"
-
-CPL_CVSID("$Id: ogrgrassdatasource.cpp,v 1.1 2005/08/05 15:32:43 fwarmerdam Exp $");
-
-/************************************************************************/
-/* Grass2CPLErrorHook() */
-/************************************************************************/
-int Grass2OGRErrorHook( char * pszMessage, int bFatal )
-{
- if( !bFatal )
- CPLError( CE_Warning, CPLE_AppDefined, "GRASS warning: %s", pszMessage );
- else
- CPLError( CE_Warning, CPLE_AppDefined, "GRASS fatal error: %s", pszMessage );
-
- return 0;
-}
-
-/************************************************************************/
-/* OGRGRASSDataSource() */
-/************************************************************************/
-OGRGRASSDataSource::OGRGRASSDataSource()
-{
- pszName = NULL;
- pszGisdbase = NULL;
- pszLocation = NULL;
- pszMapset = NULL;
- pszMap = NULL;
- papoLayers = NULL;
- nLayers = 0;
-}
-
-/************************************************************************/
-/* ~OGRGRASSDataSource() */
-/************************************************************************/
-OGRGRASSDataSource::~OGRGRASSDataSource()
-{
- CPLDebug ( "GRASS", "OGRGRASSDataSource::~OGRGRASSDataSource()" );
-
- for( int i = 0; i < nLayers; i++ )
- delete papoLayers[i];
-
- if ( pszName ) CPLFree( pszName );
- if ( papoLayers ) CPLFree( papoLayers );
- if ( pszGisdbase ) CPLFree( pszGisdbase );
- if ( pszLocation ) CPLFree( pszLocation );
- if ( pszMapset ) CPLFree( pszMapset );
- if ( pszMap ) CPLFree( pszMap );
-}
-
-/************************************************************************/
-/* Open() */
-/************************************************************************/
-typedef int (*GrassErrorHandler)(char *, int);
-
-int OGRGRASSDataSource::Open( const char * pszNewName, int bUpdate,
- int bTestOpen, int bSingleNewFileIn )
-{
- CPLDebug ( "GRASS", "OGRGRASSDataSource::Open" );
-
- VSIStatBuf stat;
-
- CPLAssert( nLayers == 0 );
-
- pszName = CPLStrdup( pszNewName ); // Released by destructor
-
-/* -------------------------------------------------------------------- */
-/* Do the given path contains 'vector' and 'head'? */
-/* -------------------------------------------------------------------- */
- if ( strstr(pszName,"vector") == NULL || strstr(pszName,"head") == NULL )
- {
- if( !bTestOpen )
- {
- CPLError( CE_Failure, CPLE_AppDefined,
- "%s is not GRASS vector, access failed.\n", pszName );
- }
- return FALSE;
- }
-
-/* -------------------------------------------------------------------- */
-/* Is the given a regular file? */
-/* -------------------------------------------------------------------- */
- if( CPLStat( pszName, &stat ) != 0 || !VSI_ISREG(stat.st_mode) )
- {
- if( !bTestOpen )
- {
- CPLError( CE_Failure, CPLE_AppDefined,
- "%s is not GRASS vector, access failed.\n", pszName );
- }
-
- return FALSE;
- }
-
-/* -------------------------------------------------------------------- */
-/* Parse datasource name */
-/* -------------------------------------------------------------------- */
- if ( !SplitPath(pszName, &pszGisdbase, &pszLocation,
- &pszMapset, &pszMap) )
- {
- if( !bTestOpen )
- {
- CPLError( CE_Failure, CPLE_AppDefined,
- "%s is not GRASS datasource name, access failed.\n",
- pszName );
- }
- return FALSE;
- }
-
- CPLDebug ( "GRASS", "Gisdbase: %s", pszGisdbase );
- CPLDebug ( "GRASS", "Location: %s", pszLocation );
- CPLDebug ( "GRASS", "Mapset: %s", pszMapset );
- CPLDebug ( "GRASS", "Map: %s", pszMap );
-
-/* -------------------------------------------------------------------- */
-/* Init GRASS library */
-/* -------------------------------------------------------------------- */
- // GISBASE is path to the directory where GRASS is installed,
- // it is necessary because there are database drivers.
- if ( !getenv( "GISBASE" ) ) {
- char *gisbase = GRASS_GISBASE;
- CPLError( CE_Warning, CPLE_AppDefined, "GRASS warning: GISBASE "
- "enviroment variable was not set, using:\n%s", gisbase );
- char buf[2000];
- sprintf ( buf, "GISBASE=%s", gisbase );
-
- char *gisbaseEnv = CPLStrdup ( buf );
- putenv( gisbaseEnv );
- }
-
- // Don't use GISRC file and read/write GRASS variables
- // (from location G_VAR_GISRC) to memory only.
- G_set_gisrc_mode ( G_GISRC_MODE_MEMORY );
-
- // Init GRASS libraries (required). G_no_gisinit() doesn't check
- // write permissions for mapset compare to G_gisinit()
- G_no_gisinit();
-
- // Set error function
- G_set_error_routine ( (GrassErrorHandler) Grass2OGRErrorHook );
-
-/* -------------------------------------------------------------------- */
-/* Set GRASS variables */
-/* -------------------------------------------------------------------- */
- G__setenv( "GISDBASE", pszGisdbase );
- G__setenv( "LOCATION_NAME", pszLocation );
- G__setenv( "MAPSET", pszMapset);
- G_reset_mapsets();
- G_add_mapset_to_search_path ( pszMapset );
-
-/* -------------------------------------------------------------------- */
-/* Open GRASS vector map */
-/* -------------------------------------------------------------------- */
- Vect_set_fatal_error ( GV_FATAL_PRINT ); // Print error and continue
- Vect_set_open_level (2);
- int level = Vect_open_old ( &map, pszMap, pszMapset);
-
- if ( level < 2 ) {
- CPLError( CE_Failure, CPLE_AppDefined,
- "Cannot open GRASS vector %s on level 2.\n", pszName );
- return FALSE;
- }
-
- CPLDebug ( "GRASS", "Num lines = %d", Vect_get_num_lines(&map) );
-
-/* -------------------------------------------------------------------- */
-/* Build a list of layers. */
-/* -------------------------------------------------------------------- */
- int ncidx = Vect_cidx_get_num_fields ( &map );
- CPLDebug ( "GRASS", "Num layers = %d", ncidx );
-
- for ( int i = 0; i < ncidx; i++ ) {
- // Create the layer object
- OGRGRASSLayer *poLayer;
-
- poLayer = new OGRGRASSLayer( i, &map );
-
- // Add layer to data source layer list
- papoLayers = (OGRGRASSLayer **)
- CPLRealloc( papoLayers, sizeof(OGRGRASSLayer *) * (nLayers+1) );
- papoLayers[nLayers++] = poLayer;
- }
-
- return TRUE;
-}
-
-/************************************************************************/
-/* CreateLayer() */
-/************************************************************************/
-OGRLayer *
-OGRGRASSDataSource::CreateLayer( const char * pszLayerName,
- OGRSpatialReference *poSRS,
- OGRwkbGeometryType eType,
- char ** papszOptions )
-
-{
- CPLError( CE_Failure, CPLE_NoWriteAccess,
- "CreateLayer is not supported by GRASS driver" );
-
- return NULL;
-}
-
-/************************************************************************/
-/* TestCapability() */
-/************************************************************************/
-int OGRGRASSDataSource::TestCapability( const char * pszCap )
-{
- return FALSE;
-}
-
-/************************************************************************/
-/* GetLayer() */
-/************************************************************************/
-OGRLayer *OGRGRASSDataSource::GetLayer( int iLayer )
-{
- if( iLayer < 0 || iLayer >= nLayers )
- return NULL;
- else
- return papoLayers[iLayer];
-}
-
-/************************************************************************/
-/* SplitPath() */
-/* Split full path to cell or group to: */
-/* gisdbase, location, mapset, name */
-/* New string are allocated and should be freed when no longer needed. */
-/* */
-/* Returns: true - OK */
-/* false - failed */
-/************************************************************************/
-bool OGRGRASSDataSource::SplitPath( char *path, char **gisdbase,
- char **location, char **mapset, char **map )
-{
- char *p, *ptr[5], *tmp;
- int i = 0;
-
- CPLDebug ( "GRASS", "OGRGRASSDataSource::SplitPath" );
-
- *gisdbase = *location = *mapset = *map = NULL;
-
- if ( !path || strlen(path) == 0 )
- return false;
-
- tmp = G_store ( path );
-
- while ( (p = strrchr(tmp,'/')) != NULL && i < 5 ) {
- *p = '\0';
-
- if ( strlen(p+1) == 0 ) /* repeated '/' */
- continue;
-
- ptr[i++] = p+1;
- }
-
- /* Note: empty GISDBASE == 0 is not accepted (relative path) */
- if ( i != 5 ) {
- free ( tmp );
- return false;
- }
-
- if ( strcmp(ptr[0],"head") != 0 || strcmp(ptr[2],"vector") != 0 ) {
- return false;
- }
-
- *gisdbase = G_store ( tmp );
- *location = G_store ( ptr[4] );
- *mapset = G_store ( ptr[3] );
- *map = G_store ( ptr[1] );
-
- free ( tmp );
- return true;
-}
-
Deleted: packages/gdal-grass/trunk/ogrgrassdriver.cpp
===================================================================
--- packages/gdal-grass/trunk/ogrgrassdriver.cpp 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/ogrgrassdriver.cpp 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,117 +0,0 @@
-/******************************************************************************
- * $Id: ogrgrassdriver.cpp,v 1.1 2005/08/05 15:32:43 fwarmerdam Exp $
- *
- * Project: OpenGIS Simple Features Reference Implementation
- * Purpose: Implements OGRGRASSDriver class.
- * Author: Radim Blazek, radim.blazek at gmail.com
- *
- ******************************************************************************
- * Copyright (c) 2005, Radim Blazek <radim.blazek at gmail.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- ******************************************************************************
- *
- * $Log: ogrgrassdriver.cpp,v $
- * Revision 1.1 2005/08/05 15:32:43 fwarmerdam
- * New
- *
- *
- */
-
-#include "ogrgrass.h"
-#include "cpl_conv.h"
-#include "cpl_string.h"
-
-CPL_CVSID("$Id: ogrgrassdriver.cpp,v 1.1 2005/08/05 15:32:43 fwarmerdam Exp $");
-
-/************************************************************************/
-/* ~OGRGRASSDriver() */
-/************************************************************************/
-OGRGRASSDriver::~OGRGRASSDriver()
-{
-}
-
-/************************************************************************/
-/* GetName() */
-/************************************************************************/
-const char *OGRGRASSDriver::GetName()
-{
- return "GRASS";
-}
-
-/************************************************************************/
-/* Open() */
-/************************************************************************/
-OGRDataSource *OGRGRASSDriver::Open( const char * pszFilename,
- int bUpdate )
-{
- OGRGRASSDataSource *poDS;
-
- poDS = new OGRGRASSDataSource();
-
- if( !poDS->Open( pszFilename, bUpdate, TRUE ) )
- {
- delete poDS;
- return NULL;
- }
- else
- {
- return poDS;
- }
-}
-
-/************************************************************************/
-/* CreateDataSource() */
-/************************************************************************/
-OGRDataSource *OGRGRASSDriver::CreateDataSource( const char * pszName,
- char **papszOptions )
-{
- CPLError( CE_Failure, CPLE_AppDefined,
- "CreateDataSource is not supported by GRASS driver.\n" );
-
- return NULL;
-}
-
-/************************************************************************/
-/* DeleteDataSource() */
-/************************************************************************/
-OGRErr OGRGRASSDriver::DeleteDataSource( const char *pszDataSource )
-{
- CPLError( CE_Failure, CPLE_AppDefined,
- "DeleteDataSource is not supported by GRASS driver" );
-
- return OGRERR_FAILURE;
-}
-
-/************************************************************************/
-/* TestCapability() */
-/************************************************************************/
-int OGRGRASSDriver::TestCapability( const char * pszCap )
-{
- return FALSE;
-}
-
-/************************************************************************/
-/* RegisterOGRGRASS() */
-/************************************************************************/
-void RegisterOGRGRASS()
-{
- OGRSFDriverRegistrar::GetRegistrar()->RegisterDriver( new OGRGRASSDriver );
-}
-
Deleted: packages/gdal-grass/trunk/ogrgrasslayer.cpp
===================================================================
--- packages/gdal-grass/trunk/ogrgrasslayer.cpp 2007-12-04 11:28:04 UTC (rev 1285)
+++ packages/gdal-grass/trunk/ogrgrasslayer.cpp 2007-12-05 09:28:28 UTC (rev 1286)
@@ -1,1074 +0,0 @@
-/******************************************************************************
- * $Id: ogrgrasslayer.cpp,v 1.4 2006/07/31 15:49:30 fwarmerdam Exp $
- *
- * Project: OpenGIS Simple Features Reference Implementation
- * Purpose: Implements OGRGRASSLayer class.
- * Author: Radim Blazek, radim.blazek at gmail.com
- *
- ******************************************************************************
- * Copyright (c) 2005, Radim Blazek <radim.blazek at gmail.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- ******************************************************************************
- *
- * $Log: ogrgrasslayer.cpp,v $
- * Revision 1.4 2006/07/31 15:49:30 fwarmerdam
- * Try and enable datetime support per email from Markus. Not tested yet.
- *
- * Revision 1.3 2006/02/14 13:01:49 rblazek
- * dont kill on win
- *
- * Revision 1.2 2005/09/21 00:59:36 fwarmerdam
- * fixup OGRFeatureDefn and OGRSpatialReference refcount handling
- *
- * Revision 1.1 2005/08/05 15:32:43 fwarmerdam
- * New
- *
- *
- */
-
-#include <signal.h>
-#include "ogrgrass.h"
-#include "cpl_conv.h"
-
-CPL_CVSID("$Id: ogrgrasslayer.cpp,v 1.4 2006/07/31 15:49:30 fwarmerdam Exp $");
-
-/************************************************************************/
-/* OGRGRASSLayer() */
-/************************************************************************/
-OGRGRASSLayer::OGRGRASSLayer( int layerIndex, struct Map_info * map )
-{
- CPLDebug ( "GRASS", "OGRGRASSLayer::OGRGRASSLayer layerIndex = %d", layerIndex );
-
- iLayerIndex = layerIndex;
- poMap = map;
- poSRS = NULL;
- iNextId = 0;
- poPoints = Vect_new_line_struct();
- poCats = Vect_new_cats_struct();
- pszQuery = NULL;
- paQueryMatch = NULL;
- paSpatialMatch = NULL;
-
- iLayer = Vect_cidx_get_field_number ( poMap, iLayerIndex);
- CPLDebug ( "GRASS", "iLayer = %d", iLayer );
-
- poLink = Vect_get_field ( poMap, iLayer ); // May be NULL if not defined
-
- // Layer name
- if ( poLink && poLink->name )
- {
- pszName = CPLStrdup( poLink->name );
- }
- else
- {
- char buf[20];
- sprintf ( buf, "%d", iLayer );
- pszName = CPLStrdup( buf );
- }
-
- // Because we don't represent centroids as any simple feature, we have to scan
- // category index and create index of feature IDs pointing to category index
- nTotalCount = Vect_cidx_get_type_count(poMap,iLayer, GV_POINT|GV_LINES|GV_AREA);
- CPLDebug ( "GRASS", "nTotalCount = %d", nTotalCount );
- paFeatureIndex = (int *) CPLMalloc ( nTotalCount * sizeof(int) );
-
- int n = Vect_cidx_get_type_count(poMap,iLayer, GV_POINTS|GV_LINES|GV_AREA);
- int cnt = 0;
- for ( int i = 0; i < n; i++ )
- {
- int cat,type, id;
-
- Vect_cidx_get_cat_by_index ( poMap, iLayerIndex, i, &cat, &type, &id );
-
- if ( !( type & (GV_POINT|GV_LINES|GV_AREA) ) ) continue;
- paFeatureIndex[cnt++] = i;
- }
-
- poFeatureDefn = new OGRFeatureDefn( pszName );
- poFeatureDefn->Reference();
-
- // Get type definition
- int nTypes = Vect_cidx_get_num_types_by_index ( poMap, iLayerIndex );
- int types = 0;
- for ( int i = 0; i < nTypes; i++ ) {
- int type, count;
- Vect_cidx_get_type_count_by_index ( poMap, iLayerIndex, i, &type, &count);
- if ( !(type & (GV_POINT|GV_LINES|GV_AREA) ) ) continue;
- types |= type;
- CPLDebug ( "GRASS", "type = %d types = %d", type, types );
- }
- if ( types == GV_LINE || types == GV_BOUNDARY || types == GV_LINES )
- {
- poFeatureDefn->SetGeomType ( wkbLineString );
- }
- else if ( types == GV_POINT )
- {
- poFeatureDefn->SetGeomType ( wkbPoint );
- }
- else if ( types == GV_AREA )
- {
- CPLDebug ( "GRASS", "set wkbPolygon" );
- poFeatureDefn->SetGeomType ( wkbPolygon );
- }
-
- // Get attributes definition
- poDbString = (dbString*) CPLMalloc ( sizeof(dbString) );
- poCursor = (dbCursor*) CPLMalloc ( sizeof(dbCursor) );
- bCursorOpened = FALSE;
-
- poDriver = NULL;
- bHaveAttributes = false;
- db_init_string ( poDbString );
- if ( poLink )
- {
- if ( StartDbDriver() )
- {
- db_set_string ( poDbString, poLink->table );
- dbTable *table;
- if ( db_describe_table ( poDriver, poDbString, &table) == DB_OK )
- {
- nFields = db_get_table_number_of_columns ( table );
- iCatField = -1;
- for ( int i = 0; i < nFields; i++)
- {
- dbColumn *column = db_get_table_column ( table, i );
- int ctype = db_sqltype_to_Ctype ( db_get_column_sqltype(column) );
-
- OGRFieldType ogrFtype = OFTInteger;
- switch ( ctype ) {
- case DB_C_TYPE_INT:
- ogrFtype = OFTInteger;
- break;
- case DB_C_TYPE_DOUBLE:
- ogrFtype = OFTReal;
- break;
- case DB_C_TYPE_STRING:
- ogrFtype = OFTString;
- break;
- case DB_C_TYPE_DATETIME:
- ogrFtype = OFTDateTime;
- break;
- }
-
- CPLDebug ( "GRASS", "column = %s type = %d",
- db_get_column_name(column), ctype );
-
- OGRFieldDefn oField ( db_get_column_name(column), ogrFtype );
- poFeatureDefn->AddFieldDefn( &oField );
-
- if ( G_strcasecmp(db_get_column_name(column),poLink->key) == 0 )
- {
- iCatField = i;
- }
- }
- if ( iCatField >= 0 )
- {
- bHaveAttributes = true;
- }
- else
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot find key field" );
- db_close_database_shutdown_driver ( poDriver );
- poDriver = NULL;
- }
- }
- else
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot describe table %s",
- poLink->table );
-
- }
- db_close_database_shutdown_driver ( poDriver );
- poDriver = NULL;
- }
- }
-
- if ( !bHaveAttributes && iLayer > 0 ) // Because features in layer 0 have no cats
- {
- OGRFieldDefn oField("cat", OFTInteger);
- poFeatureDefn->AddFieldDefn( &oField );
- }
-
- if ( getenv("GISBASE") ) // We have some projection info in GISBASE
- {
- struct Key_Value *projinfo, *projunits;
-
- // Note: we dont have to reset GISDBASE and LOCATION_NAME because
- // OGRGRASSLayer constructor is called from OGRGRASSDataSource::Open
- // where those variables are set
-
- projinfo = G_get_projinfo();
- projunits = G_get_projunits();
-
- char *srsWkt = GPJ_grass_to_wkt ( projinfo, projunits, 0, 0);
- if ( srsWkt )
- {
- poSRS = new OGRSpatialReference ( srsWkt );
- CPLFree ( srsWkt );
- }
- }
-}
-
-/************************************************************************/
-/* ~OGRGRASSLayer() */
-/************************************************************************/
-OGRGRASSLayer::~OGRGRASSLayer()
-{
- if ( bCursorOpened )
- {
- db_close_cursor ( poCursor);
- }
-
- if ( poDriver )
- {
- StopDbDriver();
- }
-
- if ( pszName ) CPLFree ( pszName );
- if ( poFeatureDefn )
- poFeatureDefn->Release();
- if ( poSRS )
- poSRS->Release();
-
- if ( pszQuery ) CPLFree ( pszQuery );
-
- if ( paFeatureIndex ) CPLFree ( paFeatureIndex );
-
- if ( poLink ) CPLFree ( poLink );
-
- Vect_destroy_line_struct ( poPoints );
- Vect_destroy_cats_struct ( poCats );
-
- db_free_string ( poDbString );
- CPLFree ( poDbString );
- CPLFree ( poCursor );
-
- if ( paSpatialMatch ) CPLFree ( paSpatialMatch );
- if ( paQueryMatch ) CPLFree ( paQueryMatch );
-}
-
-/************************************************************************/
-/* StartDbDriver */
-/************************************************************************/
-bool OGRGRASSLayer::StartDbDriver()
-{
- CPLDebug ( "GRASS", "StartDbDriver()" );
-
- bCursorOpened = false;
-
- if ( !poLink )
- {
- return false;
- }
- poDriver = db_start_driver_open_database ( poLink->driver, poLink->database );
-
- if ( poDriver == NULL)
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot open database %s by driver %s, "
- "check if GISBASE enviroment variable is set, the driver is available "
- " and the database is accessible.", poLink->driver, poLink->database );
- return false;
- }
- return true;
-}
-
-/************************************************************************/
-/* StopDbDriver */
-/************************************************************************/
-bool OGRGRASSLayer::StopDbDriver()
-{
- if ( !poDriver )
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Driver is not started" );
- return true; // I think that true is OK here
- }
-
- // TODO!!!: Because of bug in GRASS library it is impossible
- // to stop drivers in FIFO order. Until this is fixed
- // we have to use kill
- CPLDebug ( "GRASS", "driver PID = %d", poDriver->pid );
-
-#if defined(_WIN32) || defined(__WIN32__)
- db_close_database_shutdown_driver ( poDriver );
-#else
- if ( kill (poDriver->pid, SIGINT) != 0 )
- {
- if ( kill (poDriver->pid, SIGKILL) != 0 )
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot stop database "
- "driver pid = %d", poDriver->pid );
- }
- }
-#endif
-
- bCursorOpened = false;
-
- return true;
-}
-
-/************************************************************************/
-/* ResetReading() */
-/************************************************************************/
-void OGRGRASSLayer::ResetReading()
-{
- iNextId = 0;
-
- if ( bCursorOpened ) {
- ResetSequentialCursor();
- }
-}
-
-/************************************************************************/
-/* SetNextByIndex() */
-/* */
-/* If we already have an FID list, we can easily resposition */
-/* ourselves in it. */
-/************************************************************************/
-OGRErr OGRGRASSLayer::SetNextByIndex( long nIndex )
-{
- if( m_poFilterGeom != NULL || m_poAttrQuery != NULL )
- {
- iNextId = 0;
- int count = 0;
-
- while ( true ) {
- if( iNextId >= nTotalCount ) break;
- if ( count == nIndex ) break;
-
- // Attributes
- if( pszQuery != NULL && !paQueryMatch[iNextId] ) {
- iNextId++;
- continue;
- }
-
- // Spatial
- if( m_poFilterGeom && !paSpatialMatch[iNextId] ) {
- iNextId++;
- continue;
- }
- count++;
- }
- }
-
- iNextId = nIndex;
-
- return OGRERR_NONE;
-}
-
-/************************************************************************/
-/* SetAttributeFilter */
-/************************************************************************/
-OGRErr OGRGRASSLayer::SetAttributeFilter( const char *query )
-{
- CPLDebug ( "GRASS", "SetAttributeFilter: %s", query );
-
- if ( query == NULL ) {
- // Release old if any
- if ( pszQuery ) {
- CPLFree ( pszQuery );
- pszQuery = NULL;
- }
- if ( paQueryMatch ) {
- CPLFree ( paQueryMatch );
- paQueryMatch = NULL;
- }
- return OGRERR_NONE;
- }
-
- paQueryMatch = (char *) CPLMalloc ( nTotalCount );
- memset ( paQueryMatch, 0x0, nTotalCount );
- pszQuery = strdup ( query );
-
- OGRLayer::SetAttributeFilter(query); // Otherwise crash on delete
-
- if ( bHaveAttributes ) {
-
- if ( !poDriver )
- {
- StartDbDriver();
- }
-
- if ( poDriver )
- {
- if ( bCursorOpened )
- {
- db_close_cursor ( poCursor );
- bCursorOpened = false;
- }
- OpenSequentialCursor();
- if ( bCursorOpened )
- {
- SetQueryMatch();
- db_close_cursor ( poCursor );
- bCursorOpened = false;
- }
- else
- {
- CPLFree ( pszQuery );
- pszQuery = NULL;
- return OGRERR_FAILURE;
- }
- db_close_database_shutdown_driver ( poDriver );
- poDriver = NULL;
- }
- else
- {
- CPLFree ( pszQuery );
- pszQuery = NULL;
- return OGRERR_FAILURE;
- }
- }
- else
- {
- // Use OGR to evaluate category match
- for ( int i = 0; i < nTotalCount; i++ )
- {
- OGRFeature *feature = GetFeature(i);
- CPLDebug ( "GRASS", "i = %d eval = %d", i, m_poAttrQuery->Evaluate ( feature ) );
- if ( m_poAttrQuery->Evaluate ( feature ) )
- {
- paQueryMatch[i] = 1;
- }
- }
- }
-
- return OGRERR_NONE;
-}
-
-/************************************************************************/
-/* SetQueryMatch */
-/************************************************************************/
-bool OGRGRASSLayer::SetQueryMatch()
-{
- CPLDebug ( "GRASS", "SetQueryMatch" );
-
- // NOTE: we don't have to call ResetSequentialCursor() first because
- // this method is called immediately after OpenSequentialCursor()
-
- if ( !bCursorOpened ) {
- CPLError( CE_Failure, CPLE_AppDefined, "Cursor is not opened.");
- return false;
- }
-
- int more;
- int cidx = 0; // index to category index
- int fidx = 0; // index to feature index (paFeatureIndex)
- // number of categories in category index
- int ncats = Vect_cidx_get_num_cats_by_index ( poMap, iLayerIndex );
- dbTable *table = db_get_cursor_table ( poCursor );
- while ( true ) {
- if( db_fetch ( poCursor, DB_NEXT, &more) != DB_OK )
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot fetch attributes.");
- return false;
- }
- if ( !more ) break;
-
- dbColumn *column = db_get_table_column ( table, iCatField );
- dbValue *value = db_get_column_value ( column );
- int cat = db_get_value_int ( value );
-
- // NOTE: because of bug in GRASS library it is impossible to use
- // Vect_cidx_find_next
-
- // Go through category index until first record of current category
- // is found or a category > current is found
- int cidxcat, type, id;
- while ( cidx < ncats ) {
- Vect_cidx_get_cat_by_index ( poMap, iLayerIndex, cidx,
- &cidxcat, &type, &id );
-
- if ( cidxcat < cat ) {
- cidx++;
- continue;
- }
- if ( cidxcat > cat ) break; // Not found
-
- // We have the category we want, check type
- if ( !(type & (GV_POINT|GV_LINES|GV_AREA)) )
- {
- cidx++;
- continue;
- }
-
- // Both category and type match -> find feature and set it on
- while ( true ) {
- if ( fidx > nTotalCount || paFeatureIndex[fidx] > cidx ) {
- // should not happen
- break;
- }
-
- if ( paFeatureIndex[fidx] == cidx ) {
- paQueryMatch[fidx] = 1;
- fidx++;
- break;
- }
- fidx++;
- }
- cidx++;
- }
-
- if ( id < 0 ) continue; // not found
- }
-
- return true;
-}
-
-/************************************************************************/
-/* OpenSequentialCursor */
-/************************************************************************/
-bool OGRGRASSLayer::OpenSequentialCursor()
-{
- CPLDebug ( "GRASS", "OpenSequentialCursor: %s", pszQuery );
-
- if ( !poDriver )
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Driver not opened.");
- return false;
- }
-
- if ( bCursorOpened )
- {
- db_close_cursor ( poCursor );
- bCursorOpened = false;
- }
-
- char buf[2000];
- sprintf ( buf, "SELECT * FROM %s ", poLink->table );
- db_set_string ( poDbString, buf);
-
- if ( pszQuery ) {
- sprintf ( buf, "WHERE %s ", pszQuery );
- db_append_string ( poDbString, buf);
- }
-
- sprintf ( buf, "ORDER BY %s", poLink->key);
- db_append_string ( poDbString, buf);
-
- CPLDebug ( "GRASS", "Query: %s", db_get_string(poDbString) );
-
- if ( db_open_select_cursor ( poDriver, poDbString,
- poCursor, DB_SCROLL) == DB_OK )
- {
- iCurrentCat = -1;
- bCursorOpened = true;
- CPLDebug ( "GRASS", "num rows = %d", db_get_num_rows ( poCursor ) );
- }
- else
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot open cursor.");
- return false;
- }
- return true;
-}
-
-/************************************************************************/
-/* ResetSequentialCursor */
-/************************************************************************/
-bool OGRGRASSLayer::ResetSequentialCursor()
-{
- CPLDebug ( "GRASS", "ResetSequentialCursor" );
-
- int more;
- if( db_fetch ( poCursor, DB_FIRST, &more) != DB_OK )
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot reset cursor.");
- return false;
- }
- if( db_fetch ( poCursor, DB_PREVIOUS, &more) != DB_OK )
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot reset cursor.");
- return false;
- }
- return true;
-}
-
-/************************************************************************/
-/* SetSpatialFilter */
-/************************************************************************/
-void OGRGRASSLayer::SetSpatialFilter( OGRGeometry * poGeomIn )
-{
- CPLDebug ( "GRASS", "SetSpatialFilter" );
-
- OGRLayer::SetSpatialFilter ( poGeomIn );
-
- if ( poGeomIn == NULL ) {
- // Release old if any
- if ( paSpatialMatch ) {
- CPLFree ( paSpatialMatch );
- paSpatialMatch = NULL;
- }
- return;
- }
-
- SetSpatialMatch();
-}
-
-/************************************************************************/
-/* SetSpatialMatch */
-/************************************************************************/
-bool OGRGRASSLayer::SetSpatialMatch()
-{
- CPLDebug ( "GRASS", "SetSpatialMatch" );
-
- if ( !paSpatialMatch )
- {
- paSpatialMatch = (char *) CPLMalloc ( nTotalCount );
- }
- memset ( paSpatialMatch, 0x0, nTotalCount );
-
- OGRGeometry *geom;
- OGRLineString *lstring = new OGRLineString();
- lstring->setNumPoints ( 5 );
- geom = lstring;
-
- for ( int i = 0; i < nTotalCount; i++ ) {
- int cidx = paFeatureIndex[i];
-
- int cat, type, id;
-
- Vect_cidx_get_cat_by_index ( poMap, iLayerIndex, cidx, &cat, &type, &id );
-
- BOUND_BOX box;
-
- switch ( type )
- {
- case GV_POINT:
- case GV_LINE:
- case GV_BOUNDARY:
- Vect_get_line_box ( poMap, id, &box );
- break;
-
- case GV_AREA:
- Vect_get_area_box ( poMap, id, &box );
- break;
- }
-
- lstring->setPoint( 0, box.W, box.N, 0. );
- lstring->setPoint( 1, box.W, box.S, 0. );
- lstring->setPoint( 2, box.E, box.S, 0. );
- lstring->setPoint( 3, box.E, box.N, 0. );
- lstring->setPoint( 4, box.W, box.N, 0. );
-
- if ( FilterGeometry(geom) ) {
- CPLDebug ( "GRASS", "Feature %d in filter", i );
- paSpatialMatch[i] = 1;
- }
- }
- delete lstring;
- return true;
-}
-
-/************************************************************************/
-/* GetNextFeature() */
-/************************************************************************/
-OGRFeature *OGRGRASSLayer::GetNextFeature()
-{
- CPLDebug ( "GRASS", "OGRGRASSLayer::GetNextFeature" );
- OGRFeature *poFeature = NULL;
-
- int cat;
-
- // Get next iNextId
- while ( true ) {
- if( iNextId >= nTotalCount ) // No more features
- {
- // Close cursor / driver if opened
- if ( bCursorOpened )
- {
- db_close_cursor ( poCursor);
- bCursorOpened = false;
- }
- if ( poDriver )
- {
- db_close_database_shutdown_driver ( poDriver );
- poDriver = NULL;
- }
-
- return NULL;
- }
-
- // Attributes
- if( pszQuery != NULL && !paQueryMatch[iNextId] ) {
- iNextId++;
- continue;
- }
-
- // Spatial
- if( m_poFilterGeom && !paSpatialMatch[iNextId] ) {
- iNextId++;
- continue;
- }
-
- break; // Attributes & spatial filter match
- }
-
- OGRGeometry *poOGR = GetFeatureGeometry ( iNextId, &cat );
-
- poFeature = new OGRFeature( poFeatureDefn );
- poFeature->SetGeometryDirectly( poOGR );
- poFeature->SetFID ( iNextId );
- iNextId++;
-
- // Get attributes
- CPLDebug ( "GRASS", "bHaveAttributes = %d", bHaveAttributes );
- if ( bHaveAttributes )
- {
- if ( !poDriver )
- {
- StartDbDriver();
- }
- if ( poDriver ) {
- if ( !bCursorOpened )
- {
- OpenSequentialCursor();
- }
- if ( bCursorOpened )
- {
- dbTable *table = db_get_cursor_table ( poCursor );
- if ( iCurrentCat < cat )
- {
- while ( true ) {
- int more;
- if( db_fetch ( poCursor, DB_NEXT, &more) != DB_OK )
- {
- CPLError( CE_Failure, CPLE_AppDefined,
- "Cannot fetch attributes.");
- break;
- }
- if ( !more ) break;
-
- dbColumn *column = db_get_table_column ( table, iCatField );
- dbValue *value = db_get_column_value ( column );
- iCurrentCat = db_get_value_int ( value );
-
- if ( iCurrentCat >= cat ) break;
- }
- }
- if ( cat == iCurrentCat )
- {
- SetAttributes ( poFeature, table );
- }
- else
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Attributes not found.");
- }
- }
- }
- }
- else if ( iLayer > 0 ) // Add category
- {
- poFeature->SetField( 0, cat );
- }
-
- m_nFeaturesRead++;
- return poFeature;
-}
-/************************************************************************/
-/* GetFeature() */
-/************************************************************************/
-OGRFeature *OGRGRASSLayer::GetFeature( long nFeatureId )
-
-{
- CPLDebug ( "GRASS", "OGRGRASSLayer::GetFeature nFeatureId = %d", nFeatureId );
-
- int cat;
- OGRFeature *poFeature = NULL;
-
- OGRGeometry *poOGR = GetFeatureGeometry ( nFeatureId, &cat );
-
- poFeature = new OGRFeature( poFeatureDefn );
- poFeature->SetGeometryDirectly( poOGR );
- poFeature->SetFID ( nFeatureId );
-
- // Get attributes
- if ( bHaveAttributes && !poDriver )
- {
- StartDbDriver();
- }
- if ( poDriver )
- {
- if ( bCursorOpened )
- {
- db_close_cursor ( poCursor);
- bCursorOpened = false;
- }
- CPLDebug ( "GRASS", "Open cursor for key = %d", cat );
- char buf[2000];
- sprintf ( buf, "SELECT * FROM %s WHERE %s = %d",
- poLink->table, poLink->key, cat );
- db_set_string ( poDbString, buf);
- if ( db_open_select_cursor ( poDriver, poDbString,
- poCursor, DB_SEQUENTIAL) == DB_OK )
- {
- iCurrentCat = cat; // Not important
- bCursorOpened = true;
- }
- else
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot open cursor.");
- }
-
- if ( bCursorOpened )
- {
- int more;
- if( db_fetch ( poCursor, DB_NEXT, &more) != DB_OK )
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Cannot fetch attributes.");
- }
- else
- {
- if ( !more )
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Attributes not found.");
- }
- else
- {
- dbTable *table = db_get_cursor_table ( poCursor );
- SetAttributes ( poFeature, table );
- }
- }
- db_close_cursor ( poCursor);
- bCursorOpened = false;
- }
- }
- else if ( iLayer > 0 ) // Add category
- {
- poFeature->SetField( 0, cat );
- }
-
- m_nFeaturesRead++;
- return poFeature;
-}
-
-/************************************************************************/
-/* GetFeatureGeometry() */
-/************************************************************************/
-OGRGeometry *OGRGRASSLayer::GetFeatureGeometry ( long nFeatureId, int *cat )
-{
- CPLDebug ( "GRASS", "OGRGRASSLayer::GetFeatureGeometry nFeatureId = %d", nFeatureId );
-
- int cidx = paFeatureIndex[(int)nFeatureId];
-
- int type, id;
- Vect_cidx_get_cat_by_index ( poMap, iLayerIndex, cidx, cat, &type, &id );
-
- //CPLDebug ( "GRASS", "cat = %d type = %d id = %d", *cat, type, id );
-
- OGRGeometry *poOGR = NULL;
-
- switch ( type ) {
- case GV_POINT:
- {
- Vect_read_line ( poMap, poPoints, poCats, id);
- poOGR = new OGRPoint( poPoints->x[0], poPoints->y[0], poPoints->z[0] );
- }
- break;
-
- case GV_LINE:
- case GV_BOUNDARY:
- {
- Vect_read_line ( poMap, poPoints, poCats, id);
- OGRLineString *poOGRLine = new OGRLineString();
- poOGRLine->setPoints( poPoints->n_points,
- poPoints->x, poPoints->y, poPoints->z );
-
- poOGR = poOGRLine;
- }
- break;
-
- case GV_AREA:
- {
- Vect_get_area_points ( poMap, id, poPoints );
-
- OGRPolygon *poOGRPoly;
- poOGRPoly = new OGRPolygon();
-
- OGRLinearRing *poRing;
- poRing = new OGRLinearRing();
- poRing->setPoints( poPoints->n_points,
- poPoints->x, poPoints->y, poPoints->z );
-
- poOGRPoly->addRingDirectly( poRing );
-
- // Islands
- int nisles = Vect_get_area_num_isles ( poMap, id );
- for ( int i = 0; i < nisles; i++ ) {
- int isle = Vect_get_area_isle ( poMap, id, i );
- Vect_get_isle_points ( poMap, isle, poPoints );
-
- poRing = new OGRLinearRing();
- poRing->setPoints( poPoints->n_points,
- poPoints->x, poPoints->y, poPoints->z );
-
- poOGRPoly->addRingDirectly( poRing );
- }
-
- poOGR = poOGRPoly;
- }
- break;
-
- default: // Should not happen
- {
- CPLError( CE_Failure, CPLE_AppDefined, "Unknown GRASS feature type.");
- return NULL;
- }
- }
-
- return poOGR;
-}
-
-/************************************************************************/
-/* SetAttributes() */
-/************************************************************************/
-bool OGRGRASSLayer::SetAttributes ( OGRFeature *poFeature, dbTable *table )
-{
- CPLDebug ( "GRASS", "OGRGRASSLayer::SetAttributes" );
-
- for ( int i = 0; i < nFields; i++)
- {
- dbColumn *column = db_get_table_column ( table, i );
- dbValue *value = db_get_column_value ( column );
-
- int ctype = db_sqltype_to_Ctype ( db_get_column_sqltype(column) );
-
- if ( !db_test_value_isnull(value) )
- {
- switch ( ctype ) {
- case DB_C_TYPE_INT:
- poFeature->SetField( i, db_get_value_int ( value ));
- break;
- case DB_C_TYPE_DOUBLE:
- poFeature->SetField( i, db_get_value_double ( value ));
- break;
- case DB_C_TYPE_STRING:
- poFeature->SetField( i, db_get_value_string ( value ));
- break;
- case DB_C_TYPE_DATETIME:
- db_convert_column_value_to_string ( column, poDbString );
- poFeature->SetField( i, db_get_string ( poDbString ));
- break;
- }
- }
-
- db_convert_column_value_to_string ( column, poDbString );
- //CPLDebug ( "GRASS", "val = %s", db_get_string ( poDbString ));
- }
- return true;
-}
-
-/************************************************************************/
-/* SetFeature() */
-/************************************************************************/
-OGRErr OGRGRASSLayer::SetFeature( OGRFeature *poFeature )
-{
- return OGRERR_FAILURE;
-}
-
-/************************************************************************/
-/* CreateFeature() */
-/************************************************************************/
-OGRErr OGRGRASSLayer::CreateFeature( OGRFeature *poFeature )
-{
- return OGRERR_FAILURE;
-}
-
-/************************************************************************/
-/* GetFeatureCount() */
-/* */
-/* If a spatial filter is in effect, we turn control over to */
-/* the generic counter. Otherwise we return the total count. */
-/* Eventually we should consider implementing a more efficient */
-/* way of counting features matching a spatial query. */
-/************************************************************************/
-int OGRGRASSLayer::GetFeatureCount( int bForce )
-{
- if( m_poFilterGeom != NULL || m_poAttrQuery != NULL )
- return OGRLayer::GetFeatureCount( bForce );
-
- return nTotalCount;
-}
-
-/************************************************************************/
-/* GetExtent() */
-/* */
-/* Fetch extent of the data currently stored in the dataset. */
-/* The bForce flag has no effect on SHO files since that value */
-/* is always in the header. */
-/* */
-/* Returns OGRERR_NONE/OGRRERR_FAILURE. */
-/************************************************************************/
-OGRErr OGRGRASSLayer::GetExtent (OGREnvelope *psExtent, int bForce)
-{
- BOUND_BOX box;
-
- Vect_get_map_box ( poMap, &box );
-
- psExtent->MinX = box.W;
- psExtent->MinY = box.S;
- psExtent->MaxX = box.E;
- psExtent->MaxY = box.N;
-
- return OGRERR_NONE;
-}
-
-/************************************************************************/
-/* TestCapability() */
-/************************************************************************/
-int OGRGRASSLayer::TestCapability( const char * pszCap )
-{
- if( EQUAL(pszCap,OLCRandomRead) )
- return TRUE;
-
- else if( EQUAL(pszCap,OLCFastFeatureCount) )
- return TRUE;
-
- else if( EQUAL(pszCap,OLCFastSpatialFilter) )
- return FALSE;
-
- else if( EQUAL(pszCap,OLCFastGetExtent) )
- return TRUE;
-
- else if( EQUAL(pszCap,OLCFastSetNextByIndex) )
- return TRUE;
-
- else
- return FALSE;
-}
-
-/************************************************************************/
-/* CreateField() */
-/************************************************************************/
-OGRErr OGRGRASSLayer::CreateField( OGRFieldDefn *poField, int bApproxOK )
-{
- CPLError( CE_Failure, CPLE_NotSupported,
- "Can't create fields on a GRASS layer.\n");
-
- return OGRERR_FAILURE;
-}
-
-/************************************************************************/
-/* GetSpatialRef() */
-/************************************************************************/
-OGRSpatialReference *OGRGRASSLayer::GetSpatialRef()
-{
- return poSRS;
-}
-
More information about the Pkg-grass-devel
mailing list