This is an automated email from the git hooks/post-receive script. sebastic pushed a commit to branch master in repository ogdi-dfsg.
commit ed8dd00f3bd0d6b3ef0afb7fdbb032b079a15493 Author: Bas Couwenberg <[email protected]> Date: Thu Mar 1 19:15:35 2018 +0100 New upstream version 3.2.1+ds --- .cvsignore | 4 + .gitignore | 11 + ChangeLog | 11 + HOWTO-RELEASE | 7 +- NEWS | 9 + VERSION | 1 - config/common.mak.in | 2 + config/mkinstalldirs | 2 +- config/win64.mak | 192 ++++++++++++++++++ configure | 16 +- configure.in | 2 +- contrib/gdal/.cvsignore | 1 + contrib/gdal/gbgetsymbol.c | 6 +- contrib/gdal/gdal_serv.c | 6 +- contrib/gdal/gdal_serv.h | 6 +- contrib/gdal/gdalbridge.c | 6 +- contrib/gdal/gdalbridge.h | 6 +- contrib/ogdi_import/.cvsignore | 1 + contrib/ogdi_import/ogdi_import.c | 6 +- contrib/ogdi_info/.cvsignore | 1 + contrib/ogdi_info/ogdi_info.c | 6 +- lib/.cvsignore | 2 + lib/win32/.cvsignore | 2 + makefile | 2 + mkogdidist.sh | 23 +-- ogdi/c-api/.cvsignore | 1 + ogdi/c-api/client.c | 6 +- ogdi/c-api/ecs_capabilities.c | 6 +- ogdi/c-api/ecs_dyna.c | 6 +- ogdi/c-api/ecs_xdrz.c | 6 +- ogdi/c-api/ecsassoc.c | 6 +- ogdi/c-api/ecsdist.c | 6 +- ogdi/c-api/ecsgeo.c | 6 +- ogdi/c-api/ecshash.c | 6 +- ogdi/c-api/ecsinfo.c | 6 +- ogdi/c-api/ecslist.c | 6 +- ogdi/c-api/ecsregex.c | 6 +- ogdi/c-api/ecssplit.c | 6 +- ogdi/c-api/ecstile.c | 6 +- ogdi/c-api/ogdi.def | 1 + ogdi/c-api/opendir.c | 4 +- ogdi/c-api/opendir.h | 4 +- ogdi/c-api/server.c | 6 +- ogdi/datum_driver/canada/.cvsignore | 1 + ogdi/datum_driver/canada/dtcanada.def | 24 +-- ogdi/datum_driver/usa/.cvsignore | 1 + ogdi/datum_driver/usa/dtusa.c | 36 ++++ ogdi/datum_driver/usa/dtusa.def | 26 +-- ogdi/driver/adrg/.cvsignore | 1 + ogdi/driver/adrg/adrg.c | 6 +- ogdi/driver/adrg/adrg.h | 4 +- ogdi/driver/adrg/object.c | 6 +- ogdi/driver/adrg/utils.c | 6 +- ogdi/driver/dted/.cvsignore | 1 + ogdi/driver/dted/dted.c | 6 +- ogdi/driver/dted/dted.h | 4 +- ogdi/driver/dted/object.c | 6 +- ogdi/driver/dted/utils.c | 6 +- ogdi/driver/network/.cvsignore | 1 + ogdi/driver/network/remote.def | 48 ++--- ogdi/driver/rpf/.cvsignore | 1 + ogdi/driver/rpf/object.c | 6 +- ogdi/driver/rpf/rpf.c | 10 +- ogdi/driver/rpf/rpf.h | 4 +- ogdi/driver/rpf/utils.c | 6 +- ogdi/driver/skeleton/.cvsignore | 1 + ogdi/driver/vrf/.cvsignore | 1 + ogdi/driver/vrf/feature.c | 96 +++++++-- ogdi/driver/vrf/object.c | 179 ++++++++-------- ogdi/driver/vrf/open.c | 6 +- ogdi/driver/vrf/swq.c | 6 +- ogdi/driver/vrf/swq.h | 4 +- ogdi/driver/vrf/utils.c | 6 +- ogdi/driver/vrf/vrf.c | 6 +- ogdi/driver/vrf/vrf.def | 46 ++--- ogdi/driver/vrf/vrf.h | 17 +- ogdi/driver/vrf/vrfswq.c | 6 +- ogdi/examples/example1/.cvsignore | 1 + ogdi/examples/example2/.cvsignore | 1 + ogdi/gltpd/.cvsignore | 1 + ogdi/gltpd/asyncsvr.c | 6 +- ogdi/gltpd/ecs_sif.c | 6 +- ogdi/glutil/.cvsignore | 1 + ogdi/glutil/getglenv.c | 1 + ogdi/glutil/status_d.mak | 372 +++++++++++++++++----------------- ogdi/glutil/status_d.rc | 44 ++-- ogdi/include/ecs_util.h | 8 +- ogdi/tcl_interface/.cvsignore | 1 + ogdi/tcl_interface/ecs_tcl.c | 4 +- vpflib/.cvsignore | 1 + vpflib/strfunc.h | 7 + vpflib/vpfread.c | 2 +- 92 files changed, 911 insertions(+), 554 deletions(-) diff --git a/.cvsignore b/.cvsignore new file mode 100644 index 0000000..9270c4d --- /dev/null +++ b/.cvsignore @@ -0,0 +1,4 @@ +bin +config.status +config.log +config.cache diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..501aec0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +bin/ +config.log +config.status +config/Linux.mak +config/common.mak +OBJ.Linux +OBJ.win32 +OBJ.win64 +lib/Linux +ogdi-config +ogdi.pc diff --git a/ChangeLog b/ChangeLog index 4f37dc0..1f77c30 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2018-03-01 Even Rouault <[email protected]> + + * various changes to support Win64 and MSVC 2015 + +2018-03-01 Even Rouault <[email protected]> + + * ogdi/driver/vrf/feature.c, object.c, vrf.h: make sure to take into + account tile id when merging feature segments, and deal with situations + where consecutive segments of same feature in edge table are not + mergeable. Needed on some DNC products. + 2016-07-19 Even Rouault <[email protected]> * New 3.2.0 release diff --git a/HOWTO-RELEASE b/HOWTO-RELEASE index 16bfefc..befcee8 100644 --- a/HOWTO-RELEASE +++ b/HOWTO-RELEASE @@ -13,7 +13,7 @@ 4) Run testsuite on these platforms. -5) Add release notice in devdir/ChangeLog. +5) Add release notice in ChangeLog. 6) Update the NEWS file based on a digested form of the ChangeLog file. @@ -23,15 +23,12 @@ ie. - cd devdir - cvs tag ogdi_3_1_0 + git tag -a ogdi_3_2_1 8) Create the source distributions using the mkogdidist.sh script. The version name should include subrelease name components as appropriate. - Hit enter when prompted for a CVS password. ie. - cd devdir mkogdidist.sh 3.1beta2 9) Publish the resulting files. For public (ie. final) releases they should diff --git a/NEWS b/NEWS index 68cbbbd..739759a 100644 --- a/NEWS +++ b/NEWS @@ -4,6 +4,15 @@ View the ChangeLog file for detailed, file by file notes on changes. The NEWS file is just used to sumarize major changes, and new features. +3.2.1 +===== + + o MSVC 2015 related fixes + + o Win64 target + + o VRF: fixes for some linear features in DNC products + 3.2.0 ===== diff --git a/VERSION b/VERSION deleted file mode 100644 index 15222c5..0000000 --- a/VERSION +++ /dev/null @@ -1 +0,0 @@ -3.2.0: mardi 19 juillet 2016, 14:20:47 (UTC+0200) diff --git a/config/common.mak.in b/config/common.mak.in index abd0e03..9276796 100644 --- a/config/common.mak.in +++ b/config/common.mak.in @@ -73,7 +73,9 @@ LIBDIR = $(TOPDIR)/lib/$(TARGET) # # Final OS installation location. # +ifndef prefix prefix = /usr/local +endif exec_prefix = ${prefix} INST_INCLUDE = ${prefix}/include INST_LIB = ${exec_prefix}/lib diff --git a/config/mkinstalldirs b/config/mkinstalldirs index 1a8cef0..d0fd194 100755 --- a/config/mkinstalldirs +++ b/config/mkinstalldirs @@ -4,7 +4,7 @@ # Created: 1993-05-16 # Public domain -# $Id: mkinstalldirs,v 1.1.1.1 2000/10/29 20:54:55 warmerda Exp $ +# $Id$ errstatus=0 diff --git a/config/win64.mak b/config/win64.mak new file mode 100644 index 0000000..afc7517 --- /dev/null +++ b/config/win64.mak @@ -0,0 +1,192 @@ +# Copyright (C) 1996 Her Majesty the Queen in Right of Canada. +# Permission to use, copy, modify and distribute this software and +# its documentation for any purpose and without fee is hereby granted, +# provided that the above copyright notice appear in all copies, that +# both the copyright notice and this permission notice appear in +# supporting documentation, and that the name of Her Majesty the Queen +# in Right of Canada not be used in advertising or publicity pertaining +# to distribution of the software without specific, written prior +# permission. Her Majesty the Queen in Right of Canada makes no +# representations about the suitability of this software for any purpose. +# It is provided "as is" without express or implied warranty. +# +# +# +# win32 configuration file +# + +MAKE = $(MAKE_COMMAND) $(MAKEOVERRIDES) + + +# +# Platform specific symbols +# + +Platform = win32 + +# +# Standard tools +# + +CC = cl.exe /nologo +LD = link.exe /nologo +SHLIB_LD = link.exe /nologo +AR = lib.exe /nologo +FILECOPY = cp +MKDIR = mkdir +DIRCOPY = cp -rf +ifndef SHELL +SHELL = /bin/sh +endif +MKINSTALLDIR = $(TOPDIR)/config/mkinstalldirs +RSC = rc.exe +RM = rm +RMALL = rm -rf +RMDIR = rmdir + + +REVERSETOPDIR = $(subst /,\,$(TOPDIR)) + +# +# File name extensions +# + +APP_EXT = .exe +ARCH_EXT = lib +LIB_PREFIX = +LIB_SUFFIX = .lib +OBJ_EXT = obj +SHLIB_EXT = dll + +# +# Command switches +# + +DEFINE_SW = /D +INCL_SW = /I +LIB_SW = / +LINK_SW = + + +# +# Endian definition, could be little or big +# + +BIG_ENDIAN = 0 + +# +#Compilation and linking flags +# + +# These flags are appropriate for a compiling with Visual C++ 5.0 +# With these flags, you could run purify. +# + +WINCPP_DEBUG = /EHsc /D_DEBUG /Zi $(CPP_DEBUG) +WINCPP_RELEASE = /EHsc /Gy /Od /DNDEBUG $(CPP_RELEASE) +LINK_DEBUG = /DEBUG /INCREMENTAL:no /FIXED:NO +LINK_RELEASE = /INCREMENTAL:no /OPT:REF + +#flags + +# These flags are appropriate for a compiling with Visual C++ 4.0 +# With these flags, you could run purify. +# + +#LINK_DEBUG = /DEBUG /INCREMENTAL:no /debugtype:cv +#WINCPP_RELEASE = /EHsc /Gi- /Gy /O2 /DNDEBUG $(CPP_RELEASE) + + +SMARTHEAP_LIB = + +ifneq ($(CFG),release) +OPTIMIZATION = $(WINCPP_DEBUG) +LINK_OPTIMIZATION = $(LINK_DEBUG) +else +OPTIMIZATION = $(WINCPP_RELEASE) +LINK_OPTIMIZATION = $(LINK_RELEASE) +endif + +SHLIB_CFLAGS = +SHLIB_LDFLAGS = /DLL +COMMON_LDFLAGS = /DEBUG + +# +# Standard location of compiled component libraries +# + +LINKDIR = $(LIBDIR) + +# +# INCLUDE locations for include command +# + +SYSTEM_INCLUDE = $(patsubst %,$(INCL_SW)%,$(subst \,/,$(subst ;, ,$(INCLUDE)))) +COMPAT_INCLUDE = $(INCL_SW)$(TOPDIR)/include/win32/compat + +RPC_INCLUDE = $(INCL_SW)$(TOPDIR)/external/rpc_win32/rpc +SYS_INCLUDE = $(INCL_SW)$(TOPDIR)/include/win32/sys + +# Library locations for link command + +WIN_LINKLIB = user32.lib gdi32.lib wsock32.lib advapi32.lib kernel32.lib +#LXLIB_LINKLIB = $(LIBDIR)/lxlib.lib +ODBC_LINKLIB = odbc32.lib odbccp32.lib +RPC_LINKLIB = $(LIBDIR)/static/rpc.lib + +# +# rules +# + +COMMON_CFLAGS = /D_WINDOWS /DWIN32 /D_MBCS \ + /Dhypot=_hypot /DNO_DIRENT_H \ + /DSIGQUIT=SIGBREAK /Dioctl=Ioctl /DSIGPIPE=SIGTERM \ + /DSIGHUP=SIGTERM /DSIGALRM=SIGTERM /Dpopen=_popen \ + /Dpclose=_pclose \ + /DMISSING_DLFCN_H \ + $(OPTIMIZATION) \ + /W3 /MD /c /Fpheaders.pch + +#FLAGS_X86DEF = /D_X86_ + +$(subst :,\:,$(ARCHGEN)): $(OBJECTS) + @echo Making archive file: $@ + $(AR) /OUT:$@ $^ + @echo $@ made successfully ... + +DEF_FILE=$(TOBEGEN_STRIPPED).def +RES_FILE=$(TOBEGEN).res +RC_FILE=$(TOBEGEN).rc + +$(subst :,\:,$(DYNAGEN)): $(DEF_FILE) $(OBJECTS) + @echo Making dynamic file: $@ + @echo + $(SHLIB_LD) /DLL $(LINK_OPTIMIZATION) \ + $(filter %.$(OBJ_EXT),$^) $(LINK_LIBS) /DEF:$(filter %.def,$^) \ + /OUT:$(TOBEGEN).dll \ + /IMPLIB:$(TOPDIR)/lib/$(TARGET)/$(LIB_PREFIX)$(TOBEGEN).$(ARCH_EXT) \ + /OUT:$@ + +ifndef WITHICON +$(subst :,\:,$(PROGGEN)): $(OBJECTS) + @echo Making executable file: $@ + $(LD) $^ $(LINK_LIBS) \ + $(LINK_OPTIMIZATION) $(SMARTHEAP_LINKLIB) \ + /OUT:$@ + +else +$(subst :,\:,$(PROGGEN)): $(RES_FILE) $(OBJECTS) + @echo Making executable file: $@ + $(LD) $(filter %.$(OBJ_EXT),$^) $(LINK_LIBS) \ + $(filter %.res,$^) \ + $(LINK_OPTIMIZATION) $(SMARTHEAP_LINKLIB) \ + /OUT:$@ +endif + + +%.obj: %.c + $(CC) $(CFLAGS) $(CPPFLAGS) $< + +$(subst :,\:,$(RES_FILE)): $(RC_FILE) + $(RSC) /fo"$@" $(GENERAL_INCLUDE) $(TCLTK_INCLUDE) $^ + diff --git a/configure b/configure index d7acc10..c69d337 100755 --- a/configure +++ b/configure @@ -672,6 +672,7 @@ infodir docdir oldincludedir includedir +runstatedir localstatedir sharedstatedir sysconfdir @@ -753,6 +754,7 @@ datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' +runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE}' @@ -1005,6 +1007,15 @@ do | -silent | --silent | --silen | --sile | --sil) silent=yes ;; + -runstatedir | --runstatedir | --runstatedi | --runstated \ + | --runstate | --runstat | --runsta | --runst | --runs \ + | --run | --ru | --r) + ac_prev=runstatedir ;; + -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ + | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ + | --run=* | --ru=* | --r=*) + runstatedir=$ac_optarg ;; + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1142,7 +1153,7 @@ fi for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir + libdir localedir mandir runstatedir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1295,6 +1306,7 @@ Fine tuning of the installation directories: --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] + --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -2058,7 +2070,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -OGDI_VERSION=3.2.0 +OGDI_VERSION=3.2.1 OGDI_MAJOR=3 OGDI_MINOR=2 diff --git a/configure.in b/configure.in index 68b1c92..0a1526b 100644 --- a/configure.in +++ b/configure.in @@ -1,7 +1,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(config/unix.mak) -OGDI_VERSION=3.2.0 +OGDI_VERSION=3.2.1 OGDI_MAJOR=3 OGDI_MINOR=2 diff --git a/contrib/gdal/.cvsignore b/contrib/gdal/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/contrib/gdal/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/contrib/gdal/gbgetsymbol.c b/contrib/gdal/gbgetsymbol.c index 63fd911..4af04b9 100644 --- a/contrib/gdal/gbgetsymbol.c +++ b/contrib/gdal/gbgetsymbol.c @@ -1,5 +1,5 @@ /****************************************************************************** - * $Id: gbgetsymbol.c,v 1.1 2001/05/04 03:13:35 warmerda Exp $ + * $Id$ * * Project: GDAL Bridge * Purpose: Fetch a function pointer from a shared library / DLL. @@ -29,8 +29,8 @@ * DEALINGS IN THE SOFTWARE. ****************************************************************************** * - * $Log: gbgetsymbol.c,v $ - * Revision 1.1 2001/05/04 03:13:35 warmerda + * $Log$ + * Revision 1.1 2001-05-04 03:13:35 warmerda * New * * Revision 1.1 2000/10/25 16:43:20 warmerda diff --git a/contrib/gdal/gdal_serv.c b/contrib/gdal/gdal_serv.c index 83b4e9e..2eff93b 100644 --- a/contrib/gdal/gdal_serv.c +++ b/contrib/gdal/gdal_serv.c @@ -1,5 +1,5 @@ /********************************************************************** - * $Id: gdal_serv.c,v 1.1 2001/05/04 03:13:35 warmerda Exp $ + * $Id$ * * Project: GDAL OGDI Server * Purpose: Implements dynamic entry points into the driver. @@ -27,8 +27,8 @@ * DEALINGS IN THE SOFTWARE. ********************************************************************** * - * $Log: gdal_serv.c,v $ - * Revision 1.1 2001/05/04 03:13:35 warmerda + * $Log$ + * Revision 1.1 2001-05-04 03:13:35 warmerda * New * * Revision 1.2 2000/08/28 20:21:47 warmerda diff --git a/contrib/gdal/gdal_serv.h b/contrib/gdal/gdal_serv.h index 284617c..b3466fd 100644 --- a/contrib/gdal/gdal_serv.h +++ b/contrib/gdal/gdal_serv.h @@ -1,5 +1,5 @@ /********************************************************************** - * $Id: gdal_serv.h,v 1.1 2001/05/04 03:13:35 warmerda Exp $ + * $Id$ * * Project: GDAL OGDI Server * Purpose: Declarations. @@ -27,8 +27,8 @@ * DEALINGS IN THE SOFTWARE. ********************************************************************** * - * $Log: gdal_serv.h,v $ - * Revision 1.1 2001/05/04 03:13:35 warmerda + * $Log$ + * Revision 1.1 2001-05-04 03:13:35 warmerda * New * * Revision 1.2 2000/08/28 20:21:47 warmerda diff --git a/contrib/gdal/gdalbridge.c b/contrib/gdal/gdalbridge.c index 69bf2b7..d4b4ec8 100644 --- a/contrib/gdal/gdalbridge.c +++ b/contrib/gdal/gdalbridge.c @@ -1,5 +1,5 @@ /****************************************************************************** - * $Id: gdalbridge.c,v 1.1 2001/05/04 03:13:35 warmerda Exp $ + * $Id$ * * Project: GDAL Bridge * Purpose: Implementation of GDALBridgeInitialize() @@ -29,8 +29,8 @@ * DEALINGS IN THE SOFTWARE. ****************************************************************************** * - * $Log: gdalbridge.c,v $ - * Revision 1.1 2001/05/04 03:13:35 warmerda + * $Log$ + * Revision 1.1 2001-05-04 03:13:35 warmerda * New * * Revision 1.1 2000/10/25 16:43:20 warmerda diff --git a/contrib/gdal/gdalbridge.h b/contrib/gdal/gdalbridge.h index 6ba5f99..3f1375c 100644 --- a/contrib/gdal/gdalbridge.h +++ b/contrib/gdal/gdalbridge.h @@ -1,5 +1,5 @@ /****************************************************************************** - * $Id: gdalbridge.h,v 1.1 2001/05/04 03:13:35 warmerda Exp $ + * $Id$ * * Project: GDAL Bridge * Purpose: Declarations for GDAL Bridge support. @@ -29,8 +29,8 @@ * DEALINGS IN THE SOFTWARE. ****************************************************************************** * - * $Log: gdalbridge.h,v $ - * Revision 1.1 2001/05/04 03:13:35 warmerda + * $Log$ + * Revision 1.1 2001-05-04 03:13:35 warmerda * New * * Revision 1.1 2000/10/25 16:43:20 warmerda diff --git a/contrib/ogdi_import/.cvsignore b/contrib/ogdi_import/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/contrib/ogdi_import/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/contrib/ogdi_import/ogdi_import.c b/contrib/ogdi_import/ogdi_import.c index 194819f..a42c0f8 100644 --- a/contrib/ogdi_import/ogdi_import.c +++ b/contrib/ogdi_import/ogdi_import.c @@ -1,5 +1,5 @@ /****************************************************************************** - * $Id: ogdi_import.c,v 1.13 2007/02/12 15:52:57 cbalint Exp $ + * $Id$ * * Project: OGDI Contributed Clients * Purpose: Simple console import to shapefile/raw raster. @@ -19,8 +19,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ogdi_import.c,v $ - * Revision 1.13 2007/02/12 15:52:57 cbalint + * $Log$ + * Revision 1.13 2007-02-12 15:52:57 cbalint * * Preliminary cleanup. * Get rif of unitialized variables, and unused ones. diff --git a/contrib/ogdi_info/.cvsignore b/contrib/ogdi_info/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/contrib/ogdi_info/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/contrib/ogdi_info/ogdi_info.c b/contrib/ogdi_info/ogdi_info.c index c2df08a..b2eda3a 100755 --- a/contrib/ogdi_info/ogdi_info.c +++ b/contrib/ogdi_info/ogdi_info.c @@ -1,5 +1,5 @@ /****************************************************************************** - * $Id: ogdi_info.c,v 1.14 2004/10/26 19:45:53 warmerda Exp $ + * $Id$ * * Project: OGDI Contributed Clients * Purpose: Simple console query program for testing OGDI. @@ -19,8 +19,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ogdi_info.c,v $ - * Revision 1.14 2004/10/26 19:45:53 warmerda + * $Log$ + * Revision 1.14 2004-10-26 19:45:53 warmerda * Fixed last fix. * * Revision 1.13 2004/10/26 19:37:52 warmerda diff --git a/lib/.cvsignore b/lib/.cvsignore new file mode 100644 index 0000000..5f41cb6 --- /dev/null +++ b/lib/.cvsignore @@ -0,0 +1,2 @@ +linux +solaris diff --git a/lib/win32/.cvsignore b/lib/win32/.cvsignore new file mode 100644 index 0000000..b73ed95 --- /dev/null +++ b/lib/win32/.cvsignore @@ -0,0 +1,2 @@ +*.exp +*.lib diff --git a/makefile b/makefile index b23becf..c8cd16f 100644 --- a/makefile +++ b/makefile @@ -12,9 +12,11 @@ EXTRA_INSTALL_TARGETS = mk_nonlocal_install_dirs +ifneq ($(OVERRIDE_COMMON_MAK),no) ifeq ($(TARGET),win32) IGNORE := $(shell sed "s/@OGDI_MAJOR@/3/" < $(TOPDIR)/config/common.mak.in | sed "s/@OGDI_MINOR@/2/" > $(TOPDIR)/config/common.mak) endif +endif include $(TOPDIR)/config/common.mak # diff --git a/mkogdidist.sh b/mkogdidist.sh index 7b5ca0f..af2d2a4 100755 --- a/mkogdidist.sh +++ b/mkogdidist.sh @@ -13,10 +13,8 @@ # It is provided "as is" without express or implied warranty. # -TARGETDIR=ogdi.sourceforge.net:ftp-ogdi/. - if [ $# -lt 1 ] ; then - echo "Usage: mkogdidist version [-install]" + echo "Usage: mkogdidist version" echo echo "Example: mkogdidist 3.1alpha" exit @@ -25,26 +23,20 @@ fi OGDI_VERSION=$1 DIST_NAME=ogdi-$OGDI_VERSION - rm -rf dist_wrk mkdir dist_wrk cd dist_wrk -export CVSROOT=:pserver:[email protected]:/cvsroot/ogdi - -echo "Please hit enter when prompted for a password." -cvs login - -cvs checkout -P devdir +git clone https://github.com/libogdi/ogdi devdir if [ \! -d devdir ] ; then - echo "cvs checkout reported an error ... abandoning mkogdidist" + echo "git clone reported an error ... abandoning mkogdidist" exit fi # remove junks -find devdir -name CVS -exec rm -rf {} \; -find devdir -name ".cvsignore" -exec rm -rf '{}' \; +find devdir -name .git -exec rm -rf {} \; + # fix wrongly encoded files from tarball set +x for f in `find . -type f` ; do @@ -74,8 +66,3 @@ zip -r ../${DIST_NAME}.zip ${DIST_NAME} cd .. rm -rf dist_wrk - -if test "$2" = "-install" ; then - scp ${DIST_NAME}.tar.gz $TARGETDIR - scp ${DIST_NAME}.zip $TARGETDIR -fi diff --git a/ogdi/c-api/.cvsignore b/ogdi/c-api/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/c-api/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/c-api/client.c b/ogdi/c-api/client.c index a1e9eee..c0169a0 100644 --- a/ogdi/c-api/client.c +++ b/ogdi/c-api/client.c @@ -17,8 +17,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: client.c,v $ - * Revision 1.17 2016/06/28 14:32:45 erouault + * $Log$ + * Revision 1.17 2016-06-28 14:32:45 erouault * Fix all warnings about unused variables raised by GCC 4.8 * * Revision 1.16 2008/05/28 01:34:30 cbalint @@ -68,7 +68,7 @@ #include "matrix.h" #include <assert.h> -ECS_CVSID("$Id: client.c,v 1.17 2016/06/28 14:32:45 erouault Exp $"); +ECS_CVSID("$Id$"); /* Definitions specific to c_interface diff --git a/ogdi/c-api/ecs_capabilities.c b/ogdi/c-api/ecs_capabilities.c index 7abf8a4..760ac61 100644 --- a/ogdi/c-api/ecs_capabilities.c +++ b/ogdi/c-api/ecs_capabilities.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecs_capabilities.c,v $ - * Revision 1.3 2001/06/13 17:17:40 warmerda + * $Log$ + * Revision 1.3 2001-06-13 17:17:40 warmerda * fixed capabilities to match 6.2 spec * * Revision 1.2 2001/04/12 18:14:16 warmerda @@ -35,7 +35,7 @@ #include "expat.h" -ECS_CVSID("$Id: ecs_capabilities.c,v 1.3 2001/06/13 17:17:40 warmerda Exp $"); +ECS_CVSID("$Id$"); #define STACK_MAX 100 diff --git a/ogdi/c-api/ecs_dyna.c b/ogdi/c-api/ecs_dyna.c index f4245fa..31134bc 100644 --- a/ogdi/c-api/ecs_dyna.c +++ b/ogdi/c-api/ecs_dyna.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecs_dyna.c,v $ - * Revision 1.6 2016/07/11 09:15:53 erouault + * $Log$ + * Revision 1.6 2016-07-11 09:15:53 erouault * fix ecs_OpenDynamicLib on 64 bit Windows (OGDI #72) * * Revision 1.5 2007/02/12 18:06:31 cbalint @@ -34,7 +34,7 @@ #include "ecs.h" -ECS_CVSID("$Id: ecs_dyna.c,v 1.6 2016/07/11 09:15:53 erouault Exp $"); +ECS_CVSID("$Id$"); #if !defined(MISSING_DLFCN_H) #include <dlfcn.h> diff --git a/ogdi/c-api/ecs_xdrz.c b/ogdi/c-api/ecs_xdrz.c index 0f3494f..145a556 100644 --- a/ogdi/c-api/ecs_xdrz.c +++ b/ogdi/c-api/ecs_xdrz.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecs_xdrz.c,v $ - * Revision 1.4 2007/02/12 15:52:57 cbalint + * $Log$ + * Revision 1.4 2007-02-12 15:52:57 cbalint * * Preliminary cleanup. * Get rif of unitialized variables, and unused ones. @@ -33,7 +33,7 @@ #include "ecs.h" #include "zlib.h" -ECS_CVSID("$Id: ecs_xdrz.c,v 1.4 2007/02/12 15:52:57 cbalint Exp $"); +ECS_CVSID("$Id$"); /* Variables used for compression/decompression routines */ static void *obuf = NULL; diff --git a/ogdi/c-api/ecsassoc.c b/ogdi/c-api/ecsassoc.c index 9dc08da..cd9fd8e 100644 --- a/ogdi/c-api/ecsassoc.c +++ b/ogdi/c-api/ecsassoc.c @@ -17,8 +17,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecsassoc.c,v $ - * Revision 1.6 2016/07/06 08:59:46 erouault + * $Log$ + * Revision 1.6 2016-07-06 08:59:46 erouault * ecs_SetError(): display error message on stderr if memory allocation fails * * Revision 1.5 2016/07/04 17:33:49 erouault @@ -43,7 +43,7 @@ #include "ecs.h" -ECS_CVSID("$Id: ecsassoc.c,v 1.6 2016/07/06 08:59:46 erouault Exp $"); +ECS_CVSID("$Id$"); char memory_error[] = "not enough memory"; diff --git a/ogdi/c-api/ecsdist.c b/ogdi/c-api/ecsdist.c index 1a81d10..926182a 100644 --- a/ogdi/c-api/ecsdist.c +++ b/ogdi/c-api/ecsdist.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecsdist.c,v $ - * Revision 1.5 2001/04/12 19:25:27 warmerda + * $Log$ + * Revision 1.5 2001-04-12 19:25:27 warmerda * added RGB<->Pixel functions * * Revision 1.4 2001/04/09 15:04:34 warmerda @@ -29,7 +29,7 @@ #include <math.h> #include "ecs.h" -ECS_CVSID("$Id: ecsdist.c,v 1.5 2001/04/12 19:25:27 warmerda Exp $"); +ECS_CVSID("$Id$"); double currenttolerance = 0.0; diff --git a/ogdi/c-api/ecsgeo.c b/ogdi/c-api/ecsgeo.c index ba8bcf7..f1495ad 100644 --- a/ogdi/c-api/ecsgeo.c +++ b/ogdi/c-api/ecsgeo.c @@ -16,15 +16,15 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecsgeo.c,v $ - * Revision 1.3 2001/04/09 15:04:34 warmerda + * $Log$ + * Revision 1.3 2001-04-09 15:04:34 warmerda * applied new source headers * */ #include "ecs.h" -ECS_CVSID("$Id: ecsgeo.c,v 1.3 2001/04/09 15:04:34 warmerda Exp $"); +ECS_CVSID("$Id$"); static double ecs_QA, ecs_QB, ecs_QC; static double ecs_QbarA, ecs_QbarB, ecs_QbarC, ecs_QbarD; diff --git a/ogdi/c-api/ecshash.c b/ogdi/c-api/ecshash.c index 983dd60..911747d 100644 --- a/ogdi/c-api/ecshash.c +++ b/ogdi/c-api/ecshash.c @@ -12,15 +12,15 @@ * of this file, and for a DISCLAIMER OF ALL WARRANTIES. ****************************************************************************** * - * $Log: ecshash.c,v $ - * Revision 1.3 2001/04/09 15:04:34 warmerda + * $Log$ + * Revision 1.3 2001-04-09 15:04:34 warmerda * applied new source headers * */ #include "ecs.h" -ECS_CVSID("$Id: ecshash.c,v 1.3 2001/04/09 15:04:34 warmerda Exp $"); +ECS_CVSID("$Id$"); /* * When there are this many entries per bucket, on average, rebuild diff --git a/ogdi/c-api/ecsinfo.c b/ogdi/c-api/ecsinfo.c index 3a700be..05abcff 100644 --- a/ogdi/c-api/ecsinfo.c +++ b/ogdi/c-api/ecsinfo.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecsinfo.c,v $ - * Revision 1.4 2007/02/12 21:01:48 cbalint + * $Log$ + * Revision 1.4 2007-02-12 21:01:48 cbalint * Fix win32 target. It build and works now. (tested with VC6) * * Revision 1.3 2007/02/12 16:09:06 cbalint @@ -45,7 +45,7 @@ #include "ecs.h" #include <ogdi_macro.h> -ECS_CVSID("$Id: ecsinfo.c,v 1.4 2007/02/12 21:01:48 cbalint Exp $"); +ECS_CVSID("$Id$"); #ifdef _WINDOWS #define strcasecmp(a,b) stricmp(a,b) diff --git a/ogdi/c-api/ecslist.c b/ogdi/c-api/ecslist.c index 68d591b..55a054e 100644 --- a/ogdi/c-api/ecslist.c +++ b/ogdi/c-api/ecslist.c @@ -16,15 +16,15 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecslist.c,v $ - * Revision 1.2 2001/04/09 15:04:34 warmerda + * $Log$ + * Revision 1.2 2001-04-09 15:04:34 warmerda * applied new source headers * */ #include "ecs.h" -ECS_CVSID("$Id: ecslist.c,v 1.2 2001/04/09 15:04:34 warmerda Exp $"); +ECS_CVSID("$Id$"); #define UCHAR(c) ((unsigned char) (c)) diff --git a/ogdi/c-api/ecsregex.c b/ogdi/c-api/ecsregex.c index 19b2804..08bdd77 100644 --- a/ogdi/c-api/ecsregex.c +++ b/ogdi/c-api/ecsregex.c @@ -23,8 +23,8 @@ * ****************************************************************************** * - * $Log: ecsregex.c,v $ - * Revision 1.2 2001/04/09 15:04:34 warmerda + * $Log$ + * Revision 1.2 2001-04-09 15:04:34 warmerda * applied new source headers * */ @@ -58,7 +58,7 @@ #include "ecs.h" -ECS_CVSID("$Id: ecsregex.c,v 1.2 2001/04/09 15:04:34 warmerda Exp $"); +ECS_CVSID("$Id$"); /* * The variable below is set to NULL before invoking regexp functions diff --git a/ogdi/c-api/ecssplit.c b/ogdi/c-api/ecssplit.c index 0ce2708..acbc2bc 100644 --- a/ogdi/c-api/ecssplit.c +++ b/ogdi/c-api/ecssplit.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecssplit.c,v $ - * Revision 1.3 2003/08/27 05:27:21 warmerda + * $Log$ + * Revision 1.3 2003-08-27 05:27:21 warmerda * Modified ecs_SplitURL() so that calling with a NULL url indicates it * should free the resources associated with the static regular expressions. * This makes memory leak debugging with OGDI more convenient. @@ -29,7 +29,7 @@ #include "ecs.h" -ECS_CVSID("$Id: ecssplit.c,v 1.3 2003/08/27 05:27:21 warmerda Exp $"); +ECS_CVSID("$Id$"); /* ------------------------------------------------- diff --git a/ogdi/c-api/ecstile.c b/ogdi/c-api/ecstile.c index a0d0d56..567e8c1 100644 --- a/ogdi/c-api/ecstile.c +++ b/ogdi/c-api/ecstile.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecstile.c,v $ - * Revision 1.5 2007/02/12 15:52:57 cbalint + * $Log$ + * Revision 1.5 2007-02-12 15:52:57 cbalint * * Preliminary cleanup. * Get rif of unitialized variables, and unused ones. @@ -33,7 +33,7 @@ #include "ecs.h" -ECS_CVSID("$Id: ecstile.c,v 1.5 2007/02/12 15:52:57 cbalint Exp $"); +ECS_CVSID("$Id$"); /* ******************************************************************* diff --git a/ogdi/c-api/ogdi.def b/ogdi/c-api/ogdi.def index 8caaf91..cd4c8c1 100644 --- a/ogdi/c-api/ogdi.def +++ b/ogdi/c-api/ogdi.def @@ -156,3 +156,4 @@ EXPORTS ecs_SetReportErrorFunction ecs_ShouldStopOnError ecs_SetErrorShouldStop + ecs_TileDeleteAllLines \ No newline at end of file diff --git a/ogdi/c-api/opendir.c b/ogdi/c-api/opendir.c index dad23ef..518c70a 100644 --- a/ogdi/c-api/opendir.c +++ b/ogdi/c-api/opendir.c @@ -18,8 +18,8 @@ * Changes made by Gordon Chaffee ([email protected]) ****************************************************************************** * - * $Log: opendir.c,v $ - * Revision 1.2 2001/04/09 15:04:34 warmerda + * $Log$ + * Revision 1.2 2001-04-09 15:04:34 warmerda * applied new source headers * */ diff --git a/ogdi/c-api/opendir.h b/ogdi/c-api/opendir.h index 334caef..0781920 100644 --- a/ogdi/c-api/opendir.h +++ b/ogdi/c-api/opendir.h @@ -21,8 +21,8 @@ * Cleanup, other hackery, Summer '92, Brian Moran , [email protected] ****************************************************************************** * - * $Log: opendir.h,v $ - * Revision 1.2 2001/04/09 15:04:34 warmerda + * $Log$ + * Revision 1.2 2001-04-09 15:04:34 warmerda * applied new source headers * */ diff --git a/ogdi/c-api/server.c b/ogdi/c-api/server.c index bf1a4c0..6dc823b 100644 --- a/ogdi/c-api/server.c +++ b/ogdi/c-api/server.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: server.c,v $ - * Revision 1.12 2016/07/06 08:59:20 erouault + * $Log$ + * Revision 1.12 2016-07-06 08:59:20 erouault * fix memory leaks in error code paths of svr_CreateServer() * * Revision 1.11 2016/06/28 14:32:45 erouault @@ -63,7 +63,7 @@ #include <ogdi_macro.h> -ECS_CVSID("$Id: server.c,v 1.12 2016/07/06 08:59:20 erouault Exp $"); +ECS_CVSID("$Id$"); ecs_Result svr_dummy_result; diff --git a/ogdi/datum_driver/canada/.cvsignore b/ogdi/datum_driver/canada/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/datum_driver/canada/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/datum_driver/canada/dtcanada.def b/ogdi/datum_driver/canada/dtcanada.def index 529cd5f..679bc0c 100644 --- a/ogdi/datum_driver/canada/dtcanada.def +++ b/ogdi/datum_driver/canada/dtcanada.def @@ -1,12 +1,12 @@ -LIBRARY dtcanada - -CODE PRELOAD MOVEABLE DISCARDABLE -DATA PRELOAD SINGLE - -EXPORTS - dyn_nad_init - dyn_nad_close - dyn_nad_forward - dyn_nad_reverse - DllMain - +LIBRARY dtcanada + +CODE PRELOAD MOVEABLE DISCARDABLE +DATA PRELOAD SINGLE + +EXPORTS + dyn_nad_init + dyn_nad_close + dyn_nad_forward + dyn_nad_reverse + DllMain + diff --git a/ogdi/datum_driver/usa/.cvsignore b/ogdi/datum_driver/usa/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/datum_driver/usa/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/datum_driver/usa/dtusa.c b/ogdi/datum_driver/usa/dtusa.c index 5bea726..a122268 100644 --- a/ogdi/datum_driver/usa/dtusa.c +++ b/ogdi/datum_driver/usa/dtusa.c @@ -26,6 +26,40 @@ ********************************************************************/ #include "ecs.h" + +#ifdef DUMMY_NAD_CVT + +int dyn_nad_init(privdata, table) + void **privdata; + char *table; +{ + return TRUE; +} + +int dyn_nad_close(privdata) + void *privdata; +{ + return TRUE; +} + +int dyn_nad_forward(privdata,x,y) + void *privdata; + double *x; + double *y; +{ + return TRUE; +} + +int dyn_nad_reverse(privdata,x,y) + void *privdata; + double *x; + double *y; +{ + return TRUE; +} + +#else /* DUMMY_NAD_CVT */ + #include "projects.h" typedef struct { @@ -356,3 +390,5 @@ DllMain( HINSTANCE hinstDLL, // handle of DLL module return TRUE; } #endif + +#endif /* DUMMY_NAD_CVT */ diff --git a/ogdi/datum_driver/usa/dtusa.def b/ogdi/datum_driver/usa/dtusa.def index 70b730d..88ba78d 100644 --- a/ogdi/datum_driver/usa/dtusa.def +++ b/ogdi/datum_driver/usa/dtusa.def @@ -1,13 +1,13 @@ -LIBRARY dtusa - -CODE PRELOAD MOVEABLE DISCARDABLE -DATA PRELOAD SINGLE - -EXPORTS - dyn_nad_init - dyn_nad_close - dyn_nad_forward - dyn_nad_reverse - DllMain - - +LIBRARY dtusa + +CODE PRELOAD MOVEABLE DISCARDABLE +DATA PRELOAD SINGLE + +EXPORTS + dyn_nad_init + dyn_nad_close + dyn_nad_forward + dyn_nad_reverse + DllMain + + diff --git a/ogdi/driver/adrg/.cvsignore b/ogdi/driver/adrg/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/driver/adrg/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/driver/adrg/adrg.c b/ogdi/driver/adrg/adrg.c index a217b2a..41f4f9b 100644 --- a/ogdi/driver/adrg/adrg.c +++ b/ogdi/driver/adrg/adrg.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: adrg.c,v $ - * Revision 1.10 2016/06/27 22:01:46 erouault + * $Log$ + * Revision 1.10 2016-06-27 22:01:46 erouault * Fix memory leak in ADRG driver * * Revision 1.9 2007/02/12 16:09:06 cbalint @@ -58,7 +58,7 @@ #include "datadict.h" #include <assert.h> -ECS_CVSID("$Id: adrg.c,v 1.10 2016/06/27 22:01:46 erouault Exp $"); +ECS_CVSID("$Id$"); static void _releaseAllLayers _ANSI_ARGS_((ecs_Server *s)); int colorintensity[6] = {0,63,105,147,189,255}; diff --git a/ogdi/driver/adrg/adrg.h b/ogdi/driver/adrg/adrg.h index 415189a..bbbc6ce 100644 --- a/ogdi/driver/adrg/adrg.h +++ b/ogdi/driver/adrg/adrg.h @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: adrg.h,v $ - * Revision 1.8 2007/02/12 21:01:48 cbalint + * $Log$ + * Revision 1.8 2007-02-12 21:01:48 cbalint * Fix win32 target. It build and works now. (tested with VC6) * * Revision 1.7 2007/02/12 16:09:06 cbalint diff --git a/ogdi/driver/adrg/object.c b/ogdi/driver/adrg/object.c index 288e8cd..b681e77 100644 --- a/ogdi/driver/adrg/object.c +++ b/ogdi/driver/adrg/object.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: object.c,v $ - * Revision 1.7 2016/06/28 14:32:45 erouault + * $Log$ + * Revision 1.7 2016-06-28 14:32:45 erouault * Fix all warnings about unused variables raised by GCC 4.8 * * Revision 1.6 2007/02/12 16:09:06 cbalint @@ -45,7 +45,7 @@ #include "ecs.h" #include "adrg.h" -ECS_CVSID("$Id: object.c,v 1.7 2016/06/28 14:32:45 erouault Exp $"); +ECS_CVSID("$Id$"); /* * -------------------------------------------------------------------------- diff --git a/ogdi/driver/adrg/utils.c b/ogdi/driver/adrg/utils.c index 024e52e..119e539 100644 --- a/ogdi/driver/adrg/utils.c +++ b/ogdi/driver/adrg/utils.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: utils.c,v $ - * Revision 1.8 2016/06/28 14:32:45 erouault + * $Log$ + * Revision 1.8 2016-06-28 14:32:45 erouault * Fix all warnings about unused variables raised by GCC 4.8 * * Revision 1.7 2007/02/12 16:09:06 cbalint @@ -48,7 +48,7 @@ #include "adrg.h" -ECS_CVSID("$Id: utils.c,v 1.8 2016/06/28 14:32:45 erouault Exp $"); +ECS_CVSID("$Id$"); /* ---------------------------------------------------------- diff --git a/ogdi/driver/dted/.cvsignore b/ogdi/driver/dted/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/driver/dted/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/driver/dted/dted.c b/ogdi/driver/dted/dted.c index 6d5a213..910662f 100644 --- a/ogdi/driver/dted/dted.c +++ b/ogdi/driver/dted/dted.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: dted.c,v $ - * Revision 1.10 2001/06/13 17:17:40 warmerda + * $Log$ + * Revision 1.10 2001-06-13 17:17:40 warmerda * fixed capabilities to match 6.2 spec * * Revision 1.9 2001/04/19 05:04:12 warmerda @@ -37,7 +37,7 @@ #include "dted.h" #include "datadict.h" -ECS_CVSID("$Id: dted.c,v 1.10 2001/06/13 17:17:40 warmerda Exp $"); +ECS_CVSID("$Id$"); /* layer oriented functions are keeped in data structure to simplify code */ diff --git a/ogdi/driver/dted/dted.h b/ogdi/driver/dted/dted.h index c4ea20b..b2198d7 100644 --- a/ogdi/driver/dted/dted.h +++ b/ogdi/driver/dted/dted.h @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: dted.h,v $ - * Revision 1.4 2001/04/10 14:29:43 warmerda + * $Log$ + * Revision 1.4 2001-04-10 14:29:43 warmerda * Upgraded with changes from DND (hand applied to avoid losing bug fixes). * Patch also includes change to exclude zero elevations when computing * mincat/maxcat. diff --git a/ogdi/driver/dted/object.c b/ogdi/driver/dted/object.c index 497b84c..e641a73 100644 --- a/ogdi/driver/dted/object.c +++ b/ogdi/driver/dted/object.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: object.c,v $ - * Revision 1.8 2016/06/28 14:32:45 erouault + * $Log$ + * Revision 1.8 2016-06-28 14:32:45 erouault * Fix all warnings about unused variables raised by GCC 4.8 * * Revision 1.7 2007/02/12 15:52:57 cbalint @@ -39,7 +39,7 @@ #include "ecs.h" #include "dted.h" -ECS_CVSID("$Id: object.c,v 1.8 2016/06/28 14:32:45 erouault Exp $"); +ECS_CVSID("$Id$"); /* * -------------------------------------------------------------------------- diff --git a/ogdi/driver/dted/utils.c b/ogdi/driver/dted/utils.c index 3cdedc8..f055b68 100644 --- a/ogdi/driver/dted/utils.c +++ b/ogdi/driver/dted/utils.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: utils.c,v $ - * Revision 1.8 2016/06/28 14:32:45 erouault + * $Log$ + * Revision 1.8 2016-06-28 14:32:45 erouault * Fix all warnings about unused variables raised by GCC 4.8 * * Revision 1.7 2007/02/12 15:52:57 cbalint @@ -35,7 +35,7 @@ #include "dted.h" -ECS_CVSID("$Id: utils.c,v 1.8 2016/06/28 14:32:45 erouault Exp $"); +ECS_CVSID("$Id$"); /* ---------------------------------------------------------- diff --git a/ogdi/driver/network/.cvsignore b/ogdi/driver/network/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/driver/network/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/driver/network/remote.def b/ogdi/driver/network/remote.def index eb3f916..996b125 100644 --- a/ogdi/driver/network/remote.def +++ b/ogdi/driver/network/remote.def @@ -1,24 +1,24 @@ -LIBRARY REMOTE - -CODE PRELOAD MOVEABLE DISCARDABLE -DATA PRELOAD SINGLE - -EXPORTS - dyn_CreateServer - dyn_DestroyServer - dyn_SelectLayer - dyn_SelectRegion - dyn_GetDictionary - dyn_GetNextObject - dyn_UpdateDictionary - dyn_GetServerProjection - dyn_GetGlobalBound - dyn_ReleaseLayer - dyn_GetAttributesFormat - dyn_GetRasterInfo - dyn_GetObject - dyn_GetObjectIdFromCoord - dyn_SetServerLanguage - dyn_SetServerProjection - dyn_SetRasterConversion - dyn_SetCompression +LIBRARY REMOTE + +CODE PRELOAD MOVEABLE DISCARDABLE +DATA PRELOAD SINGLE + +EXPORTS + dyn_CreateServer + dyn_DestroyServer + dyn_SelectLayer + dyn_SelectRegion + dyn_GetDictionary + dyn_GetNextObject + dyn_UpdateDictionary + dyn_GetServerProjection + dyn_GetGlobalBound + dyn_ReleaseLayer + dyn_GetAttributesFormat + dyn_GetRasterInfo + dyn_GetObject + dyn_GetObjectIdFromCoord + dyn_SetServerLanguage + dyn_SetServerProjection + dyn_SetRasterConversion + dyn_SetCompression diff --git a/ogdi/driver/rpf/.cvsignore b/ogdi/driver/rpf/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/driver/rpf/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/driver/rpf/object.c b/ogdi/driver/rpf/object.c index cfa5dcc..d12a042 100644 --- a/ogdi/driver/rpf/object.c +++ b/ogdi/driver/rpf/object.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: object.c,v $ - * Revision 1.3 2001/04/12 19:22:46 warmerda + * $Log$ + * Revision 1.3 2001-04-12 19:22:46 warmerda * applied DND support Image type support * */ @@ -25,7 +25,7 @@ #include "ecs.h" #include "rpf.h" -ECS_CVSID("$Id: object.c,v 1.3 2001/04/12 19:22:46 warmerda Exp $"); +ECS_CVSID("$Id$"); /* ******************************************************************* diff --git a/ogdi/driver/rpf/rpf.c b/ogdi/driver/rpf/rpf.c index 58a3f5a..e91c887 100644 --- a/ogdi/driver/rpf/rpf.c +++ b/ogdi/driver/rpf/rpf.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: rpf.c,v $ - * Revision 1.14 2016/07/08 10:22:55 erouault + * $Log$ + * Revision 1.14 2016-07-08 10:22:55 erouault * Fix various compilation problems on Windows (contributed by Jerome Siot) * * Revision 1.13 2007/02/24 16:58:17 cbalint @@ -54,7 +54,7 @@ #include "rpf.h" #include "datadict.h" -ECS_CVSID("$Id: rpf.c,v 1.14 2016/07/08 10:22:55 erouault Exp $"); +ECS_CVSID("$Id$"); int colorintensity[6] = {0,63,105,147,189,255}; @@ -182,11 +182,7 @@ void dyn_freelayerpriv(lpriv) lpriv->buffertile = NULL; } -#ifdef notdef - /* FIXME? ecs_TileDeleteAllLines does not exist */ - /* empty tilestruct */ ecs_TileDeleteAllLines (&(lpriv->tilestruct)); -#endif if (lpriv->ff != NULL) free(lpriv->ff); diff --git a/ogdi/driver/rpf/rpf.h b/ogdi/driver/rpf/rpf.h index 3fd5c9f..7bcd47d 100644 --- a/ogdi/driver/rpf/rpf.h +++ b/ogdi/driver/rpf/rpf.h @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: rpf.h,v $ - * Revision 1.7 2007/02/12 21:01:48 cbalint + * $Log$ + * Revision 1.7 2007-02-12 21:01:48 cbalint * Fix win32 target. It build and works now. (tested with VC6) * * Revision 1.6 2007/02/12 16:09:06 cbalint diff --git a/ogdi/driver/rpf/utils.c b/ogdi/driver/rpf/utils.c index 966c7b7..dd05fc3 100644 --- a/ogdi/driver/rpf/utils.c +++ b/ogdi/driver/rpf/utils.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: utils.c,v $ - * Revision 1.10 2016/06/28 14:32:45 erouault + * $Log$ + * Revision 1.10 2016-06-28 14:32:45 erouault * Fix all warnings about unused variables raised by GCC 4.8 * * Revision 1.9 2007/02/12 16:09:06 cbalint @@ -51,7 +51,7 @@ #include "rpf.h" -ECS_CVSID("$Id: utils.c,v 1.10 2016/06/28 14:32:45 erouault Exp $"); +ECS_CVSID("$Id$"); void dyn_string_tolower(char *); diff --git a/ogdi/driver/skeleton/.cvsignore b/ogdi/driver/skeleton/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/driver/skeleton/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/driver/vrf/.cvsignore b/ogdi/driver/vrf/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/driver/vrf/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/driver/vrf/feature.c b/ogdi/driver/vrf/feature.c index 56452cd..ac6b857 100644 --- a/ogdi/driver/vrf/feature.c +++ b/ogdi/driver/vrf/feature.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: feature.c,v $ - * Revision 1.20 2016/07/06 09:00:14 erouault + * $Log$ + * Revision 1.20 2016-07-06 09:00:14 erouault * add heuristics in vrf_get_ring_coords() to detect cycling topology of edges that lead to endless looping and eventually crashes. Be robust to memory allocation failures in various places, and properly cleanup allocated structures when returning * * Revision 1.19 2016/06/28 14:32:45 erouault @@ -118,7 +118,7 @@ #include "vrf.h" #include <assert.h> -ECS_CVSID("$Id: feature.c,v 1.20 2016/07/06 09:00:14 erouault Exp $"); +ECS_CVSID("$Id$"); vpf_projection_type NOPROJ = {DDS, 0.0, 0.0, 0.0, 0.0, 0, 0.0, 0.0, NULL, NULL, "Decimal Degrees "}; @@ -239,11 +239,13 @@ static int vrf_merge_line_prim( int *vertCount, double * vertX, double *vertY, ********************************************************************/ -int vrf_get_merged_line_feature (s, layer, primCount, primList) +int vrf_get_merged_line_feature (s, layer, primCount, primList, tileList, dryRun) ecs_Server *s; ecs_Layer *layer; int primCount; int32 *primList; + short *tileList; + int dryRun; { int iPrim; ecs_Result *primResults; @@ -258,7 +260,9 @@ int vrf_get_merged_line_feature (s, layer, primCount, primList) if( primCount == 1 ) { - return vrf_get_line_feature( s, layer, primList[0], + if( dryRun ) + return TRUE; + return vrf_get_line_feature( s, layer, primList[0], tileList[0], &(s->result) ); } @@ -270,14 +274,15 @@ int vrf_get_merged_line_feature (s, layer, primCount, primList) for( iPrim = 0; iPrim < primCount; iPrim++ ) { - if( !vrf_get_line_feature( s, layer, primList[iPrim], + if( !vrf_get_line_feature( s, layer, primList[iPrim], tileList[iPrim], primResults+iPrim ) ) { for( ; iPrim >=0; iPrim-- ) ecs_CleanUp( primResults + iPrim ); free( primResults ); - ecs_SetError(&(s->result), 1,"Error in vrf_get_merged_line_feature"); + if( !dryRun ) + ecs_SetError(&(s->result), 1,"Error in vrf_get_merged_line_feature"); return FALSE; } @@ -328,17 +333,51 @@ int vrf_get_merged_line_feature (s, layer, primCount, primList) } } - /* - Build returned line structure. - */ - if (!ecs_SetGeomLine(&(s->result), vertCount)) - return FALSE; - - for( i = 0; i < vertCount; i++ ) +#ifdef DEBUG + if( primsRemaining ) { - ECS_SETGEOMLINECOORD((&(s->result)), i, vertX[i], vertY[i]); + fprintf(stderr, "primCount = %d, primsRemaining = %d\n", + primCount, primsRemaining); + for( iPrim = 0; iPrim < primCount; iPrim++ ) + { + line = &(ECSGEOM((primResults+iPrim)).line); + + if( iPrim == 0 || primConsumed[iPrim] ) + fprintf(stderr,"consumed line\n"); + else + fprintf(stderr,"remaining line\n"); + fprintf(stderr, "tile: %d\n", tileList[iPrim]); + for( i = 0; i < line->c.c_len; i++ ) + { + fprintf(stderr, "%f %f\n", line->c.c_val[i].x, line->c.c_val[i].y); + } + } + { + fprintf(stderr, "merged line\n"); + for( i = 0; i < vertCount; i++ ) + { + fprintf(stderr, "%f %f\n", vertX[i], vertY[i]); + } + } } - +#endif + + if( !dryRun ) + { + assert( primsRemaining == 0 ); + + /* + Build returned line structure. + */ + if (!ecs_SetGeomLine(&(s->result), vertCount)) + return FALSE; + + for( i = 0; i < vertCount; i++ ) + { + ECS_SETGEOMLINECOORD((&(s->result)), i, vertX[i], vertY[i]); + } + } + /* Cleanup datastructures. */ @@ -352,7 +391,7 @@ int vrf_get_merged_line_feature (s, layer, primCount, primList) free( primResults ); - return TRUE; + return primsRemaining == 0; } /********************************************************************* @@ -372,10 +411,11 @@ int vrf_get_merged_line_feature (s, layer, primCount, primList) ********************************************************************/ -int vrf_get_line_feature (s, layer, prim_id, result) +int vrf_get_line_feature (s, layer, prim_id, tile_id, result) ecs_Server *s; ecs_Layer *layer; int prim_id; + short tile_id; ecs_Result *result; { int32 pos, count; @@ -399,6 +439,10 @@ int vrf_get_line_feature (s, layer, prim_id, result) return FALSE; } + if( !_selectTileLineWithRet(s, layer, tile_id) ) { + return FALSE; + } + /* ----------------------------------------------------------- @@ -619,15 +663,21 @@ static int vrf_get_mbr (table, prim_id, xmin, ymin, xmax, ymax) ********************************************************************/ -int vrf_get_line_mbr (layer, prim_id, xmin, ymin, xmax, ymax) +int vrf_get_line_mbr (s, layer, prim_id, tile_id, xmin, ymin, xmax, ymax) + ecs_Server *s; ecs_Layer *layer; int32 prim_id; + short tile_id; double *xmin; double *ymin; double *xmax; double *ymax; { LayerPrivateData *lpriv = (LayerPrivateData *) layer->priv; + + if( !_selectTileLineWithRet(s, layer, tile_id) ) + return FALSE; + return vrf_get_mbr(lpriv->l.line.mbrTable, prim_id, xmin, ymin, xmax, ymax); } @@ -648,10 +698,12 @@ int vrf_get_line_mbr (layer, prim_id, xmin, ymin, xmax, ymax) ********************************************************************/ -int vrf_get_lines_mbr (layer, primCount, primList, xmin, ymin, xmax, ymax) +int vrf_get_lines_mbr (s, layer, primCount, primList, tileList, xmin, ymin, xmax, ymax) + ecs_Server* s; ecs_Layer *layer; int32 primCount; int32 *primList; + short *tileList; double *xmin; double *ymin; double *xmax; @@ -659,14 +711,14 @@ int vrf_get_lines_mbr (layer, primCount, primList, xmin, ymin, xmax, ymax) { int i; - if( !vrf_get_line_mbr( layer, primList[0], xmin, ymin, xmax, ymax ) ) + if( !vrf_get_line_mbr( s, layer, primList[0], tileList[0], xmin, ymin, xmax, ymax ) ) return FALSE; for( i = 1; i < primCount; i++ ) { double x2min, x2max, y2min, y2max; - if( !vrf_get_line_mbr( layer, primList[i], + if( !vrf_get_line_mbr( s, layer, primList[i], tileList[i], &x2min, &y2min, &x2max, &y2max ) ) return FALSE; diff --git a/ogdi/driver/vrf/object.c b/ogdi/driver/vrf/object.c index 1ea988c..57444c1 100644 --- a/ogdi/driver/vrf/object.c +++ b/ogdi/driver/vrf/object.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: object.c,v $ - * Revision 1.12 2016/07/06 09:00:39 erouault + * $Log$ + * Revision 1.12 2016-07-06 09:00:39 erouault * VRF: implement ecs_SetErrorShouldStop() logic in the various _getNext.... methods * * Revision 1.11 2016/07/04 17:03:12 erouault @@ -91,7 +91,7 @@ #include "ecs.h" #include "vrf.h" -ECS_CVSID("$Id: object.c,v 1.12 2016/07/06 09:00:39 erouault Exp $"); +ECS_CVSID("$Id$"); /* ******************************************************************** @@ -325,22 +325,25 @@ void _getPrimList( ecs_Server *s, ecs_Layer *l, int32 object_id, int32 *feature_id, - short *tile_id, int32 *primCount, int32 **primList, + short **tileList, int32 *next_index ) { LayerPrivateData *lpriv = (LayerPrivateData *) l->priv; + short tile_id; int32 edg_id; int maxCount = 0; + int32 object_id_save; /* Get the first primitive for this feature. */ - _getTileAndPrimId(s,l,object_id,feature_id,tile_id,&edg_id); + _getTileAndPrimId(s,l,object_id,feature_id,&tile_id,&edg_id); object_id++; + object_id_save = object_id; /* If we aren't operating in merged format, just return this primiitive @@ -348,7 +351,9 @@ void _getPrimList( ecs_Server *s, maxCount = 1; *primCount = 1; *primList = (int32 *) malloc(sizeof(int32) * maxCount); + *tileList = (short *) malloc(sizeof(short) * maxCount); (*primList)[0] = edg_id; + (*tileList)[0] = tile_id; if( !lpriv->mergeFeatures ) { @@ -364,14 +369,12 @@ void _getPrimList( ecs_Server *s, while( object_id < lpriv->joinTable.nrows ) { int32 this_feature_id; - short this_tile_id; - + _getTileAndPrimId(s,l,object_id, - &this_feature_id,&this_tile_id,&edg_id); + &this_feature_id,&tile_id,&edg_id); if( this_feature_id != *feature_id ) break; - /* This primitive matches our feature_id, add to the list. */ @@ -379,6 +382,7 @@ void _getPrimList( ecs_Server *s, if( *primCount == maxCount ) { int32* newPrimList; + short* newTileList; maxCount += 100; newPrimList = (int32*) realloc(*primList, sizeof(int32) * maxCount); if( newPrimList == NULL ) @@ -386,19 +390,47 @@ void _getPrimList( ecs_Server *s, /* Should probably error out loudly */ free( *primList ); *primList = NULL; + free( *tileList ); + *tileList = NULL; *primCount = 0; object_id++; break; } *primList = newPrimList; + + newTileList = (short*) realloc(*tileList, sizeof(short) * maxCount); + if( newPrimList == NULL ) + { + /* Should probably error out loudly */ + free( *primList ); + *primList = NULL; + free( *tileList ); + *tileList = NULL; + *primCount = 0; + object_id++; + break; + } + *tileList = newTileList; } (*primList)[*primCount] = edg_id; + (*tileList)[*primCount] = tile_id; (*primCount)++; object_id++; } + /* On some products, consecutive lines of same feature id are not mergeable, + * so return them one at a time to avoid loosing information */ + if( *primCount > 1 ) + { + if (!vrf_get_merged_line_feature(s,l,*primCount,*primList,*tileList,TRUE)) + { + *primCount = 1; + object_id = object_id_save; + } + } + *next_index = object_id; } @@ -416,9 +448,9 @@ static void _getPrimListByFeatureId( ecs_Server *s, ecs_Layer *l, int32 object_id, /* this should be feature id */ - short *tile_id, int32 *primCount, int32 **primList, + short **tileList, int32 *next_index ) { @@ -432,20 +464,22 @@ _getPrimListByFeatureId( ecs_Server *s, for( edgeId = 0; edgeId < edgeCount; edgeId++ ) { + short tile_id; int32 prim_id, this_feature_id; - _getTileAndPrimId( s, l, edgeId, &this_feature_id, tile_id, &prim_id ); + _getTileAndPrimId( s, l, edgeId, &this_feature_id, &tile_id, &prim_id ); if( object_id == this_feature_id ) { - _getPrimList( s, l, edgeId, &this_feature_id, tile_id, - primCount, primList, next_index ); + _getPrimList( s, l, edgeId, &this_feature_id, + primCount, primList, tileList, next_index ); return; } } *primCount = 0; *primList = NULL; + *tileList = NULL; } /* @@ -866,15 +900,14 @@ _getNextObjectLine(s,l) ecs_Layer *l; { char buffer[256]; - register ServerPrivateData *spriv = (ServerPrivateData *) s->priv; register LayerPrivateData *lpriv = (LayerPrivateData *) l->priv; - short tile_id; int32 line_id; int found = 0; char *temp; double xmin, xmax, ymin, ymax; int edgeCount; int32 *primList = NULL, primCount = 0; + short *tileList = NULL; if( lpriv->mergeFeatures ) edgeCount = lpriv->joinTable.nrows; @@ -889,42 +922,21 @@ retry: free( primList ); primList = NULL; } + if( tileList != NULL ) + { + free( tileList ); + tileList = NULL; + } - _getPrimList( s, l, l->index, &line_id, &tile_id, &primCount, &primList, + _getPrimList( s, l, l->index, &line_id, &primCount, &primList, &tileList, (int32 *) &(l->index)); if (set_member(line_id,lpriv->feature_rows)) { - if (tile_id == -1) { - free( primList ); - primList = NULL; - if( ecs_SetErrorShouldStop(&(s->result), 1, "The VRF tiles are badly defined") ) - return; - continue; - } - if (tile_id == -2) { - free( primList ); - primList = NULL; - if( ecs_SetErrorShouldStop(&(s->result), 1, "The join table is empty") ) - return; - continue; - } - - if( lpriv->isTiled && (tile_id < 1 || tile_id > spriv->nbTile) ) - { - char szErrorMsg[128]; - free( primList ); - primList = NULL; - sprintf(szErrorMsg, "Object index=%d references incorrect tile_id=%d (nbTile=%d)", - l->index, tile_id, spriv->nbTile); - if( ecs_SetErrorShouldStop(&(s->result), 1, szErrorMsg) ) - return; - } - else if (lpriv->isTiled == 0 || spriv->tile[tile_id-1].isSelected) { - - _selectTileLine(s,l,tile_id); - if (!vrf_get_lines_mbr(l,primCount,primList,&xmin,&ymin,&xmax,&ymax)) { + if (!vrf_get_lines_mbr(s, l,primCount,primList,tileList,&xmin,&ymin,&xmax,&ymax)) { free( primList ); primList = NULL; + free( tileList ); + tileList = NULL; if( ecs_SetErrorShouldStop(&(s->result),1,"Unable to open mbr") ) return; continue; @@ -934,17 +946,18 @@ retry: found = 1; break; } - } } } /* if a feature is found, get the feature info */ if (found) { - if( !vrf_get_merged_line_feature(s,l,primCount,primList) ) + if( !vrf_get_merged_line_feature(s,l,primCount,primList,tileList, FALSE) ) { free( primList ); primList = NULL; + free( tileList ); + tileList = NULL; if( !ecs_ShouldStopOnError() ) { char* message= strdup(s->result.message); @@ -963,11 +976,13 @@ retry: } else { free( primList ); + free( tileList ); ecs_SetError(&(s->result),2,"End of selection"); return; } free( primList ); + free( tileList ); /* Add the identifier to the object */ @@ -1000,47 +1015,39 @@ _getObjectLine(s,l,id) register LayerPrivateData *lpriv = (LayerPrivateData *) l->priv; int object_id; - short tile_id; double xmin, xmax, ymin, ymax; char *temp; int32 primCount, *primList, next_object; + short *tileList; object_id = atoi(id); - _getPrimListByFeatureId( s, l, object_id, &tile_id, - &primCount, &primList, &next_object ); + _getPrimListByFeatureId( s, l, object_id, + &primCount, &primList, &tileList, &next_object ); if (primCount == 0) { ecs_SetError(&(s->result), 1, "No primitives identified for this feature."); return; } - if (tile_id == -1) { - ecs_SetError(&(s->result), 1, "The VRF tiles are badly defined"); - return; - } - if (tile_id == -2) { - ecs_SetError(&(s->result), 1, "The join table is empty"); - return; - } - - _selectTileLine(s,l,tile_id); - if (!vrf_get_merged_line_feature(s,l,primCount,primList)) + if (!vrf_get_merged_line_feature(s,l,primCount,primList,tileList, FALSE)) return; /* Add the identifier to the object */ ecs_SetObjectId(&(s->result),id); - if (vrf_get_lines_mbr(l,primCount,primList,&xmin,&ymin,&xmax,&ymax)) { + if (vrf_get_lines_mbr(s, l,primCount,primList,tileList,&xmin,&ymin,&xmax,&ymax)) { ECS_SETGEOMBOUNDINGBOX((&(s->result)),xmin,ymin,xmax,ymax); } else { free( primList ); + free( tileList ); ecs_SetError(&(s->result), 1, "VRF table mbr not open"); return; } free( primList ); + free( tileList ); /* Add the attributes to the object */ @@ -1062,11 +1069,10 @@ _getObjectIdLine(s,l,coord) ecs_Coordinate *coord; { char buffer[256]; - register ServerPrivateData *spriv = (ServerPrivateData *) s->priv; register LayerPrivateData *lpriv = (LayerPrivateData *) l->priv; - short tile_id; int feature_id; int32 line_id, primCount, *primList; + short* tileList; double xmin, xmax, ymin, ymax; int32 index, edgeCount; double distance,result; @@ -1081,33 +1087,22 @@ _getObjectIdLine(s,l,coord) index = 0; while( index < edgeCount ) { - _getPrimList( s, l, index, &line_id, &tile_id, &primCount, &primList, + _getPrimList( s, l, index, &line_id, &primCount, &primList, &tileList, &index); if (set_member(line_id,lpriv->feature_rows)) { - if (tile_id == -1) { - ecs_SetError(&(s->result), 1, "The VRF tiles are badly defined"); - return; - } - if (tile_id == -2) { - ecs_SetError(&(s->result), 1, "The join table is empty"); - return; - } - if (!(lpriv->isTiled) || - ((coord->x > spriv->tile[tile_id-1].xmin) && - (coord->x < spriv->tile[tile_id-1].xmax) && - (coord->y > spriv->tile[tile_id-1].ymin) && - (coord->y < spriv->tile[tile_id-1].ymax))) { - - _selectTileLine(s,l,tile_id); - if (!vrf_get_lines_mbr(l,primCount,primList,&xmin,&ymin,&xmax,&ymax)) { + if (!vrf_get_lines_mbr(s,l,primCount,primList,tileList,&xmin,&ymin,&xmax,&ymax)) { ecs_SetError(&(s->result), 1, "VRF table mbr not open"); return; } if ((coord->x>xmin) && (coord->x<xmax) && (coord->y>ymin) && (coord->y<ymax)) { - if (!vrf_get_merged_line_feature(s,l,primCount,primList)) + if (!vrf_get_merged_line_feature(s,l,primCount,primList,tileList, FALSE)) + { + free(primList); + free(tileList); return; + } result = ecs_DistanceObjectWithTolerance((&(ECSOBJECT((&(s->result))))), coord->x, coord->y); @@ -1116,14 +1111,17 @@ _getObjectIdLine(s,l,coord) feature_id = line_id; } } - } } } if (feature_id < 0) { ecs_SetError(&(s->result),1,"Can't find any line at this location"); + free(primList); + free(tileList); return; } + free(primList); + free(tileList); sprintf(buffer,"%d",feature_id); ecs_SetText(&(s->result),buffer); @@ -1138,11 +1136,25 @@ _selectTileLine(s,l,tile_id) ecs_Layer *l; int tile_id; { + _selectTileLineWithRet(s,l,tile_id); +} + +int +_selectTileLineWithRet(s,l,tile_id) + ecs_Server *s; + ecs_Layer *l; + int tile_id; +{ register LayerPrivateData *lpriv = (LayerPrivateData *) l->priv; register ServerPrivateData *spriv = (ServerPrivateData *) s->priv; char buffer[256]; if (lpriv->isTiled) { + if( tile_id < 1 || tile_id > spriv->nbTile ) + { + return 0; + } + if (lpriv->current_tileid != tile_id) { if (lpriv->current_tileid != -1) { /* fermeture des tables ouvertes precedemment */ @@ -1211,6 +1223,7 @@ _selectTileLine(s,l,tile_id) lpriv->current_tileid = 1; } } + return 1; } /* diff --git a/ogdi/driver/vrf/open.c b/ogdi/driver/vrf/open.c index e13864e..c2bebeb 100644 --- a/ogdi/driver/vrf/open.c +++ b/ogdi/driver/vrf/open.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: open.c,v $ - * Revision 1.6 2001/06/21 20:30:15 warmerda + * $Log$ + * Revision 1.6 2001-06-21 20:30:15 warmerda * added ECS_CVSID * * Revision 1.5 2001/06/13 17:33:59 warmerda @@ -28,7 +28,7 @@ #include "ecs.h" #include "vrf.h" -ECS_CVSID("$Id: open.c,v 1.6 2001/06/21 20:30:15 warmerda Exp $"); +ECS_CVSID("$Id$"); /* * -------------------------------------------------------------------------- diff --git a/ogdi/driver/vrf/swq.c b/ogdi/driver/vrf/swq.c index a6769c5..9571088 100644 --- a/ogdi/driver/vrf/swq.c +++ b/ogdi/driver/vrf/swq.c @@ -17,8 +17,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: swq.c,v $ - * Revision 1.3 2001/06/26 00:57:34 warmerda + * $Log$ + * Revision 1.3 2001-06-26 00:57:34 warmerda * fixed strcasecmp on WIN32 * * Revision 1.2 2001/06/21 20:30:15 warmerda @@ -36,7 +36,7 @@ #include "swq.h" #include "ecs.h" -ECS_CVSID("$Id: swq.c,v 1.3 2001/06/26 00:57:34 warmerda Exp $"); +ECS_CVSID("$Id$"); #ifndef SWQ_MALLOC #define SWQ_MALLOC(x) malloc(x) diff --git a/ogdi/driver/vrf/swq.h b/ogdi/driver/vrf/swq.h index 5c29d9b..5c22d77 100644 --- a/ogdi/driver/vrf/swq.h +++ b/ogdi/driver/vrf/swq.h @@ -17,8 +17,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: swq.h,v $ - * Revision 1.1 2001/06/20 21:49:16 warmerda + * $Log$ + * Revision 1.1 2001-06-20 21:49:16 warmerda * New * */ diff --git a/ogdi/driver/vrf/utils.c b/ogdi/driver/vrf/utils.c index 4a0380d..f74990c 100644 --- a/ogdi/driver/vrf/utils.c +++ b/ogdi/driver/vrf/utils.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: utils.c,v $ - * Revision 1.21 2016/07/07 15:50:15 erouault + * $Log$ + * Revision 1.21 2016-07-07 15:50:15 erouault * fix stack buffer overflow in vrf_GetMetadata() when reading the level in CAT files. Found by GCC 5.2 -faddress=sanitize * * Revision 1.20 2016/07/04 17:03:12 erouault @@ -113,7 +113,7 @@ #include "vrf.h" #include "vpfprop.h" -ECS_CVSID("$Id: utils.c,v 1.21 2016/07/07 15:50:15 erouault Exp $"); +ECS_CVSID("$Id$"); #ifdef _WINDOWS #define SEPARATOR '\\' diff --git a/ogdi/driver/vrf/vrf.c b/ogdi/driver/vrf/vrf.c index 0b46044..76266ee 100644 --- a/ogdi/driver/vrf/vrf.c +++ b/ogdi/driver/vrf/vrf.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: vrf.c,v $ - * Revision 1.21 2016/07/06 09:01:30 erouault + * $Log$ + * Revision 1.21 2016-07-06 09:01:30 erouault * VRF: fix memory leaks in error code paths of dyn_SelectLayer() * * Revision 1.20 2007/05/09 21:29:50 cbalint @@ -109,7 +109,7 @@ #include "vrf.h" #include "datadict.h" -ECS_CVSID("$Id: vrf.c,v 1.21 2016/07/06 09:01:30 erouault Exp $"); +ECS_CVSID("$Id$"); /* layer oriented functions are keeped in data structure to simplify code */ diff --git a/ogdi/driver/vrf/vrf.def b/ogdi/driver/vrf/vrf.def index 51d0923..3deb386 100644 --- a/ogdi/driver/vrf/vrf.def +++ b/ogdi/driver/vrf/vrf.def @@ -1,23 +1,23 @@ -LIBRARY VRF - -CODE PRELOAD MOVEABLE DISCARDABLE -DATA PRELOAD SINGLE - -EXPORTS - dyn_CreateServer - dyn_DestroyServer - dyn_SelectLayer - dyn_ReleaseLayer - dyn_SelectRegion - dyn_GetDictionary - dyn_GetAttributesFormat - dyn_GetNextObject - dyn_UpdateDictionary - dyn_GetServerProjection - dyn_GetGlobalBound - dyn_GetObject - dyn_GetObjectIdFromCoord - dyn_GetServerProjection - dyn_GetGlobalBound - dyn_SetServerLanguage - +LIBRARY VRF + +CODE PRELOAD MOVEABLE DISCARDABLE +DATA PRELOAD SINGLE + +EXPORTS + dyn_CreateServer + dyn_DestroyServer + dyn_SelectLayer + dyn_ReleaseLayer + dyn_SelectRegion + dyn_GetDictionary + dyn_GetAttributesFormat + dyn_GetNextObject + dyn_UpdateDictionary + dyn_GetServerProjection + dyn_GetGlobalBound + dyn_GetObject + dyn_GetObjectIdFromCoord + dyn_GetServerProjection + dyn_GetGlobalBound + dyn_SetServerLanguage + diff --git a/ogdi/driver/vrf/vrf.h b/ogdi/driver/vrf/vrf.h index 7525789..4a6cf57 100644 --- a/ogdi/driver/vrf/vrf.h +++ b/ogdi/driver/vrf/vrf.h @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: vrf.h,v $ - * Revision 1.10 2004/04/04 04:33:01 warmerda + * $Log$ + * Revision 1.10 2004-04-04 04:33:01 warmerda * added vrf_free_ObjAttributeBuffer * * Revision 1.9 2004/02/18 21:33:18 warmerda @@ -382,14 +382,15 @@ int vrf_build_capabilities( ecs_Server *s, const char *request ); int vrf_get_xy _ANSI_ARGS_((vpf_table_type table, row_type row,int32 pos, double *x,double *y)); int vrf_get_point_feature _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, int prim_id)); int vrf_get_line_feature _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, - int prim_id, ecs_Result *result )); + int prim_id, short tile_id, ecs_Result *result )); int vrf_get_merged_line_feature _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, - int primCount, int32 *primList)); + int primCount, int32 *primList, short *tileList, int dryRun)); int vrf_get_text_feature _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, int prim_id)); int vrf_get_area_feature _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, int prim_id)); -int vrf_get_line_mbr _ANSI_ARGS_((ecs_Layer *layer,int32 prim_id,double *xmin,double *ymin,double *xmax,double *ymax)); -int vrf_get_lines_mbr _ANSI_ARGS_((ecs_Layer *layer, +int vrf_get_line_mbr _ANSI_ARGS_((ecs_Server* s, ecs_Layer *layer,int32 prim_id,short tile_id,double *xmin,double *ymin,double *xmax,double *ymax)); +int vrf_get_lines_mbr _ANSI_ARGS_((ecs_Server* s, ecs_Layer *layer, int32 primCount, int32 *primList, + short* tileList, double *xmin,double *ymin, double *xmax,double *ymax)); int vrf_get_area_mbr _ANSI_ARGS_((ecs_Layer *layer,int32 prim_id,double *xmin,double *ymin,double *xmax,double *ymax)); @@ -431,8 +432,9 @@ void _getTileAndPrimId _ANSI_ARGS_((ecs_Server *s,ecs_Layer *l, short *tile_id,int32 *prim_id)); void _getPrimList _ANSI_ARGS_((ecs_Server *s,ecs_Layer *l, int32 object_id, - int32 *feature_id, short *tile_id, + int32 *feature_id, int32 *primCount, int32 **primList, + short** tileList, int32 *next_object_id)); void _getNextObjectLine _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer)); @@ -450,6 +452,7 @@ void _getObjectIdArea _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, ecs_Coordina void _getObjectIdPoint _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, ecs_Coordinate *coord)); void _getObjectIdText _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, ecs_Coordinate *coord)); +int _selectTileLineWithRet _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, int tile_id)); void _selectTileLine _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, int tile_id)); void _selectTileArea _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, int tile_id)); void _selectTilePoint _ANSI_ARGS_((ecs_Server *s,ecs_Layer *layer, int tile_id)); diff --git a/ogdi/driver/vrf/vrfswq.c b/ogdi/driver/vrf/vrfswq.c index 743a9af..d053221 100644 --- a/ogdi/driver/vrf/vrfswq.c +++ b/ogdi/driver/vrf/vrfswq.c @@ -17,8 +17,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: vrfswq.c,v $ - * Revision 1.7 2007/05/09 20:46:28 cbalint + * $Log$ + * Revision 1.7 2007-05-09 20:46:28 cbalint * From: Even Rouault <[email protected]> * Date: Friday 21:14:18 * @@ -89,7 +89,7 @@ #include "vrf.h" #include "swq.h" -ECS_CVSID("$Id: vrfswq.c,v 1.7 2007/05/09 20:46:28 cbalint Exp $"); +ECS_CVSID("$Id$"); #ifndef __LINKLIST_H__ #include "linklist.h" diff --git a/ogdi/examples/example1/.cvsignore b/ogdi/examples/example1/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/examples/example1/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/examples/example2/.cvsignore b/ogdi/examples/example2/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/examples/example2/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/gltpd/.cvsignore b/ogdi/gltpd/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/gltpd/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/gltpd/asyncsvr.c b/ogdi/gltpd/asyncsvr.c index dfdf21b..bdfd3e1 100644 --- a/ogdi/gltpd/asyncsvr.c +++ b/ogdi/gltpd/asyncsvr.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: asyncsvr.c,v $ - * Revision 1.7 2016/06/28 14:32:45 erouault + * $Log$ + * Revision 1.7 2016-06-28 14:32:45 erouault * Fix all warnings about unused variables raised by GCC 4.8 * * Revision 1.6 2007/02/12 21:01:48 cbalint @@ -52,7 +52,7 @@ #include <ogdi_macro.h> -ECS_CVSID("$Id: asyncsvr.c,v 1.7 2016/06/28 14:32:45 erouault Exp $"); +ECS_CVSID("$Id$"); #ifdef _WINDOWS # include "rpc/pmap_cln.h" diff --git a/ogdi/gltpd/ecs_sif.c b/ogdi/gltpd/ecs_sif.c index 456e0a2..d3a3c41 100644 --- a/ogdi/gltpd/ecs_sif.c +++ b/ogdi/gltpd/ecs_sif.c @@ -16,15 +16,15 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecs_sif.c,v $ - * Revision 1.3 2001/04/09 15:04:35 warmerda + * $Log$ + * Revision 1.3 2001-04-09 15:04:35 warmerda * applied new source headers * */ #include "ecs.h" -ECS_CVSID("$Id: ecs_sif.c,v 1.3 2001/04/09 15:04:35 warmerda Exp $"); +ECS_CVSID("$Id$"); ecs_Server *svr_handle; diff --git a/ogdi/glutil/.cvsignore b/ogdi/glutil/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/glutil/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/glutil/getglenv.c b/ogdi/glutil/getglenv.c index 707f0cb..b471ca3 100644 --- a/ogdi/glutil/getglenv.c +++ b/ogdi/glutil/getglenv.c @@ -1,4 +1,5 @@ #ifdef _WINDOWS +#undef _WINREG_ #include <windows.h> #endif #include <stdlib.h> diff --git a/ogdi/glutil/status_d.mak b/ogdi/glutil/status_d.mak index c77c3ef..e68eb10 100644 --- a/ogdi/glutil/status_d.mak +++ b/ogdi/glutil/status_d.mak @@ -1,186 +1,186 @@ -# Microsoft Visual C++ Generated NMAKE File, Format Version 2.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Application" 0x0101 - -!IF "$(CFG)" == "" -CFG=Win32 Debug -!MESSAGE No configuration specified. Defaulting to Win32 Debug. -!ENDIF - -!IF "$(CFG)" != "Win32 Release" && "$(CFG)" != "Win32 Debug" -!MESSAGE Invalid configuration "$(CFG)" specified. -!MESSAGE You can specify a configuration when running NMAKE on this makefile -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "status_d.mak" CFG="Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "Win32 Release" (based on "Win32 (x86) Application") -!MESSAGE "Win32 Debug" (based on "Win32 (x86) Application") -!MESSAGE -!ERROR An invalid configuration is specified. -!ENDIF - -################################################################################ -# Begin Project -MTL=MkTypLib.exe -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "WinRel" -# PROP BASE Intermediate_Dir "WinRel" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "WinRel" -# PROP Intermediate_Dir "WinRel" -OUTDIR=.\WinRel -INTDIR=.\WinRel - -ALL : $(OUTDIR)/status_d.exe $(OUTDIR)/status_d.bsc - -$(OUTDIR) : - if not exist $(OUTDIR)/nul mkdir $(OUTDIR) - -# ADD BASE MTL /nologo /D "NDEBUG" /win32 -# ADD MTL /nologo /D "NDEBUG" /win32 -MTL_PROJ=/nologo /D "NDEBUG" /win32 -# ADD BASE CPP /nologo /ML /W3 /GX /YX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FR /c -# ADD CPP /nologo /ML /W3 /GX /YX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FR /c -CPP_PROJ=/nologo /ML /W3 /GX /YX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS"\ - /FR$(INTDIR)/ /Fp$(OUTDIR)/"status_d.pch" /Fo$(INTDIR)/ /c -CPP_OBJS=.\WinRel/ -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -RSC_PROJ=/l 0x409 /fo$(INTDIR)/"status_d.res" /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -BSC32_FLAGS=/nologo /o$(OUTDIR)/"status_d.bsc" -BSC32_SBRS= \ - $(INTDIR)/status_d.sbr - -$(OUTDIR)/status_d.bsc : $(OUTDIR) $(BSC32_SBRS) - $(BSC32) @<< - $(BSC32_FLAGS) $(BSC32_SBRS) -<< - -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO /SUBSYSTEM:windows /MACHINE:I386 -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO /SUBSYSTEM:windows /MACHINE:I386 -LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ - advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO\ - /SUBSYSTEM:windows /INCREMENTAL:no /PDB:$(OUTDIR)/"status_d.pdb" /MACHINE:I386\ - /OUT:$(OUTDIR)/"status_d.exe" -DEF_FILE= -LINK32_OBJS= \ - $(INTDIR)/status_d.obj \ - $(INTDIR)/status_d.res - -$(OUTDIR)/status_d.exe : $(OUTDIR) $(DEF_FILE) $(LINK32_OBJS) - $(LINK32) @<< - $(LINK32_FLAGS) $(LINK32_OBJS) -<< - -!ELSEIF "$(CFG)" == "Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "WinDebug" -# PROP BASE Intermediate_Dir "WinDebug" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "WinDebug" -# PROP Intermediate_Dir "WinDebug" -OUTDIR=.\WinDebug -INTDIR=.\WinDebug - -ALL : $(OUTDIR)/status_d.exe $(OUTDIR)/status_d.bsc - -$(OUTDIR) : - if not exist $(OUTDIR)/nul mkdir $(OUTDIR) - -# ADD BASE MTL /nologo /D "_DEBUG" /win32 -# ADD MTL /nologo /D "_DEBUG" /win32 -MTL_PROJ=/nologo /D "_DEBUG" /win32 -# ADD BASE CPP /nologo /ML /W3 /GX /Zi /YX /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FR /c -# ADD CPP /nologo /ML /W3 /GX /Zi /YX /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FR /c -CPP_PROJ=/nologo /ML /W3 /GX /Zi /YX /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS"\ - /FR$(INTDIR)/ /Fp$(OUTDIR)/"status_d.pch" /Fo$(INTDIR)/\ - /Fd$(OUTDIR)/"status_d.pdb" /c -CPP_OBJS=.\WinDebug/ -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -RSC_PROJ=/l 0x409 /fo$(INTDIR)/"status_d.res" /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -BSC32_FLAGS=/nologo /o$(OUTDIR)/"status_d.bsc" -BSC32_SBRS= \ - $(INTDIR)/status_d.sbr - -$(OUTDIR)/status_d.bsc : $(OUTDIR) $(BSC32_SBRS) - $(BSC32) @<< - $(BSC32_FLAGS) $(BSC32_SBRS) -<< - -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO /SUBSYSTEM:windows /DEBUG /MACHINE:I386 -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO /SUBSYSTEM:windows /DEBUG /MACHINE:I386 -LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ - advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO\ - /SUBSYSTEM:windows /INCREMENTAL:yes /PDB:$(OUTDIR)/"status_d.pdb" /DEBUG\ - /MACHINE:I386 /OUT:$(OUTDIR)/"status_d.exe" -DEF_FILE= -LINK32_OBJS= \ - $(INTDIR)/status_d.obj \ - $(INTDIR)/status_d.res - -$(OUTDIR)/status_d.exe : $(OUTDIR) $(DEF_FILE) $(LINK32_OBJS) - $(LINK32) @<< - $(LINK32_FLAGS) $(LINK32_OBJS) -<< - -!ENDIF - -.c{$(CPP_OBJS)}.obj: - $(CPP) $(CPP_PROJ) $< - -.cpp{$(CPP_OBJS)}.obj: - $(CPP) $(CPP_PROJ) $< - -.cxx{$(CPP_OBJS)}.obj: - $(CPP) $(CPP_PROJ) $< - -################################################################################ -# Begin Group "Source Files" - -################################################################################ -# Begin Source File - -SOURCE=.\status_d.c -DEP_STATU=\ - .\status_d.h - -$(INTDIR)/status_d.obj : $(SOURCE) $(DEP_STATU) $(INTDIR) - -# End Source File -################################################################################ -# Begin Source File - -SOURCE=.\status_d.rc -DEP_STATUS=\ - .\status_d.h - -$(INTDIR)/status_d.res : $(SOURCE) $(DEP_STATUS) $(INTDIR) - $(RSC) $(RSC_PROJ) $(SOURCE) - -# End Source File -# End Group -# End Project -################################################################################ +# Microsoft Visual C++ Generated NMAKE File, Format Version 2.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Application" 0x0101 + +!IF "$(CFG)" == "" +CFG=Win32 Debug +!MESSAGE No configuration specified. Defaulting to Win32 Debug. +!ENDIF + +!IF "$(CFG)" != "Win32 Release" && "$(CFG)" != "Win32 Debug" +!MESSAGE Invalid configuration "$(CFG)" specified. +!MESSAGE You can specify a configuration when running NMAKE on this makefile +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "status_d.mak" CFG="Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "Win32 Release" (based on "Win32 (x86) Application") +!MESSAGE "Win32 Debug" (based on "Win32 (x86) Application") +!MESSAGE +!ERROR An invalid configuration is specified. +!ENDIF + +################################################################################ +# Begin Project +MTL=MkTypLib.exe +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "WinRel" +# PROP BASE Intermediate_Dir "WinRel" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "WinRel" +# PROP Intermediate_Dir "WinRel" +OUTDIR=.\WinRel +INTDIR=.\WinRel + +ALL : $(OUTDIR)/status_d.exe $(OUTDIR)/status_d.bsc + +$(OUTDIR) : + if not exist $(OUTDIR)/nul mkdir $(OUTDIR) + +# ADD BASE MTL /nologo /D "NDEBUG" /win32 +# ADD MTL /nologo /D "NDEBUG" /win32 +MTL_PROJ=/nologo /D "NDEBUG" /win32 +# ADD BASE CPP /nologo /ML /W3 /GX /YX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FR /c +# ADD CPP /nologo /ML /W3 /GX /YX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FR /c +CPP_PROJ=/nologo /ML /W3 /GX /YX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS"\ + /FR$(INTDIR)/ /Fp$(OUTDIR)/"status_d.pch" /Fo$(INTDIR)/ /c +CPP_OBJS=.\WinRel/ +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +RSC_PROJ=/l 0x409 /fo$(INTDIR)/"status_d.res" /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +BSC32_FLAGS=/nologo /o$(OUTDIR)/"status_d.bsc" +BSC32_SBRS= \ + $(INTDIR)/status_d.sbr + +$(OUTDIR)/status_d.bsc : $(OUTDIR) $(BSC32_SBRS) + $(BSC32) @<< + $(BSC32_FLAGS) $(BSC32_SBRS) +<< + +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO /SUBSYSTEM:windows /MACHINE:I386 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO /SUBSYSTEM:windows /MACHINE:I386 +LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ + advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO\ + /SUBSYSTEM:windows /INCREMENTAL:no /PDB:$(OUTDIR)/"status_d.pdb" /MACHINE:I386\ + /OUT:$(OUTDIR)/"status_d.exe" +DEF_FILE= +LINK32_OBJS= \ + $(INTDIR)/status_d.obj \ + $(INTDIR)/status_d.res + +$(OUTDIR)/status_d.exe : $(OUTDIR) $(DEF_FILE) $(LINK32_OBJS) + $(LINK32) @<< + $(LINK32_FLAGS) $(LINK32_OBJS) +<< + +!ELSEIF "$(CFG)" == "Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "WinDebug" +# PROP BASE Intermediate_Dir "WinDebug" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "WinDebug" +# PROP Intermediate_Dir "WinDebug" +OUTDIR=.\WinDebug +INTDIR=.\WinDebug + +ALL : $(OUTDIR)/status_d.exe $(OUTDIR)/status_d.bsc + +$(OUTDIR) : + if not exist $(OUTDIR)/nul mkdir $(OUTDIR) + +# ADD BASE MTL /nologo /D "_DEBUG" /win32 +# ADD MTL /nologo /D "_DEBUG" /win32 +MTL_PROJ=/nologo /D "_DEBUG" /win32 +# ADD BASE CPP /nologo /ML /W3 /GX /Zi /YX /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FR /c +# ADD CPP /nologo /ML /W3 /GX /Zi /YX /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FR /c +CPP_PROJ=/nologo /ML /W3 /GX /Zi /YX /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS"\ + /FR$(INTDIR)/ /Fp$(OUTDIR)/"status_d.pch" /Fo$(INTDIR)/\ + /Fd$(OUTDIR)/"status_d.pdb" /c +CPP_OBJS=.\WinDebug/ +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +RSC_PROJ=/l 0x409 /fo$(INTDIR)/"status_d.res" /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +BSC32_FLAGS=/nologo /o$(OUTDIR)/"status_d.bsc" +BSC32_SBRS= \ + $(INTDIR)/status_d.sbr + +$(OUTDIR)/status_d.bsc : $(OUTDIR) $(BSC32_SBRS) + $(BSC32) @<< + $(BSC32_FLAGS) $(BSC32_SBRS) +<< + +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO /SUBSYSTEM:windows /DEBUG /MACHINE:I386 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO /SUBSYSTEM:windows /DEBUG /MACHINE:I386 +LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ + advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO\ + /SUBSYSTEM:windows /INCREMENTAL:yes /PDB:$(OUTDIR)/"status_d.pdb" /DEBUG\ + /MACHINE:I386 /OUT:$(OUTDIR)/"status_d.exe" +DEF_FILE= +LINK32_OBJS= \ + $(INTDIR)/status_d.obj \ + $(INTDIR)/status_d.res + +$(OUTDIR)/status_d.exe : $(OUTDIR) $(DEF_FILE) $(LINK32_OBJS) + $(LINK32) @<< + $(LINK32_FLAGS) $(LINK32_OBJS) +<< + +!ENDIF + +.c{$(CPP_OBJS)}.obj: + $(CPP) $(CPP_PROJ) $< + +.cpp{$(CPP_OBJS)}.obj: + $(CPP) $(CPP_PROJ) $< + +.cxx{$(CPP_OBJS)}.obj: + $(CPP) $(CPP_PROJ) $< + +################################################################################ +# Begin Group "Source Files" + +################################################################################ +# Begin Source File + +SOURCE=.\status_d.c +DEP_STATU=\ + .\status_d.h + +$(INTDIR)/status_d.obj : $(SOURCE) $(DEP_STATU) $(INTDIR) + +# End Source File +################################################################################ +# Begin Source File + +SOURCE=.\status_d.rc +DEP_STATUS=\ + .\status_d.h + +$(INTDIR)/status_d.res : $(SOURCE) $(DEP_STATUS) $(INTDIR) + $(RSC) $(RSC_PROJ) $(SOURCE) + +# End Source File +# End Group +# End Project +################################################################################ diff --git a/ogdi/glutil/status_d.rc b/ogdi/glutil/status_d.rc index 978a0b4..46e1e0a 100644 --- a/ogdi/glutil/status_d.rc +++ b/ogdi/glutil/status_d.rc @@ -1,22 +1,22 @@ -/**************************************************************************** - - -status_d.rc - -produced by Francois Levert from LAS inc. -****************************************************************************/ -#define WIN32_LEAN_AND_MEAN - -#include <windows.h> -#include "status_d.h" - -STATUS_D DIALOG 6, 15, 243, 119 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Status Update" -FONT 8, "MS Sans Serif" -{ - PUSHBUTTON "Cancel", ID_CANCEL, 96, 96, 50, 14 - LTEXT "Text", ID_TEXT1, 8, 11, 225, 16 - LTEXT "Text", ID_TEXT2, 8, 34, 226, 16 -} - +/**************************************************************************** + + +status_d.rc + +produced by Francois Levert from LAS inc. +****************************************************************************/ +#define WIN32_LEAN_AND_MEAN + +#include <windows.h> +#include "status_d.h" + +STATUS_D DIALOG 6, 15, 243, 119 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Status Update" +FONT 8, "MS Sans Serif" +{ + PUSHBUTTON "Cancel", ID_CANCEL, 96, 96, 50, 14 + LTEXT "Text", ID_TEXT1, 8, 11, 225, 16 + LTEXT "Text", ID_TEXT2, 8, 34, 226, 16 +} + diff --git a/ogdi/include/ecs_util.h b/ogdi/include/ecs_util.h index f07f5c6..4832199 100644 --- a/ogdi/include/ecs_util.h +++ b/ogdi/include/ecs_util.h @@ -18,8 +18,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecs_util.h,v $ - * Revision 1.30 2016/07/11 09:13:29 erouault + * $Log$ + * Revision 1.30 2016-07-11 09:13:29 erouault * Really fix Windows compilation issue due to int32/uint32 * * Revision 1.29 2016/07/08 10:22:55 erouault @@ -108,8 +108,8 @@ #ifndef ECS_UTIL #define ECS_UTIL 1 -#define OGDI_VERSION 320 -#define OGDI_RELEASEDATE 20160705 +#define OGDI_VERSION 321 +#define OGDI_RELEASEDATE 20180301 #include <stdio.h> #include <stdlib.h> diff --git a/ogdi/tcl_interface/.cvsignore b/ogdi/tcl_interface/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/ogdi/tcl_interface/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/ogdi/tcl_interface/ecs_tcl.c b/ogdi/tcl_interface/ecs_tcl.c index 2655b6e..bd3bbe5 100644 --- a/ogdi/tcl_interface/ecs_tcl.c +++ b/ogdi/tcl_interface/ecs_tcl.c @@ -16,8 +16,8 @@ * It is provided "as is" without express or implied warranty. ****************************************************************************** * - * $Log: ecs_tcl.c,v $ - * Revision 1.6 2007/02/12 16:04:21 cbalint + * $Log$ + * Revision 1.6 2007-02-12 16:04:21 cbalint * More warrning fixes in tcl and odbc plugins. * * Revision 1.5 2001/04/09 15:04:35 warmerda diff --git a/vpflib/.cvsignore b/vpflib/.cvsignore new file mode 100644 index 0000000..ca0f5e5 --- /dev/null +++ b/vpflib/.cvsignore @@ -0,0 +1 @@ +OBJ.* diff --git a/vpflib/strfunc.h b/vpflib/strfunc.h index 636e268..d70fa6e 100644 --- a/vpflib/strfunc.h +++ b/vpflib/strfunc.h @@ -36,6 +36,13 @@ char *justify (char *str); int Mstrcmpi (const char *string1, const char *string2); int Mstrncmpi (const char *string1, const char *string2, size_t size); +#elif _MSC_VER +#include <stdint.h> + char *leftjust( char *str); + char *rightjust( char *str); + char *justify (char *str); + int Mstrcmpi (const char *string1, const char *string2); + int Mstrncmpi (const char *string1, const char *string2, size_t size); #else char *strupr (); diff --git a/vpflib/vpfread.c b/vpflib/vpfread.c index 9c19e6f..93f9e14 100644 --- a/vpflib/vpfread.c +++ b/vpflib/vpfread.c @@ -1186,7 +1186,7 @@ vpf_table_type table; if (table.fp != NULL) { fpos = index_pos(row_number,table); - if ( fpos != (long)NULL) { + if ( fpos != 0 ) { fseek(table.fp,fpos,SEEK_SET); return read_next_row(table); } else { -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/ogdi-dfsg.git _______________________________________________ Pkg-grass-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel

