Added VCC build

This commit is contained in:
Julian Nießner
2018-05-02 15:04:16 +02:00
parent 72873931b6
commit f923cc7881
2079 changed files with 686812 additions and 448 deletions

View File

@@ -1,47 +1,56 @@
cmake_minimum_required(VERSION 3.0)
project(Reassembly2)
project(DarkRP2D)
set (CMAKE_CXX_STANDARD 11)
include(ExternalProject)
#For YCM (YouCompleteME)
set(CMAKE_EXPORT_COMPILE_COMMANDS 1)
#Modified FindSDL2
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${Reassembly2_SOURCE_DIR}/cmake")
MESSAGE( STATUS "PROJECT_SOURCE_DIR: " ${PROJECT_SOURCE_DIR} )
MESSAGE( STATUS "DarkRP2D_SOURCE_DIR: " ${DarkRP2D_SOURCE_DIR} )
set(Reassembly2_BUILD_DIR "${Reassembly2}/build")
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)
find_package(SDL2 REQUIRED)
find_package(SDL2_image REQUIRED)
MESSAGE( STATUS "SDL2_LIBRARY: " ${SDL2_LIBRARY} )
MESSAGE( STATUS "SDL2_INCLUDE_DIR: " ${SDL2_INCLUDE_DIR} )
#Libs
find_package(SDL2 REQUIRED CONFIG)
include_directories(${SDL2_INCLUDE_DIRS})
MESSAGE( STATUS "SDL2IMAGE_LIBRARY: " ${SDL2IMAGE_LIBRARY})
MESSAGE( STATUS "SDL2IMAGE_INCLUDE_DIR: " ${SDL2IMAGE_INCLUDE_DIR})
find_package(SDL2_Image REQUIRED CONFIG)
include_directories(${SDL2_IMAGE_INCLUDE_DIRS})
find_package(GLEW REQUIRED)
MESSAGE( STATUS "GLEW_LIBRARY: " ${GLEW_LIBRARY})
MESSAGE( STATUS "GLEW_INLCUDE_DIR: " ${GLEW_INLCUDE_DIR})
find_package(GLEW REQUIRED CONFIG)
include_directories(${GLEW_INCLUDE_DIRS})
find_package(OpenGL REQUIRED)
MESSAGE( STATUS "OPENGL_LIBRARY: " ${OPENGL_LIBRARY})
MESSAGE( STATUS "OPENGL_INCLUDE_DIR: " ${OPENGL_INCLUDE_DIR})
find_package(FREETYPE REQUIRED CONFIG)
include_directories(${FREETYPE_INCLUDE_DIRS})
find_package(Freetype REQUIRED)
MESSAGE( STATUS "FREETYPE_LIBRARY: " ${FREETYPE_LIBRARY})
MESSAGE( STATUS "FREETYPE_INCLUDE_DIR: " ${FREETYPE_INCLUDE_DIR})
set(FREETYPE_INCLUDE_DIR "/usr/include/freetype2")
MESSAGE( STATUS "Override FREETYPE_INCLUDE_DIR: " ${FREETYPE_INCLUDE_DIR})
find_package(GLM REQUIRED CONFIG)
include_directories(${GLM_INCLUDE_DIRS})
find_package(GLM REQUIRED)
MESSAGE( STATUS "GLM_INCLUDE_DIR: " ${GLM_INCLUDE_DIR})
find_package(OPENGL REQUIRED)
include_directories(${SDL2_INCLUDE_DIR} ${SDL2IMAGE_INCLUDE_DIR}
${GLEW_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR} ${FREETYPE_INCLUDE_DIR}
${GLM_INCLUDE_DIR} )
file(GLOB_RECURSE Reassembly2_SOURCE_FILES ${Reassembly2_SOURCE_DIR}/src/*.cpp)
add_executable(Reassembly2 ${Reassembly2_SOURCE_FILES})
target_link_libraries(Reassembly2 ${SDL2_LIBRARY} ${SDL2IMAGE_LIBRARY}
${GLEW_LIBRARY} ${OPENGL_LIBRARY} ${FREETYPE_LIBRARY})
MESSAGE( STATUS "OpenGL Lib: " ${OPENGL_gl_LIBRARY} )
MESSAGE( STATUS "SDL2 Lib: " ${SDL2_LIBRARIES} )
MESSAGE( STATUS "SDL2_IMG Lib: " ${SDL2_IMAGE_LIBRARIES} )
MESSAGE( STATUS "Glew Lib: " ${GLEW_LIBRARIES} )
MESSAGE( STATUS "Freetype lib: " ${FREETYPE_LIBRARIES} )
file(GLOB_RECURSE DarkRP2D_SOURCE_FILES ${DarkRP2D_SOURCE_DIR}/src/*.cpp)
add_executable(DarkRP2D ${DarkRP2D_SOURCE_FILES})
target_link_libraries(DarkRP2D ${SDL2_LIBRARIES}
${SDL2_IMAGE_LIBRARIES}
${GLEW_LIBRARIES}
${FREETYPE_LIBRARIES}
${OPENGL_gl_LIBRARY})
add_custom_target(CopyBinaries
COMMAND ${CMAKE_COMMAND} -E copy ${SDL2_DLL} ${CMAKE_BINARY_DIR}
COMMAND ${CMAKE_COMMAND} -E copy ${SDL2_IMAGE_DLL} ${CMAKE_BINARY_DIR}
COMMAND ${CMAKE_COMMAND} -E copy ${FREETYPE_DLL} ${CMAKE_BINARY_DIR}
COMMAND ${CMAKE_COMMAND} -E copy ${GLEW_DLL} ${CMAKE_BINARY_DIR}
)
add_dependencies(DarkRP2D CopyBinaries)