diff --git a/Documentation/doc/Documentation/Third_party.txt b/Documentation/doc/Documentation/Third_party.txt index d2eeb5d9b7e..eaafe426bdd 100644 --- a/Documentation/doc/Documentation/Third_party.txt +++ b/Documentation/doc/Documentation/Third_party.txt @@ -72,23 +72,34 @@ As there is no canonical directory for where to find \boost on Windows, we recommend that you define the environment variable `BOOST_ROOT` and set it to where you have installed \boost, e.g., `C:\boost\boost_1_70_0`. -\subsection thirdpartyMPFR GNU Multiple Precision Arithmetic (GMP) and GNU Multiple Precision Floating-Point Reliably (MPFR) Libraries -GMP Version 5.0.1 or later, MPFR Version 3.0.0 or later +\subsection thirdpartyMP Multi Precision Number Type Library -The components \cgal, `CGAL_Core`, and `CGAL_Qt6` require -\gmp and \mpfr which are libraries for multi precision integers and rational numbers, -and for multi precision floating point numbers. - -\cgal combines floating point arithmetic with exact arithmetic -in order to be efficient and reliable. \cgal has a built-in -number type for that, but \gmp and \mpfr provide a faster -solution, and we recommend using them. +GNU Multiple Precision Arithmetic (GMP) and GNU Multiple Precision Floating-Point Reliably (MPFR) Libraries +are libraries for multi precision integers and rational numbers, and for multi precision floating point numbers. These libraries can be obtained from `https://gmplib.org/` and `https://www.mpfr.org/`. Since Visual \cpp is not properly supported by the \gmp and \mpfr projects, we provide precompiled versions of \gmp and \mpfr, which can be downloaded from the assets of a release. +Version supported are GMP Version 5.0.1 or later, MPFR Version 3.0.0 or later. + +The \boost library also provides a module for multi precision integers and rational numbers: +\boost multiprecision. +Versions supported are \boost Version 1.72 or later. + +The components \cgal, and `CGAL_Qt6` require either \gmp and \mpfr, or \boost multiprecision +for multi precision numbers. `CGAL_Core` requires \boost multiprecision. + +\cgal combines floating point arithmetic with exact arithmetic +in order to be efficient and reliable. \cgal has a built-in +number type for that, but previous alternatives are faster +solutions, and we recommend using one of them. + +The CMake variable `CGAL_CMAKE_EXACT_NT_BACKEND` can be used to select +the library that will be used internally for multi precision number types. +The variable `CGAL_CMAKE_EXACT_NT_BACKEND-STRINGS` contains all the possible +values. \section secoptional3rdpartysoftware Optional Third Party Libraries diff --git a/Documentation/doc/Documentation/Usage.txt b/Documentation/doc/Documentation/Usage.txt index 68a3ae85001..8547affb691 100644 --- a/Documentation/doc/Documentation/Usage.txt +++ b/Documentation/doc/Documentation/Usage.txt @@ -36,7 +36,7 @@ Using \cgal requires a few core components to be previously installed:
  • a supported compiler (see Section \ref seccompilers),
  • \ref seccmake,
  • \ref thirdpartyBoost,
  • -
  • \ref thirdpartyMPFR.
  • +
  • a \ref thirdpartyMP.
  • Optional third-party software might be required to build examples and demos shipped with \cgal, diff --git a/Documentation/doc/Documentation/windows.txt b/Documentation/doc/Documentation/windows.txt index c7d613e5c3a..b0b8875c2ee 100644 --- a/Documentation/doc/Documentation/windows.txt +++ b/Documentation/doc/Documentation/windows.txt @@ -6,7 +6,7 @@ 15.9, 16.0, 17.0 (\visualstudio 2017, 2019, and 2022). \cgal is a library that has mandatory dependencies that must be first installed: -\ref thirdpartyBoost and \ref thirdpartyMPFR. +\ref thirdpartyBoost and a \ref thirdpartyMP. You have two options to install \cgal and its dependencies: you can either use the *Vcpkg library manager*, which will automatically install an appropriate version of diff --git a/Installation/CHANGES.md b/Installation/CHANGES.md index a8ddd38c1a1..6526c913414 100644 --- a/Installation/CHANGES.md +++ b/Installation/CHANGES.md @@ -13,6 +13,8 @@ Release date: June 2024 - LLVM Clang version 15.0.7 or later (on Linux) - Apple Clang compiler versions 10.0.1, 12.0.5, and 15.0.0 (on macOS) - The minimal supported version of Boost is now 1.72.0. +- GMP/MPFR are no longer mandatory to use CGAL, [Boost.Multiprecision](https://www.boost.org/doc/libs/1_72_0/libs/multiprecision/doc/html/index.html). + can be used instead. - The CGAL `Core` library is no longer based on GMP, but on [Boost.Multiprecision](https://www.boost.org/doc/libs/1_72_0/libs/multiprecision/doc/html/index.html). Either GMP backend or Boost backend can be used.