~ubuntu-branches/ubuntu/natty/qgis/natty

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
// QGIS Xcode project common build settings

CURRENT_PROJECT_VERSION = 2.2.2

// SDKSYS must be set to valid value
SDKSYS = leo // tig (Tiger), leo (Leopard), snow (Snow Leopard)
// default to universal, per system; space-separated list
ARCHS = $(ARCHS_$(SDKSYS)) // ppc i386 ppc64 x86_64

// python archs use ; separator, must match what's in ARCHS
ARCHS_P = $(ARCHS_P_$(SDKSYS))

//////////////////////////////////////////////////////////////////////
// QGIS version info & config
//////////////////////////////////////////////////////////////////////

// major-minor-patch must be integers for Mac OS X
QGIS_RELEASE_NAME = Enceladus
QGIS_VERSION_MAJOR = 1
QGIS_VERSION_MINOR = 4
QGIS_VERSION_PATCH = 0
QGIS_VERSION_FULL = $(QGIS_VERSION_MAJOR).$(QGIS_VERSION_MINOR).$(QGIS_VERSION_PATCH)-$(QGIS_RELEASE_NAME)
QGIS_VERSION_INT = 10400

//////////////////////////////////////////////////////////////////////
// Qt and other support
//////////////////////////////////////////////////////////////////////

// ***TODO*** - detect current version, only used in bundle script
QT_MVER = 4 // the install_name version
QT_FWVER = $(QT_MVER) // the Versions/ folder name, normally same as Qt ver

QT_PLUGINS_DIR = /Developer/Applications/Qt/plugins
QTBIN = /Developer/Tools/Qt
QTMOC = $(QTBIN)/moc
QTUIC = $(QTBIN)/uic
QTRCC = $(QTBIN)/rcc
QTLREL = $(QTBIN)/lrelease
PYUIC4 = $(PYTHON_USRBIN)/pyuic4
PYRCC4 = $(PYTHON_USRBIN)/pyrcc4

BISON = /usr/bin/bison
GPSBABEL = /usr/local/bin/gpsbabel

//////////////////////////////////////////////////////////////////////
// forms of some libraries
//   'fw' for framework
//   'shared' or 'static' for user unix builds
//   if unix, make sure to double-check that corresponding *_PREFIX_shared
//      value is correct (defaults usually /usr/local).
//      framework prefixes should not change.
//   some have alternate form choices
//      static vs. shared choices are always user unix libs
//////////////////////////////////////////////////////////////////////

GDAL_FORM = fw // fw or shared
PROJ_FORM = fw // fw or shared
GEOS_FORM = fw // fw or shared

// SQLite and Spatialite tied together and use same setting
// system is sqlite-only
// fw, shared and internal enable both, so spatial MUST be available
//   (is avail for fw, use spatialite 2.3+ for shared sqlite+spatialite)
SQLITE_FORM = fw // system, fw, shared or internal
// whether spatialite is built with GEOS and PROJ, only for external spatialite
// (must be same GEOS and PROJ used for Qgis)
SPATIALITE_GEOS = yes
SPATIALITE_PROJ = yes

GSL_FORM = shared // static or shared
PGSQL_FORM = shared // static or shared

// system expat only on Leopard+
EXPAT_FORM = $(EXPAT_FORM_$(SDKSYS)) // static, shared or system

GRASS_FORM = app // app or unix
// version as in app name or unix folder name, can't auto-detect here
GRASS_VERSION = 6.4

// system Python only on Leopard+
PYTHON_FORM = $(PYTHON_FORM_$(SDKSYS)) // fw, system or disabled
PYTHON_VERSION = $(PYTHON_VERSION_$(SDKSYS))

//////////////////////////////////////////////////////////////////////
// whether to bundle some external libs in the app package
//   some checking is done, so /Library frameworks (except Qt) and
//   /usr/lib libraries and /usr/bin progs won't be bundled
// bundling ignored for static libs
//////////////////////////////////////////////////////////////////////

// bundling GRASS doesn't make sense, as a full GRASS install is required
// Qt always bundled - else Qt plugins will load that cause grief

