add gcc12 fixes
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
ced5d89940
commit
e3d786aa1d
50
0030-BaseTools-fix-gcc12-warning.patch
Normal file
50
0030-BaseTools-fix-gcc12-warning.patch
Normal file
@ -0,0 +1,50 @@
|
||||
From 84d64059dd0082609a43c7938a8a35e10da10706 Mon Sep 17 00:00:00 2001
|
||||
From: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Date: Mon, 24 Jan 2022 11:03:25 +0100
|
||||
Subject: [PATCH 30/32] BaseTools: fix gcc12 warning
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
GenFfs.c:545:5: error: pointer ‘InFileHandle’ used after ‘fclose’ [-Werror=use-after-free]
|
||||
545 | Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle);
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
GenFfs.c:544:5: note: call to ‘fclose’ here
|
||||
544 | fclose (InFileHandle);
|
||||
| ^~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
---
|
||||
BaseTools/Source/C/GenFfs/GenFfs.c | 2 +-
|
||||
BaseTools/Source/C/GenSec/GenSec.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/BaseTools/Source/C/GenFfs/GenFfs.c b/BaseTools/Source/C/GenFfs/GenFfs.c
|
||||
index 949025c33325..d78d62ab3689 100644
|
||||
--- a/BaseTools/Source/C/GenFfs/GenFfs.c
|
||||
+++ b/BaseTools/Source/C/GenFfs/GenFfs.c
|
||||
@@ -542,7 +542,7 @@ GetAlignmentFromFile(char *InFile, UINT32 *Alignment)
|
||||
PeFileBuffer = (UINT8 *) malloc (PeFileSize);
|
||||
if (PeFileBuffer == NULL) {
|
||||
fclose (InFileHandle);
|
||||
- Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle);
|
||||
+ Error(NULL, 0, 4001, "Resource", "memory cannot be allocated for %s", InFile);
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
fread (PeFileBuffer, sizeof (UINT8), PeFileSize, InFileHandle);
|
||||
diff --git a/BaseTools/Source/C/GenSec/GenSec.c b/BaseTools/Source/C/GenSec/GenSec.c
|
||||
index d54a4f9e0a7d..b1d05367ec0b 100644
|
||||
--- a/BaseTools/Source/C/GenSec/GenSec.c
|
||||
+++ b/BaseTools/Source/C/GenSec/GenSec.c
|
||||
@@ -1062,7 +1062,7 @@ GetAlignmentFromFile(char *InFile, UINT32 *Alignment)
|
||||
PeFileBuffer = (UINT8 *) malloc (PeFileSize);
|
||||
if (PeFileBuffer == NULL) {
|
||||
fclose (InFileHandle);
|
||||
- Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle);
|
||||
+ Error(NULL, 0, 4001, "Resource", "memory cannot be allocated for %s", InFile);
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
fread (PeFileBuffer, sizeof (UINT8), PeFileSize, InFileHandle);
|
||||
--
|
||||
2.35.1
|
||||
|
52
0031-BaseTools-fix-gcc12-warning.patch
Normal file
52
0031-BaseTools-fix-gcc12-warning.patch
Normal file
@ -0,0 +1,52 @@
|
||||
From c537b93adc2dc2243c6e53dfbbe8cd10fb073b7a Mon Sep 17 00:00:00 2001
|
||||
From: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Date: Mon, 24 Jan 2022 11:04:55 +0100
|
||||
Subject: [PATCH 31/32] BaseTools: fix gcc12 warning
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Sdk/C/LzmaEnc.c: In function ‘LzmaEnc_CodeOneMemBlock’:
|
||||
Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ‘outStream’ in ‘*p.rc.outStream’ [-Werror=dangling-pointer=]
|
||||
2828 | p->rc.outStream = &outStream.vt;
|
||||
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
|
||||
Sdk/C/LzmaEnc.c:2811:28: note: ‘outStream’ declared here
|
||||
2811 | CLzmaEnc_SeqOutStreamBuf outStream;
|
||||
| ^~~~~~~~~
|
||||
Sdk/C/LzmaEnc.c:2811:28: note: ‘pp’ declared here
|
||||
Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ‘outStream’ in ‘*(CLzmaEnc *)pp.rc.outStream’ [-Werror=dangling-pointer=]
|
||||
2828 | p->rc.outStream = &outStream.vt;
|
||||
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
|
||||
Sdk/C/LzmaEnc.c:2811:28: note: ‘outStream’ declared here
|
||||
2811 | CLzmaEnc_SeqOutStreamBuf outStream;
|
||||
| ^~~~~~~~~
|
||||
Sdk/C/LzmaEnc.c:2811:28: note: ‘pp’ declared here
|
||||
cc1: all warnings being treated as errors
|
||||
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
---
|
||||
BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c
|
||||
index 4e9b499f8d80..4b9f5fa69248 100644
|
||||
--- a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c
|
||||
+++ b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c
|
||||
@@ -2825,12 +2825,13 @@ SRes LzmaEnc_CodeOneMemBlock(CLzmaEncHandle pp, BoolInt reInit,
|
||||
|
||||
nowPos64 = p->nowPos64;
|
||||
RangeEnc_Init(&p->rc);
|
||||
- p->rc.outStream = &outStream.vt;
|
||||
|
||||
if (desiredPackSize == 0)
|
||||
return SZ_ERROR_OUTPUT_EOF;
|
||||
|
||||
+ p->rc.outStream = &outStream.vt;
|
||||
res = LzmaEnc_CodeOneBlock(p, desiredPackSize, *unpackSize);
|
||||
+ p->rc.outStream = NULL;
|
||||
|
||||
*unpackSize = (UInt32)(p->nowPos64 - nowPos64);
|
||||
*destLen -= outStream.rem;
|
||||
--
|
||||
2.35.1
|
||||
|
42
0032-Basetools-turn-off-gcc12-warning.patch
Normal file
42
0032-Basetools-turn-off-gcc12-warning.patch
Normal file
@ -0,0 +1,42 @@
|
||||
From 15e8ff0438387a1737f136ab8f1ad513cfb52993 Mon Sep 17 00:00:00 2001
|
||||
From: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Date: Thu, 24 Mar 2022 10:28:45 +0100
|
||||
Subject: [PATCH 32/32] Basetools: turn off gcc12 warning
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
In function ‘SetDevicePathEndNode’,
|
||||
inlined from ‘FileDevicePath’ at DevicePathUtilities.c:857:5:
|
||||
DevicePathUtilities.c:321:3: error: writing 4 bytes into a region of size 1 [-Werror=stringop-overflow=]
|
||||
321 | memcpy (Node, &mUefiDevicePathLibEndDevicePath, sizeof (mUefiDevicePathLibEndDevicePath));
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
In file included from UefiDevicePathLib.h:22,
|
||||
from DevicePathUtilities.c:16:
|
||||
../Include/Protocol/DevicePath.h: In function ‘FileDevicePath’:
|
||||
../Include/Protocol/DevicePath.h:51:9: note: destination object ‘Type’ of size 1
|
||||
51 | UINT8 Type; ///< 0x01 Hardware Device Path.
|
||||
| ^~~~
|
||||
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
---
|
||||
BaseTools/Source/C/DevicePath/GNUmakefile | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/BaseTools/Source/C/DevicePath/GNUmakefile b/BaseTools/Source/C/DevicePath/GNUmakefile
|
||||
index 7ca08af9662d..b05d2bddfa68 100644
|
||||
--- a/BaseTools/Source/C/DevicePath/GNUmakefile
|
||||
+++ b/BaseTools/Source/C/DevicePath/GNUmakefile
|
||||
@@ -13,6 +13,9 @@ OBJECTS = DevicePath.o UefiDevicePathLib.o DevicePathFromText.o DevicePathUtili
|
||||
|
||||
include $(MAKEROOT)/Makefiles/app.makefile
|
||||
|
||||
+# gcc 12 trips over device path handling
|
||||
+BUILD_CFLAGS += -Wno-error=stringop-overflow
|
||||
+
|
||||
LIBS = -lCommon
|
||||
ifeq ($(CYGWIN), CYGWIN)
|
||||
LIBS += -L/lib/e2fsprogs -luuid
|
||||
--
|
||||
2.35.1
|
||||
|
@ -105,6 +105,10 @@ Patch0019: 0019-SecurityPkg-Tcg2Dxe-suppress-error-on-no-swtpm-in-si.patch
|
||||
Patch0020: 0020-OvmfPkg-Microvm-take-PcdResizeXterm-from-the-QEMU-co.patch
|
||||
Patch0021: 0021-Tweak-the-tools_def-to-support-cross-compiling.patch
|
||||
|
||||
Patch0030: 0030-BaseTools-fix-gcc12-warning.patch
|
||||
Patch0031: 0031-BaseTools-fix-gcc12-warning.patch
|
||||
Patch0032: 0032-Basetools-turn-off-gcc12-warning.patch
|
||||
|
||||
# python3-devel and libuuid-devel are required for building tools.
|
||||
# python3-devel is also needed for varstore template generation and
|
||||
# verification with "ovmf-vars-generator".
|
||||
|
Loading…
Reference in New Issue
Block a user