From aba18915ba7d1a451d054cff3f78ef1dab882324 Mon Sep 17 00:00:00 2001 From: boykopovar Date: Thu, 20 Aug 2026 17:32:00 +0300 Subject: [PATCH] fix(libs): fix nid patching after libs build --- core/libs/CMakeLists.txt | 28 ++++++++++++++----------- core/libs/libSceAudio/Export.cpp | 36 ++++++++++++++++---------------- 2 files changed, 34 insertions(+), 30 deletions(-) diff --git a/core/libs/CMakeLists.txt b/core/libs/CMakeLists.txt index 8cf68079b..0c9090840 100644 --- a/core/libs/CMakeLists.txt +++ b/core/libs/CMakeLists.txt @@ -1,4 +1,4 @@ -add_executable(nid_patcher EXCLUDE_FROM_ALL +add_executable(nid_patcher ${CMAKE_CURRENT_SOURCE_DIR}/nid/src/Sha1.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nid/src/NidCompute.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nid/src/main.cpp @@ -8,7 +8,7 @@ target_compile_features(nid_patcher PRIVATE cxx_std_20) file(GLOB LIBS_DIRS LIST_DIRECTORIES true ${CMAKE_CURRENT_SOURCE_DIR}/lib*) -set(LIB_TARGETS) +set(PATCHED_STAMPS) foreach(LIB_DIR ${LIBS_DIRS}) if(IS_DIRECTORY ${LIB_DIR}) @@ -16,21 +16,25 @@ foreach(LIB_DIR ${LIBS_DIRS}) add_library(${LIB_NAME} SHARED EXCLUDE_FROM_ALL ${LIB_DIR}/Export.cpp) set_target_properties(${LIB_NAME} PROPERTIES - PREFIX "" - SUFFIX .rpx - RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/libs - LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/libs + PREFIX "" + SUFFIX .rpx + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/libs + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/libs ) - add_dependencies(${LIB_NAME} nid_patcher) + set(RPX_FILE ${CMAKE_CURRENT_BINARY_DIR}/libs/${LIB_NAME}.rpx) + set(STAMP_FILE ${CMAKE_CURRENT_BINARY_DIR}/libs/${LIB_NAME}.patched) - add_custom_command(TARGET ${LIB_NAME} POST_BUILD - COMMAND $ ${LIB_NAME} $ - COMMENT "Patching NIDs" + add_custom_command( + OUTPUT ${STAMP_FILE} + COMMAND $ ${LIB_NAME} ${RPX_FILE} + COMMAND ${CMAKE_COMMAND} -E touch ${STAMP_FILE} + DEPENDS nid_patcher ${LIB_NAME} + COMMENT "Patching NIDs for ${LIB_NAME}" ) - list(APPEND LIB_TARGETS ${LIB_NAME}) + list(APPEND PATCHED_STAMPS ${STAMP_FILE}) endif() endforeach() -add_custom_target(libs DEPENDS nid_patcher ${LIB_TARGETS}) +add_custom_target(libs DEPENDS ${PATCHED_STAMPS}) diff --git a/core/libs/libSceAudio/Export.cpp b/core/libs/libSceAudio/Export.cpp index ebcc805b6..fe585c304 100644 --- a/core/libs/libSceAudio/Export.cpp +++ b/core/libs/libSceAudio/Export.cpp @@ -2,28 +2,28 @@ extern "C" { - using SceAudioOutPortId = std::int32_t; +using SceAudioOutPortId = std::int32_t; - std::int32_t sceAudioOutInit(void) { return 0; } +std::int32_t sceAudioOutInit(void) { return 0; } - SceAudioOutPortId sceAudioOutOpen(std::int32_t userId, std::int32_t type, std::int32_t index, std::uint32_t len, std::uint32_t freq, std::uint32_t param) { - (void)userId; (void)type; (void)index; (void)len; (void)freq; (void)param; - return 0; - } +SceAudioOutPortId sceAudioOutOpen(std::int32_t userId, std::int32_t type, std::int32_t index, std::uint32_t len, std::uint32_t freq, std::uint32_t param) { + (void)userId; (void)type; (void)index; (void)len; (void)freq; (void)param; + return 0; +} - std::int32_t sceAudioOutOutput(SceAudioOutPortId handle, const void* ptr) { - (void)handle; (void)ptr; - return 0; - } +std::int32_t sceAudioOutOutput(SceAudioOutPortId handle, const void* ptr) { + (void)handle; (void)ptr; + return 0; +} - std::int32_t sceAudioOutSetVolume(SceAudioOutPortId handle, std::int32_t flag, std::int32_t* vol) { - (void)handle; (void)flag; (void)vol; - return 0; - } +std::int32_t sceAudioOutSetVolume(SceAudioOutPortId handle, std::int32_t flag, std::int32_t* vol) { + (void)handle; (void)flag; (void)vol; + return 0; +} - std::int32_t sceAudioOutClose(SceAudioOutPortId handle) { - (void)handle; - return 0; - } +std::int32_t sceAudioOutClose(SceAudioOutPortId handle) { + (void)handle; + return 0; +} }