QGIS/mac/xcode/qgis_settings.xcconfig
2010-01-17 00:59:46 +00:00

400 lines
15 KiB
Plaintext

// QGIS Xcode project common build settings
CURRENT_PROJECT_VERSION = 2.5.1
// 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 = Trunk
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 = $(QT_VER_MAJOR) // keep for now so I don't have to change all scripts and deps
QT_VER_MAJOR = 4 // the install_name/major version
QT_VER_MINOR = 5 // minor version
QT_FWVER = $(QT_VER_MAJOR) // the Versions/ folder name, normally same as Qt ver
QT_DIR = /usr
// this is to enable Qt libs in /usr/lib (QtUiTools, QtCLucene) to work in SDKs
// -> create symlinks to these libs in /usr/local/lib
QT_DIR_SDK = /usr/local
QT_PLUGINS_DIR = /Developer/Applications/Qt/plugins
QTBIN = /Developer/Tools/Qt
QTMOC = $(QTBIN)/moc
QTUIC = $(QTBIN)/uic
QTRCC = $(QTBIN)/rcc
QTLREL = $(QTBIN)/lrelease
// defaults for system Python SIP/PyQt install as described in INSTALL
SIP = $(PYTHON_USRBIN)/sip
PYUIC4 = $(PYTHON_USRBIN)/pyuic4
PYRCC4 = $(PYTHON_USRBIN)/pyrcc4
// from sipconfig.py
SIP_INC = /usr/local/include
// from pyqtconfig.py
PYQT_SIP_DIR = /usr/local/share/sip/PyQt4
PYQT_SIP_FLAGS = -x VendorID -t WS_MACX -x PyQt_NoPrintRangeBug -t Qt_4_5_0 -x Py_v3 -g
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 = fw // fw, 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))
// qwt can't be compiled into pyqwt as is the default with pyqwt
QWT_FORM = shared // shared or static
QWT_VERSION = 5.2.1-svn // default in pyqwt package
//////////////////////////////////////////////////////////////////////
// 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_PGSQL = YES
BUNDLE_GPSBABEL = YES
BUNDLE_QWT = YES
// frameworks not bundled
BUNDLE_GSL = YES
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_shared = /usr/local
GSL_PREFIX_static = /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
QWT_PREFIX_shared = /usr/local/qwt-$(QWT_VERSION)
QWT_PREFIX_static = $(QWT_PREFIX_shared)
//////////////////////////////////////////////////////////////////////
// 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
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 = $(QT_DIR)/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_DBUS = -framework QtDBus
QT_LIB_PHONON = -framework phonon
QT_LIB_UITOOLS = -L$(QT_DIR_SDK)/lib -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 QtDBus phonon
// list of PyQt modules used
PYQTLIST = Qt QtCore QtGui QtNetwork QtSql QtSvg QtXml QtWebKit phonon
// 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_PREFIX_fw = /Library/Frameworks/GSL.framework
GSL_PREFIX = $(GSL_PREFIX_$(GSL_FORM))
GSL_INC_fw = $(GSL_PREFIX_fw)/Headers
GSL_INC_shared = $(GSL_PREFIX)/include
GSL_INC_static = $(GSL_PREFIX)/include
GSL_INC = $(GSL_INC_$(GSL_FORM))
GSL_LIB_fw = -framework GSL
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))
QWT_PREFIX = $(QWT_PREFIX_$(QWT_FORM))
QWT_INC = $(QWT_PREFIX)/include
QWT_LIB = -L$(QWT_PREFIX)/lib -lqwt
QWT_DEFS = HAVE_QWT
// 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"