Add all cmakelist files
This commit is contained in:
@@ -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
16
source/CMakeLists.txt
Normal 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
12
tests/CMakeLists.txt
Normal 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)
|
||||
Reference in New Issue
Block a user