From 620181f6c6e85acae9aed1eb6d8a0a274ea913f2 Mon Sep 17 00:00:00 2001 From: halogen Date: Wed, 4 Mar 2026 11:44:05 -0500 Subject: [PATCH] fix merge conflicts, build issues --- CMakeLists.txt | 13 +++++++++---- .../Windows64/Network/WinsockNetLayer.h | 2 +- Minecraft.Client/Xbox/MinecraftWindows.rc | 2 +- Minecraft.Client/Xbox/targetver.h | 3 +++ cmake/LinuxCrosscompile.cmake | 2 ++ 5 files changed, 16 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b7387645c..bec60476b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 3.24) -project(MinecraftConsoles LANGUAGES C CXX) +project(MinecraftConsoles LANGUAGES C CXX RC) if(NOT CMAKE_SIZEOF_VOID_P EQUAL 8 AND WIN32) # This check is broken on linux+clang-cl message(FATAL_ERROR "Use a 64-bit generator/toolchain (x64).") @@ -24,9 +24,12 @@ include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/ClientSources.cmake") list(TRANSFORM MINECRAFT_WORLD_SOURCES PREPEND "${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.World/") list(TRANSFORM MINECRAFT_CLIENT_SOURCES PREPEND "${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/") -list(APPEND MINECRAFT_CLIENT_SOURCES - "${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Xbox/MinecraftWindows.rc" -) + +if(NOT CMAKE_CROSSCOMPILING) # broken when cross compiling (can't include sdkddkver.h) + list(APPEND MINECRAFT_CLIENT_SOURCES + "${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Xbox/MinecraftWindows.rc" + ) +endif() add_library(MinecraftWorld STATIC ${MINECRAFT_WORLD_SOURCES}) target_include_directories(MinecraftWorld PRIVATE @@ -36,6 +39,7 @@ target_include_directories(MinecraftWorld PRIVATE target_compile_definitions(MinecraftWorld PRIVATE $<$:_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_DEBUG;_LIB;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64> $<$>:_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_LIB;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64> + $<$:LCE_CROSSCOMP> ) if(MSVC) configure_msvc_target(MinecraftWorld) @@ -51,6 +55,7 @@ target_include_directories(MinecraftClient PRIVATE target_compile_definitions(MinecraftClient PRIVATE $<$:_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_DEBUG;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64> $<$>:_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64> + $<$:LCE_CROSSCOMP> ) if(MSVC) configure_msvc_target(MinecraftClient) diff --git a/Minecraft.Client/Windows64/Network/WinsockNetLayer.h b/Minecraft.Client/Windows64/Network/WinsockNetLayer.h index fd1280f7d..e6f445096 100644 --- a/Minecraft.Client/Windows64/Network/WinsockNetLayer.h +++ b/Minecraft.Client/Windows64/Network/WinsockNetLayer.h @@ -9,7 +9,7 @@ #include #include "..\..\Common\Network\NetworkPlayerInterface.h" -#pragma comment(lib, "Ws2_32.lib") +#pragma comment(lib, "ws2_32.lib") #define WIN64_NET_DEFAULT_PORT 25565 #define WIN64_NET_MAX_CLIENTS 7 diff --git a/Minecraft.Client/Xbox/MinecraftWindows.rc b/Minecraft.Client/Xbox/MinecraftWindows.rc index e4fd4960b..2494d079e 100644 --- a/Minecraft.Client/Xbox/MinecraftWindows.rc +++ b/Minecraft.Client/Xbox/MinecraftWindows.rc @@ -1,6 +1,6 @@ // Microsoft Visual C++ generated resource script. // -#include "resource.h" +#include "Resource.h" #define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// diff --git a/Minecraft.Client/Xbox/targetver.h b/Minecraft.Client/Xbox/targetver.h index 87c0086de..e385de7e7 100644 --- a/Minecraft.Client/Xbox/targetver.h +++ b/Minecraft.Client/Xbox/targetver.h @@ -5,4 +5,7 @@ // If you wish to build your application for a previous Windows platform, include WinSDKVer.h and // set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. +// This is currently broken on linux to windows cross compilation, PLS FIX +#ifndef LCE_CROSSCOMP #include +#endif diff --git a/cmake/LinuxCrosscompile.cmake b/cmake/LinuxCrosscompile.cmake index 10fe2c929..b4017da8b 100644 --- a/cmake/LinuxCrosscompile.cmake +++ b/cmake/LinuxCrosscompile.cmake @@ -10,6 +10,8 @@ set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT MSVC) add_compile_options(/winsysroot /opt/msvc --target=x86_64-pc-windows-msvc -fms-compatibility -fms-extensions -fdelayed-template-parsing) add_link_options(/winsysroot:/opt/msvc) +#set(CMAKE_RC_COMPILE_OBJECT " /I /opt/msvc/kits/10/include/10.0.26100.0/shared /fo ") + set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)