CMakeLists.txt
1 cmake_minimum_required(VERSION 3.13.0) 2 3 project(AImGUI) 4 5 set(CMAKE_CXX_STANDARD 20) 6 add_compile_options(-fno-rtti -fvisibility=hidden) 7 add_link_options(-s) 8 9 find_library(liblog log NO_CACHE) 10 11 include_directories( 12 modules 13 includes 14 third_party 15 third_party/imgui 16 ${CMAKE_CURRENT_SOURCE_DIR}/../KittyMemoryEx 17 ) 18 19 # Scan imgui sources 20 aux_source_directory(third_party/imgui AIMGUI_IMGUI_SOURCES) 21 22 # Make imgui backends sources 23 set( 24 AIMGUI_IMGUI_BACKENDS_SOURCES 25 third_party/imgui/backends/imgui_impl_android.cpp 26 third_party/imgui/backends/imgui_impl_opengl3.cpp 27 ) 28 29 # Scan common sources 30 aux_source_directory(src/common AIMGUI_COMMON_SOURCES) 31 32 # Build AImGui library 33 add_library(AImGui STATIC 34 ${AIMGUI_COMMON_SOURCES} 35 ${AIMGUI_IMGUI_SOURCES} 36 ${AIMGUI_IMGUI_BACKENDS_SOURCES} 37 ) 38 39 target_link_libraries(AImGui 40 ${liblog} 41 EGL 42 GLESv3 43 android 44 KittyMemoryEx 45 ) 46 47 target_include_directories(AImGui PUBLIC 48 modules 49 includes 50 third_party 51 third_party/imgui 52 ${CMAKE_CURRENT_SOURCE_DIR}/../KittyMemoryEx 53 ) 54 55 set_target_properties(AImGui PROPERTIES 56 ARCHIVE_OUTPUT_DIRECTORY "libs/${ANDROID_ABI}" 57 )