2021-07-25 18:11:59 +01:00
|
|
|
project(application)
|
|
|
|
|
|
|
|
################################ FILES ################################
|
|
|
|
|
|
|
|
######## Sources and headers ########
|
|
|
|
|
|
|
|
set(CORE_SOURCES
|
|
|
|
# LOGIC - Base classes and infrastructure
|
|
|
|
BaseInstaller.h
|
|
|
|
BaseInstaller.cpp
|
|
|
|
BaseVersionList.h
|
|
|
|
BaseVersionList.cpp
|
|
|
|
InstanceList.h
|
|
|
|
InstanceList.cpp
|
|
|
|
InstanceTask.h
|
|
|
|
InstanceTask.cpp
|
|
|
|
LoggedProcess.h
|
|
|
|
LoggedProcess.cpp
|
|
|
|
MessageLevel.cpp
|
|
|
|
MessageLevel.h
|
|
|
|
BaseVersion.h
|
|
|
|
BaseInstance.h
|
|
|
|
BaseInstance.cpp
|
|
|
|
NullInstance.h
|
|
|
|
MMCZip.h
|
|
|
|
MMCZip.cpp
|
|
|
|
MMCStrings.h
|
|
|
|
MMCStrings.cpp
|
|
|
|
|
|
|
|
# Basic instance manipulation tasks (derived from InstanceTask)
|
|
|
|
InstanceCreationTask.h
|
|
|
|
InstanceCreationTask.cpp
|
|
|
|
InstanceCopyTask.h
|
|
|
|
InstanceCopyTask.cpp
|
|
|
|
InstanceImportTask.h
|
|
|
|
InstanceImportTask.cpp
|
|
|
|
|
2022-01-14 08:43:42 +00:00
|
|
|
# Mod downloading task
|
|
|
|
ModDownloadTask.h
|
|
|
|
ModDownloadTask.cpp
|
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
# Use tracking separate from memory management
|
|
|
|
Usable.h
|
|
|
|
|
|
|
|
# Prefix tree where node names are strings between separators
|
|
|
|
SeparatorPrefixTree.h
|
|
|
|
|
|
|
|
# String filters
|
|
|
|
Filter.h
|
|
|
|
Filter.cpp
|
|
|
|
|
|
|
|
# JSON parsing helpers
|
|
|
|
Json.h
|
|
|
|
Json.cpp
|
|
|
|
|
|
|
|
FileSystem.h
|
|
|
|
FileSystem.cpp
|
|
|
|
|
|
|
|
Exception.h
|
|
|
|
|
|
|
|
# RW lock protected map
|
|
|
|
RWStorage.h
|
|
|
|
|
|
|
|
# A variable that has an implicit default value and keeps track of changes
|
|
|
|
DefaultVariable.h
|
|
|
|
|
|
|
|
# a smart pointer wrapper intended for safer use with Qt signal/slot mechanisms
|
|
|
|
QObjectPtr.h
|
|
|
|
|
|
|
|
# Compression support
|
|
|
|
GZip.h
|
|
|
|
GZip.cpp
|
|
|
|
|
|
|
|
# Command line parameter parsing
|
|
|
|
Commandline.h
|
|
|
|
Commandline.cpp
|
|
|
|
|
|
|
|
# Version number string support
|
|
|
|
Version.h
|
|
|
|
Version.cpp
|
|
|
|
|
|
|
|
# A Recursive file system watcher
|
|
|
|
RecursiveFileSystemWatcher.h
|
|
|
|
RecursiveFileSystemWatcher.cpp
|
2021-09-28 23:20:34 +01:00
|
|
|
|
|
|
|
# Time
|
|
|
|
MMCTime.h
|
|
|
|
MMCTime.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(FileSystem_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME FileSystem) # TODO: needs testdata
|
2021-07-25 18:11:59 +01:00
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(GZip_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME GZip)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
set(PATHMATCHER_SOURCES
|
|
|
|
# Path matchers
|
|
|
|
pathmatcher/FSTreeMatcher.h
|
|
|
|
pathmatcher/IPathMatcher.h
|
|
|
|
pathmatcher/MultiMatcher.h
|
|
|
|
pathmatcher/RegexpMatcher.h
|
|
|
|
)
|
|
|
|
|
|
|
|
set(NET_SOURCES
|
|
|
|
# network stuffs
|
|
|
|
net/ByteArraySink.h
|
|
|
|
net/ChecksumValidator.h
|
|
|
|
net/Download.cpp
|
|
|
|
net/Download.h
|
|
|
|
net/FileSink.cpp
|
|
|
|
net/FileSink.h
|
|
|
|
net/HttpMetaCache.cpp
|
|
|
|
net/HttpMetaCache.h
|
|
|
|
net/MetaCacheSink.cpp
|
|
|
|
net/MetaCacheSink.h
|
|
|
|
net/NetAction.h
|
|
|
|
net/NetJob.cpp
|
|
|
|
net/NetJob.h
|
2022-07-06 20:24:14 +01:00
|
|
|
net/NetUtils.h
|
2021-07-25 18:11:59 +01:00
|
|
|
net/PasteUpload.cpp
|
|
|
|
net/PasteUpload.h
|
|
|
|
net/Sink.h
|
|
|
|
net/Validator.h
|
2022-05-28 20:53:12 +01:00
|
|
|
net/Upload.cpp
|
|
|
|
net/Upload.h
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
# Game launch logic
|
|
|
|
set(LAUNCH_SOURCES
|
2021-11-22 02:55:16 +00:00
|
|
|
launch/steps/CheckJava.cpp
|
|
|
|
launch/steps/CheckJava.h
|
2021-07-25 18:11:59 +01:00
|
|
|
launch/steps/LookupServerAddress.cpp
|
|
|
|
launch/steps/LookupServerAddress.h
|
|
|
|
launch/steps/PostLaunchCommand.cpp
|
|
|
|
launch/steps/PostLaunchCommand.h
|
|
|
|
launch/steps/PreLaunchCommand.cpp
|
|
|
|
launch/steps/PreLaunchCommand.h
|
|
|
|
launch/steps/TextPrint.cpp
|
|
|
|
launch/steps/TextPrint.h
|
|
|
|
launch/steps/Update.cpp
|
|
|
|
launch/steps/Update.h
|
2022-03-23 18:06:17 +00:00
|
|
|
launch/steps/QuitAfterGameStop.cpp
|
|
|
|
launch/steps/QuitAfterGameStop.h
|
2021-07-25 18:11:59 +01:00
|
|
|
launch/LaunchStep.cpp
|
|
|
|
launch/LaunchStep.h
|
|
|
|
launch/LaunchTask.cpp
|
|
|
|
launch/LaunchTask.h
|
|
|
|
launch/LogModel.cpp
|
|
|
|
launch/LogModel.h
|
|
|
|
)
|
|
|
|
|
|
|
|
# Old update system
|
|
|
|
set(UPDATE_SOURCES
|
|
|
|
updater/GoUpdate.h
|
|
|
|
updater/GoUpdate.cpp
|
|
|
|
updater/UpdateChecker.h
|
|
|
|
updater/UpdateChecker.cpp
|
|
|
|
updater/DownloadTask.h
|
|
|
|
updater/DownloadTask.cpp
|
2022-04-26 00:33:17 +01:00
|
|
|
updater/ExternalUpdater.h
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
|
|
|
|
2022-04-20 05:34:17 +01:00
|
|
|
set(MAC_UPDATE_SOURCES
|
2022-04-26 00:33:17 +01:00
|
|
|
updater/MacSparkleUpdater.h
|
|
|
|
updater/MacSparkleUpdater.mm
|
2022-04-20 05:34:17 +01:00
|
|
|
)
|
|
|
|
|
2022-02-10 11:55:07 +00:00
|
|
|
# Backend for the news bar... there's usually no news.
|
|
|
|
set(NEWS_SOURCES
|
|
|
|
# News System
|
|
|
|
news/NewsChecker.h
|
|
|
|
news/NewsChecker.cpp
|
|
|
|
news/NewsEntry.h
|
|
|
|
news/NewsEntry.cpp
|
|
|
|
)
|
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
# Icon interface
|
|
|
|
set(ICONS_SOURCES
|
|
|
|
# Icons System and related code
|
|
|
|
icons/IconUtils.h
|
|
|
|
icons/IconUtils.cpp
|
|
|
|
)
|
|
|
|
|
|
|
|
# Support for Minecraft instances and launch
|
|
|
|
set(MINECRAFT_SOURCES
|
|
|
|
# Minecraft support
|
2021-07-26 20:44:11 +01:00
|
|
|
minecraft/auth/AccountData.cpp
|
2021-12-04 00:18:05 +00:00
|
|
|
minecraft/auth/AccountData.h
|
|
|
|
minecraft/auth/AccountList.cpp
|
|
|
|
minecraft/auth/AccountList.h
|
2021-07-26 20:44:11 +01:00
|
|
|
minecraft/auth/AccountTask.cpp
|
2021-12-04 00:18:05 +00:00
|
|
|
minecraft/auth/AccountTask.h
|
|
|
|
minecraft/auth/AuthRequest.cpp
|
|
|
|
minecraft/auth/AuthRequest.h
|
2021-07-25 18:11:59 +01:00
|
|
|
minecraft/auth/AuthSession.cpp
|
2021-12-04 00:18:05 +00:00
|
|
|
minecraft/auth/AuthSession.h
|
|
|
|
minecraft/auth/AuthStep.cpp
|
|
|
|
minecraft/auth/AuthStep.h
|
2021-07-26 20:44:11 +01:00
|
|
|
minecraft/auth/MinecraftAccount.cpp
|
2021-12-04 00:18:05 +00:00
|
|
|
minecraft/auth/MinecraftAccount.h
|
|
|
|
minecraft/auth/Parsers.cpp
|
|
|
|
minecraft/auth/Parsers.h
|
|
|
|
minecraft/auth/Yggdrasil.cpp
|
|
|
|
minecraft/auth/Yggdrasil.h
|
|
|
|
|
|
|
|
minecraft/auth/flows/AuthFlow.cpp
|
|
|
|
minecraft/auth/flows/AuthFlow.h
|
|
|
|
minecraft/auth/flows/Mojang.cpp
|
|
|
|
minecraft/auth/flows/Mojang.h
|
|
|
|
minecraft/auth/flows/MSA.cpp
|
|
|
|
minecraft/auth/flows/MSA.h
|
2022-01-17 11:08:10 +00:00
|
|
|
minecraft/auth/flows/Offline.cpp
|
|
|
|
minecraft/auth/flows/Offline.h
|
2021-12-04 00:18:05 +00:00
|
|
|
|
2022-01-17 11:08:10 +00:00
|
|
|
minecraft/auth/steps/OfflineStep.cpp
|
|
|
|
minecraft/auth/steps/OfflineStep.h
|
2021-12-04 00:18:05 +00:00
|
|
|
minecraft/auth/steps/EntitlementsStep.cpp
|
|
|
|
minecraft/auth/steps/EntitlementsStep.h
|
|
|
|
minecraft/auth/steps/GetSkinStep.cpp
|
|
|
|
minecraft/auth/steps/GetSkinStep.h
|
|
|
|
minecraft/auth/steps/LauncherLoginStep.cpp
|
|
|
|
minecraft/auth/steps/LauncherLoginStep.h
|
|
|
|
minecraft/auth/steps/MigrationEligibilityStep.cpp
|
|
|
|
minecraft/auth/steps/MigrationEligibilityStep.h
|
|
|
|
minecraft/auth/steps/MinecraftProfileStep.cpp
|
|
|
|
minecraft/auth/steps/MinecraftProfileStep.h
|
2022-04-21 21:01:55 +01:00
|
|
|
minecraft/auth/steps/MinecraftProfileStepMojang.cpp
|
|
|
|
minecraft/auth/steps/MinecraftProfileStepMojang.h
|
2021-12-04 00:18:05 +00:00
|
|
|
minecraft/auth/steps/MSAStep.cpp
|
|
|
|
minecraft/auth/steps/MSAStep.h
|
|
|
|
minecraft/auth/steps/XboxAuthorizationStep.cpp
|
|
|
|
minecraft/auth/steps/XboxAuthorizationStep.h
|
|
|
|
minecraft/auth/steps/XboxProfileStep.cpp
|
|
|
|
minecraft/auth/steps/XboxProfileStep.h
|
|
|
|
minecraft/auth/steps/XboxUserStep.cpp
|
|
|
|
minecraft/auth/steps/XboxUserStep.h
|
|
|
|
minecraft/auth/steps/YggdrasilStep.cpp
|
|
|
|
minecraft/auth/steps/YggdrasilStep.h
|
2021-11-10 02:02:51 +00:00
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
minecraft/gameoptions/GameOptions.h
|
|
|
|
minecraft/gameoptions/GameOptions.cpp
|
|
|
|
|
|
|
|
minecraft/update/AssetUpdateTask.h
|
|
|
|
minecraft/update/AssetUpdateTask.cpp
|
|
|
|
minecraft/update/FMLLibrariesTask.cpp
|
|
|
|
minecraft/update/FMLLibrariesTask.h
|
|
|
|
minecraft/update/FoldersTask.cpp
|
|
|
|
minecraft/update/FoldersTask.h
|
|
|
|
minecraft/update/LibrariesTask.cpp
|
|
|
|
minecraft/update/LibrariesTask.h
|
|
|
|
|
|
|
|
minecraft/launch/ClaimAccount.cpp
|
|
|
|
minecraft/launch/ClaimAccount.h
|
|
|
|
minecraft/launch/CreateGameFolders.cpp
|
|
|
|
minecraft/launch/CreateGameFolders.h
|
|
|
|
minecraft/launch/ModMinecraftJar.cpp
|
|
|
|
minecraft/launch/ModMinecraftJar.h
|
|
|
|
minecraft/launch/DirectJavaLaunch.cpp
|
|
|
|
minecraft/launch/DirectJavaLaunch.h
|
|
|
|
minecraft/launch/ExtractNatives.cpp
|
|
|
|
minecraft/launch/ExtractNatives.h
|
|
|
|
minecraft/launch/LauncherPartLaunch.cpp
|
|
|
|
minecraft/launch/LauncherPartLaunch.h
|
|
|
|
minecraft/launch/MinecraftServerTarget.cpp
|
|
|
|
minecraft/launch/MinecraftServerTarget.h
|
|
|
|
minecraft/launch/PrintInstanceInfo.cpp
|
|
|
|
minecraft/launch/PrintInstanceInfo.h
|
|
|
|
minecraft/launch/ReconstructAssets.cpp
|
|
|
|
minecraft/launch/ReconstructAssets.h
|
|
|
|
minecraft/launch/ScanModFolders.cpp
|
|
|
|
minecraft/launch/ScanModFolders.h
|
|
|
|
minecraft/launch/VerifyJavaInstall.cpp
|
|
|
|
minecraft/launch/VerifyJavaInstall.h
|
|
|
|
|
|
|
|
minecraft/GradleSpecifier.h
|
|
|
|
minecraft/MinecraftInstance.cpp
|
|
|
|
minecraft/MinecraftInstance.h
|
|
|
|
minecraft/LaunchProfile.cpp
|
|
|
|
minecraft/LaunchProfile.h
|
|
|
|
minecraft/Component.cpp
|
|
|
|
minecraft/Component.h
|
|
|
|
minecraft/PackProfile.cpp
|
|
|
|
minecraft/PackProfile.h
|
|
|
|
minecraft/ComponentUpdateTask.cpp
|
|
|
|
minecraft/ComponentUpdateTask.h
|
|
|
|
minecraft/MinecraftLoadAndCheck.h
|
|
|
|
minecraft/MinecraftLoadAndCheck.cpp
|
|
|
|
minecraft/MinecraftUpdate.h
|
|
|
|
minecraft/MinecraftUpdate.cpp
|
|
|
|
minecraft/MojangVersionFormat.cpp
|
|
|
|
minecraft/MojangVersionFormat.h
|
|
|
|
minecraft/Rule.cpp
|
|
|
|
minecraft/Rule.h
|
|
|
|
minecraft/OneSixVersionFormat.cpp
|
|
|
|
minecraft/OneSixVersionFormat.h
|
|
|
|
minecraft/OpSys.cpp
|
|
|
|
minecraft/OpSys.h
|
|
|
|
minecraft/ParseUtils.cpp
|
|
|
|
minecraft/ParseUtils.h
|
|
|
|
minecraft/ProfileUtils.cpp
|
|
|
|
minecraft/ProfileUtils.h
|
|
|
|
minecraft/Library.cpp
|
|
|
|
minecraft/Library.h
|
|
|
|
minecraft/MojangDownloadInfo.h
|
|
|
|
minecraft/VersionFile.cpp
|
|
|
|
minecraft/VersionFile.h
|
|
|
|
minecraft/VersionFilterData.h
|
|
|
|
minecraft/VersionFilterData.cpp
|
|
|
|
minecraft/World.h
|
|
|
|
minecraft/World.cpp
|
|
|
|
minecraft/WorldList.h
|
|
|
|
minecraft/WorldList.cpp
|
|
|
|
|
2022-04-16 17:27:29 +01:00
|
|
|
minecraft/mod/MetadataHandler.h
|
2021-07-25 18:11:59 +01:00
|
|
|
minecraft/mod/Mod.h
|
|
|
|
minecraft/mod/Mod.cpp
|
|
|
|
minecraft/mod/ModDetails.h
|
|
|
|
minecraft/mod/ModFolderModel.h
|
|
|
|
minecraft/mod/ModFolderModel.cpp
|
2022-08-09 05:53:50 +01:00
|
|
|
minecraft/mod/Resource.h
|
|
|
|
minecraft/mod/Resource.cpp
|
refactor: move general code from mod model to its own model
This aims to continue decoupling other types of resources (e.g. resource
packs, shader packs, etc) from mods, so that we don't have to
continuously watch our backs for changes to one of them affecting the
others.
To do so, this creates a more general list model for resources, based on
the mods one, that allows you to extend it with functionality for other
resources.
I had to do some template and preprocessor stuff to get around the
QObject limitation of not allowing templated classes, so that's sadge :c
On the other hand, I tried cleaning up most general-purpose code in the
mod model, and added some documentation, because it looks nice :D
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-09 05:58:22 +01:00
|
|
|
minecraft/mod/ResourceFolderModel.h
|
|
|
|
minecraft/mod/ResourceFolderModel.cpp
|
2022-08-29 02:29:52 +01:00
|
|
|
minecraft/mod/ResourcePack.h
|
|
|
|
minecraft/mod/ResourcePack.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
minecraft/mod/ResourcePackFolderModel.h
|
|
|
|
minecraft/mod/ResourcePackFolderModel.cpp
|
|
|
|
minecraft/mod/TexturePackFolderModel.h
|
|
|
|
minecraft/mod/TexturePackFolderModel.cpp
|
2022-08-10 18:48:34 +01:00
|
|
|
minecraft/mod/ShaderPackFolderModel.h
|
refactor: move general code from mod model to its own model
This aims to continue decoupling other types of resources (e.g. resource
packs, shader packs, etc) from mods, so that we don't have to
continuously watch our backs for changes to one of them affecting the
others.
To do so, this creates a more general list model for resources, based on
the mods one, that allows you to extend it with functionality for other
resources.
I had to do some template and preprocessor stuff to get around the
QObject limitation of not allowing templated classes, so that's sadge :c
On the other hand, I tried cleaning up most general-purpose code in the
mod model, and added some documentation, because it looks nice :D
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-09 05:58:22 +01:00
|
|
|
minecraft/mod/tasks/BasicFolderLoadTask.h
|
2022-04-16 00:35:17 +01:00
|
|
|
minecraft/mod/tasks/ModFolderLoadTask.h
|
|
|
|
minecraft/mod/tasks/ModFolderLoadTask.cpp
|
|
|
|
minecraft/mod/tasks/LocalModParseTask.h
|
|
|
|
minecraft/mod/tasks/LocalModParseTask.cpp
|
|
|
|
minecraft/mod/tasks/LocalModUpdateTask.h
|
|
|
|
minecraft/mod/tasks/LocalModUpdateTask.cpp
|
2022-08-29 02:33:44 +01:00
|
|
|
minecraft/mod/tasks/LocalResourcePackParseTask.h
|
|
|
|
minecraft/mod/tasks/LocalResourcePackParseTask.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# Assets
|
|
|
|
minecraft/AssetsUtils.h
|
|
|
|
minecraft/AssetsUtils.cpp
|
|
|
|
|
|
|
|
# Minecraft services
|
2021-08-20 00:34:32 +01:00
|
|
|
minecraft/services/CapeChange.cpp
|
|
|
|
minecraft/services/CapeChange.h
|
2021-07-25 18:11:59 +01:00
|
|
|
minecraft/services/SkinUpload.cpp
|
|
|
|
minecraft/services/SkinUpload.h
|
|
|
|
minecraft/services/SkinDelete.cpp
|
|
|
|
minecraft/services/SkinDelete.h
|
|
|
|
|
|
|
|
mojang/PackageManifest.h
|
|
|
|
mojang/PackageManifest.cpp
|
2022-04-06 07:22:24 +01:00
|
|
|
minecraft/Agent.h)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(minecraft/GradleSpecifier_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME GradleSpecifier)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
2022-03-23 18:48:03 +00:00
|
|
|
if(BUILD_TESTING)
|
|
|
|
add_executable(PackageManifest
|
|
|
|
mojang/PackageManifest_test.cpp
|
|
|
|
)
|
|
|
|
target_link_libraries(PackageManifest
|
|
|
|
Launcher_logic
|
2022-05-02 20:34:09 +01:00
|
|
|
Qt${QT_VERSION_MAJOR}::Test
|
2022-03-23 18:48:03 +00:00
|
|
|
)
|
|
|
|
target_include_directories(PackageManifest
|
|
|
|
PRIVATE ../cmake/UnitTest/
|
|
|
|
)
|
|
|
|
add_test(
|
|
|
|
NAME PackageManifest
|
|
|
|
COMMAND PackageManifest
|
|
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
|
|
|
)
|
|
|
|
endif()
|
2021-07-25 18:11:59 +01:00
|
|
|
|
2022-06-12 00:46:30 +01:00
|
|
|
# TODO: needs minecraft/testdata
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(minecraft/MojangVersionFormat_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME MojangVersionFormat)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(minecraft/Library_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME Library)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# FIXME: shares data with FileSystem test
|
2022-06-12 00:46:30 +01:00
|
|
|
# TODO: needs testdata
|
2022-08-12 21:06:20 +01:00
|
|
|
ecm_add_test(minecraft/mod/ResourceFolderModel_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
|
|
|
TEST_NAME ResourceFolderModel)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
2022-08-30 18:55:37 +01:00
|
|
|
ecm_add_test(minecraft/mod/ResourcePackParse_test.cpp
|
|
|
|
LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
|
|
|
TEST_NAME ResourcePackParse)
|
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(minecraft/ParseUtils_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME ParseUtils)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# the screenshots feature
|
|
|
|
set(SCREENSHOTS_SOURCES
|
|
|
|
screenshots/Screenshot.h
|
|
|
|
screenshots/ImgurUpload.h
|
|
|
|
screenshots/ImgurUpload.cpp
|
|
|
|
screenshots/ImgurAlbumCreation.h
|
|
|
|
screenshots/ImgurAlbumCreation.cpp
|
|
|
|
)
|
|
|
|
|
|
|
|
set(TASKS_SOURCES
|
|
|
|
# Tasks
|
|
|
|
tasks/Task.h
|
|
|
|
tasks/Task.cpp
|
2022-06-12 17:07:11 +01:00
|
|
|
tasks/ConcurrentTask.h
|
|
|
|
tasks/ConcurrentTask.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
tasks/SequentialTask.h
|
|
|
|
tasks/SequentialTask.cpp
|
2022-06-02 23:34:08 +01:00
|
|
|
tasks/MultipleOptionsTask.h
|
|
|
|
tasks/MultipleOptionsTask.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(tasks/Task_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME Task)
|
2022-04-07 23:03:29 +01:00
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
set(SETTINGS_SOURCES
|
|
|
|
# Settings
|
|
|
|
settings/INIFile.cpp
|
|
|
|
settings/INIFile.h
|
|
|
|
settings/INISettingsObject.cpp
|
|
|
|
settings/INISettingsObject.h
|
|
|
|
settings/OverrideSetting.cpp
|
|
|
|
settings/OverrideSetting.h
|
|
|
|
settings/PassthroughSetting.cpp
|
|
|
|
settings/PassthroughSetting.h
|
|
|
|
settings/Setting.cpp
|
|
|
|
settings/Setting.h
|
|
|
|
settings/SettingsObject.cpp
|
|
|
|
settings/SettingsObject.h
|
|
|
|
)
|
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(settings/INIFile_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME INIFile)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
set(JAVA_SOURCES
|
|
|
|
java/JavaChecker.h
|
|
|
|
java/JavaChecker.cpp
|
|
|
|
java/JavaCheckerJob.h
|
|
|
|
java/JavaCheckerJob.cpp
|
|
|
|
java/JavaInstall.h
|
|
|
|
java/JavaInstall.cpp
|
|
|
|
java/JavaInstallList.h
|
|
|
|
java/JavaInstallList.cpp
|
|
|
|
java/JavaUtils.h
|
|
|
|
java/JavaUtils.cpp
|
|
|
|
java/JavaVersion.h
|
|
|
|
java/JavaVersion.cpp
|
|
|
|
)
|
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(java/JavaVersion_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME JavaVersion)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
set(TRANSLATIONS_SOURCES
|
|
|
|
translations/TranslationsModel.h
|
|
|
|
translations/TranslationsModel.cpp
|
|
|
|
translations/POTranslator.h
|
|
|
|
translations/POTranslator.cpp
|
|
|
|
)
|
|
|
|
|
|
|
|
set(TOOLS_SOURCES
|
|
|
|
# Tools
|
|
|
|
tools/BaseExternalTool.cpp
|
|
|
|
tools/BaseExternalTool.h
|
|
|
|
tools/BaseProfiler.cpp
|
|
|
|
tools/BaseProfiler.h
|
|
|
|
tools/JProfiler.cpp
|
|
|
|
tools/JProfiler.h
|
|
|
|
tools/JVisualVM.cpp
|
|
|
|
tools/JVisualVM.h
|
|
|
|
tools/MCEditTool.cpp
|
|
|
|
tools/MCEditTool.h
|
|
|
|
)
|
|
|
|
|
|
|
|
set(META_SOURCES
|
|
|
|
# Metadata sources
|
|
|
|
meta/JsonFormat.cpp
|
|
|
|
meta/JsonFormat.h
|
|
|
|
meta/BaseEntity.cpp
|
|
|
|
meta/BaseEntity.h
|
|
|
|
meta/VersionList.cpp
|
|
|
|
meta/VersionList.h
|
|
|
|
meta/Version.cpp
|
|
|
|
meta/Version.h
|
|
|
|
meta/Index.cpp
|
|
|
|
meta/Index.h
|
|
|
|
)
|
|
|
|
|
2022-03-07 19:46:08 +00:00
|
|
|
set(API_SOURCES
|
2022-04-20 01:10:12 +01:00
|
|
|
modplatform/ModIndex.h
|
|
|
|
modplatform/ModIndex.cpp
|
|
|
|
|
2022-03-07 19:46:08 +00:00
|
|
|
modplatform/ModAPI.h
|
|
|
|
|
2022-06-03 23:08:01 +01:00
|
|
|
modplatform/EnsureMetadataTask.h
|
|
|
|
modplatform/EnsureMetadataTask.cpp
|
|
|
|
|
2022-06-04 01:26:26 +01:00
|
|
|
modplatform/CheckUpdateTask.h
|
|
|
|
|
2022-03-07 19:46:08 +00:00
|
|
|
modplatform/flame/FlameAPI.h
|
2022-06-03 23:06:51 +01:00
|
|
|
modplatform/flame/FlameAPI.cpp
|
2022-03-07 19:46:08 +00:00
|
|
|
modplatform/modrinth/ModrinthAPI.h
|
2022-06-03 23:04:49 +01:00
|
|
|
modplatform/modrinth/ModrinthAPI.cpp
|
2022-03-07 19:46:08 +00:00
|
|
|
modplatform/helpers/NetworkModAPI.h
|
|
|
|
modplatform/helpers/NetworkModAPI.cpp
|
2022-07-24 19:11:41 +01:00
|
|
|
modplatform/helpers/HashUtils.h
|
|
|
|
modplatform/helpers/HashUtils.cpp
|
2022-03-07 19:46:08 +00:00
|
|
|
)
|
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
set(FTB_SOURCES
|
|
|
|
modplatform/legacy_ftb/PackFetchTask.h
|
|
|
|
modplatform/legacy_ftb/PackFetchTask.cpp
|
|
|
|
modplatform/legacy_ftb/PackInstallTask.h
|
|
|
|
modplatform/legacy_ftb/PackInstallTask.cpp
|
|
|
|
modplatform/legacy_ftb/PrivatePackManager.h
|
|
|
|
modplatform/legacy_ftb/PrivatePackManager.cpp
|
|
|
|
|
|
|
|
modplatform/legacy_ftb/PackHelpers.h
|
|
|
|
)
|
|
|
|
|
|
|
|
set(FLAME_SOURCES
|
|
|
|
# Flame
|
|
|
|
modplatform/flame/FlamePackIndex.cpp
|
|
|
|
modplatform/flame/FlamePackIndex.h
|
2022-01-16 10:20:21 +00:00
|
|
|
modplatform/flame/FlameModIndex.cpp
|
|
|
|
modplatform/flame/FlameModIndex.h
|
2021-07-25 18:11:59 +01:00
|
|
|
modplatform/flame/PackManifest.h
|
|
|
|
modplatform/flame/PackManifest.cpp
|
|
|
|
modplatform/flame/FileResolvingTask.h
|
|
|
|
modplatform/flame/FileResolvingTask.cpp
|
2022-06-04 01:26:26 +01:00
|
|
|
modplatform/flame/FlameCheckUpdate.cpp
|
|
|
|
modplatform/flame/FlameCheckUpdate.h
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
|
|
|
|
2022-01-14 08:43:42 +00:00
|
|
|
set(MODRINTH_SOURCES
|
|
|
|
modplatform/modrinth/ModrinthPackIndex.cpp
|
|
|
|
modplatform/modrinth/ModrinthPackIndex.h
|
2022-05-14 18:56:38 +01:00
|
|
|
modplatform/modrinth/ModrinthPackManifest.cpp
|
|
|
|
modplatform/modrinth/ModrinthPackManifest.h
|
2022-06-04 01:26:26 +01:00
|
|
|
modplatform/modrinth/ModrinthCheckUpdate.cpp
|
|
|
|
modplatform/modrinth/ModrinthCheckUpdate.h
|
2022-01-14 08:43:42 +00:00
|
|
|
)
|
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
set(MODPACKSCH_SOURCES
|
|
|
|
modplatform/modpacksch/FTBPackInstallTask.h
|
|
|
|
modplatform/modpacksch/FTBPackInstallTask.cpp
|
|
|
|
modplatform/modpacksch/FTBPackManifest.h
|
|
|
|
modplatform/modpacksch/FTBPackManifest.cpp
|
|
|
|
)
|
|
|
|
|
2022-04-13 23:16:36 +01:00
|
|
|
set(PACKWIZ_SOURCES
|
|
|
|
modplatform/packwiz/Packwiz.h
|
|
|
|
modplatform/packwiz/Packwiz.cpp
|
|
|
|
)
|
|
|
|
|
2022-06-12 00:46:30 +01:00
|
|
|
# TODO: needs modplatform/packwiz/testdata
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(modplatform/packwiz/Packwiz_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME Packwiz)
|
2022-04-17 15:40:41 +01:00
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
set(TECHNIC_SOURCES
|
|
|
|
modplatform/technic/SingleZipPackInstallTask.h
|
|
|
|
modplatform/technic/SingleZipPackInstallTask.cpp
|
|
|
|
modplatform/technic/SolderPackInstallTask.h
|
|
|
|
modplatform/technic/SolderPackInstallTask.cpp
|
2022-04-01 23:40:20 +01:00
|
|
|
modplatform/technic/SolderPackManifest.h
|
|
|
|
modplatform/technic/SolderPackManifest.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
modplatform/technic/TechnicPackProcessor.h
|
|
|
|
modplatform/technic/TechnicPackProcessor.cpp
|
|
|
|
)
|
|
|
|
|
|
|
|
set(ATLAUNCHER_SOURCES
|
|
|
|
modplatform/atlauncher/ATLPackIndex.cpp
|
|
|
|
modplatform/atlauncher/ATLPackIndex.h
|
|
|
|
modplatform/atlauncher/ATLPackInstallTask.cpp
|
|
|
|
modplatform/atlauncher/ATLPackInstallTask.h
|
|
|
|
modplatform/atlauncher/ATLPackManifest.cpp
|
|
|
|
modplatform/atlauncher/ATLPackManifest.h
|
2022-04-07 19:46:41 +01:00
|
|
|
modplatform/atlauncher/ATLShareCode.cpp
|
|
|
|
modplatform/atlauncher/ATLShareCode.h
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
ecm_add_test(meta/Index_test.cpp LINK_LIBRARIES Launcher_logic Qt${QT_VERSION_MAJOR}::Test
|
2022-06-12 00:46:30 +01:00
|
|
|
TEST_NAME Index)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
################################ COMPILE ################################
|
|
|
|
|
|
|
|
# we need zlib
|
|
|
|
find_package(ZLIB REQUIRED)
|
|
|
|
|
|
|
|
set(LOGIC_SOURCES
|
|
|
|
${CORE_SOURCES}
|
|
|
|
${PATHMATCHER_SOURCES}
|
|
|
|
${NET_SOURCES}
|
|
|
|
${LAUNCH_SOURCES}
|
|
|
|
${UPDATE_SOURCES}
|
|
|
|
${NEWS_SOURCES}
|
|
|
|
${MINECRAFT_SOURCES}
|
|
|
|
${SCREENSHOTS_SOURCES}
|
|
|
|
${TASKS_SOURCES}
|
|
|
|
${SETTINGS_SOURCES}
|
|
|
|
${JAVA_SOURCES}
|
|
|
|
${TRANSLATIONS_SOURCES}
|
|
|
|
${TOOLS_SOURCES}
|
|
|
|
${META_SOURCES}
|
|
|
|
${ICONS_SOURCES}
|
2022-03-07 19:46:08 +00:00
|
|
|
${API_SOURCES}
|
2021-07-25 18:11:59 +01:00
|
|
|
${FTB_SOURCES}
|
|
|
|
${FLAME_SOURCES}
|
2022-01-14 08:43:42 +00:00
|
|
|
${MODRINTH_SOURCES}
|
2021-07-25 18:11:59 +01:00
|
|
|
${MODPACKSCH_SOURCES}
|
2022-04-13 23:16:36 +01:00
|
|
|
${PACKWIZ_SOURCES}
|
2021-07-25 18:11:59 +01:00
|
|
|
${TECHNIC_SOURCES}
|
|
|
|
${ATLAUNCHER_SOURCES}
|
|
|
|
)
|
|
|
|
|
2022-04-20 05:34:17 +01:00
|
|
|
if(APPLE)
|
|
|
|
set (LOGIC_SOURCES ${LOGIC_SOURCES} ${MAC_UPDATE_SOURCES})
|
|
|
|
endif()
|
|
|
|
|
2021-10-17 23:47:02 +01:00
|
|
|
SET(LAUNCHER_SOURCES
|
2021-07-25 18:11:59 +01:00
|
|
|
# Application base
|
2021-11-20 15:22:22 +00:00
|
|
|
Application.h
|
|
|
|
Application.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
UpdateController.cpp
|
|
|
|
UpdateController.h
|
2021-11-20 15:22:22 +00:00
|
|
|
ApplicationMessage.h
|
|
|
|
ApplicationMessage.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# GUI - general utilities
|
|
|
|
DesktopServices.h
|
|
|
|
DesktopServices.cpp
|
|
|
|
VersionProxyModel.h
|
|
|
|
VersionProxyModel.cpp
|
|
|
|
HoeDown.h
|
|
|
|
|
|
|
|
# Super secret!
|
|
|
|
KonamiCode.h
|
|
|
|
KonamiCode.cpp
|
|
|
|
|
2021-11-22 02:55:16 +00:00
|
|
|
# Bundled resources
|
|
|
|
resources/backgrounds/backgrounds.qrc
|
|
|
|
resources/multimc/multimc.qrc
|
|
|
|
resources/pe_dark/pe_dark.qrc
|
|
|
|
resources/pe_light/pe_light.qrc
|
|
|
|
resources/pe_colored/pe_colored.qrc
|
|
|
|
resources/pe_blue/pe_blue.qrc
|
|
|
|
resources/OSX/OSX.qrc
|
|
|
|
resources/iOS/iOS.qrc
|
|
|
|
resources/flat/flat.qrc
|
|
|
|
resources/documents/documents.qrc
|
|
|
|
../${Launcher_Branding_LogoQRC}
|
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
# Icons
|
|
|
|
icons/MMCIcon.h
|
|
|
|
icons/MMCIcon.cpp
|
|
|
|
icons/IconList.h
|
|
|
|
icons/IconList.cpp
|
|
|
|
|
|
|
|
# GUI - windows
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/GuiUtil.h
|
|
|
|
ui/GuiUtil.cpp
|
|
|
|
ui/ColorCache.h
|
|
|
|
ui/ColorCache.cpp
|
|
|
|
ui/MainWindow.h
|
|
|
|
ui/MainWindow.cpp
|
|
|
|
ui/InstanceWindow.h
|
|
|
|
ui/InstanceWindow.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# FIXME: maybe find a better home for this.
|
|
|
|
SkinUtils.cpp
|
|
|
|
SkinUtils.h
|
|
|
|
|
|
|
|
# GUI - setup wizard
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/setupwizard/SetupWizard.h
|
|
|
|
ui/setupwizard/SetupWizard.cpp
|
|
|
|
ui/setupwizard/BaseWizardPage.h
|
|
|
|
ui/setupwizard/JavaWizardPage.cpp
|
|
|
|
ui/setupwizard/JavaWizardPage.h
|
|
|
|
ui/setupwizard/LanguageWizardPage.cpp
|
|
|
|
ui/setupwizard/LanguageWizardPage.h
|
2022-05-17 05:00:06 +01:00
|
|
|
ui/setupwizard/PasteWizardPage.cpp
|
|
|
|
ui/setupwizard/PasteWizardPage.h
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# GUI - themes
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/themes/FusionTheme.cpp
|
|
|
|
ui/themes/FusionTheme.h
|
|
|
|
ui/themes/BrightTheme.cpp
|
|
|
|
ui/themes/BrightTheme.h
|
|
|
|
ui/themes/CustomTheme.cpp
|
|
|
|
ui/themes/CustomTheme.h
|
|
|
|
ui/themes/DarkTheme.cpp
|
|
|
|
ui/themes/DarkTheme.h
|
|
|
|
ui/themes/ITheme.cpp
|
|
|
|
ui/themes/ITheme.h
|
|
|
|
ui/themes/SystemTheme.cpp
|
|
|
|
ui/themes/SystemTheme.h
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# Processes
|
|
|
|
LaunchController.h
|
|
|
|
LaunchController.cpp
|
|
|
|
|
|
|
|
# page provider for instances
|
|
|
|
InstancePageProvider.h
|
|
|
|
|
|
|
|
# Common java checking UI
|
|
|
|
JavaCommon.h
|
|
|
|
JavaCommon.cpp
|
|
|
|
|
|
|
|
# GUI - paged dialog base
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/pages/BasePage.h
|
|
|
|
ui/pages/BasePageContainer.h
|
|
|
|
ui/pages/BasePageProvider.h
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# GUI - instance pages
|
refactor: Create a more clear hierarchy for some instance pages
Previously, the Shaders, Texture packs and Resource packs tabs had as
parent the ModFolderPage, making it so that making changes only to the
Mods page would require checking the id of the page for the correct one.
This was hackish and error-prone.
Now, those pages all inherit from a single class, ExternalResourcesPage,
that handles the basic behaviour of all of them, while allowing for
individual modification in code.
This is still not a clear separation, since internally, all those
resources are derived from Mods, so for now there's still some awkward
common code :/
2022-03-11 21:03:21 +00:00
|
|
|
ui/pages/instance/ExternalResourcesPage.cpp
|
|
|
|
ui/pages/instance/ExternalResourcesPage.h
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/pages/instance/GameOptionsPage.cpp
|
|
|
|
ui/pages/instance/GameOptionsPage.h
|
|
|
|
ui/pages/instance/VersionPage.cpp
|
|
|
|
ui/pages/instance/VersionPage.h
|
|
|
|
ui/pages/instance/TexturePackPage.h
|
|
|
|
ui/pages/instance/ResourcePackPage.h
|
|
|
|
ui/pages/instance/ShaderPackPage.h
|
|
|
|
ui/pages/instance/ModFolderPage.cpp
|
|
|
|
ui/pages/instance/ModFolderPage.h
|
|
|
|
ui/pages/instance/NotesPage.cpp
|
|
|
|
ui/pages/instance/NotesPage.h
|
|
|
|
ui/pages/instance/LogPage.cpp
|
|
|
|
ui/pages/instance/LogPage.h
|
|
|
|
ui/pages/instance/InstanceSettingsPage.cpp
|
|
|
|
ui/pages/instance/InstanceSettingsPage.h
|
|
|
|
ui/pages/instance/ScreenshotsPage.cpp
|
|
|
|
ui/pages/instance/ScreenshotsPage.h
|
|
|
|
ui/pages/instance/OtherLogsPage.cpp
|
|
|
|
ui/pages/instance/OtherLogsPage.h
|
|
|
|
ui/pages/instance/ServersPage.cpp
|
|
|
|
ui/pages/instance/ServersPage.h
|
|
|
|
ui/pages/instance/WorldListPage.cpp
|
|
|
|
ui/pages/instance/WorldListPage.h
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# GUI - global settings pages
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/pages/global/AccountListPage.cpp
|
|
|
|
ui/pages/global/AccountListPage.h
|
|
|
|
ui/pages/global/CustomCommandsPage.cpp
|
|
|
|
ui/pages/global/CustomCommandsPage.h
|
|
|
|
ui/pages/global/ExternalToolsPage.cpp
|
|
|
|
ui/pages/global/ExternalToolsPage.h
|
|
|
|
ui/pages/global/JavaPage.cpp
|
|
|
|
ui/pages/global/JavaPage.h
|
|
|
|
ui/pages/global/LanguagePage.cpp
|
|
|
|
ui/pages/global/LanguagePage.h
|
|
|
|
ui/pages/global/MinecraftPage.cpp
|
|
|
|
ui/pages/global/MinecraftPage.h
|
|
|
|
ui/pages/global/LauncherPage.cpp
|
|
|
|
ui/pages/global/LauncherPage.h
|
|
|
|
ui/pages/global/ProxyPage.cpp
|
|
|
|
ui/pages/global/ProxyPage.h
|
2022-02-12 19:08:50 +00:00
|
|
|
ui/pages/global/APIPage.cpp
|
|
|
|
ui/pages/global/APIPage.h
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# GUI - platform pages
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/pages/modplatform/VanillaPage.cpp
|
|
|
|
ui/pages/modplatform/VanillaPage.h
|
|
|
|
|
2022-03-03 00:17:10 +00:00
|
|
|
ui/pages/modplatform/ModPage.cpp
|
|
|
|
ui/pages/modplatform/ModPage.h
|
|
|
|
ui/pages/modplatform/ModModel.cpp
|
|
|
|
ui/pages/modplatform/ModModel.h
|
|
|
|
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/pages/modplatform/atlauncher/AtlFilterModel.cpp
|
|
|
|
ui/pages/modplatform/atlauncher/AtlFilterModel.h
|
|
|
|
ui/pages/modplatform/atlauncher/AtlListModel.cpp
|
|
|
|
ui/pages/modplatform/atlauncher/AtlListModel.h
|
|
|
|
ui/pages/modplatform/atlauncher/AtlOptionalModDialog.cpp
|
|
|
|
ui/pages/modplatform/atlauncher/AtlOptionalModDialog.h
|
|
|
|
ui/pages/modplatform/atlauncher/AtlPage.cpp
|
|
|
|
ui/pages/modplatform/atlauncher/AtlPage.h
|
2022-05-28 22:07:13 +01:00
|
|
|
ui/pages/modplatform/atlauncher/AtlUserInteractionSupportImpl.cpp
|
|
|
|
ui/pages/modplatform/atlauncher/AtlUserInteractionSupportImpl.h
|
2021-11-22 02:55:16 +00:00
|
|
|
|
|
|
|
ui/pages/modplatform/ftb/FtbFilterModel.cpp
|
|
|
|
ui/pages/modplatform/ftb/FtbFilterModel.h
|
|
|
|
ui/pages/modplatform/ftb/FtbListModel.cpp
|
|
|
|
ui/pages/modplatform/ftb/FtbListModel.h
|
|
|
|
ui/pages/modplatform/ftb/FtbPage.cpp
|
|
|
|
ui/pages/modplatform/ftb/FtbPage.h
|
|
|
|
|
|
|
|
ui/pages/modplatform/legacy_ftb/Page.cpp
|
|
|
|
ui/pages/modplatform/legacy_ftb/Page.h
|
|
|
|
ui/pages/modplatform/legacy_ftb/ListModel.h
|
|
|
|
ui/pages/modplatform/legacy_ftb/ListModel.cpp
|
|
|
|
|
|
|
|
ui/pages/modplatform/flame/FlameModel.cpp
|
|
|
|
ui/pages/modplatform/flame/FlameModel.h
|
|
|
|
ui/pages/modplatform/flame/FlamePage.cpp
|
|
|
|
ui/pages/modplatform/flame/FlamePage.h
|
2022-01-16 10:20:21 +00:00
|
|
|
ui/pages/modplatform/flame/FlameModModel.cpp
|
|
|
|
ui/pages/modplatform/flame/FlameModModel.h
|
|
|
|
ui/pages/modplatform/flame/FlameModPage.cpp
|
|
|
|
ui/pages/modplatform/flame/FlameModPage.h
|
2021-11-22 02:55:16 +00:00
|
|
|
|
2022-01-31 14:25:36 +00:00
|
|
|
ui/pages/modplatform/modrinth/ModrinthPage.cpp
|
|
|
|
ui/pages/modplatform/modrinth/ModrinthPage.h
|
2022-05-15 00:17:05 +01:00
|
|
|
ui/pages/modplatform/modrinth/ModrinthModel.cpp
|
|
|
|
ui/pages/modplatform/modrinth/ModrinthModel.h
|
2022-01-31 14:25:36 +00:00
|
|
|
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/pages/modplatform/technic/TechnicModel.cpp
|
|
|
|
ui/pages/modplatform/technic/TechnicModel.h
|
|
|
|
ui/pages/modplatform/technic/TechnicPage.cpp
|
|
|
|
ui/pages/modplatform/technic/TechnicPage.h
|
|
|
|
|
|
|
|
ui/pages/modplatform/ImportPage.cpp
|
|
|
|
ui/pages/modplatform/ImportPage.h
|
2021-07-25 18:11:59 +01:00
|
|
|
|
2022-05-14 18:46:52 +01:00
|
|
|
ui/pages/modplatform/modrinth/ModrinthModModel.cpp
|
|
|
|
ui/pages/modplatform/modrinth/ModrinthModModel.h
|
|
|
|
ui/pages/modplatform/modrinth/ModrinthModPage.cpp
|
|
|
|
ui/pages/modplatform/modrinth/ModrinthModPage.h
|
2022-01-14 08:43:42 +00:00
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
# GUI - dialogs
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/dialogs/AboutDialog.cpp
|
|
|
|
ui/dialogs/AboutDialog.h
|
|
|
|
ui/dialogs/ProfileSelectDialog.cpp
|
|
|
|
ui/dialogs/ProfileSelectDialog.h
|
|
|
|
ui/dialogs/ProfileSetupDialog.cpp
|
|
|
|
ui/dialogs/ProfileSetupDialog.h
|
|
|
|
ui/dialogs/CopyInstanceDialog.cpp
|
|
|
|
ui/dialogs/CopyInstanceDialog.h
|
|
|
|
ui/dialogs/CustomMessageBox.cpp
|
|
|
|
ui/dialogs/CustomMessageBox.h
|
|
|
|
ui/dialogs/EditAccountDialog.cpp
|
|
|
|
ui/dialogs/EditAccountDialog.h
|
|
|
|
ui/dialogs/ExportInstanceDialog.cpp
|
|
|
|
ui/dialogs/ExportInstanceDialog.h
|
|
|
|
ui/dialogs/IconPickerDialog.cpp
|
|
|
|
ui/dialogs/IconPickerDialog.h
|
|
|
|
ui/dialogs/LoginDialog.cpp
|
|
|
|
ui/dialogs/LoginDialog.h
|
|
|
|
ui/dialogs/MSALoginDialog.cpp
|
|
|
|
ui/dialogs/MSALoginDialog.h
|
2022-01-17 11:08:10 +00:00
|
|
|
ui/dialogs/OfflineLoginDialog.cpp
|
|
|
|
ui/dialogs/OfflineLoginDialog.h
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/dialogs/NewComponentDialog.cpp
|
|
|
|
ui/dialogs/NewComponentDialog.h
|
|
|
|
ui/dialogs/NewInstanceDialog.cpp
|
|
|
|
ui/dialogs/NewInstanceDialog.h
|
2022-06-26 00:15:16 +01:00
|
|
|
ui/dialogs/NewsDialog.cpp
|
|
|
|
ui/dialogs/NewsDialog.h
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/pagedialog/PageDialog.cpp
|
|
|
|
ui/pagedialog/PageDialog.h
|
|
|
|
ui/dialogs/ProgressDialog.cpp
|
|
|
|
ui/dialogs/ProgressDialog.h
|
2022-03-13 14:50:18 +00:00
|
|
|
ui/dialogs/ReviewMessageBox.cpp
|
|
|
|
ui/dialogs/ReviewMessageBox.h
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/dialogs/UpdateDialog.cpp
|
|
|
|
ui/dialogs/UpdateDialog.h
|
|
|
|
ui/dialogs/VersionSelectDialog.cpp
|
|
|
|
ui/dialogs/VersionSelectDialog.h
|
|
|
|
ui/dialogs/SkinUploadDialog.cpp
|
|
|
|
ui/dialogs/SkinUploadDialog.h
|
2022-01-14 08:43:42 +00:00
|
|
|
ui/dialogs/ModDownloadDialog.cpp
|
|
|
|
ui/dialogs/ModDownloadDialog.h
|
2022-05-28 20:53:12 +01:00
|
|
|
ui/dialogs/ScrollMessageBox.cpp
|
|
|
|
ui/dialogs/ScrollMessageBox.h
|
2022-07-17 00:14:54 +01:00
|
|
|
ui/dialogs/BlockedModsDialog.cpp
|
|
|
|
ui/dialogs/BlockedModsDialog.h
|
2022-05-30 17:30:39 +01:00
|
|
|
ui/dialogs/ChooseProviderDialog.h
|
|
|
|
ui/dialogs/ChooseProviderDialog.cpp
|
2022-06-04 20:22:46 +01:00
|
|
|
ui/dialogs/ModUpdateDialog.cpp
|
|
|
|
ui/dialogs/ModUpdateDialog.h
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# GUI - widgets
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/widgets/Common.cpp
|
|
|
|
ui/widgets/Common.h
|
|
|
|
ui/widgets/CustomCommands.cpp
|
|
|
|
ui/widgets/CustomCommands.h
|
|
|
|
ui/widgets/DropLabel.cpp
|
|
|
|
ui/widgets/DropLabel.h
|
|
|
|
ui/widgets/FocusLineEdit.cpp
|
|
|
|
ui/widgets/FocusLineEdit.h
|
|
|
|
ui/widgets/IconLabel.cpp
|
|
|
|
ui/widgets/IconLabel.h
|
|
|
|
ui/widgets/JavaSettingsWidget.cpp
|
|
|
|
ui/widgets/JavaSettingsWidget.h
|
|
|
|
ui/widgets/LabeledToolButton.cpp
|
|
|
|
ui/widgets/LabeledToolButton.h
|
|
|
|
ui/widgets/LanguageSelectionWidget.cpp
|
|
|
|
ui/widgets/LanguageSelectionWidget.h
|
|
|
|
ui/widgets/LineSeparator.cpp
|
|
|
|
ui/widgets/LineSeparator.h
|
|
|
|
ui/widgets/LogView.cpp
|
|
|
|
ui/widgets/LogView.h
|
2022-08-10 18:48:34 +01:00
|
|
|
ui/widgets/InfoFrame.cpp
|
|
|
|
ui/widgets/InfoFrame.h
|
2022-04-14 14:52:23 +01:00
|
|
|
ui/widgets/ModFilterWidget.cpp
|
|
|
|
ui/widgets/ModFilterWidget.h
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/widgets/ModListView.cpp
|
|
|
|
ui/widgets/ModListView.h
|
|
|
|
ui/widgets/PageContainer.cpp
|
|
|
|
ui/widgets/PageContainer.h
|
|
|
|
ui/widgets/PageContainer_p.h
|
2022-07-15 02:23:41 +01:00
|
|
|
ui/widgets/ProjectItem.h
|
|
|
|
ui/widgets/ProjectItem.cpp
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/widgets/VersionListView.cpp
|
|
|
|
ui/widgets/VersionListView.h
|
|
|
|
ui/widgets/VersionSelectWidget.cpp
|
|
|
|
ui/widgets/VersionSelectWidget.h
|
|
|
|
ui/widgets/ProgressWidget.h
|
|
|
|
ui/widgets/ProgressWidget.cpp
|
|
|
|
ui/widgets/WideBar.h
|
|
|
|
ui/widgets/WideBar.cpp
|
2021-07-25 18:11:59 +01:00
|
|
|
|
|
|
|
# GUI - instance group view
|
2021-11-22 02:55:16 +00:00
|
|
|
ui/instanceview/InstanceProxyModel.cpp
|
|
|
|
ui/instanceview/InstanceProxyModel.h
|
|
|
|
ui/instanceview/AccessibleInstanceView.cpp
|
|
|
|
ui/instanceview/AccessibleInstanceView.h
|
|
|
|
ui/instanceview/AccessibleInstanceView_p.h
|
|
|
|
ui/instanceview/InstanceView.cpp
|
|
|
|
ui/instanceview/InstanceView.h
|
|
|
|
ui/instanceview/InstanceDelegate.cpp
|
|
|
|
ui/instanceview/InstanceDelegate.h
|
|
|
|
ui/instanceview/VisualGroup.cpp
|
|
|
|
ui/instanceview/VisualGroup.h
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
qt_wrap_ui(LAUNCHER_UI
|
2022-05-17 05:00:06 +01:00
|
|
|
ui/setupwizard/PasteWizardPage.ui
|
2021-11-22 13:29:38 +00:00
|
|
|
ui/pages/global/AccountListPage.ui
|
|
|
|
ui/pages/global/JavaPage.ui
|
|
|
|
ui/pages/global/LauncherPage.ui
|
2022-02-12 19:08:50 +00:00
|
|
|
ui/pages/global/APIPage.ui
|
2021-11-22 13:29:38 +00:00
|
|
|
ui/pages/global/ProxyPage.ui
|
|
|
|
ui/pages/global/MinecraftPage.ui
|
|
|
|
ui/pages/global/ExternalToolsPage.ui
|
refactor: Create a more clear hierarchy for some instance pages
Previously, the Shaders, Texture packs and Resource packs tabs had as
parent the ModFolderPage, making it so that making changes only to the
Mods page would require checking the id of the page for the correct one.
This was hackish and error-prone.
Now, those pages all inherit from a single class, ExternalResourcesPage,
that handles the basic behaviour of all of them, while allowing for
individual modification in code.
This is still not a clear separation, since internally, all those
resources are derived from Mods, so for now there's still some awkward
common code :/
2022-03-11 21:03:21 +00:00
|
|
|
ui/pages/instance/ExternalResourcesPage.ui
|
2021-11-22 13:29:38 +00:00
|
|
|
ui/pages/instance/NotesPage.ui
|
|
|
|
ui/pages/instance/LogPage.ui
|
|
|
|
ui/pages/instance/ServersPage.ui
|
|
|
|
ui/pages/instance/GameOptionsPage.ui
|
|
|
|
ui/pages/instance/OtherLogsPage.ui
|
|
|
|
ui/pages/instance/InstanceSettingsPage.ui
|
|
|
|
ui/pages/instance/VersionPage.ui
|
|
|
|
ui/pages/instance/WorldListPage.ui
|
|
|
|
ui/pages/instance/ScreenshotsPage.ui
|
|
|
|
ui/pages/modplatform/atlauncher/AtlOptionalModDialog.ui
|
|
|
|
ui/pages/modplatform/atlauncher/AtlPage.ui
|
|
|
|
ui/pages/modplatform/VanillaPage.ui
|
2022-03-03 00:17:10 +00:00
|
|
|
ui/pages/modplatform/ModPage.ui
|
2021-11-22 13:29:38 +00:00
|
|
|
ui/pages/modplatform/flame/FlamePage.ui
|
|
|
|
ui/pages/modplatform/legacy_ftb/Page.ui
|
|
|
|
ui/pages/modplatform/ImportPage.ui
|
|
|
|
ui/pages/modplatform/ftb/FtbPage.ui
|
2022-01-31 14:25:36 +00:00
|
|
|
ui/pages/modplatform/modrinth/ModrinthPage.ui
|
2021-11-22 13:29:38 +00:00
|
|
|
ui/pages/modplatform/technic/TechnicPage.ui
|
|
|
|
ui/widgets/InstanceCardWidget.ui
|
|
|
|
ui/widgets/CustomCommands.ui
|
2022-08-10 18:48:34 +01:00
|
|
|
ui/widgets/InfoFrame.ui
|
2022-04-14 14:52:23 +01:00
|
|
|
ui/widgets/ModFilterWidget.ui
|
2021-11-22 13:29:38 +00:00
|
|
|
ui/dialogs/CopyInstanceDialog.ui
|
|
|
|
ui/dialogs/ProfileSetupDialog.ui
|
|
|
|
ui/dialogs/ProgressDialog.ui
|
|
|
|
ui/dialogs/NewInstanceDialog.ui
|
|
|
|
ui/dialogs/UpdateDialog.ui
|
|
|
|
ui/dialogs/NewComponentDialog.ui
|
2022-06-26 00:15:16 +01:00
|
|
|
ui/dialogs/NewsDialog.ui
|
2021-11-22 13:29:38 +00:00
|
|
|
ui/dialogs/ProfileSelectDialog.ui
|
|
|
|
ui/dialogs/SkinUploadDialog.ui
|
|
|
|
ui/dialogs/ExportInstanceDialog.ui
|
|
|
|
ui/dialogs/IconPickerDialog.ui
|
|
|
|
ui/dialogs/MSALoginDialog.ui
|
2022-01-17 11:08:10 +00:00
|
|
|
ui/dialogs/OfflineLoginDialog.ui
|
2021-11-22 13:29:38 +00:00
|
|
|
ui/dialogs/AboutDialog.ui
|
|
|
|
ui/dialogs/LoginDialog.ui
|
|
|
|
ui/dialogs/EditAccountDialog.ui
|
2022-03-13 14:50:18 +00:00
|
|
|
ui/dialogs/ReviewMessageBox.ui
|
2022-05-28 20:53:12 +01:00
|
|
|
ui/dialogs/ScrollMessageBox.ui
|
2022-07-17 00:14:54 +01:00
|
|
|
ui/dialogs/BlockedModsDialog.ui
|
2022-05-30 17:30:39 +01:00
|
|
|
ui/dialogs/ChooseProviderDialog.ui
|
2021-11-22 13:29:38 +00:00
|
|
|
)
|
|
|
|
|
2022-05-02 20:34:09 +01:00
|
|
|
qt_add_resources(LAUNCHER_RESOURCES
|
2021-11-23 00:37:13 +00:00
|
|
|
resources/backgrounds/backgrounds.qrc
|
|
|
|
resources/multimc/multimc.qrc
|
|
|
|
resources/pe_dark/pe_dark.qrc
|
|
|
|
resources/pe_light/pe_light.qrc
|
|
|
|
resources/pe_colored/pe_colored.qrc
|
|
|
|
resources/pe_blue/pe_blue.qrc
|
|
|
|
resources/OSX/OSX.qrc
|
|
|
|
resources/iOS/iOS.qrc
|
|
|
|
resources/flat/flat.qrc
|
|
|
|
resources/documents/documents.qrc
|
|
|
|
../${Launcher_Branding_LogoQRC}
|
|
|
|
)
|
|
|
|
|
2021-07-25 18:11:59 +01:00
|
|
|
######## Windows resource files ########
|
|
|
|
if(WIN32)
|
2022-05-29 11:46:44 +01:00
|
|
|
set(LAUNCHER_RCS ${CMAKE_CURRENT_BINARY_DIR}/../${Launcher_Branding_WindowsRC})
|
2021-07-25 18:11:59 +01:00
|
|
|
endif()
|
|
|
|
|
|
|
|
# Add executable
|
2021-11-23 00:37:13 +00:00
|
|
|
add_library(Launcher_logic STATIC ${LOGIC_SOURCES} ${LAUNCHER_SOURCES} ${LAUNCHER_UI} ${LAUNCHER_RESOURCES})
|
2021-10-13 00:59:25 +01:00
|
|
|
target_link_libraries(Launcher_logic
|
2021-07-25 18:11:59 +01:00
|
|
|
systeminfo
|
2021-10-13 00:59:25 +01:00
|
|
|
Launcher_classparser
|
2022-06-03 23:02:11 +01:00
|
|
|
Launcher_murmur2
|
2022-02-07 14:44:46 +00:00
|
|
|
nbt++
|
2021-07-25 18:11:59 +01:00
|
|
|
${ZLIB_LIBRARIES}
|
|
|
|
tomlc99
|
|
|
|
BuildConfig
|
2021-07-26 20:44:11 +01:00
|
|
|
Katabasis
|
2022-05-02 20:34:09 +01:00
|
|
|
Qt${QT_VERSION_MAJOR}::Widgets
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
2022-06-29 21:37:25 +01:00
|
|
|
|
|
|
|
if (UNIX AND NOT CYGWIN AND NOT APPLE)
|
|
|
|
target_link_libraries(Launcher_logic
|
|
|
|
gamemode
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
|
2021-10-13 00:59:25 +01:00
|
|
|
target_link_libraries(Launcher_logic
|
2022-05-02 20:34:09 +01:00
|
|
|
Qt${QT_VERSION_MAJOR}::Core
|
|
|
|
Qt${QT_VERSION_MAJOR}::Xml
|
|
|
|
Qt${QT_VERSION_MAJOR}::Network
|
|
|
|
Qt${QT_VERSION_MAJOR}::Concurrent
|
|
|
|
Qt${QT_VERSION_MAJOR}::Gui
|
|
|
|
Qt${QT_VERSION_MAJOR}::Widgets
|
|
|
|
${Launcher_QT_LIBS}
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
2021-10-13 00:59:25 +01:00
|
|
|
target_link_libraries(Launcher_logic
|
2022-01-24 21:55:57 +00:00
|
|
|
QuaZip::QuaZip
|
2021-07-25 18:11:59 +01:00
|
|
|
hoedown
|
|
|
|
LocalPeer
|
2022-03-18 09:28:35 +00:00
|
|
|
Launcher_rainbow
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
2022-05-15 18:56:58 +01:00
|
|
|
if(APPLE)
|
|
|
|
set(CMAKE_MACOSX_RPATH 1)
|
|
|
|
set(CMAKE_INSTALL_RPATH "@loader_path/../Frameworks/")
|
|
|
|
|
|
|
|
file(DOWNLOAD ${MACOSX_SPARKLE_DOWNLOAD_URL} ${CMAKE_BINARY_DIR}/Sparkle.tar.xz EXPECTED_HASH SHA256=${MACOSX_SPARKLE_SHA256})
|
|
|
|
file(ARCHIVE_EXTRACT INPUT ${CMAKE_BINARY_DIR}/Sparkle.tar.xz DESTINATION ${CMAKE_BINARY_DIR}/frameworks/Sparkle)
|
|
|
|
|
|
|
|
find_library(SPARKLE_FRAMEWORK Sparkle "${CMAKE_BINARY_DIR}/frameworks/Sparkle")
|
|
|
|
target_link_libraries(Launcher_logic
|
|
|
|
"-framework AppKit"
|
|
|
|
"-framework Carbon"
|
|
|
|
"-framework Foundation"
|
|
|
|
"-framework ApplicationServices"
|
|
|
|
)
|
|
|
|
target_link_libraries(Launcher_logic ${SPARKLE_FRAMEWORK})
|
|
|
|
endif()
|
2021-07-25 18:11:59 +01:00
|
|
|
|
2021-12-20 02:41:08 +00:00
|
|
|
target_link_libraries(Launcher_logic)
|
2021-07-25 18:11:59 +01:00
|
|
|
|
2021-10-17 23:47:02 +01:00
|
|
|
add_executable(${Launcher_Name} MACOSX_BUNDLE WIN32 main.cpp ${LAUNCHER_RCS})
|
2021-10-13 00:59:25 +01:00
|
|
|
target_link_libraries(${Launcher_Name} Launcher_logic)
|
|
|
|
|
|
|
|
if(DEFINED Launcher_APP_BINARY_NAME)
|
|
|
|
set_target_properties(${Launcher_Name} PROPERTIES OUTPUT_NAME "${Launcher_APP_BINARY_NAME}")
|
2021-07-25 18:11:59 +01:00
|
|
|
endif()
|
2021-10-13 00:59:25 +01:00
|
|
|
if(DEFINED Launcher_BINARY_RPATH)
|
|
|
|
SET_TARGET_PROPERTIES(${Launcher_Name} PROPERTIES INSTALL_RPATH "${Launcher_BINARY_RPATH}")
|
2021-07-25 18:11:59 +01:00
|
|
|
endif()
|
2021-07-26 13:03:59 +01:00
|
|
|
|
2021-10-13 00:59:25 +01:00
|
|
|
if(DEFINED Launcher_APP_BINARY_DEFS)
|
|
|
|
target_compile_definitions(${Launcher_Name} PRIVATE ${Launcher_APP_BINARY_DEFS})
|
|
|
|
target_compile_definitions(Launcher_logic PRIVATE ${Launcher_APP_BINARY_DEFS})
|
2021-07-25 18:11:59 +01:00
|
|
|
endif()
|
|
|
|
|
2021-10-13 00:59:25 +01:00
|
|
|
install(TARGETS ${Launcher_Name}
|
2022-03-23 13:42:56 +00:00
|
|
|
BUNDLE DESTINATION "." COMPONENT Runtime
|
2021-07-25 18:11:59 +01:00
|
|
|
LIBRARY DESTINATION ${LIBRARY_DEST_DIR} COMPONENT Runtime
|
|
|
|
RUNTIME DESTINATION ${BINARY_DEST_DIR} COMPONENT Runtime
|
2022-05-15 18:56:58 +01:00
|
|
|
FRAMEWORK DESTINATION ${FRAMEWORK_DEST_DIR} COMPONENT Runtime
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
|
|
|
|
2022-05-20 01:22:45 +01:00
|
|
|
if (UNIX AND APPLE)
|
|
|
|
# Add Sparkle updater
|
|
|
|
# It has to be copied here instead of just allowing fixup_bundle to install it, otherwise essential parts of
|
|
|
|
# the framework aren't installed
|
|
|
|
install(DIRECTORY ${MACOSX_SPARKLE_DIR}/Sparkle.framework DESTINATION ${FRAMEWORK_DEST_DIR} USE_SOURCE_PERMISSIONS)
|
|
|
|
endif()
|
|
|
|
|
2021-10-13 00:59:25 +01:00
|
|
|
#### The bundle mess! ####
|
2021-07-25 18:11:59 +01:00
|
|
|
# Bundle utilities are used to complete the portable packages - they add all the libraries that would otherwise be missing on the target system.
|
|
|
|
# NOTE: it seems that this absolutely has to be here, and nowhere else.
|
|
|
|
if(INSTALL_BUNDLE STREQUAL "full")
|
|
|
|
# Add qt.conf - this makes Qt stop looking for things outside the bundle
|
|
|
|
install(
|
|
|
|
CODE "file(WRITE \"\${CMAKE_INSTALL_PREFIX}/${RESOURCES_DEST_DIR}/qt.conf\" \" \")"
|
|
|
|
COMPONENT Runtime
|
|
|
|
)
|
|
|
|
# Bundle plugins
|
|
|
|
if(CMAKE_BUILD_TYPE STREQUAL "Debug" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
|
|
|
|
# Image formats
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/imageformats"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
2022-03-19 18:01:51 +00:00
|
|
|
REGEX "tga|tiff|mng" EXCLUDE
|
2021-07-25 18:11:59 +01:00
|
|
|
)
|
|
|
|
# Icon engines
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/iconengines"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
|
|
|
REGEX "fontawesome" EXCLUDE
|
|
|
|
)
|
|
|
|
# Platform plugins
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/platforms"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
|
|
|
REGEX "minimal|linuxfb|offscreen" EXCLUDE
|
|
|
|
)
|
2021-08-31 17:55:56 +01:00
|
|
|
# Style plugins
|
|
|
|
if(EXISTS "${QT_PLUGINS_DIR}/styles")
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/styles"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
|
|
|
)
|
|
|
|
endif()
|
2022-05-17 20:56:35 +01:00
|
|
|
# TLS plugins (Qt 6 only)
|
|
|
|
if(EXISTS "${QT_PLUGINS_DIR}/tls")
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/tls"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
|
|
|
)
|
|
|
|
endif()
|
2021-07-25 18:11:59 +01:00
|
|
|
else()
|
|
|
|
# Image formats
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/imageformats"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
2022-03-20 12:15:56 +00:00
|
|
|
REGEX "tga|tiff|mng" EXCLUDE
|
2021-07-25 18:11:59 +01:00
|
|
|
REGEX "d\\." EXCLUDE
|
|
|
|
REGEX "_debug\\." EXCLUDE
|
|
|
|
REGEX "\\.dSYM" EXCLUDE
|
|
|
|
)
|
|
|
|
# Icon engines
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/iconengines"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
|
|
|
REGEX "fontawesome" EXCLUDE
|
|
|
|
REGEX "d\\." EXCLUDE
|
|
|
|
REGEX "_debug\\." EXCLUDE
|
|
|
|
REGEX "\\.dSYM" EXCLUDE
|
|
|
|
)
|
|
|
|
# Platform plugins
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/platforms"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
|
|
|
REGEX "minimal|linuxfb|offscreen" EXCLUDE
|
|
|
|
REGEX "d\\." EXCLUDE
|
|
|
|
REGEX "_debug\\." EXCLUDE
|
|
|
|
REGEX "\\.dSYM" EXCLUDE
|
|
|
|
)
|
2021-08-31 17:55:56 +01:00
|
|
|
# Style plugins
|
|
|
|
if(EXISTS "${QT_PLUGINS_DIR}/styles")
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/styles"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
|
|
|
REGEX "d\\." EXCLUDE
|
|
|
|
REGEX "_debug\\." EXCLUDE
|
|
|
|
REGEX "\\.dSYM" EXCLUDE
|
|
|
|
)
|
|
|
|
endif()
|
2022-05-17 20:56:35 +01:00
|
|
|
# TLS plugins (Qt 6 only)
|
|
|
|
if(EXISTS "${QT_PLUGINS_DIR}/tls")
|
|
|
|
install(
|
|
|
|
DIRECTORY "${QT_PLUGINS_DIR}/tls"
|
|
|
|
DESTINATION ${PLUGIN_DEST_DIR}
|
|
|
|
COMPONENT Runtime
|
|
|
|
REGEX "_debug\\." EXCLUDE
|
|
|
|
REGEX "\\.dSYM" EXCLUDE
|
|
|
|
)
|
|
|
|
endif()
|
2021-07-25 18:11:59 +01:00
|
|
|
endif()
|
|
|
|
configure_file(
|
|
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/install_prereqs.cmake.in"
|
|
|
|
"${CMAKE_CURRENT_BINARY_DIR}/install_prereqs.cmake"
|
|
|
|
@ONLY
|
|
|
|
)
|
|
|
|
install(SCRIPT "${CMAKE_CURRENT_BINARY_DIR}/install_prereqs.cmake" COMPONENT Runtime)
|
|
|
|
endif()
|