opengl-castle/CMakeLists.txt

56 lines
1.4 KiB
CMake
Raw Normal View History

2019-08-06 12:40:08 -07:00
cmake_minimum_required(VERSION 3.15)
project(castle)
#################
# CONFIGURATION #
#################
# Enable debug symbols by default
if(CMAKE_BUILD_TYPE STREQUAL "")
set(CMAKE_BUILD_TYPE Debug)
endif()
if(CMAKE_BUILD_TYPE STREQUAL Debug)
message("-- Debug Build")
endif()
################
# DEPENDENCIES #
################
# Use C++17
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
set(OpenGL_GL_PREFERENCE GLVND)
find_package(OpenGL REQUIRED)
find_package(GLEW REQUIRED)
2019-08-06 14:55:21 -07:00
find_library(GLM REQUIRED)
2019-08-06 12:40:08 -07:00
find_package(PkgConfig REQUIRED)
pkg_search_module(GLFW REQUIRED glfw3)
include_directories(${GLFW_INCLUDE_DIRS})
set(SOURCE_LIST
src/main.cpp
src/engine/Window.cpp
2019-08-06 13:31:14 -07:00
src/engine/Shader.cpp
src/engine/Shader.hpp
2019-08-07 05:09:15 -07:00
src/graph/Node.cpp
src/graph/Component.cpp
2019-08-07 05:16:17 -07:00
src/game/MeshDrawComponent.cpp
2019-08-07 11:16:30 -07:00
src/tests/tests.cpp
2019-08-08 05:34:54 -07:00
src/libs/stb_image.c
src/engine/Image.cpp
src/engine/Texture.cpp
src/engine/RenderDevice.cpp)
2019-08-06 12:40:08 -07:00
file(MAKE_DIRECTORY "bin")
set(EXECUTABLE_OUTPUT_PATH "${CMAKE_SOURCE_DIR}/bin")
set(EXECUTABLE_NAME "castle")
2019-08-07 11:16:30 -07:00
include_directories(${CMAKE_SOURCE_DIR}/src//libs/ ${GLEW_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR} ${GLFW_INCLUDE_DIR} ${GLM_INCLUDE_DIR})
2019-08-06 12:40:08 -07:00
add_executable(${EXECUTABLE_NAME} ${SOURCE_LIST})
2019-08-07 11:16:30 -07:00
target_link_libraries(${EXECUTABLE_NAME} ${STANDARD_TARGETS} ${OPENGL_LIBRARIES} ${GLEW_LIBRARIES} ${GLFW_LIBRARIES} ${GLM_LIBRARY})