Re: CryptoPkg OpensslLib INF files


Michael D Kinney
 

Hi Christopher,

I see that IA32 uses .nasm files and IA32Gcc uses .S files.

EDK II support use of NASM files from both VS and GCC builds.

Is there any reason why the .nasm files generated by OpenSSL can not
be used for both VS and GCC builds and remove the .S files?

Thanks,

Mike

-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Christopher Zurcher
Sent: Friday, September 23, 2022 3:40 PM
To: devel@edk2.groups.io; Yao, Jiewen <jiewen.yao@...>; Kinney, Michael D <michael.d.kinney@...>; Wang, Jian J
<jian.j.wang@...>; Lu, Xiaoyu1 <xiaoyu1.lu@...>; Jiang, Guomin <guomin.jiang@...>
Subject: Re: [edk2-devel] CryptoPkg OpensslLib INF files

I looked at doing this previously and found that depending on the selection of accelerated algorithms (in UefiAsm.conf) you
can end up with different sets of non-assembly source files, so that a unified INF would have to contain a copy of the entire
Sources section for each architecture target. The build options can also be affected such that you'd have different sets of
those as well (the OPENSSL_FLAGS_CONFIG define).

If we can commit to limiting the accelerated algorithms to the current selection, it should be possible to unify the files.

Thanks,
Christopher Zurcher

-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Yao, Jiewen
Sent: Friday, September 23, 2022 15:33
To: Kinney, Michael D <michael.d.kinney@...>; devel@edk2.groups.io; Wang, Jian J <jian.j.wang@...>; Lu, Xiaoyu1
<xiaoyu1.lu@...>; Jiang, Guomin <guomin.jiang@...>
Subject: Re: [edk2-devel] CryptoPkg OpensslLib INF files

Hi Mike
Yes, I agree with you.

If we have a way to reduce the number of INF, we should. Feel free to submit patch.

BTW: Do you think we have chance to combine OpensslLibOpt.inf with OpensslLib.inf, with PCD Feature Flag: "Opt"?

Thank you
Yao Jiewen

-----Original Message-----
From: Kinney, Michael D <michael.d.kinney@...>
Sent: Saturday, September 24, 2022 4:58 AM
To: devel@edk2.groups.io; Yao, Jiewen <jiewen.yao@...>; Kinney,
Michael D <michael.d.kinney@...>; Wang, Jian J
<jian.j.wang@...>; Lu, Xiaoyu1 <xiaoyu1.lu@...>; Jiang,
Guomin <guomin.jiang@...>
Subject: CryptoPkg OpensslLib INF files

Hi Jiewen,

I see we now have 6 INF files for the OpensslLib

* OpensslLib.inf
* OpensslLibCrypto.inf
* OpensslLibIa32.inf
* OpensslLibIa32Gcc.inf
* OpensslLibX64.inf
* OpensslLibX64Gcc.inf

If I look at the difference between OpensslLib and OpensslLibCrypto,
the OpensslLibCrypto includes the "ssl" source files.

This looks like a similar problem as the "ec" sources. But the "ec"
sources were addressed with a PCD FeatureFlag expression so we did not
have to add another INF.

Could the same technique be applied to the "ssl" sources so we can get
back to just OpensslLib.inf with an SSL PCD and an EC PCD to
conditionally build the extra source files?

For the other 4 INF files, these contain the assembly optimized
algorithms for IA32/X64. I think these 4 INFs can be combined into a single INF.
Perhaps OpensslLibOpt.inf?

Mike







Join devel@edk2.groups.io to automatically receive all group messages.