mirror of https://github.com/CGAL/cgal
Installation: Don't insist on providing GMP (#8893)
## Summary of Changes Removed error when GMP is not found. ## Release Management * Affected package(s): Installation * Issues: fix #8852
This commit is contained in:
commit
b8d043ff76
|
|
@ -21,9 +21,18 @@ set(CGAL_SetupGMP_included TRUE)
|
||||||
# That is required to find the FindGMP and FindMPFR modules.
|
# That is required to find the FindGMP and FindMPFR modules.
|
||||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CGAL_MODULES_DIR})
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CGAL_MODULES_DIR})
|
||||||
|
|
||||||
find_package(GMP REQUIRED)
|
find_package(GMP QUIET)
|
||||||
find_package(MPFR REQUIRED)
|
find_package(MPFR QUIET)
|
||||||
find_package(GMPXX QUIET)
|
|
||||||
|
if (GMP_FOUND)
|
||||||
|
find_package(GMPXX QUIET)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT GMP_FOUND OR NOT MPFR_FOUND)
|
||||||
|
message(STATUS "GMP not found.")
|
||||||
|
set(CGAL_DISABLE_GMP ON)
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
|
||||||
if(NOT GMPXX_FOUND)
|
if(NOT GMPXX_FOUND)
|
||||||
option(CGAL_WITH_GMPXX "Use CGAL with GMPXX: use C++ classes of GNU MP instead of CGAL wrappers" OFF)
|
option(CGAL_WITH_GMPXX "Use CGAL with GMPXX: use C++ classes of GNU MP instead of CGAL wrappers" OFF)
|
||||||
|
|
|
||||||
|
|
@ -115,6 +115,19 @@ requirements.
|
||||||
|
|
||||||
To use these classes, \gmp and \mpfr must be installed.
|
To use these classes, \gmp and \mpfr must be installed.
|
||||||
|
|
||||||
|
|
||||||
|
\section Number_typesBoost Number Types Provided by Boost
|
||||||
|
|
||||||
|
\anchor boostnt
|
||||||
|
|
||||||
|
Boost provides arbitrary precision integer and rational number types.
|
||||||
|
The number types `boost::multiprecision::gmp_int` and `boost::multiprecision::gmp_rational`
|
||||||
|
have \gmp as backend, while the number types `boost::multiprecision::cpp_int`
|
||||||
|
and `boost::multiprecision::cpp_rational` have a native backend.
|
||||||
|
The file <TT>CGAL/boost_mp.h</TT> provides the functions to make
|
||||||
|
these classes models of number type concepts.
|
||||||
|
|
||||||
|
|
||||||
\section Number_typesLEDA Number Types Provided by LEDA
|
\section Number_typesLEDA Number Types Provided by LEDA
|
||||||
|
|
||||||
\anchor ledant
|
\anchor ledant
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,9 @@
|
||||||
/// \defgroup nt_core CORE
|
/// \defgroup nt_core CORE
|
||||||
/// \ingroup PkgNumberTypesRef
|
/// \ingroup PkgNumberTypesRef
|
||||||
|
|
||||||
|
/// \defgroup nt_boost Boost
|
||||||
|
/// \ingroup PkgNumberTypesRef
|
||||||
|
|
||||||
/// \defgroup nt_leda LEDA
|
/// \defgroup nt_leda LEDA
|
||||||
/// \ingroup PkgNumberTypesRef
|
/// \ingroup PkgNumberTypesRef
|
||||||
|
|
||||||
|
|
@ -71,6 +74,13 @@
|
||||||
- `leda_bigfloat`
|
- `leda_bigfloat`
|
||||||
- `leda_real`
|
- `leda_real`
|
||||||
|
|
||||||
|
\cgalCRPSubsection{Boost}
|
||||||
|
|
||||||
|
- `boost::multiprecision::cpp_int`
|
||||||
|
- `boost::multiprecision::cpp_rational`
|
||||||
|
- `boost::multiprecision::gmp_int`
|
||||||
|
- `boost::multiprecision::gmp_rational`
|
||||||
|
|
||||||
\cgalCRPSubsection{GMP}
|
\cgalCRPSubsection{GMP}
|
||||||
|
|
||||||
- `mpz_class`
|
- `mpz_class`
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,7 @@ namespace CGAL {
|
||||||
`Exact_integer` is an exact integer number type.
|
`Exact_integer` is an exact integer number type.
|
||||||
|
|
||||||
It is a typedef of another number type. Its exact definition depends on
|
It is a typedef of another number type. Its exact definition depends on
|
||||||
the availability the third-party libraries \gmp, \core, and \leda. \cgal must
|
the availability the third-party libraries \gmp and \leda.
|
||||||
be configured with at least one of those libraries.
|
|
||||||
|
|
||||||
\cgalModels{EuclideanRing,RealEmbeddable}
|
\cgalModels{EuclideanRing,RealEmbeddable}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,7 @@ namespace CGAL {
|
||||||
`Exact_rational` is an exact rational number type, constructible from `double`.
|
`Exact_rational` is an exact rational number type, constructible from `double`.
|
||||||
|
|
||||||
It is a typedef of another number type. Its exact definition depends on
|
It is a typedef of another number type. Its exact definition depends on
|
||||||
the availability the third-party libraries \gmp, \core, and \leda. \cgal must
|
the availability the third-party libraries \gmp and \leda.
|
||||||
be configured with at least one of those libraries.
|
|
||||||
|
|
||||||
\cgalModels{Field,RealEmbeddable,Fraction,FromDoubleConstructible}
|
\cgalModels{Field,RealEmbeddable,Fraction,FromDoubleConstructible}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue