Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmake: allow CURL_STATIC_CRT with shared libcurl and no curl exe #16516

Closed
wants to merge 2 commits into from

Conversation

vszakats
Copy link
Member

@vszakats vszakats commented Feb 28, 2025

Follow-up to edfa537 #16456


Thinking that libcurl.dll users in general might find this combination
working (not crashing) and useful, depending on how they use libcurl.

@vszakats vszakats added cmake Windows Windows-specific labels Feb 28, 2025
@github-actions github-actions bot added the build label Feb 28, 2025
@vszakats vszakats changed the title cmake: allow CURL_STATIC_CRT with shared libcurl when not building curl exe cmake: allow CURL_STATIC_CRT with shared libcurl and no curl exe Feb 28, 2025
@vszakats vszakats closed this in 049352d Feb 28, 2025
@vszakats vszakats deleted the cm-static-crt-cont branch February 28, 2025 12:15
vszakats added a commit that referenced this pull request Mar 4, 2025
After this patch, we're back to 8.12.1, but disallowing
`CURL_STATIC_CRT=ON` with shared curl exe built with VS2013 or older.
Because those may crash. A stable reprducer is with `ENABLE_DEBUG=ON`
and calling `curl.exe -V`.

You can pass the necessary CMake and MSVC linker options manually,
to get around this condition.

Shared build with static UCRT may be crashing too, depending on
conditions. Consult the documentation about limitations of static CRT:
https://learn.microsoft.com/cpp/c-runtime-library/crt-library-features

Follow-up to 049352d #16516
Follow-up to edfa537 #16456
Ref: #16394
Closes #16522
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

1 participant