-
Notifications
You must be signed in to change notification settings - Fork 6.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
alex85k
committed
Oct 3, 2017
1 parent
e25a31e
commit 5871864
Showing
4 changed files
with
203 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
Source: libspatialite | ||
Version: 4.3.0a | ||
Description: SpatiaLite is an open source library intended to extend the SQLite core to support fully fledged Spatial SQL capabilities. | ||
Build-Depends: libxml2, sqlite3, geos, proj4, zlib, freexl, libiconv | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
diff --git a/makefile.vc b/makefile.vc | ||
index 9b9e8ee..b524a27 100644 | ||
--- a/makefile.vc | ||
+++ b/makefile.vc | ||
@@ -59,7 +59,7 @@ LIBOBJ = src\gaiaaux\gg_sqlaux.obj src\gaiaaux\gg_utf8.obj \ | ||
src\versioninfo\version.obj src\virtualtext\virtualtext.obj | ||
SPATIALITE_DLL = spatialite$(VERSION).dll | ||
|
||
-CFLAGS = /nologo -I.\src\headers -I. -IC:\OSGeo4W\include $(OPTFLAGS) | ||
+CFLAGS = /nologo -I.\src\headers -I. -I$(INSTALLED_ROOT)\include $(OPTFLAGS) | ||
|
||
default: all | ||
|
||
@@ -73,12 +73,9 @@ spatialite.lib: $(LIBOBJ) | ||
$(SPATIALITE_DLL): spatialite_i.lib | ||
|
||
spatialite_i.lib: $(LIBOBJ) | ||
- link /debug /dll /out:$(SPATIALITE_DLL) \ | ||
+ link $(LINK_FLAGS) /dll /out:$(SPATIALITE_DLL) \ | ||
/implib:spatialite_i.lib $(LIBOBJ) \ | ||
- C:\OSGeo4W\lib\proj_i.lib C:\OSGeo4W\lib\geos_c.lib \ | ||
- C:\OSGeo4w\lib\freexl_i.lib C:\OSGeo4w\lib\iconv.lib \ | ||
- C:\OSGeo4W\lib\sqlite3_i.lib C:\OSGeo4W\lib\zlib.lib \ | ||
- C:\OSGeo4W\lib\libxml2.lib | ||
+ $(LIBS_ALL) | ||
if exist $(SPATIALITE_DLL).manifest mt -manifest \ | ||
$(SPATIALITE_DLL).manifest -outputresource:$(SPATIALITE_DLL);2 | ||
|
||
@@ -90,16 +87,7 @@ clean: | ||
del *.exp | ||
del *.manifest | ||
del *.lib | ||
- del src\gaiaaux\*.obj | ||
- del src\gaiaexif\*.obj | ||
- del src\gaiageo\*.obj | ||
- del src\spatialite\*.obj | ||
- del src\srsinit\*.obj | ||
- del src\versioninfo\*.obj | ||
- del src\virtualtext\*.obj | ||
- del src\wfs\*.obj | ||
- del src\dxf\*.obj | ||
- del src\md5\*.obj | ||
+ forfiles /m *.obj* /s /c "cmd /c del @path" & exit 0 | ||
del *.pdb | ||
|
||
install: all | ||
diff --git a/nmake.opt b/nmake.opt | ||
index 0960ec1..276bc84 100644 | ||
--- a/nmake.opt | ||
+++ b/nmake.opt | ||
@@ -1,8 +1,8 @@ | ||
# Directory tree where SpatiaLite will be installed. | ||
-INSTDIR=C:\OSGeo4W | ||
+INSTDIR=$(INST_DIR) | ||
|
||
# Uncomment the first for an optimized build, or the second for debug. | ||
-OPTFLAGS= /nologo /Ox /fp:precise /W3 /MD /D_CRT_SECURE_NO_WARNINGS \ | ||
+OPTFLAGS= /nologo /fp:precise /W3 $(CL_FLAGS) /D_CRT_SECURE_NO_WARNINGS \ | ||
/DDLL_EXPORT /DYY_NO_UNISTD_H | ||
#OPTFLAGS= /nologo /Zi /MD /Fdspatialite.pdb /DDLL_EXPORT | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
diff --git a/config-msvc.h b/config-msvc.h | ||
index 9c7f477..a812546 100644 | ||
--- a/config-msvc.h | ||
+++ b/config-msvc.h | ||
@@ -143,7 +143,7 @@ | ||
#define HAVE_SYS_TYPES_H 1 | ||
|
||
/* Define to 1 if you have the <unistd.h> header file. */ | ||
-#define HAVE_UNISTD_H 1 | ||
+#undef HAVE_UNISTD_H | ||
|
||
/* Define to 1 if you have the <zlib.h> header file. */ | ||
#define HAVE_ZLIB_H 1 | ||
diff --git a/src/gaiageo/gg_extras.c b/src/gaiageo/gg_extras.c | ||
index ff3dd7c..49ec986 100644 | ||
--- a/src/gaiageo/gg_extras.c | ||
+++ b/src/gaiageo/gg_extras.c | ||
@@ -59,14 +59,6 @@ the terms of any one of the MPL, the GPL or the LGPL. | ||
#include <spatialite/sqlite.h> | ||
#include <spatialite/gaiageo.h> | ||
|
||
-#if defined(_WIN32) && !defined(__MINGW32__) | ||
-static double | ||
-rint (double x) | ||
-{ | ||
- return floor (x + 0.5); | ||
-} | ||
-#endif | ||
- | ||
static void | ||
auxGridSnapPoint (int dimension_model, gaiaPointPtr pt, gaiaGeomCollPtr result, | ||
double origin_x, double origin_y, double origin_z, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
include(vcpkg_common_functions) | ||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libspatialite-4.3.0a) | ||
vcpkg_download_distfile(ARCHIVE | ||
URLS "http://www.gaia-gis.it/gaia-sins/libspatialite-4.3.0a.tar.gz" | ||
FILENAME "libspatialite-4.3.0a.tar.gz" | ||
SHA512 adfd63e8dde0f370b07e4e7bb557647d2bfb5549205b60bdcaaca69ff81298a3d885e7c1ca515ef56dd0aca152ae940df8b5dbcb65bb61ae0a9337499895c3c0 | ||
) | ||
vcpkg_extract_source_archive(${ARCHIVE}) | ||
|
||
find_program(NMAKE nmake) | ||
|
||
vcpkg_apply_patches( | ||
SOURCE_PATH ${SOURCE_PATH} | ||
PATCHES | ||
${CMAKE_CURRENT_LIST_DIR}/fix-makefiles.patch | ||
${CMAKE_CURRENT_LIST_DIR}/fix-sources.patch | ||
) | ||
|
||
# fix most of the problems when spacebar is in the path | ||
set(CURRENT_INSTALLED_DIR "\"${CURRENT_INSTALLED_DIR}\"") | ||
|
||
if(VCPKG_CRT_LINKAGE STREQUAL dynamic) | ||
set(CL_FLAGS_DBG "/MDd /Zi") | ||
set(CL_FLAGS_REL "/MD /Ox") | ||
set(GEOS_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/geos_c.lib") | ||
set(GEOS_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/geos_c.lib") | ||
set(LIBXML2_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libxml2.lib") | ||
set(LIBXML2_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libxml2.lib") | ||
else() | ||
set(CL_FLAGS_DBG "/MTd /Zi") | ||
set(CL_FLAGS_REL "/MT /Ox") | ||
set(GEOS_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libgeos_c.lib ${CURRENT_INSTALLED_DIR}/lib/libgeos.lib") | ||
set(GEOS_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libgeos_c.lib ${CURRENT_INSTALLED_DIR}/debug/lib/libgeos.lib") | ||
set(LIBXML2_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libxml2.lib ${CURRENT_INSTALLED_DIR}/lib/lzma.lib ws2_32.lib") | ||
set(LIBXML2_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libxml2.lib ${CURRENT_INSTALLED_DIR}/debug/lib/lzma.lib ws2_32.lib") | ||
endif() | ||
|
||
set(LIBS_ALL_DBG | ||
"${CURRENT_INSTALLED_DIR}/debug/lib/libiconv.lib \ | ||
${CURRENT_INSTALLED_DIR}/debug/lib/libcharset.lib \ | ||
${CURRENT_INSTALLED_DIR}/debug/lib/sqlite3.lib \ | ||
${CURRENT_INSTALLED_DIR}/debug/lib/freexl.lib \ | ||
${CURRENT_INSTALLED_DIR}/debug/lib/zlibd.lib \ | ||
${LIBXML2_LIBS_DBG} \ | ||
${GEOS_LIBS_DBG} \ | ||
${CURRENT_INSTALLED_DIR}/debug/lib/projd.lib" | ||
) | ||
set(LIBS_ALL_REL | ||
"${CURRENT_INSTALLED_DIR}/lib/libiconv.lib \ | ||
${CURRENT_INSTALLED_DIR}/lib/libcharset.lib \ | ||
${CURRENT_INSTALLED_DIR}/lib/sqlite3.lib \ | ||
${CURRENT_INSTALLED_DIR}/lib/freexl.lib \ | ||
${CURRENT_INSTALLED_DIR}/lib/zlib.lib \ | ||
${LIBXML2_LIBS_REL} \ | ||
${GEOS_LIBS_REL} \ | ||
${CURRENT_INSTALLED_DIR}/lib/proj.lib" | ||
) | ||
|
||
################ | ||
# Debug build | ||
################ | ||
message(STATUS "Building ${TARGET_TRIPLET}-dbg") | ||
|
||
file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}/debug" INST_DIR_DBG) | ||
|
||
vcpkg_execute_required_process( | ||
COMMAND ${NMAKE} -f makefile.vc clean install | ||
"INST_DIR=\"${INST_DIR_DBG}\"" INSTALLED_ROOT=${CURRENT_INSTALLED_DIR} "LINK_FLAGS=/debug" "CL_FLAGS=${CL_FLAGS_DBG}" "LIBS_ALL=${LIBS_ALL_DBG}" | ||
WORKING_DIRECTORY ${SOURCE_PATH} | ||
LOGNAME nmake-build-${TARGET_TRIPLET}-debug | ||
) | ||
message(STATUS "Building ${TARGET_TRIPLET}-dbg done") | ||
vcpkg_copy_pdbs() | ||
|
||
################ | ||
# Release build | ||
################ | ||
message(STATUS "Building ${TARGET_TRIPLET}-rel") | ||
|
||
file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}" INST_DIR_REL) | ||
vcpkg_execute_required_process( | ||
COMMAND ${NMAKE} -f makefile.vc clean install | ||
"INST_DIR=\"${INST_DIR_REL}\"" INSTALLED_ROOT=${CURRENT_INSTALLED_DIR} "LINK_FLAGS=" "CL_FLAGS=${CL_FLAGS_REL}" "LIBS_ALL=${LIBS_ALL_REL}" | ||
WORKING_DIRECTORY ${SOURCE_PATH} | ||
LOGNAME nmake-build-${TARGET_TRIPLET}-release | ||
) | ||
message(STATUS "Building ${TARGET_TRIPLET}-rel done") | ||
|
||
|
||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) | ||
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libspatialite RENAME copyright) | ||
|
||
if (VCPKG_LIBRARY_LINKAGE STREQUAL static) | ||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) | ||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) | ||
file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/spatialite_i.lib) | ||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/spatialite_i.lib) | ||
else() | ||
file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/spatialite.lib) | ||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/spatialite.lib) | ||
file(RENAME ${CURRENT_PACKAGES_DIR}/lib/spatialite_i.lib ${CURRENT_PACKAGES_DIR}/lib/spatialite.lib) | ||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/spatialite_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/spatialite.lib) | ||
endif() | ||
|
||
message(STATUS "Packaging ${TARGET_TRIPLET} done") |