Eigen3 5.0.0 support (#9112)

## Summary of Changes

Adding support for Eigen3 5.0.0 by updating CMakeLists.txt scripts.

## Release Management

* Issue(s) solved (if any): fix #9110
This commit is contained in:
Sebastien Loriot 2025-11-06 10:03:20 +01:00 committed by GitHub
commit faae741666
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
84 changed files with 164 additions and 85 deletions

View File

@ -14,8 +14,9 @@ create_single_source_cgal_program("benchmark_polygon_16_vertices.cpp")
create_single_source_cgal_program("benchmark_polygon_100_vertices.cpp")
create_single_source_cgal_program("benchmark_mv_34_vertices.cpp")
find_package(Eigen3 3.1.0 QUIET) # (3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("benchmark_hm_4_vertices.cpp")
target_link_libraries(benchmark_hm_4_vertices PUBLIC CGAL::Eigen3_support)

View File

@ -17,8 +17,9 @@ create_single_source_cgal_program("terrain_height_modeling.cpp")
# this code is deprecated:
create_single_source_cgal_program("deprecated_coordinates.cpp")
find_package(Eigen3 3.1.0 QUIET) # (3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("affine_coordinates.cpp")
target_link_libraries(affine_coordinates PUBLIC CGAL::Eigen3_support)

View File

@ -42,8 +42,9 @@ create_single_source_cgal_program("test_wp_deprecated_api.cpp")
create_single_source_cgal_program("test_mv_deprecated_api.cpp")
create_single_source_cgal_program("test_dh_deprecated_api.cpp")
find_package(Eigen3 3.1.0 QUIET) # (3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("test_hm_unit_square.cpp")
target_link_libraries(test_hm_unit_square PUBLIC CGAL::Eigen3_support)

View File

@ -11,7 +11,7 @@ project(Basic_viewer_Examples)
#CGAL_Qt6 is needed for the drawing.
find_package(CGAL REQUIRED OPTIONAL_COMPONENTS Qt6)
find_package(Eigen3 3.1.0)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
create_single_source_cgal_program("draw_lcc.cpp")

View File

@ -4,7 +4,7 @@ project(Approximate_min_ellipsoid_d_Examples)
find_package(CGAL REQUIRED)
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
# create a target per cppfile

View File

@ -7,7 +7,7 @@ project(Bounding_volumes_Tests)
find_package(CGAL REQUIRED COMPONENTS Core)
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
# create a target per cppfile

View File

@ -20,8 +20,9 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}")
find_package(CGAL REQUIRED COMPONENTS Core)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
return()

View File

@ -23,8 +23,9 @@ if(NOT TARGET CGAL::Boost_iostreams_support)
set(Classification_dependencies_met FALSE)
endif()
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
set(Classification_dependencies_met FALSE)

View File

@ -23,8 +23,9 @@ if(NOT TARGET CGAL::Boost_iostreams_support)
set(Classification_dependencies_met FALSE)
endif()
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
set(Classification_dependencies_met FALSE)

View File

@ -28,8 +28,9 @@ create_single_source_cgal_program("random_segments1.cpp")
create_single_source_cgal_program("random_segments2.cpp")
create_single_source_cgal_program("sphere_d.cpp")
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("random_points_in_tetrahedral_mesh_3.cpp")
target_link_libraries(random_points_in_tetrahedral_mesh_3 PRIVATE CGAL::Eigen3_support)

View File

@ -15,8 +15,9 @@ create_single_source_cgal_program("test_tetrahedron_3.cpp")
create_single_source_cgal_program("test_triangle_2.cpp")
create_single_source_cgal_program("test_triangle_3.cpp")
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("generic_random_test.cpp")
target_link_libraries(generic_random_test PRIVATE CGAL::Eigen3_support)

View File

@ -8,7 +8,7 @@ find_package(CGAL REQUIRED OPTIONAL_COMPONENTS Qt6)
find_package(Qt6 QUIET COMPONENTS Widgets)
find_package(Eigen3 3.1.91 QUIET) #(requires 3.1.91 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)

View File

@ -6,8 +6,9 @@ project(Polygon_Demo)
find_package(CGAL REQUIRED OPTIONAL_COMPONENTS Qt6 Core)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This demo requires the Eigen library, and will not be compiled.")
return()

