Commit Graph

1146 Commits

Author SHA1 Message Date
Sébastien Loriot 0ab6971ede use execute_process that is recommanded over exec_command since 3.0 2024-01-04 14:30:40 +01:00
Laurent Rineau 811f78c6a1 fix the bug about CGAL_Qt6_moc_and_resources_Fixture 2023-12-07 15:48:09 +01:00
Sébastien Loriot 410ead5f56 also look for Basic viewer in targets 2023-12-06 17:31:02 +01:00
Laurent Rineau 95b83b1214 Merge pull request #7845 from puneetmatharu/patch-cgal-dont-override-build-testing
Patch usage of BUILD_TESTING to handle the case that CGAL is a subproject
2023-11-29 17:22:54 +01:00
Laurent Rineau 2cf5576eb8 Merge pull request #7858 from janetournois/Installation-ITK-jtournois
Installation - fix `CGAL_ITK_support`
2023-11-29 17:18:55 +01:00
Laurent Rineau 1740a2d0d7 Merge pull request #7869 from lrineau/Installation-fix_CMake_REGEXP_REPLACE-GF
CMake: fix incorrect use of string(REGEX REPLACE...)
2023-11-29 17:18:53 +01:00
Laurent Rineau 19e4840023 Merge pull request #7869 from lrineau/Installation-fix_CMake_REGEXP_REPLACE-GF
CMake: fix incorrect use of string(REGEX REPLACE...)
2023-11-29 17:16:09 +01:00
Laurent Rineau eb59cc6105 Merge remote-tracking branch 'cgal/master' into Installation-ITK-jtournois 2023-11-24 10:50:26 +01:00
Laurent Rineau 9262c6a8b6 Re-add CGAL_ITK_support.cmake
That will allow to be compatible with ITK version 4.13 and 5.x.
2023-11-23 17:25:18 +01:00
Laurent Rineau 25ebbab854 Fix incorrect use of string(REGEX REPLACE...) 2023-11-17 15:29:24 +01:00
Jane Tournois 0b73361226 remove CGAL_ITK_support.cmake
and adapt the CMakeLists that were using it
2023-11-13 12:47:39 +01:00
Laurent Rineau a8b8102567 CGAL_ENABLE_TESTING has three definitions
`CGAL_ENABLE_TESTING` is defined three times:
- once in `/CMakeLists.txt` that is the root of the CMake tree for a Git layout
- once in `Installation/CMakeLists.txt` that is the root of the CMake
  for a release tarball,
- and once in `CGAL_add_test.cmake`, for consumers of `CGALConfig.cmake`.

