Files
DarkRP2D/CMakeLists.txt
2019-01-22 18:21:57 +01:00

65 lines
2.2 KiB
CMake
Executable File

cmake_minimum_required(VERSION 3.0)
project(DarkRP2D)
set (CMAKE_CXX_STANDARD 11)
include(ExternalProject)
# Download automatically, you can also just copy the conan.cmake file
if(NOT EXISTS "${CMAKE_BINARY_DIR}/conan.cmake")
message(STATUS "Downloading conan.cmake from https://github.com/conan-io/cmake-conan")
file(DOWNLOAD "https://raw.githubusercontent.com/conan-io/cmake-conan/v0.13/conan.cmake"
"${CMAKE_BINARY_DIR}/conan.cmake")
endif()
include(${CMAKE_BINARY_DIR}/conan.cmake)
# Launch Conan Install
conan_cmake_run(CONANFILE conanfile.txt
BASIC_SETUP CMAKE_TARGETS
BUILD missing)
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release)
add_definitions(-DNDEBUG)
endif(NOT CMAKE_BUILD_TYPE)
MESSAGE( STATUS "PROJECT_SOURCE_DIR: " ${PROJECT_SOURCE_DIR} )
MESSAGE( STATUS "DarkRP2D_SOURCE_DIR: " ${DarkRP2D_SOURCE_DIR} )
set(DarkRP2D_EXTERNAL_DIR ${DarkRP2D_SOURCE_DIR}/external)
set(SDL2_DIR ${DarkRP2D_EXTERNAL_DIR}/SDL2-2.0.8)
set(GLEW_DIR ${DarkRP2D_EXTERNAL_DIR}/glew-2.1.0)
set(SDL2_Image_DIR ${DarkRP2D_EXTERNAL_DIR}/SDL2_image-2.0.3)
set(FREETYPE_DIR ${DarkRP2D_EXTERNAL_DIR}/freetype-2.9)
set(GLM_DIR ${DarkRP2D_EXTERNAL_DIR}/glm-0.9.9-a2)
set(BOX2D_DIR ${DarkRP2D_EXTERNAL_DIR}/Box2D-2.3.1)
set(IMGUI_DIR ${DarkRP2D_EXTERNAL_DIR}/imgui-1.60)
set(ENTITYX_DIR ${DarkRP2D_EXTERNAL_DIR}/entityx-1.1.2)
#Libs
find_package(OPENGL REQUIRED)
include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
conan_basic_setup()
MESSAGE( STATUS "Conan Libs: " "${CONAN_LIBS}")
file(GLOB_RECURSE DarkRP2D_SOURCE_FILES ${DarkRP2D_SOURCE_DIR}/src/*.cpp)
if (${CMAKE_BUILD_TYPE} MATCHES "Debug")
# Include imgui to build
file(GLOB IMGUI_SOURCE_FILES ${IMGUI_DIR}/*.cpp)
include_directories(${IMGUI_DIR}/include)
set(DarkRP2D_SOURCE_FILES ${DarkRP2D_SOURCE_FILES} ${IMGUI_SOURCE_FILES})
endif (${CMAKE_BUILD_TYPE} MATCHES "Debug")
add_executable(DarkRP2D ${DarkRP2D_SOURCE_FILES})
target_link_libraries(DarkRP2D
${OPENGL_gl_LIBRARY}
${CONAN_LIBS})
set (RESOURCE_DIR "${DarkRP2D_SOURCE_DIR}/resources")
add_custom_command(
TARGET ${PROJECT_NAME} POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory ${RESOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "copys resources from ${RESOURCE_DIR} => ${CMAKE_CURRENT_BINARY_DIR}"
)