38 lines
902 B
CMake
38 lines
902 B
CMake
cmake_minimum_required(VERSION 3.13)
|
|
project(Couch)
|
|
set(CMAKE_MODULE_PATH, ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR/cmake.})
|
|
|
|
## Find OPENGL packages
|
|
find_package(OpenGL REQUIRED)
|
|
find_package(GLEW REQUIRED)
|
|
find_package(glfw3 3.3 REQUIRED)
|
|
|
|
## Find SWIG
|
|
find_package(SWIG REQUIRED)
|
|
|
|
## Find Lua
|
|
find_package(Lua REQUIRED)
|
|
|
|
file(GLOB_RECURSE sources core/*.cpp core/*.h)
|
|
file(GLOB shaders shaders/*)
|
|
|
|
add_compile_definitions(LUA_SCRIPTING)
|
|
add_executable(couch ${sources})
|
|
include_directories(core)
|
|
target_link_libraries(couch glfw)
|
|
target_link_libraries(couch OpenGL::GL)
|
|
target_link_libraries(couch GLEW)
|
|
target_link_libraries(couch lua)
|
|
|
|
file(COPY shaders DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
include(UseSWIG)
|
|
set_property(SOURCE scripting/couch.i PROPERTY CPLUSPLUS ON)
|
|
swig_add_library(couchlua
|
|
TYPE STATIC
|
|
LANGUAGE lua
|
|
SOURCES scripting/couch.i)
|
|
target_link_libraries(couch couchlua)
|
|
|
|
|