BUNDLE_GSL = YES
BUNDLE_PGSQL = YES
BUNDLE_GPSBABEL = YES
// frameworks not bundled
BUNDLE_GDAL = YES
BUNDLE_GEOS = YES
BUNDLE_PROJ = YES
BUNDLE_SQLITE = YES

//////////////////////////////////////////////////////////////////////
// locations of user forms of dependencies
//   only used when the _shared or _static form is used above
//   or always for some libraries
// shared and static use same prefix
//////////////////////////////////////////////////////////////////////

GDAL_PREFIX_shared = /usr/local
PROJ_PREFIX_shared = /usr/local
GEOS_PREFIX_shared = /usr/local

GSL_PREFIX = /usr/local

// This must match exactly how GRASS was built and installed.
// If it was moved or renamed, qgis GRASS plugin will not work.
// Prefix is the equivalent of the GRASS GISBASE
GRASS_PREFIX_app = /Applications/GRASS-$(GRASS_VERSION).app/Contents/MacOS
GRASS_PREFIX_unix = /usr/local/grass-$(GRASS_VERSION)

PYSITE_fw = $(PYTHON_PREFIX_fw)/Versions/$(PYTHON_VERSION)/lib/python$(PYTHON_VERSION)/site-packages

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

SQLITE_PREFIX_shared = /usr/local

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

//////////////////////////////////////////////////////////////////////
// DO NOT CHANGE THESE
//////////////////////////////////////////////////////////////////////

SDKROOT_tig = /Developer/SDKs/MacOSX10.4u.sdk
SDKROOT_leo = /Developer/SDKs/MacOSX10.5.sdk
SDKROOT_snow = /Developer/SDKs/MacOSX10.6.sdk
// all archs 32bit until Qt Cocoa works
ARCHS_tig = ppc i386
ARCHS_leo = ppc i386
ARCHS_snow = i386 // ;x86_64

SDKROOT = $(SDKROOT_$(SDKSYS))
SYMROOT = build/$(SDKSYS)
INSTALL_PREFIX = /Applications
QGIS_APP_NAME = Qgis.app
PROJECT_TARGET_DIR = $(SYMROOT)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
PROJECT_TARGET_APP_DIR = $(PROJECT_TARGET_DIR)/$(QGIS_PREFIX)
QGIS_PREFIX = $(QGIS_APP_NAME)/Contents
QGIS_INSTALL_PATH = $(INSTALL_PREFIX)/$(QGIS_PREFIX)
QGIS_BUILD_PATH = $(PROJECT_TARGET_DIR)/$(QGIS_PREFIX)
// subdirs are relative to MacOS dir, as if MacOS is unix "prefix"
QGIS_BIN_SUBDIR = bin // leave this alone for now
QGIS_FW_SUBDIR = ../Frameworks
QGIS_LIB_SUBDIR = lib // qgispython lib MUST be in MacOS/lib
QGIS_DATA_SUBDIR = ../Resources
QGIS_PLUGIN_SUBDIR = ../PlugIns/qgis
HEADER_SEARCH_PATHS = $(SYMROOT)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/include
//LIBRARY_SEARCH_PATHS = $(PROJECT_TARGET_APP_DIR)/../Frameworks
ALWAYS_SEARCH_USER_PATHS = NO
USE_HEADERMAP = NO // else headers with same name cause confusion

DYLIB_CURRENT_VERSION = $(QGIS_VERSION_MAJOR).$(QGIS_VERSION_MINOR)
DYLIB_COMPATIBILITY_VERSION = $(QGIS_VERSION_MAJOR).0
MACOSX_DEPLOYMENT_TARGET_tig = 10.4
MACOSX_DEPLOYMENT_TARGET_leo = 10.5
MACOSX_DEPLOYMENT_TARGET_snow = 10.6
MACOSX_DEPLOYMENT_TARGET = $(MACOSX_DEPLOYMENT_TARGET_$(SDKSYS))
GCC_INLINES_ARE_PRIVATE_EXTERN = NO
GCC_ENABLE_CPP_EXCEPTIONS = YES
GCC_ENABLE_CPP_RTTI = YES
GCC_SYMBOLS_PRIVATE_EXTERN = NO
GCC_WARN_ABOUT_RETURN_TYPE = YES
GCC_WARN_UNUSED_VARIABLE = YES
GCC_INCREASE_PRECOMPILED_HEADER_SHARING = YES
GCC_GENERATE_DEBUGGING_SYMBOLS = NO
GCC_MODEL_TUNING = 
GCC_CW_ASM_SYNTAX = NO
GCC_ENABLE_PASCAL_STRINGS = NO
GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL = NO
GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO
PREBINDING = NO
PERL = /usr/bin/perl
INFOPLIST_EXPAND_BUILD_SETTINGS = YES
DEBUG_INFORMATION_FORMAT = dwarf-with-dsym
OTHER_LDFLAGS = -headerpad_max_install_names
GCC_VERSION_tig = 4.0
GCC_VERSION_leo = 4.0
GCC_VERSION_snow = 4.2
GCC_VERSION = $(GCC_VERSION_$(SDKSYS))

