// QGIS Xcode project common build settings CURRENT_PROJECT_VERSION = 2.1.9 // SDK not required for native universal build, but recommended, // and allows building multiple SDK builds side-by-side SDKSYS = // tig (Tiger), leo (Leopard), [empty] (native) ARCHS = $(NATIVE_ARCH) //ARCHS = ppc i386 // for universal ////////////////////////////////////////////////////////////////////// // QGIS version info & config ////////////////////////////////////////////////////////////////////// // major-minor-patch must be integers for Mac OS X QGIS_RELEASE_NAME = Daphnis QGIS_VERSION_MAJOR = 1 QGIS_VERSION_MINOR = 2 QGIS_VERSION_PATCH = 0 QGIS_VERSION_FULL = $(QGIS_VERSION_MAJOR).$(QGIS_VERSION_MINOR).$(QGIS_VERSION_PATCH)-$(QGIS_RELEASE_NAME) QGIS_VERSION_INT = 10200 ////////////////////////////////////////////////////////////////////// // 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 = shared // 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 = fw // fw, system or disabled // ***TODO*** "Current" will autodetect version PYTHON_VERSION = 2.5 // can't auto-detect here ////////////////////////////////////////////////////////////////////// // 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 = $(SDKROOT_$(SDKSYS)) SYMROOT_tig = build/tig SYMROOT_leo = build/leo SYMROOT_ = build/native SYMROOT = $(SYMROOT_$(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 = $(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_PREPROCESSOR_DEFINITIONS = CORE_EXPORT= GUI_EXPORT= PYTHON_EXPORT= $(DEFS_$(CONFIGURATION)) DEFS_Debug = QGISDEBUG=1 DEFS_Release = NDEBUG // 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 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 // 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 = -L$(GRASS_PREFIX)/lib -lgrass_vect -lgrass_dig2 -lgrass_dbmiclient -lgrass_dbmibase -lgrass_shape -lgrass_dgl -lgrass_rtree -lgrass_gis -lgrass_datetime -lgrass_linkm -lgrass_form -lgrass_gproj GRASS_BASE = $(GRASS_PREFIX) HAVE_OPENPTY = 1 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)) 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_ = HAVE_PYTHON=1 PYTHON_HAVE_system_tig = PYTHON_HAVE_system_leo = 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"