Mike, If I get the patch right, it's working around a bug in upstream openssl, which is in a git submodule. That may make it impossible to undefine MIN, unless it comes from one of our headers in edk2 proper. We also have similar build warning-as-errors with the brotli submodule(s) which have been breaking the build for recent GCC compilers, for months now. I suggest we find a good way to fix these submodule Werrors for once and for all. Maybe having a project-wide policy of disabling Werror in external (submodule) code isn't such a bad idea? Best regards, Pedro On Fri, Dec 3, 2021 at 4:27 PM Michael D Kinney wrote: > You should be able to undefine MIN at the right place instead of turning > off all warnings as errors. > > Mike > > > -----Original Message----- > > From: devel@edk2.groups.io On Behalf Of Gerd > Hoffmann > > Sent: Friday, December 3, 2021 8:08 AM > > To: devel@edk2.groups.io > > Cc: Yao, Jiewen ; Wang, Jian J < > jian.j.wang@intel.com>; Jiang, Guomin ; > > Pawel Polawski ; Philippe Mathieu-Daudé < > philmd@redhat.com>; Lu, XiaoyuX ; Gerd > > Hoffmann > > Subject: [edk2-devel] [PATCH 24/24] [hack] turn off -Werror > > > > workaround for this: > > > CryptoPkg/Library/OpensslLib/openssl/providers/implementations/kdfs/kbkdf.c:49: > warning: "MIN" redefined > > > > Signed-off-by: Gerd Hoffmann > > --- > > CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > > index 7424cd16ac21..0ec925d8b53e 100644 > > --- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > > +++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf > > @@ -16,7 +16,7 @@ [Defines] > > VERSION_STRING = 1.0 > > LIBRARY_CLASS = OpensslLib > > DEFINE OPENSSL_PATH = openssl > > - DEFINE OPENSSL_FLAGS = -DL_ENDIAN -DOPENSSL_SMALL_FOOTPRINT > -D_CRT_SECURE_NO_DEPRECATE - > > D_CRT_NONSTDC_NO_DEPRECATE -DOPENSSL_NO_ASM > > + DEFINE OPENSSL_FLAGS = -DL_ENDIAN -DOPENSSL_SMALL_FOOTPRINT > -D_CRT_SECURE_NO_DEPRECATE - > > D_CRT_NONSTDC_NO_DEPRECATE -DOPENSSL_NO_ASM -Wno-error > > > > # > > # VALID_ARCHITECTURES = IA32 X64 ARM AARCH64 > > -- > > 2.33.1 > > > > > > > > > > > > > > > > > -- Pedro Falcato