View File

@ -7,8 +7,9 @@ project(Heat_method_3_Examples)
# CGAL and its components
find_package(CGAL REQUIRED)
find_package(Eigen3 3.3.0 QUIET)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: These examples require the Eigen library (3.3 or greater), and will not be compiled.")
return()

View File

@ -7,8 +7,9 @@ project(Heat_method_3_Tests)
# CGAL and its components
find_package(CGAL REQUIRED)
find_package(Eigen3 3.3.0 QUIET)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: These tests require the Eigen library (3.3 or greater), and will not be compiled.")
return()

View File

@ -1,3 +1,10 @@
if((EIGEN3_FOUND OR Eigen3_FOUND) AND NOT TARGET CGAL::Eigen3_support)
if ("${Eigen3_VERSION}" VERSION_LESS "3.3.7")
set (EIGEN3_FOUND 0)
find_package(Eigen3 3.3.7 QUIET) # (3.3.7 or greater)
endif()
endif()
if((EIGEN3_FOUND OR Eigen3_FOUND) AND NOT TARGET CGAL::Eigen3_support)
if(NOT TARGET Threads::Threads)
find_package(Threads REQUIRED)

View File

@ -7,8 +7,9 @@ project(Jet_fitting_3_Examples)
find_package(CGAL REQUIRED)
# use Eigen
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
# Link with Boost.ProgramOptions (optional)

View File

@ -7,8 +7,9 @@ project(Jet_fitting_3_Tests)
find_package(CGAL REQUIRED)
# use Eigen
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("blind_1pt.cpp")
target_link_libraries(blind_1pt PUBLIC CGAL::Eigen3_support)

View File

@ -8,7 +8,7 @@ project(Kinetic_space_partition_Examples)
find_package(CGAL REQUIRED)
include(CGAL_CreateSingleSourceCGALProgram)
find_package(Eigen3 3.1.0 REQUIRED)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)

View File

@ -8,7 +8,7 @@ project(Kinetic_space_partition_Tests)
find_package(CGAL REQUIRED)
include(CGAL_CreateSingleSourceCGALProgram)
find_package(Eigen3 3.1.0 REQUIRED)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)

View File

@ -8,7 +8,7 @@ project(Kinetic_surface_reconstruction_Examples)
find_package(CGAL REQUIRED)
include(CGAL_CreateSingleSourceCGALProgram)
find_package(Eigen3 3.1.0 REQUIRED)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)

View File

@ -8,7 +8,7 @@ project(Kinetic_surface_reconstruction_Tests)
find_package(CGAL REQUIRED)
include(CGAL_CreateSingleSourceCGALProgram)
find_package(Eigen3 3.1.0 REQUIRED)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)

View File

@ -52,12 +52,14 @@ if(Qt6_FOUND)
add_definitions(-DSCENE_IMAGE_GL_BUFFERS_AVAILABLE)
endif(Qt6_FOUND)
find_package(Eigen3 3.2.0 QUIET) #(requires 3.2.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
set_package_properties(
Eigen3 PROPERTIES
DESCRIPTION "A library for linear algebra."
PURPOSE "Required for most plugins (Meshing, Mesh and Point Set Processing, etc.).")
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message(STATUS "NOTICE: Eigen was not found.")
endif()

View File

@ -79,8 +79,9 @@ target_link_libraries(
scene_implicit_function_item)
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
target_link_libraries(mesh_3_optimization_plugin PUBLIC CGAL::Eigen3_support)
else()

View File

