This repository has been archived on 2022-06-22. You can view files and clone it, but cannot push or open issues or pull requests.
multimc5-offline/multimc-fix-build-with-qt-511.patch
2018-06-13 15:40:36 +02:00

258 lines
10 KiB
Diff

From 4d68c1b509cd289e9f02cbf258e69f2539349029 Mon Sep 17 00:00:00 2001
From: Sergey Shatunov <me@prok.pw>
Date: Fri, 1 Jun 2018 21:20:33 +0700
Subject: [PATCH] GH-2291 Fix build with Qt 5.11+
---
api/gui/CMakeLists.txt | 3 +--
api/logic/CMakeLists.txt | 2 +-
application/dialogs/NotificationDialog.cpp | 1 +
application/pages/global/ExternalToolsPage.cpp | 1 +
application/pages/global/JavaPage.cpp | 1 +
application/pages/global/MinecraftPage.cpp | 1 +
application/pages/global/PasteEEPage.cpp | 1 +
application/pages/global/ProxyPage.cpp | 2 ++
application/pages/instance/NotesPage.cpp | 1 +
application/pages/modplatform/ImportPage.cpp | 1 +
application/pages/modplatform/VanillaPage.cpp | 1 +
cmake/UnitTest.cmake | 5 ++---
libraries/LocalPeer/CMakeLists.txt | 2 +-
libraries/classparser/CMakeLists.txt | 3 +--
libraries/ganalytics/CMakeLists.txt | 2 +-
libraries/iconfix/CMakeLists.txt | 2 +-
libraries/quazip | 2 +-
libraries/rainbow/CMakeLists.txt | 2 +-
libraries/systeminfo/CMakeLists.txt | 2 +-
19 files changed, 21 insertions(+), 14 deletions(-)
diff --git a/api/gui/CMakeLists.txt b/api/gui/CMakeLists.txt
index deae735fb..9a6ede257 100644
--- a/api/gui/CMakeLists.txt
+++ b/api/gui/CMakeLists.txt
@@ -21,8 +21,7 @@ set_target_properties(MultiMC_gui PROPERTIES CXX_VISIBILITY_PRESET hidden VISIBI
generate_export_header(MultiMC_gui)
# Link
-target_link_libraries(MultiMC_gui MultiMC_iconfix MultiMC_logic)
-qt5_use_modules(MultiMC_gui Gui)
+target_link_libraries(MultiMC_gui MultiMC_iconfix MultiMC_logic Qt5::Gui)
# Mark and export headers
target_include_directories(MultiMC_gui PUBLIC "${CMAKE_CURRENT_BINARY_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}")
diff --git a/api/logic/CMakeLists.txt b/api/logic/CMakeLists.txt
index d6b61d234..a320ab8ba 100644
--- a/api/logic/CMakeLists.txt
+++ b/api/logic/CMakeLists.txt
@@ -476,7 +476,7 @@ generate_export_header(MultiMC_logic)
# Link
target_link_libraries(MultiMC_logic xz-embedded MultiMC_unpack200 systeminfo MultiMC_quazip MultiMC_classparser ${NBT_NAME} ${ZLIB_LIBRARIES})
-qt5_use_modules(MultiMC_logic Core Xml Network Concurrent)
+target_link_libraries(MultiMC_logic Qt5::Core Qt5::Xml Qt5::Network Qt5::Concurrent)
# Mark and export headers
target_include_directories(MultiMC_logic PUBLIC "${CMAKE_CURRENT_BINARY_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}" PRIVATE "${ZLIB_INCLUDE_DIRS}")
diff --git a/application/dialogs/NotificationDialog.cpp b/application/dialogs/NotificationDialog.cpp
index d61bf6bd4..80adab3de 100644
--- a/application/dialogs/NotificationDialog.cpp
+++ b/application/dialogs/NotificationDialog.cpp
@@ -2,6 +2,7 @@
#include "ui_NotificationDialog.h"
#include <QTimerEvent>
+#include <QStyle>
NotificationDialog::NotificationDialog(const NotificationChecker::NotificationEntry &entry, QWidget *parent) :
QDialog(parent, Qt::MSWindowsFixedSizeDialogHint | Qt::WindowTitleHint | Qt::CustomizeWindowHint),
diff --git a/application/pages/global/ExternalToolsPage.cpp b/application/pages/global/ExternalToolsPage.cpp
index ff63ecbbb..dd44e5049 100644
--- a/application/pages/global/ExternalToolsPage.cpp
+++ b/application/pages/global/ExternalToolsPage.cpp
@@ -19,6 +19,7 @@
#include <QMessageBox>
#include <QFileDialog>
#include <QStandardPaths>
+#include <QTabBar>
#include "settings/SettingsObject.h"
#include "tools/BaseProfiler.h"
diff --git a/application/pages/global/JavaPage.cpp b/application/pages/global/JavaPage.cpp
index 42577a88d..b828a4505 100644
--- a/application/pages/global/JavaPage.cpp
+++ b/application/pages/global/JavaPage.cpp
@@ -20,6 +20,7 @@
#include <QFileDialog>
#include <QMessageBox>
#include <QDir>
+#include <QTabBar>
#include "dialogs/VersionSelectDialog.h"
diff --git a/application/pages/global/MinecraftPage.cpp b/application/pages/global/MinecraftPage.cpp
index aecd8d575..e6687cdec 100644
--- a/application/pages/global/MinecraftPage.cpp
+++ b/application/pages/global/MinecraftPage.cpp
@@ -18,6 +18,7 @@
#include <QMessageBox>
#include <QDir>
+#include <QTabBar>
#include "settings/SettingsObject.h"
#include "MultiMC.h"
diff --git a/application/pages/global/PasteEEPage.cpp b/application/pages/global/PasteEEPage.cpp
index 3d4e3a88b..09d36ceaa 100644
--- a/application/pages/global/PasteEEPage.cpp
+++ b/application/pages/global/PasteEEPage.cpp
@@ -19,6 +19,7 @@
#include <QMessageBox>
#include <QFileDialog>
#include <QStandardPaths>
+#include <QTabBar>
#include "settings/SettingsObject.h"
#include "tools/BaseProfiler.h"
diff --git a/application/pages/global/ProxyPage.cpp b/application/pages/global/ProxyPage.cpp
index 1e75bab15..e9882a85f 100644
--- a/application/pages/global/ProxyPage.cpp
+++ b/application/pages/global/ProxyPage.cpp
@@ -16,6 +16,8 @@
#include "ProxyPage.h"
#include "ui_ProxyPage.h"
+#include <QTabBar>
+
#include "settings/SettingsObject.h"
#include "MultiMC.h"
diff --git a/application/pages/instance/NotesPage.cpp b/application/pages/instance/NotesPage.cpp
index 48bb468c1..3925fdfc7 100644
--- a/application/pages/instance/NotesPage.cpp
+++ b/application/pages/instance/NotesPage.cpp
@@ -1,5 +1,6 @@
#include "NotesPage.h"
#include "ui_NotesPage.h"
+#include <QTabBar>
NotesPage::NotesPage(BaseInstance *inst, QWidget *parent)
: QWidget(parent), ui(new Ui::NotesPage), m_inst(inst)
diff --git a/application/pages/modplatform/ImportPage.cpp b/application/pages/modplatform/ImportPage.cpp
index 545ca38d1..f00c48110 100644
--- a/application/pages/modplatform/ImportPage.cpp
+++ b/application/pages/modplatform/ImportPage.cpp
@@ -7,6 +7,7 @@
#include "dialogs/ProgressDialog.h"
#include "dialogs/NewInstanceDialog.h"
#include <QFileDialog>
+#include <QValidator>
#include <InstanceImportTask.h>
class UrlValidator : public QValidator
diff --git a/application/pages/modplatform/VanillaPage.cpp b/application/pages/modplatform/VanillaPage.cpp
index 77dbc42a3..c355fccbd 100644
--- a/application/pages/modplatform/VanillaPage.cpp
+++ b/application/pages/modplatform/VanillaPage.cpp
@@ -12,6 +12,7 @@
#include <Filter.h>
#include <Env.h>
#include <InstanceCreationTask.h>
+#include <QTabBar>
VanillaPage::VanillaPage(NewInstanceDialog *dialog, QWidget *parent)
: QWidget(parent), dialog(dialog), ui(new Ui::VanillaPage)
diff --git a/cmake/UnitTest.cmake b/cmake/UnitTest.cmake
index e48ff74df..2552b32ce 100644
--- a/cmake/UnitTest.cmake
+++ b/cmake/UnitTest.cmake
@@ -7,7 +7,7 @@ message(${TEST_RESOURCE_PATH})
function(add_unit_test name)
set(options "")
set(oneValueArgs DATA)
- set(multiValueArgs SOURCES LIBS QT)
+ set(multiValueArgs SOURCES LIBS)
cmake_parse_arguments(OPT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
@@ -40,8 +40,7 @@ function(add_unit_test name)
endif()
endif()
- target_link_libraries(${name}_test ${OPT_LIBS})
- qt5_use_modules(${name}_test Test ${OPT_QT})
+ target_link_libraries(${name}_test Qt5::Test ${OPT_LIBS})
target_include_directories(${name}_test PRIVATE "${TEST_RESOURCE_PATH}/UnitTest/")
diff --git a/libraries/LocalPeer/CMakeLists.txt b/libraries/LocalPeer/CMakeLists.txt
index 99e3fe4d9..3d2a1e62c 100644
--- a/libraries/LocalPeer/CMakeLists.txt
+++ b/libraries/LocalPeer/CMakeLists.txt
@@ -26,4 +26,4 @@ endif()
add_library(LocalPeer STATIC ${SINGLE_SOURCES})
target_include_directories(LocalPeer PUBLIC include)
-qt5_use_modules(LocalPeer Core Network)
+target_link_libraries(LocalPeer Qt5::Core Qt5::Network)
diff --git a/libraries/classparser/CMakeLists.txt b/libraries/classparser/CMakeLists.txt
index db266f53f..e96062586 100644
--- a/libraries/classparser/CMakeLists.txt
+++ b/libraries/classparser/CMakeLists.txt
@@ -38,5 +38,4 @@ add_definitions(-DCLASSPARSER_LIBRARY)
add_library(MultiMC_classparser STATIC ${CLASSPARSER_SOURCES} ${CLASSPARSER_HEADERS})
target_include_directories(MultiMC_classparser PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
-target_link_libraries(MultiMC_classparser MultiMC_quazip)
-qt5_use_modules(MultiMC_classparser Core)
+target_link_libraries(MultiMC_classparser MultiMC_quazip Qt5::Core)
diff --git a/libraries/ganalytics/CMakeLists.txt b/libraries/ganalytics/CMakeLists.txt
index 26b1b47cf..cf1cc5598 100644
--- a/libraries/ganalytics/CMakeLists.txt
+++ b/libraries/ganalytics/CMakeLists.txt
@@ -12,6 +12,6 @@ include/ganalytics.h
)
add_library(ganalytics STATIC ${ganalytics_SOURCES})
-qt5_use_modules(ganalytics Core Gui Network)
+target_link_libraries(ganalytics Qt5::Core Qt5::Gui Qt5::Network)
target_include_directories(ganalytics PUBLIC include)
target_link_libraries(ganalytics systeminfo)
diff --git a/libraries/iconfix/CMakeLists.txt b/libraries/iconfix/CMakeLists.txt
index 93bfdd060..d0b7aa340 100644
--- a/libraries/iconfix/CMakeLists.txt
+++ b/libraries/iconfix/CMakeLists.txt
@@ -15,7 +15,7 @@ internal/qiconloader_p.h
add_library(MultiMC_iconfix SHARED ${ICONFIX_SOURCES})
target_include_directories(MultiMC_iconfix PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_BINARY_DIR}" )
-qt5_use_modules(MultiMC_iconfix Core Widgets)
+target_link_libraries(MultiMC_iconfix Qt5::Core Qt5::Widgets)
set_target_properties(MultiMC_iconfix PROPERTIES CXX_VISIBILITY_PRESET hidden VISIBILITY_INLINES_HIDDEN 1)
generate_export_header(MultiMC_iconfix)
diff --git a/libraries/rainbow/CMakeLists.txt b/libraries/rainbow/CMakeLists.txt
index bc561800c..b7e110458 100644
--- a/libraries/rainbow/CMakeLists.txt
+++ b/libraries/rainbow/CMakeLists.txt
@@ -12,7 +12,7 @@ add_definitions(-DRAINBOW_LIBRARY)
add_library(MultiMC_rainbow SHARED ${RAINBOW_SOURCES})
target_include_directories(MultiMC_rainbow PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
-qt5_use_modules(MultiMC_rainbow Core Gui)
+target_link_libraries(MultiMC_rainbow Qt5::Core Qt5::Gui)
# Install it
install(
diff --git a/libraries/systeminfo/CMakeLists.txt b/libraries/systeminfo/CMakeLists.txt
index 393b53180..173d7b59f 100644
--- a/libraries/systeminfo/CMakeLists.txt
+++ b/libraries/systeminfo/CMakeLists.txt
@@ -19,7 +19,7 @@ elseif (UNIX)
endif()
add_library(systeminfo STATIC ${systeminfo_SOURCES})
-qt5_use_modules(systeminfo Core Gui Network)
+target_link_libraries(systeminfo Qt5::Core Qt5::Gui Qt5::Network)
target_include_directories(systeminfo PUBLIC include)
include (UnitTest)