Change #248119
| Category | None |
| Changed by | Viktor Szakats <commit@vsz.me> |
| Changed at | Sun 09 Nov 2025 17:56:20 |
| Repository | https://api.github.com/repos/curl/curl |
| Project | curl/curl |
| Branch | master |
| Revision | 49ef2f8d1ef78e702c73f5d72242301cc2a0157e |
Comments
cmake: adjust defaults for target platforms not supporting shared libs If CMake reports the target platform not supporting shared libs, turn `BUILD_SHARED_LIBS` off by default. CMake 3.30+ fails with an error when trying to create a `SHARED` target for such platforms. Earlier versions used a workaround that may or may not have worked in practice. Ref: https://cmake.org/cmake/help/v3.30/policy/CMP0164.html Seen this with a build setting `-DCMAKE_SYSTEM_NAME=Generic`, e.g. AmigaOS. Note this may introduce incompatibility for "Generic" targets, which support shared libs. If that's the case, set `BUILD_SHARED_LIBS=ON` manually. Also drop AmigaOS-specific logic handled automatically after this patch. Ref: https://cmake.org/cmake/help/v3.7/command/get_property.html Ref: https://cmake.org/cmake/help/v3.7/prop_gbl/TARGET_SUPPORTS_SHARED_LIBS.html Closes #19420
Changed files
- CMakeLists.txt
- docs/INSTALL-CMAKE.md