From 9cb7c57345150cd7f18da636bf118ca00492975b Mon Sep 17 00:00:00 2001 From: Sven Oesau Date: Mon, 10 Mar 2025 15:56:40 +0100 Subject: [PATCH 1/9] removing FindEigen3.cmake as it is outdated and no longer required --- Installation/cmake/modules/FindEigen3.cmake | 84 --------------------- 1 file changed, 84 deletions(-) delete mode 100644 Installation/cmake/modules/FindEigen3.cmake diff --git a/Installation/cmake/modules/FindEigen3.cmake b/Installation/cmake/modules/FindEigen3.cmake deleted file mode 100644 index e56005eb335..00000000000 --- a/Installation/cmake/modules/FindEigen3.cmake +++ /dev/null @@ -1,84 +0,0 @@ -# - Try to find Eigen3 lib -# -# This module supports requiring a minimum version, e.g. you can do -# find_package(Eigen3 3.1.2) -# to require version 3.1.2 or newer of Eigen3. -# -# Once done this will define -# -# EIGEN3_FOUND - system has eigen lib with correct version -# EIGEN3_INCLUDE_DIR - the eigen include directory -# EIGEN3_VERSION - eigen version - -# Copyright (c) 2006, 2007 Montel Laurent, -# Copyright (c) 2008, 2009 Gael Guennebaud, -# Copyright (c) 2009 Benoit Jacob -# Redistribution and use is allowed according to the terms of the 2-clause BSD license. - -include(FindPackageHandleStandardArgs) - -if(NOT Eigen3_FIND_VERSION) - if(NOT Eigen3_FIND_VERSION_MAJOR) - set(Eigen3_FIND_VERSION_MAJOR 2) - endif(NOT Eigen3_FIND_VERSION_MAJOR) - if(NOT Eigen3_FIND_VERSION_MINOR) - set(Eigen3_FIND_VERSION_MINOR 91) - endif(NOT Eigen3_FIND_VERSION_MINOR) - if(NOT Eigen3_FIND_VERSION_PATCH) - set(Eigen3_FIND_VERSION_PATCH 0) - endif(NOT Eigen3_FIND_VERSION_PATCH) - - set(Eigen3_FIND_VERSION "${Eigen3_FIND_VERSION_MAJOR}.${Eigen3_FIND_VERSION_MINOR}.${Eigen3_FIND_VERSION_PATCH}") -endif(NOT Eigen3_FIND_VERSION) - -macro(_eigen3_get_version) - file(READ "${EIGEN3_INCLUDE_DIR}/Eigen/src/Core/util/Macros.h" _eigen3_version_header) - - string(REGEX MATCH "define[ \t]+EIGEN_WORLD_VERSION[ \t]+([0-9]+)" _eigen3_world_version_match "${_eigen3_version_header}") - set(EIGEN3_WORLD_VERSION "${CMAKE_MATCH_1}") - string(REGEX MATCH "define[ \t]+EIGEN_MAJOR_VERSION[ \t]+([0-9]+)" _eigen3_major_version_match "${_eigen3_version_header}") - set(EIGEN3_MAJOR_VERSION "${CMAKE_MATCH_1}") - string(REGEX MATCH "define[ \t]+EIGEN_MINOR_VERSION[ \t]+([0-9]+)" _eigen3_minor_version_match "${_eigen3_version_header}") - set(EIGEN3_MINOR_VERSION "${CMAKE_MATCH_1}") - - set(EIGEN3_VERSION ${EIGEN3_WORLD_VERSION}.${EIGEN3_MAJOR_VERSION}.${EIGEN3_MINOR_VERSION}) -endmacro(_eigen3_get_version) - -if (EIGEN3_INCLUDE_DIR) - - if (EXISTS ${EIGEN3_INCLUDE_DIR}/signature_of_eigen3_matrix_library) - # in cache already and valid - _eigen3_get_version() - set(EIGEN3_FOUND ${EIGEN3_VERSION_OK}) - - find_package_handle_standard_args(Eigen3 - REQUIRED_VARS EIGEN3_INCLUDE_DIR - VERSION_VAR EIGEN3_VERSION) - - else() - message(STATUS "Eigen3 path specified in cmake variable EIGEN3_INCLUDE_DIR is " - "set to ${EIGEN3_INCLUDE_DIR}, but that path does not contains the file " - "signature_of_eigen3_matrix_library and is considered as invalid.") - endif() - - - -else (EIGEN3_INCLUDE_DIR) - - find_path(EIGEN3_INCLUDE_DIR NAMES signature_of_eigen3_matrix_library - HINTS ENV EIGEN3_INC_DIR - ENV EIGEN3_DIR - PATHS ${KDE4_INCLUDE_DIR} - PATH_SUFFIXES include eigen3 eigen - DOC "Directory containing the Eigen3 header files" - ) - - if(EIGEN3_INCLUDE_DIR) - _eigen3_get_version() - endif(EIGEN3_INCLUDE_DIR) - - find_package_handle_standard_args(Eigen3 - REQUIRED_VARS EIGEN3_INCLUDE_DIR - VERSION_VAR EIGEN3_VERSION) - -endif(EIGEN3_INCLUDE_DIR) From 0c57569548b615440d82c0f1fd29add3e8de5ed8 Mon Sep 17 00:00:00 2001 From: Sven Oesau Date: Tue, 11 Mar 2025 15:55:20 +0100 Subject: [PATCH 2/9] try deactivation of all lab plugins --- Polyhedron/demo/Polyhedron/CMakeLists.txt | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/CMakeLists.txt b/Polyhedron/demo/Polyhedron/CMakeLists.txt index 325a670e809..6fd10995259 100644 --- a/Polyhedron/demo/Polyhedron/CMakeLists.txt +++ b/Polyhedron/demo/Polyhedron/CMakeLists.txt @@ -397,7 +397,7 @@ if(CGAL_Qt5_FOUND AND Qt5_FOUND) RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}/Plugins/" "${CMAKE_CURRENT_SOURCE_DIR}/Plugins/*") foreach(SUB_DIR ${DEMO_PLUGINS}) - add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/Plugins/${SUB_DIR}") + #add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/Plugins/${SUB_DIR}") endforeach() add_subdirectory(implicit_functions) @@ -410,15 +410,15 @@ if(CGAL_Qt5_FOUND AND Qt5_FOUND) target_link_libraries(CGAL_Mesh_3 PRIVATE polyhedron_demo) add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_Mesh_3) - add_executable(CGAL_Classification Classification.cpp) - add_dependencies(CGAL_Classification Classification) - target_link_libraries(CGAL_Classification PRIVATE polyhedron_demo) - add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_Classification) - - add_executable(CGAL_PMP PMP.cpp) - add_dependencies(CGAL_PMP PMP) - target_link_libraries(CGAL_PMP PRIVATE polyhedron_demo) - add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_PMP) + #add_executable(CGAL_Classification Classification.cpp) + #add_dependencies(CGAL_Classification Classification) + #target_link_libraries(CGAL_Classification PRIVATE polyhedron_demo) + #add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_Classification) + # + #add_executable(CGAL_PMP PMP.cpp) + #add_dependencies(CGAL_PMP PMP) + #target_link_libraries(CGAL_PMP PRIVATE polyhedron_demo) + #add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_PMP) #WS Server if(TARGET Qt5::WebSockets AND TARGET Qt5::Network) From f7eecfdd68c7948658b147f67f887fbb4f855177 Mon Sep 17 00:00:00 2001 From: Sven Oesau Date: Wed, 12 Mar 2025 12:39:05 +0100 Subject: [PATCH 3/9] try deactivation only of remesh_planar_patches_plugin --- Polyhedron/demo/Polyhedron/CMakeLists.txt | 20 +++++++++---------- .../Polyhedron/Plugins/PMP/CMakeLists.txt | 8 ++++---- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/CMakeLists.txt b/Polyhedron/demo/Polyhedron/CMakeLists.txt index 6fd10995259..b5528e95f2d 100644 --- a/Polyhedron/demo/Polyhedron/CMakeLists.txt +++ b/Polyhedron/demo/Polyhedron/CMakeLists.txt @@ -397,7 +397,7 @@ if(CGAL_Qt5_FOUND AND Qt5_FOUND) RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}/Plugins/" "${CMAKE_CURRENT_SOURCE_DIR}/Plugins/*") foreach(SUB_DIR ${DEMO_PLUGINS}) - #add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/Plugins/${SUB_DIR}") + add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/Plugins/${SUB_DIR}") endforeach() add_subdirectory(implicit_functions) @@ -410,15 +410,15 @@ if(CGAL_Qt5_FOUND AND Qt5_FOUND) target_link_libraries(CGAL_Mesh_3 PRIVATE polyhedron_demo) add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_Mesh_3) - #add_executable(CGAL_Classification Classification.cpp) - #add_dependencies(CGAL_Classification Classification) - #target_link_libraries(CGAL_Classification PRIVATE polyhedron_demo) - #add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_Classification) - # - #add_executable(CGAL_PMP PMP.cpp) - #add_dependencies(CGAL_PMP PMP) - #target_link_libraries(CGAL_PMP PRIVATE polyhedron_demo) - #add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_PMP) + add_executable(CGAL_Classification Classification.cpp) + add_dependencies(CGAL_Classification Classification) + target_link_libraries(CGAL_Classification PRIVATE polyhedron_demo) + add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_Classification) + + add_executable(CGAL_PMP PMP.cpp) + add_dependencies(CGAL_PMP PMP) + target_link_libraries(CGAL_PMP PRIVATE polyhedron_demo) + add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_PMP) #WS Server if(TARGET Qt5::WebSockets AND TARGET Qt5::Network) diff --git a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt index 152d84952ae..823ab838ff2 100644 --- a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt +++ b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt @@ -49,10 +49,10 @@ if(TARGET CGAL::Eigen3_support) PURPOSE "Can be used as a solver in the smoothing plugin.") target_link_libraries(extrude_plugin PUBLIC CGAL::Eigen3_support) - qt5_wrap_ui(remeshPlanarPatchesUI_FILES Remesh_planar_patches_dialog.ui) - polyhedron_demo_plugin(remesh_planar_patches_plugin Remesh_planar_patches_plugin - ${remeshPlanarPatchesUI_FILES} KEYWORDS PMP) - target_link_libraries(remesh_planar_patches_plugin PUBLIC scene_surface_mesh_item CGAL::Eigen3_support) + #qt5_wrap_ui(remeshPlanarPatchesUI_FILES Remesh_planar_patches_dialog.ui) + #polyhedron_demo_plugin(remesh_planar_patches_plugin Remesh_planar_patches_plugin + # ${remeshPlanarPatchesUI_FILES} KEYWORDS PMP) + #target_link_libraries(remesh_planar_patches_plugin PUBLIC scene_surface_mesh_item CGAL::Eigen3_support) if(BUILD_TESTING AND NOT CMAKE_VS_MSBUILD_COMMAND) set_tests_properties( From 78a9df0d58d965784d1b5b7729f6296fd57f065d Mon Sep 17 00:00:00 2001 From: Sven Oesau Date: Wed, 12 Mar 2025 12:48:45 +0100 Subject: [PATCH 4/9] removing whitespaces --- Polyhedron/demo/Polyhedron/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Polyhedron/demo/Polyhedron/CMakeLists.txt b/Polyhedron/demo/Polyhedron/CMakeLists.txt index b5528e95f2d..325a670e809 100644 --- a/Polyhedron/demo/Polyhedron/CMakeLists.txt +++ b/Polyhedron/demo/Polyhedron/CMakeLists.txt @@ -414,7 +414,7 @@ if(CGAL_Qt5_FOUND AND Qt5_FOUND) add_dependencies(CGAL_Classification Classification) target_link_libraries(CGAL_Classification PRIVATE polyhedron_demo) add_to_cached_list(CGAL_EXECUTABLE_TARGETS CGAL_Classification) - + add_executable(CGAL_PMP PMP.cpp) add_dependencies(CGAL_PMP PMP) target_link_libraries(CGAL_PMP PRIVATE polyhedron_demo) From c8e5a5240a17ca950738d1d00993cbe9cee5633c Mon Sep 17 00:00:00 2001 From: Sven Oesau Date: Wed, 12 Mar 2025 14:34:25 +0100 Subject: [PATCH 5/9] try deactivation only of setting test properties of remesh_planar_patches_plugin --- Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt index 823ab838ff2..4b8fbd284fc 100644 --- a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt +++ b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt @@ -49,10 +49,10 @@ if(TARGET CGAL::Eigen3_support) PURPOSE "Can be used as a solver in the smoothing plugin.") target_link_libraries(extrude_plugin PUBLIC CGAL::Eigen3_support) - #qt5_wrap_ui(remeshPlanarPatchesUI_FILES Remesh_planar_patches_dialog.ui) - #polyhedron_demo_plugin(remesh_planar_patches_plugin Remesh_planar_patches_plugin - # ${remeshPlanarPatchesUI_FILES} KEYWORDS PMP) - #target_link_libraries(remesh_planar_patches_plugin PUBLIC scene_surface_mesh_item CGAL::Eigen3_support) + qt5_wrap_ui(remeshPlanarPatchesUI_FILES Remesh_planar_patches_dialog.ui) + polyhedron_demo_plugin(remesh_planar_patches_plugin Remesh_planar_patches_plugin + ${remeshPlanarPatchesUI_FILES} KEYWORDS PMP) + target_link_libraries(remesh_planar_patches_plugin PUBLIC scene_surface_mesh_item CGAL::Eigen3_support) if(BUILD_TESTING AND NOT CMAKE_VS_MSBUILD_COMMAND) set_tests_properties( @@ -165,7 +165,7 @@ if(BUILD_TESTING AND NOT CMAKE_VS_MSBUILD_COMMAND) "compilation of selection_plugin" "compilation of triangulate_facets_plugin" "compilation of isotropic_remeshing_plugin" - "compilation of remesh_planar_patches_plugin" +# "compilation of remesh_planar_patches_plugin" "compilation of random_perturbation_plugin" "compilation of engrave_text_plugin" "compilation of degenerated_faces_plugin" From eec639112bbeaf3557962f0a3859e1e8ad682b3b Mon Sep 17 00:00:00 2001 From: Sven Oesau Date: Wed, 12 Mar 2025 15:56:08 +0100 Subject: [PATCH 6/9] moving set_tests_properties call for remesh planar patches plugin --- Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt index 4b8fbd284fc..1a76847b945 100644 --- a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt +++ b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt @@ -57,10 +57,12 @@ if(TARGET CGAL::Eigen3_support) if(BUILD_TESTING AND NOT CMAKE_VS_MSBUILD_COMMAND) set_tests_properties( "compilation of extrude_plugin" + "compilation of remesh_planar_patches_plugin" "compilation of fairing_plugin" PROPERTIES RESOURCE_LOCK Selection_test_resources) set_tests_properties( "compilation of hole_filling_plugin" + "compilation of remesh_planar_patches_plugin" "compilation of smoothing_plugin" PROPERTIES RESOURCE_LOCK Selection_test_resources) endif() @@ -165,7 +167,6 @@ if(BUILD_TESTING AND NOT CMAKE_VS_MSBUILD_COMMAND) "compilation of selection_plugin" "compilation of triangulate_facets_plugin" "compilation of isotropic_remeshing_plugin" -# "compilation of remesh_planar_patches_plugin" "compilation of random_perturbation_plugin" "compilation of engrave_text_plugin" "compilation of degenerated_faces_plugin" From edd4f3e015188a9b825581a1fa8128c517637671 Mon Sep 17 00:00:00 2001 From: Laurent Rineau Date: Wed, 19 Mar 2025 17:41:56 +0100 Subject: [PATCH 7/9] fix the use of Eigen3_VERSION --- Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt | 11 ++++------- .../Plugins/Surface_mesh_deformation/CMakeLists.txt | 2 +- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt index 1a76847b945..1c7dff5ab95 100644 --- a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt +++ b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt @@ -14,7 +14,7 @@ target_link_libraries(extrude_plugin PUBLIC scene_surface_mesh_item scene_selection_item) if(TARGET CGAL::Eigen3_support) - if("${EIGEN3_VERSION}" VERSION_GREATER "3.1.90") + if("${Eigen3_VERSION}" VERSION_GREATER "3.1.90") qt5_wrap_ui( hole_fillingUI_FILES Hole_filling_widget.ui) polyhedron_demo_plugin(hole_filling_plugin Hole_filling_plugin ${hole_fillingUI_FILES} KEYWORDS PMP) target_link_libraries(hole_filling_plugin PUBLIC scene_surface_mesh_item scene_polylines_item scene_selection_item CGAL::Eigen3_support) @@ -57,13 +57,10 @@ if(TARGET CGAL::Eigen3_support) if(BUILD_TESTING AND NOT CMAKE_VS_MSBUILD_COMMAND) set_tests_properties( "compilation of extrude_plugin" - "compilation of remesh_planar_patches_plugin" "compilation of fairing_plugin" - PROPERTIES RESOURCE_LOCK Selection_test_resources) - set_tests_properties( - "compilation of hole_filling_plugin" - "compilation of remesh_planar_patches_plugin" - "compilation of smoothing_plugin" + "compilation of hole_filling_plugin" + "compilation of remesh_planar_patches_plugin" + "compilation of smoothing_plugin" PROPERTIES RESOURCE_LOCK Selection_test_resources) endif() else() diff --git a/Polyhedron/demo/Polyhedron/Plugins/Surface_mesh_deformation/CMakeLists.txt b/Polyhedron/demo/Polyhedron/Plugins/Surface_mesh_deformation/CMakeLists.txt index ce9c7e68209..f90fe393143 100644 --- a/Polyhedron/demo/Polyhedron/Plugins/Surface_mesh_deformation/CMakeLists.txt +++ b/Polyhedron/demo/Polyhedron/Plugins/Surface_mesh_deformation/CMakeLists.txt @@ -1,6 +1,6 @@ include(polyhedron_demo_macros) -if(TARGET CGAL::Eigen3_support AND "${EIGEN3_VERSION}" VERSION_GREATER "3.1.90") +if(TARGET CGAL::Eigen3_support AND "${Eigen3_VERSION}" VERSION_GREATER "3.1.90") polyhedron_demo_plugin(edit_plugin Edit_polyhedron_plugin Deform_mesh.ui) target_link_libraries(edit_plugin PUBLIC scene_surface_mesh_item From 11d75a169a459498c2f524337c98371dff8a91f9 Mon Sep 17 00:00:00 2001 From: Laurent Rineau Date: Wed, 19 Mar 2025 17:48:04 +0100 Subject: [PATCH 8/9] sort lines --- Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt index 1c7dff5ab95..8bd53efac45 100644 --- a/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt +++ b/Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt @@ -160,12 +160,12 @@ target_link_libraries( if(BUILD_TESTING AND NOT CMAKE_VS_MSBUILD_COMMAND) set_tests_properties( + "compilation of degenerated_faces_plugin" + "compilation of engrave_text_plugin" + "compilation of isotropic_remeshing_plugin" "compilation of join_and_split_plugin" + "compilation of random_perturbation_plugin" "compilation of selection_plugin" "compilation of triangulate_facets_plugin" - "compilation of isotropic_remeshing_plugin" - "compilation of random_perturbation_plugin" - "compilation of engrave_text_plugin" - "compilation of degenerated_faces_plugin" PROPERTIES RESOURCE_LOCK Selection_test_resources) endif() From 3f6f8ec8f81c936e02b2edd4343ed7b728901b83 Mon Sep 17 00:00:00 2001 From: Sven Oesau Date: Fri, 28 Mar 2025 12:23:13 +0100 Subject: [PATCH 9/9] Third_party doc update for Ceres --- Documentation/doc/Documentation/Third_party.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/doc/Documentation/Third_party.txt b/Documentation/doc/Documentation/Third_party.txt index c42fbd91a9a..a9cf57c8ed3 100644 --- a/Documentation/doc/Documentation/Third_party.txt +++ b/Documentation/doc/Documentation/Third_party.txt @@ -295,6 +295,8 @@ for more information. On some platforms, linking with `libunwind` was responsible for an increase of the runtime of the final application. If you experience such an issue, we recommend to compile \ceres without `glog` support. +\attention In the master branch of \ceres `glog` was dropped as a dependecy and `abseil` was added instead. It is not compatible with \visualstudio 2017 or earlier versions. + \subsection thirdpartyGLPK GLPK \glpk (GNU Linear Programming Kit) is a library for solving linear programming (LP), mixed integer programming (MIP), and other related problems.