From 05c9c0060ec8ff4cbf8619ff74724c2eea426d84 Mon Sep 17 00:00:00 2001 From: ROUVREAU Vincent Date: Tue, 8 Sep 2020 16:43:36 +0200 Subject: CMake > 3.5 to use Boost targets. Compile only what is available from boost targets --- src/Persistent_cohomology/benchmark/CMakeLists.txt | 14 ++-- src/Persistent_cohomology/example/CMakeLists.txt | 79 ++++++++++++---------- 2 files changed, 52 insertions(+), 41 deletions(-) (limited to 'src/Persistent_cohomology') diff --git a/src/Persistent_cohomology/benchmark/CMakeLists.txt b/src/Persistent_cohomology/benchmark/CMakeLists.txt index f38cc543..ad8dc84b 100644 --- a/src/Persistent_cohomology/benchmark/CMakeLists.txt +++ b/src/Persistent_cohomology/benchmark/CMakeLists.txt @@ -2,11 +2,13 @@ project(Persistent_cohomology_benchmark) if(GMP_FOUND) if(GMPXX_FOUND) - add_executable ( performance_rips_persistence EXCLUDE_FROM_ALL performance_rips_persistence.cpp ) - target_link_libraries(performance_rips_persistence Boost::program_options ${GMPXX_LIBRARIES} ${GMP_LIBRARIES}) - if (TBB_FOUND) - target_link_libraries(performance_rips_persistence ${TBB_LIBRARIES}) - endif(TBB_FOUND) - file(COPY "${CMAKE_SOURCE_DIR}/data/points/Kl.off" DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/) + if (TARGET Boost::program_options) + add_executable ( performance_rips_persistence EXCLUDE_FROM_ALL performance_rips_persistence.cpp ) + target_link_libraries(performance_rips_persistence Boost::program_options ${GMPXX_LIBRARIES} ${GMP_LIBRARIES}) + if (TBB_FOUND) + target_link_libraries(performance_rips_persistence ${TBB_LIBRARIES}) + endif(TBB_FOUND) + file(COPY "${CMAKE_SOURCE_DIR}/data/points/Kl.off" DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/) + endif() endif(GMPXX_FOUND) endif(GMP_FOUND) diff --git a/src/Persistent_cohomology/example/CMakeLists.txt b/src/Persistent_cohomology/example/CMakeLists.txt index 4c08cd68..d6a92ed6 100644 --- a/src/Persistent_cohomology/example/CMakeLists.txt +++ b/src/Persistent_cohomology/example/CMakeLists.txt @@ -1,46 +1,58 @@ project(Persistent_cohomology_examples) add_executable(plain_homology plain_homology.cpp) +if (TBB_FOUND) + target_link_libraries(plain_homology ${TBB_LIBRARIES}) +endif() +add_test(NAME Persistent_cohomology_example_plain_homology COMMAND $) +install(TARGETS plain_homology DESTINATION bin) add_executable(persistence_from_simple_simplex_tree persistence_from_simple_simplex_tree.cpp) - -add_executable(rips_persistence_step_by_step rips_persistence_step_by_step.cpp) -target_link_libraries(rips_persistence_step_by_step Boost::program_options) - -add_executable(rips_persistence_via_boundary_matrix rips_persistence_via_boundary_matrix.cpp) -target_link_libraries(rips_persistence_via_boundary_matrix Boost::program_options) - -add_executable(persistence_from_file persistence_from_file.cpp) -target_link_libraries(persistence_from_file Boost::program_options) - if (TBB_FOUND) - target_link_libraries(plain_homology ${TBB_LIBRARIES}) target_link_libraries(persistence_from_simple_simplex_tree ${TBB_LIBRARIES}) - target_link_libraries(rips_persistence_step_by_step ${TBB_LIBRARIES}) - target_link_libraries(rips_persistence_via_boundary_matrix ${TBB_LIBRARIES}) - target_link_libraries(persistence_from_file ${TBB_LIBRARIES}) endif() - -add_test(NAME Persistent_cohomology_example_plain_homology COMMAND $) add_test(NAME Persistent_cohomology_example_from_simple_simplex_tree COMMAND $ "1" "0") -add_test(NAME Persistent_cohomology_example_from_rips_step_by_step_on_tore_3D COMMAND $ - "${CMAKE_SOURCE_DIR}/data/points/tore3D_1307.off" "-r" "0.25" "-m" "0.5" "-d" "3" "-p" "3") -add_test(NAME Persistent_cohomology_example_via_boundary_matrix COMMAND $ - "${CMAKE_SOURCE_DIR}/data/points/Kl.off" "-r" "0.16" "-d" "3" "-p" "3" "-m" "100") -add_test(NAME Persistent_cohomology_example_from_file_3_2_0 COMMAND $ - "${CMAKE_SOURCE_DIR}/data/filtered_simplicial_complex/bunny_5000_complex.fsc" "-p" "2" "-m" "0") -add_test(NAME Persistent_cohomology_example_from_file_3_3_100 COMMAND $ - "${CMAKE_SOURCE_DIR}/data/filtered_simplicial_complex/bunny_5000_complex.fsc" "-p" "3" "-m" "100") - -install(TARGETS plain_homology DESTINATION bin) install(TARGETS persistence_from_simple_simplex_tree DESTINATION bin) -install(TARGETS rips_persistence_step_by_step DESTINATION bin) -install(TARGETS rips_persistence_via_boundary_matrix DESTINATION bin) -install(TARGETS persistence_from_file DESTINATION bin) + +if(TARGET Boost::program_options) + add_executable(rips_persistence_step_by_step rips_persistence_step_by_step.cpp) + target_link_libraries(rips_persistence_step_by_step Boost::program_options) + if (TBB_FOUND) + target_link_libraries(rips_persistence_step_by_step ${TBB_LIBRARIES}) + endif() + add_test(NAME Persistent_cohomology_example_from_rips_step_by_step_on_tore_3D COMMAND $ + "${CMAKE_SOURCE_DIR}/data/points/tore3D_1307.off" "-r" "0.25" "-m" "0.5" "-d" "3" "-p" "3") + install(TARGETS rips_persistence_step_by_step DESTINATION bin) +endif() + +if(TARGET Boost::program_options) + add_executable(rips_persistence_via_boundary_matrix rips_persistence_via_boundary_matrix.cpp) + target_link_libraries(rips_persistence_via_boundary_matrix Boost::program_options) + if (TBB_FOUND) + target_link_libraries(rips_persistence_via_boundary_matrix ${TBB_LIBRARIES}) + endif() + add_test(NAME Persistent_cohomology_example_via_boundary_matrix COMMAND $ + "${CMAKE_SOURCE_DIR}/data/points/Kl.off" "-r" "0.16" "-d" "3" "-p" "3" "-m" "100") + install(TARGETS rips_persistence_via_boundary_matrix DESTINATION bin) +endif() + +if(TARGET Boost::program_options) + add_executable(persistence_from_file persistence_from_file.cpp) + target_link_libraries(persistence_from_file Boost::program_options) + if (TBB_FOUND) + target_link_libraries(persistence_from_file ${TBB_LIBRARIES}) + endif() + add_test(NAME Persistent_cohomology_example_from_file_3_2_0 COMMAND $ + "${CMAKE_SOURCE_DIR}/data/filtered_simplicial_complex/bunny_5000_complex.fsc" "-p" "2" "-m" "0") + add_test(NAME Persistent_cohomology_example_from_file_3_3_100 COMMAND $ + "${CMAKE_SOURCE_DIR}/data/filtered_simplicial_complex/bunny_5000_complex.fsc" "-p" "3" "-m" "100") + install(TARGETS persistence_from_file DESTINATION bin) +endif() if(GMP_FOUND) - if(GMPXX_FOUND) + if(GMPXX_FOUND) + if(TARGET Boost::program_options) add_executable(rips_multifield_persistence rips_multifield_persistence.cpp ) target_link_libraries(rips_multifield_persistence Boost::program_options ${GMPXX_LIBRARIES} ${GMP_LIBRARIES}) @@ -50,19 +62,16 @@ if(GMP_FOUND) add_test(NAME Persistent_cohomology_example_multifield_2_71 COMMAND $ "${CMAKE_SOURCE_DIR}/data/points/tore3D_1307.off" "-r" "0.25" "-m" "0.5" "-d" "3" "-p" "2" "-q" "71") install(TARGETS rips_multifield_persistence DESTINATION bin) - endif(GMPXX_FOUND) + endif() + endif(GMPXX_FOUND) endif(GMP_FOUND) if (NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 4.11.0) - add_executable(custom_persistence_sort custom_persistence_sort.cpp) target_link_libraries(custom_persistence_sort ${CGAL_LIBRARY}) - if (TBB_FOUND) target_link_libraries(custom_persistence_sort ${TBB_LIBRARIES}) endif(TBB_FOUND) add_test(NAME Persistent_cohomology_example_custom_persistence_sort COMMAND $) - install(TARGETS custom_persistence_sort DESTINATION bin) - endif (NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 4.11.0) -- cgit v1.2.3