50 lines
1.3 KiB
CMake
50 lines
1.3 KiB
CMake
cmake_minimum_required(VERSION 3.22)
|
|
|
|
project(kge LANGUAGES CXX)
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
find_package(SDL2 REQUIRED)
|
|
find_package(OpenGL REQUIRED)
|
|
find_package(Freetype REQUIRED)
|
|
|
|
add_compile_options("-Wall" "-Wextra" "-Werror")
|
|
add_definitions(-DIMGUI_ENABLE_FREETYPE)
|
|
|
|
add_library(imgui STATIC
|
|
# Main Imgui files
|
|
ext/imgui/imgui.cpp
|
|
ext/imgui/imgui.h
|
|
ext/imgui/imgui_draw.cpp
|
|
ext/imgui/imgui_tables.cpp
|
|
ext/imgui/imgui_widgets.cpp
|
|
ext/imgui/imgui_demo.cpp
|
|
|
|
ext/imgui/backends/imgui_impl_sdl2.cpp
|
|
ext/imgui/backends/imgui_impl_sdl2.h
|
|
ext/imgui/backends/imgui_impl_opengl3.cpp
|
|
ext/imgui/backends/imgui_impl_opengl3.h
|
|
|
|
ext/imgui/misc/freetype/imgui_freetype.cpp
|
|
ext/imgui/misc/freetype/imgui_freetype.h)
|
|
add_library(imgui::imgui ALIAS imgui)
|
|
target_link_libraries(imgui
|
|
PUBLIC
|
|
OpenGL::GL
|
|
$<TARGET_NAME_IF_EXISTS:SDL2::SDL2main>
|
|
$<IF:$<TARGET_EXISTS:SDL2::SDL2>,SDL2::SDL2,SDL2::SDL2-static>
|
|
Freetype::Freetype)
|
|
target_include_directories(imgui PUBLIC
|
|
ext/imgui/
|
|
ext/imgui/backends/
|
|
ext/imgui/misc/freetype
|
|
${FREETYPE_INCLUDE_DIRS})
|
|
|
|
include_directories(ext/ ${SDL2_INCLUDE_DIRS})
|
|
|
|
add_executable(kge
|
|
kge.cc
|
|
)
|
|
target_link_libraries(kge imgui)
|
|
|