Skip to content

Commit 356c87b

Browse files
committed
Apply partial patch from #4111 to allow using separate spatialindex lib from source tree if desired.
1 parent f39a19c commit 356c87b

File tree

3 files changed

+42
-23
lines changed

3 files changed

+42
-23
lines changed

CMakeLists.txt

+8-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,9 @@ IF (WITH_POSTGRESQL)
5151
SET (POSTGRESQL_PREFIX "" CACHE PATH "Path to POSTGRESQL base directory")
5252
ENDIF (WITH_POSTGRESQL)
5353

54-
SET (WITH_INTERNAL_QWTPOLAR TRUE CACHE BOOL "Use internal built of QwtPolar")
54+
SET (WITH_INTERNAL_QWTPOLAR TRUE CACHE BOOL "Use internal build of QwtPolar")
55+
56+
SET (WITH_INTERNAL_SPATIALINDEX TRUE CACHE BOOL "Use internal build of Spatialindex")
5557

5658
SET (WITH_SPATIALITE TRUE CACHE BOOL "Determines whether SPATIALITE support should be built")
5759

@@ -136,6 +138,11 @@ FIND_PACKAGE(Expat) # GPS importer plugin
136138
FIND_PACKAGE(GSL) # Georeferencer
137139
FIND_PACKAGE(GEOS)
138140
FIND_PACKAGE(GDAL)
141+
142+
IF (NOT WITH_INTERNAL_SPATIALINDEX)
143+
FIND_PACKAGE(Spatialindex REQUIRED)
144+
ENDIF(NOT WITH_INTERNAL_SPATIALINDEX)
145+
139146
FIND_PACKAGE(Qwt REQUIRED)
140147
IF (NOT WITH_INTERNAL_QWTPOLAR)
141148
FIND_PACKAGE(QwtPolar REQUIRED)

COPYING

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
Version 2, June 1991
33

44
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
5-
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
5+
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
66
Everyone is permitted to copy and distribute verbatim copies
77
of this license document, but changing it is not allowed.
88

@@ -318,7 +318,7 @@ the "copyright" line and a pointer to where the full notice is found.
318318

319319
You should have received a copy of the GNU General Public License
320320
along with this program; if not, write to the Free Software
321-
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
321+
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
322322

323323

324324
Also add information on how to contact you by electronic and paper mail.

src/core/CMakeLists.txt

+32-20
Original file line numberDiff line numberDiff line change
@@ -396,14 +396,19 @@ INCLUDE_DIRECTORIES(
396396
raster
397397
renderer
398398
symbology
399-
spatialindex/include
400399
symbology-ng
401400
gps/qextserialport
402401
${PROJ_INCLUDE_DIR}
403402
${GEOS_INCLUDE_DIR}
404403
${GDAL_INCLUDE_DIR}
405404
)
406405

406+
IF (NOT WITH_INTERNAL_SPATIALINDEX)
407+
INCLUDE_DIRECTORIES(${SPATIALINDEX_INCLUDE_DIR})
408+
ELSE (NOT WITH_INTERNAL_SPATIALINDEX)
409+
INCLUDE_DIRECTORIES(spatialindex/include)
410+
ENDIF (NOT WITH_INTERNAL_SPATIALINDEX)
411+
407412
IF (NOT WITH_INTERNAL_SPATIALITE)
408413
INCLUDE_DIRECTORIES(${SQLITE3_INCLUDE_DIR})
409414
ENDIF (NOT WITH_INTERNAL_SPATIALITE)
@@ -426,25 +431,27 @@ ENDIF (WIN32)
426431
#############################################################
427432
# spatial indexing library
428433

429-
# add path prefix to every specified file
430-
MACRO(PATH_PREFIX OUTPUT PREFIX)
431-
FOREACH(F ${ARGN})
432-
SET(${OUTPUT} ${${OUTPUT}} ${PREFIX}/${F})
433-
ENDFOREACH(F)
434-
ENDMACRO(PATH_PREFIX)
435-
436-
# tools library
437-
PATH_PREFIX(TOOLS_SRC tools ExternalSort.cc ExternalSort.h TemporaryFile.cc Tools.cc)
438-
PATH_PREFIX(GEOM_SRC geometry LineSegment.cc Point.cc Region.cc)
439-
440-
# spatial index library
441-
PATH_PREFIX(SPINDEX_SRC spatialindex SpatialIndexImpl.cc)
442-
PATH_PREFIX(STMAN_SRC storagemanager Buffer.cc DiskStorageManager.cc MemoryStorageManager.cc RandomEvictionsBuffer.cc)
443-
PATH_PREFIX(RTREE_SRC rtree BulkLoader.cc Index.cc Leaf.cc Node.cc RTree.cc Statistics.cc)
444-
445-
SET(SPINDEX_SRC ${TOOLS_SRC} ${GEOM_SRC} ${SPINDEX_SRC} ${STMAN_SRC} ${RTREE_SRC})
446-
447-
PATH_PREFIX(INDEX_SRC spatialindex ${SPINDEX_SRC})
434+
IF (WITH_INTERNAL_SPATIALINDEX)
435+
# add path prefix to every specified file
436+
MACRO(PATH_PREFIX OUTPUT PREFIX)
437+
FOREACH(F ${ARGN})
438+
SET(${OUTPUT} ${${OUTPUT}} ${PREFIX}/${F})
439+
ENDFOREACH(F)
440+
ENDMACRO(PATH_PREFIX)
441+
442+
# tools library
443+
PATH_PREFIX(TOOLS_SRC tools ExternalSort.cc ExternalSort.h TemporaryFile.cc Tools.cc)
444+
PATH_PREFIX(GEOM_SRC geometry LineSegment.cc Point.cc Region.cc)
445+
446+
# spatial index library
447+
PATH_PREFIX(SPINDEX_SRC spatialindex SpatialIndexImpl.cc)
448+
PATH_PREFIX(STMAN_SRC storagemanager Buffer.cc DiskStorageManager.cc MemoryStorageManager.cc RandomEvictionsBuffer.cc)
449+
PATH_PREFIX(RTREE_SRC rtree BulkLoader.cc Index.cc Leaf.cc Node.cc RTree.cc Statistics.cc)
450+
451+
SET(SPINDEX_SRC ${TOOLS_SRC} ${GEOM_SRC} ${SPINDEX_SRC} ${STMAN_SRC} ${RTREE_SRC})
452+
453+
PATH_PREFIX(INDEX_SRC spatialindex ${SPINDEX_SRC})
454+
ENDIF (WITH_INTERNAL_SPATIALINDEX)
448455

449456
#############################################################
450457
# qgis_core library
@@ -499,6 +506,11 @@ ELSE (WITH_INTERNAL_SPATIALITE)
499506
TARGET_LINK_LIBRARIES(qgis_core ${SQLITE3_LIBRARY})
500507
ENDIF (WITH_INTERNAL_SPATIALITE)
501508

509+
IF (NOT WITH_INTERNAL_SPATIALINDEX)
510+
TARGET_LINK_LIBRARIES(qgis_core ${SPATIALINDEX_LIBRARY})
511+
ENDIF (NOT WITH_INTERNAL_SPATIALINDEX)
512+
513+
502514
IF (APPLE)
503515
SET_TARGET_PROPERTIES(qgis_core PROPERTIES BUILD_WITH_INSTALL_RPATH TRUE )
504516
ENDIF (APPLE)

0 commit comments

Comments
 (0)