Skip to content

Commit 07cfdda

Browse files
author
kyngchaos
committedJun 18, 2009
enable internal spatialite option; reduce recompilation a bit
git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@10953 c8812cc2-4d05-0410-92ff-de0c093fc19c

File tree

6 files changed

+196
-767
lines changed

6 files changed

+196
-767
lines changed
 

‎mac/xcode/Qgis.xcodeproj/project.pbxproj

Lines changed: 149 additions & 727 deletions
Large diffs are not rendered by default.

‎mac/xcode/qgis_settings.xcconfig

Lines changed: 25 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// QGIS Xcode project common build settings
22

3-
CURRENT_PROJECT_VERSION = 2.1.7
3+
CURRENT_PROJECT_VERSION = 2.1.8
44

55
// SDK not required for native universal build, but recommended,
66
// and allows building multiple SDK builds side-by-side
@@ -53,11 +53,12 @@ GDAL_FORM = fw // fw or shared
5353
PROJ_FORM = fw // fw or shared
5454
GEOS_FORM = fw // fw or shared
5555

56-
// could also have source form for in-source copy ***TODO***
57-
SQLITE_FORM = fw // fw, system, static or shared
58-
// spatialite framework form is actually a part of sqlite fw
59-
SPATIALITE_FORM = fw // fw, static or shared
60-
// whether spatialite is built with GEOS and PROJ
56+
// SQLite and Spatialite tied together and use same setting
57+
// system is sqlite-only
58+
// fw, shared and internal enable both, so spatial MUST be available
59+
// (is avail for fw, use spatialite 2.3+ for shared sqlite+spatialite)
60+
SQLITE_FORM = fw // system, fw, shared or internal
61+
// whether spatialite is built with GEOS and PROJ, only for external spatialite
6162
// (must be same GEOS and PROJ used for Qgis)
6263
SPATIALITE_GEOS = yes
6364
SPATIALITE_PROJ = yes
@@ -95,7 +96,6 @@ BUNDLE_GDAL = YES
9596
BUNDLE_GEOS = YES
9697
BUNDLE_PROJ = YES
9798
BUNDLE_SQLITE = YES
98-
BUNDLE_SPATIALITE = YES
9999

