RingRacers/thirdparty/cpm-imgui.cmake

34 lines
1.2 KiB
CMake

CPMAddPackage(
NAME imgui
VERSION 1.89.2
URL "https://github.com/ocornut/imgui/archive/refs/tags/v1.89.2.zip"
EXCLUDE_FROM_ALL ON
)
if(imgui_ADDED)
set(imgui_SOURCES
imgui.cpp
imgui.h
imgui_demo.cpp
imgui_draw.cpp
imgui_internal.h
imgui_tables.cpp
imgui_widgets.cpp
imstb_rectpack.h
imstb_textedit.h
imstb_truetype.h
)
list(TRANSFORM imgui_SOURCES PREPEND "${imgui_SOURCE_DIR}/")
add_custom_command(
OUTPUT "${imgui_BINARY_DIR}/include/imgui.h" "${imgui_BINARY_DIR}/include/imconfig.h"
COMMAND ${CMAKE_COMMAND} -E copy "${imgui_SOURCE_DIR}/imgui.h" "${imgui_SOURCE_DIR}/imconfig.h" "${imgui_BINARY_DIR}/include"
DEPENDS "${imgui_SOURCE_DIR}/imgui.h" "${imgui_SOURCE_DIR}/imconfig.h"
VERBATIM
)
list(APPEND imgui_SOURCES "${imgui_BINARY_DIR}/include/imgui.h" "${imgui_BINARY_DIR}/include/imconfig.h" "${CMAKE_CURRENT_SOURCE_DIR}/imgui_config/srb2_imconfig.h")
add_library(imgui STATIC ${imgui_SOURCES})
target_include_directories(imgui PUBLIC "${imgui_BINARY_DIR}/include" "${CMAKE_CURRENT_SOURCE_DIR}/imgui_config")
target_compile_definitions(imgui PUBLIC IMGUI_USER_CONFIG="srb2_imconfig.h")
target_compile_features(imgui PUBLIC cxx_std_11)
add_library(imgui::imgui ALIAS imgui)
endif()