cmake_minimum_required (VERSION 3.4) # CMake utils list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") # Forbids in-source builds include(CheckNotInSources) #------------------------------------------------------ #----------------- Main configuration ----------------- #------------------------------------------------------ project (Pastis VERSION 0.0.4) set(PASTIS_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}") set(PASTIS_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}") #------------------------------------------------------ # Kokkos set(KOKKOS_ENABLE_OPENMP ON CACHE BOOL "") add_subdirectory(${PASTIS_SOURCE_DIR}/packages/kokkos) include_directories(${Kokkos_INCLUDE_DIRS_RET}) # Compiler flags include(GetKokkosCompilerFlags) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall") # Add debug mode for Standard C++ library set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_GLIBCXX_DEBUG -D_LIBCPP_DEBUG=1") #------------------------------------------------------ # Rang (colors? Useless thus necessary!) include_directories(${PASTIS_SOURCE_DIR}/packages/rang/include) # CLI11 include_directories(${PASTIS_SOURCE_DIR}/packages/CLI11/include) # Pastis src add_subdirectory(src) include_directories(src) include_directories(src/algebra) include_directories(src/mesh) include_directories(src/utils) include_directories(src/scheme) include_directories(src/experimental) # ----------------------------------------------------- link_libraries("-rdynamic") # ------------------- Source files -------------------- # Pastis binary add_executable( pastis src/main.cpp) # Libraries target_link_libraries( pastis kokkos PastisUtils PastisExperimental)