cmake: add minimum required CGAL version

This commit is contained in:
Andrej730
2026-09-16 13:02:30 +05:00
parent c2e0ae3bdf
commit 6dbc4e28df
2 changed files with 17 additions and 7 deletions
+7 -1
View File
@@ -260,7 +260,13 @@ endforeach()
set(SWIG_DEFINES "") set(SWIG_DEFINES "")
if(WITH_CGAL) if(WITH_CGAL)
find_package(CGAL REQUIRED) # 5.4 is the version shipped with Ubuntu 22.04.
set(CGAL_MIN_VERSION 5.4)
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 15)
# https://github.com/CGAL/cgal/issues/8313
set(CGAL_MIN_VERSION 5.6.2)
endif()
find_package(CGAL ${CGAL_MIN_VERSION} REQUIRED)
set(SWIG_DEFINES ${SWIG_DEFINES} -DIFOPSH_WITH_CGAL) set(SWIG_DEFINES ${SWIG_DEFINES} -DIFOPSH_WITH_CGAL)
list(APPEND GEOMETRY_KERNELS cgal) list(APPEND GEOMETRY_KERNELS cgal)
endif() endif()
+10 -6
View File
@@ -25,12 +25,16 @@ UNIFY_ENVVARS_AND_CACHE(MPFR_LIBRARY_DIR)
if(CGAL_INCLUDE_DIR) if(CGAL_INCLUDE_DIR)
find_library(libGMP NAMES gmp mpir PATHS ${GMP_LIBRARY_DIR} NO_DEFAULT_PATH) find_library(libGMP NAMES gmp mpir PATHS ${GMP_LIBRARY_DIR} NO_DEFAULT_PATH)
find_library(libMPFR NAMES mpfr PATHS ${MPFR_LIBRARY_DIR} NO_DEFAULT_PATH) find_library(libMPFR NAMES mpfr PATHS ${MPFR_LIBRARY_DIR} NO_DEFAULT_PATH)
if(NOT libGMP)
message(FATAL_ERROR "Unable to find GMP library files, aborting") file(STRINGS "${CGAL_INCLUDE_DIR}/CGAL/version.h" CGAL_VERSION_LINE REGEX "^#define CGAL_VERSION ")
endif() string(REGEX REPLACE "^#define CGAL_VERSION ([0-9.]+)$" "\\1" CGAL_VERSION "${CGAL_VERSION_LINE}")
if(NOT libMPFR)
message(FATAL_ERROR "Unable to find MPFR library files, aborting") include(FindPackageHandleStandardArgs)
endif() find_package_handle_standard_args(
CGAL
REQUIRED_VARS CGAL_INCLUDE_DIR libGMP libMPFR
VERSION_VAR CGAL_VERSION
)
add_library(CGAL::CGAL INTERFACE IMPORTED) add_library(CGAL::CGAL INTERFACE IMPORTED)
target_include_directories(CGAL::CGAL INTERFACE "${CGAL_INCLUDE_DIR}") target_include_directories(CGAL::CGAL INTERFACE "${CGAL_INCLUDE_DIR}")