Files
Sebastien Loriot ce19410302 Remove dead MSVC version fallbacks in CGAL_GeneratorSpecificSettings.cmake (#9394)
## Summary of Changes

Remove the dead `elseif(MSVC14)` through `elseif(MSVC71)` fallback chain
in `Installation/cmake/modules/CGAL_GeneratorSpecificSettings.cmake`.

These fallbacks targeted Visual Studio 2003 (VC 7.1) through Visual
Studio 2015 (VC14). They are unreachable dead code because:

1. **CGAL requires CMake >= 3.15**, and `MSVC_TOOLSET_VERSION` has been
defined for all MSVC versions since CMake 3.12. The
`if(MSVC_TOOLSET_VERSION)` branch always fires for any MSVC build,
making the `elseif` chain unreachable.

2. **CGAL requires C++17**, which means Visual Studio 2017 (15.3) at
minimum. None of the removed fallback versions (VS 2003–2015) can
compile CGAL.

The `else()` branch (non-MSVC compilers) is preserved as `elseif(NOT
MSVC)` to maintain the status message for GCC/Clang/etc.

**Before:**
```cmake
if ( MSVC_TOOLSET_VERSION )
  set(CGAL_TOOLSET "vc${MSVC_TOOLSET_VERSION}")
  message( STATUS "Using VC toolset ${MSVC_TOOLSET_VERSION}." )
elseif ( MSVC14 )
  ...  # 7 dead elseif branches (VC14, VC12, VC11, VC10, VC90, VC80, VC71)
else()
  message( STATUS "Using ${CMAKE_CXX_COMPILER} compiler." )
endif()
```

**After:**
```cmake
if ( MSVC_TOOLSET_VERSION )
  set(CGAL_TOOLSET "vc${MSVC_TOOLSET_VERSION}")
  message( STATUS "Using VC toolset ${MSVC_TOOLSET_VERSION}." )
elseif ( NOT MSVC )
  message( STATUS "Using ${CMAKE_CXX_COMPILER} compiler." )
endif()
```

## Release Management

* Affected package(s): `Installation`
* Issue(s) solved (if any): contributes to #6923, #4815
* Feature/Small Feature (if any): N/A
* License and copyright ownership: N/A
2026-08-19 16:39:34 +02:00
..
2025-09-08 19:21:04 +02:00
2025-09-08 19:21:04 +02:00
2026-06-15 10:58:24 +02:00
2026-07-27 09:32:43 +02:00
2019-06-05 17:50:37 +02:00
2026-08-11 19:23:01 +02:00
2019-10-17 15:02:47 +02:00

README

This distribution of CGAL includes:

File or directory Description
AUTHORS current and former authors of CGAL
CHANGES.md history of changes of CGAL
CGALConfig.cmake CMake package configuration file for CGAL
CGALConfigVersion.cmake CMake package version file for CGAL
CMakeLists.txt main CMake project configuration file
INSTALL.md information about the installation process
LICENSE describes the license of CGAL
LICENSE.BSL text of the Boost Software License (BSL) license
LICENSE.COMMERCIAL text of the GeometryFactory Commercial license
LICENSE.GPL text of the GNU General Public License (GPL) v3 license
LICENSE.LGPL text of the GNU Lesser General Public License (LGPL) v3 license
LICENSE.RFL text of the ETH Zurich Random Forest algorithm License (RFL) license
README.md this file
VERSION version number of this release of CGAL
auxiliary/ directory containing miscellaneous things, such as icons needed for the demos on macOS
cmake/ some scripts needed by the CMake build system
data/ directory containing various geometric data used by examples and demos of CGAL
demo/ many demo programs for the various packages of CGAL. These programs produce visual output.
doc_html/ documentation, such as the CGAL Installation Guide
examples/ programs illustrating the usage of various packages of CGAL.
include/ the include files for the CGAL library (as well as small external libraries, see the file LICENSE)
lib/ contains CMake package configuration files for CGAL
scripts/ some useful scripts for CGAL programmers