GCC_PREPROCESSOR_DEFINITIONS = $(DEFS_$(CONFIGURATION)) $(DEFS_EXPORT)
DEFS_Debug = QGISDEBUG=1
DEFS_Release = NDEBUG
DEFS_EXPORT = CORE_EXPORT= GUI_EXPORT= PYTHON_EXPORT= ANALYSIS_EXPORT=

// use full flags instead of Xcode includes and defs,
// since these are needed in scripts also
QT_CXXFLAGS = -DQT_DLL -DQT_SVG_LIB -DQT_GUI_LIB -DQT_XML_LIB -DQT_SQL_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_NO_CAST_TO_ASCII $(QTDEFS_$(CONFIGURATION)) -I/Library/Frameworks/QtCore.framework/Headers -I/Library/Frameworks/QtGui.framework/Headers -I/Library/Frameworks/QtNetwork.framework/Headers -I/Library/Frameworks/QtSql.framework/Headers -I/Library/Frameworks/QtSvg.framework/Headers -I/Library/Frameworks/QtXml.framework/Headers -I/Library/Frameworks/QtWebKit.framework/Headers
QT_INC_UITOOLS = /usr/include/QtUiTools
QTDEFS_Debug = -DQT_DEBUG
QTDEFS_Release = -DQT_NO_DEBUG
QT_CXXFLAGS_APP = $(PGSQL_HAVE)
QT_LIB_CORE = -framework QtCore
QT_LIB_GUI = -framework QtGui
QT_LIB_NET = -framework QtNetwork
QT_LIB_XML = -framework QtXml
QT_LIB_SVG = -framework QtSvg
QT_LIB_SQL = -framework QtSql
QT_LIB_WEBKIT = -framework QtWebKit
QT_LIB_UITOOLS = -lQtUiTools
// convenience for all Qt:
QT_LIB = $(QT_LIB_CORE) $(QT_LIB_GUI) $(QT_LIB_NET) $(QT_LIB_XML) $(QT_LIB_SVG) $(QT_LIB_SQL)
// list of Qt frameworks used
QTLISTQG = QtCore QtGui QtNetwork QtSql QtSvg QtXml QtWebKit
// list of PyQt modules used
PYQTLIST = Qt QtCore QtGui QtNetwork QtSql QtSvg QtXml QtWebKit

// with a choice of system vs user unix libs, use full path to lib file
// to avoid possible accidental linking to system lib (ie expat)

GDAL_PREFIX_fw = /Library/Frameworks/GDAL.framework
GDAL_PREFIX = $(GDAL_PREFIX_$(GDAL_FORM))
GDAL_INC_fw = $(GDAL_PREFIX_fw)/Headers
GDAL_INC_shared = $(GDAL_PREFIX_shared)/include
GDAL_INC = $(GDAL_INC_$(GDAL_FORM))
GDAL_LIB_fw = -framework GDAL
GDAL_LIB_shared = -L$(GDAL_PREFIX_shared)/lib -lgdal
GDAL_LIB = $(GDAL_LIB_$(GDAL_FORM))

PROJ_PREFIX_fw = /Library/Frameworks/PROJ.framework
PROJ_INC_fw = $(PROJ_PREFIX_fw)/Headers
PROJ_INC_shared = $(PROJ_PREFIX_shared)/include
PROJ_INC = $(PROJ_INC_$(PROJ_FORM))
PROJ_LIB_fw = -framework PROJ
PROJ_LIB_shared = -L$(PROJ_PREFIX_shared)/lib -lproj
PROJ_LIB = $(PROJ_LIB_$(PROJ_FORM))

