From 3de4056df4ea5d0afbcea388ad8d681daea1aac3 Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Wed, 8 Apr 2026 03:30:04 -0500 Subject: Remove NaK/Rust dependency, port remaining functionality to native C++ Replace NaK Rust crate and nak_ffi with native C++ implementations: - Game detection (Steam, Heroic, Bottles), VDF parser, icon extraction - Prefix symlinks, SLR manager, Steam path detection - Known games database Add FUSE VFS optimizations: zero-copy reads via fuse_reply_data, default_permissions mount option, FUSE_CAP_ASYNC_DIO, FUSE_CAP_EXPIRE_ONLY, lookup cache parent index, cached mode bits, increased I/O buffer sizes. Update build system, prefix setup, and various fixes. Co-Authored-By: Claude Opus 4.6 (1M context) --- libs/nak_ffi/CMakeLists.txt | 38 -------------------------------------- 1 file changed, 38 deletions(-) delete mode 100644 libs/nak_ffi/CMakeLists.txt (limited to 'libs/nak_ffi/CMakeLists.txt') diff --git a/libs/nak_ffi/CMakeLists.txt b/libs/nak_ffi/CMakeLists.txt deleted file mode 100644 index 72d939f..0000000 --- a/libs/nak_ffi/CMakeLists.txt +++ /dev/null @@ -1,38 +0,0 @@ -cmake_minimum_required(VERSION 3.16) -project(nak_ffi) - -if(CMAKE_BUILD_TYPE STREQUAL "Debug") - set(CARGO_BUILD_TYPE "debug") - set(CARGO_BUILD_FLAGS "") -else() - set(CARGO_BUILD_TYPE "release") - set(CARGO_BUILD_FLAGS "--release") -endif() - -set(NAK_FFI_DIR ${CMAKE_CURRENT_SOURCE_DIR}) -set(NAK_FFI_LIB ${NAK_FFI_DIR}/target/${CARGO_BUILD_TYPE}/libnak_ffi.so) - -# Glob all Rust sources so any change triggers a cargo rebuild -file(GLOB_RECURSE NAK_FFI_SOURCES ${NAK_FFI_DIR}/src/*.rs) -file(GLOB_RECURSE NAK_SOURCES ${NAK_FFI_DIR}/../nak/src/*.rs) - -add_custom_command( - OUTPUT ${NAK_FFI_LIB} - COMMAND cargo build ${CARGO_BUILD_FLAGS} - WORKING_DIRECTORY ${NAK_FFI_DIR} - COMMENT "Building NaK FFI library (Rust)" - DEPENDS ${NAK_FFI_DIR}/Cargo.toml ${NAK_FFI_DIR}/../nak/Cargo.toml - ${NAK_FFI_SOURCES} ${NAK_SOURCES} -) - -add_custom_target(nak_ffi_build DEPENDS ${NAK_FFI_LIB}) - -# INTERFACE wrapper so ALIAS works (CMake can't alias IMPORTED targets) -add_library(nak_ffi_wrapper INTERFACE) -target_link_libraries(nak_ffi_wrapper INTERFACE ${NAK_FFI_LIB}) -target_include_directories(nak_ffi_wrapper INTERFACE ${NAK_FFI_DIR}/include) -add_dependencies(nak_ffi_wrapper nak_ffi_build) -add_library(mo2::nak_ffi ALIAS nak_ffi_wrapper) - -install(FILES ${NAK_FFI_LIB} DESTINATION lib) -install(DIRECTORY ${NAK_FFI_DIR}/include/ DESTINATION include) -- cgit v1.3.1