Mac packaging updates

This commit is contained in:
William Kyngesburye 2018-03-24 11:17:44 -05:00
parent 20c071b515
commit bf8b1e90da
2 changed files with 88 additions and 35 deletions

View File

@ -13,6 +13,10 @@ SET (CMAKE_VERBOSE_MAKEFILE "@CMAKE_VERBOSE_MAKEFILE@")
SET (CMAKE_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@") SET (CMAKE_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@")
SET (CMAKE_BUILD_TYPE "@CMAKE_BUILD_TYPE@") SET (CMAKE_BUILD_TYPE "@CMAKE_BUILD_TYPE@")
# Qt5 cmake does not create overall qt prefix var, only individual lib prefixes.
# For simplicity, assume core prefix same as all others
SET (QT_LIBRARY_DIR "@_qt5Core_install_prefix@/lib")
# OS X options # OS X options
SET (CMAKE_OSX_ARCHITECTURES "@CMAKE_OSX_ARCHITECTURES@") SET (CMAKE_OSX_ARCHITECTURES "@CMAKE_OSX_ARCHITECTURES@")
SET (OSX_HAVE_LOADERPATH @OSX_HAVE_LOADERPATH@) SET (OSX_HAVE_LOADERPATH @OSX_HAVE_LOADERPATH@)

View File

