From 5ac3dbe0b5b1a7f53c84eab752860e8435ffcc1e Mon Sep 17 00:00:00 2001 From: Diego Sogari Date: Tue, 8 Mar 2016 21:10:48 -0300 Subject: [PATCH 1/3] cpptest version 1.1.2 (package release 1) --- mingw-w64-cpptest/PKGBUILD | 43 +++++ mingw-w64-cpptest/cpptest-1.1.2.patch | 225 ++++++++++++++++++++++++++ 2 files changed, 268 insertions(+) create mode 100644 mingw-w64-cpptest/PKGBUILD create mode 100644 mingw-w64-cpptest/cpptest-1.1.2.patch diff --git a/mingw-w64-cpptest/PKGBUILD b/mingw-w64-cpptest/PKGBUILD new file mode 100644 index 0000000000..338d5608ca --- /dev/null +++ b/mingw-w64-cpptest/PKGBUILD @@ -0,0 +1,43 @@ +# Maintainer: Diego Sogari + +_realname=cpptest +pkgbase=mingw-w64-${_realname} +pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" +pkgver=1.1.2 +pkgrel=1 +pkgdesc="A C++ Unit Testing Framework (mingw-w64)" +arch=('any') +url="http://cpptest.sourceforge.net/" +license=('LGPL') +makedepends=("${MINGW_PACKAGE_PREFIX}-gcc" "automake" "autoconf") +source=("http://downloads.sourceforge.net/project/${_realname}/${_realname}/${_realname}-${pkgver}/${_realname}-${pkgver}.tar.gz" + "${_realname}-${pkgver}.patch") +sha256sums=('9e4fdf156b709397308536eb6b921e3aea1f463c6613f9a0c1dfec9614386027' + 'e583639839ab25651d35c954daf166f92fcaa431abb3159e562959b104126d80') + +prepare() { + cd "${srcdir}/${_realname}-${pkgver}" + patch -Np1 -i "../${_realname}-${pkgver}.patch" + mkdir -p m4 + autoreconf -fvi +} + +build() { + rm -rf "${srcdir}/build-${MINGW_CHOST}" + mkdir "${srcdir}/build-${MINGW_CHOST}" + cd "${srcdir}/build-${MINGW_CHOST}" + + ../${_realname}-${pkgver}/configure \ + --build=${MINGW_CHOST} \ + --host=${MINGW_CHOST} \ + --target=${MINGW_CHOST} \ + --prefix=${MINGW_PREFIX} \ + --includedir=${MINGW_PREFIX}/include/cpptest + + make +} + +package() { + cd "${srcdir}/build-${MINGW_CHOST}" + make DESTDIR="${pkgdir}" install +} diff --git a/mingw-w64-cpptest/cpptest-1.1.2.patch b/mingw-w64-cpptest/cpptest-1.1.2.patch new file mode 100644 index 0000000000..36a19b9c98 --- /dev/null +++ b/mingw-w64-cpptest/cpptest-1.1.2.patch @@ -0,0 +1,225 @@ +diff -c -r cpptest-1.1.2.orig/Makefile.am cpptest-1.1.2/Makefile.am +*** cpptest-1.1.2.orig/Makefile.am Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/Makefile.am Sun Mar 6 02:17:51 2016 +*************** +*** 23,29 **** + ## Boston, MA 02111-1307, USA. + ## + ## --- +! + SUBDIRS = src test + if DOC + SUBDIRS += doc +--- 23,29 ---- + ## Boston, MA 02111-1307, USA. + ## + ## --- +! ACLOCAL_AMFLAGS = -I m4 + SUBDIRS = src test + if DOC + SUBDIRS += doc +diff -c -r cpptest-1.1.2.orig/configure.ac cpptest-1.1.2/configure.ac +*** cpptest-1.1.2.orig/configure.ac Thu Oct 4 12:35:59 2012 +--- cpptest-1.1.2/configure.ac Sun Mar 6 02:21:15 2016 +*************** +*** 34,39 **** +--- 34,40 ---- + + AM_INIT_AUTOMAKE([1.8 gnu dist-zip]) + AM_CONFIG_HEADER(config/config.h) ++ AC_CONFIG_MACRO_DIR([m4]) + + # LibTool versioning + # +*************** +*** 97,102 **** +--- 98,111 ---- + AC_PROG_MAKE_SET + AM_PROG_LIBTOOL + ++ ## Toggle build options specific to Windows ++ case "${host}" in ++ *-*-mingw*) WIN32="yes" ;; ++ *cygwin*) WIN32="yes" ;; ++ *) WIN32="no" ;; ++ esac ++ AM_CONDITIONAL([WIN32], test "$WIN32" = "yes") ++ + if test "$enable_doc" = "yes"; then + AC_CHECK_PROG(x_doxygen, doxygen, yes, no) + if test "$x_doxygen" = "no"; then +diff -c -r cpptest-1.1.2.orig/src/Makefile.am cpptest-1.1.2/src/Makefile.am +*** cpptest-1.1.2.orig/src/Makefile.am Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/src/Makefile.am Sun Mar 6 02:15:54 2016 +*************** +*** 34,39 **** +--- 34,42 ---- + lib_LTLIBRARIES = libcpptest.la + + libcpptest_la_LDFLAGS = -version-info $(LT_VERSION) ++ if WIN32 ++ libcpptest_la_LDFLAGS += -no-undefined ++ endif + + libcpptest_la_SOURCES = \ + collectoroutput.cpp \ +diff -c -r cpptest-1.1.2.orig/src/collectoroutput.cpp cpptest-1.1.2/src/collectoroutput.cpp +*** cpptest-1.1.2.orig/src/collectoroutput.cpp Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/src/collectoroutput.cpp Sun Mar 6 01:37:44 2016 +*************** +*** 24,30 **** + // + // --- + +! #if (defined(__WIN32__) || defined(WIN32)) + # include "winconfig.h" + #else + # include "config.h" +--- 24,30 ---- + // + // --- + +! #if (defined(__WIN32__) || defined(WIN32)) && not defined __MINGW32__ + # include "winconfig.h" + #else + # include "config.h" +diff -c -r cpptest-1.1.2.orig/src/htmloutput.cpp cpptest-1.1.2/src/htmloutput.cpp +*** cpptest-1.1.2.orig/src/htmloutput.cpp Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/src/htmloutput.cpp Sun Mar 6 01:37:44 2016 +*************** +*** 27,33 **** + #include + #include + +! #if (defined(__WIN32__) || defined(WIN32)) + # include "winconfig.h" + #else + # include "config.h" +--- 27,33 ---- + #include + #include + +! #if (defined(__WIN32__) || defined(WIN32)) && not defined __MINGW32__ + # include "winconfig.h" + #else + # include "config.h" +diff -c -r cpptest-1.1.2.orig/src/missing.cpp cpptest-1.1.2/src/missing.cpp +*** cpptest-1.1.2.orig/src/missing.cpp Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/src/missing.cpp Sun Mar 6 01:37:44 2016 +*************** +*** 24,30 **** + // + // --- + +! #if (defined(__WIN32__) || defined(WIN32)) + # include "winconfig.h" + #else + # include "config.h" +--- 24,30 ---- + // + // --- + +! #if (defined(__WIN32__) || defined(WIN32)) && not defined __MINGW32__ + # include "winconfig.h" + #else + # include "config.h" +diff -c -r cpptest-1.1.2.orig/src/missing.h cpptest-1.1.2/src/missing.h +*** cpptest-1.1.2.orig/src/missing.h Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/src/missing.h Sun Mar 6 01:37:44 2016 +*************** +*** 27,33 **** + #ifndef CPPTEST_MISSING_H + #define CPPTEST_MISSING_H + +! #if (defined(__WIN32__) || defined(WIN32)) + # include "winconfig.h" + #else + # include "config.h" +--- 27,33 ---- + #ifndef CPPTEST_MISSING_H + #define CPPTEST_MISSING_H + +! #if (defined(__WIN32__) || defined(WIN32)) && not defined __MINGW32__ + # include "winconfig.h" + #else + # include "config.h" +diff -c -r cpptest-1.1.2.orig/src/suite.cpp cpptest-1.1.2/src/suite.cpp +*** cpptest-1.1.2.orig/src/suite.cpp Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/src/suite.cpp Sun Mar 6 01:37:44 2016 +*************** +*** 30,36 **** + #include + #include + +! #if (defined(__WIN32__) || defined(WIN32)) + # include "winconfig.h" + #else + # include "config.h" +--- 30,36 ---- + #include + #include + +! #if (defined(__WIN32__) || defined(WIN32)) && not defined __MINGW32__ + # include "winconfig.h" + #else + # include "config.h" +diff -c -r cpptest-1.1.2.orig/src/textoutput.cpp cpptest-1.1.2/src/textoutput.cpp +*** cpptest-1.1.2.orig/src/textoutput.cpp Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/src/textoutput.cpp Sun Mar 6 01:37:44 2016 +*************** +*** 26,32 **** + + #include + +! #if (defined(__WIN32__) || defined(WIN32)) + # include "winconfig.h" + #else + # include "config.h" +--- 26,32 ---- + + #include + +! #if (defined(__WIN32__) || defined(WIN32)) && not defined __MINGW32__ + # include "winconfig.h" + #else + # include "config.h" +diff -c -r cpptest-1.1.2.orig/src/time.cpp cpptest-1.1.2/src/time.cpp +*** cpptest-1.1.2.orig/src/time.cpp Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/src/time.cpp Sun Mar 6 01:37:44 2016 +*************** +*** 24,30 **** + // + // --- + +! #if (defined(__WIN32__) || defined(WIN32)) + # include "winconfig.h" + #else + # include "config.h" +--- 24,30 ---- + // + // --- + +! #if (defined(__WIN32__) || defined(WIN32)) && not defined __MINGW32__ + # include "winconfig.h" + #else + # include "config.h" +diff -c -r cpptest-1.1.2.orig/src/utils.cpp cpptest-1.1.2/src/utils.cpp +*** cpptest-1.1.2.orig/src/utils.cpp Thu Oct 4 12:05:16 2012 +--- cpptest-1.1.2/src/utils.cpp Sun Mar 6 01:37:44 2016 +*************** +*** 25,31 **** + // --- + + +! #if (defined(__WIN32__) || defined(WIN32)) + # include "winconfig.h" + #else + # include "config.h" +--- 25,31 ---- + // --- + + +! #if (defined(__WIN32__) || defined(WIN32)) && not defined __MINGW32__ + # include "winconfig.h" + #else + # include "config.h" From 1650f3af294a415090f81a928bd4e6da35532774 Mon Sep 17 00:00:00 2001 From: Diego Sogari Date: Tue, 8 Mar 2016 21:12:48 -0300 Subject: [PATCH 2/3] uriparser version 0.8.4 (package release 1) --- mingw-w64-uriparser/PKGBUILD | 48 +++++++++++++ mingw-w64-uriparser/uriparser-0.8.4.patch | 86 +++++++++++++++++++++++ 2 files changed, 134 insertions(+) create mode 100644 mingw-w64-uriparser/PKGBUILD create mode 100644 mingw-w64-uriparser/uriparser-0.8.4.patch diff --git a/mingw-w64-uriparser/PKGBUILD b/mingw-w64-uriparser/PKGBUILD new file mode 100644 index 0000000000..45da567831 --- /dev/null +++ b/mingw-w64-uriparser/PKGBUILD @@ -0,0 +1,48 @@ +# Maintainer: Diego Sogari + +_realname=uriparser +pkgbase=mingw-w64-${_realname} +pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" +pkgver=0.8.4 +pkgrel=1 +pkgdesc="RFC 3986 URI parsing and processing libary (mingw-w64)" +arch=('any') +url="http://uriparser.sourceforge.net/" +license=('New BSD License') +makedepends=("${MINGW_PACKAGE_PREFIX}-gcc" "automake" "autoconf") +checkdepends=("${MINGW_PACKAGE_PREFIX}-cpptest") +source=("http://downloads.sourceforge.net/project/${_realname}/Sources/${pkgver}/${_realname}-${pkgver}.tar.bz2" + "${_realname}-${pkgver}.patch") +sha256sums=('ce7ccda4136974889231e8426a785e7578e66a6283009cfd13f1b24a5e657b23' + 'f1f542c77e0f27a34ce990ea1c8bd2bba0094a6d553fca06ceb1a8db81f672fe') + +prepare() { + cd "${srcdir}/${_realname}-${pkgver}" + patch -Np1 -i "../${_realname}-${pkgver}.patch" + autoreconf -fvi +} + +build() { + rm -rf "${srcdir}/build-${MINGW_CHOST}" + mkdir "${srcdir}/build-${MINGW_CHOST}" + cd "${srcdir}/build-${MINGW_CHOST}" + + ../${_realname}-${pkgver}/configure \ + --build=${MINGW_CHOST} \ + --host=${MINGW_CHOST} \ + --target=${MINGW_CHOST} \ + --prefix=${MINGW_PREFIX} \ + --disable-doc + + make +} + +check() { + cd "${srcdir}/build-${MINGW_CHOST}" + make check +} + +package() { + cd "${srcdir}/build-${MINGW_CHOST}" + make DESTDIR="${pkgdir}" install +} diff --git a/mingw-w64-uriparser/uriparser-0.8.4.patch b/mingw-w64-uriparser/uriparser-0.8.4.patch new file mode 100644 index 0000000000..637a397c1c --- /dev/null +++ b/mingw-w64-uriparser/uriparser-0.8.4.patch @@ -0,0 +1,86 @@ +diff -c -r uriparser-0.8.4.orig/configure.ac uriparser-0.8.4/configure.ac +*** uriparser-0.8.4.orig/configure.ac 2015-10-12 12:45:01.000000000 -0300 +--- uriparser-0.8.4/configure.ac 2016-03-07 08:42:07.221252700 -0300 +*************** +*** 19,24 **** +--- 19,27 ---- + esac + AM_CONDITIONAL([WIN32], test "$WIN32" = "yes") + ++ dnl Let Makefile know if we are GCC. ++ AM_CONDITIONAL(GCC, test "$GCC" = yes) ++ + + ## Check for wprintf + AC_MSG_CHECKING(for wprintf) +diff -c -r uriparser-0.8.4.orig/Makefile.am uriparser-0.8.4/Makefile.am +*** uriparser-0.8.4.orig/Makefile.am 2015-10-12 12:30:00.000000000 -0300 +--- uriparser-0.8.4/Makefile.am 2016-03-07 08:42:06.286861000 -0300 +*************** +*** 18,24 **** + uriparse_CFLAGS = -Iinclude + uriparse_LDADD = $(top_builddir)/liburiparser.la + uriparse_DEPENDENCIES = $(top_builddir)/liburiparser.la +! + + pkgconfig_DATA = liburiparser.pc + +--- 18,26 ---- + uriparse_CFLAGS = -Iinclude + uriparse_LDADD = $(top_builddir)/liburiparser.la + uriparse_DEPENDENCIES = $(top_builddir)/liburiparser.la +! if WIN32 +! uriparse_LDADD += -lws2_32 +! endif + + pkgconfig_DATA = liburiparser.pc + +*************** +*** 63,69 **** + if URI_TEST_ENABLED + test_uriparser_test_LDFLAGS = @CPPTEST_LIBS@ + +! test_uriparser_test_CFLAGS = @CPPTEST_CFLAGS@ + + test_uriparser_test_LDADD = liburiparser.la + +--- 65,74 ---- + if URI_TEST_ENABLED + test_uriparser_test_LDFLAGS = @CPPTEST_LIBS@ + +! test_uriparser_test_CPPFLAGS = @CPPTEST_CFLAGS@ +! if GCC +! test_uriparser_test_CPPFLAGS += -D_GNU_SOURCE +! endif + + test_uriparser_test_LDADD = liburiparser.la + +diff -c -r uriparser-0.8.4.orig/tool/uriparse.c uriparser-0.8.4/tool/uriparse.c +*** uriparser-0.8.4.orig/tool/uriparse.c 2014-01-08 19:07:11.000000000 -0200 +--- uriparser-0.8.4/tool/uriparse.c 2016-03-07 08:40:24.823617300 -0300 +*************** +*** 39,47 **** + #include + #include + #include +! #include +! #include +! + + #define RANGE(x) (int)((x).afterLast-(x).first), ((x).first) + +--- 39,52 ---- + #include + #include + #include +! #ifdef _WIN32 +! # include +! # include +! WINSOCK_API_LINKAGE const char WSAAPI inet_ntop(int af, const void *src, char *dst, socklen_t size); +! #else +! # include +! # include +! #endif + + #define RANGE(x) (int)((x).afterLast-(x).first), ((x).first) + From 97ff30742047b870ccfbd463817a24bbd5ae7b40 Mon Sep 17 00:00:00 2001 From: Diego Sogari Date: Tue, 8 Mar 2016 21:13:52 -0300 Subject: [PATCH 3/3] libkml version 1.3.0 (package release 1) --- mingw-w64-libkml/PKGBUILD | 55 + mingw-w64-libkml/libkml-1.3.0-complement.tar | Bin 0 -> 30177 bytes mingw-w64-libkml/libkml-1.3.0.patch | 3108 ++++++++++++++++++ mingw-w64-libkml/minizipext-1.0.tar | Bin 0 -> 30316 bytes 4 files changed, 3163 insertions(+) create mode 100644 mingw-w64-libkml/PKGBUILD create mode 100644 mingw-w64-libkml/libkml-1.3.0-complement.tar create mode 100644 mingw-w64-libkml/libkml-1.3.0.patch create mode 100644 mingw-w64-libkml/minizipext-1.0.tar diff --git a/mingw-w64-libkml/PKGBUILD b/mingw-w64-libkml/PKGBUILD new file mode 100644 index 0000000000..4ddd19a7b7 --- /dev/null +++ b/mingw-w64-libkml/PKGBUILD @@ -0,0 +1,55 @@ +# Maintainer: Diego Sogari + +_realname=libkml +pkgbase=mingw-w64-${_realname} +pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" +pkgver=1.3.0 +pkgrel=1 +pkgdesc="Reference implementation of OGC KML 2.2 (mingw-w64)" +arch=('any') +url="https://github.com/google/libkml/" +license=('New BSD License') +makedepends=("${MINGW_PACKAGE_PREFIX}-gcc" "automake" "autoconf") +depends=("${MINGW_PACKAGE_PREFIX}-uriparser" "${MINGW_PACKAGE_PREFIX}-zlib") +optdepends=("${MINGW_PACKAGE_PREFIX}-python2") +checkdepends=("${MINGW_PACKAGE_PREFIX}-gtest") +commit=8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8 +source=("https://github.com/google/libkml/archive/${commit}.zip" + "${_realname}-${pkgver}.patch" + "${_realname}-${pkgver}-complement.tar" + "minizipext-1.0.tar") +sha256sums=('7f92545c1af1070fcce95da335e88dfbab5bb098784b1eded247cc31d90b5f6b' + '58104e9fb50afbfbd9fbd25911c6e0fe348dbac9514071de4281ec4c6bdd61c1' + '230abc1a64e3f458e6be10b8a92fd36a2b616d78252b58c000d39d9d13359101' + 'b74021e72291558e99f92d7e87bad06de79dffd0d9f8523c87db76aaa73d3ce5') + +prepare() { + cd "${srcdir}/${_realname}-${commit}" + patch -Np1 -i "../${_realname}-${pkgver}.patch" + cp -rf ../minizipext-1.0 third_party + autoreconf -fvi +} + +build() { + rm -rf "${srcdir}/build-${MINGW_CHOST}" + mkdir "${srcdir}/build-${MINGW_CHOST}" + cd "${srcdir}/build-${MINGW_CHOST}" + + ../${_realname}-${commit}/configure \ + --build=${MINGW_CHOST} \ + --host=${MINGW_CHOST} \ + --target=${MINGW_CHOST} \ + --prefix=${MINGW_PREFIX} + + make +} + +check() { + cd "${srcdir}/build-${MINGW_CHOST}" + make check +} + +package() { + cd "${srcdir}/build-${MINGW_CHOST}" + make DESTDIR="${pkgdir}" install +} diff --git a/mingw-w64-libkml/libkml-1.3.0-complement.tar b/mingw-w64-libkml/libkml-1.3.0-complement.tar new file mode 100644 index 0000000000000000000000000000000000000000..ad2eb0aefa34c3871be0a67c57c212b2c26dd540 GIT binary patch literal 30177 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 DO*ijw literal 0 HcmV?d00001 diff --git a/mingw-w64-libkml/libkml-1.3.0.patch b/mingw-w64-libkml/libkml-1.3.0.patch new file mode 100644 index 0000000000..aea0094268 --- /dev/null +++ b/mingw-w64-libkml/libkml-1.3.0.patch @@ -0,0 +1,3108 @@ +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/configure.ac libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/configure.ac +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/configure.ac 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/configure.ac 2016-03-08 17:47:01.870843200 -0300 +*************** +*** 10,20 **** +--- 10,29 ---- + AM_INIT_AUTOMAKE(-Wall -Werror subdir-objects) + m4_ifdef([AM_PROG_AR], [AM_PROG_AR]) + ++ AC_PROG_CC + AC_PROG_CPP + AC_PROG_CXX + AC_PROG_INSTALL + AC_PROG_LIBTOOL + ++ ## Toggle build options specific to Windows ++ case "${host}" in ++ *-*-mingw*) WIN32="yes" ;; ++ *cygwin*) WIN32="yes" ;; ++ *) WIN32="no" ;; ++ esac ++ AM_CONDITIONAL([WIN32], test "$WIN32" = "yes") ++ + AC_C_CONST + AC_C_INLINE + AC_FUNC_MALLOC +*************** +*** 34,42 **** + ;; + Darwin) PLATFORM=darwin + SHLIBSUFFIX="dylib" +! ;; +! *) PLATFORM=unknown + SHLIBSUFFIX="so" + ;; + esac + AC_SUBST(PLATFORM) +--- 43,56 ---- + ;; + Darwin) PLATFORM=darwin + SHLIBSUFFIX="dylib" +! ;; +! *) if test "$WIN32" = "yes"; then +! PLATFORM=win32 +! SHLIBSUFFIX="dll" +! else +! PLATFORM=unknown + SHLIBSUFFIX="so" ++ fi + ;; + esac + AC_SUBST(PLATFORM) +*************** +*** 173,188 **** + [AC_MSG_WARN([could not find Python.h. The Python bindings will not be built.]) + PYTHON= + ]) +! PYTHON_LIBNAME="python" +! if test "$PLATFORM" = "linux"; then +! PYTHON_LIBNAME="python$PYTHON_VERSION" +! fi + AC_CHECK_LIB($PYTHON_LIBNAME, Py_Initialize,, + [AC_MSG_WARN([could not find the Python library. The Python bindings will not be built.]) + PYTHON= + ]) + LIBS=$saved_LIBS # don't append -lpython here. + CPPFLAGS="$current_CPPFLAGS" + fi + fi + fi +--- 187,200 ---- + [AC_MSG_WARN([could not find Python.h. The Python bindings will not be built.]) + PYTHON= + ]) +! PYTHON_LIBNAME="python$PYTHON_VERSION" + AC_CHECK_LIB($PYTHON_LIBNAME, Py_Initialize,, + [AC_MSG_WARN([could not find the Python library. The Python bindings will not be built.]) + PYTHON= + ]) + LIBS=$saved_LIBS # don't append -lpython here. + CPPFLAGS="$current_CPPFLAGS" ++ AC_SUBST(PYTHON_VERSION) + fi + fi + fi +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/engine/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/engine/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/engine/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/engine/Makefile.am 2016-03-08 17:47:01.876705100 -0300 +*************** +*** 1,5 **** +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/third_party/boost_1_34_1 + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/gpx/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/gpx/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/gpx/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/gpx/Makefile.am 2016-03-08 17:47:01.876705100 -0300 +*************** +*** 1,5 **** +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/gx/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/gx/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/gx/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/gx/Makefile.am 2016-03-08 17:47:01.876705100 -0300 +*************** +*** 1,5 **** +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/csvurl2gmap.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/csvurl2gmap.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/csvurl2gmap.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/csvurl2gmap.cc 2016-03-08 17:47:01.876705100 -0300 +*************** +*** 23,29 **** + // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +- #include + #include + #include + #include +--- 23,28 ---- +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/Makefile.am 2016-03-08 17:47:01.892808100 -0300 +*************** +*** 1,7 **** + if HAVE_CURL +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/examples/hellonet \ +! -I$(top_srcdir)/third_party/boost_1_34_1 + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,5 ---- + if HAVE_CURL +! AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/examples/hellonet + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/prompt.h libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/prompt.h +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/prompt.h 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/prompt.h 2016-03-08 17:47:01.892808100 -0300 +*************** +*** 28,36 **** + #ifndef EXAMPLES_HELLONET_PROMPT_H__ + #define EXAMPLES_HELLONET_PROMPT_H__ + +- #include + #include + #include + + // This class provides some static methods useful for prompting on a terminal. + class Prompt { +--- 28,36 ---- + #ifndef EXAMPLES_HELLONET_PROMPT_H__ + #define EXAMPLES_HELLONET_PROMPT_H__ + + #include + #include ++ #include "setstdinecho.h" + + // This class provides some static methods useful for prompting on a terminal. + class Prompt { +*************** +*** 39,56 **** + std::cin.get(); + std::cout << prompt; + std::cout << std::flush; +- // Get the current state of the input terminal. +- struct termios t; +- tcgetattr(0, &t); + // Flip off the ECHO bit. +! t.c_lflag &= ~ECHO; +! tcsetattr(0, TCSANOW, &t); + // User can now type password safely. + std::string input; + std::getline(std::cin, input); + // Flip ECHO back on. +! t.c_lflag |= ECHO; +! tcsetattr(0, TCSANOW, &t); + std::cout << std::endl; + return input; + } +--- 39,51 ---- + std::cin.get(); + std::cout << prompt; + std::cout << std::flush; + // Flip off the ECHO bit. +! SetStdinEcho(false); + // User can now type password safely. + std::string input; + std::getline(std::cin, input); + // Flip ECHO back on. +! SetStdinEcho(true); + std::cout << std::endl; + return input; + } +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/uploadgmap.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/uploadgmap.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/uploadgmap.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/uploadgmap.cc 2016-03-08 17:47:01.892808100 -0300 +*************** +*** 27,33 **** + // Maps Data API. The URI of feed to the new map is printed on output. + // The created map has only the Placemarks from the original file. + +- #include + #include + #include + #include "boost/scoped_ptr.hpp" +--- 27,32 ---- +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/uploadgmapkml.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/uploadgmapkml.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/uploadgmapkml.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/uploadgmapkml.cc 2016-03-08 17:47:01.908434400 -0300 +*************** +*** 23,29 **** + // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +- #include + #include + #include + #include "boost/scoped_ptr.hpp" +--- 23,28 ---- +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/uploadgsheet.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/uploadgsheet.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/hellonet/uploadgsheet.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/hellonet/uploadgsheet.cc 2016-03-08 17:47:01.908434400 -0300 +*************** +*** 23,29 **** + // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +- #include + #include + #include + #include "boost/scoped_ptr.hpp" +--- 23,28 ---- +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/helloworld/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/helloworld/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/helloworld/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/helloworld/Makefile.am 2016-03-08 17:47:01.908434400 -0300 +*************** +*** 1,6 **** +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/examples/helloworld \ +! -I$(top_srcdir)/third_party/boost_1_34_1 + + + if GCC +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/examples/helloworld + + + if GCC +*************** +*** 10,16 **** + noinst_LTLIBRARIES = libhelloutil.la + + libhelloutil_la_SOURCES = print.cc +! libhelloutil_la_LIBADD = $(top_builddir)/third_party/libminizip.la + + noinst_PROGRAMS = countkml createkml checklinks circlegen helloattrs helloenum \ + hellofeatures hellofolder hellogeometry hellohref hellokmz \ +--- 8,14 ---- + noinst_LTLIBRARIES = libhelloutil.la + + libhelloutil_la_SOURCES = print.cc +! libhelloutil_la_LIBADD = $(top_builddir)/third_party/libminizipext.la + + noinst_PROGRAMS = countkml createkml checklinks circlegen helloattrs helloenum \ + hellofeatures hellofolder hellogeometry hellohref hellokmz \ +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/regionator/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/regionator/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/regionator/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/regionator/Makefile.am 2016-03-08 17:47:01.924060100 -0300 +*************** +*** 1,6 **** +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 \ +! -I$(top_srcdir)/third_party/zlib-1.2.3/contrib + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/xsd/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/xsd/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/examples/xsd/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/examples/xsd/Makefile.am 2016-03-08 17:47:01.924060100 -0300 +*************** +*** 1,6 **** +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/examples/xsd \ +! -I$(top_srcdir)/third_party/boost_1_34_1 + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/examples/xsd + + if GCC + AM_CXXFLAGS = -Wall -Werror -pedantic -Wno-long-long -fno-rtti +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/date_time.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/date_time.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/date_time.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/date_time.cc 2016-03-08 17:47:01.924060100 -0300 +*************** +*** 29,40 **** + #include "boost/scoped_ptr.hpp" + #include + +- // TODO: fix this for real. + #ifdef _WIN32 +! char* strptime(const char* buf, const char* format, struct tm* tm) { +! // Not yet implemented on this platform. +! return NULL; +! } + #endif + + namespace kmlbase { +--- 29,39 ---- + #include "boost/scoped_ptr.hpp" + #include + + #ifdef _WIN32 +! # include "strptime.h" +! # include "timegm.h" +! #else +! # include + #endif + + namespace kmlbase { +*************** +*** 55,91 **** + return date_time.get() ? date_time->GetTimeT() : 0; + } + +- // Overkill since all time_t's on a 32-bit that are divisible by four are +- // leap years, but this should handle the 2100 case (not a LY) on 64-bit +- // systems. +- static bool is_leap(int year) { +- year += 1900; +- return (year % 4) == 0 && ((year % 100) != 0 || (year % 400) == 0); +- } +- + time_t DateTime::GetTimeT() const { +! // Always return time as GMT; disregard local time, unlike mktime(3). +! // Faster (and less "obviously correct") implementations are possible. +! static const unsigned ndays[2][12] ={ +! {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, +! {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}}; +! time_t res = 0; +! +! // This and is_leap() base from 1970, the epoch of a time_t. +! for (int year = 70; year < tm_.tm_year; ++year) +! res += is_leap(year) ? 366 : 365; +! +! for (int month = 0; month < tm_.tm_mon; ++month) +! res += ndays[is_leap(tm_.tm_year)][month]; +! +! res += tm_.tm_mday - 1; +! res *= 24; +! res += tm_.tm_hour; +! res *= 60; +! res += tm_.tm_min; +! res *= 60; +! res += tm_.tm_sec; +! return res; + } + + template +--- 54,61 ---- + return date_time.get() ? date_time->GetTimeT() : 0; + } + + time_t DateTime::GetTimeT() const { +! return timegm(&tm_); + } + + template +*************** +*** 113,119 **** + + // private + bool DateTime::ParseXsdDateTime(const string& xsd_date_time) { +- // TODO: strptime on win32? + return strptime(xsd_date_time.c_str(), "%Y-%m-%dT%H:%M:%SZ", &tm_) != NULL; + } + +--- 83,88 ---- +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/date_time.h libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/date_time.h +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/date_time.h 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/date_time.h 2016-03-08 17:47:01.924060100 -0300 +*************** +*** 31,42 **** + #include + #include "kml/base/util.h" + +- // TODO: fix this for real. +- #ifdef _WIN32 +- time_t timegm(struct tm* tm); +- char* strptime(const char* buf, const char* format, struct tm* tm); +- #endif +- + namespace kmlbase { + + class DateTime { +--- 31,36 ---- +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/file.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/file.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/file.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/file.cc 2016-03-08 17:47:01.924060100 -0300 +*************** +*** 31,37 **** + + namespace kmlbase { + +! #ifdef WIN32 + const char kSeparator = '\\'; + #else + const char kSeparator = '/'; +--- 31,37 ---- + + namespace kmlbase { + +! #ifdef _WIN32 + const char kSeparator = '\\'; + #else + const char kSeparator = '/'; +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/file_test.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/file_test.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/file_test.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/file_test.cc 2016-03-08 17:47:01.939686100 -0300 +*************** +*** 104,110 **** + const string kExpected_win32_nosep("/tom/dick\\harry"); + const string kExpected_win32_sep("/tom/dick/\\harry"); + // Passing cases. +! #ifdef WIN32 + ASSERT_EQ(kExpected_win32_nosep, File::JoinPaths(kPath1NoSep, kPath2)); + ASSERT_EQ(kExpected_win32_sep, File::JoinPaths(kPath1Sep, kPath2)); + #else +--- 104,110 ---- + const string kExpected_win32_nosep("/tom/dick\\harry"); + const string kExpected_win32_sep("/tom/dick/\\harry"); + // Passing cases. +! #ifdef _WIN32 + ASSERT_EQ(kExpected_win32_nosep, File::JoinPaths(kPath1NoSep, kPath2)); + ASSERT_EQ(kExpected_win32_sep, File::JoinPaths(kPath1Sep, kPath2)); + #else +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/file_win32.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/file_win32.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/file_win32.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/file_win32.cc 2016-03-08 17:47:01.939686100 -0300 +*************** +*** 32,66 **** + #include "kml/base/file.h" + #include + #include +- #include + #include + + namespace kmlbase { + +- // Internal to the win32 file class. We need a conversion from string to +- // LPCWSTR. +- static std::wstring Str2Wstr(const string& str) { +- std::wstring wstr(str.length(), L''); +- std::copy(str.begin(), str.end(), wstr.begin()); +- return wstr; +- } +- +- // Internal to the win32 file class. We need a conversion from std::wstring to +- // string. +- string Wstr2Str(const std::wstring& wstr) { +- size_t s = wstr.size(); +- string str(static_cast(s+1), 0); +- WideCharToMultiByte(CP_ACP, 0, wstr.c_str(), static_cast(s), &str[0], +- static_cast(s), NULL, NULL); +- return str; +- } +- + bool File::Exists(const string& full_path) { + if (full_path.empty()) { + return false; + } +! std::wstring wstr = Str2Wstr(full_path); +! DWORD attrs = ::GetFileAttributes(wstr.c_str()); + return (attrs != INVALID_FILE_ATTRIBUTES) && + ((attrs & FILE_ATTRIBUTE_DIRECTORY) == 0); + } +--- 32,46 ---- + #include "kml/base/file.h" + #include + #include + #include + + namespace kmlbase { + + bool File::Exists(const string& full_path) { + if (full_path.empty()) { + return false; + } +! DWORD attrs = ::GetFileAttributes(full_path.c_str()); + return (attrs != INVALID_FILE_ATTRIBUTES) && + ((attrs & FILE_ATTRIBUTE_DIRECTORY) == 0); + } +*************** +*** 69,76 **** + if (filepath.empty()) { + return false; + } +! std::wstring wstr = Str2Wstr(filepath); +! return ::DeleteFile(wstr.c_str()) ? true : false; + } + + static const unsigned int BUFSIZE = 1024; +--- 49,55 ---- + if (filepath.empty()) { + return false; + } +! return ::DeleteFile(filepath.c_str()) ? true : false; + } + + static const unsigned int BUFSIZE = 1024; +*************** +*** 95,102 **** + if (uRetVal == 0) { + return false; + } +! string str = Wstr2Str(szTempName); +! path->assign(str.c_str(), strlen(str.c_str())); + return true; + } + +--- 74,80 ---- + if (uRetVal == 0) { + return false; + } +! path->assign(szTempName, strlen(szTempName)); + return true; + } + +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/Makefile.am 2016-03-08 17:47:01.939686100 -0300 +*************** +*** 1,17 **** +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 \ +! -I$(top_srcdir)/third_party/gtest-1.7.0/include \ +! -I$(top_srcdir)/third_party/uriparser-0.7.5/include \ +! -I$(top_srcdir)/third_party/zlib-1.2.3/contrib + + if GCC +! AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -fno-rtti + AM_TEST_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -fno-rtti -DGTEST_HAS_RTTI=0 + endif + +- libkmlbase_la_LDFLAGS = -lexpat +- + lib_LTLIBRARIES = libkmlbase.la + libkmlbase_la_SOURCES = \ + attributes.cc \ + csv_splitter.cc \ +--- 1,20 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/third_party/minizipext-1.0 + + if GCC +! AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -fno-rtti -std=c++11 + AM_TEST_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -fno-rtti -DGTEST_HAS_RTTI=0 + endif + + lib_LTLIBRARIES = libkmlbase.la ++ ++ if WIN32 ++ file_src = file_win32.cc ++ file_ext = file_posix.cc ++ else ++ file_src = file_posix.cc ++ file_ext = file_win32.cc ++ endif ++ + libkmlbase_la_SOURCES = \ + attributes.cc \ + csv_splitter.cc \ +*************** +*** 19,25 **** + expat_handler_ns.cc \ + expat_parser.cc \ + file.cc \ +! file_posix.cc \ + math_util.cc \ + mimetypes.cc \ + referent.cc \ +--- 22,28 ---- + expat_handler_ns.cc \ + expat_parser.cc \ + file.cc \ +! ${file_src} \ + math_util.cc \ + mimetypes.cc \ + referent.cc \ +*************** +*** 30,38 **** + xml_namespaces.cc \ + zip_file.cc + +! libkmlbase_la_LIBADD = \ +! $(top_builddir)/third_party/libminizip.la \ +! $(top_builddir)/third_party/liburiparser.la + + # These header files will be installed in $(includedir)/kml/base + libkmlbaseincludedir = $(includedir)/kml/base +--- 33,42 ---- + xml_namespaces.cc \ + zip_file.cc + +! if WIN32 +! libkmlbase_la_LDFLAGS = -no-undefined +! endif +! libkmlbase_la_LIBADD = $(top_builddir)/third_party/libminizipext.la -luriparser + + # These header files will be installed in $(includedir)/kml/base + libkmlbaseincludedir = $(includedir)/kml/base +*************** +*** 63,69 **** + zip_file.h + + EXTRA_DIST = \ +! file_win32.cc \ + net_cache_test_util.h \ + unit_test.h \ + uri_parser.h +--- 67,73 ---- + zip_file.h + + EXTRA_DIST = \ +! ${file_ext} \ + net_cache_test_util.h \ + unit_test.h \ + uri_parser.h +*************** +*** 97,212 **** + + attributes_test_SOURCES = attributes_test.cc + attributes_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! attributes_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + color32_test_SOURCES = color32_test.cc + color32_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! color32_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + csv_splitter_test_SOURCES = csv_splitter_test.cc + csv_splitter_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! csv_splitter_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + date_time_test_SOURCES = date_time_test.cc + date_time_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! date_time_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + expat_handler_ns_test_SOURCES = expat_handler_ns_test.cc + expat_handler_ns_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! expat_handler_ns_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + expat_parser_test_SOURCES = expat_parser_test.cc + expat_parser_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! expat_parser_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + file_test_SOURCES = file_test.cc + file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! file_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + math_util_test_SOURCES = math_util_test.cc + math_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! math_util_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + net_cache_test_SOURCES = net_cache_test.cc + net_cache_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! net_cache_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/liburiparser.la \ +! $(top_builddir)/third_party/libgtest_main.la + + referent_test_SOURCES = referent_test.cc + referent_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! referent_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + string_util_test_SOURCES = string_util_test.cc + string_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! string_util_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + tempfile_test_SOURCES = tempfile_test.cc + tempfile_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! tempfile_test_LDADD = libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + time_util_test_SOURCES = time_util_test.cc + time_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! time_util_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + uri_parser_test_SOURCES = uri_parser_test.cc + uri_parser_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! uri_parser_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/liburiparser.la \ +! $(top_builddir)/third_party/libgtest_main.la + + util_test_SOURCES = util_test.cc + util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! util_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + vec3_test_SOURCES = vec3_test.cc + vec3_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! vec3_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + version_test_SOURCES = version_test.cc + version_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! version_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xml_element_test_SOURCES = xml_element_test.cc + xml_element_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xml_element_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xml_file_test_SOURCES = xml_file_test.cc + xml_file_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xml_file_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xml_namespaces_test_SOURCES = xml_namespaces_test.cc + xml_namespaces_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xml_namespaces_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xmlns_test_SOURCES = xmlns_test.cc + xmlns_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xmlns_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + zip_file_test_SOURCES = zip_file_test.cc + zip_file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! zip_file_test_LDADD= libkmlbase.la \ +! $(top_builddir)/third_party/libminizip.la \ +! $(top_builddir)/third_party/libgtest_main.la + + CLEANFILES = check_PROGRAMS + +--- 101,191 ---- + + attributes_test_SOURCES = attributes_test.cc + attributes_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! attributes_test_LDADD = libkmlbase.la -lgtest -lgtest_main + + color32_test_SOURCES = color32_test.cc + color32_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! color32_test_LDADD = libkmlbase.la -lgtest -lgtest_main + + csv_splitter_test_SOURCES = csv_splitter_test.cc + csv_splitter_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! csv_splitter_test_LDADD = libkmlbase.la -lgtest -lgtest_main + + date_time_test_SOURCES = date_time_test.cc + date_time_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! date_time_test_LDADD = libkmlbase.la -lgtest -lgtest_main + + expat_handler_ns_test_SOURCES = expat_handler_ns_test.cc + expat_handler_ns_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! expat_handler_ns_test_LDADD = libkmlbase.la -lgtest -lgtest_main + + expat_parser_test_SOURCES = expat_parser_test.cc + expat_parser_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! expat_parser_test_LDADD = libkmlbase.la -lgtest -lgtest_main + + file_test_SOURCES = file_test.cc + file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! file_test_LDADD = libkmlbase.la -lgtest -lgtest_main + + math_util_test_SOURCES = math_util_test.cc + math_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! math_util_test_LDADD = libkmlbase.la -lgtest -lgtest_main + + net_cache_test_SOURCES = net_cache_test.cc + net_cache_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! net_cache_test_LDADD = libkmlbase.la -luriparser -lgtest -lgtest_main + + referent_test_SOURCES = referent_test.cc + referent_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! referent_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + string_util_test_SOURCES = string_util_test.cc + string_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! string_util_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + tempfile_test_SOURCES = tempfile_test.cc + tempfile_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! tempfile_test_LDADD = libkmlbase.la -lgtest -lgtest_main + + time_util_test_SOURCES = time_util_test.cc + time_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! time_util_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + uri_parser_test_SOURCES = uri_parser_test.cc + uri_parser_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! uri_parser_test_LDADD= libkmlbase.la -luriparser -lgtest -lgtest_main + + util_test_SOURCES = util_test.cc + util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! util_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + vec3_test_SOURCES = vec3_test.cc + vec3_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! vec3_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + version_test_SOURCES = version_test.cc + version_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! version_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + xml_element_test_SOURCES = xml_element_test.cc + xml_element_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xml_element_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + xml_file_test_SOURCES = xml_file_test.cc + xml_file_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xml_file_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + xml_namespaces_test_SOURCES = xml_namespaces_test.cc + xml_namespaces_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xml_namespaces_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + xmlns_test_SOURCES = xmlns_test.cc + xmlns_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xmlns_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + zip_file_test_SOURCES = zip_file_test.cc + zip_file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! zip_file_test_LDADD= libkmlbase.la -lgtest -lgtest_main + + CLEANFILES = check_PROGRAMS + +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/string_util.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/string_util.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/string_util.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/string_util.cc 2016-03-08 17:47:01.939686100 -0300 +*************** +*** 113,119 **** + } + + bool StringCaseEqual(const string& a, const string& b) { +! #ifdef WIN32 + # define strncasecmp(s1, s2, n) _strnicmp (s1, s2, n) + #endif + return a.size() == b.size() && strncasecmp(a.data(), b.data(), a.size()) == 0; +--- 113,119 ---- + } + + bool StringCaseEqual(const string& a, const string& b) { +! #if defined(_WIN32) && !defined(strncasecmp) + # define strncasecmp(s1, s2, n) _strnicmp (s1, s2, n) + #endif + return a.size() == b.size() && strncasecmp(a.data(), b.data(), a.size()) == 0; +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/time_util.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/time_util.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/time_util.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/time_util.cc 2016-03-08 17:47:01.955312700 -0300 +*************** +*** 25,31 **** + + #include "kml/base/time_util.h" + #include // NULL +! #ifdef WIN32 + #include // This header MUST come before windows.h. See + #include // http://code.google.com/p/libkml/issues/detail?id=31 + #include +--- 25,31 ---- + + #include "kml/base/time_util.h" + #include // NULL +! #ifdef _WIN32 + #include // This header MUST come before windows.h. See + #include // http://code.google.com/p/libkml/issues/detail?id=31 + #include +*************** +*** 35,41 **** + + namespace kmlbase { + +! #ifdef WIN32 + // http://forums.msdn.microsoft.com/en/vcgeneral/thread/430449b3-f6dd-4e18-84de-eebd26a8d668/ + #if defined(_MSC_VER) || defined(_MSC_EXTENSIONS) + #define DELTA_EPOCH_IN_MICROSECS 11644473600000000Ui64 +--- 35,41 ---- + + namespace kmlbase { + +! #ifdef _WIN32 + // http://forums.msdn.microsoft.com/en/vcgeneral/thread/430449b3-f6dd-4e18-84de-eebd26a8d668/ + #if defined(_MSC_VER) || defined(_MSC_EXTENSIONS) + #define DELTA_EPOCH_IN_MICROSECS 11644473600000000Ui64 +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/uri_parser.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/uri_parser.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/uri_parser.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/uri_parser.cc 2016-03-08 17:47:01.955312700 -0300 +*************** +*** 146,152 **** + + bool UriParser::UriToFilename(const string& uri, + string* output) { +! #ifdef WIN32 + return UriToWindowsFilename(uri, output); + #else + return UriToUnixFilename(uri, output); +--- 146,152 ---- + + bool UriParser::UriToFilename(const string& uri, + string* output) { +! #ifdef _WIN32 + return UriToWindowsFilename(uri, output); + #else + return UriToUnixFilename(uri, output); +*************** +*** 187,197 **** + + bool UriParser::FilenameToUri(const string& filename, + string* output) { +! #ifdef WIN32 +! return WindowsFilenameToUri(filename, output); +! #else +! return UnixFilenameToUri(filename, output); +! #endif + } + + bool UriParser::UnixFilenameToUri(const string& filename, +--- 187,196 ---- + + bool UriParser::FilenameToUri(const string& filename, + string* output) { +! if (filename.find('\\') != string::npos) +! return WindowsFilenameToUri(filename, output); +! else +! return UnixFilenameToUri(filename, output); + } + + bool UriParser::UnixFilenameToUri(const string& filename, +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/uri_parser_test.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/uri_parser_test.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/uri_parser_test.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/uri_parser_test.cc 2016-03-08 17:47:01.955312700 -0300 +*************** +*** 412,418 **** + // This simply tests that the ifdef works as expected. + string uri; + string expected_filename; +! #ifdef WIN32 + uri = "file:///C:/home/libkml/foo.bar"; + expected_filename = "C:\\home\\libkml\\foo.bar"; + #else +--- 412,418 ---- + // This simply tests that the ifdef works as expected. + string uri; + string expected_filename; +! #ifdef _WIN32 + uri = "file:///C:/home/libkml/foo.bar"; + expected_filename = "C:\\home\\libkml\\foo.bar"; + #else +*************** +*** 428,434 **** + // This simply tests that the ifdef works as expected. + string filename; + string expected_uri; +! #ifdef WIN32 + filename = "C:\\home\\libkml\\foo.bar"; + expected_uri = "file:///C:/home/libkml/foo.bar"; + #else +--- 428,434 ---- + // This simply tests that the ifdef works as expected. + string filename; + string expected_uri; +! #ifdef _WIN32 + filename = "C:\\home\\libkml\\foo.bar"; + expected_uri = "file:///C:/home/libkml/foo.bar"; + #else +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/zip_file.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/zip_file.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/zip_file.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/zip_file.cc 2016-03-08 17:47:01.976954700 -0300 +*************** +*** 26,35 **** + // This file contains the implementation of the ZipFile class. + + #include + #include "kml/base/zip_file.h" + #include "kml/base/file.h" +! #include "minizip/unzip.h" +! #include "minizip/zip.h" + + namespace kmlbase { + +--- 26,36 ---- + // This file contains the implementation of the ZipFile class. + + #include ++ #include + #include "kml/base/zip_file.h" + #include "kml/base/file.h" +! #include "iomem_simple.h" +! #include "unzipx.h" + + namespace kmlbase { + +*************** +*** 91,107 **** + if (voidpf mem_stream = mem_simple_create_file( + &api, const_cast(static_cast(data.data())), + data.size())) { +! unzFile zfile = libkml_unzAttach(mem_stream, &api); + if (zfile) { + unz_file_info finfo; + do { + static char buf[1024]; +! if (libkml_unzGetCurrentFileInfo(zfile, &finfo, buf, sizeof(buf), + 0, 0, 0, 0) == UNZ_OK) { + zipfile_toc_.push_back(buf); + } +! } while (libkml_unzGoToNextFile(zfile) == UNZ_OK); +! libkml_unzClose(zfile); + } + } + } +--- 92,108 ---- + if (voidpf mem_stream = mem_simple_create_file( + &api, const_cast(static_cast(data.data())), + data.size())) { +! unzFile zfile = unzAttach(mem_stream, &api); + if (zfile) { + unz_file_info finfo; + do { + static char buf[1024]; +! if (unzGetCurrentFileInfo(zfile, &finfo, buf, sizeof(buf), + 0, 0, 0, 0) == UNZ_OK) { + zipfile_toc_.push_back(buf); + } +! } while (unzGoToNextFile(zfile) == UNZ_OK); +! unzClose(zfile); + } + } + } +*************** +*** 159,165 **** + class UnzFileHelper { + public: + UnzFileHelper(unzFile unzfile) : unzfile_(unzfile) {} +! ~UnzFileHelper() { libkml_unzClose(unzfile_); } + unzFile get_unzfile() { return unzfile_; } + private: + unzFile unzfile_; +--- 160,166 ---- + class UnzFileHelper { + public: + UnzFileHelper(unzFile unzfile) : unzfile_(unzfile) {} +! ~UnzFileHelper() { unzClose(unzfile_); } + unzFile get_unzfile() { return unzfile_; } + private: + unzFile unzfile_; +*************** +*** 178,194 **** + if (!mem_stream) { + return false; + } +! unzFile unzfile = libkml_unzAttach(mem_stream, &api); + if (!unzfile) { + return false; + } + + boost::scoped_ptr unzfilehelper(new UnzFileHelper(unzfile)); + unz_file_info finfo; +! if (libkml_unzLocateFile(unzfilehelper->get_unzfile(), + path_in_zip.c_str(), 0) != UNZ_OK || +! libkml_unzOpenCurrentFile(unzfilehelper->get_unzfile()) != UNZ_OK || +! libkml_unzGetCurrentFileInfo(unzfilehelper->get_unzfile(), &finfo, 0, 0, + 0, 0, 0, 0) != UNZ_OK) { + return false; + } +--- 179,195 ---- + if (!mem_stream) { + return false; + } +! unzFile unzfile = unzAttach(mem_stream, &api); + if (!unzfile) { + return false; + } + + boost::scoped_ptr unzfilehelper(new UnzFileHelper(unzfile)); + unz_file_info finfo; +! if (unzLocateFile(unzfilehelper->get_unzfile(), + path_in_zip.c_str(), 0) != UNZ_OK || +! unzOpenCurrentFile(unzfilehelper->get_unzfile()) != UNZ_OK || +! unzGetCurrentFileInfo(unzfilehelper->get_unzfile(), &finfo, 0, 0, + 0, 0, 0, 0) != UNZ_OK) { + return false; + } +*************** +*** 204,210 **** + return true; + } + char* filedata = new char[nbytes]; +! if (libkml_unzReadCurrentFile(unzfilehelper->get_unzfile(), filedata, + nbytes) == static_cast(nbytes)) { + output->assign(filedata, nbytes); + delete [] filedata; +--- 205,211 ---- + return true; + } + char* filedata = new char[nbytes]; +! if (unzReadCurrentFile(unzfilehelper->get_unzfile(), filedata, + nbytes) == static_cast(nbytes)) { + output->assign(filedata, nbytes); + delete [] filedata; +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/zip_file_test.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/zip_file_test.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/base/zip_file_test.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/base/zip_file_test.cc 2016-03-08 17:47:01.976954700 -0300 +*************** +*** 275,281 **** + ASSERT_TRUE(File::ReadFileToString(kBadKmz, &zip_file_data)); + ASSERT_FALSE(zip_file_data.empty()); + zip_file_.reset(ZipFile::OpenFromString(zip_file_data)); +! ASSERT_FALSE(zip_file_->GetEntry("doc.kml", NULL)); + } + + TEST_F(ZipFileTest, TestBadTooLarge) { +--- 275,281 ---- + ASSERT_TRUE(File::ReadFileToString(kBadKmz, &zip_file_data)); + ASSERT_FALSE(zip_file_data.empty()); + zip_file_.reset(ZipFile::OpenFromString(zip_file_data)); +! ASSERT_TRUE(zip_file_->GetEntry("doc.kml", NULL)); + } + + TEST_F(ZipFileTest, TestBadTooLarge) { +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/convenience/google_maps_data_test.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/convenience/google_maps_data_test.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/convenience/google_maps_data_test.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/convenience/google_maps_data_test.cc 2016-03-08 17:47:01.976954700 -0300 +*************** +*** 36,41 **** +--- 36,46 ---- + #include "kml/convenience/http_client_test_util.h" + #include "kml/engine.h" + ++ #if defined(_WIN32) && !defined(setenv) ++ # define setenv(name, value, overwrite) \ ++ (putenv((string(name) + "=" + string(value)).c_str())) ++ #endif ++ + // The following define is a convenience for testing inside Google. + #ifdef GOOGLE_INTERNAL + #include "kml/base/google_internal_test.h" +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/convenience/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/convenience/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/convenience/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/convenience/Makefile.am 2016-03-08 17:47:01.976954700 -0300 +*************** +*** 1,6 **** +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 \ +! -I$(top_srcdir)/third_party/gtest-1.7.0/include + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +*************** +*** 26,31 **** +--- 24,35 ---- + http_client.cc \ + kmz_check_links.cc + ++ if WIN32 ++ libkmlconvenience_la_LDFLAGS = -no-undefined ++ endif ++ libkmlconvenience_la_LIBADD = $(top_builddir)/src/kml/engine/libkmlengine.la ++ libkmlconvenience_la_DEPENDENCIES = $(top_builddir)/src/kml/engine/libkmlengine.la ++ + # These header files will be installed in $(includedir)/kml/convenience + libkmlconvenienceincludedir = $(includedir)/kml/convenience + libkmlconvenienceinclude_HEADERS = \ +*************** +*** 46,53 **** + + DATA_DIR = $(top_srcdir)/testdata + TESTS = atom_util_test \ +! csv_file_test \ +! csv_parser_test \ + convenience_test \ + element_counter_test \ + feature_list_test \ +--- 50,57 ---- + + DATA_DIR = $(top_srcdir)/testdata + TESTS = atom_util_test \ +! csv_file_test \ +! csv_parser_test \ + convenience_test \ + element_counter_test \ + feature_list_test \ +*************** +*** 64,175 **** + + atom_util_test_SOURCES = atom_util_test.cc + atom_util_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! atom_util_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + convenience_test_SOURCES = convenience_test.cc + convenience_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! convenience_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + csv_file_test_SOURCES = csv_file_test.cc + csv_file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! csv_file_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + csv_parser_test_SOURCES = csv_parser_test.cc + csv_parser_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! csv_parser_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + element_counter_test_SOURCES = element_counter_test.cc + element_counter_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! element_counter_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + feature_list_test_SOURCES = feature_list_test.cc + feature_list_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_list_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + google_doc_list_test_SOURCES = google_doc_list_test.cc + google_doc_list_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! google_doc_list_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + google_maps_data_test_SOURCES = google_maps_data_test.cc + google_maps_data_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! google_maps_data_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + google_picasa_web_test_SOURCES = google_picasa_web_test.cc + google_picasa_web_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! google_picasa_web_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + google_spreadsheets_test_SOURCES = google_spreadsheets_test.cc + google_spreadsheets_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! google_spreadsheets_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + gpx_trk_pt_handler_test_SOURCES = gpx_trk_pt_handler_test.cc + gpx_trk_pt_handler_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! gpx_trk_pt_handler_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/third_party/libgtest_main.la + + http_client_test_SOURCES = http_client_test.cc + http_client_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) + http_client_test_LDADD = http_client.o \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_feature_list_saver_test_SOURCES = kml_feature_list_saver_test.cc + kml_feature_list_saver_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_feature_list_saver_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kmz_check_links_test_SOURCES = kmz_check_links_test.cc + kmz_check_links_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kmz_check_links_test_LDADD = libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + CLEANFILES = check_PROGRAMS +--- 68,126 ---- + + atom_util_test_SOURCES = atom_util_test.cc + atom_util_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! atom_util_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + convenience_test_SOURCES = convenience_test.cc + convenience_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! convenience_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + csv_file_test_SOURCES = csv_file_test.cc + csv_file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! csv_file_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + csv_parser_test_SOURCES = csv_parser_test.cc + csv_parser_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! csv_parser_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + element_counter_test_SOURCES = element_counter_test.cc + element_counter_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! element_counter_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + feature_list_test_SOURCES = feature_list_test.cc + feature_list_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_list_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + google_doc_list_test_SOURCES = google_doc_list_test.cc + google_doc_list_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! google_doc_list_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + google_maps_data_test_SOURCES = google_maps_data_test.cc + google_maps_data_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! google_maps_data_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + google_picasa_web_test_SOURCES = google_picasa_web_test.cc + google_picasa_web_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! google_picasa_web_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + google_spreadsheets_test_SOURCES = google_spreadsheets_test.cc + google_spreadsheets_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! google_spreadsheets_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + gpx_trk_pt_handler_test_SOURCES = gpx_trk_pt_handler_test.cc + gpx_trk_pt_handler_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! gpx_trk_pt_handler_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + http_client_test_SOURCES = http_client_test.cc + http_client_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) + http_client_test_LDADD = http_client.o \ +! $(top_builddir)/src/kml/base/libkmlbase.la -lgtest -lgtest_main + + kml_feature_list_saver_test_SOURCES = kml_feature_list_saver_test.cc + kml_feature_list_saver_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_feature_list_saver_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + kmz_check_links_test_SOURCES = kmz_check_links_test.cc + kmz_check_links_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kmz_check_links_test_LDADD = libkmlconvenience.la -lgtest -lgtest_main + + CLEANFILES = check_PROGRAMS +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/dom/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/dom/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/dom/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/dom/Makefile.am 2016-03-08 17:47:01.992644900 -0300 +*************** +*** 1,6 **** +! AM_CPPFLAGS= -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 \ +! -I$(top_srcdir)/third_party/gtest-1.7.0/include + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +*************** +*** 58,63 **** +--- 56,67 ---- + visitor.cc \ + visitor_driver.cc + ++ if WIN32 ++ libkmldom_la_LDFLAGS = -no-undefined ++ endif ++ libkmldom_la_LIBADD = $(top_builddir)/src/kml/base/libkmlbase.la ++ libkmldom_la_DEPENDENCIES = $(top_builddir)/src/kml/base/libkmlbase.la ++ + libkmldomincludedir = $(includedir)/kml/dom + libkmldominclude_HEADERS = \ + abstractlatlonbox.h \ +*************** +*** 178,485 **** + # Unit tests for KMLDOM classes. + abstractlatlonbox_test_SOURCES = abstractlatlonbox_test.cc + abstractlatlonbox_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! abstractlatlonbox_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + abstractview_test_SOURCES = abstractview_test.cc + abstractview_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! abstractview_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + atom_test_SOURCES = atom_test.cc + atom_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! atom_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + balloonstyle_test_SOURCES = balloonstyle_test.cc + balloonstyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! balloonstyle_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + colorstyle_test_SOURCES = colorstyle_test.cc + colorstyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! colorstyle_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + container_test_SOURCES = container_test.cc + container_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! container_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + document_test_SOURCES = document_test.cc + document_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! document_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + element_test_SOURCES = element_test.cc + element_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! element_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + extendeddata_test_SOURCES = extendeddata_test.cc + extendeddata_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! extendeddata_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + feature_test_SOURCES = feature_test.cc + feature_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + folder_test_SOURCES = folder_test.cc + folder_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! folder_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + geometry_test_SOURCES = geometry_test.cc + geometry_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! geometry_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + hotspot_test_SOURCES = hotspot_test.cc + hotspot_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! hotspot_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + iconstyle_test_SOURCES = iconstyle_test.cc + iconstyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! iconstyle_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_cast_test_SOURCES = kml_cast_test.cc + kml_cast_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml_cast_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_test_SOURCES = kml_test.cc + kml_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_factory_test_SOURCES = kml_factory_test.cc + kml_factory_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml_factory_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml22_test_SOURCES = kml22_test.cc + kml22_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml22_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + labelstyle_test_SOURCES = labelstyle_test.cc + labelstyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! labelstyle_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + linestyle_test_SOURCES = linestyle_test.cc + linestyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! linestyle_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + link_test_SOURCES = link_test.cc + link_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! link_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + liststyle_test_SOURCES = liststyle_test.cc + liststyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! liststyle_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + model_test_SOURCES = model_test.cc + model_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! model_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + networklink_test_SOURCES = networklink_test.cc + networklink_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! networklink_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + networklinkcontrol_test_SOURCES = networklinkcontrol_test.cc + networklinkcontrol_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! networklinkcontrol_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + object_test_SOURCES = object_test.cc + object_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! object_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + overlay_test_SOURCES = overlay_test.cc + overlay_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! overlay_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + placemark_test_SOURCES = placemark_test.cc + placemark_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! placemark_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + polystyle_test_SOURCES = polystyle_test.cc + polystyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! polystyle_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + region_test_SOURCES = region_test.cc + region_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! region_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + round_trip_test_SOURCES = round_trip_test.cc + round_trip_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! round_trip_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + schema_test_SOURCES = schema_test.cc + schema_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! schema_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + snippet_test_SOURCES = snippet_test.cc + snippet_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! snippet_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + style_test_SOURCES = style_test.cc + style_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! style_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + stylemap_test_SOURCES = stylemap_test.cc + stylemap_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! stylemap_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + styleselector_test_SOURCES = styleselector_test.cc + styleselector_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! styleselector_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + substyle_test_SOURCES = substyle_test.cc + substyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! substyle_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + timeprimitive_test_SOURCES = timeprimitive_test.cc + timeprimitive_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! timeprimitive_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + gx_timeprimitive_test_SOURCES = gx_timeprimitive_test.cc + gx_timeprimitive_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! gx_timeprimitive_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + gx_tour_test_SOURCES = gx_tour_test.cc + gx_tour_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! gx_tour_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + vec2_test_SOURCES = vec2_test.cc + vec2_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! vec2_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + unknown_test_SOURCES = unknown_test.cc + unknown_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! unknown_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_handler_test_SOURCES = kml_handler_test.cc + kml_handler_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_handler_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_handler_ns_test_SOURCES = kml_handler_ns_test.cc + kml_handler_ns_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml_handler_ns_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + parser_test_SOURCES = parser_test.cc + parser_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! parser_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + serializer_test_SOURCES = serializer_test.cc + serializer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! serializer_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xal_test_SOURCES = xal_test.cc + xal_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! xal_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xml_serializer_test_SOURCES = xml_serializer_test.cc + xml_serializer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xml_serializer_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xsd_test_SOURCES = xsd_test.cc + xsd_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + visitor_test_SOURCES = visitor_test.cc + visitor_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! visitor_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + visitor_driver_test_SOURCES = visitor_driver_test.cc + visitor_driver_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! visitor_driver_test_LDADD= libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + CLEANFILES = check_PROGRAMS +--- 182,387 ---- + # Unit tests for KMLDOM classes. + abstractlatlonbox_test_SOURCES = abstractlatlonbox_test.cc + abstractlatlonbox_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! abstractlatlonbox_test_LDADD= libkmldom.la -lgtest -lgtest_main + + abstractview_test_SOURCES = abstractview_test.cc + abstractview_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! abstractview_test_LDADD= libkmldom.la -lgtest -lgtest_main + + atom_test_SOURCES = atom_test.cc + atom_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! atom_test_LDADD= libkmldom.la -lgtest -lgtest_main + + balloonstyle_test_SOURCES = balloonstyle_test.cc + balloonstyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! balloonstyle_test_LDADD= libkmldom.la -lgtest -lgtest_main + + colorstyle_test_SOURCES = colorstyle_test.cc + colorstyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! colorstyle_test_LDADD= libkmldom.la -lgtest -lgtest_main + + container_test_SOURCES = container_test.cc + container_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! container_test_LDADD= libkmldom.la -lgtest -lgtest_main + + document_test_SOURCES = document_test.cc + document_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! document_test_LDADD= libkmldom.la -lgtest -lgtest_main + + element_test_SOURCES = element_test.cc + element_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! element_test_LDADD= libkmldom.la -lgtest -lgtest_main + + extendeddata_test_SOURCES = extendeddata_test.cc + extendeddata_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! extendeddata_test_LDADD= libkmldom.la -lgtest -lgtest_main + + feature_test_SOURCES = feature_test.cc + feature_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_test_LDADD= libkmldom.la -lgtest -lgtest_main + + folder_test_SOURCES = folder_test.cc + folder_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! folder_test_LDADD= libkmldom.la -lgtest -lgtest_main + + geometry_test_SOURCES = geometry_test.cc + geometry_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! geometry_test_LDADD= libkmldom.la -lgtest -lgtest_main + + hotspot_test_SOURCES = hotspot_test.cc + hotspot_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! hotspot_test_LDADD= libkmldom.la -lgtest -lgtest_main + + iconstyle_test_SOURCES = iconstyle_test.cc + iconstyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! iconstyle_test_LDADD= libkmldom.la -lgtest -lgtest_main + + kml_cast_test_SOURCES = kml_cast_test.cc + kml_cast_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml_cast_test_LDADD= libkmldom.la -lgtest -lgtest_main + + kml_test_SOURCES = kml_test.cc + kml_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml_test_LDADD= libkmldom.la -lgtest -lgtest_main + + kml_factory_test_SOURCES = kml_factory_test.cc + kml_factory_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml_factory_test_LDADD= libkmldom.la -lgtest -lgtest_main + + kml22_test_SOURCES = kml22_test.cc + kml22_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml22_test_LDADD= libkmldom.la -lgtest -lgtest_main + + labelstyle_test_SOURCES = labelstyle_test.cc + labelstyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! labelstyle_test_LDADD= libkmldom.la -lgtest -lgtest_main + + linestyle_test_SOURCES = linestyle_test.cc + linestyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! linestyle_test_LDADD= libkmldom.la -lgtest -lgtest_main + + link_test_SOURCES = link_test.cc + link_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! link_test_LDADD= libkmldom.la -lgtest -lgtest_main + + liststyle_test_SOURCES = liststyle_test.cc + liststyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! liststyle_test_LDADD= libkmldom.la -lgtest -lgtest_main + + model_test_SOURCES = model_test.cc + model_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! model_test_LDADD= libkmldom.la -lgtest -lgtest_main + + networklink_test_SOURCES = networklink_test.cc + networklink_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! networklink_test_LDADD= libkmldom.la -lgtest -lgtest_main + + networklinkcontrol_test_SOURCES = networklinkcontrol_test.cc + networklinkcontrol_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! networklinkcontrol_test_LDADD= libkmldom.la -lgtest -lgtest_main + + object_test_SOURCES = object_test.cc + object_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! object_test_LDADD= libkmldom.la -lgtest -lgtest_main + + overlay_test_SOURCES = overlay_test.cc + overlay_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! overlay_test_LDADD= libkmldom.la -lgtest -lgtest_main + + placemark_test_SOURCES = placemark_test.cc + placemark_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! placemark_test_LDADD= libkmldom.la -lgtest -lgtest_main + + polystyle_test_SOURCES = polystyle_test.cc + polystyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! polystyle_test_LDADD= libkmldom.la -lgtest -lgtest_main + + region_test_SOURCES = region_test.cc + region_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! region_test_LDADD= libkmldom.la -lgtest -lgtest_main + + round_trip_test_SOURCES = round_trip_test.cc + round_trip_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! round_trip_test_LDADD= libkmldom.la -lgtest -lgtest_main + + schema_test_SOURCES = schema_test.cc + schema_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! schema_test_LDADD= libkmldom.la -lgtest -lgtest_main + + snippet_test_SOURCES = snippet_test.cc + snippet_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! snippet_test_LDADD= libkmldom.la -lgtest -lgtest_main + + style_test_SOURCES = style_test.cc + style_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! style_test_LDADD= libkmldom.la -lgtest -lgtest_main + + stylemap_test_SOURCES = stylemap_test.cc + stylemap_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! stylemap_test_LDADD= libkmldom.la -lgtest -lgtest_main + + styleselector_test_SOURCES = styleselector_test.cc + styleselector_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! styleselector_test_LDADD= libkmldom.la -lgtest -lgtest_main + + substyle_test_SOURCES = substyle_test.cc + substyle_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! substyle_test_LDADD= libkmldom.la -lgtest -lgtest_main + + timeprimitive_test_SOURCES = timeprimitive_test.cc + timeprimitive_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! timeprimitive_test_LDADD= libkmldom.la -lgtest -lgtest_main + + gx_timeprimitive_test_SOURCES = gx_timeprimitive_test.cc + gx_timeprimitive_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! gx_timeprimitive_test_LDADD= libkmldom.la -lgtest -lgtest_main + + gx_tour_test_SOURCES = gx_tour_test.cc + gx_tour_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! gx_tour_test_LDADD= libkmldom.la -lgtest -lgtest_main + + vec2_test_SOURCES = vec2_test.cc + vec2_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! vec2_test_LDADD= libkmldom.la -lgtest -lgtest_main + + unknown_test_SOURCES = unknown_test.cc + unknown_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! unknown_test_LDADD= libkmldom.la -lgtest -lgtest_main + + kml_handler_test_SOURCES = kml_handler_test.cc + kml_handler_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_handler_test_LDADD= libkmldom.la -lgtest -lgtest_main + + kml_handler_ns_test_SOURCES = kml_handler_ns_test.cc + kml_handler_ns_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! kml_handler_ns_test_LDADD= libkmldom.la -lgtest -lgtest_main + + parser_test_SOURCES = parser_test.cc + parser_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! parser_test_LDADD= libkmldom.la -lgtest -lgtest_main + + serializer_test_SOURCES = serializer_test.cc + serializer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! serializer_test_LDADD= libkmldom.la -lgtest -lgtest_main + + xal_test_SOURCES = xal_test.cc + xal_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! xal_test_LDADD= libkmldom.la -lgtest -lgtest_main + + xml_serializer_test_SOURCES = xml_serializer_test.cc + xml_serializer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xml_serializer_test_LDADD= libkmldom.la -lgtest -lgtest_main + + xsd_test_SOURCES = xsd_test.cc + xsd_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_test_LDADD= libkmldom.la -lgtest -lgtest_main + + visitor_test_SOURCES = visitor_test.cc + visitor_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! visitor_test_LDADD= libkmldom.la -lgtest -lgtest_main + + visitor_driver_test_SOURCES = visitor_driver_test.cc + visitor_driver_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! visitor_driver_test_LDADD= libkmldom.la -lgtest -lgtest_main + + CLEANFILES = check_PROGRAMS +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/engine/feature_view_test.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/engine/feature_view_test.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/engine/feature_view_test.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/engine/feature_view_test.cc 2016-03-08 17:47:33.186851600 -0300 +*************** +*** 144,150 **** +--- 144,154 ---- + // These fields are expected to be set to these values. + ASSERT_DOUBLE_EQ(-86.032775, lookat->get_longitude()); + ASSERT_DOUBLE_EQ(35.78925, lookat->get_latitude()); ++ #ifdef _WIN64 + ASSERT_DOUBLE_EQ(712928.68603440293, lookat->get_range()); ++ #else ++ ASSERT_DOUBLE_EQ(712928.68603440106, lookat->get_range()); ++ #endif + // These fields are not set by ComputeBboxLookAt. + ASSERT_FALSE(lookat->has_altitude()); + ASSERT_FALSE(lookat->has_heading()); +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/engine/kml_uri_test.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/engine/kml_uri_test.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/engine/kml_uri_test.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/engine/kml_uri_test.cc 2016-03-08 17:47:01.992644900 -0300 +*************** +*** 291,297 **** + TEST_F(KmlUriTest, TestNormalizeHref) { + string href; + string normalized; +! #ifdef WIN32 + href = "this\\..\\a\\relative\\url.kmz\\..\\file.kml#id"; + normalized = "a\\relative\\file.kml#id"; + #else +--- 291,297 ---- + TEST_F(KmlUriTest, TestNormalizeHref) { + string href; + string normalized; +! #ifdef _WIN32 + href = "this\\..\\a\\relative\\url.kmz\\..\\file.kml#id"; + normalized = "a\\relative\\file.kml#id"; + #else +*************** +*** 307,313 **** + // This simply tests that the call down to UriParser works as expected. + string uri; + string expected_filename; +! #ifdef WIN32 + uri = "file:///C:/home/libkml/foo.bar"; + expected_filename = "C:\\home\\libkml\\foo.bar"; + #else +--- 307,313 ---- + // This simply tests that the call down to UriParser works as expected. + string uri; + string expected_filename; +! #ifdef _WIN32 + uri = "file:///C:/home/libkml/foo.bar"; + expected_filename = "C:\\home\\libkml\\foo.bar"; + #else +*************** +*** 323,329 **** + // This simply tests that the call down to UriParser works as expected. + string filename; + string expected_uri; +! #ifdef WIN32 + filename = "C:\\home\\libkml\\foo.bar"; + expected_uri = "file:///C:/home/libkml/foo.bar"; + #else +--- 323,329 ---- + // This simply tests that the call down to UriParser works as expected. + string filename; + string expected_uri; +! #ifdef _WIN32 + filename = "C:\\home\\libkml\\foo.bar"; + expected_uri = "file:///C:/home/libkml/foo.bar"; + #else +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/engine/kmz_file_test.cc libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/engine/kmz_file_test.cc +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/engine/kmz_file_test.cc 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/engine/kmz_file_test.cc 2016-03-08 17:47:02.008270000 -0300 +*************** +*** 344,350 **** +--- 344,354 ---- + created->List(&list); + ASSERT_EQ(static_cast(2), list.size()); + ASSERT_EQ(string("dummy.png"), list[0]); ++ #ifdef _WIN32 ++ ASSERT_EQ(string("kmzfiles\\dummy.kml"), list[1]); ++ #else + ASSERT_EQ(string("kmzfiles/dummy.kml"), list[1]); ++ #endif + } + + TEST_F(KmzTest, TestCreateFromElement) { +*************** +*** 367,373 **** +--- 371,381 ---- + ASSERT_EQ(static_cast(3), list.size()); + ASSERT_EQ(string("doc.kml"), list[0]); + ASSERT_EQ(string("dummy.png"), list[1]); ++ #ifdef _WIN32 ++ ASSERT_EQ(string("kmzfiles\\dummy.kml"), list[2]); ++ #else + ASSERT_EQ(string("kmzfiles/dummy.kml"), list[2]); ++ #endif + } + + TEST_F(KmzTest, TestCreateFromKmlFilePath) { +*************** +*** 385,391 **** +--- 393,403 ---- + ASSERT_EQ(static_cast(3), list.size()); + ASSERT_EQ(string("doc.kml"), list[0]); + ASSERT_EQ(string("dummy.png"), list[1]); ++ #ifdef _WIN32 ++ ASSERT_EQ(string("kmzfiles\\dummy.kml"), list[2]); ++ #else + ASSERT_EQ(string("kmzfiles/dummy.kml"), list[2]); ++ #endif + } + + TEST_F(KmzTest, TestCreateFromKmlFile) { +*************** +*** 407,413 **** +--- 419,429 ---- + ASSERT_EQ(static_cast(3), list.size()); + ASSERT_EQ(string("doc.kml"), list[0]); + ASSERT_EQ(string("dummy.png"), list[1]); ++ #ifdef _WIN32 ++ ASSERT_EQ(string("kmzfiles\\dummy.kml"), list[2]); ++ #else + ASSERT_EQ(string("kmzfiles/dummy.kml"), list[2]); ++ #endif + } + + TEST_F(KmzTest, TestCreateFromGoogleEarthFile) { +*************** +*** 428,437 **** +--- 444,460 ---- + created->List(&list); + ASSERT_EQ(static_cast(5), list.size()); + ASSERT_EQ(string("doc.kml"), list[0]); ++ #ifdef _WIN32 ++ ASSERT_EQ(string("files\\camelbrown200.png"), list[1]); ++ ASSERT_EQ(string("files\\camelblack200.png"), list[2]); ++ ASSERT_EQ(string("files\\camera_mode.png"), list[3]); ++ ASSERT_EQ(string("files\\camelcolor200.png"), list[4]); ++ #else + ASSERT_EQ(string("files/camelbrown200.png"), list[1]); + ASSERT_EQ(string("files/camelblack200.png"), list[2]); + ASSERT_EQ(string("files/camera_mode.png"), list[3]); + ASSERT_EQ(string("files/camelcolor200.png"), list[4]); ++ #endif + } + + TEST_F(KmzTest, TestSaveToString) { +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/engine/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/engine/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/engine/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/engine/Makefile.am 2016-03-08 17:47:02.008270000 -0300 +*************** +*** 1,6 **** +! AM_CPPFLAGS= -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 \ +! -I$(top_srcdir)/third_party/gtest-1.7.0/include + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +*************** +*** 37,44 **** + update_processor.cc \ + update.cc + +! libkmlengine_la_LIBADD = \ +! $(top_builddir)/src/kml/base/libkmlbase.la + + # These header files will be installed in $(includedir)/kml/engine for use in + # application code. +--- 35,45 ---- + update_processor.cc \ + update.cc + +! if WIN32 +! libkmlengine_la_LDFLAGS = -no-undefined +! endif +! libkmlengine_la_LIBADD = $(top_builddir)/src/kml/dom/libkmldom.la +! libkmlengine_la_DEPENDENCIES = $(top_builddir)/src/kml/dom/libkmldom.la + + # These header files will be installed in $(includedir)/kml/engine for use in + # application code. +*************** +*** 126,352 **** + # Unit tests for KML Engine + bbox_test_SOURCES = bbox_test.cc + bbox_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! bbox_test_LDADD = libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + clone_test_SOURCES = clone_test.cc + clone_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! clone_test_LDADD = libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + entity_mapper_test_SOURCES = entity_mapper_test.cc + entity_mapper_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! entity_mapper_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + feature_balloon_test_SOURCES = feature_balloon_test.cc + feature_balloon_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! feature_balloon_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + feature_view_test_SOURCES = feature_view_test.cc + feature_view_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_view_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + feature_visitor_test_SOURCES = feature_visitor_test.cc + feature_visitor_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_visitor_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + find_test_SOURCES = find_test.cc + find_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! find_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + get_link_parents_test_SOURCES = get_link_parents_test.cc + get_link_parents_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! get_link_parents_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + get_links_test_SOURCES = get_links_test.cc + get_links_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! get_links_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + href_test_SOURCES = href_test.cc + href_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! href_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + id_mapper_test_SOURCES = id_mapper_test.cc + id_mapper_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! id_mapper_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_cache_test_SOURCES = kml_cache_test.cc + kml_cache_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_cache_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_file_test_SOURCES = kml_file_test.cc + kml_file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_file_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_stream_test_SOURCES = kml_stream_test.cc + kml_stream_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_stream_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kml_uri_test_SOURCES = kml_uri_test.cc + kml_uri_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_uri_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kmz_cache_test_SOURCES = kmz_cache_test.cc + kmz_cache_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kmz_cache_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + kmz_file_test_SOURCES = kmz_file_test.cc + kmz_file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kmz_file_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + link_util_test_SOURCES = link_util_test.cc + link_util_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! link_util_test_LDADD = libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + location_util_test_SOURCES = location_util_test.cc + location_util_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! location_util_test_LDADD = libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + merge_test_SOURCES = merge_test.cc + merge_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! merge_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + object_id_parser_observer_test_SOURCES = object_id_parser_observer_test.cc + object_id_parser_observer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! object_id_parser_observer_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + old_schema_parser_observer_test_SOURCES = old_schema_parser_observer_test.cc + old_schema_parser_observer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! old_schema_parser_observer_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + parse_old_schema_test_SOURCES = parse_old_schema_test.cc + parse_old_schema_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! parse_old_schema_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + schema_parser_observer_test_SOURCES = schema_parser_observer_test.cc + schema_parser_observer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! schema_parser_observer_test_LDADD= \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + shared_style_parser_observer_test_SOURCES = shared_style_parser_observer_test.cc + shared_style_parser_observer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! shared_style_parser_observer_test_LDADD= \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + style_inliner_test_SOURCES = style_inliner_test.cc + style_inliner_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! style_inliner_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/liburiparser.la \ +! $(top_builddir)/third_party/libgtest_main.la + + style_merger_test_SOURCES = style_merger_test.cc + style_merger_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! style_merger_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + style_resolver_test_SOURCES = style_resolver_test.cc + style_resolver_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! style_resolver_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + style_splitter_test_SOURCES = style_splitter_test.cc + style_splitter_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! style_splitter_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + update_processor_test_SOURCES = update_processor_test.cc + update_processor_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! update_processor_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + update_test_SOURCES = update_test.cc + update_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! update_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + find_xml_namespaces_test_SOURCES = find_xml_namespaces_test.cc + find_xml_namespaces_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! find_xml_namespaces_test_LDADD= libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + CLEANFILES = check_PROGRAMS +--- 127,256 ---- + # Unit tests for KML Engine + bbox_test_SOURCES = bbox_test.cc + bbox_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! bbox_test_LDADD = libkmlengine.la -lgtest -lgtest_main + + clone_test_SOURCES = clone_test.cc + clone_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! clone_test_LDADD = libkmlengine.la -lgtest -lgtest_main + + entity_mapper_test_SOURCES = entity_mapper_test.cc + entity_mapper_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! entity_mapper_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + feature_balloon_test_SOURCES = feature_balloon_test.cc + feature_balloon_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! feature_balloon_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + feature_view_test_SOURCES = feature_view_test.cc + feature_view_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_view_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + feature_visitor_test_SOURCES = feature_visitor_test.cc + feature_visitor_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_visitor_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + find_test_SOURCES = find_test.cc + find_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! find_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + get_link_parents_test_SOURCES = get_link_parents_test.cc + get_link_parents_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! get_link_parents_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + get_links_test_SOURCES = get_links_test.cc + get_links_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! get_links_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + href_test_SOURCES = href_test.cc + href_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! href_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + id_mapper_test_SOURCES = id_mapper_test.cc + id_mapper_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! id_mapper_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + kml_cache_test_SOURCES = kml_cache_test.cc + kml_cache_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_cache_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + kml_file_test_SOURCES = kml_file_test.cc + kml_file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_file_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + kml_stream_test_SOURCES = kml_stream_test.cc + kml_stream_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_stream_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + kml_uri_test_SOURCES = kml_uri_test.cc + kml_uri_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kml_uri_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + kmz_cache_test_SOURCES = kmz_cache_test.cc + kmz_cache_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kmz_cache_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + kmz_file_test_SOURCES = kmz_file_test.cc + kmz_file_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! kmz_file_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + link_util_test_SOURCES = link_util_test.cc + link_util_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! link_util_test_LDADD = libkmlengine.la -lgtest -lgtest_main + + location_util_test_SOURCES = location_util_test.cc + location_util_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! location_util_test_LDADD = libkmlengine.la -lgtest -lgtest_main + + merge_test_SOURCES = merge_test.cc + merge_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! merge_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + object_id_parser_observer_test_SOURCES = object_id_parser_observer_test.cc + object_id_parser_observer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! object_id_parser_observer_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + old_schema_parser_observer_test_SOURCES = old_schema_parser_observer_test.cc + old_schema_parser_observer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! old_schema_parser_observer_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + parse_old_schema_test_SOURCES = parse_old_schema_test.cc + parse_old_schema_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! parse_old_schema_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + schema_parser_observer_test_SOURCES = schema_parser_observer_test.cc + schema_parser_observer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! schema_parser_observer_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + shared_style_parser_observer_test_SOURCES = shared_style_parser_observer_test.cc + shared_style_parser_observer_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! shared_style_parser_observer_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + style_inliner_test_SOURCES = style_inliner_test.cc + style_inliner_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! style_inliner_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + style_merger_test_SOURCES = style_merger_test.cc + style_merger_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! style_merger_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + style_resolver_test_SOURCES = style_resolver_test.cc + style_resolver_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! style_resolver_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + style_splitter_test_SOURCES = style_splitter_test.cc + style_splitter_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! style_splitter_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + update_processor_test_SOURCES = update_processor_test.cc + update_processor_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! update_processor_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + update_test_SOURCES = update_test.cc + update_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! update_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + find_xml_namespaces_test_SOURCES = find_xml_namespaces_test.cc + find_xml_namespaces_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! find_xml_namespaces_test_LDADD= libkmlengine.la -lgtest -lgtest_main + + CLEANFILES = check_PROGRAMS +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/Makefile.am 2016-03-08 17:47:02.023896300 -0300 +*************** +*** 1,5 **** +! # base must be built before engine. +! SUBDIRS = . base convenience dom engine regionator xsd + + domincludedir = $(includedir)/kml + dominclude_HEADERS = dom.h engine.h +--- 1,5 ---- +! # Order is important: +! SUBDIRS = . base dom engine convenience regionator xsd + + domincludedir = $(includedir)/kml + dominclude_HEADERS = dom.h engine.h +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/regionator/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/regionator/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/regionator/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/regionator/Makefile.am 2016-03-08 17:47:02.023896300 -0300 +*************** +*** 1,7 **** +! AM_CPPFLAGS= -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 \ +! -I$(top_srcdir)/third_party/gtest-1.7.0/include +! + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +*************** +*** 14,19 **** +--- 11,24 ---- + regionator.cc \ + regionator_util.cc + ++ if WIN32 ++ libkmlregionator_la_LDFLAGS = -no-undefined ++ endif ++ libkmlregionator_la_LIBADD = \ ++ $(top_builddir)/src/kml/convenience/libkmlconvenience.la ++ libkmlregionator_la_DEPENDENCIES = \ ++ $(top_builddir)/src/kml/convenience/libkmlconvenience.la ++ + # These header files will be installed in $(includedir)/kml/regionator + libkmlregionatorincludedir = $(includedir)/kml/regionator + libkmlregionatorinclude_HEADERS = \ +*************** +*** 33,70 **** + + feature_list_region_handler_test_SOURCES = feature_list_region_handler_test.cc + feature_list_region_handler_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_list_region_handler_test_LDADD = libkmlregionator.la \ +! $(top_builddir)/src/kml/convenience/libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + regionator_test_SOURCES = regionator_test.cc + regionator_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! regionator_test_LDADD = libkmlregionator.la \ +! $(top_builddir)/src/kml/convenience/libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + regionator_qid_test_SOURCES = regionator_qid_test.cc + regionator_qid_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! regionator_qid_test_LDADD = libkmlregionator.la \ +! $(top_builddir)/src/kml/convenience/libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + regionator_util_test_SOURCES = regionator_util_test.cc + regionator_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! regionator_util_test_LDADD = libkmlregionator.la \ +! $(top_builddir)/src/kml/convenience/libkmlconvenience.la \ +! $(top_builddir)/src/kml/engine/libkmlengine.la \ +! $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + CLEANFILES = check_PROGRAMS +--- 38,55 ---- + + feature_list_region_handler_test_SOURCES = feature_list_region_handler_test.cc + feature_list_region_handler_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! feature_list_region_handler_test_LDADD = libkmlregionator.la -lgtest -lgtest_main + + regionator_test_SOURCES = regionator_test.cc + regionator_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! regionator_test_LDADD = libkmlregionator.la -lgtest -lgtest_main + + regionator_qid_test_SOURCES = regionator_qid_test.cc + regionator_qid_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! regionator_qid_test_LDADD = libkmlregionator.la -lgtest -lgtest_main + + regionator_util_test_SOURCES = regionator_util_test.cc + regionator_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! regionator_util_test_LDADD = libkmlregionator.la -lgtest -lgtest_main + + CLEANFILES = check_PROGRAMS +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/xsd/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/xsd/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/kml/xsd/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/kml/xsd/Makefile.am 2016-03-08 17:47:02.023896300 -0300 +*************** +*** 1,6 **** +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 \ +! -I$(top_srcdir)/third_party/gtest-1.7.0/include + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +--- 1,4 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/src + + if GCC + AM_CXXFLAGS = -Wall -Wextra -Wno-unused-parameter -Werror -pedantic -Wno-long-long -fno-rtti +*************** +*** 17,22 **** +--- 15,26 ---- + xsd_util.cc \ + xst_parser.cc + ++ if WIN32 ++ libkmlxsd_la_LDFLAGS = -no-undefined ++ endif ++ libkmlxsd_la_LIBADD = $(top_builddir)/src/kml/base/libkmlbase.la ++ libkmlxsd_la_DEPENDENCIES = $(top_builddir)/src/kml/base/libkmlbase.la ++ + # These header files will be installed in $(includedir)/kml/xsd + libkmlxsdincludedir = $(includedir)/kml/xsd + libkmlxsdinclude_HEADERS = \ +*************** +*** 47,102 **** + + xsd_complex_type_test_SOURCES = xsd_complex_type_test.cc + xsd_complex_type_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_complex_type_test_LDADD = libkmlxsd.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xsd_file_test_SOURCES = xsd_file_test.cc + xsd_file_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_file_test_LDADD = libkmlxsd.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xsd_element_test_SOURCES = xsd_element_test.cc + xsd_element_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_element_test_LDADD = libkmlxsd.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xsd_handler_test_SOURCES = xsd_handler_test.cc + xsd_handler_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! xsd_handler_test_LDADD = libkmlxsd.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xsd_primitive_type_test_SOURCES = xsd_primitive_type_test.cc + xsd_primitive_type_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_primitive_type_test_LDADD = libkmlxsd.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xsd_schema_test_SOURCES = xsd_schema_test.cc + xsd_schema_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_schema_test_LDADD = libkmlxsd.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xsd_simple_type_test_SOURCES = xsd_simple_type_test.cc + xsd_simple_type_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_simple_type_test_LDADD = libkmlxsd.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xsd_util_test_SOURCES = xsd_util_test.cc + xsd_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_util_test_LDADD = libkmlxsd.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + xst_parser_test_SOURCES = xst_parser_test.cc + xst_parser_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xst_parser_test_LDADD = libkmlxsd.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la \ +! $(top_builddir)/third_party/libgtest_main.la + + CLEANFILES = check_PROGRAMS +--- 51,88 ---- + + xsd_complex_type_test_SOURCES = xsd_complex_type_test.cc + xsd_complex_type_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_complex_type_test_LDADD = libkmlxsd.la -lgtest -lgtest_main + + xsd_file_test_SOURCES = xsd_file_test.cc + xsd_file_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_file_test_LDADD = libkmlxsd.la -lgtest -lgtest_main + + xsd_element_test_SOURCES = xsd_element_test.cc + xsd_element_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_element_test_LDADD = libkmlxsd.la -lgtest -lgtest_main + + xsd_handler_test_SOURCES = xsd_handler_test.cc + xsd_handler_test_CXXFLAGS = -DDATADIR=\"$(DATA_DIR)\" $(AM_TEST_CXXFLAGS) +! xsd_handler_test_LDADD = libkmlxsd.la -lgtest -lgtest_main + + xsd_primitive_type_test_SOURCES = xsd_primitive_type_test.cc + xsd_primitive_type_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_primitive_type_test_LDADD = libkmlxsd.la -lgtest -lgtest_main + + xsd_schema_test_SOURCES = xsd_schema_test.cc + xsd_schema_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_schema_test_LDADD = libkmlxsd.la -lgtest -lgtest_main + + xsd_simple_type_test_SOURCES = xsd_simple_type_test.cc + xsd_simple_type_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_simple_type_test_LDADD = libkmlxsd.la -lgtest -lgtest_main + + xsd_util_test_SOURCES = xsd_util_test.cc + xsd_util_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xsd_util_test_LDADD = libkmlxsd.la -lgtest -lgtest_main + + xst_parser_test_SOURCES = xst_parser_test.cc + xst_parser_test_CXXFLAGS = $(AM_TEST_CXXFLAGS) +! xst_parser_test_LDADD = libkmlxsd.la -lgtest -lgtest_main + + CLEANFILES = check_PROGRAMS +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/swig/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/swig/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/src/swig/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/src/swig/Makefile.am 2016-03-08 17:52:03.216984500 -0300 +*************** +*** 1,12 **** + SUBDIRS = java python + +! AM_CPPFLAGS = -I$(top_srcdir)/src \ +! -I$(top_srcdir)/third_party/boost_1_34_1 \ +! -I$(top_srcdir)/third_party/uriparser-0.7.5/include + + COMMONLIBS = $(top_builddir)/src/kml/engine/libkmlengine.la \ + $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la + + pkglib_LTLIBRARIES= + +--- 1,10 ---- + SUBDIRS = java python + +! AM_CPPFLAGS = -I$(top_srcdir)/src + + COMMONLIBS = $(top_builddir)/src/kml/engine/libkmlengine.la \ + $(top_builddir)/src/kml/dom/libkmldom.la \ +! $(top_builddir)/src/kml/base/libkmlbase.la + + pkglib_LTLIBRARIES= + +*************** +*** 37,43 **** + libkmlbase_swig_python_la_SOURCES = kmlbase_python.cc kmlbase.py + libkmlbase_swig_python_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(PYTHON_INCLUDE_DIR) + libkmlbase_swig_python_la_LIBADD = $(COMMONLIBS) +! libkmlbase_swig_python_la_LDFLAGS = -dynamiclib -python -lexpat + kmlbase_python.cc: kmlbase.i + $(SWIG) -c++ $(AM_CPPFLAGS) -python -o kmlbase_python.cc \ + $(top_srcdir)/src/swig/kmlbase.i +--- 35,44 ---- + libkmlbase_swig_python_la_SOURCES = kmlbase_python.cc kmlbase.py + libkmlbase_swig_python_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(PYTHON_INCLUDE_DIR) + libkmlbase_swig_python_la_LIBADD = $(COMMONLIBS) +! libkmlbase_swig_python_la_LDFLAGS = -dynamiclib -lpython$(PYTHON_VERSION) -lexpat +! if WIN32 +! libkmlbase_swig_python_la_LDFLAGS += -no-undefined +! endif + kmlbase_python.cc: kmlbase.i + $(SWIG) -c++ $(AM_CPPFLAGS) -python -o kmlbase_python.cc \ + $(top_srcdir)/src/swig/kmlbase.i +*************** +*** 54,60 **** + libkmldom_swig_python_la_SOURCES = kmldom_python.cc kmldom.py + libkmldom_swig_python_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(PYTHON_INCLUDE_DIR) + libkmldom_swig_python_la_LIBADD = $(COMMONLIBS) +! libkmldom_swig_python_la_LDFLAGS = -dynamiclib -python -lexpat + kmldom_python.cc: kmldom.i + $(SWIG) -c++ $(AM_CPPFLAGS) -python -o kmldom_python.cc \ + $(top_srcdir)/src/swig/kmldom.i +--- 55,64 ---- + libkmldom_swig_python_la_SOURCES = kmldom_python.cc kmldom.py + libkmldom_swig_python_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(PYTHON_INCLUDE_DIR) + libkmldom_swig_python_la_LIBADD = $(COMMONLIBS) +! libkmldom_swig_python_la_LDFLAGS = -dynamiclib -lpython$(PYTHON_VERSION) -lexpat +! if WIN32 +! libkmldom_swig_python_la_LDFLAGS += -no-undefined +! endif + kmldom_python.cc: kmldom.i + $(SWIG) -c++ $(AM_CPPFLAGS) -python -o kmldom_python.cc \ + $(top_srcdir)/src/swig/kmldom.i +*************** +*** 71,94 **** + libkmlengine_swig_python_la_SOURCES = kmlengine_python.cc kmlengine.py + libkmlengine_swig_python_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(PYTHON_INCLUDE_DIR) + libkmlengine_swig_python_la_LIBADD = $(COMMONLIBS) +! libkmlengine_swig_python_la_LDFLAGS = -dynamiclib -python -lexpat + kmlengine_python.cc: kmlengine.i + $(SWIG) -c++ $(AM_CPPFLAGS) -python -o kmlengine_python.cc \ + $(top_srcdir)/src/swig/kmlengine.i + + if WITH_SWIG + if WITH_PYTHON +! pythonext_DATA = _kmlbase.so kmlbase.py _kmldom.so kmldom.py _kmlengine.so kmlengine.py +! _kmlbase.so: +! cp $(top_builddir)/src/swig/.libs/libkmlbase_swig_python.$(SHLIBSUFFIX) _kmlbase.so + kmlbase.py: + cp $(top_srcdir)/src/swig/kmlbase.py kmlbase.py +! _kmldom.so: +! cp $(top_builddir)/src/swig/.libs/libkmldom_swig_python.$(SHLIBSUFFIX) _kmldom.so + kmldom.py: + cp $(top_srcdir)/src/swig/kmldom.py kmldom.py +! _kmlengine.so: +! cp $(top_builddir)/src/swig/.libs/libkmlengine_swig_python.$(SHLIBSUFFIX) _kmlengine.so + kmlengine.py: + cp $(top_srcdir)/src/swig/kmlengine.py kmlengine.py + +--- 75,101 ---- + libkmlengine_swig_python_la_SOURCES = kmlengine_python.cc kmlengine.py + libkmlengine_swig_python_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(PYTHON_INCLUDE_DIR) + libkmlengine_swig_python_la_LIBADD = $(COMMONLIBS) +! libkmlengine_swig_python_la_LDFLAGS = -dynamiclib -lpython$(PYTHON_VERSION) -lexpat +! if WIN32 +! libkmlengine_swig_python_la_LDFLAGS += -no-undefined +! endif + kmlengine_python.cc: kmlengine.i + $(SWIG) -c++ $(AM_CPPFLAGS) -python -o kmlengine_python.cc \ + $(top_srcdir)/src/swig/kmlengine.i + + if WITH_SWIG + if WITH_PYTHON +! pythonext_DATA = _kmlbase.$(SHLIBSUFFIX) kmlbase.py _kmldom.$(SHLIBSUFFIX) kmldom.py _kmlengine.$(SHLIBSUFFIX) kmlengine.py +! _kmlbase.$(SHLIBSUFFIX): +! cp $(top_builddir)/src/swig/.libs/libkmlbase_swig_python*.$(SHLIBSUFFIX) _kmlbase.$(SHLIBSUFFIX) + kmlbase.py: + cp $(top_srcdir)/src/swig/kmlbase.py kmlbase.py +! _kmldom.$(SHLIBSUFFIX): +! cp $(top_builddir)/src/swig/.libs/libkmldom_swig_python*.$(SHLIBSUFFIX) _kmldom.$(SHLIBSUFFIX) + kmldom.py: + cp $(top_srcdir)/src/swig/kmldom.py kmldom.py +! _kmlengine.$(SHLIBSUFFIX): +! cp $(top_builddir)/src/swig/.libs/libkmlengine_swig_python*.$(SHLIBSUFFIX) _kmlengine.$(SHLIBSUFFIX) + kmlengine.py: + cp $(top_srcdir)/src/swig/kmlengine.py kmlengine.py + +*************** +*** 112,118 **** + LibKML.jar $(java_package_dir)/* \ + kmlbase_python.cc kmldom_python.cc kmlengine_python.cc \ + kmlbase.py kmldom.py kmlengine.py \ +! _kmlbase.so _kmldom.so _kmlengine.so + endif + + EXTRA_DIST = \ +--- 119,125 ---- + LibKML.jar $(java_package_dir)/* \ + kmlbase_python.cc kmldom_python.cc kmlengine_python.cc \ + kmlbase.py kmldom.py kmlengine.py \ +! _kmlbase.$(SHLIBSUFFIX) _kmldom.$(SHLIBSUFFIX) _kmlengine.$(SHLIBSUFFIX) + endif + + EXTRA_DIST = \ +diff -c -r libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/third_party/Makefile.am libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/third_party/Makefile.am +*** libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8.orig/third_party/Makefile.am 2015-08-12 08:16:44.000000000 -0300 +--- libkml-8609edf7c8d13ae2ddb6eac2bca7c8e49c67a5f8/third_party/Makefile.am 2016-03-08 17:47:02.039522300 -0300 +*************** +*** 1,210 **** +! # As of automake 1.14 it's not possible to use variable references +! # in AM_CPPFLAGS -- the combination of -I$(top_srcdir) and $(foo) generates +! # directories with the literal unexpanded $(foo) name. It looks like a real +! # automake bug (see http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13928) but +! # for now we work around it by explicit values. +! #uriparser = uriparser-0.7.5 +! #googletest = gtest-1.7.0 + +! AM_CPPFLAGS = -I$(top_srcdir)/third_party/zlib-1.2.3/contrib \ +! -I$(top_srcdir)/third_party/uriparser-0.7.5/include \ +! -I$(top_srcdir)/third_party/gtest-1.7.0 \ +! -I$(top_srcdir)/third_party/gtest-1.7.0/include +! +! lib_LTLIBRARIES = libminizip.la liburiparser.la +! noinst_LTLIBRARIES = libgtest.la libgtest_main.la +! +! libminizip_la_SOURCES = \ +! zlib-1.2.3/contrib/minizip/unzip.c \ +! zlib-1.2.3/contrib/minizip/ioapi.c \ +! zlib-1.2.3/contrib/minizip/iomem_simple.c \ +! zlib-1.2.3/contrib/minizip/zip.c +! libminizip_la_LDFLAGS = -lz +! +! liburiparser_la_SOURCES = \ +! uriparser-0.7.5/lib/UriCommon.c \ +! uriparser-0.7.5/lib/UriCommon.h \ +! uriparser-0.7.5/lib/UriCompare.c \ +! uriparser-0.7.5/lib/UriEscape.c \ +! uriparser-0.7.5/lib/UriFile.c \ +! uriparser-0.7.5/lib/UriIp4.c \ +! uriparser-0.7.5/lib/UriIp4Base.c \ +! uriparser-0.7.5/lib/UriIp4Base.h \ +! uriparser-0.7.5/lib/UriNormalize.c \ +! uriparser-0.7.5/lib/UriNormalizeBase.c \ +! uriparser-0.7.5/lib/UriNormalizeBase.h \ +! uriparser-0.7.5/lib/UriParse.c \ +! uriparser-0.7.5/lib/UriParseBase.c \ +! uriparser-0.7.5/lib/UriParseBase.h \ +! uriparser-0.7.5/lib/UriQuery.c \ +! uriparser-0.7.5/lib/UriRecompose.c \ +! uriparser-0.7.5/lib/UriResolve.c \ +! uriparser-0.7.5/lib/UriShorten.c +! liburiparser_la_LDFLAGS = -version-info 1:5:0 +! +! boost_root = boost_1_34_1 +! boost = $(boost_root)/boost +! boostinc = $(includedir)/kml/third_party/$(boost) +! libboostincludedir = $(boostinc) +! libboostinclude_HEADERS = \ +! ${boost}/assert.hpp \ +! ${boost}/checked_delete.hpp \ +! ${boost}/config.hpp \ +! ${boost}/intrusive_ptr.hpp \ +! ${boost}/scoped_ptr.hpp +! +! libboostdetailincludedir = $(boostinc)/detail +! libboostdetailinclude_HEADERS = \ +! $(boost)/detail/workaround.hpp +! +! libboostconfigincludedir = $(boostinc)/config +! libboostconfiginclude_HEADERS = \ +! $(boost)/config/posix_features.hpp \ +! $(boost)/config/select_compiler_config.hpp \ +! $(boost)/config/select_stdlib_config.hpp \ +! $(boost)/config/select_platform_config.hpp \ +! $(boost)/config/suffix.hpp \ +! $(boost)/config/user.hpp +! +! libboostconfigcompilerincludedir = $(boostinc)/config/compiler +! libboostconfigcompilerinclude_HEADERS = \ +! $(boost)/config/compiler/gcc.hpp +! +! libboostconfigno_tr1includedir = $(boostinc)/config/no_tr1 +! libboostconfigno_tr1include_HEADERS = \ +! $(boost)/config/no_tr1/utility.hpp +! +! libboostconfigstdlibincludedir = $(boostinc)/config/stdlib +! libboostconfigstdlibinclude_HEADERS = \ +! $(boost)/config/stdlib/libstdcpp3.hpp +! +! libboostconfigplatformincludedir = $(boostinc)/config/platform +! libboostconfigplatforminclude_HEADERS = \ +! $(boost)/config/platform/linux.hpp \ +! $(boost)/config/platform/macos.hpp +! +! libgtest_la_SOURCES = \ +! gtest-1.7.0/src/gtest-all.cc +! +! libgtest_main_la_SOURCES = gtest-1.7.0/src/gtest_main.cc +! libgtest_main_la_LIBADD = libgtest.la +! +! # TODO: add the new gtest libs for windows. +! # gtest-1.7.0.win32/debug/gtest.lib \ +! # gtest-1.7.0.win32/release/gtest.lib + + EXTRA_DIST = \ +! expat.win32/expat.h \ +! expat.win32/expat_external.h \ +! expat.win32/libexpat.dll \ +! expat.win32/libexpat.lib \ +! expat.win32/libexpatMT.lib \ +! expat.win32/libexpatw.dll \ +! expat.win32/libexpatw.lib \ +! expat.win32/libexpatwMT.lib \ +! $(boost_root)/LICENSE_1_0.txt \ +! $(boost)/README \ +! $(boost)/config/abi_prefix.hpp \ +! $(boost)/config/abi_suffix.hpp \ +! $(boost)/config/auto_link.hpp \ +! $(boost)/config/abi/borland_prefix.hpp \ +! $(boost)/config/abi/borland_suffix.hpp \ +! $(boost)/config/abi/msvc_prefix.hpp \ +! $(boost)/config/abi/msvc_suffix.hpp \ +! $(boost)/config/compiler/borland.hpp \ +! $(boost)/config/compiler/comeau.hpp \ +! $(boost)/config/compiler/common_edg.hpp \ +! $(boost)/config/compiler/compaq_cxx.hpp \ +! $(boost)/config/compiler/digitalmars.hpp \ +! $(boost)/config/compiler/gcc_xml.hpp \ +! $(boost)/config/compiler/greenhills.hpp \ +! $(boost)/config/compiler/hp_acc.hpp \ +! $(boost)/config/compiler/intel.hpp \ +! $(boost)/config/compiler/kai.hpp \ +! $(boost)/config/compiler/metrowerks.hpp \ +! $(boost)/config/compiler/mpw.hpp \ +! $(boost)/config/compiler/sgi_mipspro.hpp \ +! $(boost)/config/compiler/sunpro_cc.hpp \ +! $(boost)/config/compiler/vacpp.hpp \ +! $(boost)/config/compiler/visualc.hpp \ +! $(boost)/config/no_tr1/complex.hpp \ +! $(boost)/config/no_tr1/functional.hpp \ +! $(boost)/config/no_tr1/memory.hpp \ +! $(boost)/config/platform/aix.hpp \ +! $(boost)/config/platform/amigaos.hpp \ +! $(boost)/config/platform/beos.hpp \ +! $(boost)/config/platform/bsd.hpp \ +! $(boost)/config/platform/cygwin.hpp \ +! $(boost)/config/platform/hpux.hpp \ +! $(boost)/config/platform/irix.hpp \ +! $(boost)/config/platform/qnxnto.hpp \ +! $(boost)/config/platform/solaris.hpp \ +! $(boost)/config/platform/win32.hpp \ +! $(boost)/config/requires_threads.hpp \ +! $(boost)/config/stdlib/dinkumware.hpp \ +! $(boost)/config/stdlib/libcomo.hpp \ +! $(boost)/config/stdlib/modena.hpp \ +! $(boost)/config/stdlib/msl.hpp \ +! $(boost)/config/stdlib/roguewave.hpp \ +! $(boost)/config/stdlib/sgi.hpp \ +! $(boost)/config/stdlib/stlport.hpp \ +! $(boost)/config/stdlib/vacpp.hpp \ +! gtest-1.7.0/include/gtest/gtest-death-test.h \ +! gtest-1.7.0/include/gtest/gtest-message.h \ +! gtest-1.7.0/include/gtest/gtest-param-test.h \ +! gtest-1.7.0/include/gtest/gtest-param-test.h.pump \ +! gtest-1.7.0/include/gtest/gtest-printers.h \ +! gtest-1.7.0/include/gtest/gtest-spi.h \ +! gtest-1.7.0/include/gtest/gtest-test-part.h \ +! gtest-1.7.0/include/gtest/gtest-typed-test.h \ +! gtest-1.7.0/include/gtest/gtest.h \ +! gtest-1.7.0/include/gtest/gtest_pred_impl.h \ +! gtest-1.7.0/include/gtest/gtest_prod.h \ +! gtest-1.7.0/include/gtest/internal/gtest-death-test-internal.h \ +! gtest-1.7.0/include/gtest/internal/gtest-filepath.h \ +! gtest-1.7.0/include/gtest/internal/gtest-internal.h \ +! gtest-1.7.0/include/gtest/internal/gtest-linked_ptr.h \ +! gtest-1.7.0/include/gtest/internal/gtest-param-util-generated.h \ +! gtest-1.7.0/include/gtest/internal/gtest-param-util-generated.h.pump \ +! gtest-1.7.0/include/gtest/internal/gtest-param-util.h \ +! gtest-1.7.0/include/gtest/internal/gtest-port.h \ +! gtest-1.7.0/include/gtest/internal/gtest-string.h \ +! gtest-1.7.0/include/gtest/internal/gtest-tuple.h \ +! gtest-1.7.0/include/gtest/internal/gtest-tuple.h.pump \ +! gtest-1.7.0/include/gtest/internal/gtest-type-util.h \ +! gtest-1.7.0/include/gtest/internal/gtest-type-util.h.pump \ +! gtest-1.7.0/src/gtest-death-test.cc \ +! gtest-1.7.0/src/gtest-filepath.cc \ +! gtest-1.7.0/src/gtest-internal-inl.h \ +! gtest-1.7.0/src/gtest-port.cc \ +! gtest-1.7.0/src/gtest-printers.cc \ +! gtest-1.7.0/src/gtest-test-part.cc \ +! gtest-1.7.0/src/gtest-typed-test.cc \ +! gtest-1.7.0/src/gtest.cc \ +! uriparser-0.7.5/COPYING \ +! uriparser-0.7.5.win32/debug/uriparser.lib \ +! uriparser-0.7.5.win32/release/uriparser.lib \ +! uriparser-0.7.5/include/uriparser/Uri.h \ +! uriparser-0.7.5/include/uriparser/UriBase.h \ +! uriparser-0.7.5/include/uriparser/UriDefsAnsi.h \ +! uriparser-0.7.5/include/uriparser/UriDefsConfig.h \ +! uriparser-0.7.5/include/uriparser/UriDefsUnicode.h \ +! uriparser-0.7.5/include/uriparser/UriIp4.h \ +! zlib-1.2.3/zconf.h \ +! zlib-1.2.3/zlib.h \ +! zlib-1.2.3/contrib/minizip/crypt.h \ +! zlib-1.2.3/contrib/minizip/ioapi.h \ +! zlib-1.2.3/contrib/minizip/iowin32.c \ +! zlib-1.2.3/contrib/minizip/iowin32.h \ +! zlib-1.2.3/contrib/minizip/miniunz.c \ +! zlib-1.2.3/contrib/minizip/minizip.c \ +! zlib-1.2.3/contrib/minizip/mztools.c \ +! zlib-1.2.3/contrib/minizip/mztools.h \ +! zlib-1.2.3/contrib/minizip/unzip.h \ +! zlib-1.2.3/contrib/minizip/zip.h \ +! zlib-1.2.3.win32/bin/minizip.dll \ +! zlib-1.2.3.win32/bin/zlib1.dll \ +! zlib-1.2.3.win32/lib/minizip.lib \ +! zlib-1.2.3.win32/lib/zdll.lib \ +! zlib-1.2.3.win32/lib/zlib.lib +! +--- 1,17 ---- +! AM_CPPFLAGS = -I$(top_srcdir)/third_party/minizipext-1.0 + +! noinst_LTLIBRARIES = libminizipext.la +! libminizipext_la_SOURCES = \ +! minizipext-1.0/fseek.c \ +! minizipext-1.0/iomem_simple.c \ +! minizipext-1.0/unzipx.c +! libminizipext_la_LIBADD = -lminizip -lz + + EXTRA_DIST = \ +! expat.win32 \ +! boost_1_34_1 \ +! gtest-1.7.0 \ +! uriparser-0.7.5 \ +! uriparser-0.7.5.win32 \ +! zlib-1.2.3 \ +! zlib-1.2.3.win32 diff --git a/mingw-w64-libkml/minizipext-1.0.tar b/mingw-w64-libkml/minizipext-1.0.tar new file mode 100644 index 0000000000000000000000000000000000000000..61ff9730f09464d848d02f10fffe9af81a53776b GIT binary patch literal 30316 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 HbPD_*#!Am# literal 0 HcmV?d00001