Bug xxx crypto pkg openssl clang asm file fix #10634
Open
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.
Description
Update the CryptoPkg to support CLANGPDB and CLANGDWARF from
both Windows and Linux host environments.
optimized assembly source style for OpensslLib for IA32/X64.
NASM style is for MSFT and CLANGPDB. GAS style is for GCC.
Use this PCD in OpensslLibAccel.inf and OpensslLibFullAccel.inf
to select between .nasm and .S files.
compatibility
with feature flag expressions using the new PCD
PcdOpensslLibAssemblySourceStyleNasm.
Align CLANG and GCC linker scripts to not discard COMMON
sections for CLANG builds. If COMMON sections are discarded,
then global variables from optimized OpensslLib assembly
source files are removed and results in symbol not found
errors.
OpesslLibAccel.inf
orOpensslLibFullAccel.inf
must add the following statement to select the correct asm source files:How This Was Tested
Build CryptoPkg on Windows using VS2022, CLANGPDB and CLANGDWARF for IA32/X64 for DEBUG/RELEASE/NOOPT
Build CryptoPkg on Linux using GCC, GCC5, CLANGPDB and CLANGDWARF for IA32/X64 for DEBUG/RELEASE/NOOPT
Integration Instructions
Platform DSC file should add the following to support all OpensslLib instances