Two changes:
- Add the default value `${BUILD_TESTING}` to all three definitions
- Modify the comment
2023-11-10 13:17:46 +01:00
Puneet Matharu 7944441068 Patch usage of BUILD_TESTING to handle the case that CGAL is a subproject. 2023-11-02 18:09:03 +00:00
Laurent Rineau b05e1e9e46 Remove UseCGAL.cmake
and our old CMake macros `use_lib` and `use_component`.
2023-09-14 17:32:55 +02:00
Laurent Rineau 48f37a14dc remove occurrences of Qt5 2023-09-14 17:02:21 +02:00
Laurent Rineau 2f6d51b49b Remove a few occurrences of CGAL_Qt5
... and replace by CGAL_Qt6
2023-09-14 16:33:20 +02:00
Laurent Rineau a12a0fafa9 TBB is a SYSTEM library 2023-08-24 15:29:47 +02:00
Sébastien Loriot 68bc244d02 Merge remote-tracking branch 'cgal/master' into HEAD 2023-08-24 14:14:12 +02:00
albert-github 1cce66c343 Spelling corrections
Spelling corrections `a e...` -> `an e...`
2023-07-30 12:59:17 +02:00
Sébastien Loriot 573de7f29e Merge branch 'master' 2023-06-22 13:38:49 +02:00
Sébastien Loriot cce3dfd075 Merge pull request #7416 from sloriot/CGAL-toward_6.0
CGAL 6.0 requires c++17
2023-06-22 09:28:15 +02:00
Sébastien Loriot bbc4d08ee0 Merge remote-tracking branch 'cgal/master' into HEAD 2023-06-15 10:47:07 +02:00
Sébastien Loriot f5803d5a8b MSVC 2015 is no longer supported 2023-06-15 10:43:16 +02:00
Laurent Rineau 5459870e31 create a new CMake function CGAL_setup_CGAL_flags
That new CMake function will ease the work with the Conan CGAL package.
2023-06-13 14:19:06 +02:00
Laurent Rineau 4cf3095ff5 Merge pull request #7502 from lrineau/Installation-fix_CGALConfig.cmake_for_Conan-GF
fix for Conan 2.0
2023-06-09 16:26:24 +02:00
Laurent Rineau 4d7b71bbb7 Update the patch for Conan 2.0 2023-06-08 17:32:47 +02:00
Laurent Rineau 4f95ee4da6 Merge pull request #7498 from sloriot/fix_libpointmatcher_link
Fix link issue with pointmatcher
2023-06-07 17:34:03 +02:00
Laurent Rineau 16425cc053 Merge pull request #7498 from sloriot/fix_libpointmatcher_link
Fix link issue with pointmatcher
2023-06-07 17:33:39 +02:00
Sébastien Loriot 933fe5004a link with libnabo 2023-06-05 15:46:50 +02:00
Laurent Rineau c31d3e126f Merge pull request #7456 from lrineau/Installation-upgrade_FindTBB.cmake-GF
Upgrade FindTBB.cmake
2023-06-05 15:10:15 +02:00
Laurent Rineau bce4c8398d Merge pull request #7456 from lrineau/Installation-upgrade_FindTBB.cmake-GF
Upgrade FindTBB.cmake
2023-06-05 14:01:28 +02:00
Laurent Rineau c02bd3cbd5 Reintroduce a search in NO_MODULE mode 2023-06-01 10:15:58 +02:00
Laurent Rineau 44a7b6a431 Upgrade FindTBB.cmake
Fixes https://github.com/CGAL/cgal/issues/7349
2023-05-19 18:36:24 +02:00
Laurent Rineau d079559577 Merge pull request #7413 from lrineau/CGAL-fix-Qt5-CMake-GF
Qt5::Svg is now only optional for CGAL_Qt5
2023-05-11 16:55:28 +02:00
Laurent Rineau 15c98093c0 Merge pull request #7411 from lrineau/CGAL-fix_worktree_with_space-GF
CMake: allow spaces in git working directory
2023-05-04 16:37:01 +02:00
Laurent Rineau eaa2c8cd71 Merge branch '5.4.x-branch' into 5.5.x-branch 2023-05-04 16:35:30 +02:00
Sébastien Loriot fcd71fa9f3 CGAL now requires C++17 2023-04-28 20:16:28 +02:00
Laurent Rineau 0576e883f9 Merge branch 'CGAL-fix-Qt5-CMake-GF' into CGAL-Qt6-GF
# Conflicts:
#	AABB_tree/demo/AABB_tree/CMakeLists.txt
#	Alpha_shapes_3/demo/Alpha_shapes_3/CMakeLists.txt
#	Arrangement_on_surface_2/demo/Arrangement_on_surface_2/CMakeLists.txt
#	Circular_kernel_3/demo/Circular_kernel_3/CMakeLists.txt
#	GraphicsView/demo/Alpha_shapes_2/CMakeLists.txt
#	GraphicsView/demo/Apollonius_graph_2/CMakeLists.txt
#	GraphicsView/demo/Bounding_volumes/CMakeLists.txt
#	GraphicsView/demo/Circular_kernel_2/CMakeLists.txt
#	GraphicsView/demo/Generator/CMakeLists.txt
#	GraphicsView/demo/GraphicsView/CMakeLists.txt
#	GraphicsView/demo/L1_Voronoi_diagram_2/CMakeLists.txt
#	GraphicsView/demo/Largest_empty_rect_2/CMakeLists.txt
#	GraphicsView/demo/Periodic_2_triangulation_2/CMakeLists.txt
#	GraphicsView/demo/Polygon/CMakeLists.txt
#	GraphicsView/demo/Segment_Delaunay_graph_2/CMakeLists.txt
#	GraphicsView/demo/Segment_Delaunay_graph_Linf_2/CMakeLists.txt
#	GraphicsView/demo/Snap_rounding_2/CMakeLists.txt
#	GraphicsView/demo/Spatial_searching_2/CMakeLists.txt
#	GraphicsView/demo/Stream_lines_2/CMakeLists.txt
#	GraphicsView/include/CGAL/Qt/DemosMainWindow_impl.h
#	Hyperbolic_triangulation_2/demo/Hyperbolic_triangulation_2/CMakeLists.txt
#	Installation/cmake/modules/CGAL_add_test.cmake
#	Linear_cell_complex/demo/Linear_cell_complex/CMakeLists.txt
#	Optimal_transportation_reconstruction_2/demo/Optimal_transportation_reconstruction_2/CMakeLists.txt
#	Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/CMakeLists.txt
#	Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/CMakeLists.txt
#	Polyhedron/demo/Polyhedron/polyhedron_demo_macros.cmake
#	Polyline_simplification_2/demo/Polyline_simplification_2/CMakeLists.txt
#	Principal_component_analysis/demo/Principal_component_analysis/CMakeLists.txt
#	Triangulation_3/demo/Triangulation_3/CMakeLists.txt
#	Triangulation_on_sphere_2/demo/Triangulation_on_sphere_2/CMakeLists.txt
2023-04-28 13:49:58 +02:00
Laurent Rineau 1a6ece1cea Qt5::Svg is now only optional for CGAL_Qt5 2023-04-27 17:27:23 +02:00
Laurent Rineau 28da6e7c74 CMake: allow spaces in git working directory 2023-04-26 16:24:01 +02:00
Laurent Rineau b8f23d4feb Merge pull request #7255 from lrineau/CGAL-rename_ctest_test_names-GF
CGAL CTest support: rename the test names
2023-04-24 14:08:27 +02:00
Laurent Rineau 38823ee9c4 Merge pull request #7386 from janetournois/Installation-gmp-jtournois
Installation - add new possible GMP lib name for MSVC
2023-04-21 11:21:21 +02:00
Laurent Rineau 731a774a4f Merge pull request #7386 from janetournois/Installation-gmp-jtournois
Installation - add new possible GMP lib name for MSVC
2023-04-21 11:18:56 +02:00
Laurent Rineau 205236832e Merge remote-tracking branch 'cgal/master' into CGAL-rename_ctest_test_names-GF
# Conflicts:
#	Polyhedron/demo/Polyhedron/Plugins/PMP/CMakeLists.txt
2023-04-21 10:47:17 +02:00
Andreas Fabri c6ce5fb120 Switch to QT6 for the GraphicsView demos 2023-04-19 12:19:38 +01:00
Andreas Fabri ef46506378 Add cmake/modules files 2023-04-18 16:46:40 +01:00
Laurent Rineau 12c8e60e6e fix name of a custom target on Windows 2023-04-17 10:07:35 +02:00
Jane Tournois 37c0b5eaa6 add gmp-10 as a hint for findGMP
and add GMP_DIR and MPFR_DIR as hints to find all includes and libs
2023-04-13 16:17:22 +02:00
Andreas Fabri 0d320e48a8 Merge branch 'Number_types-fix_VC2017_boost_mp-GF' into CORE-boost_mp_number-GF 2023-03-17 08:28:10 +01:00
Laurent Rineau 2f0203be10 Merge pull request #7255 from lrineau/CGAL-rename_ctest_test_names-GF
CGAL CTest support: rename the test names

