From 39c55b6acf05ac78a279f73fd1ce99df5dc08925 Mon Sep 17 00:00:00 2001 From: crueter Date: Sat, 4 Oct 2025 18:59:25 -0400 Subject: [PATCH 1/3] Make fmt an external OpenIndiana does not package it Signed-off-by: crueter --- CMakeLists.txt | 6 +----- cpmfile.json | 7 ------- externals/CMakeLists.txt | 3 +++ externals/cpmfile.json | 7 +++++++ 4 files changed, 11 insertions(+), 12 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 49f9a583fd..ba29e817b3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -429,9 +429,6 @@ if (YUZU_USE_CPM) endif() endif() - # fmt - AddJsonPackage(fmt) - # lz4 AddJsonPackage(lz4) @@ -473,8 +470,6 @@ if (YUZU_USE_CPM) endif() else() # Enforce the search mode of non-required packages for better and shorter failure messages - find_package(fmt 8 REQUIRED) - if (NOT YUZU_DISABLE_LLVM) find_package(LLVM MODULE COMPONENTS Demangle) endif() @@ -544,6 +539,7 @@ find_package(VulkanUtilityLibraries) find_package(SimpleIni) find_package(SPIRV-Tools) find_package(sirit) +find_package(fmt) if (ARCHITECTURE_x86 OR ARCHITECTURE_x86_64) find_package(xbyak) diff --git a/cpmfile.json b/cpmfile.json index e9e53ed326..957039c371 100644 --- a/cpmfile.json +++ b/cpmfile.json @@ -25,13 +25,6 @@ "0003-armasm-options.patch" ] }, - "fmt": { - "repo": "fmtlib/fmt", - "tag": "%VERSION%", - "hash": "c4ab814c20fbad7e3f0ae169125a4988a2795631194703251481dc36b18da65c886c4faa9acd046b0a295005217b3689eb0126108a9ba5aac2ca909aae263c2f", - "version": "8", - "git_version": "12.0.0" - }, "lz4": { "name": "lz4", "repo": "lz4/lz4", diff --git a/externals/CMakeLists.txt b/externals/CMakeLists.txt index 434e6fb100..eb9a418ae8 100644 --- a/externals/CMakeLists.txt +++ b/externals/CMakeLists.txt @@ -39,6 +39,9 @@ if (ARCHITECTURE_arm64 OR DYNARMIC_TESTS) AddJsonPackage(oaknut) endif() +# fmt +AddJsonPackage(fmt) + # enet AddJsonPackage(enet) diff --git a/externals/cpmfile.json b/externals/cpmfile.json index aa3a97c128..e1ca354c78 100644 --- a/externals/cpmfile.json +++ b/externals/cpmfile.json @@ -198,5 +198,12 @@ "key": "steamdeck", "bundled": true, "skip_updates": "true" + }, + "fmt": { + "repo": "fmtlib/fmt", + "tag": "%VERSION%", + "hash": "c4ab814c20fbad7e3f0ae169125a4988a2795631194703251481dc36b18da65c886c4faa9acd046b0a295005217b3689eb0126108a9ba5aac2ca909aae263c2f", + "version": "8", + "git_version": "12.0.0" } } From 4b677bbbb98f8a9c91bdca9b8d9c7b0ab244931d Mon Sep 17 00:00:00 2001 From: crueter Date: Sat, 4 Oct 2025 20:48:26 -0400 Subject: [PATCH 2/3] solaris Signed-off-by: crueter --- CMakeLists.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 49f9a583fd..7f192887f7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -32,10 +32,20 @@ endif() list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules") list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/externals/cmake-modules") + +# NB: this does not account for SPARC +# If you get Eden working on SPARC, please shoot crueter@crueter.xyz multiple emails +# and you will be hailed for eternity if (PLATFORM_SUN) # Terrific Solaris pkg shenanigans list(APPEND CMAKE_PREFIX_PATH "/usr/lib/qt/6.6/lib/amd64/cmake") list(APPEND CMAKE_MODULE_PATH "/usr/lib/qt/6.6/lib/amd64/cmake") + + # amazing + # absolutely incredible + list(APPEND CMAKE_PREFIX_PATH "/usr/lib/amd64/cmake") + list(APPEND CMAKE_MODULE_PATH "/usr/lib/amd64/cmake") + # For some mighty reason, doing a normal release build sometimes may not trigger # the proper -O3 switch to materialize if (CMAKE_BUILD_TYPE MATCHES "Release") From 800d98d2127dad72bcac2a1dfcd47197dd29923e Mon Sep 17 00:00:00 2001 From: crueter Date: Sat, 4 Oct 2025 21:00:35 -0400 Subject: [PATCH 3/3] allow system libusb on solaris Signed-off-by: crueter --- docs/Deps.md | 2 +- externals/libusb/CMakeLists.txt | 13 +------------ 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/docs/Deps.md b/docs/Deps.md index 69f41794ea..b8a1be66d2 100644 --- a/docs/Deps.md +++ b/docs/Deps.md @@ -195,7 +195,7 @@ Run the usual update + install of essential toolings: `sudo pkg update && sudo p - **gcc**: `sudo pkg install developer/gcc-14`. - **clang**: Version 20 is broken, use `sudo pkg install developer/clang-19`. -Then install the libraries: `sudo pkg install qt6 boost glslang libzip library/lz4 nlohmann-json openssl opus sdl2 zlib compress/zstd unzip pkg-config nasm autoconf mesa library/libdrm header-drm developer/fmt`. +Then install the libraries: `sudo pkg install qt6 boost glslang libzip library/lz4 libusb-1 nlohmann-json openssl opus sdl2 zlib compress/zstd unzip pkg-config nasm autoconf mesa library/libdrm header-drm developer/fmt`.
diff --git a/externals/libusb/CMakeLists.txt b/externals/libusb/CMakeLists.txt index 77a762d070..a53464ea98 100644 --- a/externals/libusb/CMakeLists.txt +++ b/externals/libusb/CMakeLists.txt @@ -6,18 +6,7 @@ include(CPMUtil) -# we love our libraries don't we folks -if (PLATFORM_SUN) - set(libusb_bundled ON) -else() - set(libusb_bundled OFF) -endif() - -# TODO(crueter): Fix on Solaris -AddJsonPackage( - NAME libusb - BUNDLED_PACKAGE ${libusb_bundled} -) +AddJsonPackage(libusb) if (NOT libusb_ADDED) return()