GEOS_PREFIX_fw = /Library/Frameworks/GEOS.framework
GEOS_PREFIX = $(GEOS_PREFIX_$(GEOS_FORM))
GEOS_INC_fw = $(GEOS_PREFIX_fw)/Headers
GEOS_INC_shared = $(GEOS_PREFIX_shared)/include
GEOS_INC = $(GEOS_INC_$(GEOS_FORM))
GEOS_LIB_fw = -framework GEOS
GEOS_LIB_shared = -L$(GEOS_PREFIX_shared)/lib -lgeos -lgeos_c
GEOS_LIB = $(GEOS_LIB_$(GEOS_FORM))

GRASS_PREFIX = $(GRASS_PREFIX_$(GRASS_FORM))
GRASS_INC = $(GRASS_PREFIX)/include $(GRASS_PREFIX)/include/grass
GRASS_LIB_gis = -lgrass_gis
GRASS_LIB_vect = -lgrass_vect
GRASS_LIB_dig2 = -lgrass_dig2
GRASS_LIB_dbmiclient = -lgrass_dbmiclient
GRASS_LIB_dbmibase = -lgrass_dbmibase
GRASS_LIB_shape = -lgrass_shape
GRASS_LIB_dgl = -lgrass_dgl
GRASS_LIB_rtree = -lgrass_rtree
GRASS_LIB_datetime = -lgrass_datetime
GRASS_LIB_linkm = -lgrass_linkm
GRASS_LIB_form = -lgrass_form
GRASS_LIB_gproj = -lgrass_gproj
GRASS_LIB_DIR = $(GRASS_PREFIX)/lib
GRASS_BASE = $(GRASS_PREFIX)
HAVE_OPENPTY = 1

// defaults by SDKSYS
EXPAT_FORM_tig = shared
EXPAT_FORM_leo = system
EXPAT_FORM_snow = system

EXPAT_INC_system = 
EXPAT_INC_shared = $(EXPAT_PREFIX)/include
EXPAT_INC_static = $(EXPAT_PREFIX)/include
EXPAT_INC = $(EXPAT_INC_$(EXPAT_FORM))
EXPAT_LIB_system = -lexpat
EXPAT_LIB_shared = $(EXPAT_PREFIX)/lib/libexpat.dylib
EXPAT_LIB_static = $(EXPAT_PREFIX)/lib/libexpat.a
EXPAT_LIB = $(EXPAT_LIB_$(EXPAT_FORM))

GSL_INC = $(GSL_PREFIX)/include
GSL_LIB_shared = -L$(GSL_PREFIX)/lib -lgsl -lm
GSL_LIB_static = $(GSL_PREFIX)/lib/libgsl.a $(GSL_PREFIX)/lib/libgslcblas.a -lm
GSL_LIB = $(GSL_LIB_$(GSL_FORM))

PGSQL_INC = $(PGSQL_PREFIX)/include
PGSQL_LIB_shared = -L$(PGSQL_PREFIX)/lib -lpq
PGSQL_LIB_static = -L$(PGSQL_PREFIX)/lib $(PGSQL_PREFIX)/lib/libpq.a $(PGSQL_LIBADD)
PGSQL_LIB = $(PGSQL_LIB_$(PGSQL_FORM))
PGSQL_HAVE_shared = -DHAVE_PGCONFIG=1
PGSQL_HAVE_static = -DHAVE_PGCONFIG=1
PGSQL_HAVE = $(PGSQL_HAVE_$(PGSQL_FORM))

