Skip to content

Commit 2a2465e

Browse files
committed
Add available sql drivers to Mac bundled app
1 parent 314c783 commit 2a2465e

File tree

2 files changed

+21
-3
lines changed

2 files changed

+21
-3
lines changed

mac/cmake/0vars.cmake.in

+1
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ SET (WITH_GLOBE "@WITH_GLOBE@")
4040
SET (WITH_GRASS "@WITH_GRASS@")
4141
SET (WITH_MAPSERVER "@WITH_MAPSERVER@")
4242
SET (WITH_POSTGRESQL "@WITH_POSTGRESQL@")
43+
SET (WITH_QSPATIALITE "@WITH_QSPATIALITE@")
4344

4445
# tests
4546
SET (ENABLE_TESTS "@ENABLE_TESTS@")

mac/cmake/1qt.cmake.in

+20-3
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,19 @@ FOREACH (QTC cn;jp;kr;tw)
7777
ENDIF ()
7878
ENDFOREACH (QTC)
7979
EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../sqldrivers")
80-
IF (NOT EXISTS "${QPLUGDIR}/../sqldrivers/libqsqlite.dylib")
81-
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/sqldrivers/libqsqlite.dylib" "${QPLUGDIR}/../sqldrivers/libqsqlite.dylib")
80+
SET (QTLISTSQL ite odbc psql mysql)
81+
# qspatialite driver plugin is part of QGIS build
82+
IF (@WITH_QSPATIALITE@)
83+
LIST(APPEND QTLISTSQL spatialite)
84+
IF (EXISTS "${QPLUGDIR}/../sqldrivers/libqsqlspatialite.dylib")
85+
EXECUTE_PROCESS (COMMAND ${CMAKE_COMMAND} -E remove "${QPLUGDIR}/../sqldrivers/libqsqlspatialite.dylib")
86+
ENDIF ()
8287
ENDIF ()
88+
FOREACH (QSL ${QTLISTSQL})
89+
IF (NOT EXISTS "${QPLUGDIR}/../sqldrivers/libqsql${QSL}.dylib" AND EXISTS "@QT_PLUGINS_DIR@/sqldrivers/libqsql${QSL}.dylib")
90+
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/sqldrivers/libqsql${QSL}.dylib" "${QPLUGDIR}/../sqldrivers/libqsql${QSL}.dylib")
91+
ENDIF ()
92+
ENDFOREACH (QSL)
8393
EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../iconengines")
8494
IF (NOT EXISTS "${QPLUGDIR}/../iconengines/libqsvgicon.dylib")
8595
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/iconengines/libqsvgicon.dylib" "${QPLUGDIR}/../iconengines/libqsvgicon.dylib")
@@ -284,7 +294,14 @@ FOREACH (QFW ${QTLISTQG})
284294
FOREACH (QC cn;jp;kr;tw)
285295
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../codecs/libq${QC}codecs.dylib")
286296
ENDFOREACH (QC)
287-
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../sqldrivers/libqsqlite.dylib")
297+
FOREACH (QSL ${QTLISTSQL})
298+
IF (EXISTS "${QPLUGDIR}/../sqldrivers/libqsql${QSL}.dylib")
299+
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../sqldrivers/libqsql${QSL}.dylib")
300+
ENDIF ()
301+
ENDFOREACH (QSL)
302+
IF (@WITH_QSPATIALITE@ AND EXISTS "${QPLUGDIR}/../sqldrivers/libqsqlspatialite.dylib")
303+
EXECUTE_PROCESS (COMMAND install_name_tool -id "libqsqlspatialite.dylib" "${QPLUGDIR}/../sqldrivers/libqsqlspatialite.dylib")
304+
ENDIF ()
288305
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../iconengines/libqsvgicon.dylib")
289306
# qt fw
290307
IF (@OSX_HAVE_LOADERPATH@)

0 commit comments

Comments
 (0)