Skip to content

Commit b38a597

Browse files
author
kyngchaos
committedAug 2, 2010
split bundle step to separate target;
misc cleanup git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@13999 c8812cc2-4d05-0410-92ff-de0c093fc19c

File tree

3 files changed

+98
-34
lines changed

3 files changed

+98
-34
lines changed
 

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

Lines changed: 82 additions & 23 deletions
Large diffs are not rendered by default.

‎mac/xcode/ReadMe.rtf

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ See the Qgis {\field{\*\fldinst{HYPERLINK "http://wiki.qgis.org/qgiswiki/Buildin
3939
\
4040
\ul QGIS source\ulnone \
4141
\
42-
\ul Qt 4.4+ frameworks\ulnone - install debug version if desired (may require a separate installer download)\
42+
\ul Qt 4.4+ frameworks\ulnone - install debug version if desired (may require a separate installer download). At least Qt Cocoa 4.6 is needed on Snow Leopard for a 64bit build.\
4343
\
4444
\ul GDAL library or framework\ulnone - a universal GDAL.framework is available.\
4545
\
@@ -55,19 +55,21 @@ See the Qgis {\field{\*\fldinst{HYPERLINK "http://wiki.qgis.org/qgiswiki/Buildin
5555
\
5656
\ul Postgres client library\ulnone (optional) - normally available in a full Postgres installation.\
5757
\
58-
\ul SQLite3 library\ulnone - OSX includes SQLite 3, or use a more recent SQLite framework (recommended), or compile from source.\
58+
\ul SQLite3 library\ulnone - OSX includes SQLite 3, or use a more recent SQLite framework (recommended), or use the internal copy.\
5959
\
60-
\ul Spatialite library\ulnone - Spatialite is included in the SQLite framework starting with 3.6.11. Or compile from source (includes its own SQLite).\
60+
\ul Spatialite library\ulnone - Spatialite is included in the SQLite framework starting with 3.6.11. Or usethe internal copy (tied to the internal SQLite).\
6161
\
6262
\ul Expat library\ulnone - Leopard and above includes expat. The one in X11 should work on Tiger, but I prefer to avoid X11 dependencies.\
6363
\
64+
\ul Bison\ulnone - Leopard and above includes bison. Tiger has an old bison that won't work for QGIS. See the QGIS install instructions for info about how to compile and install this on Tiger.\
65+
\
6466
\ul gpsbabel\ulnone (optional) - for the GPS Import plugin. A universal gpsbabel is available from gpsbabel.org.\
6567
\
6668
\ul Python 2.5 or 2.6\ulnone - the system Python on Leopard and Snow Leopard will work. Or install Python 2.5 from {\field{\*\fldinst{HYPERLINK "http://www.python.org/"}}{\fldrslt python.org}} (required for Tiger).\
6769
\
6870
\ul SIP\ulnone and \ul PyQt\ulnone - make sure that they fully support the installed Qt version. Development versions may cause trouble for QGIS. See the QGIS install instructions for info about how to compile and install these.\
6971
\
70-
\ul [Py]Qwt\ulnone - Qwt needed for GPS tracking function. PyQwt used for some 3rd-party plugins. Since PyQwt installs inside PyQt, it must be bundled along with PyQt. The PyQwt sources can be used, but extra steps are needed to compile Qwt and PyQwt separately.\
72+
\ul [Py]Qwt\ulnone - Qwt needed for GPS tracking function. PyQwt used for some 3rd-party plugins. Since PyQwt installs inside PyQt, it must be bundled along with PyQt. The PyQwt sources can be used, but extra steps are needed to compile Qwt and PyQwt separately. See the QGIS install instructions for info about how to compile and install these.\
7173
\
7274
\
7375
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
@@ -92,7 +94,9 @@ The xcconfig file is a simple text file with environment variables and values, a
9294
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
9395
\cf0 \ul Defaults\
9496
\ulnone \
95-
The default configuration is for a universal build, with the Leopard (10.5) SDK. GDAL, PROJ, GEOS, GSL and SQLite frameworks are used. Spatialite is expected in the SQLite framework. Postgres is expected in default /usr/local builds. Expat is from the system on Leopard and above, and is expected in /usr/local on Tiger. GRASS support is from a GRASS-6.4.app application. The python.org Python framework is used on Tiger, and the system Python is used on Leopard and above.\
97+
The default configuration is for a universal build, with the Leopard (10.5) SDK.\
98+
\
99+
GDAL, PROJ, GEOS, GSL and SQLite frameworks are used. Spatialite is expected in the SQLite framework. Postgres is expected in default /usr/local builds. Expat is from the system on Leopard and above, and is expected in /usr/local on Tiger. GRASS support is from a GRASS-6.4.app application. The python.org Python framework is used on Tiger, and the system Python is used on Leopard and above.\
96100
\
97101
By default, Qt and the Postgres client library are bundled in the Qgis application.\
98102
\
@@ -207,12 +211,12 @@ For library forms, the PREFIX (described later) defaults to
207211
\f1\fs20 static
208212
\f0\fs24 is all that's needed.\
209213
\
210-
The version for GRASS and Python can't be detected by the config file, so make sure these are correct.\
214+
The version for Qt, PyQt, GRASS and Python can't be detected by the config file, so make sure these are correct. Python version default is automatic by the SDKSYS.\
211215
\
212216
See detailed dependency notes below.\
213217
\
214218
\
215-
\ul Bundle options\ulnone - Some libraries and programs can be bundled in the Qgis.app package for a more portable Qgis.app. These are pretty straightforward - yes or no. At some time I will add more checking logic, but for now be explicit. Generally, you don't need to bundle frameworks or system libraries. The only logic checks whether the dynamic library or program exists, so it automatically excludes static libraries and frameworks, but it doesn't check whether it's a system library, so you could end up bundling libsqlite from the system.\
219+
\ul Bundle options\ulnone - Some libraries and programs can be bundled in the Qgis.app package for a more portable Qgis.app. These are pretty straightforward - yes or no. At some time I will add more checking logic, but for now be explicit. Generally, you don't need to bundle frameworks or system libraries. The logic only checks whether the dynamic library or program exists, so it automatically excludes static libraries and frameworks, but it doesn't check whether it's a system library, so you could end up bundling libsqlite from the system.\
216220
\
217221
\ul Prefixes\ulnone - If you have unix libraries installed in a location other than
218222
\f1\fs20 /usr/local
@@ -290,6 +294,8 @@ Xcode doesn't have a way to conditionally build targets, just code within source
290294
\i will
291295
\i0 try to keep building as much as it can after errors. The last target built is the Qgis application itself, which has all the bundling and cleanup steps. So, if a dependency is missing for a plugin, it will have errors and fail to build, then the app bundling and cleanup will work with what succeeded.\
292296
\
297+
If recompiling any other target, you should then also recompile the \ul bundle\ulnone target so the bundling steps do their post-processing, else some internal library paths will be wrong.\
298+
\
293299
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
294300
\cf0 \ul Cleaning\ulnone - to clean the project
295301
\b Clean All

‎mac/xcode/qgis_settings.xcconfig

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -162,10 +162,9 @@ QWT_PREFIX_static = $(QWT_PREFIX_shared)
162162
SDKROOT_tig = /Developer/SDKs/MacOSX10.4u.sdk
163163
SDKROOT_leo = /Developer/SDKs/MacOSX10.5.sdk
164164
SDKROOT_snow = /Developer/SDKs/MacOSX10.6.sdk
165-
// all archs 32bit until Qt Cocoa works
166165
ARCHS_tig = ppc i386
167166
ARCHS_leo = ppc i386
168-
ARCHS_snow = i386 // ;x86_64
167+
ARCHS_snow = i386 x86_64
169168

170169
SDKROOT = $(SDKROOT_$(SDKSYS))
171170
SYMROOT = build/$(SDKSYS)
@@ -389,10 +388,10 @@ PYTHON_VERSION_snow = 2.6
389388
PYTHON_FORM_tig = fw
390389
PYTHON_FORM_leo = system
391390
PYTHON_FORM_snow = system
392-
// all archs 32bit until Qt Cocoa works; should match ARCHS
391+
// should match ARCHS
393392
ARCHS_P_tig = ppc;i386
394393
ARCHS_P_leo = ppc;i386
395-
ARCHS_P_snow = i386 // ;x86_64
394+
ARCHS_P_snow = i386;x86_64
396395

397396
PYTHON_PREFIX_fw = /Library/Frameworks/Python.framework
398397
PYTHON_PREFIX_system = /System/Library/Frameworks/Python.framework

0 commit comments

Comments
 (0)
Please sign in to comment.