SQLITE_PREFIX_fw = /Library/Frameworks/SQLite3.framework
SQLITE_INC_system = 
SQLITE_INC_fw = $(SQLITE_PREFIX_fw)/Headers
SQLITE_INC_shared = $(SQLITE_PREFIX_shared)/include
SQLITE_INC_internal = ../../src/core/spatialite/headers/spatialite
SQLITE_INC = $(SQLITE_INC_$(SQLITE_FORM))
SQLITE_LIB_system = -lsqlite3
SQLITE_LIB_fw = -framework SQLite3
SQLITE_LIB_shared = $(SQLITE_PREFIX_shared)/lib/libsqlite3.dylib $(SQLITE_PREFIX_shared)/lib/libspatialite3.dylib
SQLITE_LIB_internal = 
SQLITE_LIB = $(SQLITE_LIB_$(SQLITE_FORM))
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
SQLITE_DEFS = $(SQLITE_INTERNAL) $(SQLITE_DEFS_$(SQLITE_FORM))
SQLITE_INTERNAL_internal = 1
SQLITE_INTERNAL_system = 0
SQLITE_INTERNAL_fw = 0
SQLITE_INTERNAL_shared = 0
SQLITE_INTERNAL = SQLITE_QINTERNAL=$(SQLITE_INTERNAL_$(SQLITE_FORM))
SQLITE_SYSTEM_system = 1
SQLITE_SYSTEM_internal = 0
SQLITE_SYSTEM_fw = 0
SQLITE_SYSTEM_shared = 0
SQLITE_SYSTEM = SQLITE_SYSTEM=$(SQLITE_SYSTEM_$(SQLITE_FORM))

SPATIALITE_GEOS_yes_fw = $(GEOS_LIB)
SPATIALITE_GEOS_yes_shared = $(GEOS_LIB)
SPATIALITE_PROJ_yes_fw = $(PROJ_LIB)
SPATIALITE_PROJ_yes_shared = $(PROJ_LIB)
SPATIALITE_INC_internal = ../../src/core/spatialite/headers
SPATIALITE_INC = $(SPATIALITE_INC_$(SQLITE_FORM))
SPATIALITE_LIBADD_internal = -liconv -ldl
SPATIALITE_LIBADD = $(SPATIALITE_GEOS_$(SPATIALITE_GEOS)_$(SQLITE_FORM)) $(SPATIALITE_PROJ_$(SPATIALITE_PROJ)_$(SQLITE_FORM)) $(SPATIALITE_LIBADD_$(SQLITE_FORM))

// defaults by system
PYTHON_VERSION_tig = 2.5
PYTHON_VERSION_leo = 2.5
PYTHON_VERSION_snow = 2.6
PYTHON_FORM_tig = fw
PYTHON_FORM_leo = system
PYTHON_FORM_snow = system
// all archs 32bit until Qt Cocoa works; should match ARCHS
ARCHS_P_tig = ppc;i386
ARCHS_P_leo = ppc;i386
ARCHS_P_snow = i386 // ;x86_64

PYTHON_PREFIX_fw = /Library/Frameworks/Python.framework
PYTHON_PREFIX_system = /System/Library/Frameworks/Python.framework
PYTHON_PREFIX = $(PYTHON_PREFIX_$(PYTHON_FORM))/Versions/$(PYTHON_VERSION)
PYTHON_BIN_fw = $(PYTHON_PREFIX_fw)/Versions/$(PYTHON_VERSION)/bin
PYTHON_BIN_system = /usr/bin
PYTHON_BIN = $(PYTHON_BIN_$(PYTHON_FORM))
PYTHON_USRBIN_fw = $(PYTHON_BIN_fw)
PYTHON_USRBIN_system = /usr/local/bin
PYTHON_USRBIN = $(PYTHON_USRBIN_$(PYTHON_FORM))
PYTHON_INC = $(PYTHON_PREFIX)/Headers
PYTHON_LIB = -framework Python // must always be framework, full path will work
PYTHON_HAVE_fw_tig = HAVE_PYTHON=1
PYTHON_HAVE_fw_leo = HAVE_PYTHON=1
PYTHON_HAVE_fw_snow = HAVE_PYTHON=1
PYTHON_HAVE_fw_ = HAVE_PYTHON=1
PYTHON_HAVE_system_tig = 
PYTHON_HAVE_system_leo = HAVE_PYTHON=1
PYTHON_HAVE_system_snow = HAVE_PYTHON=1
PYTHON_HAVE_system_ = 
PYTHON_HAVE = $(PYTHON_HAVE_$(PYTHON_FORM)_$(SDKSYS))
PYSITE_system = /Library/Python/$(PYTHON_VERSION)/site-packages
PYSITE = $(PYSITE_$(PYTHON_FORM))
PYTHON = $(PYTHON_PREFIX)/bin/python

#include "qgis_user.xcconfig"