# Conflicts:
#	Mesh_3/test/Mesh_3/CMakeLists.txt
2023-03-15 14:23:32 +01:00
Laurent Rineau d2223cdd9b Fix compilation bug 2023-03-09 15:20:39 +01:00
Sébastien Loriot acbe714a14 update rules for using/finding core 2023-02-20 13:56:21 +01:00
Andreas Fabri 12f5892848 merge master 2023-02-06 14:25:03 +00:00
Laurent Rineau 6df18b668c CGAL CTest support: rename the test names
Now that CTest test names can contain whitespace, we can have
better looking names. That is also more practicle because we can now
copy-paste the target name in `compilation of  <target_name>`.
2023-02-06 12:04:57 +01:00
Mael 153c603209
Merge branch 'master' into CGAL-Clean_CMakeLists.txt-GF 2023-01-27 22:09:02 +01:00
Laurent Rineau 5f8930db8c Merge branch '5.5.x-branch'
# Conflicts:
#	Convex_hull_2/test/Convex_hull_2/ch_test_CH.cpp
#	Convex_hull_2/test/Convex_hull_2/ch_test_SC.cpp
#	Convex_hull_2/test/Convex_hull_2/ch_test_SH.cpp
#	Convex_hull_2/test/Convex_hull_2/ch_test_SS.cpp
#	Straight_skeleton_2/include/CGAL/constructions/Straight_skeleton_cons_ftC2.h
#	Straight_skeleton_2/include/CGAL/predicates/Straight_skeleton_pred_ftC2.h
2023-01-27 21:16:14 +01:00
Laurent Rineau 8fbb9c5eaf Merge pull request #7129 from sloriot/CGAL-config_clean_up
Leopard is retired for quite some time now
2023-01-27 20:52:25 +01:00
Sébastien Loriot 226c009892 Leopard is retired for quite some time now 2022-12-20 08:35:28 +01:00
Mael 0ff7882997
Merge branch 'master' into feature/bug_documentation_spell_20221113 2022-12-06 22:21:06 +01:00
Mael 6538b22e06
Merge branch 'master' into CGAL-Clean_CMakeLists.txt-GF 2022-12-05 16:03:41 +01:00
Laurent Rineau e8ec440859 Merge branch 'master' into Kernel-Compare_distance_3_RT_FT__always_Filtered_predicate_RT_FT-GF
# Conflicts:
#	STL_Extension/doc/STL_Extension/CGAL/Concurrent_compact_container.h
2022-12-05 14:51:31 +01:00
Laurent Rineau 67b5c791e9 Merge pull request #7075 from MaelRL/CGAL-Fix_some_links-GF
Update some links + https
2022-12-05 12:22:06 +01:00
Mael da0b13699c
Merge branch 'master' into Kernel-Compare_distance_3_RT_FT__always_Filtered_predicate_RT_FT-GF 2022-12-02 23:19:29 +01:00
Laurent Rineau 5c943e558c Merge pull request #6935 from lrineau/CGAL-fix_autotest_with_ctest-GF
Fix autotest_cgal_with_ctest
2022-11-25 10:15:07 +01:00
Laurent Rineau b363b7e4af Merge pull request #6935 from lrineau/CGAL-fix_autotest_with_ctest-GF
Fix autotest_cgal_with_ctest
2022-11-25 10:14:18 +01:00
Mael Rouxel-Labbé b5c21e1f5d Http -> https + update some dead links 2022-11-23 18:54:37 +01:00
albert-github 9d709b12e5 spelling corrections
After review
2022-11-21 10:40:28 +01:00
albert-github 45478184de spelling corrections
Some spelling corrections (Directories starting with `E`-` L`),
some backward work
some forward work
2022-11-15 13:39:40 +01:00
Andreas Fabri b32d1f0023 Merge branch 'master' into CORE-boost_mp_number-GF 2022-10-21 13:27:48 +01:00
Laurent Rineau ea35fa8f88 Fix autotest_cgal_with_ctest
That commit makes the CMake variables `CGAL_TEST_SUITE` (the new one)
and `RUNNING_CGAL_AUTO_TEST` (the legacy one) completely equivalent.
2022-10-05 15:06:02 +02:00
Laurent Rineau 26fbe0196f Merge pull request #6850 from janetournois/CGAL-boost_min_version-GF
Installation - update minimal valid Boost version
2022-10-04 13:53:19 +02:00
Mael Rouxel-Labbé 3529588796 Partial revert of 7c92341be7 (no C++17) 2022-09-22 21:41:02 +02:00
Jane Tournois 26f44ea271 update minimal valid boost version 2022-09-15 13:50:15 +01:00
Mael Rouxel-Labbé e93b0b28eb Misc trivial cleaning 2022-09-06 16:25:47 +02:00
Mael Rouxel-Labbé 7cb21c24b0 Uniformize message() for missing 3rd party libraries
STATUS for non-essential, NOTICE for important stuff
2022-09-06 16:07:31 +02:00
Laurent Rineau 7c92341be7 Introduce CGAL_Kernel_pred_RT_or_FT
This commit introduces a new kind of predicate in
`<CGAL/Kernel/interface_macros.h>`. In addition to
  - `CGAL_kernel_pred` for predicates,
  - `CGAL_Kernel_pred_RT` for predicates that can be implemented using a
    ring-type,

