curl/.github/workflows
Viktor Szakats 7b14449790
cmake: add support for versioned symbols option
Implement the `--enable-versioned-symbols` feature available in
`./configure` for CMake.

Enable with `-DCURL_LIBCURL_VERSIONED_SYMBOLS=ON`. Customize the version
prefix with `-DCURL_LIBCURL_VERSIONED_SYMBOLS_PREFIX=MYPREFIX_`. By
default the prefix matches what autotools uses.

When enabled, the feature is detected and a warning shown if
unavailable. (E.g. on Apple and Windows, it isn't.)

Included `HIDDEN {};` to match autotools, though I don't know if it's
necessary, useful or making any difference.

Differences from the autotools implementation:
- soversion is dynamic instead of hard-coded.
- omits referencing non-curl symbols.
- allows prefix/flavour override.
- more universal feature detection.
- doesn't rely on the in-repo `lib/libcurl.vers.in` file.

Also:
- add mbedTLS and BearSSL versioned symbol prefix support to autotools.
- enable this option in an old-linux job.

Follow-up to 7cc2e8b349
Fixes #14349
Closes #14378
2024-08-05 01:44:57 +02:00
..
appveyor-status.yml tidy-up: mostly whitespace nits 2023-08-31 23:02:10 +00:00
awslc.yml GHA: update awslabs/aws-lc to v1.33.0 2024-08-02 08:43:17 +02:00
badwords.yml GHA/badwords.yml: fixup indent for yamllint [ci skip] 2024-07-01 23:24:11 +02:00
binarycheck.yml GHA: scan git repository and detect unvetted binary files 2024-08-01 12:30:36 +02:00
codeql-analysis.yml GHA: bump github/codeql-action and msys2/setup-msys2 2024-07-30 11:59:02 +02:00
codespell.yml GHA: update pinned actions 2024-06-14 09:36:22 +02:00
configure-vs-cmake.yml GHA: update pinned actions 2024-06-14 09:36:22 +02:00
curl-for-win.yml GHA/non-native: improve, migrate x86_64 FreeBSD with tests from Cirrus CI 2024-07-29 20:46:40 +02:00
cygwin.yml GHA/windows: move Cygwin into its own workflow 2024-08-03 20:21:25 +02:00
distcheck.yml ci: Update actions/upload-artifact digest to 89ef406 2024-08-03 09:22:25 +02:00
fuzz.yml GHA/non-native: improve, migrate x86_64 FreeBSD with tests from Cirrus CI 2024-07-29 20:46:40 +02:00
hacktoberfest-accepted.yml GHA: update pinned actions 2024-06-14 09:36:22 +02:00
http3-linux.yml GHA/non-native: improve, migrate x86_64 FreeBSD with tests from Cirrus CI 2024-07-29 20:46:40 +02:00
label.yml GHA: pin dependencies 2024-05-15 13:35:45 +02:00
linkcheck.yml GHA: update pinned actions 2024-06-14 09:36:22 +02:00
linux32.yml GHA/non-native: improve, migrate x86_64 FreeBSD with tests from Cirrus CI 2024-07-29 20:46:40 +02:00
linux-old.yml cmake: add support for versioned symbols option 2024-08-05 01:44:57 +02:00
linux.yml GHA/non-native: improve, migrate x86_64 FreeBSD with tests from Cirrus CI 2024-07-29 20:46:40 +02:00
macos.yml CI: realign cmake build settings (for nghttp2, libidn2) 2024-08-03 16:12:44 +02:00
man-examples.yml GHA: update pinned actions 2024-06-14 09:36:22 +02:00
non-native.yml GHA/non-native: ignore FreeBSD FTP test results 2024-08-04 02:08:27 +02:00
proselint.yml GHA: update pinned actions 2024-06-14 09:36:22 +02:00
reuse.yml GHA: update fsfe/reuse-action action to v4 2024-07-04 09:53:48 +02:00
shellcheck.yml GHA: update pinned actions 2024-06-14 09:36:22 +02:00
spacecheck.yml CI: add whitespace checker 2024-06-27 13:33:30 +02:00
spellcheck.yml GHA: update pinned actions 2024-06-14 09:36:22 +02:00
synopsis.yml CI/synopsis.yml: run on .md files 2024-06-27 12:47:29 +02:00
torture.yml GHA/non-native: improve, migrate x86_64 FreeBSD with tests from Cirrus CI 2024-07-29 20:46:40 +02:00
windows.yml GHA/windows: add mbedTLS MSVC job 2024-08-04 19:51:45 +02:00
wolfssl.yml GHA/non-native: improve, migrate x86_64 FreeBSD with tests from Cirrus CI 2024-07-29 20:46:40 +02:00