100100
//////////////////////////////////////////////////////////////////////
101101
// locations of user forms of dependencies
@@ -120,14 +120,11 @@ PYSITE_fw = $(PYTHON_PREFIX_fw)/Versions/$(PYTHON_VERSION)/lib/python$(PYTHON_VE
120120

121121
EXPAT_PREFIX = /usr/local // not used for system expat
122122

123-
// unix SQLite defaults to system
124-
SQLITE_PREFIX_shared = /usr
125-
SQLITE_PREFIX_static = /usr/local
126-
SPATIALITE_PREFIX = /usr/local
123+
SQLITE_PREFIX_shared = /usr/local
127124

128125
PGSQL_PREFIX = /usr/local/pgsql
129126
// used to link static libs, defaults based on kyngchaos dist
130-
PGSQL_LIBADD = -lintl -framework CoreFoundation -liconv -lxml2 -lssl -lcrypto -lpam -lkrb5 -lldap -lreadline -lz
127+
PGSQL_LIBADD = -lintl -framework CoreFoundation -liconv -lxml2 -lssl -lcrypto -lpam -lkrb5 -lldap -lz
131128

132129
//////////////////////////////////////////////////////////////////////
133130
// DO NOT CHANGE THESE
@@ -266,26 +263,26 @@ SQLITE_PREFIX_fw = /Library/Frameworks/SQLite3.framework
266263
SQLITE_INC_system =
267264
SQLITE_INC_fw = $(SQLITE_PREFIX_fw)/Headers
268265
SQLITE_INC_shared = $(SQLITE_PREFIX_shared)/include
269-
SQLITE_INC_static = $(SQLITE_PREFIX_static)/include
266+
SQLITE_INC_internal = ../../src/core/spatialite/headers/spatialite
270267
SQLITE_INC = $(SQLITE_INC_$(SQLITE_FORM))
271268
SQLITE_LIB_system = -lsqlite3
272269
SQLITE_LIB_fw = -framework SQLite3
273-
SQLITE_LIB_shared = $(SQLITE_PREFIX_shared)/lib/libsqlite3.dylib
274-
SQLITE_LIB_static = $(SQLITE_PREFIX_static)/lib/libsqlite3.a
270+
SQLITE_LIB_shared = $(SQLITE_PREFIX_shared)/lib/libsqlite3.dylib $(SQLITE_PREFIX_shared)/lib/libspatialite3.dylib
271+
SQLITE_LIB_internal =
275272
SQLITE_LIB = $(SQLITE_LIB_$(SQLITE_FORM))
276-
277-
SPATIALITE_PREFIX_fw = $(SQLITE_PREFIX_fw)
278-
SPATIALITE_INC_fw = $(SPATIALITE_PREFIX_fw)/Headers
279-
SPATIALITE_INC_shared = $(SPATIALITE_PREFIX)/include
280-
SPATIALITE_INC_static = $(SPATIALITE_PREFIX)/include
281-
SPATIALITE_INC = $(SPATIALITE_INC_$(SPATIALITE_FORM))
282-
SPATIALITE_LIB_fw = $(SQLITE_LIB_fw)
283-
SPATIALITE_LIB_shared = $(SPATIALITE_PREFIX_shared)/lib/libspatialite.dylib
284-
SPATIALITE_LIB_static = $(SPATIALITE_PREFIX_static)/lib/libspatialite.a
285-
SPATIALITE_LIB = $(SPATIALITE_LIB_$(SPATIALITE_FORM))
286-
SPATIALITE_GEOS_yes = $(GEOS_LIB)
287-
SPATIALITE_PROJ_yes = $(PROJ_LIB)
288-
SPATIALITE_LIBADD = $(SPATIALITE_GEOS_$(SPATIALITE_GEOS)) $(SPATIALITE_PROJ_$(SPATIALITE_PROJ))
273+
SQLITE_DEFS_internal = HAVE_INTTYPES_H=1 HAVE_STDINT_H=1 HAVE_USLEEP=1 HAVE_LOCALTIME_R=1 HAVE_GMTIME_R=1 SQLITE_THREADSAFE=1 __DARWIN__ SQLITE_ENABLE_RTREE=1 OMIT_GEOS=1 OMIT_PROJ=1
274+
SQLITE_DEFS = $(SQLITE_INTERNAL) $(SQLITE_DEFS_$(SQLITE_FORM))
275+
SQLITE_INTERNAL_internal = 1
276+
SQLITE_INTERNAL = SQLITE_QINTERNAL=$(SQLITE_INTERNAL_$(SQLITE_FORM))
277+
SQLITE_SYSTEM_system = 1
278+
SQLITE_SYSTEM = SQLITE_SYSTEM=$(SQLITE_SYSTEM_$(SQLITE_FORM))
279+
280+
SPATIALITE_GEOS_yes_fw = $(GEOS_LIB)
281+
SPATIALITE_GEOS_yes_shared = $(GEOS_LIB)
282+
SPATIALITE_PROJ_yes_fw = $(PROJ_LIB)
283+
SPATIALITE_PROJ_yes_shared = $(PROJ_LIB)
284+
SPATIALITE_LIBADD_internal = -liconv
285+
SPATIALITE_LIBADD = $(SPATIALITE_GEOS_$(SPATIALITE_GEOS)_$(SQLITE_FORM)) $(SPATIALITE_PROJ_$(SPATIALITE_PROJ)_$(SQLITE_FORM)) $(SPATIALITE_LIBADD_$(SQLITE_FORM))
289286

290287
PYTHON_PREFIX_fw = /Library/Frameworks/Python.framework
291288
PYTHON_PREFIX_system = /System/Library/Frameworks/Python.framework

‎mac/xcode/qgis_user-template.xcconfig

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,11 @@
3737
//PROJ_FORM = fw // fw or shared
3838
//GEOS_FORM = fw // fw or shared
3939

40-
//SQLITE_FORM = fw // fw, system, static or shared
41-
// spatialite framework form is actually a part of sqlite fw
42-
//SPATIALITE_FORM = fw // fw, static or shared
40+
// SQLite and Spatialite tied together and use same setting
41+
// system is sqlite-only
42+
// fw, shared and internal enable both, so spatial MUST be available
43+
// (is avail for fw, use spatialite 2.3+ for shared sqlite+spatialite)
44+
//SQLITE_FORM = fw // system, fw, shared or internal
4345
// whether spatialite is built with GEOS and PROJ
4446
// (must be same GEOS and PROJ used for Qgis)
4547
//SPATIALITE_GEOS = yes
@@ -77,7 +79,6 @@
7779
//BUNDLE_GEOS = YES
7880
//BUNDLE_PROJ = YES
7981
//BUNDLE_SQLITE = YES
80-
//BUNDLE_SPATIALITE = YES
8182

8283
//////////////////////////////////////////////////////////////////////
8384
//////////////////////////////////////////////////////////////////////
@@ -109,14 +110,11 @@
109110

110111
//EXPAT_PREFIX = /usr/local // not used for system expat
111112

112-
// unix SQLite defaults to system
113-
//SQLITE_PREFIX_shared = /usr
114-
//SQLITE_PREFIX_static = /usr/local
115-
//SPATIALITE_PREFIX = /usr/local
113+
//SQLITE_PREFIX_shared = /usr/local
116114

117115
//PGSQL_PREFIX = /usr/local/pgsql
118116
// used to link static libs, defaults based on kyngchaos dist
119-
//PGSQL_LIBADD = -lintl -framework CoreFoundation -liconv -lxml2 -lssl -lcrypto -lpam -lkrb5 -lldap -lreadline -lz
117+
//PGSQL_LIBADD = -lintl -framework CoreFoundation -liconv -lxml2 -lssl -lcrypto -lpam -lkrb5 -lldap -lz
120118

121119
//////////////////////////////////////////////////////////////////////
122120
// do not change these unless you have a very odd layout for them
@@ -148,9 +146,6 @@
148146

149147
//SQLITE_INC = $(SQLITE_INC_$(SQLITE_FORM))
150148
//SQLITE_LIB = $(SQLITE_LIB_$(SQLITE_FORM))
151-
152-
//SPATIALITE_INC = $(SPATIALITE_INC_$(SPATIALITE_FORM))
153-
//SPATIALITE_LIB = $(SPATIALITE_LIB_$(SPATIALITE_FORM))
154149
//SPATIALITE_LIBADD = $(GEOS_LIB) $(PROJ_LIB)
155150

156151
//PYTHON_PREFIX = $(PYTHON_PREFIX_$(PYTHON_FORM))/Versions/$(PYTHON_VERSION)
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#if !SQLITE_SYSTEM
2+
3+
#include "../../src/app/qgsspatialitesourceselect.cpp"
4+
5+
#endif

‎mac/xcode/src/x_spatialite.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#if SQLITE_QINTERNAL
2+
3+
#include "../../src/core/spatialite/spatialite.c"
4+
5+
#endif

‎mac/xcode/src/x_sqlite3.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#if SQLITE_QINTERNAL
2+
3+
#include "../../src/core/spatialite/sqlite3.c"
4+
5+
#endif

0 commit comments

Comments
 (0)
Please sign in to comment.