32 lines
980 B
CMake
32 lines
980 B
CMake
|
|
cmake_minimum_required(VERSION 3.10)
|
|
project(reflex2q3 CXX)
|
|
|
|
set(OBJ_SRC "src/planes.cpp" "src/brushdef.cpp" "src/oopless-parser.cpp" "src/EntityConverter.cpp")
|
|
add_library(objects OBJECT ${OBJ_SRC})
|
|
|
|
|
|
add_executable(reflex2q3 src/main.cpp)
|
|
add_executable(runtests test/catch.cpp)
|
|
target_link_libraries(reflex2q3 objects)
|
|
target_link_libraries(runtests objects)
|
|
|
|
set(CMAKE_CXX_STANDARD 11)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
|
|
|
find_package(PkgConfig)
|
|
pkg_check_modules(EIGEN eigen3)
|
|
if ( NOT EIGEN_FOUND) #use local
|
|
message ( WARNING "Install eigen3 using your package manager. If using git eigen3 or a non-standard install location, ensure environment variable EIGEN3_INCLUDE_DIR is set." )
|
|
include_directories ( "$ENV{EIGEN3_INCLUDE_DIR}" )
|
|
find_package(Eigen3 REQUIRED NO_MODULE)
|
|
endif ( NOT EIGEN_FOUND)
|
|
|
|
include_directories(
|
|
${EIGEN_INCLUDE_DIRS} #set by pkg_check_modules
|
|
"lib/Catch/single_include/catch2"
|
|
"lib/cxxopts/include"
|
|
"include"
|
|
"test"
|
|
)
|