imgui-mirror/CMakeLists.txt
2026-04-06 07:01:27 +08:00

46 lines
1.2 KiB
CMake

cmake_minimum_required(VERSION 3.10)
project(ModMenu)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# ==================== 1. 编译 libmodmenu.so ====================
set(IMGUI_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/imgui.cpp
${CMAKE_CURRENT_SOURCE_DIR}/imgui_draw.cpp
${CMAKE_CURRENT_SOURCE_DIR}/imgui_tables.cpp
${CMAKE_CURRENT_SOURCE_DIR}/imgui_widgets.cpp
${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_android.cpp
${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_opengl3.cpp
)
add_library(dobby STATIC IMPORTED)
set_target_properties(dobby PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/libdobby.a)
add_library(modmenu SHARED main.cpp ${IMGUI_SOURCES})
target_include_directories(modmenu PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/backends
)
target_link_libraries(modmenu
dobby
android
EGL
GLESv3
log
z
)
# ==================== 2. 编译注入器 injector ====================
add_executable(injector injector.cpp)
target_link_libraries(injector dl)
# 可选:指定输出目录(与 so 相同)
set_target_properties(modmenu injector PROPERTIES
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}
)