Build: -Werror support for Utilities (#75)

This commit is contained in:
PMheart 2020-06-19 19:36:47 +08:00 committed by GitHub
parent a3d346368f
commit 5d4567c714
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 37 additions and 17 deletions

View File

@ -4,6 +4,7 @@ env:
- FORCE_INSTALL=1
- HAS_OPENSSL_BUILD=1
- HAS_OPENSSL_W32BUILD=0
- WERROR=1
- secure: WPHaDUI0jTv7+l1R/5W3vzkP5+6/B7SM/VpF7PeVQAC5emWOC/BgNLurosjHUfYWE8Fs9sRYYsv6GXvU5n64gyMQhBQInmrEezfbc/LkP1cj+q5jUzFkJvlmFSIY+b570OPzXoIaR0ydmB80UgOezYvqjjDvI3TGXt+JY8Dp6oljqUuRy647UUkH52E7LKW/+Zh7Yq5sx3VJoBeSLrnl/CVUff4T6onITz2jHYNAf0kK/Yo5whcWpz0L+EGwhHUb8TJfQXMyL2PBQRZMbOBwfhFzFDC+j5uaJ4PYEqSRn+cemQhazDAUbNx7kVi1hMsLZZMRIG56zPJPV7DRM2ggCYaFSf0S/Ifm4e5Dj7TyM3uNqs55tGaJd/fHrNcr95bge/kn9yhqc0Lvm+oIiAKGhMnwwFymqLXxWRWYGCSp5zb8BAdUTrVZaLOA/siyNu6I+y0uPbdF8FFTgmJzKGEI09fRnn2o50Ott087E+hr7Xqr1g4OCmHdNX26uAS5gIwTfMVDLL86+gyY2gDBa9yN3HQrJKmppWjt02sR+1McvZY8Z6CjnlwiAUcMudJc9p2f5W3Mnxxv9Snz+fMGSmgCtc3uSWCrHegHHSm70+0/BDN88WLBY5X35cs821GXuFxvOndisZebjiunCtlRu0W0xQISCQ+Dw20xFhgN7aZiN34=
matrix:

View File

@ -1288,11 +1288,9 @@ OcBootPolicyGetApfsRecoveryFilePath (
Result = EFI_NOT_FOUND;
for (Index = 0; Index < NoHandles; ++Index) {
DEBUG_CODE_BEGIN ();
ZeroMem (&ContainerGuid2, sizeof (ContainerGuid2));
ZeroMem (&VolumeGuid2, sizeof (VolumeGuid2));
VolumeRole2 = 0;
DEBUG_CODE_END ();
Status = InternalGetApfsVolumeInfo (
HandleBuffer[Index],
@ -1301,7 +1299,6 @@ OcBootPolicyGetApfsRecoveryFilePath (
&VolumeRole2
);
DEBUG_CODE_BEGIN ();
DEBUG ((
DEBUG_BULK_INFO,
"OCBP: APFS recovery info %u/%u due to %g/%g/%X - %r\n",
@ -1312,7 +1309,6 @@ OcBootPolicyGetApfsRecoveryFilePath (
(UINT32) VolumeRole2,
Status
));
DEBUG_CODE_END ();
if (EFI_ERROR (Status)
|| VolumeRole2 != APPLE_APFS_VOLUME_ROLE_RECOVERY

View File

@ -15,7 +15,8 @@ uint8_t *readFile(const char *str, uint32_t *size) {
fseek(f, 0, SEEK_SET);
uint8_t *string = malloc(fsize + 1);
fread(string, fsize, 1, f);
if (fread(string, fsize, 1, f) != 1)
abort();
fclose(f);
string[fsize] = 0;

View File

@ -5,8 +5,8 @@
.DEFAULT_GOAL := all
CC ?= gcc
MKDIR := mkdir -p
CC ?= gcc
MKDIR := mkdir -p
ifeq ($(UDK_PATH),)
ifneq ($(PACKAGES_PATH),)
@ -30,7 +30,27 @@ UDK_ARCH ?= X64
#
# Primary CFLAGS.
#
CFLAGS := -c -fshort-wchar -Wall -Wextra -Wno-implicit-fallthrough -Wno-unused-parameter -D EFIUSER
CFLAGS := -c -fshort-wchar -Wall -Wextra -D EFIUSER
ifeq ($(WERROR),1)
CFLAGS += -Werror
endif
ifeq ($(shell echo 'int a;' | "${CC}" -Wno-unused-parameter -x c -c - -o /dev/null 2>&1),)
CFLAGS += -Wno-unused-parameter
endif
ifeq ($(shell echo 'int a;' | "${CC}" -Wno-implicit-fallthrough -x c -c - -o /dev/null 2>&1),)
CFLAGS += -Wno-implicit-fallthrough
endif
ifeq ($(shell echo 'int a;' | "${CC}" -Wno-strict-aliasing -x c -c - -o /dev/null 2>&1),)
CFLAGS += -Wno-strict-aliasing
endif
ifeq ($(shell echo 'int a;' | "${CC}" -Wno-address -x c -c - -o /dev/null 2>&1),)
CFLAGS += -Wno-address
endif
ifeq ($(DIST),Darwin)
CFLAGS += -mmacosx-version-min=10.6
@ -38,8 +58,8 @@ ifeq ($(DIST),Darwin)
endif
ifeq ($(DIST),Windows)
SUFFIX := .exe
CFLAGS += -D_ISOC99_SOURCE=1
SUFFIX := .exe
CFLAGS += -D_ISOC99_SOURCE=1
endif
ifeq ($(SANITIZE),1)
@ -66,8 +86,8 @@ endif
#
# Search Paths.
#
CFLAGS += -I../../User/Include
CFLAGS += -I../../Include/Acidanthera -I../../Include/Apple -I../../Include/Apple/$(UDK_ARCH) -I../../Include/Generic -I../../Include/Intel -I../../Include/Microsoft
CFLAGS += -I../../User/Include
CFLAGS += -I../../Include/Acidanthera -I../../Include/Apple -I../../Include/Apple/$(UDK_ARCH) -I../../Include/Generic -I../../Include/Intel -I../../Include/Microsoft
#
# Skip including UDK when suggesting STANDALONE mode.

View File

@ -56,7 +56,8 @@ OpenFile (
ImageSize = (uint32_t) ftell (ImageFp);
rewind (ImageFp);
Image = malloc (ImageSize + 1);
fread (Image, ImageSize, 1, ImageFp);
if (fread (Image, ImageSize, 1, ImageFp) != 1)
abort();
fclose (ImageFp);
}

View File

@ -43,7 +43,7 @@ int main(int argc, const char* argv[]) {
#include <fcntl.h> // open, close
#include <stdio.h> // fprintf
#include <string.h> // strerror, strdup, strchr
#include <stdlib.h> // free, EXIT_*
#include <stdlib.h> // abort, free, EXIT_*
#include <sys/mman.h> // mmap, munmap
#include <sys/stat.h> // fstat
#include <errno.h> // errno
@ -382,7 +382,8 @@ int pack_efires(const char* fname, const char* fromdir, const char* filelist[])
{
// write space for header
efires_hdr_t tmp;
write(outfd, &tmp, sizeof(tmp));
if (write(outfd, &tmp, sizeof(tmp)) == -1)
abort();
}
// header and one reserved zeroed entry

View File

@ -270,7 +270,7 @@ static int FeedMacho(void *file, uint32_t size) {
}
}
for (size_t i = 0x1000000; i < 0x100000000; i+= 0x1000000) {
for (size_t i = 0x1000000; i < MAX_UINTN; i+= 0x1000000) {
if (MachoGetSymbolByRelocationOffset64 (&Context, i, &Symbol)) {
if (!AsciiStrCmp (MachoGetSymbolName64 (&Context, Symbol), "__hack")) {
code++;

View File

@ -113,7 +113,7 @@ int main(int argc, char** argv) {
(void)remove("out.bin");
FILE *fh = fopen("out.bin", "wb");
if (fh != NULL) {
fwrite((const void *)patchedTablePtr->TableAddress, patchedTablePtr->TableMaximumSize, 1, fh);
fwrite((const void *) (uintptr_t) (patchedTablePtr->TableAddress), (size_t) (patchedTablePtr->TableMaximumSize), 1, fh);
fclose(fh);
} else {
DEBUG ((DEBUG_ERROR, "Failed to produce out.bin - %r", Status));