diff --git a/Makefile.am b/Makefile.am index 0e7c16d..cecd9cd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -4,7 +4,7 @@ EXTRA_DIST = makefile.vc nmake.opt mainpage.doxy -AUTOMAKE_OPTIONS = dist-zip +AUTOMAKE_OPTIONS = dist-zip foreign pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = readosm.pc diff --git a/Makefile.in b/Makefile.in index db2a462..6eb11ea 100644 --- a/Makefile.in +++ b/Makefile.in @@ -360,7 +360,7 @@ ACLOCAL_AMFLAGS = -I m4 SUBDIRS = headers src tests examples EXTRA_DIST = makefile.vc nmake.opt mainpage.doxy -AUTOMAKE_OPTIONS = dist-zip +AUTOMAKE_OPTIONS = dist-zip foreign pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = readosm.pc MOSTLYCLEANFILES = readosm_cov.info @@ -374,15 +374,15 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \ - $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \ + echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ && exit 0; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu Makefile + $(AUTOMAKE) --foreign Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -622,7 +622,7 @@ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir - tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz $(am__post_remove_distdir) dist-bzip2: distdir @@ -648,7 +648,7 @@ @echo WARNING: "Support for shar distribution archives is" \ "deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 - shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz + shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz $(am__post_remove_distdir) dist-zip: distdir -rm -f $(distdir).zip @@ -665,7 +665,7 @@ distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ - GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lz*) \ @@ -675,7 +675,7 @@ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ - GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac diff --git a/configure b/configure index e9bf569..ba05fd9 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for readosm 1.0.0e. +# Generated by GNU Autoconf 2.69 for readosm 1.1.0. # # Report bugs to . # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='readosm' PACKAGE_TARNAME='readosm' -PACKAGE_VERSION='1.0.0e' -PACKAGE_STRING='readosm 1.0.0e' +PACKAGE_VERSION='1.1.0' +PACKAGE_STRING='readosm 1.1.0' PACKAGE_BUGREPORT='a.furieri@lqt.it' PACKAGE_URL='' @@ -1326,7 +1326,7 @@ # 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 readosm 1.0.0e to adapt to many kinds of systems. +\`configure' configures readosm 1.1.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1396,7 +1396,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of readosm 1.0.0e:";; + short | recursive ) echo "Configuration of readosm 1.1.0:";; esac cat <<\_ACEOF @@ -1508,7 +1508,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -readosm configure 1.0.0e +readosm configure 1.1.0 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2052,7 +2052,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by readosm $as_me 1.0.0e, which was +It was created by readosm $as_me 1.1.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2923,7 +2923,7 @@ # Define the identity of the package. PACKAGE='readosm' - VERSION='1.0.0e' + VERSION='1.1.0' cat >>confdefs.h <<_ACEOF @@ -17676,7 +17676,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by readosm $as_me 1.0.0e, which was +This file was extended by readosm $as_me 1.1.0, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -17742,7 +17742,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -readosm config.status 1.0.0e +readosm config.status 1.1.0 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 5cae639..97c93d9 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.61) -AC_INIT(readosm, 1.0.0e, a.furieri@lqt.it) +AC_INIT(readosm, 1.1.0, a.furieri@lqt.it) AC_LANG(C) AC_CONFIG_AUX_DIR([.]) AC_CONFIG_MACRO_DIR([m4]) diff --git a/examples/test_osm1.c b/examples/test_osm1.c index 8e26ba5..25211b5 100644 --- a/examples/test_osm1.c +++ b/examples/test_osm1.c @@ -23,7 +23,7 @@ / / The Initial Developer of the Original Code is Alessandro Furieri / -/ Portions created by the Initial Developer are Copyright (C) 2012 +/ Portions created by the Initial Developer are Copyright (C) 2012-2017 / the Initial Developer. All Rights Reserved. / / Contributor(s): @@ -69,6 +69,9 @@ int i; const readosm_tag *tag; + if (user_data != NULL) + user_data = NULL; /* silencing stupid compiler warnings */ + #if defined(_WIN32) || defined(__MINGW32__) /* CAVEAT - M$ runtime doesn't supports %lld for 64 bits */ sprintf (buf, "%I64d", node->id); @@ -155,6 +158,9 @@ char buf[128]; int i; const readosm_tag *tag; + + if (user_data != NULL) + user_data = NULL; /* silencing stupid compiler warnings */ #if defined(_WIN32) || defined(__MINGW32__) /* CAVEAT - M$ runtime doesn't supports %lld for 64 bits */ @@ -250,6 +256,9 @@ int i; const readosm_member *member; const readosm_tag *tag; + + if (user_data != NULL) + user_data = NULL; /* silencing stupid compiler warnings */ #if defined(_WIN32) || defined(__MINGW32__) /* CAVEAT - M$ runtime doesn't supports %lld for 64 bits */ diff --git a/examples/test_osm2.c b/examples/test_osm2.c index bff1f8e..dc46b8e 100644 --- a/examples/test_osm2.c +++ b/examples/test_osm2.c @@ -23,7 +23,7 @@ / / The Initial Developer of the Original Code is Alessandro Furieri / -/ Portions created by the Initial Developer are Copyright (C) 2012 +/ Portions created by the Initial Developer are Copyright (C) 2012-2017 / the Initial Developer. All Rights Reserved. / / Contributor(s): diff --git a/examples/test_osm3.c b/examples/test_osm3.c index 250437d..ad42a52 100644 --- a/examples/test_osm3.c +++ b/examples/test_osm3.c @@ -23,7 +23,7 @@ / / The Initial Developer of the Original Code is Alessandro Furieri / -/ Portions created by the Initial Developer are Copyright (C) 2012 +/ Portions created by the Initial Developer are Copyright (C) 2012-2017 / the Initial Developer. All Rights Reserved. / / Contributor(s): @@ -71,6 +71,9 @@ /* casting the USER_DATA pointer to osm_helper */ struct osm_helper *helper = (struct osm_helper *) user_data; + if (node != NULL) + node = NULL; /* silencing stupid compiler warnings */ + helper->read_count++; if (eval_abort (helper)) return READOSM_ABORT; @@ -86,6 +89,9 @@ /* casting the USER_DATA pointer to osm_helper */ struct osm_helper *helper = (struct osm_helper *) user_data; + if (way != NULL) + way = NULL; /* silencing stupid compiler warnings */ + helper->read_count++; if (eval_abort (helper)) return READOSM_ABORT; @@ -100,6 +106,9 @@ /* casting the USER_DATA pointer to osm_helper */ struct osm_helper *helper = (struct osm_helper *) user_data; + + if (relation != NULL) + relation = NULL; /* silencing stupid compiler warnings */ helper->read_count++; if (eval_abort (helper)) diff --git a/headers/readosm.h b/headers/readosm.h index 86d8d37..de41e54 100644 --- a/headers/readosm.h +++ b/headers/readosm.h @@ -3,7 +3,7 @@ / / public declarations / -/ version 1.0, 2012 April 10 +/ version 1.1.0, 2017 September 25 / / Author: Sandro Furieri a.furieri@lqt.it / @@ -25,7 +25,7 @@ / / The Initial Developer of the Original Code is Alessandro Furieri / -/ Portions created by the Initial Developer are Copyright (C) 2012 +/ Portions created by the Initial Developer are Copyright (C) 2012-2017 / the Initial Developer. All Rights Reserved. / / Contributor(s): @@ -283,7 +283,7 @@ Close the .osm or .pbf file and release any allocated resource \param osm_handle the handle previously returned by readosm_open() -\param user_data pointer to some user-supplied data struct + \param user_data pointer to some user-supplied data struct \param node_fnct pointer to callback function intended to consume NODE objects (may be NULL if processing NODEs is not an interesting option) \param way_fnct pointer to callback function intended to consume WAY objects @@ -303,6 +303,27 @@ readosm_way_callback way_fnct, readosm_relation_callback relation_fnct); + /** + Return the current ReadOSM version + + \return a text string corresponding the current ReadOSM version + */ + READOSM_DECLARE const char * readosm_version (void); + + /** + Return the current libexpat version used by ReadOSM + + \return a text string corresponding the current Expat version + */ + READOSM_DECLARE const char * readosm_expat_version (void); + + /** + Return the current zlib version used by ReadOSM + + \return a text string corresponding the current zlib version + */ + READOSM_DECLARE const char * readosm_zlib_version (void); + #ifdef __cplusplus } #endif diff --git a/makefile.vc b/makefile.vc index 5b1d4df..791aedf 100644 --- a/makefile.vc +++ b/makefile.vc @@ -24,8 +24,8 @@ link /debug /dll /out:$(READOSM_DLL) \ /implib:readosm_i.lib $(LIBOBJ) \ C:\OSGeo4w\lib\libexpat.lib C:\OSGeo4w\lib\zlib.lib - if exist $(FREEXL_DLL).manifest mt -manifest \ - $(FREEXL_DLL).manifest -outputresource:$(FREEXL_DLL);2 + if exist $(READOSM_DLL).manifest mt -manifest \ + $(READOSM_DLL).manifest -outputresource:$(READOSM_DLL);2 .c.obj: $(CC) $(CFLAGS) /c $*.c /Fo$@ diff --git a/src/Makefile.am b/src/Makefile.am index fb93dcc..6084ad7 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -7,6 +7,6 @@ libreadosm_la_SOURCES = readosm.c osm_objects.c osmxml.c protobuf.c libreadosm_la_CFLAGS = -fvisibility=hidden -libreadosm_la_LDFLAGS = -version-info 1:0:0 -no-undefined +libreadosm_la_LDFLAGS = -version-info 1:1:0 -no-undefined MOSTLYCLEANFILES = *.gcna *.gcno *.gcda diff --git a/src/Makefile.in b/src/Makefile.in index 5a3fd01..3b449f8 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -329,7 +329,7 @@ lib_LTLIBRARIES = libreadosm.la libreadosm_la_SOURCES = readosm.c osm_objects.c osmxml.c protobuf.c libreadosm_la_CFLAGS = -fvisibility=hidden -libreadosm_la_LDFLAGS = -version-info 1:0:0 -no-undefined +libreadosm_la_LDFLAGS = -version-info 1:1:0 -no-undefined MOSTLYCLEANFILES = *.gcna *.gcno *.gcda all: all-am diff --git a/src/osmxml.c b/src/osmxml.c index 32307f7..f331832 100644 --- a/src/osmxml.c +++ b/src/osmxml.c @@ -3,7 +3,7 @@ / / OSM-XML (.osm) implementation / -/ version 1.0, 2012 April 21 +/ version 1.1.0, 2017 September 25 / / Author: Sandro Furieri a.furieri@lqt.it / @@ -25,7 +25,7 @@ / / The Initial Developer of the Original Code is Alessandro Furieri / -/ Portions created by the Initial Developer are Copyright (C) 2012 +/ Portions created by the Initial Developer are Copyright (C) 2012-2017 / the Initial Developer. All Rights Reserved. / / Contributor(s): @@ -523,3 +523,14 @@ return READOSM_OK; } + +READOSM_DECLARE const char * +readosm_expat_version (void) +{ +/* returning the current Expat version string */ + XML_Expat_Version expat; + static char version[64]; + expat = XML_ExpatVersionInfo (); + sprintf (version, "%d.%d.%d", expat.major, expat.minor, expat.micro); + return version; +} diff --git a/src/protobuf.c b/src/protobuf.c index b63c59d..5b76caf 100644 --- a/src/protobuf.c +++ b/src/protobuf.c @@ -3,7 +3,7 @@ / / Protocol Buffer (.pbf) implementation / -/ version 1.0, 2012 April 21 +/ version 1.1.0, 2017 September 25 / / Author: Sandro Furieri a.furieri@lqt.it / @@ -25,7 +25,7 @@ / / The Initial Developer of the Original Code is Alessandro Furieri / -/ Portions created by the Initial Developer are Copyright (C) 2012 +/ Portions created by the Initial Developer are Copyright (C) 2012-2017 / the Initial Developer. All Rights Reserved. / / Contributor(s): @@ -2459,3 +2459,10 @@ } return READOSM_OK; } + +READOSM_DECLARE const char * +readosm_zlib_version (void) +{ +/* returning the current zlib version string */ + return zlibVersion (); +} diff --git a/src/readosm.c b/src/readosm.c index c7884e7..e1dda27 100644 --- a/src/readosm.c +++ b/src/readosm.c @@ -3,7 +3,7 @@ / / ReadOSM main implementation (externally visible API) / -/ version 1.0, 2012 April 10 +/ version 1.1.0, 2017 September 25 / / Author: Sandro Furieri a.furieri@lqt.it / @@ -25,7 +25,7 @@ / / The Initial Developer of the Original Code is Alessandro Furieri / -/ Portions created by the Initial Developer are Copyright (C) 2012 +/ Portions created by the Initial Developer are Copyright (C) 2012-2017 / the Initial Developer. All Rights Reserved. / / Contributor(s): @@ -50,6 +50,7 @@ #if defined(_WIN32) && !defined(__MINGW32__) /* MSVC: avoiding to include at all config.h */ +#define VERSION 1.1.0 #else #include "config.h" #endif @@ -184,3 +185,10 @@ return ret; } + +READOSM_DECLARE const char * +readosm_version (void) +{ +/* returning the current ReadOSM version string */ + return VERSION; +}