mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2024-12-12 20:08:48 +01:00
07c7faa144
Conflicts: artwork/PFD/pfd.svg
157 lines
6.2 KiB
Prolog
157 lines
6.2 KiB
Prolog
include(openpilotgcs.pri)
|
|
|
|
TEMPLATE = subdirs
|
|
|
|
# Copy Qt runtime libraries into the build directory (to run or package)
|
|
equals(copydata, 1) {
|
|
|
|
# Windows release only, no debug target DLLs ending with 'd'
|
|
# It is assumed that SDL.dll can be found in the same directory as mingw32-make.exe
|
|
win32 {
|
|
|
|
# set debug suffix if needed
|
|
CONFIG(debug, debug|release):DS = "d"
|
|
|
|
# copy Qt DLLs
|
|
QT_DLLS = Qt5Core$${DS}.dll \
|
|
Qt5Gui$${DS}.dll \
|
|
Qt5Widgets$${DS}.dll \
|
|
Qt5Network$${DS}.dll \
|
|
Qt5OpenGL$${DS}.dll \
|
|
Qt5Sql$${DS}.dll \
|
|
Qt5Svg$${DS}.dll \
|
|
Qt5Test$${DS}.dll \
|
|
Qt5Xml$${DS}.dll \
|
|
Qt5Declarative$${DS}.dll \
|
|
Qt5XmlPatterns$${DS}.dll \
|
|
Qt5Script$${DS}.dll \
|
|
Qt5Concurrent$${DS}.dll \
|
|
Qt5PrintSupport$${DS}.dll \
|
|
Qt5OpenGL$${DS}.dll \
|
|
Qt5SerialPort$${DS}.dll \
|
|
Qt5Multimedia$${DS}.dll \
|
|
Qt5MultimediaWidgets$${DS}.dll \
|
|
Qt5Quick$${DS}.dll \
|
|
Qt5Qml$${DS}.dll \
|
|
Qt5V8$${DS}.dll \
|
|
icuin51.dll \
|
|
icudt51.dll \
|
|
icuuc51.dll
|
|
# it is more robust to take the following DLLs from Qt rather than from MinGW
|
|
QT_DLLS += libgcc_s_dw2-1.dll \
|
|
libstdc++-6.dll \
|
|
libwinpthread-1.dll
|
|
for(dll, QT_DLLS) {
|
|
data_copy.commands += $(COPY_FILE) $$targetPath(\"$$[QT_INSTALL_BINS]/$$dll\") $$targetPath(\"$$GCS_APP_PATH/$$dll\") $$addNewline()
|
|
}
|
|
|
|
# create Qt plugin directories
|
|
QT_PLUGIN_DIRS = iconengines \
|
|
imageformats \
|
|
platforms \
|
|
mediaservice \
|
|
sqldrivers
|
|
for(dir, QT_PLUGIN_DIRS) {
|
|
data_copy.commands += -@$(MKDIR) $$targetPath(\"$$GCS_APP_PATH/$$dir\") $$addNewline()
|
|
}
|
|
|
|
# copy Qt plugin DLLs
|
|
QT_PLUGIN_DLLS = iconengines/qsvgicon$${DS}.dll \
|
|
imageformats/qgif$${DS}.dll \
|
|
imageformats/qico$${DS}.dll \
|
|
imageformats/qjpeg$${DS}.dll \
|
|
imageformats/qmng$${DS}.dll \
|
|
imageformats/qsvg$${DS}.dll \
|
|
imageformats/qtiff$${DS}.dll \
|
|
platforms/qwindows$${DS}.dll \
|
|
mediaservice/dsengine$${DS}.dll \
|
|
sqldrivers/qsqlite$${DS}.dll
|
|
for(dll, QT_PLUGIN_DLLS) {
|
|
data_copy.commands += $(COPY_FILE) $$targetPath(\"$$[QT_INSTALL_PLUGINS]/$$dll\") $$targetPath(\"$$GCS_APP_PATH/$$dll\") $$addNewline()
|
|
}
|
|
|
|
# create QtQuick2 plugin directories
|
|
QT_QUICK2_DIRS = qtquick \
|
|
qtquick.2 \
|
|
qtquick/layouts \
|
|
qtquick/localstorage \
|
|
qtquick/particles.2 \
|
|
qtquick/privatewidgets \
|
|
qtquick/window.2 \
|
|
qtquick/xmllistmodel
|
|
for(dir, QT_QUICK2_DIRS) {
|
|
data_copy.commands += -@$(MKDIR) $$targetPath(\"$$GCS_APP_PATH/$$dir\") $$addNewline()
|
|
}
|
|
|
|
# Copy QtQuick2 complete directories
|
|
# These directories have a lot of files
|
|
# Easier to copy everything
|
|
QTQ_WHOLE_DIRS = qtquick/controls \
|
|
qtquick/dialogs
|
|
for(dir, QTQ_WHOLE_DIRS) {
|
|
data_copy.commands += $(COPY_DIR) $$targetPath(\"$$[QT_INSTALL_QML]/$$dir\") $$targetPath(\"$$GCS_APP_PATH/$$dir\") $$addNewline()
|
|
}
|
|
|
|
# Remove the few unwanted DDLs after whole dir copy
|
|
QT_QUICK2_DELS = qtquick/controls/qtquickcontrolsplugin \
|
|
qtquick/controls/private/qtquickcontrolsprivateplugin \
|
|
qtquick/dialogs/dialogplugin
|
|
|
|
CONFIG(debug, debug|release) {
|
|
for(delfile, QT_QUICK2_DELS) {
|
|
data_copy.commands += $(DEL_FILE) $$targetPath(\"$$GCS_APP_PATH/$${delfile}.dll\") $$addNewline()
|
|
}
|
|
}
|
|
CONFIG(release, debug|release) {
|
|
for(delfile, QT_QUICK2_DELS) {
|
|
data_copy.commands += $(DEL_FILE) $$targetPath(\"$$GCS_APP_PATH/$${delfile}d.dll\") $$addNewline()
|
|
}
|
|
}
|
|
|
|
# Remaining QtQuick plugin DLLs
|
|
QT_QUICK2_DLLS = QtQuick.2/qtquick2plugin$${DS}.dll \
|
|
QtQuick.2/plugins.qmltypes \
|
|
QtQuick.2/qmldir \
|
|
qtquick/layouts/qquicklayoutsplugin$${DS}.dll \
|
|
qtquick/layouts/plugins.qmltypes \
|
|
qtquick/layouts/qmldir \
|
|
qtquick/localstorage/qmllocalstorageplugin$${DS}.dll \
|
|
qtquick/localstorage/plugins.qmltypes \
|
|
qtquick/localstorage/qmldir \
|
|
qtquick/particles.2/particlesplugin$${DS}.dll \
|
|
qtquick/particles.2/plugins.qmltypes \
|
|
qtquick/particles.2/qmldir \
|
|
qtquick/privatewidgets/widgetsplugin$${DS}.dll \
|
|
qtquick/privatewidgets/plugins.qmltypes \
|
|
qtquick/privatewidgets/qmldir \
|
|
qtquick/window.2/windowplugin$${DS}.dll \
|
|
qtquick/window.2/plugins.qmltypes \
|
|
qtquick/window.2/qmldir \
|
|
qtquick/XmlListModel/qmlxmllistmodelplugin$${DS}.dll \
|
|
qtquick/XmlListModel/plugins.qmltypes \
|
|
qtquick/XmlListModel/qmldir
|
|
|
|
for(dll, QT_QUICK2_DLLS) {
|
|
data_copy.commands += $(COPY_FILE) $$targetPath(\"$$[QT_INSTALL_QML]/$$dll\") $$targetPath(\"$$GCS_APP_PATH/$$dll\") $$addNewline()
|
|
}
|
|
|
|
# copy MinGW DLLs
|
|
MINGW_DLLS = SDL.dll
|
|
for(dll, MINGW_DLLS) {
|
|
data_copy.commands += $(COPY_FILE) $$targetPath(\"$$(QTMINGW)/$$dll\") $$targetPath(\"$$GCS_APP_PATH/$$dll\") $$addNewline()
|
|
}
|
|
|
|
# copy OpenSSL DLLs
|
|
OPENSSL_DLLS = \
|
|
ssleay32.dll \
|
|
libeay32.dll
|
|
for(dll, OPENSSL_DLLS) {
|
|
data_copy.commands += $(COPY_FILE) $$targetPath(\"$$(OPENSSL)/$$dll\") $$targetPath(\"$$GCS_APP_PATH/$$dll\") $$addNewline()
|
|
}
|
|
|
|
data_copy.target = FORCE
|
|
QMAKE_EXTRA_TARGETS += data_copy
|
|
}
|
|
|
|
}
|