mirror of
https://github.com/curl/curl.git
synced 2025-02-05 14:30:10 +08:00
This patch adds the ability to build a static and shared libcurl library in a single build session. It also adds an option to select which one to use when building the curl executable. New build options: - `BUILD_STATIC_LIBS`. Default: `OFF`. Enabled automatically if `BUILD_SHARED_LIBS` is `OFF`. - `BUILD_STATIC_CURL`. Default: `OFF`. Requires `BUILD_STATIC_LIBS` enabled. Enabled automatically if building static libcurl only. - `STATIC_LIB_SUFFIX`. Default: empty. - `IMPORT_LIB_SUFFIX`. Default: `_imp` if implib filename would collide with static lib name (typically with MSVC) in Windows builds. Otherwise empty. Also: - Stop setting the `CURL_STATICLIB` macro via `curl_config.h`, and pass it directly to the compiler. This also allows to delete a condition from `tests/server/CMakeLists.txt`. - Complete a TODO by following the logic used in autotools (also for `LIBCURL_NO_SHARED`), and set `-DCURL_STATICLIB` in `Cflags:` of `libcurl.pc` for _static-only_ curl builds. - Convert an existing CI test to build both shared and static libcurl. Closes #11505 |
||
---|---|---|
.. | ||
appveyor-status.yml | ||
awslc.yml | ||
codeql-analysis.yml | ||
fuzz.yml | ||
hacktoberfest-accepted.yml | ||
label.yml | ||
linkcheck.yml | ||
linux.yml | ||
macos.yml | ||
ngtcp2-linux.yml | ||
proselint.yml | ||
quiche-linux.yml | ||
reuse.yml | ||
spellcheck.yml | ||
torture.yml | ||
wolfssl.yml |