@ -11,17 +11,33 @@ INCLUDE ("@CMAKE_SOURCE_DIR@/cmake/MacBundleMacros.cmake")
INCLUDE ("@CMAKE_SOURCE_DIR@/cmake/QCAMacros.cmake") INCLUDE ("@CMAKE_SOURCE_DIR@/cmake/QCAMacros.cmake")
# Qt framework version is major version # Qt framework version is major version
SET (QT_FWVER @QT_VERSION_MAJOR@) SET (QT_FWVER "5")
# build list of Qt frameworks to bundle # build list of Qt frameworks to bundle
# core list, includes dependencies and used by extra plugins # core list, includes dependencies and used by extra plugins
SET (QTLISTQG QtCore QtGui phonon QtXml QtNetwork QtSvg QtSql QtWebKit QtXmlPatterns QtDBus QtMultimedia QtOpenGL QtTest) SET (QTLISTQG QtCore QtGui QtWidgets QtNetwork QtXml QtSvg QtConcurrent QtPrintSupport QtPositioning QtTest QtSql)
SET (PYQTLIST Qt QtCore QtGui phonon QtXml QtNetwork QtSvg QtSql QtWebKit QtXmlPatterns QtDBus QtMultimedia QtOpenGL QtTest) SET (PYQTLIST Qt QtCore QtGui QtWidgets QtNetwork QtXml QtSvg QtPrintSupport QtPositioning QtTest QtSql)
IF(@WITH_QTWEBKIT@)
SET (QTLISTQG ${QTLISTQG} QtWebKit QtWebKitWidgets QtSensors QtQuick QtQml QtWebChannel QtMultimedia QtMultimediaWidgets QtOpenGL)
SET (PYQTLIST ${PYQTLIST} QtWebKit QtWebKitWidgets QtSensors QtQuick QtQml QtWebChannel QtMultimedia QtMultimediaWidgets QtOpenGL)
ENDIF ()
IF(@WITH_3D@)
SET (QTLISTQG ${QTLISTQG} Qt3DCore Qt3DRender Qt3DInput Qt3DLogic Qt3DExtras QtGamepad)
SET (PYQTLIST ${PYQTLIST} Qt3DCore Qt3DRender Qt3DInput Qt3DLogic Qt3DExtras QtGamepad)
ENDIF ()
IF(@WITH_GLOBE@)
SET (QTLISTQG ${QTLISTQG} QtOpenGL)
SET (PYQTLIST ${PYQTLIST} QtOpenGL)
ENDIF ()
# add Qsci.so, if available # add Qsci.so, if available
IF (@QSCI_FOUND@) IF (@QSCI_FOUND@)
SET (PYQTLIST ${PYQTLIST} Qsci) SET (QTLISTQG ${QTLISTQG} QtMacExtras)
SET (PYQTLIST ${PYQTLIST} Qsci QtMacExtras)
ENDIF (@QSCI_FOUND@) ENDIF (@QSCI_FOUND@)
MYMESSAGE ("Qt list: ${QTLISTQG}") MYMESSAGE ("Qt list: ${QTLISTQG}")
@ -30,8 +46,8 @@ MYMESSAGE ("Qt list: ${QTLISTQG}")
IF (NOT @OSX_HAVE_LOADERPATH@) IF (NOT @OSX_HAVE_LOADERPATH@)
EXECUTE_PROCESS (COMMAND ln -sfn ../Frameworks "${QAPPDIR}/") EXECUTE_PROCESS (COMMAND ln -sfn ../Frameworks "${QAPPDIR}/")
IF (IS_DIRECTORY "${QLIBXIR}/grass/bin") IF (IS_DIRECTORY "${QLIBDIR}/grass/bin")
EXECUTE_PROCESS (COMMAND ln -sfn ../@QGIS_LIBEXEC_SUBDIR_REV@/@QGIS_FW_SUBDIR@ "${QLIBXDIR}/grass/Frameworks") EXECUTE_PROCESS (COMMAND ln -sfn ../@QGIS_LIBEXEC_SUBDIR_REV@/@QGIS_FW_SUBDIR@ "${QLIBDIR}/grass/Frameworks")
ENDIF () ENDIF ()
EXECUTE_PROCESS (COMMAND ln -sfn @QGIS_CGIBIN_SUBDIR_REV@/@QGIS_LIB_SUBDIR@ "${QCGIDIR}/lib") EXECUTE_PROCESS (COMMAND ln -sfn @QGIS_CGIBIN_SUBDIR_REV@/@QGIS_LIB_SUBDIR@ "${QCGIDIR}/lib")
ENDIF (NOT @OSX_HAVE_LOADERPATH@) ENDIF (NOT @OSX_HAVE_LOADERPATH@)
@ -39,12 +55,14 @@ ENDIF (NOT @OSX_HAVE_LOADERPATH@)
### copy files ### copy files
# Qt frameworks # Qt frameworks
# Qt5 cmake does not create overall qt prefix var, only individual lib prefixes.
# For simplicity, assume core prefix same as all others.
MESSAGE (STATUS "Copying Qt frameworks...") MESSAGE (STATUS "Copying Qt frameworks...")
EXECUTE_PROCESS (COMMAND mkdir -p "${QFWDIR}") EXECUTE_PROCESS (COMMAND mkdir -p "${QFWDIR}")
FOREACH (QFW ${QTLISTQG}) FOREACH (QFW ${QTLISTQG})
IF (NOT IS_DIRECTORY "${QFWDIR}/${QFW}.framework") IF (NOT IS_DIRECTORY "${QFWDIR}/${QFW}.framework")
COPY_FRAMEWORK("@QT_LIBRARY_DIR@" ${QFW} "${QFWDIR}") COPY_FRAMEWORK("${QT_LIBRARY_DIR}" ${QFW} "${QFWDIR}")
ENDIF () ENDIF ()
ENDFOREACH (QFW) ENDFOREACH (QFW)
@ -56,10 +74,10 @@ FOREACH (QI qgif;qico;qjpeg;qsvg;qtiff)
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/imageformats/lib${QI}.dylib" "${QPLUGDIR}/../imageformats/lib${QI}.dylib") EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/imageformats/lib${QI}.dylib" "${QPLUGDIR}/../imageformats/lib${QI}.dylib")
ENDIF () ENDIF ()
ENDFOREACH (QI) ENDFOREACH (QI)
EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../codecs") EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../platforms")
FOREACH (QTC cn;jp;kr;tw) FOREACH (QTP cocoa;minimal;offscreen)
IF (NOT EXISTS "${QPLUGDIR}/../codecs/libq${QTC}codecs.dylib") IF (NOT EXISTS "${QPLUGDIR}/../platforms/libq${QTP}.dylib")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/codecs/libq${QTC}codecs.dylib" "${QPLUGDIR}/../codecs/libq${QTC}codecs.dylib") EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/platforms/libq${QTP}.dylib" "${QPLUGDIR}/../platforms/libq${QTP}.dylib")
ENDIF () ENDIF ()
ENDFOREACH (QTC) ENDFOREACH (QTC)
EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../sqldrivers") EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../sqldrivers")
@ -83,10 +101,6 @@ EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../iconengines")
IF (NOT EXISTS "${QPLUGDIR}/../iconengines/libqsvgicon.dylib") IF (NOT EXISTS "${QPLUGDIR}/../iconengines/libqsvgicon.dylib")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/iconengines/libqsvgicon.dylib" "${QPLUGDIR}/../iconengines/libqsvgicon.dylib") EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/iconengines/libqsvgicon.dylib" "${QPLUGDIR}/../iconengines/libqsvgicon.dylib")
ENDIF () ENDIF ()
EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../phonon_backend")
IF (NOT EXISTS "${QPLUGDIR}/../phonon_backend/libphonon_qt7.dylib")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/phonon_backend/libphonon_qt7.dylib" "${QPLUGDIR}/../phonon_backend/libphonon_qt7.dylib")
ENDIF ()
# Qwt # Qwt
@ -166,7 +180,7 @@ ENDIF (@WITH_QWTPOLAR@ AND NOT @WITH_INTERNAL_QWTPOLAR@)
# QCA # QCA
STRING (REGEX MATCH "\\.dylib$" ISLIB "@QCA_LIBRARY@") STRING (REGEX MATCH "\\.dylib$" ISLIB "@QCA_LIBRARY@")
STRING (REGEX MATCH "qca.framework" ISFW "@QCA_LIBRARY@") STRING (REGEX MATCH "qca.*.framework" ISFW "@QCA_LIBRARY@")
IF (ISLIB) IF (ISLIB)
# shared libraries # shared libraries
MESSAGE (STATUS "Copying QCA and updating library paths...") MESSAGE (STATUS "Copying QCA and updating library paths...")
@ -182,18 +196,24 @@ ELSEIF (ISFW AND EXISTS "@QCA_LIBRARY@")
# framework # framework
MESSAGE (STATUS "Copying QCA framework and updating library paths...") MESSAGE (STATUS "Copying QCA framework and updating library paths...")
SET (QCA_LIBRARY "@QCA_LIBRARY@") SET (QCA_LIBRARY "@QCA_LIBRARY@")
STRING (REGEX MATCH "qca.framework/qca" _has_bin "${QCA_LIBRARY}") STRING (REGEX MATCH "qca-qt5" _has_long_name "${QCA_LIBRARY}")
IF (_has_long_name)
SET (_qca_libname "qca-qt5")
ELSE ()
SET (_qca_libname "qca")
ENDIF ()
STRING (REGEX MATCH "${_qca_libname}.framework/${_qca_libname}" _has_bin "${QCA_LIBRARY}")
IF (NOT _has_bin) IF (NOT _has_bin)
SET (QCA_LIBRARY "${QCA_LIBRARY}/qca") SET (QCA_LIBRARY "${QCA_LIBRARY}/${_qca_libname}")
ENDIF () ENDIF ()
SET (QCA_CHG_TO "${ATLOADER}/@QGIS_PLUGIN_SUBDIR_REV@/${QGIS_FW_SUBDIR}/qca.framework/qca") SET (QCA_CHG_TO "${ATLOADER}/@QGIS_PLUGIN_SUBDIR_REV@/${QGIS_FW_SUBDIR}/${_qca_libname}.framework/${_qca_libname}")
IF (NOT IS_DIRECTORY "${QFWDIR}/qca.framework") IF (NOT IS_DIRECTORY "${QFWDIR}/${_qca_libname}.framework")
STRING(REGEX REPLACE "/qca.framework.*" "" QCA_PARENT "@QCA_LIBRARY@") STRING(REGEX REPLACE "/${_qca_libname}.framework.*" "" QCA_PARENT "@QCA_LIBRARY@")
COPY_FRAMEWORK("${QCA_PARENT}" "qca" "${QFWDIR}") COPY_FRAMEWORK("${QCA_PARENT}" "${_qca_libname}" "${QFWDIR}")
ENDIF () ENDIF ()
GET_INSTALL_NAME ("${QCA_LIBRARY}" "qca" QCA_CHG) GET_INSTALL_NAME ("${QCA_LIBRARY}" "${_qca_libname}" QCA_CHG)
IF (QCA_CHG) IF (QCA_CHG)
UPDATEQGISPATHS (${QCA_CHG} qca) UPDATEQGISPATHS (${QCA_CHG} ${_qca_libname})
ENDIF () ENDIF ()
ENDIF () ENDIF ()
# copy and relink the plugins # copy and relink the plugins
@ -231,6 +251,17 @@ IF (@QSCINTILLA_LIBRARY@ MATCHES ".*libqscintilla2.dylib")
ENDIF (QSCI_CHG) ENDIF (QSCI_CHG)
ENDIF () ENDIF ()
# QtKeychain
IF (@QTKEYCHAIN_LIBRARY@ MATCHES ".*libqt5keychain.dylib")
MESSAGE (STATUS "Copying QtKeychain library and updating library paths...")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QTKEYCHAIN_LIBRARY@" "${QLIBDIR}/libqt5keychain.dylib")
GET_INSTALL_NAME ("@QTKEYCHAIN_LIBRARY@" "libqt5keychain" QTKEY_CHG)
IF (QTKEY_CHG)
UPDATEQGISPATHS (${QTKEY_CHG} libqt5keychain.dylib)
ENDIF (QTKEY_CHG)
ENDIF ()
# Tell user what Python paths are being searched for modules and packages # Tell user what Python paths are being searched for modules and packages
# see: PYTHON_MODULE_PATHS in 0vars.cmake.in for why not all PyQt-related modules # see: PYTHON_MODULE_PATHS in 0vars.cmake.in for why not all PyQt-related modules
# can be assumed to exist in symlinked-resolved PyQt or sip module directories # can be assumed to exist in symlinked-resolved PyQt or sip module directories
@ -257,6 +288,7 @@ MESSAGE (STATUS "Copying PyQt...")
EXECUTE_PROCESS (COMMAND mkdir -p "${QGISPYDIR}/PyQt${QT_FWVER}") EXECUTE_PROCESS (COMMAND mkdir -p "${QGISPYDIR}/PyQt${QT_FWVER}")
FOREACH (PQ ${PYQTLIST}) FOREACH (PQ ${PYQTLIST})
SET (MODNAME "${PQ}.so") SET (MODNAME "${PQ}.so")
SET (MODPYI "PyQt${QT_FWVER}/${PQ}.pyi")
SET (MODSUBPATH "PyQt${QT_FWVER}/${MODNAME}") SET (MODSUBPATH "PyQt${QT_FWVER}/${MODNAME}")
# search for each module separately, instead of only in first found PyQt directory, since PyQt may # search for each module separately, instead of only in first found PyQt directory, since PyQt may
# be installed to its a specific prefix, like with Homebrew, then symlinked into common 'site-packages' # be installed to its a specific prefix, like with Homebrew, then symlinked into common 'site-packages'
@ -265,6 +297,9 @@ FOREACH (PQ ${PYQTLIST})
IF (NOT EXISTS "${QGISPYDIR}/${MODSUBPATH}") IF (NOT EXISTS "${QGISPYDIR}/${MODSUBPATH}")
# MESSAGE (STATUS "ditto ${QARCHS} \"${PYQT5MOD}\" \"${QGISPYDIR}/${MODSUBPATH}\"") # MESSAGE (STATUS "ditto ${QARCHS} \"${PYQT5MOD}\" \"${QGISPYDIR}/${MODSUBPATH}\"")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "${MODDIR}/${MODSUBPATH}" "${QGISPYDIR}/${MODSUBPATH}") EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "${MODDIR}/${MODSUBPATH}" "${QGISPYDIR}/${MODSUBPATH}")
IF (EXISTS "${MODDIR}/${MODPYI}")
EXECUTE_PROCESS (COMMAND ditto "${MODDIR}/${MODPYI}" "${QGISPYDIR}/${MODPYI}")
ENDIF ()
ENDIF () ENDIF ()
ELSE (MODDIR) ELSE (MODDIR)
MESSAGE (STATUS " PyQt5 module ${MODNAME} not found") MESSAGE (STATUS " PyQt5 module ${MODNAME} not found")
@ -272,7 +307,7 @@ FOREACH (PQ ${PYQTLIST})
UNSET(PYQT5MOD) UNSET(PYQT5MOD)
ENDFOREACH (PQ) ENDFOREACH (PQ)
PYTHONMODULEDIR("PyQt${QT_FWVER}" PYQTMODDIR) PYTHONMODULEDIR("PyQt${QT_FWVER}" PYQTMODDIR)
FILE (GLOB PQPYLIST "${PYQTMODDIR}/PyQt${QT_FWVER}/*.py") FILE (GLOB PQPYLIST "${PYQTMODDIR}/PyQt${QT_FWVER}/*.py*")
FOREACH (PQPY ${PQPYLIST}) FOREACH (PQPY ${PQPYLIST})
EXECUTE_PROCESS (COMMAND cp -fp "${PQPY}" "${QGISPYDIR}/PyQt${QT_FWVER}/") EXECUTE_PROCESS (COMMAND cp -fp "${PQPY}" "${QGISPYDIR}/PyQt${QT_FWVER}/")
ENDFOREACH (PQPY) ENDFOREACH (PQPY)
@ -280,13 +315,13 @@ EXECUTE_PROCESS (COMMAND cp -RfpL "${PYQTMODDIR}/PyQt${QT_FWVER}/uic" "${QGISPYD
# PyQt utilities # PyQt utilities
FOREACH (PU pylupdate4;pyrcc4) FOREACH (PU pylupdate5;pyrcc5)
IF (NOT EXISTS "${QBINDIR}/${PU}") IF (NOT EXISTS "${QBINDIR}/${PU}")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@PYQT5_BIN_DIR@/${PU}" "${QBINDIR}/") EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@PYQT5_BIN_DIR@/${PU}" "${QBINDIR}/")
ENDIF () ENDIF ()
ENDFOREACH (PU) ENDFOREACH (PU)
IF (NOT EXISTS "${QBINDIR}/pyuic4") IF (NOT EXISTS "${QBINDIR}/pyuic5")
EXECUTE_PROCESS (COMMAND sed -E "s, /.*/PyQt5/uic/pyuic.py, \"\$(/usr/bin/dirname \"\$0\")/../../Resources/python/PyQt5/uic/pyuic.py\"," "@PYQT5_BIN_DIR@/pyuic4" EXECUTE_PROCESS (COMMAND sed -E "s, /.*/PyQt5/uic/pyuic.py, \"\$(/usr/bin/dirname \"\$0\")/../../Resources/python/PyQt5/uic/pyuic.py\"," "@PYQT5_BIN_DIR@/pyuic5"
OUTPUT_VARIABLE PYUIC_CONTENTS) OUTPUT_VARIABLE PYUIC_CONTENTS)
FILE (WRITE "${QBINDIR}/pyuic4" "${PYUIC_CONTENTS}") FILE (WRITE "${QBINDIR}/pyuic4" "${PYUIC_CONTENTS}")
EXECUTE_PROCESS (COMMAND chmod +x "${QBINDIR}/pyuic4") EXECUTE_PROCESS (COMMAND chmod +x "${QBINDIR}/pyuic4")
@ -346,7 +381,7 @@ MESSAGE (STATUS "Updating Qt library paths...")
FOREACH (QFW ${QTLISTQG}) FOREACH (QFW ${QTLISTQG})
# get install names from installed in case bundled copy already changed # get install names from installed in case bundled copy already changed
# from a previous install attempt # from a previous install attempt
GET_INSTALL_NAME ("@QT_LIBRARY_DIR@/${QFW}.framework/${QFW}" ${QFW}.framework QQ) GET_INSTALL_NAME ("${QT_LIBRARY_DIR}/${QFW}.framework/${QFW}" ${QFW}.framework QQ)
SET (QFW_CHG "${QQ}") SET (QFW_CHG "${QQ}")
# qgis stuff # qgis stuff
UPDATEQGISPATHS ("${QFW_CHG}" ${QFW}) UPDATEQGISPATHS ("${QFW_CHG}" ${QFW})
@ -366,6 +401,20 @@ FOREACH (QFW ${QTLISTQG})
ENDIF () ENDIF ()
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QFWDIR}/qwt.framework/qwt") INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QFWDIR}/qwt.framework/qwt")
ENDIF (ISLIB) ENDIF (ISLIB)
# qtkeychain
STRING (REGEX MATCH "\\.dylib$" ISLIB "@QTKEYCHAIN_LIBRARY@")
STRING (REGEX MATCH "qt5keychain.framework" ISFW "@QTKEYCHAIN_LIBRARY@")
IF (ISLIB)
IF (@OSX_HAVE_LOADERPATH@)
SET (QFW_CHG_TO "${ATLOADER}/${QGIS_LIB_SUBDIR_REV}/${QGIS_FW_SUBDIR}/${LIBPOST}")
ENDIF ()
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QLIBDIR}/libqt5keychain.dylib")
ELSEIF (ISFW AND EXISTS "${QFWDIR}/qt5keychain.framework/qt5keychain")
IF (@OSX_HAVE_LOADERPATH@)
SET (QFW_CHG_TO "${ATLOADER}/../../../${LIBPOST}")
ENDIF ()
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QFWDIR}/qt5keychain.framework/qt5keychain")
ENDIF (ISLIB)
# QwtPolar # QwtPolar
STRING (REGEX MATCH "\\.dylib$" ISLIB "@QWTPOLAR_LIBRARY@") STRING (REGEX MATCH "\\.dylib$" ISLIB "@QWTPOLAR_LIBRARY@")
STRING (REGEX MATCH "qwtpolar.framework" ISFW "@QWTPOLAR_LIBRARY@") STRING (REGEX MATCH "qwtpolar.framework" ISFW "@QWTPOLAR_LIBRARY@")
@ -382,17 +431,17 @@ FOREACH (QFW ${QTLISTQG})
ENDIF (ISLIB) ENDIF (ISLIB)
# QCA # QCA
STRING (REGEX MATCH "\\.dylib$" ISLIB "@QCA_LIBRARY@") STRING (REGEX MATCH "\\.dylib$" ISLIB "@QCA_LIBRARY@")
STRING (REGEX MATCH "qca.framework" ISFW "@QCA_LIBRARY@") STRING (REGEX MATCH "${_qca_libname}.framework" ISFW "@QCA_LIBRARY@")
IF (ISLIB) IF (ISLIB)
IF (@OSX_HAVE_LOADERPATH@) IF (@OSX_HAVE_LOADERPATH@)
SET (QFW_CHG_TO "${ATLOADER}/${QGIS_LIB_SUBDIR_REV}/${QGIS_FW_SUBDIR}/${LIBPOST}") SET (QFW_CHG_TO "${ATLOADER}/${QGIS_LIB_SUBDIR_REV}/${QGIS_FW_SUBDIR}/${LIBPOST}")
ENDIF () ENDIF ()
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QLIBDIR}/libqca.dylib") INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QLIBDIR}/libqca.dylib")
ELSEIF (ISFW AND EXISTS "${QFWDIR}/qca.framework/qca") ELSEIF (ISFW AND EXISTS "${QFWDIR}/${_qca_libname}.framework/${_qca_libname}")
IF (@OSX_HAVE_LOADERPATH@) IF (@OSX_HAVE_LOADERPATH@)
SET (QFW_CHG_TO "${ATLOADER}/../../../${LIBPOST}") SET (QFW_CHG_TO "${ATLOADER}/../../../${LIBPOST}")
ENDIF () ENDIF ()
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QFWDIR}/qca.framework/qca") INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QFWDIR}/${_qca_libname}.framework/${_qca_libname}")
ENDIF (ISLIB) ENDIF (ISLIB)
# osgEarthQt # osgEarthQt
IF (@HAVE_OSGEARTHQT@) IF (@HAVE_OSGEARTHQT@)
@ -423,9 +472,9 @@ FOREACH (QFW ${QTLISTQG})
FOREACH (QI qgif;qico;qjpeg;qsvg;qtiff) FOREACH (QI qgif;qico;qjpeg;qsvg;qtiff)
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../imageformats/lib${QI}.dylib") INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../imageformats/lib${QI}.dylib")
ENDFOREACH (QI) ENDFOREACH (QI)
FOREACH (QC cn;jp;kr;tw) FOREACH (QP cocoa;minimal;offscreen)
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../codecs/libq${QC}codecs.dylib") INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../platforms/libq${QP}.dylib")
ENDFOREACH (QC) ENDFOREACH (QP)
FOREACH (QSL ${QTLISTSQL}) FOREACH (QSL ${QTLISTSQL})
IF (EXISTS "${QPLUGDIR}/../sqldrivers/libqsql${QSL}.dylib") IF (EXISTS "${QPLUGDIR}/../sqldrivers/libqsql${QSL}.dylib")
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../sqldrivers/libqsql${QSL}.dylib") INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../sqldrivers/libqsql${QSL}.dylib")