cmake_minimum_required(VERSION 3.10) project(KekEngine VERSION 1.0) option(BUILD_SHARED_LIBS "Build as a shared library" ON) file(GLOB KEKENGINE_SOURCE_FILES "src/kekengine/cpp/*.cpp") file(GLOB KEKGAME_SOURCE_FILES "src/kekgame/cpp/*.cpp") set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) add_compile_definitions(FT_CONFIG_OPTION_ERROR_STRINGS) # Freetype error strings add_compile_options(-Wall -g) # libkekengine add_library(kekengine ${KEKENGINE_SOURCE_FILES}) target_link_libraries(kekengine PUBLIC glfw GLEW GL) target_include_directories(kekengine PRIVATE "src/kekengine/include") target_compile_definitions(kekengine PUBLIC KEKENGINE_TARGET_LINUX) find_package(PkgConfig REQUIRED) pkg_check_modules(GTK3 REQUIRED gtk+-3.0) target_link_libraries(kekengine PUBLIC ${GTK3_LIBRARIES}) target_include_directories(kekengine PRIVATE ${GTK3_INCLUDE_DIRS}) # kekgame add_executable(kekgame ${KEKGAME_SOURCE_FILES}) target_link_libraries(kekgame PUBLIC kekengine) target_include_directories(kekgame PRIVATE "src/kekengine/include")