From 2aeff14e4588c0dce5540c19ff8f631c7873f401 Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Fri, 2 Oct 2026 17:36:12 -0700 Subject: [PATCH] CMake: Stop searching for a bunch of projects when building for Steam Just to ensure if someone is injecting a built FEX in to the Steam depot, it doesn't happen to pick up on their system installed packages. When built under SteamRT4 this isn't an issue as they don't exist, but locally I'm usually not spinning up the docker instance each time and I tend to get libxxhash-dev installed since Mesa needs it. --- CMakeLists.txt | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 87b7c311d..f9ce91b3c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -367,7 +367,10 @@ include(LinkerGC) ## Externals ## -find_package(unordered_dense QUIET CONFIG) +if (NOT BUILD_STEAM_SUPPORT) + find_package(unordered_dense QUIET CONFIG) +endif() + if (NOT unordered_dense_FOUND) add_subdirectory(External/unordered_dense) endif() @@ -378,8 +381,10 @@ if (BUILD_TESTING OR ENABLE_VIXL_DISASSEMBLER OR ENABLE_VIXL_SIMULATOR) endif() if (ENABLE_ZYDIS) - find_package(Zycore 1.5 MODULE QUIET) - find_package(Zydis 4.0 MODULE QUIET) + if (NOT BUILD_STEAM_SUPPORT) + find_package(Zycore 1.5 MODULE QUIET) + find_package(Zydis 4.0 MODULE QUIET) + endif() if (TARGET Zydis::Zydis AND TARGET Zycore::Zycore) message(STATUS "Using system Zydis") @@ -400,7 +405,7 @@ find_package(Python 3.9 REQUIRED COMPONENTS Interpreter) set(BUILD_SHARED_LIBS OFF) -if (NOT CMAKE_CROSSCOMPILING) +if (NOT CMAKE_CROSSCOMPILING AND NOT BUILD_STEAM_SUPPORT) find_package(xxhash MODULE QUIET) endif() @@ -428,7 +433,7 @@ else () file(GENERATE OUTPUT CTestTestfile.cmake CONTENT "# No tests since BUILD_TESTING is disabled") endif() -if (MINGW) +if (MINGW OR BUILD_STEAM_SUPPORT) set(FMT_INSTALL OFF) add_subdirectory(External/fmt/) else() @@ -440,7 +445,10 @@ else() endif() endif() -find_package(range-v3 QUIET) +if (NOT BUILD_STEAM_SUPPORT) + find_package(range-v3 QUIET) +endif() + if (NOT range-v3_FOUND) add_subdirectory(External/range-v3/) target_compile_definitions(range-v3 INTERFACE RANGES_DISABLE_DEPRECATED_WARNINGS)