now there is also:
  - `CGAL_Kernel_pred_RT_or_FT` for predicates with multiple overloads of
    `operator()`, some needing a field type and other needing a ring type
    (without the division operator).

The C++ code can discriminate between the two cases with a special wrapper
for the return type: `CGAL::Needs_FT<result_type` instead of `result_type`
(defined in `<CGAL/tags.h>`.

In `<CGAL/Filtered_predicate.h>`, in addition to the usual class template
 `Filtered_predicate`, there is now also `Filtered_predicate_RT_FT` that
 takes three predicates as template parameters instead of two:
  - the exact predicate with an ring-type,
  - the exact predicate with a field-type,
  - the approximate predicate (with `Interval_nt` as number-type).

For the moment, only `Compare_distance_3` in
`<CGAL/Cartesian/function_objects.h>` is using the new
`Filtered_predicate_RT_FT`.

Before this commit, the file
`Kernel_23/test/Kernel_23/include/CGAL/_test_new_3.h` was testing
`Compare_distance_3` only with three points or for points. This commit adds:
  - a test with `Point_3, Point_3, Segment_3`, and
  - a test with `Line_3, Point_3, Point_3`, that actually needs a field type
    with its current implementation.

In the test `Kernel_23/test/Kernel_23/Filtered_cartesian.cpp`, the macro
`CGAL_NO_MPZF_DIVISION_OPERATOR` is defined, to remove the division operator
from `CGAL::Mpzf`. `CGAL::Mpzf` is a ring-type, even with its `operator/`
(because that `operator/` can only compute exact divisions), but with
`CGAL_NO_MPZF_DIVISION_OPERATOR` defined, that is now checked by the compiler.
2022-09-02 11:31:47 +02:00
Laurent Rineau 79e064c9cf Merge pull request #6692 from lrineau/CGAL-fix_cmake-GF
Cleanup CMake scripts
2022-07-24 18:08:38 +02:00
Laurent Rineau 755c9d5d42 Merge pull request #6646 from lrineau/Installation-optional_ASAN-GF
Use ASAN optionally
2022-06-29 09:52:15 +02:00
Laurent Rineau ad54e34af1 `cmale_language(DEFER ...)` is actually from CMake 3.19 2022-06-21 21:59:55 +02:00
Laurent Rineau 266b0ae15a Fix the dependencies of CTest tests on compilation_of__CGAL_Qt5_moc_and_resources 2022-06-21 21:51:52 +02:00
Laurent Rineau a31a7b10eb use `cmake_language(DEFER CALL..)` instead of `variable_watch` 2022-06-21 20:59:18 +02:00
Laurent Rineau 5a038abf34 Fix a CMake bad code
https://cmake.org/cmake/help/latest/command/if.html#command:if
> `if(ENV{some_var})` will always evaluate to false.
2022-06-20 09:55:12 +02:00
Laurent Rineau b99f1afac6 Disable TBB when ASAN is used 2022-06-15 16:05:10 +02:00
Laurent Rineau 35f29ecbe8 Use ASAN optionally 2022-06-07 12:00:30 +02:00
Andreas Fabri 2e3f44abb9 Require in CMake a recent boost when using CORE. 2022-06-06 11:39:47 +01:00
Laurent Rineau 35ec6c83ac Add CGAL include paths first 2022-05-19 14:38:35 +02:00
Laurent Rineau f237c761c2 Resore the requirement for CMake 3.11 2022-05-06 09:44:14 +02:00
Laurent Rineau 2288225448 Massive update of CMake policies to version 3.23 2022-05-06 09:34:35 +02:00
Laurent Rineau 55a3b3f1aa Active CMake policies up to CMake-3.23 2022-05-06 09:28:17 +02:00
Laurent Rineau 80c3baa196 /wd4503 is only for MSVC 2015 2022-05-05 16:09:51 +02:00
Laurent Rineau c00c481e06 Remove workarounds for CMake<3.11 2022-05-05 16:08:51 +02:00
Sébastien Loriot cd1cdccd62 change the scope of imported targets 2021-11-02 11:01:38 +01:00
Sébastien Loriot c59405342a add target for generated files 2021-11-01 12:38:48 +01:00
Laurent Rineau ca89949169 Merge pull request #5597 from lrineau/Mesh_3-weighted_images-GF
Mesh_3: Add weighted images
2021-10-29 17:01:33 +02:00
Jane Tournois 0498cace68 add and use CGAL_ITK_support.cmake 2021-10-29 12:27:04 +02:00
Laurent Rineau fb9333f0d0 Merge pull request #6028 from MaelRL/CGAL-Fix_typos-GF
Fix typos
2021-10-07 14:27:21 +02:00
Marius Kintel 3f369718be
Bugfix: ORIGINAL_CMAKE_MODULE_PATH was set to PARENT_SCOPE and later referenced in the current scope
In the `cgal_setup_module_path` function, the intent is to set a few variables then later export them.
The ORIGINAL_CMAKE_MODULE_PATH variable, however, was set directly in the parent scope. When later trying to export it, it reads from the current scope, where the variable is empty as it hasn't yet been set.
This fix makes correctly sets the variable in the local scope the first time, making the export work as expected.
2021-10-04 16:13:30 -04:00
Mael Rouxel-Labbé 521c72d57e Fix typos 2021-10-04 13:34:07 +02:00
Laurent Rineau 458fa7c280 Merge pull request #6007 from lrineau/Installation-fix_CGAL_pointmatcher_support.cmake-GF
Fix CGAL_pointmatcher_support.cmake
2021-09-29 11:46:36 +02:00
Laurent Rineau e5ab9202f5 Merge pull request #4229 from gdamiand/CGAL_data-gdamiand
Regroup data: scripts and function updates
2021-09-23 16:14:11 +02:00