project(npatch) cmake_minimum_required(VERSION 3.28) set(CMAKE_CXX_STANDARD 23) add_subdirectory(${CORE_ROOT} core) aux_source_directory(src SRC_LIST) aux_source_directory(src/jni SRC_LIST) set(SRC_LIST ${SRC_LIST} api/patch_main.cpp) add_library(${PROJECT_NAME} SHARED ${SRC_LIST}) target_include_directories(${PROJECT_NAME} PUBLIC include) target_include_directories(${PROJECT_NAME} PRIVATE src) target_link_libraries(${PROJECT_NAME} core log) if (DEFINED DEBUG_SYMBOLS_PATH) set(DEBUG_SYMBOLS_PATH ${DEBUG_SYMBOLS_PATH}/${API}) message(STATUS "Debug symbols will be placed at ${DEBUG_SYMBOLS_PATH}") add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${DEBUG_SYMBOLS_PATH}/${ANDROID_ABI} COMMAND ${CMAKE_OBJCOPY} --only-keep-debug $ ${DEBUG_SYMBOLS_PATH}/${ANDROID_ABI}/${PROJECT_NAME}.debug COMMAND ${CMAKE_STRIP} --strip-all $ COMMAND ${CMAKE_OBJCOPY} --add-gnu-debuglink ${DEBUG_SYMBOLS_PATH}/${ANDROID_ABI}/${PROJECT_NAME}.debug $) endif()