Skip to content

Commit a028d5a

Browse files
author
kyngchaos
committedNov 1, 2010
framework bundling placeholder
git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@14474 c8812cc2-4d05-0410-92ff-de0c093fc19c

File tree

1 file changed

+117
-0
lines changed

1 file changed

+117
-0
lines changed
 

‎mac/cmake/3fw.cmake.in

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
# 3fw - bundle standard frameworks
2+
# ! cmakecache vars not available to external scripts
3+
# so we configure it first to do substitutions
4+
# make sure to use @varname@
5+
6+
MESSAGE (STATUS "Bundling frameworks is not functional yet, skipping...")
7+
8+
# need part of BundleUtilities
9+
INCLUDE (GetPrerequisites)
10+
11+
# kill boolean warnings
12+
CMAKE_POLICY (SET CMP0012 NEW)
13+
14+
SET (QAPPDIRC "@QGIS_MACAPP_PREFIX@")
15+
SET (QAPPDIR "@CMAKE_INSTALL_PREFIX@")
16+
#SET (QAPPDIRC "@CMAKE_INSTALL_PREFIX@/@QGIS_APP_NAME@.app/Contents")
17+
#SET (QAPPDIR "${QAPPDIRC}/MacOS")
18+
SET (QFWDIR "${QAPPDIR}/@QGIS_FW_SUBDIR@")
19+
SET (QBINDIR "${QAPPDIR}/@QGIS_BIN_SUBDIR@")
20+
SET (QCGIDIR "${QAPPDIR}/@QGIS_CGIBIN_SUBDIR@")
21+
SET (QLIBDIR "${QAPPDIR}/@QGIS_LIB_SUBDIR@")
22+
SET (QLIBXDIR "${QAPPDIR}/@QGIS_LIBEXEC_SUBDIR@")
23+
SET (QDATADIR "${QAPPDIR}/@QGIS_DATA_SUBDIR@")
24+
SET (QPLUGDIR "${QAPPDIR}/@QGIS_PLUGIN_SUBDIR@")
25+
SET (QGISPYDIR "${QAPPDIR}/@QGIS_DATA_SUBDIR@/python")
26+
# Qt framework version is major version
27+
SET (QT_FWVER @QT_VERSION_MAJOR@)
28+
29+
# so config-file doesn't try to replace @
30+
SET (ATEXECUTABLE "@executable_path")
31+
SET (ATLOADER "@loader_path")
32+
33+
# helper functions
34+
35+
FUNCTION (GET_INSTALL_NAME LIBFILE LIBNAME OUTVAR)
36+
get_prerequisites ("${LIBFILE}" LIBLIST 1 0 "" "")
37+
FOREACH (L ${LIBLIST})
38+
STRING (REGEX MATCH ".*${LIBNAME}.+" LL ${L})
39+
IF (LL)
40+
SET (${OUTVAR} ${LL} PARENT_SCOPE)
41+
ENDIF (LL)
42+
ENDFOREACH ()
43+
ENDFUNCTION (GET_INSTALL_NAME)
44+
45+
# message only if verbose makefiles (use for install_name_tool echos)
46+
FUNCTION (MYMESSAGE MSG)
47+
IF (@CMAKE_VERBOSE_MAKEFILE@)
48+
MESSAGE (STATUS "${MSG}")
49+
ENDIF (@CMAKE_VERBOSE_MAKEFILE@)
50+
ENDFUNCTION (MYMESSAGE)
51+
52+
# install_name_tool -change CHANGE CHANGETO CHANGEBIN
53+
FUNCTION (INSTALLNAMETOOL_CHANGE CHANGE CHANGETO CHANGEBIN)
54+
MYMESSAGE ("install_name_tool -change ${CHANGE} ${CHANGETO} \"${CHANGEBIN}\"")
55+
EXECUTE_PROCESS (COMMAND install_name_tool -change ${CHANGE} ${CHANGETO} "${CHANGEBIN}")
56+
ENDFUNCTION (INSTALLNAMETOOL_CHANGE)
57+
58+
FUNCTION (UPDATEQGISPATHS LIBFROM LIBTO)
59+
IF (LIBFROM)
60+
SET (LIB_CHG_TO "${ATEXECUTABLE}/@QGIS_LIB_SUBDIR@/${LIBTO}")
61+
# app - always @executable_path
62+
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QAPPDIR}/Qgis")
63+
# qgis_help - doesn't link anything else than Qt/Qgis
64+
# qgis-mapserver
65+
IF (@OSX_HAVE_LOADERPATH@)
66+
SET (LIB_CHG_TO "${ATEXECUTABLE}/@QGIS_CGIBIN_SUBDIR_REV@/@QGIS_LIB_SUBDIR@/${LIBTO}")
67+
ENDIF (@OSX_HAVE_LOADERPATH@)
68+
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QCGIDIR}/qgis_mapserv.fcgi")
69+
# libs
70+
IF (@OSX_HAVE_LOADERPATH@)
71+
SET (LIB_CHG_TO "${ATLOADER}/@QGIS_LIB_SUBDIR_REV@/@QGIS_LIB_SUBDIR@/${LIBTO}")
72+
ENDIF (@OSX_HAVE_LOADERPATH@)
73+
FOREACH (QL ${QGLIBLIST})
74+
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QL}")
75+
ENDFOREACH (QL)
76+
# GRASS libexec stuff
77+
#IF (EXISTS "${QLIBXDIR}/grass/bin/qgis.g.browser")
78+
# IF (@OSX_HAVE_LOADERPATH@)
79+
# SET (LIB_CHG_TO "${ATLOADER}/../../@QGIS_LIBEXEC_SUBDIR_REV@/@QGIS_LIB_SUBDIR@/${LIBTO}")
80+
# ENDIF (@OSX_HAVE_LOADERPATH@)
81+
# INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QLIBXDIR}/grass/bin/qgis.g.browser")
82+
#ENDIF ()
83+
# plugins
84+
IF (@OSX_HAVE_LOADERPATH@)
85+
SET (LIB_CHG_TO "${ATLOADER}/@QGIS_PLUGIN_SUBDIR_REV@/@QGIS_LIB_SUBDIR@/${LIBTO}")
86+
ENDIF (@OSX_HAVE_LOADERPATH@)
87+
FOREACH (QP ${QGPLUGLIST})
88+
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QP}")
89+
ENDFOREACH (QP)
90+
# qgis python
91+
IF (@OSX_HAVE_LOADERPATH@)
92+
SET (LIB_CHG_TO "${ATLOADER}/../../@QGIS_DATA_SUBDIR_REV@/@QGIS_LIB_SUBDIR@/${LIBTO}")
93+
ENDIF (@OSX_HAVE_LOADERPATH@)
94+
FOREACH (PG ${QGPYLIST})
95+
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${PG}")
96+
ENDFOREACH (PG)
97+
# bin - nothing yet
98+
#IF (@OSX_HAVE_LOADERPATH@)
99+
# SET (LIB_CHG_TO "${ATLOADER}/@QGIS_BIN_SUBDIR_REV@/@QGIS_LIB_SUBDIR@/${LIBTO}")
100+
#ENDIF (@OSX_HAVE_LOADERPATH@)
101+
#FOREACH (PB ...)
102+
# INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QBINDIR}/${PB}")
103+
#ENDFOREACH (PB)
104+
ENDIF (LIBFROM)
105+
ENDFUNCTION (UPDATEQGISPATHS)
106+
107+
# arches
108+
FOREACH (QARCH @CMAKE_OSX_ARCHITECTURES@)
109+
SET (QARCHS ${QARCHS} "--arch" "${QARCH}")
110+
ENDFOREACH (QARCH)
111+
112+
FILE (GLOB QGLIBLIST ${QLIBDIR}/libqgis*.dylib)
113+
FILE (GLOB QGPLUGLIST ${QPLUGDIR}/*.so)
114+
FILE (GLOB QGPYLIST ${QGISPYDIR}/qgis/*.so)
115+
116+
#
117+

0 commit comments

Comments
 (0)
Please sign in to comment.