File tree Expand file tree Collapse file tree 6 files changed +12
-21
lines changed
Expand file tree Collapse file tree 6 files changed +12
-21
lines changed Original file line number Diff line number Diff line change @@ -28,13 +28,16 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
2828
2929set (CMAKE_COMPILE_WARNING_AS_ERROR ON )
3030
31+ option (USE_COVERAGE "Enable coverage instrumentation" OFF )
32+
3133if (USE_COVERAGE)
3234 set (CMAKE_INSTALL_RPATH "${CMAKE_BINARY_DIR} /ppc_onetbb/install/lib" )
3335else ()
3436 set (CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX} /lib" )
3537endif ()
38+ set (CMAKE_BUILD_RPATH "${CMAKE_BINARY_DIR} /ppc_onetbb/install/lib" )
3639
37- set (CMAKE_BUILD_WITH_INSTALL_RPATH ON )
40+ set (CMAKE_BUILD_WITH_INSTALL_RPATH OFF )
3841set (CMAKE_INSTALL_RPATH_USE_LINK_PATH ON )
3942set (CMAKE_SKIP_BUILD_RPATH OFF )
4043
Original file line number Diff line number Diff line change @@ -83,7 +83,7 @@ function(ppc_configure_subproject SUBDIR)
8383 message (STATUS "${SUBDIR} " )
8484
8585 # List of implementations to configure
86- foreach (IMPL IN LISTS IMPLEMENTATIONS )
86+ foreach (IMPL IN LISTS PPC_IMPLEMENTATIONS )
8787 setup_implementation(
8888 NAME
8989 ${IMPL}
Original file line number Diff line number Diff line change @@ -27,6 +27,6 @@ function(ppc_link_json exec_func_lib)
2727 PUBLIC ${CMAKE_SOURCE_DIR} /3rdparty/json/include )
2828
2929 add_dependencies (${exec_func_lib} ppc_json)
30- target_link_directories ( ${exec_func_lib} INTERFACE
31- "${CMAKE_BINARY_DIR} /ppc_json/install/include" )
30+ target_include_directories (
31+ ${exec_func_lib} INTERFACE "${CMAKE_BINARY_DIR} /ppc_json/install/include" )
3232endfunction ()
Original file line number Diff line number Diff line change 1- find_package (MPI REQUIRED)
1+ find_package (MPI REQUIRED COMPONENTS CXX )
22if (NOT MPI_FOUND)
33 message (FATAL_ERROR "MPI NOT FOUND" )
44endif ()
55
66function (ppc_link_mpi exec_func_lib)
7- if (MPI_COMPILE_FLAGS)
8- set_target_properties (${exec_func_lib} PROPERTIES COMPILE_FLAGS
9- "${MPI_COMPILE_FLAGS} " )
10- endif (MPI_COMPILE_FLAGS)
11-
12- if (MPI_LINK_FLAGS)
13- set_target_properties (${exec_func_lib} PROPERTIES LINK_FLAGS
14- "${MPI_LINK_FLAGS} " )
15- endif (MPI_LINK_FLAGS)
16- target_include_directories (${exec_func_lib} PUBLIC ${MPI_INCLUDE_PATH} )
17- target_link_libraries (${exec_func_lib} PUBLIC ${MPI_LIBRARIES} )
7+ target_link_libraries (${exec_func_lib} PUBLIC MPI::MPI_CXX)
188endfunction ()
Original file line number Diff line number Diff line change 11option (ENABLE_ADDRESS_SANITIZER OFF )
2+ option (ENABLE_UB_SANITIZER OFF )
3+ option (ENABLE_LEAK_SANITIZER OFF )
24if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU" )
35 if (ENABLE_ADDRESS_SANITIZER)
46 add_compile_options (-fsanitize=address)
Original file line number Diff line number Diff line change @@ -2,10 +2,6 @@ project(parallel_programming_course LANGUAGES C CXX)
22
33message (STATUS "Student's tasks" )
44
5- # ——— Testing options ————————————————————————————————————————
6- option (USE_FUNC_TESTS "Enable functional tests" OFF )
7- option (USE_PERF_TESTS "Enable performance tests" OFF )
8-
95# Test runner executables
106set (FUNC_TEST_EXEC ppc_func_tests)
117set (PERF_TEST_EXEC ppc_perf_tests)
@@ -18,7 +14,7 @@ ppc_add_test(${FUNC_TEST_EXEC} common/runners/functional.cpp USE_FUNC_TESTS)
1814ppc_add_test(${PERF_TEST_EXEC} common/runners/performance.cpp USE_PERF_TESTS)
1915
2016# ——— List of implementations ————————————————————————————————————————
21- set (IMPLEMENTATIONS all mpi omp seq stl tbb)
17+ set (PPC_IMPLEMENTATIONS " all; mpi; omp; seq; stl; tbb" CACHE STRING "Implementations to build (semicolon-separated)" )
2218
2319# ——— Configure each subproject —————————————————————————————————————
2420file (
You can’t perform that action at this time.
0 commit comments