@ -1,6 +1,6 @@
include(CGALlab_macros)
if(TARGET CGAL::Eigen3_support AND "${Eigen3_VERSION}" VERSION_GREATER "3.1.90")
if(TARGET CGAL::Eigen3_support)
qt6_wrap_ui(editionUI_FILES Deform_mesh.ui)
add_item(scene_edit_item

View File

@ -14,7 +14,7 @@ cgal_lab_plugin(
target_link_libraries(tetrahedral_remeshing_plugin PUBLIC scene_c3t3_item
${OPENGL_gl_LIBRARY})
find_package(Eigen3 3.1.0 REQUIRED) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
target_link_libraries(tetrahedral_remeshing_plugin PUBLIC CGAL::Eigen3_support)

View File

@ -19,8 +19,9 @@ if(CGAL_ACTIVATE_CONCURRENT_MESH_3 OR "$ENV{CGAL_ACTIVATE_CONCURRENT_MESH_3}")
endif()
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: All examples require the Eigen3 library, and will not be compiled.")
return()

View File

@ -7,8 +7,9 @@ project( Mesh_3_Tests )
find_package(CGAL REQUIRED COMPONENTS ImageIO)
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if (NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
return()

View File

@ -14,6 +14,7 @@ find_package(CGAL REQUIRED)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
file(
GLOB cppfiles

View File

@ -80,8 +80,10 @@ if(NOT CGAL_DISABLE_GMP)
create_single_source_cgal_program( "Gmpfi.cpp" )
create_single_source_cgal_program( "Gmpfr_bug.cpp" )
create_single_source_cgal_program( "test_eigen.cpp" )
find_package(Eigen3 3.2.0 QUIET) #(requires 3.2.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if (TARGET CGAL::Eigen3_support)
target_link_libraries(test_eigen PUBLIC CGAL::Eigen3_support)
endif()

View File

@ -7,8 +7,9 @@ project(Optimal_bounding_box_Benchmark)
# CGAL and its components
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
return()

View File

@ -6,8 +6,9 @@ project(Optimal_bounding_box_Examples)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
return()

View File

@ -6,8 +6,9 @@ project(Optimal_bounding_box_Tests)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
return()

View File

@ -18,8 +18,9 @@ create_single_source_cgal_program("quadtree_build_from_point_vector.cpp")
create_single_source_cgal_program("octree_surface_mesh.cpp")
create_single_source_cgal_program("quadtree_build_manually.cpp")
find_package(Eigen3 3.1.91 QUIET) #(requires 3.1.91 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if (TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("orthtree_build.cpp")
target_link_libraries(orthtree_build PUBLIC CGAL::Eigen3_support)

View File

@ -8,8 +8,9 @@ project(Periodic_3_mesh_3_Examples)
find_package(CGAL REQUIRED)
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
return()

View File

@ -7,8 +7,9 @@ project(Periodic_3_mesh_3_Tests)
find_package(CGAL REQUIRED COMPONENTS ImageIO)
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
return()

View File

@ -13,8 +13,9 @@ create_single_source_cgal_program("point_set_read_xyz.cpp")
create_single_source_cgal_program("point_set_advanced.cpp")
create_single_source_cgal_program("point_set_read_ply.cpp")
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("point_set_algo.cpp")
target_link_libraries(point_set_algo PUBLIC CGAL::Eigen3_support)

View File

@ -67,8 +67,9 @@ else()
endif()
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
# Executables that require Eigen

View File

@ -47,8 +47,9 @@ else()
endif()
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
# Executables that require Eigen
create_single_source_cgal_program( "normal_estimation_test.cpp" )

View File

@ -21,9 +21,10 @@ endif()
# Activate Parallelism in Mesh_3
option(CGAL_ACTIVATE_CONCURRENT_MESH_3 "Activate parallelism in Mesh_3" OFF)
# Find Eigen3 (requires 3.1.0 or greater)
find_package(Eigen3 3.1.0 QUIET)
# Find Eigen3
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
# Executables that require Eigen 3
create_single_source_cgal_program("poisson_reconstruction_example.cpp")

View File

@ -18,7 +18,7 @@ if(MSVC)
message(STATUS "USING RELEASE EXEFLAGS = '${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_EXE_LINKER_FLAGS_RELEASE}'")
endif()
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
# Executables that require Eigen 3.1

View File

@ -7,8 +7,9 @@ project(Polygon_mesh_processing)
# CGAL and its components
find_package(CGAL REQUIRED)
find_package(Eigen3 3.2.0 QUIET) #(requires 3.2.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: Benchmarks require Eigen 3.2 (or greater), and will not be compiled")
return()

View File

@ -59,8 +59,9 @@ create_single_source_cgal_program("isotropic_remeshing_with_allow_move.cpp")
create_single_source_cgal_program("triangle_mesh_autorefinement.cpp")
create_single_source_cgal_program("soup_autorefinement.cpp")
find_package(Eigen3 3.2.0 QUIET) #(requires 3.2.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("hole_filling_example.cpp")
target_link_libraries(hole_filling_example PUBLIC CGAL::Eigen3_support)

View File

@ -73,8 +73,9 @@ create_single_source_cgal_program("issue_8730.cpp")
create_single_source_cgal_program("issue_7164.cpp")
# create_single_source_cgal_program("test_pmp_repair_self_intersections.cpp")
find_package(Eigen3 3.2.0 QUIET) #(requires 3.2.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("fairing_test.cpp")
target_link_libraries(fairing_test PUBLIC CGAL::Eigen3_support)

View File

@ -8,8 +8,9 @@ project(Polygonal_surface_reconstruction_Examples)
# CGAL and its components
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires Eigen 3.1 (or greater), and will not be compiled.")
return()

View File

@ -8,8 +8,9 @@ project(Polygonal_surface_reconstruction_Tests)
# CGAL and its components
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires Eigen 3.1 (or greater), and will not be compiled.")
return()

View File

@ -8,8 +8,9 @@ include_directories(./)
# Find CGAL and CGAL Qt6
find_package(CGAL REQUIRED OPTIONAL_COMPONENTS Qt6)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires the Eigen library, and will not be compiled.")
return()

View File

@ -7,8 +7,9 @@ project(Principal_component_analysis_Examples)
find_package(CGAL REQUIRED)
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires Eigen 3.1 (or greater), and will not be compiled.")
return()

View File

@ -7,8 +7,9 @@ project(Principal_component_analysis_Tests)
find_package(CGAL REQUIRED)
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires Eigen 3.1 (or greater), and will not be compiled.")
return()

View File

@ -6,8 +6,9 @@ find_package(CGAL REQUIRED)
create_single_source_cgal_program("dynamic_properties.cpp")
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("custom_property_map.cpp")
target_link_libraries(custom_property_map PUBLIC CGAL::Eigen3_support)

View File

@ -4,8 +4,9 @@ project(Ridges_3_Examples)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
# Link with Boost.ProgramOptions (optional)

View File

@ -6,8 +6,9 @@ project(Ridges_3_Tests)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("ridge_test.cpp")
target_link_libraries(ridge_test PUBLIC CGAL::Eigen3_support)

View File

@ -9,8 +9,9 @@ find_package(CGAL REQUIRED)
create_single_source_cgal_program( "test_simplicial_cb_vb.cpp")
create_single_source_cgal_program( "test_tet_soup_to_c3t3.cpp")
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program( "test_c3t3.cpp" )
create_single_source_cgal_program( "test_c3t3_io.cpp" )

View File

@ -14,8 +14,9 @@ if(ACTIVATE_CONCURRENCY)
endif()
endif()
find_package(Eigen3 3.1.0 QUIET)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("scale_space.cpp")
target_link_libraries(scale_space PUBLIC CGAL::Eigen3_support)

View File

@ -6,8 +6,9 @@ project(Shape_detection_Benchmarks)
find_package(CGAL REQUIRED COMPONENTS Core)
find_package(Eigen3 3.1.0 QUIET) # (3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("benchmark_region_growing_on_point_set_2.cpp")
target_link_libraries(benchmark_region_growing_on_point_set_2 PUBLIC CGAL::Eigen3_support)

View File

@ -10,8 +10,9 @@ create_single_source_cgal_program("efficient_RANSAC_with_custom_shape.cpp")
create_single_source_cgal_program("efficient_RANSAC_with_parameters.cpp")
create_single_source_cgal_program("efficient_RANSAC_with_point_access.cpp")
find_package(Eigen3 3.1.0 QUIET) # (3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
message(STATUS "Found Eigen 3")

View File

@ -18,10 +18,10 @@ create_single_source_cgal_program("test_efficient_RANSAC_torus_connected_compone
create_single_source_cgal_program("test_efficient_RANSAC_torus_parameters.cpp")
create_single_source_cgal_program("test_efficient_RANSAC_scene.cpp")
find_package(Eigen3 3.1.0 QUIET) # (3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("test_region_growing_basic.cpp")
create_single_source_cgal_program("test_region_growing_strict.cpp")
create_single_source_cgal_program("test_region_growing_on_cube.cpp")

View File

@ -27,8 +27,9 @@ if(TARGET CGAL::OSQP_support)
endforeach()
# Use Eigen.
find_package(Eigen3 3.1.0 QUIET) # (3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
message(STATUS "Found Eigen")

View File

@ -7,8 +7,9 @@ project(Solver_interface_Examples)
find_package(CGAL REQUIRED)
# Use Eigen
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("singular_value_decomposition.cpp")
target_link_libraries(singular_value_decomposition PUBLIC CGAL::Eigen3_support)

View File

@ -8,8 +8,9 @@ find_package(CGAL REQUIRED COMPONENTS Core)
include_directories(BEFORE "include")
find_package(Eigen3 3.1.91 QUIET) # (requires 3.1.91 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: These benchmarks require Eigen 3.1.91 (or greater), and will not be compiled.")
return()

View File

@ -26,8 +26,9 @@ create_single_source_cgal_program("weighted_Minkowski_distance.cpp")
create_single_source_cgal_program("searching_sphere_orthogonally.cpp")
create_single_source_cgal_program("splitter_worst_cases.cpp")
find_package(Eigen3 3.1.91 QUIET) #(requires 3.1.91 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("fuzzy_range_query.cpp")
target_link_libraries(fuzzy_range_query PUBLIC CGAL::Eigen3_support)

View File

@ -8,8 +8,9 @@ project(Surface_mesh_approximation_Examples)
find_package(CGAL REQUIRED)
# Use Eigen (for PCA)
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires Eigen 3.1 (or greater), and will not be compiled.")
return()

View File

@ -8,8 +8,9 @@ project(Surface_mesh_approximation_Tests)
find_package(CGAL REQUIRED)
# Use Eigen (for PCA)
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: This project requires Eigen 3.1 (or greater), and will not be compiled.")
return()

View File

@ -3,8 +3,9 @@ project(benchmark_for_closest_rotation)
find_package(CGAL REQUIRED COMPONENTS Core)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("benchmark_for_concept_models.cpp")
target_link_libraries(benchmark_for_concept_models PUBLIC CGAL::Eigen3_support)

View File

@ -8,8 +8,9 @@ set_property(DIRECTORY PROPERTY CGAL_NO_TESTING TRUE)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.91 QUIET) #(requires 3.1.91 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("deform_mesh_for_botsch08_format.cpp")
target_link_libraries(deform_mesh_for_botsch08_format PUBLIC CGAL::Eigen3_support)

View File

@ -6,8 +6,9 @@ project(Surface_mesh_deformation_Examples)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.91 QUIET) #(requires 3.1.91 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("all_roi_assign_example.cpp")
create_single_source_cgal_program("all_roi_assign_example_custom_polyhedron.cpp")

View File

@ -6,8 +6,9 @@ project(Surface_mesh_deformation_Tests)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.91 QUIET) #(requires 3.1.91 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("Cactus_deformation_session.cpp")
target_link_libraries(Cactus_deformation_session PUBLIC CGAL::Eigen3_support)

View File

@ -5,8 +5,9 @@ project(Surface_mesh_parameterization_Examples)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
# Executables that require Eigen 3.1

View File

@ -14,8 +14,9 @@ else()
message(STATUS "NOTICE: Examples will be compiled without the SuiteSparse library and UmfPack. Try setting CMAKE_PREFIX_PATH to your SuiteSparse installation.")
endif()
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("extensive_parameterization_test.cpp")
target_link_libraries(extensive_parameterization_test PUBLIC CGAL::Eigen3_support)

View File

@ -19,8 +19,9 @@ create_single_source_cgal_program("edge_collapse_all_short_edges.cpp")
create_single_source_cgal_program("edge_collapse_bounded_normal_change.cpp")
create_single_source_cgal_program("edge_collapse_visitor_surface_mesh.cpp")
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("edge_collapse_garland_heckbert.cpp")
target_link_libraries(edge_collapse_garland_heckbert PUBLIC CGAL::Eigen3_support)

View File

@ -14,8 +14,9 @@ create_single_source_cgal_program("test_edge_profile_link.cpp")
create_single_source_cgal_program("test_edge_deprecated_stop_predicates.cpp")
create_single_source_cgal_program("test_edge_collapse_stability.cpp")
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("edge_collapse_garland_heckbert_variations.cpp")
target_link_libraries(edge_collapse_garland_heckbert_variations PUBLIC CGAL::Eigen3_support)

View File

@ -7,8 +7,9 @@ project(Mean_curvature_skeleton)
# CGAL and its components
find_package(CGAL REQUIRED)
find_package(Eigen3 3.2.0 QUIET) #(requires 3.2.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("solver_benchmark.cpp")
target_link_libraries(solver_benchmark PUBLIC CGAL::Eigen3_support)

View File

@ -6,8 +6,9 @@ project(Surface_mesh_skeletonization_Examples)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.2.0 QUIET) #(requires 3.2.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("simple_mcfskel_example.cpp")
create_single_source_cgal_program("simple_mcfskel_sm_example.cpp")

View File

@ -6,8 +6,9 @@ project(Surface_mesh_skeletonization_Tests)
find_package(CGAL REQUIRED)
find_package(Eigen3 3.2.0 QUIET) #(requires 3.2.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("MCF_Skeleton_test.cpp")
target_link_libraries(MCF_Skeleton_test PUBLIC CGAL::Eigen3_support)

View File

@ -25,8 +25,9 @@ else()
endif()
# Use Eigen for Mesh_3
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program( "mesh_and_remesh_polyhedral_domain_with_features.cpp" )
target_link_libraries(mesh_and_remesh_polyhedral_domain_with_features PUBLIC CGAL::Eigen3_support)

View File

@ -27,8 +27,9 @@ cgal_add_test(test_tetrahedral_remeshing_mls)
# Tests using Mesh_3 require Eigen
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("test_mesh_and_remesh_polyhedron_with_features.cpp")
target_link_libraries(test_mesh_and_remesh_polyhedron_with_features PUBLIC CGAL::Eigen3_support)

View File

@ -7,8 +7,9 @@ project(Triangulation_apps)
# CGAL and its components
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(NOT TARGET CGAL::Eigen3_support)
message("NOTICE: Applications require Eigen 3.1 (or greater), and will not be compiled")
return()

View File

@ -6,8 +6,9 @@ project(Triangulation_benchmark)
find_package(CGAL REQUIRED COMPONENTS Core)
find_package(Eigen3 3.1.0 QUIET)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
include_directories(BEFORE "include")

View File

@ -11,8 +11,9 @@ endif()
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("barycentric_subdivision.cpp")
create_single_source_cgal_program("delaunay_triangulation.cpp")

View File

@ -11,8 +11,9 @@ endif()
find_package(CGAL REQUIRED)
find_package(Eigen3 3.1.0 QUIET)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
include_directories(BEFORE "include")

View File

@ -18,7 +18,7 @@ find_package(CGAL REQUIRED OPTIONAL_COMPONENTS Qt6)
# Find Qt6 itself
find_package(Qt6 QUIET COMPONENTS Widgets OpenGL)
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(CGAL_Qt6_FOUND AND Qt6_FOUND AND TARGET CGAL::Eigen3_support)

View File

@ -18,8 +18,9 @@ else()
message("NOTICE: Some tests require CGAL_Core (or LEDA), and will not be compiled.")
endif()
find_package(Eigen3 3.1.0 QUIET) #(requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program( "test_dtos_dual.cpp" )
target_link_libraries(test_dtos_dual PUBLIC CGAL::Eigen3_support)

View File

@ -12,8 +12,9 @@ create_single_source_cgal_program("vda_pt.cpp")
create_single_source_cgal_program("vda_rt.cpp")
create_single_source_cgal_program("vda_sdg.cpp")
find_package(Eigen3 3.2.0 QUIET) #(requires 3.2.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("vda_tos2.cpp")
target_link_libraries(vda_tos2 PUBLIC CGAL::Eigen3_support)

View File

@ -11,8 +11,9 @@ create_single_source_cgal_program("projection_traits.cpp")
create_single_source_cgal_program("custom_traits.cpp")
create_single_source_cgal_program("convergence.cpp")
find_package(Eigen3 3.1.0 QUIET) # (requires 3.1.0 or greater)
find_package(Eigen3 QUIET)
include(CGAL_Eigen3_support)
if(TARGET CGAL::Eigen3_support)
create_single_source_cgal_program("weighted_laplacian.cpp")
target_link_libraries(weighted_laplacian PUBLIC CGAL::Eigen3_support)