cmake_minimum_required(VERSION 2.8 FATAL_ERROR) if(MSVC) # Flag needed by OpenMesh when compiling with Visual Studio. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /D_USE_MATH_DEFINES") else(MSVC) # g++ debugging options / gprof options #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ggdb -Wall -Wno-unused-local-typedefs -Wno-unused-result -O0") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pg -Wall -Wno-unused-local-typedefs -Wno-unused-result") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ggdb -Wall -Wno-unused-local-typedefs -Wno-unused-result -O2") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-unused-local-typedefs -Wno-unused-result -O3") #set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -ggdb -O0") #set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pg") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -ggdb -O2") #set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -O3") endif(MSVC) project(tomoprocess C CXX Fortran) # Package Lapack. find_package(LAPACK REQUIRED) if(NOT LAPACK_FOUND) message(FATAL_ERROR "Please set LAPACK_DIR.") endif(NOT LAPACK_FOUND) # Package VTK. find_package(VTK REQUIRED) if(VTK_FOUND) include(${VTK_USE_FILE}) else(VTK_FOUND) message(FATAL_ERROR "Please set VTK_DIR.") endif(VTK_FOUND) # Package ITK. find_package(ITK REQUIRED) if(ITK_FOUND) include(${ITK_USE_FILE}) else(ITK_FOUND) message(FATAL_ERROR "Please set ITK_DIR.") endif(ITK_FOUND) # Package CGAL find_package(CGAL QUIET COMPONENTS Core) if(CGAL_FOUND) include(${CGAL_USE_FILE}) else(CGAL_FOUND) message(FATAL_ERROR "Please set CGAL_DIR.") endif(CGAL_FOUND) # Include directories. include_directories("${PROJECT_SOURCE_DIR}/src/") include_directories("${PROJECT_SOURCE_DIR}/src/object/") include_directories("${PROJECT_SOURCE_DIR}/src/progress_bar/") include_directories("${PROJECT_SOURCE_DIR}/src/error/") include_directories("${PROJECT_SOURCE_DIR}/src/voropp/") include_directories("${PROJECT_SOURCE_DIR}/src/image/") include_directories("${PROJECT_SOURCE_DIR}/src/filter/") include_directories("${PROJECT_SOURCE_DIR}/src/rstartree/") include_directories("${PROJECT_SOURCE_DIR}/src/vcglib/eigenlib/") include_directories("${PROJECT_SOURCE_DIR}/src/iris/src/") include_directories("${PROJECT_BINARY_DIR}/src/minpack2") # Add source subdirectory. add_subdirectory(src) # Add the executable. add_executable(tomoprocess main.cpp) # Link libraries. target_link_libraries(tomoprocess ${LAPACK_LIBRARIES} ${ItkVtkGlue} ${VTK_LIBRARIES} ${ITK_LIBRARIES} ProgressBar ErrorMessage voropp CGAL CGAL_Core iris Discretize Minpack2 )