Add all cmakelist files

This commit is contained in:
Godzil
2020-02-14 14:21:30 +00:00
parent e2643d677d
commit 0caa4b8e34
3 changed files with 51 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
cmake_minimum_required(VERSION 3.1)
include(ExternalProject)
project(DoRayMe)
set(CMAKE_CXX_STANDARD 11)
#Add external projects that directly need to be builded
ExternalProject_Add(googletest
SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/external/googletest"
BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/external/googletest"
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
TEST_COMMAND ""
)
# Main app
add_subdirectory(source)
# Unit Tests
add_subdirectory(tests)

16
source/CMakeLists.txt Normal file
View File

@@ -0,0 +1,16 @@
# To simplify testing, the app is build in two passes,
# First most is build as a library
add_library(rayonnement STATIC math_helper.cpp)
set(RAY_HEADERS include/tuples.h include/math_helper.h)
set(RAY_SOURCES tuples.cpp)
target_include_directories(rayonnement PUBLIC include)
target_sources(rayonnement PRIVATE ${RAY_HEADERS} ${RAY_SOURCES})
# Second we build the main executable
add_executable(dorayme main.cpp)
target_include_directories(rayonnement PUBLIC include)
target_link_libraries(dorayme rayonnement)

12
tests/CMakeLists.txt Normal file
View File

@@ -0,0 +1,12 @@
project(DoRayTested)
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads REQUIRED)
set(TESTS_SRC tuples_test.cpp)
add_executable(testMyRays)
target_include_directories(testMyRays PUBLIC ${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR})
target_include_directories(testMyRays PUBLIC ../source/include)
target_sources(testMyRays PRIVATE ${TESTS_SRC})
target_link_libraries(testMyRays gtest gtest_main rayonnement Threads::Threads)