diff --git a/CMakeLists.txt b/CMakeLists.txt
index a9a7576d6..818504956 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -628,6 +628,40 @@ else()
message(FATAL_ERROR "Platform not supported")
endif()
+################################ shimgen ################################
+
+set(SHIMGEN_BUILD_DIR ${CMAKE_BINARY_DIR}/tools/shimgen-build)
+
+execute_process(
+ COMMAND ${CMAKE_COMMAND} -S ${CMAKE_SOURCE_DIR}/launcher/tools/shimgen -B ${SHIMGEN_BUILD_DIR}
+ RESULT_VARIABLE SHIMGEN_CFG_RC
+)
+if(NOT SHIMGEN_CFG_RC EQUAL 0)
+ message(FATAL_ERROR "shimgen configure başarısız")
+endif()
+
+execute_process(
+ COMMAND ${CMAKE_COMMAND} --build ${SHIMGEN_BUILD_DIR} --config Release
+ RESULT_VARIABLE SHIMGEN_BUILD_RC
+)
+if(NOT SHIMGEN_BUILD_RC EQUAL 0)
+ message(FATAL_ERROR "shimgen compile failed")
+endif()
+
+find_program(SHIMGEN_EXE shimgen
+ PATHS ${SHIMGEN_BUILD_DIR} ${SHIMGEN_BUILD_DIR}/Release
+ NO_DEFAULT_PATH
+)
+
+execute_process(
+ COMMAND ${SHIMGEN_EXE} ${CMAKE_SOURCE_DIR}/launcher ${CMAKE_SOURCE_DIR}/launcher/headers
+ RESULT_VARIABLE SHIMGEN_RUN_RC
+)
+
+if(NOT SHIMGEN_RUN_RC EQUAL 0)
+ message(FATAL_ERROR "Shim generation has been failed")
+endif()
+
################################ Included Libs ################################
include(ExternalProject)
@@ -692,8 +726,6 @@ install(FILES "${NEWLAUNCH_JAR}" DESTINATION "${JARS_DEST_DIR}" RENAME "NewLaunc
############################### Built Artifacts ###############################
-add_subdirectory(buildconfig)
-
add_subdirectory(launcher/crashreporter)
# NOTE: this must always be last to appease the CMake deity of quirky install command evaluation order.
diff --git a/README.md b/README.md
index 581f9fa80..8ec65b546 100644
--- a/README.md
+++ b/README.md
@@ -32,7 +32,7 @@ In general, in order of importance:
## License
Copyright © 2012-2022 MultiMC Contributors
-Copyright © 2026 Project Tick
+
Copyright © 2026 Project Tick
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this program except in compliance with the License. You may obtain a copy of the License at [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0).
diff --git a/buildconfig/CMakeLists.txt b/buildconfig/CMakeLists.txt
deleted file mode 100644
index cd09bdcfe..000000000
--- a/buildconfig/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-######## Configure the file with build properties ########
-
-configure_file("${CMAKE_CURRENT_SOURCE_DIR}/BuildConfig.cpp.in" "${CMAKE_CURRENT_BINARY_DIR}/BuildConfig.cpp")
-
-add_library(BuildConfig STATIC
- BuildConfig.h
- ${CMAKE_CURRENT_BINARY_DIR}/BuildConfig.cpp
-)
-
-target_link_libraries(BuildConfig Qt${QT_VERSION_MAJOR}::Core)
-target_include_directories(BuildConfig PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}")
diff --git a/launcher/Application.cpp b/launcher/Application.cpp
index 916cba8c1..94107cf08 100644
--- a/launcher/Application.cpp
+++ b/launcher/Application.cpp
@@ -17,9 +17,9 @@
* limitations under the License.
*/
-#include "Application.h"
-#include "BuildConfig.h"
-#include "plugin/PluginManager.h"
+#include
+#include
+#include
#include "ui/MainWindow.h"
#include "ui/InstanceWindow.h"
@@ -52,7 +52,7 @@
#include "ui/pagedialog/PageDialog.h"
-#include "ApplicationMessage.h"
+#include
#include
@@ -72,7 +72,7 @@
#include
#include
-#include "InstanceList.h"
+#include
#include
#include "icons/IconList.h"
@@ -102,9 +102,9 @@
#include "translations/TranslationsModel.h"
#include "meta/Index.h"
-#include
-#include
-#include
+#include
+#include
+#include
#include
#include "MMCZip.h"
@@ -113,7 +113,7 @@
#include "minecraft/Component.h"
#include "Sys.h"
-#include "Logging.h"
+#include
#include "MMCStrings.h"
#if defined Q_OS_WIN32
diff --git a/launcher/Application.h b/launcher/Application.h
index 57d9b4e06..e60bd6694 100644
--- a/launcher/Application.h
+++ b/launcher/Application.h
@@ -1,3 +1,5 @@
+// launcher/Application.h
+// @meshmc-public: MeshMC/Core/Application
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -29,9 +31,9 @@
#include
#include
-#include
+#include
-#include "Logging.h"
+#include
#include "minecraft/launch/MinecraftServerTarget.h"
diff --git a/launcher/ApplicationMessage.cpp b/launcher/ApplicationMessage.cpp
index f98b11c27..8e4678960 100644
--- a/launcher/ApplicationMessage.cpp
+++ b/launcher/ApplicationMessage.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "ApplicationMessage.h"
+#include
#include
#include
diff --git a/launcher/ApplicationMessage.h b/launcher/ApplicationMessage.h
index f95a2dd3b..c138bf826 100644
--- a/launcher/ApplicationMessage.h
+++ b/launcher/ApplicationMessage.h
@@ -1,3 +1,5 @@
+// launcher/ApplicationMessage.h
+// @meshmc-public: MeshMC/Core/ApplicationMessage
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/ArchiveOpen.h b/launcher/ArchiveOpen.h
index bee7bb8a8..0ee625e40 100644
--- a/launcher/ArchiveOpen.h
+++ b/launcher/ArchiveOpen.h
@@ -1,3 +1,5 @@
+// launcher/ArchiveOpen.h
+// @meshmc-public: MeshMC/Core/ArchiveOpen
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/BaseInstaller.cpp b/launcher/BaseInstaller.cpp
index 8b1579b63..7fc2ed0d1 100644
--- a/launcher/BaseInstaller.cpp
+++ b/launcher/BaseInstaller.cpp
@@ -20,7 +20,7 @@
#include
-#include "BaseInstaller.h"
+#include
#include "minecraft/MinecraftInstance.h"
BaseInstaller::BaseInstaller() {}
diff --git a/launcher/BaseInstaller.h b/launcher/BaseInstaller.h
index fec8bd9b3..2e0d71a5a 100644
--- a/launcher/BaseInstaller.h
+++ b/launcher/BaseInstaller.h
@@ -1,3 +1,5 @@
+// launcher/BaseInstaller.h
+// @meshmc-public: MeshMC/Core/BaseInstaller
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/BaseInstance.cpp b/launcher/BaseInstance.cpp
index 6fe317c9f..968c47552 100644
--- a/launcher/BaseInstance.cpp
+++ b/launcher/BaseInstance.cpp
@@ -18,7 +18,7 @@
* limitations under the License.
*/
-#include "BaseInstance.h"
+#include
#include
#include
@@ -34,9 +34,9 @@
#include "settings/Setting.h"
#include "settings/OverrideSetting.h"
-#include "FileSystem.h"
-#include "Commandline.h"
-#include "BuildConfig.h"
+#include
+#include
+#include
BaseInstance::BaseInstance(SettingsObjectPtr globalSettings,
SettingsObjectPtr settings, const QString& rootDir)
diff --git a/launcher/BaseInstance.h b/launcher/BaseInstance.h
index 47a7bea75..8670c63c8 100644
--- a/launcher/BaseInstance.h
+++ b/launcher/BaseInstance.h
@@ -1,3 +1,5 @@
+// launcher/BaseInstance.h
+// @meshmc-public: MeshMC/Core/BaseInstance
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -30,7 +32,7 @@
#include "settings/SettingsObject.h"
#include "settings/INIFile.h"
-#include "BaseVersionList.h"
+#include
#include "minecraft/auth/MinecraftAccount.h"
#include "MessageLevel.h"
#include "pathmatcher/IPathMatcher.h"
diff --git a/launcher/BaseVersion.h b/launcher/BaseVersion.h
index 49e68121e..6fbc9428c 100644
--- a/launcher/BaseVersion.h
+++ b/launcher/BaseVersion.h
@@ -1,3 +1,5 @@
+// launcher/BaseVersion.h
+// @meshmc-public: MeshMC/Core/BaseVersion
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/BaseVersionList.cpp b/launcher/BaseVersionList.cpp
index 05466df20..c1fc925c2 100644
--- a/launcher/BaseVersionList.cpp
+++ b/launcher/BaseVersionList.cpp
@@ -18,8 +18,8 @@
* limitations under the License.
*/
-#include "BaseVersionList.h"
-#include "BaseVersion.h"
+#include
+#include
BaseVersionList::BaseVersionList(QObject* parent) : QAbstractListModel(parent)
{
diff --git a/launcher/BaseVersionList.h b/launcher/BaseVersionList.h
index fec158eda..53ed656b4 100644
--- a/launcher/BaseVersionList.h
+++ b/launcher/BaseVersionList.h
@@ -1,3 +1,5 @@
+// launcher/BaseVersionList.h
+// @meshmc-public: MeshMC/Core/BaseVersionList
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -24,7 +26,7 @@
#include
#include
-#include "BaseVersion.h"
+#include
#include "tasks/Task.h"
#include "QObjectPtr.h"
diff --git a/buildconfig/BuildConfig.h b/launcher/BuildConfig.h
similarity index 98%
rename from buildconfig/BuildConfig.h
rename to launcher/BuildConfig.h
index 4a0945c5c..4bd6f1cd0 100644
--- a/buildconfig/BuildConfig.h
+++ b/launcher/BuildConfig.h
@@ -1,3 +1,5 @@
+// launcher/buildconfig/BuildConfig.h
+// @meshmc-public: MeshMC/Core/BuildConfig
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/buildconfig/BuildConfig.cpp.in b/launcher/BuildConfig.in.cpp
similarity index 99%
rename from buildconfig/BuildConfig.cpp.in
rename to launcher/BuildConfig.in.cpp
index 66d191010..40fd1245f 100644
--- a/buildconfig/BuildConfig.cpp.in
+++ b/launcher/BuildConfig.in.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "BuildConfig.h"
+#include
#include
const Config BuildConfig;
diff --git a/launcher/CMakeLists.txt b/launcher/CMakeLists.txt
index 4894de93a..9efa1cdf2 100644
--- a/launcher/CMakeLists.txt
+++ b/launcher/CMakeLists.txt
@@ -6,8 +6,12 @@ project(application)
include (UnitTest)
+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/BuildConfig.in.cpp" "${CMAKE_CURRENT_BINARY_DIR}/BuildConfig.cpp")
+
set(CORE_SOURCES
# LOGIC - Base classes and infrastructure
+ BuildConfig.h
+ ${CMAKE_CURRENT_BINARY_DIR}/BuildConfig.cpp
BaseInstaller.h
BaseInstaller.cpp
BaseVersionList.h
@@ -1209,6 +1213,7 @@ endif()
# Add executable
add_library(MeshMC_logic STATIC ${LOGIC_SOURCES} ${MESHMC_SOURCES} ${MESHMC_UI} ${MESHMC_SHARED_UI} ${MESHMC_RESOURCES})
+target_include_directories(MeshMC_logic PUBLIC ${CMAKE_SOURCE_DIR}/launcher/headers)
# Declared after MeshMC_logic because it links against it.
add_unit_test(CustomTheme
@@ -1233,7 +1238,6 @@ target_link_libraries(MeshMC_logic
nbt++
ZLIB::ZLIB
tomlplusplus::tomlplusplus
- BuildConfig
Katabasis
)
@@ -1444,7 +1448,7 @@ if(NOT APPLE)
DesktopServices.h
DesktopServices.cpp
QObjectPtr.h
-
+ ${CMAKE_CURRENT_BINARY_DIR}/BuildConfig.cpp
tasks/Task.h
tasks/Task.cpp
@@ -1457,7 +1461,7 @@ if(NOT APPLE)
)
add_library(meshmc_updater_logic STATIC ${MESHUPDATER_SOURCES} ${MESHUPDATER_UI} ${MESHMC_SHARED_UI})
- target_include_directories(meshmc_updater_logic PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
+ target_include_directories(meshmc_updater_logic PUBLIC ${CMAKE_SOURCE_DIR}/launcher/headers)
target_compile_definitions(meshmc_updater_logic PUBLIC QT_MESSAGELOGCONTEXT)
target_link_libraries(meshmc_updater_logic
Qt${QT_VERSION_MAJOR}::Core
@@ -1466,7 +1470,6 @@ if(NOT APPLE)
Qt${QT_VERSION_MAJOR}::Network
LibArchive::LibArchive
cmark::cmark
- BuildConfig
)
# WIN32: no console window while updating. Diagnostics go to the log file,
diff --git a/launcher/Commandline.cpp b/launcher/Commandline.cpp
index 7f00b882c..ccf654cb8 100644
--- a/launcher/Commandline.cpp
+++ b/launcher/Commandline.cpp
@@ -18,7 +18,7 @@
* limitations under the License.
*/
-#include "Commandline.h"
+#include
/**
* @file libutil/src/cmdutils.cpp
diff --git a/launcher/Commandline.h b/launcher/Commandline.h
index 57bf987d2..679ef63c6 100644
--- a/launcher/Commandline.h
+++ b/launcher/Commandline.h
@@ -1,3 +1,5 @@
+// launcher/Commandline.h
+// @meshmc-public: MeshMC/Core/Commandline
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/DefaultVariable.h b/launcher/DefaultVariable.h
index f3ac457e1..46222a1f8 100644
--- a/launcher/DefaultVariable.h
+++ b/launcher/DefaultVariable.h
@@ -1,3 +1,5 @@
+// launcher/DefaultVariable.h
+// @meshmc-public: MeshMC/Core/DefaultVariable
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/DesktopServices.cpp b/launcher/DesktopServices.cpp
index d79395ef6..7a40043cf 100644
--- a/launcher/DesktopServices.cpp
+++ b/launcher/DesktopServices.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "DesktopServices.h"
+#include
#include
#include
#include
diff --git a/launcher/DesktopServices.h b/launcher/DesktopServices.h
index 7ef140b64..652ce4292 100644
--- a/launcher/DesktopServices.h
+++ b/launcher/DesktopServices.h
@@ -1,3 +1,5 @@
+// launcher/DesktopServices.h
+// @meshmc-public: MeshMC/Core/DesktopServices
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/Exception.h b/launcher/Exception.h
index e52a3c893..fc8a277a6 100644
--- a/launcher/Exception.h
+++ b/launcher/Exception.h
@@ -1,3 +1,5 @@
+// launcher/Exception.h
+// @meshmc-public: MeshMC/Core/Exception
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/ExponentialSeries.h b/launcher/ExponentialSeries.h
index e786bf83e..fe1ff5143 100644
--- a/launcher/ExponentialSeries.h
+++ b/launcher/ExponentialSeries.h
@@ -1,3 +1,5 @@
+// launcher/ExponentialSeries.h
+// @meshmc-public: MeshMC/Core/ExponentialSeries
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/FastFileIconProvider.cpp b/launcher/FastFileIconProvider.cpp
index b956383f2..fd0879236 100644
--- a/launcher/FastFileIconProvider.cpp
+++ b/launcher/FastFileIconProvider.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "FastFileIconProvider.h"
+#include
#include
#include
diff --git a/launcher/FastFileIconProvider.h b/launcher/FastFileIconProvider.h
index 78ce45576..62486703e 100644
--- a/launcher/FastFileIconProvider.h
+++ b/launcher/FastFileIconProvider.h
@@ -1,3 +1,5 @@
+// launcher/FastFileIconProvider.h
+// @meshmc-public: MeshMC/Core/FastFileIconProvider
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/FileIgnoreProxy.cpp b/launcher/FileIgnoreProxy.cpp
index 2f2d3903a..12cb96fc4 100644
--- a/launcher/FileIgnoreProxy.cpp
+++ b/launcher/FileIgnoreProxy.cpp
@@ -18,15 +18,15 @@
* limitations under the License.
*/
-#include "FileIgnoreProxy.h"
+#include
#include
#include
#include
#include
-#include "Exception.h"
-#include "FileSystem.h"
+#include
+#include
#include "MMCStrings.h"
FileIgnoreProxy::FileIgnoreProxy(QString root, QObject* parent)
diff --git a/launcher/FileIgnoreProxy.h b/launcher/FileIgnoreProxy.h
index 052e4d264..d16b8bb2f 100644
--- a/launcher/FileIgnoreProxy.h
+++ b/launcher/FileIgnoreProxy.h
@@ -1,3 +1,5 @@
+// launcher/FileIgnoreProxy.h
+// @meshmc-public: MeshMC/Core/FileIgnoreProxy
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/FileSystem.cpp b/launcher/FileSystem.cpp
index 8d84a8f89..1660f3bac 100644
--- a/launcher/FileSystem.cpp
+++ b/launcher/FileSystem.cpp
@@ -18,7 +18,7 @@
* limitations under the License.
*/
-#include "FileSystem.h"
+#include
#include
#include
@@ -44,7 +44,7 @@
#include
#endif
-#include "DesktopServices.h"
+#include
namespace FS
{
diff --git a/launcher/FileSystem.h b/launcher/FileSystem.h
index e652cd96f..f5cd70825 100644
--- a/launcher/FileSystem.h
+++ b/launcher/FileSystem.h
@@ -1,3 +1,5 @@
+// launcher/FileSystem.h
+// @meshmc-public: MeshMC/Core/FS
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -20,7 +22,7 @@
#pragma once
-#include "Exception.h"
+#include
#include "pathmatcher/IPathMatcher.h"
#include
diff --git a/launcher/FileSystem_test.cpp b/launcher/FileSystem_test.cpp
index 61a2ccfd8..566f1a97e 100644
--- a/launcher/FileSystem_test.cpp
+++ b/launcher/FileSystem_test.cpp
@@ -22,7 +22,7 @@
#include
#include "TestUtil.h"
-#include "FileSystem.h"
+#include
class FileSystemTest : public QObject
{
diff --git a/launcher/Filter.cpp b/launcher/Filter.cpp
index 65b5e86ce..3c75d998e 100644
--- a/launcher/Filter.cpp
+++ b/launcher/Filter.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "Filter.h"
+#include
Filter::~Filter() {}
diff --git a/launcher/Filter.h b/launcher/Filter.h
index 28b45f6c6..30ad6ef32 100644
--- a/launcher/Filter.h
+++ b/launcher/Filter.h
@@ -1,3 +1,5 @@
+// launcher/Filter.h
+// @meshmc-public: MeshMC/Core/Filter
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/GZip.cpp b/launcher/GZip.cpp
index d157bbf04..0c4568e50 100644
--- a/launcher/GZip.cpp
+++ b/launcher/GZip.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "GZip.h"
+#include
#include
#include
diff --git a/launcher/GZip.h b/launcher/GZip.h
index 1fe25a79b..218f2a0d2 100644
--- a/launcher/GZip.h
+++ b/launcher/GZip.h
@@ -1,3 +1,5 @@
+// launcher/GZip.h
+// @meshmc-public: MeshMC/Core/GZip
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/GZip_test.cpp b/launcher/GZip_test.cpp
index dce8aae45..4ea669557 100644
--- a/launcher/GZip_test.cpp
+++ b/launcher/GZip_test.cpp
@@ -20,7 +20,7 @@
#include
#include "TestUtil.h"
-#include "GZip.h"
+#include
#include
void fib(int& prev, int& cur)
diff --git a/launcher/HoeDown.h b/launcher/HoeDown.h
index a5431d857..cb0b44411 100644
--- a/launcher/HoeDown.h
+++ b/launcher/HoeDown.h
@@ -1,3 +1,5 @@
+// launcher/HoeDown.h
+// @meshmc-public: MeshMC/Core/HoeDown
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/InstanceCopyTask.cpp b/launcher/InstanceCopyTask.cpp
index 89e41ade0..e58501d51 100644
--- a/launcher/InstanceCopyTask.cpp
+++ b/launcher/InstanceCopyTask.cpp
@@ -17,9 +17,9 @@
* limitations under the License.
*/
-#include "InstanceCopyTask.h"
+#include
#include "settings/INISettingsObject.h"
-#include "FileSystem.h"
+#include
#include "NullInstance.h"
#include "pathmatcher/RegexpMatcher.h"
#include
diff --git a/launcher/InstanceCopyTask.h b/launcher/InstanceCopyTask.h
index 552cb4e39..0c5707603 100644
--- a/launcher/InstanceCopyTask.h
+++ b/launcher/InstanceCopyTask.h
@@ -1,3 +1,5 @@
+// launcher/InstanceCopyTask.h
+// @meshmc-public: MeshMC/Core/InstanceCopyTask
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -25,9 +27,9 @@
#include
#include
#include "settings/SettingsObject.h"
-#include "BaseVersion.h"
-#include "BaseInstance.h"
-#include "InstanceTask.h"
+#include
+#include
+#include
class InstanceCopyTask : public InstanceTask
{
diff --git a/launcher/InstanceCreationTask.cpp b/launcher/InstanceCreationTask.cpp
index ceb39932f..a98da372c 100644
--- a/launcher/InstanceCreationTask.cpp
+++ b/launcher/InstanceCreationTask.cpp
@@ -17,9 +17,9 @@
* limitations under the License.
*/
-#include "InstanceCreationTask.h"
+#include
#include "settings/INISettingsObject.h"
-#include "FileSystem.h"
+#include
// FIXME: remove this
#include "minecraft/MinecraftInstance.h"
diff --git a/launcher/InstanceCreationTask.h b/launcher/InstanceCreationTask.h
index 41ad42472..a340c3b44 100644
--- a/launcher/InstanceCreationTask.h
+++ b/launcher/InstanceCreationTask.h
@@ -1,3 +1,5 @@
+// launcher/InstanceCreationTask.h
+// @meshmc-public: MeshMC/Core/InstanceCreationTask
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -23,8 +25,8 @@
#include "net/NetJob.h"
#include
#include "settings/SettingsObject.h"
-#include "BaseVersion.h"
-#include "InstanceTask.h"
+#include
+#include
class InstanceCreationTask : public InstanceTask
{
diff --git a/launcher/InstanceImportTask.cpp b/launcher/InstanceImportTask.cpp
index ccb9ecd44..6756bdf7c 100644
--- a/launcher/InstanceImportTask.cpp
+++ b/launcher/InstanceImportTask.cpp
@@ -18,11 +18,11 @@
* limitations under the License.
*/
-#include "InstanceImportTask.h"
-#include "BaseInstance.h"
-#include "FileSystem.h"
-#include "Application.h"
-#include "InstanceList.h"
+#include
+#include
+#include
+#include
+#include
#include "MMCZip.h"
#include "archive/ExtractZipTask.h"
#include "NullInstance.h"
@@ -39,11 +39,11 @@
#include "modplatform/flame/PackManifest.h"
#include "modplatform/modrinth/ModrinthPackManifest.h"
#include "modplatform/PackContents.h"
-#include "Json.h"
+#include
#include "modplatform/technic/TechnicPackProcessor.h"
#include "icons/IconList.h"
-#include "Application.h"
+#include
#include "modplatform/flame/FlameApi.h"
#include "modplatform/modrinth/ModrinthApi.h"
#include "ui/dialogs/BlockedModsDialog.h"
diff --git a/launcher/InstanceImportTask.h b/launcher/InstanceImportTask.h
index 13936e90c..befc0b438 100644
--- a/launcher/InstanceImportTask.h
+++ b/launcher/InstanceImportTask.h
@@ -1,3 +1,5 @@
+// launcher/InstanceImportTask.h
+// @meshmc-public: MeshMC/Core/InstanceImportTask
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -20,7 +22,7 @@
#pragma once
-#include "InstanceTask.h"
+#include
#include "net/HttpMetaCache.h"
#include "net/NetJob.h"
#include
diff --git a/launcher/InstanceList.cpp b/launcher/InstanceList.cpp
index e110d781b..a1c0606a4 100644
--- a/launcher/InstanceList.cpp
+++ b/launcher/InstanceList.cpp
@@ -36,15 +36,15 @@
#include
#include
-#include "InstanceList.h"
-#include "BaseInstance.h"
-#include "InstanceTask.h"
+#include
+#include
+#include
#include "settings/INISettingsObject.h"
#include "minecraft/legacy/LegacyInstance.h"
#include "NullInstance.h"
#include "minecraft/MinecraftInstance.h"
-#include "FileSystem.h"
-#include "ExponentialSeries.h"
+#include
+#include
#include "WatchLock.h"
const static int GROUP_FILE_FORMAT_VERSION = 1;
diff --git a/launcher/InstanceList.h b/launcher/InstanceList.h
index 2df1e611c..449d0d833 100644
--- a/launcher/InstanceList.h
+++ b/launcher/InstanceList.h
@@ -1,3 +1,5 @@
+// launcher/InstanceList.h
+// @meshmc-public: MeshMC/Core/InstanceList
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -27,7 +29,7 @@
#include
#include
-#include "BaseInstance.h"
+#include
#include "QObjectPtr.h"
diff --git a/launcher/InstancePageProvider.h b/launcher/InstancePageProvider.h
index ae5ebefc6..171e18b82 100644
--- a/launcher/InstancePageProvider.h
+++ b/launcher/InstancePageProvider.h
@@ -1,3 +1,5 @@
+// launcher/InstancePageProvider.h
+// @meshmc-public: MeshMC/Core/InstancePageProvider
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -20,7 +22,7 @@
#pragma once
#include "minecraft/MinecraftInstance.h"
#include "minecraft/legacy/LegacyInstance.h"
-#include
+#include
#include "ui/pages/BasePage.h"
#include "ui/pages/BasePageProvider.h"
#include "ui/pages/instance/LogPage.h"
@@ -40,8 +42,8 @@
#include "ui/pages/instance/ServersPage.h"
#include "ui/pages/instance/GameOptionsPage.h"
#include "ui/pages/instance/BackupPage.h"
-#include "Application.h"
-#include "plugin/PluginManager.h"
+#include
+#include
#include "plugin/PluginHooks.h"
class InstancePageProvider : public QObject, public BasePageProvider
diff --git a/launcher/InstanceTask.cpp b/launcher/InstanceTask.cpp
index 6fdc3ae80..7e087c7d9 100644
--- a/launcher/InstanceTask.cpp
+++ b/launcher/InstanceTask.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "InstanceTask.h"
+#include
#include "minecraft/MinecraftInstance.h"
#include "net/Mode.h"
diff --git a/launcher/InstanceTask.h b/launcher/InstanceTask.h
index 01a8316ae..d28c9fc96 100644
--- a/launcher/InstanceTask.h
+++ b/launcher/InstanceTask.h
@@ -1,3 +1,5 @@
+// launcher/InstanceTask.h
+// @meshmc-public: MeshMC/Core/InstanceTask
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/JavaCommon.cpp b/launcher/JavaCommon.cpp
index 0eee0efb9..bbbf48fac 100644
--- a/launcher/JavaCommon.cpp
+++ b/launcher/JavaCommon.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "JavaCommon.h"
+#include
#include "ui/dialogs/CustomMessageBox.h"
#include
#include
diff --git a/launcher/JavaCommon.h b/launcher/JavaCommon.h
index 7232ce3b3..2be9c31ad 100644
--- a/launcher/JavaCommon.h
+++ b/launcher/JavaCommon.h
@@ -1,3 +1,5 @@
+// launcher/JavaCommon.h
+// @meshmc-public: MeshMC/Core/JavaCommon
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/Json.cpp b/launcher/Json.cpp
index 733108aa8..a9b9858ca 100644
--- a/launcher/Json.cpp
+++ b/launcher/Json.cpp
@@ -18,11 +18,11 @@
* limitations under the License.
*/
-#include "Json.h"
+#include
#include
-#include "FileSystem.h"
+#include
#include
namespace Json
diff --git a/launcher/Json.h b/launcher/Json.h
index d33710015..44082d6b2 100644
--- a/launcher/Json.h
+++ b/launcher/Json.h
@@ -1,3 +1,5 @@
+// launcher/Json.h
+// @meshmc-public: MeshMC/Core/Json
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -30,7 +32,7 @@
#include
#include
-#include "Exception.h"
+#include
namespace Json
{
diff --git a/launcher/KonamiCode.cpp b/launcher/KonamiCode.cpp
index 54b8d1c13..cf2d7dcad 100644
--- a/launcher/KonamiCode.cpp
+++ b/launcher/KonamiCode.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "KonamiCode.h"
+#include
#include
#include
diff --git a/launcher/KonamiCode.h b/launcher/KonamiCode.h
index 1cdeebe87..7754fe729 100644
--- a/launcher/KonamiCode.h
+++ b/launcher/KonamiCode.h
@@ -1,3 +1,5 @@
+// launcher/KonamiCode.h
+// @meshmc-public: MeshMC/Core/KonamiCode
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/LaunchController.cpp b/launcher/LaunchController.cpp
index 3f3d5fcd9..137b2c847 100644
--- a/launcher/LaunchController.cpp
+++ b/launcher/LaunchController.cpp
@@ -17,10 +17,10 @@
* limitations under the License.
*/
-#include "LaunchController.h"
+#include
#include "minecraft/auth/AccountList.h"
-#include "Application.h"
-#include "plugin/PluginManager.h"
+#include
+#include
#include "plugin/PluginHooks.h"
#include "ui/MainWindow.h"
@@ -39,8 +39,8 @@
#include
#include
-#include "BuildConfig.h"
-#include "JavaCommon.h"
+#include
+#include
#include "tasks/Task.h"
#include "minecraft/auth/AccountTask.h"
#include "launch/steps/CreateBackup.h"
diff --git a/launcher/LaunchController.h b/launcher/LaunchController.h
index d2340a20f..da104dcdb 100644
--- a/launcher/LaunchController.h
+++ b/launcher/LaunchController.h
@@ -1,3 +1,5 @@
+// launcher/LaunchController.h
+// @meshmc-public: MeshMC/Core/LaunchController
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
@@ -19,7 +21,7 @@
#pragma once
#include
-#include
+#include
#include
#include "minecraft/launch/MinecraftServerTarget.h"
diff --git a/launcher/LoggedProcess.cpp b/launcher/LoggedProcess.cpp
index 20aa54eaa..68984af0e 100644
--- a/launcher/LoggedProcess.cpp
+++ b/launcher/LoggedProcess.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "LoggedProcess.h"
+#include
#include "MessageLevel.h"
#include
diff --git a/launcher/LoggedProcess.h b/launcher/LoggedProcess.h
index 1ee4c8513..ebed208a3 100644
--- a/launcher/LoggedProcess.h
+++ b/launcher/LoggedProcess.h
@@ -1,3 +1,5 @@
+// launcher/LoggedProcess.h
+// @meshmc-public: MeshMC/Core/LoggedProcess
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/Logging.cpp b/launcher/Logging.cpp
index 7a5f65e7b..3f7bd5a1a 100644
--- a/launcher/Logging.cpp
+++ b/launcher/Logging.cpp
@@ -17,7 +17,7 @@
* limitations under the License.
*/
-#include "Logging.h"
+#include
#include "MMCStrings.h"
diff --git a/launcher/Logging.h b/launcher/Logging.h
index 2a9518369..feeb88b67 100644
--- a/launcher/Logging.h
+++ b/launcher/Logging.h
@@ -1,3 +1,5 @@
+// launcher/Logging.h
+// @meshmc-public: MeshMC/Core/Logging
/* SPDX-FileCopyrightText: 2026 Project Tick
* SPDX-FileContributor: Project Tick
* SPDX-License-Identifier: Apache-2.0
diff --git a/launcher/MMCZip.cpp b/launcher/MMCZip.cpp
index 5df77bdbf..d36b3c742 100644
--- a/launcher/MMCZip.cpp
+++ b/launcher/MMCZip.cpp
@@ -19,8 +19,8 @@
*/
#include "MMCZip.h"
-#include "ArchiveOpen.h"
-#include "FileSystem.h"
+#include
+#include
#include
#include
diff --git a/launcher/NullInstance.h b/launcher/NullInstance.h
index bc1b9322f..b7bc133ac 100644
--- a/launcher/NullInstance.h
+++ b/launcher/NullInstance.h
@@ -19,7 +19,7 @@
#pragma once
-#include "BaseInstance.h"
+#include
#include "launch/LaunchTask.h"
class NullInstance : public BaseInstance
diff --git a/launcher/SkinUtils.cpp b/launcher/SkinUtils.cpp
index 8f76bf4c4..ea80e517f 100644
--- a/launcher/SkinUtils.cpp
+++ b/launcher/SkinUtils.cpp
@@ -20,7 +20,7 @@
#include "SkinUtils.h"
#include "net/HttpMetaCache.h"
-#include "Application.h"
+#include
#include
#include
diff --git a/launcher/VersionProxyModel.cpp b/launcher/VersionProxyModel.cpp
index c5dc07d3c..9be4740e1 100644
--- a/launcher/VersionProxyModel.cpp
+++ b/launcher/VersionProxyModel.cpp
@@ -18,7 +18,7 @@
*/
#include "VersionProxyModel.h"
-#include "Application.h"
+#include
#include
#include
#include
diff --git a/launcher/VersionProxyModel.h b/launcher/VersionProxyModel.h
index 116522e57..0bccecea0 100644
--- a/launcher/VersionProxyModel.h
+++ b/launcher/VersionProxyModel.h
@@ -19,9 +19,9 @@
#pragma once
#include
-#include "BaseVersionList.h"
+#include
-#include
+#include
class VersionFilterModel;
diff --git a/launcher/archive/ExportToZipTask.cpp b/launcher/archive/ExportToZipTask.cpp
index 7791f18b7..fae30dfeb 100644
--- a/launcher/archive/ExportToZipTask.cpp
+++ b/launcher/archive/ExportToZipTask.cpp
@@ -24,7 +24,7 @@
#include
#include
-#include "FileSystem.h"
+#include
#include "MMCZip.h"
namespace MMCZip
diff --git a/launcher/backup/BackupManager.cpp b/launcher/backup/BackupManager.cpp
index 891524b1e..369275c19 100644
--- a/launcher/backup/BackupManager.cpp
+++ b/launcher/backup/BackupManager.cpp
@@ -18,7 +18,7 @@
*/
#include "backup/BackupManager.h"
-#include "Logging.h"
+#include
#include
#include
@@ -28,7 +28,7 @@
#include
#include
-#include "FileSystem.h"
+#include
#include "MMCZip.h"
namespace
diff --git a/launcher/headers/MMCO/C.h b/launcher/headers/MMCO/C.h
new file mode 100644
index 000000000..ecf8c0d84
--- /dev/null
+++ b/launcher/headers/MMCO/C.h
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../plugin/sdk/mmco_c_sdk.h"
diff --git a/launcher/headers/MMCO/CXX b/launcher/headers/MMCO/CXX
new file mode 100644
index 000000000..1fe5dce11
--- /dev/null
+++ b/launcher/headers/MMCO/CXX
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../plugin/sdk/mmco_cxx_sdk.hpp"
diff --git a/launcher/headers/MeshMC/Core/Application b/launcher/headers/MeshMC/Core/Application
new file mode 100644
index 000000000..e62cecb41
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/Application
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../Application.h"
diff --git a/launcher/headers/MeshMC/Core/ApplicationMessage b/launcher/headers/MeshMC/Core/ApplicationMessage
new file mode 100644
index 000000000..c60bd4b01
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/ApplicationMessage
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../ApplicationMessage.h"
diff --git a/launcher/headers/MeshMC/Core/ArchiveOpen b/launcher/headers/MeshMC/Core/ArchiveOpen
new file mode 100644
index 000000000..a451c1238
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/ArchiveOpen
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../ArchiveOpen.h"
diff --git a/launcher/headers/MeshMC/Core/BaseInstaller b/launcher/headers/MeshMC/Core/BaseInstaller
new file mode 100644
index 000000000..292b52460
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/BaseInstaller
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../BaseInstaller.h"
diff --git a/launcher/headers/MeshMC/Core/BaseInstance b/launcher/headers/MeshMC/Core/BaseInstance
new file mode 100644
index 000000000..4c3c12eb4
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/BaseInstance
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../BaseInstance.h"
diff --git a/launcher/headers/MeshMC/Core/BaseVersion b/launcher/headers/MeshMC/Core/BaseVersion
new file mode 100644
index 000000000..dea8abec7
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/BaseVersion
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../BaseVersion.h"
diff --git a/launcher/headers/MeshMC/Core/BaseVersionList b/launcher/headers/MeshMC/Core/BaseVersionList
new file mode 100644
index 000000000..de438e11d
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/BaseVersionList
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../BaseVersionList.h"
diff --git a/launcher/headers/MeshMC/Core/BuildConfig b/launcher/headers/MeshMC/Core/BuildConfig
new file mode 100644
index 000000000..2903ee7ac
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/BuildConfig
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../BuildConfig.h"
diff --git a/launcher/headers/MeshMC/Core/Commandline b/launcher/headers/MeshMC/Core/Commandline
new file mode 100644
index 000000000..b1a67a2e2
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/Commandline
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../Commandline.h"
diff --git a/launcher/headers/MeshMC/Core/DefaultVariable b/launcher/headers/MeshMC/Core/DefaultVariable
new file mode 100644
index 000000000..16c969b44
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/DefaultVariable
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../DefaultVariable.h"
diff --git a/launcher/headers/MeshMC/Core/DesktopServices b/launcher/headers/MeshMC/Core/DesktopServices
new file mode 100644
index 000000000..c185c30f1
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/DesktopServices
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../DesktopServices.h"
diff --git a/launcher/headers/MeshMC/Core/Exception b/launcher/headers/MeshMC/Core/Exception
new file mode 100644
index 000000000..8aba387fb
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/Exception
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../Exception.h"
diff --git a/launcher/headers/MeshMC/Core/ExponentialSeries b/launcher/headers/MeshMC/Core/ExponentialSeries
new file mode 100644
index 000000000..8342e5f01
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/ExponentialSeries
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../ExponentialSeries.h"
diff --git a/launcher/headers/MeshMC/Core/FS b/launcher/headers/MeshMC/Core/FS
new file mode 100644
index 000000000..82f8da8ee
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/FS
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../FileSystem.h"
diff --git a/launcher/headers/MeshMC/Core/FastFileIconProvider b/launcher/headers/MeshMC/Core/FastFileIconProvider
new file mode 100644
index 000000000..c74e2b173
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/FastFileIconProvider
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../FastFileIconProvider.h"
diff --git a/launcher/headers/MeshMC/Core/FileIgnoreProxy b/launcher/headers/MeshMC/Core/FileIgnoreProxy
new file mode 100644
index 000000000..29dbcedf5
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/FileIgnoreProxy
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../FileIgnoreProxy.h"
diff --git a/launcher/headers/MeshMC/Core/Filter b/launcher/headers/MeshMC/Core/Filter
new file mode 100644
index 000000000..982936e5f
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/Filter
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../Filter.h"
diff --git a/launcher/headers/MeshMC/Core/GZip b/launcher/headers/MeshMC/Core/GZip
new file mode 100644
index 000000000..9038fa2b3
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/GZip
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../GZip.h"
diff --git a/launcher/headers/MeshMC/Core/HoeDown b/launcher/headers/MeshMC/Core/HoeDown
new file mode 100644
index 000000000..bd29e22e1
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/HoeDown
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../HoeDown.h"
diff --git a/launcher/headers/MeshMC/Core/InstanceCopyTask b/launcher/headers/MeshMC/Core/InstanceCopyTask
new file mode 100644
index 000000000..c3a190883
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/InstanceCopyTask
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../InstanceCopyTask.h"
diff --git a/launcher/headers/MeshMC/Core/InstanceCreationTask b/launcher/headers/MeshMC/Core/InstanceCreationTask
new file mode 100644
index 000000000..819e337d0
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/InstanceCreationTask
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../InstanceCreationTask.h"
diff --git a/launcher/headers/MeshMC/Core/InstanceImportTask b/launcher/headers/MeshMC/Core/InstanceImportTask
new file mode 100644
index 000000000..3e0332a42
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/InstanceImportTask
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../InstanceImportTask.h"
diff --git a/launcher/headers/MeshMC/Core/InstanceList b/launcher/headers/MeshMC/Core/InstanceList
new file mode 100644
index 000000000..81489e437
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/InstanceList
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../InstanceList.h"
diff --git a/launcher/headers/MeshMC/Core/InstancePageProvider b/launcher/headers/MeshMC/Core/InstancePageProvider
new file mode 100644
index 000000000..586a05dad
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/InstancePageProvider
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../InstancePageProvider.h"
diff --git a/launcher/headers/MeshMC/Core/InstanceTask b/launcher/headers/MeshMC/Core/InstanceTask
new file mode 100644
index 000000000..83c611b5c
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/InstanceTask
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../InstanceTask.h"
diff --git a/launcher/headers/MeshMC/Core/JavaCommon b/launcher/headers/MeshMC/Core/JavaCommon
new file mode 100644
index 000000000..b44889b54
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/JavaCommon
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../JavaCommon.h"
diff --git a/launcher/headers/MeshMC/Core/Json b/launcher/headers/MeshMC/Core/Json
new file mode 100644
index 000000000..1c58ec324
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/Json
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../Json.h"
diff --git a/launcher/headers/MeshMC/Core/KonamiCode b/launcher/headers/MeshMC/Core/KonamiCode
new file mode 100644
index 000000000..471e48fa7
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/KonamiCode
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../KonamiCode.h"
diff --git a/launcher/headers/MeshMC/Core/LaunchController b/launcher/headers/MeshMC/Core/LaunchController
new file mode 100644
index 000000000..9147a20c0
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/LaunchController
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../LaunchController.h"
diff --git a/launcher/headers/MeshMC/Core/LoggedProcess b/launcher/headers/MeshMC/Core/LoggedProcess
new file mode 100644
index 000000000..22db2374a
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/LoggedProcess
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../LoggedProcess.h"
diff --git a/launcher/headers/MeshMC/Core/Logging b/launcher/headers/MeshMC/Core/Logging
new file mode 100644
index 000000000..04d8ccea5
--- /dev/null
+++ b/launcher/headers/MeshMC/Core/Logging
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../Logging.h"
diff --git a/launcher/headers/MeshMC/Plugin/Loader b/launcher/headers/MeshMC/Plugin/Loader
new file mode 100644
index 000000000..bd479a691
--- /dev/null
+++ b/launcher/headers/MeshMC/Plugin/Loader
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../plugin/PluginLoader.h"
diff --git a/launcher/headers/MeshMC/Plugin/MMCOFormat b/launcher/headers/MeshMC/Plugin/MMCOFormat
new file mode 100644
index 000000000..60a2c51c8
--- /dev/null
+++ b/launcher/headers/MeshMC/Plugin/MMCOFormat
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../plugin/MMCOFormat.h"
diff --git a/launcher/headers/MeshMC/Plugin/Manager b/launcher/headers/MeshMC/Plugin/Manager
new file mode 100644
index 000000000..1377f8146
--- /dev/null
+++ b/launcher/headers/MeshMC/Plugin/Manager
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../plugin/PluginManager.h"
diff --git a/launcher/headers/MeshMC/Plugin/Signature b/launcher/headers/MeshMC/Plugin/Signature
new file mode 100644
index 000000000..d08db2b5f
--- /dev/null
+++ b/launcher/headers/MeshMC/Plugin/Signature
@@ -0,0 +1,2 @@
+#pragma once
+#include "../../../plugin/PluginSignature.h"
diff --git a/launcher/icons/IconList.cpp b/launcher/icons/IconList.cpp
index d62afd269..0b4582a91 100644
--- a/launcher/icons/IconList.cpp
+++ b/launcher/icons/IconList.cpp
@@ -19,8 +19,8 @@
*/
#include "IconList.h"
-#include "Logging.h"
-#include
+#include
+#include
#include
#include
#include
diff --git a/launcher/icons/IconUtils.cpp b/launcher/icons/IconUtils.cpp
index 9b3794c8f..e0f026e79 100644
--- a/launcher/icons/IconUtils.cpp
+++ b/launcher/icons/IconUtils.cpp
@@ -18,9 +18,9 @@
*/
#include "IconUtils.h"
-#include "Logging.h"
+#include
-#include "FileSystem.h"
+#include
#include
#include
diff --git a/launcher/java/JavaChecker.cpp b/launcher/java/JavaChecker.cpp
index bf8f0443a..9cf43ce41 100644
--- a/launcher/java/JavaChecker.cpp
+++ b/launcher/java/JavaChecker.cpp
@@ -18,7 +18,7 @@
*/
#include "JavaChecker.h"
-#include "Logging.h"
+#include
#include
#include
@@ -26,9 +26,9 @@
#include
#include "JavaUtils.h"
-#include "FileSystem.h"
-#include "Commandline.h"
-#include "Application.h"
+#include
+#include
+#include
JavaChecker::JavaChecker(QObject* parent) : QObject(parent) {}
diff --git a/launcher/java/JavaCheckerJob.cpp b/launcher/java/JavaCheckerJob.cpp
index 03c3933b9..a929edd90 100644
--- a/launcher/java/JavaCheckerJob.cpp
+++ b/launcher/java/JavaCheckerJob.cpp
@@ -19,7 +19,7 @@
*/
#include "JavaCheckerJob.h"
-#include "Logging.h"
+#include
#include
diff --git a/launcher/java/JavaInstall.h b/launcher/java/JavaInstall.h
index c198a8e40..bed867110 100644
--- a/launcher/java/JavaInstall.h
+++ b/launcher/java/JavaInstall.h
@@ -19,7 +19,7 @@
#pragma once
-#include "BaseVersion.h"
+#include
#include "JavaVersion.h"
struct JavaInstall : public BaseVersion {
diff --git a/launcher/java/JavaInstallList.cpp b/launcher/java/JavaInstallList.cpp
index 8aa0e03ad..fe4dffc3a 100644
--- a/launcher/java/JavaInstallList.cpp
+++ b/launcher/java/JavaInstallList.cpp
@@ -23,7 +23,7 @@
#include
-#include "Logging.h"
+#include
#include "java/JavaInstallList.h"
#include "java/JavaCheckerJob.h"
#include "java/JavaUtils.h"
diff --git a/launcher/java/JavaInstallList.h b/launcher/java/JavaInstallList.h
index ee786a725..1dfd9d132 100644
--- a/launcher/java/JavaInstallList.h
+++ b/launcher/java/JavaInstallList.h
@@ -23,7 +23,7 @@
#include
#include
-#include "BaseVersionList.h"
+#include
#include "tasks/Task.h"
#include "JavaCheckerJob.h"
diff --git a/launcher/java/JavaUtils.cpp b/launcher/java/JavaUtils.cpp
index f1062b9b9..2ec000b42 100644
--- a/launcher/java/JavaUtils.cpp
+++ b/launcher/java/JavaUtils.cpp
@@ -29,10 +29,10 @@
#include
#include
-#include "Logging.h"
+#include
#include "java/JavaUtils.h"
#include "java/JavaInstallList.h"
-#include "FileSystem.h"
+#include
#define IBUS "@im=ibus"
diff --git a/launcher/java/download/JavaDownloadTask.cpp b/launcher/java/download/JavaDownloadTask.cpp
index 1730c1ba8..630ffb77b 100644
--- a/launcher/java/download/JavaDownloadTask.cpp
+++ b/launcher/java/download/JavaDownloadTask.cpp
@@ -18,7 +18,7 @@
*/
#include "JavaDownloadTask.h"
-#include "Logging.h"
+#include
#include
#include
@@ -26,9 +26,9 @@
#include
#include
-#include "Application.h"
-#include "FileSystem.h"
-#include "Json.h"
+#include
+#include
+#include
#include "net/Download.h"
#include "net/ChecksumValidator.h"
#include "MMCZip.h"
diff --git a/launcher/launch/LaunchTask.h b/launcher/launch/LaunchTask.h
index aef02eb4f..54d6a9e12 100644
--- a/launcher/launch/LaunchTask.h
+++ b/launcher/launch/LaunchTask.h
@@ -22,9 +22,9 @@
#include
#include
#include "LogModel.h"
-#include "BaseInstance.h"
+#include
#include "MessageLevel.h"
-#include "LoggedProcess.h"
+#include
#include "LaunchStep.h"
class LaunchTask : public Task
diff --git a/launcher/launch/steps/CheckJava.cpp b/launcher/launch/steps/CheckJava.cpp
index 1496e69eb..c0a8d2367 100644
--- a/launcher/launch/steps/CheckJava.cpp
+++ b/launcher/launch/steps/CheckJava.cpp
@@ -20,7 +20,7 @@
#include "CheckJava.h"
#include
-#include
+#include
#include
#include
#include "Sys.h"
diff --git a/launcher/launch/steps/CheckJava.h b/launcher/launch/steps/CheckJava.h
index 946c7d7c4..c506c52c0 100644
--- a/launcher/launch/steps/CheckJava.h
+++ b/launcher/launch/steps/CheckJava.h
@@ -21,7 +21,7 @@
#pragma once
#include
-#include
+#include
#include
class CheckJava : public LaunchStep
diff --git a/launcher/launch/steps/CreateBackup.cpp b/launcher/launch/steps/CreateBackup.cpp
index fe707fdcc..b2d3074b5 100644
--- a/launcher/launch/steps/CreateBackup.cpp
+++ b/launcher/launch/steps/CreateBackup.cpp
@@ -19,7 +19,7 @@
#include "CreateBackup.h"
-#include "BaseInstance.h"
+#include
#include "launch/LaunchTask.h"
void CreateBackup::executeTask()
diff --git a/launcher/launch/steps/PostLaunchCommand.h b/launcher/launch/steps/PostLaunchCommand.h
index 8b5073cfe..bf701401f 100644
--- a/launcher/launch/steps/PostLaunchCommand.h
+++ b/launcher/launch/steps/PostLaunchCommand.h
@@ -21,7 +21,7 @@
#pragma once
#include
-#include
+#include
class PostLaunchCommand : public LaunchStep
{
diff --git a/launcher/launch/steps/PreLaunchCommand.h b/launcher/launch/steps/PreLaunchCommand.h
index 9488e2a82..7428070c7 100644
--- a/launcher/launch/steps/PreLaunchCommand.h
+++ b/launcher/launch/steps/PreLaunchCommand.h
@@ -21,7 +21,7 @@
#pragma once
#include "launch/LaunchStep.h"
-#include "LoggedProcess.h"
+#include
class PreLaunchCommand : public LaunchStep
{
diff --git a/launcher/launch/steps/TextPrint.h b/launcher/launch/steps/TextPrint.h
index b2efcd654..68c53be06 100644
--- a/launcher/launch/steps/TextPrint.h
+++ b/launcher/launch/steps/TextPrint.h
@@ -21,7 +21,7 @@
#pragma once
#include
-#include
+#include
#include
/*
diff --git a/launcher/launch/steps/Update.h b/launcher/launch/steps/Update.h
index 30f761053..2fd4ef90a 100644
--- a/launcher/launch/steps/Update.h
+++ b/launcher/launch/steps/Update.h
@@ -22,7 +22,7 @@
#include
#include
-#include
+#include
#include
#include
diff --git a/launcher/main.cpp b/launcher/main.cpp
index f47395404..ff7f741cd 100644
--- a/launcher/main.cpp
+++ b/launcher/main.cpp
@@ -17,9 +17,9 @@
* limitations under the License.
*/
-#include "Application.h"
-#include "BuildConfig.h"
-#include "FileSystem.h"
+#include
+#include
+#include
#include
#include
diff --git a/launcher/meta/BaseEntity.cpp b/launcher/meta/BaseEntity.cpp
index 644cd31a6..4d27b9f78 100644
--- a/launcher/meta/BaseEntity.cpp
+++ b/launcher/meta/BaseEntity.cpp
@@ -19,15 +19,15 @@
*/
#include "BaseEntity.h"
-#include "Logging.h"
+#include
#include "net/Download.h"
#include "net/HttpMetaCache.h"
#include "net/NetJob.h"
-#include "Json.h"
+#include
-#include "BuildConfig.h"
-#include "Application.h"
+#include
+#include
class ParsingValidator : public Net::Validator
{
diff --git a/launcher/meta/JsonFormat.cpp b/launcher/meta/JsonFormat.cpp
index 880aa220f..4418c6cbc 100644
--- a/launcher/meta/JsonFormat.cpp
+++ b/launcher/meta/JsonFormat.cpp
@@ -22,7 +22,7 @@
// FIXME: remove this from here... somehow
#include "minecraft/OneSixVersionFormat.h"
-#include "Json.h"
+#include
#include "Index.h"
#include "Version.h"
diff --git a/launcher/meta/JsonFormat.h b/launcher/meta/JsonFormat.h
index bb6833770..9dc62d253 100644
--- a/launcher/meta/JsonFormat.h
+++ b/launcher/meta/JsonFormat.h
@@ -23,7 +23,7 @@
#include
#include
-#include "Exception.h"
+#include
#include "meta/BaseEntity.h"
#include
diff --git a/launcher/meta/Version.h b/launcher/meta/Version.h
index f62f21a67..281d6926b 100644
--- a/launcher/meta/Version.h
+++ b/launcher/meta/Version.h
@@ -20,7 +20,7 @@
#pragma once
-#include "BaseVersion.h"
+#include
#include
#include
diff --git a/launcher/meta/VersionList.h b/launcher/meta/VersionList.h
index 9d3a91883..428d7cc2c 100644
--- a/launcher/meta/VersionList.h
+++ b/launcher/meta/VersionList.h
@@ -21,7 +21,7 @@
#pragma once
#include "BaseEntity.h"
-#include "BaseVersionList.h"
+#include
#include
#include
diff --git a/launcher/minecraft/AssetsUtils.cpp b/launcher/minecraft/AssetsUtils.cpp
index cb21deebc..ef387315c 100644
--- a/launcher/minecraft/AssetsUtils.cpp
+++ b/launcher/minecraft/AssetsUtils.cpp
@@ -29,12 +29,12 @@
#include
#include "AssetsUtils.h"
-#include "FileSystem.h"
+#include
#include "net/Download.h"
#include "net/ChecksumValidator.h"
-#include "BuildConfig.h"
+#include
-#include "Application.h"
+#include
namespace
{
diff --git a/launcher/minecraft/Component.cpp b/launcher/minecraft/Component.cpp
index 424e81ebd..dfe258b55 100644
--- a/launcher/minecraft/Component.cpp
+++ b/launcher/minecraft/Component.cpp
@@ -26,9 +26,9 @@
#include "meta/Version.h"
#include "VersionFile.h"
#include "minecraft/PackProfile.h"
-#include "FileSystem.h"
+#include
#include "OneSixVersionFormat.h"
-#include "Application.h"
+#include
#include
diff --git a/launcher/minecraft/ComponentUpdateTask.cpp b/launcher/minecraft/ComponentUpdateTask.cpp
index c1da1d087..9b3072785 100644
--- a/launcher/minecraft/ComponentUpdateTask.cpp
+++ b/launcher/minecraft/ComponentUpdateTask.cpp
@@ -31,7 +31,7 @@
#include "net/Mode.h"
#include "OneSixVersionFormat.h"
-#include "Application.h"
+#include
/*
* This is responsible for loading the components of a component list AND
diff --git a/launcher/minecraft/GradleSpecifier.h b/launcher/minecraft/GradleSpecifier.h
index e55b5da71..1f1304f50 100644
--- a/launcher/minecraft/GradleSpecifier.h
+++ b/launcher/minecraft/GradleSpecifier.h
@@ -22,7 +22,7 @@
#include