Make compatible with qt5-static build

This commit is contained in:
ts-korhonen
2021-12-06 17:31:25 +02:00
parent d21738a94f
commit 44873ba9b9
3 changed files with 23 additions and 0 deletions

View File

@@ -133,6 +133,12 @@ if(QT)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
# if we want to use qt5-static to eliminate need for bundling qt dlls (windows)
#set(QT_STATIC ON)
# needed to build with qt5-static if both qt5 and qt5-static are installed
#set(CMAKE_PREFIX_PATH "path/to/qt5-static")
find_package(Qt5 COMPONENTS Core Widgets REQUIRED)
endif()

View File

@@ -107,6 +107,13 @@ target_link_libraries(
Threads::Threads
)
# needed for static builds
if (WIN32)
qt_import_plugins(plat INCLUDE Qt5::QWindowsIntegrationPlugin Qt5::QICOPlugin QWindowsVistaStylePlugin)
else()
qt_import_plugins(plat INCLUDE Qt5::QICOPlugin)
endif()
if (PkgConfig_FOUND)
pkg_check_modules(RTMIDI rtmidi)
if (RTMIDI_FOUND)

View File

@@ -4,6 +4,16 @@
#include <QThread>
#include <QTimer>
#ifdef QT_STATIC
/* Static builds need plugin imports */
#include <QtPlugin>
Q_IMPORT_PLUGIN(QICOPlugin)
#ifdef Q_OS_WINDOWS
Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin)
Q_IMPORT_PLUGIN(QWindowsVistaStylePlugin)
#endif
#endif
#include <86box/86box.h>
#include <86box/plat.h>
#include <86box/ui.h>