Repository navigation
Conversation
Build OpenSSL with VC-WIN64A-masm on x64 to produce libcrypto-3.dll and libssl-3.dll. Add a test to validate the DLL names. Closes #596
Pass no-asm to OpenSSL's VC-WIN32 target. This how Python.org builds OpenSSL for the 32-bit release. Expand the test and correct the library names for ARM64.
NASM is not longer used when building OpenSSL on Windows. Remove the package from the build, download metadata and update script.
jjhelmus
commented
Nov 5, 2026
| LIBFFI_PROPS_REMOVE_RULES = b""" | ||
| <Target Name="_CopyLIBFFIDLL" Inputs="@(_LIBFFIDLL)" Outputs="@(_LIBFFIDLL->'$(OutDir)%(Filename)%(Extension)')" AfterTargets="Build"> | ||
| <Copy SourceFiles="@(_LIBFFIDLL)" DestinationFolder="$(OutDir)" /> | ||
| </Target> |
Contributor
Author
There was a problem hiding this comment.
These constants are not directly related to building OpenSSL but are unused. Removing them as part of this PR since nearby code was modified.
Contributor
Author
|
OpenSSL describes the MASM target as 'experimental' and recommends nasm. Following upstream CPython's choice to use MASM seems better here to ensure compatibility. |
Contributor
Author
|
Note that switching to MASM from nasm is not required to match the OpenSSL DLLs names. OpenSSL can be modified to not produce suffixed DLLs using the VC-WIN64A target. |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Build OpenSSL with VC-WIN64A-masm on x64 and no-asm on x86. This matches the build parameters used by Python.org.
On x64 this produce libcrypto-3.dll and libssl-3.dll rather than suffixed versions which were produced before this change. This follows the pattern of upstream and allows these DLLs to be used by downstream packages.
Add tests to validate the DLL names.
Remove nasm as it is no longer used, MASM is now used as an assembler and is provided by the Visual Studio install.
closes #596