CMakeLists.txt 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. cmake_minimum_required(VERSION 3.6)
  2. project(ImGuiExample)
  3. set(CMAKE_CXX_STANDARD 11)
  4. set(CMAKE_CXX_STANDARD_REQUIRED ON)
  5. set(CMAKE_CXX_EXTENSIONS OFF)
  6. add_library(${CMAKE_PROJECT_NAME} SHARED
  7. ${CMAKE_CURRENT_SOURCE_DIR}/main.cpp
  8. ${CMAKE_CURRENT_SOURCE_DIR}/../../imgui.cpp
  9. ${CMAKE_CURRENT_SOURCE_DIR}/../../imgui_demo.cpp
  10. ${CMAKE_CURRENT_SOURCE_DIR}/../../imgui_draw.cpp
  11. ${CMAKE_CURRENT_SOURCE_DIR}/../../imgui_tables.cpp
  12. ${CMAKE_CURRENT_SOURCE_DIR}/../../imgui_widgets.cpp
  13. ${CMAKE_CURRENT_SOURCE_DIR}/../../backends/imgui_impl_android.cpp
  14. ${CMAKE_CURRENT_SOURCE_DIR}/../../backends/imgui_impl_opengl3.cpp
  15. ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c
  16. )
  17. set(CMAKE_SHARED_LINKER_FLAGS
  18. "${CMAKE_SHARED_LINKER_FLAGS} -u ANativeActivity_onCreate"
  19. )
  20. target_compile_definitions(${CMAKE_PROJECT_NAME} PRIVATE
  21. IMGUI_IMPL_OPENGL_ES3
  22. )
  23. target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE
  24. ${CMAKE_CURRENT_SOURCE_DIR}/../..
  25. ${CMAKE_CURRENT_SOURCE_DIR}/../../backends
  26. ${ANDROID_NDK}/sources/android/native_app_glue
  27. )
  28. target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE
  29. android
  30. EGL
  31. GLESv3
  32. log
  33. )