summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorvrouvrea <vrouvrea@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2017-05-30 21:36:01 +0000
committervrouvrea <vrouvrea@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2017-05-30 21:36:01 +0000
commit93ee566f6ccdaed6bd00e53a3828dd09a97914e8 (patch)
treeff7465cbced4d9fe190d5d6dd40a51267817fb9f /CMakeLists.txt
parentf5c98662aca50605bad5260782924e16ecddde7a (diff)
parent7035590cdfd71eb7454d638f3b479d62a0ebadf4 (diff)
Merge last trunk modifications
git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/branches/persistence_representation_integration@2479 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: bfadffa81f3cd05c8d4a4c911853ad2f2cd0ac36
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt100
1 files changed, 43 insertions, 57 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 30306885..b445e8df 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,10 +10,6 @@ message("CMAKE_MODULE_PATH = ${CMAKE_MODULE_PATH}")
enable_testing()
-# For "make user_version"
-include("${CMAKE_MODULE_PATH}/GUDHI_user_version_target.txt")
-# For "make doxygen"
-include(GUDHI_doxygen_target)
# This variable is used by Cython CMakeLists.txt to know its path
set(GUDHI_CYTHON_PATH "src/cython")
# For third parties libraries management - To be done last as CGAL updates CMAKE_MODULE_PATH
@@ -38,62 +34,52 @@ if (DEBUG_TRACES)
add_definitions(-DDEBUG_TRACES)
endif()
-include_directories(src/common/include/)
-include_directories(src/Alpha_complex/include/)
-include_directories(src/Bitmap_cubical_complex/include/)
-include_directories(src/Bottleneck_distance/include/)
-include_directories(src/Contraction/include/)
-include_directories(src/Hasse_complex/include/)
-include_directories(src/Persistent_cohomology/include/)
-include_directories(src/Rips_complex/include/)
-include_directories(src/Simplex_tree/include/)
-include_directories(src/Skeleton_blocker/include/)
-include_directories(src/Spatial_searching/include/)
-include_directories(src/Subsampling/include/)
-include_directories(src/Tangential_complex/include/)
-include_directories(src/Witness_complex/include/)
+# Modules list can be found in CMAKE_MODULE_PATH/GUDHI_modules.cmake
+include(GUDHI_modules)
include_directories(src/Persistence_representations/include/)
-add_subdirectory(src/common/example)
-add_subdirectory(src/common/test)
-add_subdirectory(src/Simplex_tree/test)
-add_subdirectory(src/Simplex_tree/example)
-add_subdirectory(src/Persistent_cohomology/test)
-add_subdirectory(src/Persistent_cohomology/example)
-add_subdirectory(src/Persistent_cohomology/benchmark)
-add_subdirectory(src/Skeleton_blocker/test)
-add_subdirectory(src/Skeleton_blocker/example)
-add_subdirectory(src/Contraction/example)
-add_subdirectory(src/Witness_complex/test)
-add_subdirectory(src/Witness_complex/example)
-add_subdirectory(src/Bitmap_cubical_complex/test)
-add_subdirectory(src/Bitmap_cubical_complex/example)
-add_subdirectory(src/Alpha_complex/example)
-add_subdirectory(src/Alpha_complex/test)
-add_subdirectory(src/Spatial_searching/example)
-add_subdirectory(src/Spatial_searching/test)
-add_subdirectory(src/Subsampling/example)
-add_subdirectory(src/Subsampling/test)
-add_subdirectory(src/Tangential_complex/example)
-add_subdirectory(src/Tangential_complex/test)
-add_subdirectory(src/Tangential_complex/benchmark)
-add_subdirectory(src/Bottleneck_distance/example)
-add_subdirectory(src/Bottleneck_distance/test)
-add_subdirectory(src/Bottleneck_distance/benchmark)
-add_subdirectory(src/Rips_complex/example)
-add_subdirectory(src/Rips_complex/test)
-add_subdirectory(src/Persistence_representations/test)
-add_subdirectory(src/Persistence_representations/example)
-add_subdirectory(src/Persistence_representations/utilities/persistence_heat_maps)
-add_subdirectory(src/Persistence_representations/utilities/persistence_intervals)
-add_subdirectory(src/Persistence_representations/utilities/persistence_landscapes)
-add_subdirectory(src/Persistence_representations/utilities/persistence_landscapes_on_grid)
-add_subdirectory(src/Persistence_representations/utilities/persistence_vectors)
+# Add your new module in the list, order is not important
+add_gudhi_module(common)
+add_gudhi_module(Alpha_complex)
+add_gudhi_module(Bitmap_cubical_complex)
+add_gudhi_module(Bottleneck_distance)
+add_gudhi_module(Contraction)
+add_gudhi_module(Hasse_complex)
+add_gudhi_module(Persistence_representations)
+add_gudhi_module(Persistent_cohomology)
+add_gudhi_module(Rips_complex)
+add_gudhi_module(Simplex_tree)
+add_gudhi_module(Skeleton_blocker)
+add_gudhi_module(Spatial_searching)
+add_gudhi_module(Subsampling)
+add_gudhi_module(Tangential_complex)
+add_gudhi_module(Witness_complex)
+
+# Include module headers
+foreach(GUDHI_MODULE ${GUDHI_MODULES})
+ if(IS_DIRECTORY ${CMAKE_SOURCE_DIR}/src/${GUDHI_MODULE}/include/)
+ include_directories(src/${GUDHI_MODULE}/include/)
+ endif()
+endforeach()
-# data points generator
-add_subdirectory(data/points/generator)
+# Include module CMake subdirectories
+# GUDHI_SUB_DIRECTORIES is managed in CMAKE_MODULE_PATH/GUDHI_modules.cmake
+foreach(GUDHI_MODULE ${GUDHI_MODULES})
+ foreach(GUDHI_SUB_DIRECTORY ${GUDHI_SUB_DIRECTORIES})
+ if(EXISTS ${CMAKE_SOURCE_DIR}/src/${GUDHI_MODULE}/${GUDHI_SUB_DIRECTORY}/CMakeLists.txt)
+ add_subdirectory(src/${GUDHI_MODULE}/${GUDHI_SUB_DIRECTORY}/)
+ endif()
+ endforeach()
+endforeach()
add_subdirectory(src/GudhUI)
-# specific for cython module
-add_subdirectory(${GUDHI_CYTHON_PATH})
+if (NOT WITHOUT_GUDHI_PYTHON)
+ # specific for cython module
+ add_subdirectory(${GUDHI_CYTHON_PATH})
+endif()
+
+# For "make user_version" - Requires GUDHI_modules to be performed
+include(GUDHI_user_version_target)
+# For "make doxygen" - Requires GUDHI_USER_VERSION_DIR to be set - Done in GUDHI_user_version_target for dev version
+include(GUDHI_doxygen_target)