set(IL2CPP il2cpp) add_library(${IL2CPP} SHARED ${CMAKE_CURRENT_LIST_DIR}/il2cpp.c) set(TOLUA tolua) add_library(${TOLUA} SHARED ${CMAKE_CURRENT_LIST_DIR}/tolua.c) set(CRACKER cracker) file(GLOB CRACKER_PROTOS ${CMAKE_CURRENT_LIST_DIR}/proto/*.proto) file(GLOB CRACKER_SRCS ${CMAKE_CURRENT_LIST_DIR}/*.hpp ${CMAKE_CURRENT_LIST_DIR}/*.cpp ${CMAKE_CURRENT_LIST_DIR}/xhook/*.h ${CMAKE_CURRENT_LIST_DIR}/xhook/*.c ${CMAKE_CURRENT_LIST_DIR}/ui/*.h ${CMAKE_CURRENT_LIST_DIR}/ui/*.hpp ${CMAKE_CURRENT_LIST_DIR}/ui/*.cpp ${CMAKE_CURRENT_LIST_DIR}/imgui/*.h ${CMAKE_CURRENT_LIST_DIR}/imgui/*.c ${CMAKE_CURRENT_LIST_DIR}/imgui/*.hpp ${CMAKE_CURRENT_LIST_DIR}/imgui/*.cpp ) if (ANDROID_ARMEABI_V7A OR ANDROID_ARM64_V8A) set(PROCESSOR.ARM ON) elseif (ANDROID_X86) set(PROCESSOR.X86 ON) else () set(PROCESSOR.X86_64 ON) endif () set(SYSTEM.Android ON) add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/Dobby) add_library(${CRACKER} SHARED ${CRACKER_SRCS}) target_include_directories(${CRACKER} PRIVATE ${CMAKE_CURRENT_LIST_DIR}) target_link_options(${CRACKER} PRIVATE -Wl,--version-script=${CMAKE_CURRENT_LIST_DIR}/cracker.map) target_link_libraries(${CRACKER} PRIVATE httplib::httplib spdlog::spdlog JsonCpp::JsonCpp PRIVATE ${TOLUA} ${IL2CPP} ) target_compile_definitions(${CRACKER} PRIVATE ${SPDLOG_DEFINES} SPDLOG_ACTIVE_LEVEL=SPDLOG_LEVEL_TRACE PRIVATE SOL_USE_LUA_HPP PRIVATE SPDLOG_NO_SOURCE_LOC ) target_sources(${CRACKER} PRIVATE ${CRACKER_UI_SRCS}) target_link_libraries(${CRACKER} PRIVATE android EGL GLESv3 log PRIVATE dobby_static ) target_compile_definitions(${CRACKER} PRIVATE IMGUI_IMPL_OPENGL_ES3 ) if (DEBUG_MODE) target_compile_definitions(${CRACKER} PRIVATE DEBUG_MODE) endif () set(CRACKER_PB_DIR ${CMAKE_CURRENT_LIST_DIR}/pb) if (NOT EXISTS ${CRACKER_PB_DIR}) file(MAKE_DIRECTORY ${CRACKER_PB_DIR}) endif() if (ANDROID_ABI STREQUAL "x86" OR ANDROID_ABI STREQUAL "armeabi-v7a") target_compile_definitions(${CRACKER} PRIVATE USE_32) else () target_compile_definitions(${CRACKER} PRIVATE USE_64) endif ()