summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2026-04-23 20:29:38 +0100
committerLeah Rowe <leah@libreboot.org>2026-04-23 21:55:11 +0100
commit2ecfe63b5f96331d4d7b8afbee07ba9dbd69ef5d (patch)
tree24e4451764e1ad60b7f776476230646c4f4d73f8 /config
parentfedeb6ecd8b5f3ed79dad754e452aecf88cbdde2 (diff)
coreboot: never, ever use Werror
not even once Signed-off-by: Leah Rowe <leah@libreboot.org>
Diffstat (limited to 'config')
-rw-r--r--config/coreboot/default/patches/0052-disable-Werror-in-the-coreboot-build-system.patch411
-rw-r--r--config/coreboot/fam15h/patches/0019-never-use-Werror.patch564
-rw-r--r--config/submodule/coreboot/default/arm-trusted-firmware/patches/0001-disable-werror.patch110
-rw-r--r--config/submodule/coreboot/default/cmocka/patches/0001-disable-werror.patch80
-rw-r--r--config/submodule/coreboot/default/libhwbase/patches/0001-disable-werror.patch26
-rw-r--r--config/submodule/coreboot/default/vboot/patches/0002-disable-werror.patch48
-rw-r--r--config/submodule/coreboot/fam15h/vboot/patches/0001-disable-werror.patch26
7 files changed, 1265 insertions, 0 deletions
diff --git a/config/coreboot/default/patches/0052-disable-Werror-in-the-coreboot-build-system.patch b/config/coreboot/default/patches/0052-disable-Werror-in-the-coreboot-build-system.patch
new file mode 100644
index 00000000..84f2a6fa
--- /dev/null
+++ b/config/coreboot/default/patches/0052-disable-Werror-in-the-coreboot-build-system.patch
@@ -0,0 +1,411 @@
+From 841b591f7294c95de5de4cb97e15398c8c5020a0 Mon Sep 17 00:00:00 2001
+From: Leah Rowe <leah@libreboot.org>
+Date: Thu, 23 Apr 2026 20:27:35 +0100
+Subject: [PATCH 1/1] disable -Werror in the coreboot build system
+
+we don't want it in libreboot, a coreboot distro.
+
+you have NO IDEA how many times users have complained
+in the past that libreboot doesn't build, and it was
+code that was actually fine in practice, but the compiler
+was just being overly pedantic. i often sit there and
+fix each one. no more.
+
+just remove Werror. this shall be libreboot policy from now
+on. it makes sense for coreboot to enable this, because that
+is for developers. coreboot-distro is for coreboot users.
+
+Signed-off-by: Leah Rowe <leah@libreboot.org>
+---
+ Makefile.mk | 2 --
+ payloads/libpayload/Makefile.mk | 2 +-
+ payloads/libpayload/Makefile.payload | 2 +-
+ payloads/libpayload/sample/Makefile | 2 +-
+ payloads/libpayload/sample/arch_mock/Makefile | 2 +-
+ payloads/libpayload/tests/Makefile.mk | 2 +-
+ payloads/linuxcheck/Makefile | 2 +-
+ src/lib/gnat/Makefile.mk | 1 -
+ tests/Makefile.common | 2 +-
+ util/amdfwtool/Makefile.mk | 3 ++-
+ util/archive/Makefile | 3 ++-
+ util/bincfg/Makefile | 3 ++-
+ util/bucts/Makefile | 3 ++-
+ util/cbfstool/Makefile.mk | 2 +-
+ util/cbfstool/lz4/Makefile | 8 ++++----
+ util/cbmem/Makefile | 3 ++-
+ util/ectool/Makefile | 2 +-
+ util/futility/Makefile.mk | 2 +-
+ util/ifdtool/Makefile.mk | 2 +-
+ util/intelvbttool/Makefile | 2 +-
+ util/msrtool/configure | 2 +-
+ util/pmh7tool/Makefile | 2 +-
+ util/superiotool/Makefile | 6 +++---
+ util/uio_usbdebug/Makefile | 2 +-
+ util/xcompile/xcompile | 2 +-
+ 25 files changed, 33 insertions(+), 31 deletions(-)
+
+diff --git a/Makefile.mk b/Makefile.mk
+index 8f541ad187..ff9ed89e00 100644
+--- a/Makefile.mk
++++ b/Makefile.mk
+@@ -555,7 +555,6 @@ CFLAGS_common += -ffunction-sections
+ CFLAGS_common += -fdata-sections
+ CFLAGS_common += -fno-pie
+ CFLAGS_common += -Wstring-compare
+-CFLAGS_common += -Werror
+ ifeq ($(CONFIG_COMPILER_GCC),y)
+ CFLAGS_common += -Wold-style-declaration
+ CFLAGS_common += -Wcast-function-type
+@@ -581,7 +580,6 @@ endif
+ ADAFLAGS_common += -gnatp
+ ADAFLAGS_common += -Wuninitialized
+ ADAFLAGS_common += -Wall
+-ADAFLAGS_common += -Werror
+ ADAFLAGS_common += -pipe
+ ADAFLAGS_common += -g
+ ADAFLAGS_common += -nostdinc
+diff --git a/payloads/libpayload/Makefile.mk b/payloads/libpayload/Makefile.mk
+index 0f5d1a0e11..45c2c5ad74 100644
+--- a/payloads/libpayload/Makefile.mk
++++ b/payloads/libpayload/Makefile.mk
+@@ -80,7 +80,7 @@ CFLAGS += -nostdlib -fno-builtin -ffreestanding -fomit-frame-pointer
+ CFLAGS += -ffunction-sections -fdata-sections
+ CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wmissing-prototypes -Wvla
+ CFLAGS += -Wwrite-strings -Wredundant-decls -Wimplicit-fallthrough
+-CFLAGS += -Wstrict-aliasing -Wshadow -Wno-address-of-packed-member -Werror
++CFLAGS += -Wstrict-aliasing -Wshadow -Wno-address-of-packed-member
+
+ ifeq ($(CONFIG_LP_LTO),y)
+ CFLAGS += -flto
+diff --git a/payloads/libpayload/Makefile.payload b/payloads/libpayload/Makefile.payload
+index 2eafd4bec3..c74704c58d 100644
+--- a/payloads/libpayload/Makefile.payload
++++ b/payloads/libpayload/Makefile.payload
+@@ -84,7 +84,7 @@ endif
+
+ CFLAGS = $(CFLAGS_$(ARCH))
+ CFLAGS += -Os -ffreestanding
+-CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wvla -Werror
++CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wvla
+ ifeq ($(CONFIG_LP_LTO),y)
+ CFLAGS += -flto
+ endif
+diff --git a/payloads/libpayload/sample/Makefile b/payloads/libpayload/sample/Makefile
+index 1249e9a017..269511d7df 100644
+--- a/payloads/libpayload/sample/Makefile
++++ b/payloads/libpayload/sample/Makefile
+@@ -44,7 +44,7 @@ AS := $(AS_$(ARCH-y))
+ LIBPAYLOAD_DIR := ../install/libpayload
+ XCC := CC="$(CC)" $(LIBPAYLOAD_DIR)/bin/lpgcc
+ XAS := AS="$(AS)" $(LIBPAYLOAD_DIR)/bin/lpas
+-CFLAGS := -fno-builtin -Wall -Werror -Os
++CFLAGS := -fno-builtin -Wall -Os
+ TARGET := hello
+ OBJS := $(TARGET).o
+
+diff --git a/payloads/libpayload/sample/arch_mock/Makefile b/payloads/libpayload/sample/arch_mock/Makefile
+index a1e748111e..a146c2b3be 100644
+--- a/payloads/libpayload/sample/arch_mock/Makefile
++++ b/payloads/libpayload/sample/arch_mock/Makefile
+@@ -12,7 +12,7 @@ CC := gcc
+ AS := as
+ OBJCOPY := objcopy
+ LIBPAYLOAD_DIR := ../../install/libpayload
+-CFLAGS := -fno-builtin -Wall -Werror -Os \
++CFLAGS := -fno-builtin -Wall -Os \
+ -include $(LIBPAYLOAD_DIR)/include/kconfig.h \
+ -include $(LIBPAYLOAD_DIR)/include/compiler.h \
+ -I $(LIBPAYLOAD_DIR)/include \
+diff --git a/payloads/libpayload/tests/Makefile.mk b/payloads/libpayload/tests/Makefile.mk
+index 6b6c78d835..b2e7433b65 100644
+--- a/payloads/libpayload/tests/Makefile.mk
++++ b/payloads/libpayload/tests/Makefile.mk
+@@ -45,7 +45,7 @@ TEST_CFLAGS += -I$(cmockasrc)/include
+ # Minimal subset of warnings and errors. Tests can be less strict than actual build.
+ TEST_CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wvla
+ TEST_CFLAGS += -Wwrite-strings -Wno-address-of-packed-member -Wimplicit-fallthrough
+-TEST_CFLAGS += -Wstrict-aliasing -Wshadow -Werror
++TEST_CFLAGS += -Wstrict-aliasing -Wshadow
+ TEST_CFLAGS += -Wno-unknown-warning-option -Wno-source-mgr -Wno-main-return-type
+
+ TEST_CFLAGS += -std=gnu11 -ffunction-sections -fdata-sections -fno-builtin
+diff --git a/payloads/linuxcheck/Makefile b/payloads/linuxcheck/Makefile
+index 838c90df0c..a9d016db36 100644
+--- a/payloads/linuxcheck/Makefile
++++ b/payloads/linuxcheck/Makefile
+@@ -3,7 +3,7 @@ XCOMPILE=$(LIBPAYLOAD_DIR)/libpayload.xcompile
+ # build libpayload and put .config file in $(CURDIR) instead of ../libpayload
+ # to avoid pollute the libpayload source directory and possible conflicts
+ LPOPTS=obj="$(CURDIR)/build" DESTDIR="$(CURDIR)" DOTCONFIG="$(CURDIR)/.config"
+-CFLAGS += -Wall -Wvla -Werror -Os -ffreestanding -nostdinc -nostdlib
++CFLAGS += -Wall -Wvla -Os -ffreestanding -nostdinc -nostdlib
+ ifeq ($(CONFIG_ARCH_X86),y)
+ TARGETARCH = i386
+ endif
+diff --git a/src/lib/gnat/Makefile.mk b/src/lib/gnat/Makefile.mk
+index 150a715067..9d9591bc00 100644
+--- a/src/lib/gnat/Makefile.mk
++++ b/src/lib/gnat/Makefile.mk
+@@ -12,7 +12,6 @@ ADAFLAGS_libgnat-$(1) := \
+ -gnatpg \
+ -I$$(src)/lib/gnat/ \
+ $$(GCC_ADAFLAGS_$(1)) \
+- -Werror \
+ -fno-pie \
+
+ libgnat-$(1)-y += a-unccon.ads
+diff --git a/tests/Makefile.common b/tests/Makefile.common
+index 085e4cffc4..831867cf5c 100644
+--- a/tests/Makefile.common
++++ b/tests/Makefile.common
+@@ -46,7 +46,7 @@ TEST_INCLUDES += -I$(dir $(TEST_KCONFIG_AUTOHEADER))
+ # -Wmissing-prototypes just make working with the test framework cumbersome.
+ # Only put conservative warnings here that really detect code that's obviously
+ # unintentional.
+-TEST_CFLAGS += -Wall -Werror -Wundef -Wstrict-prototypes -Wno-inline-asm
++TEST_CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wno-inline-asm
+ TEST_CFLAGS += -Wno-unknown-warning-option -Wno-source-mgr -Wno-main-return-type
+ TEST_CFLAGS += -Wno-array-compare -Wno-trigraphs
+ TEST_CFLAGS += -Wno-unused-but-set-variables
+diff --git a/util/amdfwtool/Makefile.mk b/util/amdfwtool/Makefile.mk
+index 0b9cc1b644..271afce4a7 100644
+--- a/util/amdfwtool/Makefile.mk
++++ b/util/amdfwtool/Makefile.mk
+@@ -6,7 +6,8 @@ amdfwtoolobj = amdfwtool.o data_parse.o signed_psp.o handle_file.o opts.o
+ amdfwreadobj = amdfwread.o
+ amdfwheader = amdfwtool.h
+
+-WERROR ?= -Werror
++# no werror for you
++WERROR ?=
+ AMDFWTOOLCFLAGS :=-O2 -Wall -Wextra -Wshadow $(WERROR)
+ AMDFWTOOLCFLAGS += -I $(top)/src/commonlib/bsd/include
+ AMDFWTOOLCFLAGS += -D_GNU_SOURCE # memmem() from string.h
+diff --git a/util/archive/Makefile b/util/archive/Makefile
+index 2de6a6294a..70820aeba2 100644
+--- a/util/archive/Makefile
++++ b/util/archive/Makefile
+@@ -1,7 +1,8 @@
+ ## SPDX-License-Identifier: GPL-2.0-only
+ PROGRAM = archive
+ HOSTCC ?= gcc
+-WERROR=-Werror
++# no werror for u
++WERROR=
+ CFLAGS=-O2 -Wall -Wextra -Wshadow ${WERROR}
+
+ SRCS = $(PROGRAM).c
+diff --git a/util/bincfg/Makefile b/util/bincfg/Makefile
+index dbcbc7711c..debef6c597 100644
+--- a/util/bincfg/Makefile
++++ b/util/bincfg/Makefile
+@@ -3,7 +3,8 @@ CC = gcc
+ YACC = bison
+ LEX = flex
+ TARGET=bincfg
+-WERROR=-Werror
++# no werror for u
++WERROR=
+ CFLAGS=-O2 -Wall -Wextra -Wshadow ${WERROR}
+ CFLAGS+=-Wno-unused-function
+ LDFLAGS= -lfl
+diff --git a/util/bucts/Makefile b/util/bucts/Makefile
+index d32258d1ec..a81aa5e1ae 100644
+--- a/util/bucts/Makefile
++++ b/util/bucts/Makefile
+@@ -3,7 +3,8 @@ CC:=gcc
+ OBJ:=bucts.o
+ TARGET=bucts
+ VERSION:=$(shell git describe)
+-WERROR=-Werror
++# no werror for u
++WERROR=
+ CFLAGS=-O2 -Wall -Wextra -Wshadow ${WERROR}
+
+ ifeq ($(shell uname), FreeBSD)
+diff --git a/util/cbfstool/Makefile.mk b/util/cbfstool/Makefile.mk
+index d3f07f9777..e34f69c1f1 100644
+--- a/util/cbfstool/Makefile.mk
++++ b/util/cbfstool/Makefile.mk
+@@ -140,7 +140,7 @@ cse_serger_obj += common.o
+ cse_serger_obj += cse_helpers.o
+ cse_serger_obj += $(foreach var, $(bpdt_formats_obj), $(var))
+
+-TOOLCFLAGS ?= -Werror -Wall -Wextra -Wshadow
++TOOLCFLAGS ?= -Wall -Wextra -Wshadow
+ TOOLCFLAGS += -Wcast-qual -Wmissing-prototypes -Wredundant-decls -Wshadow
+ TOOLCFLAGS += -Wstrict-prototypes -Wwrite-strings
+ TOOLCFLAGS += -O2
+diff --git a/util/cbfstool/lz4/Makefile b/util/cbfstool/lz4/Makefile
+index d624e84703..be484c805f 100644
+--- a/util/cbfstool/lz4/Makefile
++++ b/util/cbfstool/lz4/Makefile
+@@ -72,10 +72,10 @@ cmake:
+ @cd cmake_unofficial; cmake CMakeLists.txt; $(MAKE)
+
+ gpptest: clean
+- $(MAKE) all CC=g++ CFLAGS="-O3 -I../lib -Wall -Wextra -Wundef -Wshadow -Wcast-align -Werror"
++ $(MAKE) all CC=g++ CFLAGS="-O3 -I../lib -Wall -Wextra -Wundef -Wshadow -Wcast-align"
+
+ clangtest: clean
+- CFLAGS="-O3 -Werror -Wconversion -Wno-sign-conversion" $(MAKE) all CC=clang
++ CFLAGS="-O3 -Wconversion -Wno-sign-conversion" $(MAKE) all CC=clang
+
+ sanitize: clean
+ CFLAGS="-O3 -g -fsanitize=undefined" $(MAKE) test CC=clang FUZZER_TIME="-T1mn" NB_LOOPS=-i1
+@@ -84,8 +84,8 @@ staticAnalyze: clean
+ CFLAGS=-g clang-tidy $(CLANG_TIDY_CHECKS) $(CLANG_TIDY_ARGS) $(SRCS)
+
+ armtest: clean
+- CFLAGS="-O3 -Werror" $(MAKE) -C $(LZ4DIR) all CC=arm-linux-gnueabi-gcc
+- CFLAGS="-O3 -Werror" $(MAKE) -C $(PRGDIR) bins CC=arm-linux-gnueabi-gcc
++ CFLAGS="-O3" $(MAKE) -C $(LZ4DIR) all CC=arm-linux-gnueabi-gcc
++ CFLAGS="-O3" $(MAKE) -C $(PRGDIR) bins CC=arm-linux-gnueabi-gcc
+
+ versionsTest: clean
+ $(MAKE) -C versionsTest
+diff --git a/util/cbmem/Makefile b/util/cbmem/Makefile
+index e265ea6693..3aaaeac794 100644
+--- a/util/cbmem/Makefile
++++ b/util/cbmem/Makefile
+@@ -9,7 +9,8 @@ CC ?= $(CROSS_COMPILE)gcc
+ INSTALL ?= /usr/bin/env install
+ PREFIX ?= /usr/local
+ CFLAGS ?= -O2
+-WERROR=-Werror
++# no werror for you!
++WERROR=
+ CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wshadow $(WERROR)
+ CPPFLAGS += -I . -I $(ROOT)/commonlib/include -I $(ROOT)/commonlib/bsd/include
+ CPPFLAGS += -include $(ROOT)/commonlib/bsd/include/commonlib/bsd/compiler.h
+diff --git a/util/ectool/Makefile b/util/ectool/Makefile
+index a90773e5c6..5724ac6009 100644
+--- a/util/ectool/Makefile
++++ b/util/ectool/Makefile
+@@ -1,7 +1,7 @@
+ ## SPDX-License-Identifier: GPL-2.0-only
+
+ CC ?= gcc
+-WERROR=-Werror
++WERROR=
+ CFLAGS = -O2 -Wall -Wextra -Wshadow $(WERROR)
+ PROGRAM = ectool
+ INSTALL ?= /usr/bin/env install
+diff --git a/util/futility/Makefile.mk b/util/futility/Makefile.mk
+index a7bcee50d3..cb5363b93e 100644
+--- a/util/futility/Makefile.mk
++++ b/util/futility/Makefile.mk
+@@ -10,7 +10,7 @@ $(VBOOT_FUTILITY): | check-openssl-presence
+ unset CFLAGS LDFLAGS; $(MAKE) -C $(VBOOT_SOURCE) \
+ BUILD=$(VBOOT_HOST_BUILD) \
+ CC="$(HOSTCC)" \
+- WERROR="-Werror -Wno-deprecated-declarations" \
++ WERROR="-Wno-deprecated-declarations" \
+ PKG_CONFIG="$(HOSTPKGCONFIG)" \
+ V=$(V) \
+ USE_FLASHROM=0 \
+diff --git a/util/ifdtool/Makefile.mk b/util/ifdtool/Makefile.mk
+index 2b97bf51c8..47953aedb1 100644
+--- a/util/ifdtool/Makefile.mk
++++ b/util/ifdtool/Makefile.mk
+@@ -2,7 +2,7 @@
+
+ ifdtoolobj = ifdtool.o fmap.o kv_pair.o valstr.o
+
+-IFDTOOLCFLAGS = -O2 -g -Wall -Wextra -Wmissing-prototypes -Werror
++IFDTOOLCFLAGS = -O2 -g -Wall -Wextra -Wmissing-prototypes
+ IFDTOOLCFLAGS += -I$(top)/src/commonlib/include -I$(top)/src/commonlib/bsd/include
+ IFDTOOLCFLAGS += -I$(top)/util/cbfstool/flashmap
+ IFDTOOLCFLAGS += -include $(top)/src/commonlib/bsd/include/commonlib/bsd/compiler.h
+diff --git a/util/intelvbttool/Makefile b/util/intelvbttool/Makefile
+index 5c770dec9e..8963263354 100644
+--- a/util/intelvbttool/Makefile
++++ b/util/intelvbttool/Makefile
+@@ -6,7 +6,7 @@ CC ?= gcc
+ INSTALL ?= /usr/bin/env install
+ PREFIX ?= /usr/local
+ CFLAGS ?= -O2 -g
+-CFLAGS += -Wall -Werror
++CFLAGS += -Wall
+ CFLAGS += -I../../src/commonlib/include -I ../../src/commonlib/bsd/include
+
+ all: $(PROGRAM)
+diff --git a/util/msrtool/configure b/util/msrtool/configure
+index 659cbcd66b..731e24f550 100755
+--- a/util/msrtool/configure
++++ b/util/msrtool/configure
+@@ -133,7 +133,7 @@ CC=`findprog "compiler" "${CC}" clang gcc cc icc` || exit
+ INSTALL=`findprog "install" "${INSTALL}" install ginstall` || exit
+
+ test -n "$DEBUG" && myCFLAGS="-O2 -g" || myCFLAGS="-Os"
+-CFLAGS="${CFLAGS} ${myCFLAGS} -Wall -Werror"
++CFLAGS="${CFLAGS} ${myCFLAGS} -Wall"
+
+ cat > .config.c << EOF
+ #include <pci/pci.h>
+diff --git a/util/pmh7tool/Makefile b/util/pmh7tool/Makefile
+index 0a2ebbe147..c04d7e9bf9 100644
+--- a/util/pmh7tool/Makefile
++++ b/util/pmh7tool/Makefile
+@@ -1,7 +1,7 @@
+ ## SPDX-License-Identifier: GPL-2.0-only
+
+ CC = gcc
+-CFLAGS = -O2 -Wall -Wextra -Werror
++CFLAGS = -O2 -Wall -Wextra
+ PROGRAM = pmh7tool
+ INSTALL = /usr/bin/env install
+ PREFIX = /usr/local
+diff --git a/util/superiotool/Makefile b/util/superiotool/Makefile
+index 39839d9aa6..06aa7b6571 100644
+--- a/util/superiotool/Makefile
++++ b/util/superiotool/Makefile
+@@ -12,7 +12,7 @@ PREFIX ?= /usr/local
+ VERSION := -D'SUPERIOTOOL_VERSION="$(shell git describe 2>/dev/null)"'
+
+ CFLAGS += -O2 -Wall -Wstrict-prototypes -Wundef -Wstrict-aliasing \
+- -Werror-implicit-function-declaration -std=c11 -pedantic $(VERSION) \
++ -std=c11 -pedantic $(VERSION) \
+ -Wno-variadic-macros -I $(TOP)/src/commonlib/bsd/include
+ LDFLAGS += -lz
+
+@@ -24,8 +24,8 @@ ifeq ($(OS_ARCH), Darwin)
+ LIBS = -framework IOKit -framework DirectHW -lpci -lz
+ endif
+ ifeq ($(OS_ARCH), FreeBSD)
+-CFLAGS = -O2 -Wall -Werror -Wstrict-prototypes -Wundef -Wstrict-aliasing \
+- -Werror-implicit-function-declaration -std=c11 $(VERSION) \
++CFLAGS = -O2 -Wall -Wstrict-prototypes -Wundef -Wstrict-aliasing \
++ -std=c11 $(VERSION) \
+ -I/usr/local/include
+ LDFLAGS += -L/usr/local/lib
+ LIBS = -lz
+diff --git a/util/uio_usbdebug/Makefile b/util/uio_usbdebug/Makefile
+index af1cc8e1ec..2ceb28cd53 100644
+--- a/util/uio_usbdebug/Makefile
++++ b/util/uio_usbdebug/Makefile
+@@ -30,7 +30,7 @@ KCONFIG_H := ../../src/include/kconfig.h
+
+ CFLAGS += \
+ -m32 -g \
+- -Wall -Wextra -Werror \
++ -Wall -Wextra \
+ -Wno-unused-parameter -Wno-error=sign-compare
+ CPPFLAGS += \
+ -Iinclude/ \
+diff --git a/util/xcompile/xcompile b/util/xcompile/xcompile
+index f88da69306..ef43e28683 100755
+--- a/util/xcompile/xcompile
++++ b/util/xcompile/xcompile
+@@ -124,7 +124,7 @@ testcc() {
+ local tmp_o="$TMPFILE.o"
+ rm -f "$tmp_c" "$tmp_o"
+ echo "void _start(void) {}" >"$tmp_c"
+- "$cc" -nostdlib -Werror $cflags -c "$tmp_c" -o "$tmp_o" >/dev/null 2>&1
++ "$cc" -nostdlib $cflags -c "$tmp_c" -o "$tmp_o" >/dev/null 2>&1
+ }
+
+ testld() {
+--
+2.47.3
+
diff --git a/config/coreboot/fam15h/patches/0019-never-use-Werror.patch b/config/coreboot/fam15h/patches/0019-never-use-Werror.patch
new file mode 100644
index 00000000..e1293d92
--- /dev/null
+++ b/config/coreboot/fam15h/patches/0019-never-use-Werror.patch
@@ -0,0 +1,564 @@
+From 16e721d8f1edf098c88bd7693f30f52f0b36153e Mon Sep 17 00:00:00 2001
+From: Leah Rowe <leah@libreboot.org>
+Date: Thu, 23 Apr 2026 20:33:55 +0100
+Subject: [PATCH 1/1] never use -Werror
+
+Signed-off-by: Leah Rowe <leah@libreboot.org>
+---
+ Makefile.inc | 5 +-
+ payloads/bayou/Makefile | 2 +-
+ payloads/coreinfo/Makefile | 2 +-
+ payloads/external/tint/libpayload_tint.patch | 52 ++++++++++----------
+ payloads/libpayload/Makefile.inc | 2 +-
+ payloads/libpayload/sample/Makefile | 2 +-
+ payloads/linuxcheck/Makefile | 2 +-
+ payloads/nvramcui/Makefile | 2 +-
+ src/lib/gnat/Makefile.inc | 1 -
+ util/bimgtool/Makefile | 2 +-
+ util/cbfstool/Makefile.inc | 2 +-
+ util/cbfstool/lz4/Makefile | 8 +--
+ util/cbmem/Makefile | 2 +-
+ util/ifdtool/Makefile | 2 +-
+ util/intelvbttool/Makefile | 2 +-
+ util/k8resdump/Makefile | 2 +-
+ util/msrtool/configure | 2 +-
+ util/pmh7tool/Makefile | 2 +-
+ util/romcc/Makefile | 2 +-
+ util/superiotool/Makefile | 6 +--
+ util/uio_usbdebug/Makefile | 2 +-
+ util/xcompile/xcompile | 2 +-
+ 22 files changed, 51 insertions(+), 55 deletions(-)
+
+diff --git a/Makefile.inc b/Makefile.inc
+index be198d6580..54f8d7aa14 100644
+--- a/Makefile.inc
++++ b/Makefile.inc
+@@ -435,7 +435,7 @@ endif
+ endif
+
+ ADAFLAGS_common += -gnatp
+-ADAFLAGS_common += -Wuninitialized -Wall -Werror
++ADAFLAGS_common += -Wuninitialized -Wall
+ ADAFLAGS_common += -pipe -g -nostdinc
+ ADAFLAGS_common += -Wstrict-aliasing -Wshadow
+ ADAFLAGS_common += -fno-common -fomit-frame-pointer
+@@ -480,9 +480,6 @@ ADAFLAGS_common += -gnatyN
+
+ LDFLAGS_common := --gc-sections -nostdlib --nmagic -static --emit-relocs
+
+-ifeq ($(CONFIG_WARNINGS_ARE_ERRORS),y)
+-CFLAGS_common += -Werror
+-endif
+ ifneq ($(GDB_DEBUG),)
+ CFLAGS_common += -Og
+ ADAFLAGS_common += -Og
+diff --git a/payloads/bayou/Makefile b/payloads/bayou/Makefile
+index 7a4b08b484..0412704ff5 100644
+--- a/payloads/bayou/Makefile
++++ b/payloads/bayou/Makefile
+@@ -39,7 +39,7 @@ OBJECTS-$(CONFIG_LZMA) += lzma.o
+ OBJECTS-$(CONFIG_NRV2B) += nrv2b.o
+ OBJECTS-$(CONFIG_BUILTIN_LAR) += builtin-lar.o
+
+-CFLAGS= -Wall -Werror -Os $(FFLAGS-y)
++CFLAGS= -Wall -Os $(FFLAGS-y)
+ LDFLAGS=-Wl,-T,bayou.ldscript -static
+ LIBGCC=$(shell $(CC) -m32 -print-libgcc-file-name)
+
+diff --git a/payloads/coreinfo/Makefile b/payloads/coreinfo/Makefile
+index 34c45d9855..a1c058e794 100644
+--- a/payloads/coreinfo/Makefile
++++ b/payloads/coreinfo/Makefile
+@@ -83,7 +83,7 @@ OBJCOPY := $(OBJCOPY_$(ARCH-y))
+ LPCC := CC="$(CC)" $(LIBPAYLOAD_OBJ)/bin/lpgcc
+ LPAS := AS="$(AS)" $(LIBPAYLOAD_OBJ)/bin/lpas
+
+-CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wvla -Werror
++CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wvla
+ CFLAGS += -Os -fno-builtin $(CFLAGS_$(ARCH-y)) $(INCLUDES)
+
+ ifneq ($(strip $(HAVE_DOTCONFIG)),)
+diff --git a/payloads/external/tint/libpayload_tint.patch b/payloads/external/tint/libpayload_tint.patch
+index 34246a6561..91196d2fe4 100644
+--- a/payloads/external/tint/libpayload_tint.patch
++++ b/payloads/external/tint/libpayload_tint.patch
+@@ -4,7 +4,7 @@ diff -rupN tint-0.04+nmu1/config.h tint/config.h
+ @@ -29,7 +29,15 @@
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+-
++
+ +#include <libpayload.h>
+ +#include <curses.h>
+ +
+@@ -15,7 +15,7 @@ diff -rupN tint-0.04+nmu1/config.h tint/config.h
+ +#if 0
+ const char scorefile[] = SCOREFILE;
+ +#endif
+-
++
+ #endif /* #ifndef CONFIG_H */
+ diff -rupN tint-0.04+nmu1/engine.c tint/engine.c
+ --- tint-0.04+nmu1/engine.c 2005-07-17 13:26:22.000000000 +0200
+@@ -23,14 +23,14 @@ diff -rupN tint-0.04+nmu1/engine.c tint/engine.c
+ @@ -27,10 +27,13 @@
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+-
++
+ +#include "config.h"
+ +
+ +#if 0
+ #include <stdlib.h>
+ #include <string.h>
+ +#endif
+-
++
+ -#include "typedefs.h"
+ #include "utils.h"
+ #include "io.h"
+@@ -53,7 +53,7 @@ diff -rupN tint-0.04+nmu1/io.c tint/io.c
+ @@ -27,9 +27,13 @@
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+-
++
+ +#include "config.h"
+ +
+ +#if 0
+@@ -61,9 +61,9 @@ diff -rupN tint-0.04+nmu1/io.c tint/io.c
+ #include <sys/time.h> /* gettimeofday() */
+ #include <unistd.h> /* gettimeofday() */
+ +#endif
+-
++
+ #include "io.h"
+-
++
+ @@ -68,7 +72,11 @@ static int in_timeleft;
+ /* Initialize screen */
+ void io_init ()
+@@ -101,7 +101,7 @@ diff -rupN tint-0.04+nmu1/io.c tint/io.c
+ +#endif
+ return ch;
+ }
+-
++
+ diff -rupN tint-0.04+nmu1/io.h tint/io.h
+ --- tint-0.04+nmu1/io.h 2010-06-23 14:55:03.000000000 +0100
+ +++ tint/io.h 2018-02-23 12:00:00.000000000 +0200
+@@ -238,7 +238,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ @@ -27,6 +26,7 @@
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+-
++
+ +#if 0
+ #include <stdlib.h>
+ #include <stdio.h>
+@@ -248,7 +248,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ #include <sys/types.h>
+ #include <unistd.h>
+ +#endif
+-
++
+ -#include "typedefs.h"
+ #include "utils.h"
+ #include "io.h"
+@@ -263,7 +263,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ @@ -322,6 +322,7 @@ typedef struct
+ time_t timestamp;
+ } score_t;
+-
++
+ +#if 0
+ static void getname (char *name)
+ {
+@@ -273,7 +273,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ }
+ }
+ +#endif
+-
++
+ +#if 0
+ static void err1 ()
+ {
+@@ -283,7 +283,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ exit (EXIT_FAILURE);
+ }
+ +#endif
+-
++
+ void showplayerstats (engine_t *engine)
+ {
+ - fprintf (stderr,
+@@ -294,7 +294,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ @@ -361,6 +365,7 @@ void showplayerstats (engine_t *engine)
+ GETSCORE (engine->score),engine->status.efficiency,GETSCORE (engine->score) / getsum ());
+ }
+-
++
+ +#if 0
+ static void createscores (int score)
+ {
+@@ -304,7 +304,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ fprintf (stderr,"\t 1* %7d %s\n\n",score,scores[0].name);
+ }
+ +#endif
+-
++
+ +#if 0
+ static int cmpscores (const void *a,const void *b)
+ {
+@@ -314,7 +314,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ return 0;
+ }
+ +#endif
+-
++
+ +#if 0
+ static void savescores (int score)
+ {
+@@ -324,11 +324,11 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ fprintf (stderr,"\n");
+ }
+ +#endif
+-
++
+ /***************************************************************************/
+ /***************************************************************************/
+ /***************************************************************************/
+-
++
+ +#if 0
+ static void showhelp ()
+ {
+@@ -338,7 +338,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ exit (EXIT_FAILURE);
+ }
+ +#endif
+-
++
+ static void parse_options (int argc,char *argv[])
+ {
+ +#if 0
+@@ -351,12 +351,12 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ }
+ +#endif
+ }
+-
++
+ static void choose_level ()
+ {
+ +#if 0
+ char buf[NAMELEN];
+-
++
+ do
+ @@ -557,6 +572,8 @@ static void choose_level ()
+ buf[strlen (buf) - 1] = '\0';
+@@ -365,7 +365,7 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ +#endif
+ + level = 1;
+ }
+-
++
+ /***************************************************************************/
+ @@ -569,6 +586,8 @@ int main (int argc,char *argv[])
+ int ch;
+@@ -425,14 +425,14 @@ diff -rupN tint-0.04+nmu1/tint.c tint/tint.c
+ exit (EXIT_SUCCESS);
+ +#endif
+ }
+-
++
+ diff -rupN tint-0.04+nmu1/utils.c tint/utils.c
+ --- tint-0.04+nmu1/utils.c 2001-12-07 16:49:19.000000000 +0100
+ +++ tint/utils.c 2018-02-23 12:00:00.000000000 +0200
+ @@ -27,11 +27,13 @@
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+-
++
+ +#include "config.h"
+ +
+ +#if 0
+@@ -442,7 +442,7 @@ diff -rupN tint-0.04+nmu1/utils.c tint/utils.c
+ -
+ -#include "typedefs.h"
+ +#endif
+-
++
+ /*
+ * Initialize random number generator
+ @@ -61,6 +63,7 @@ int rand_value (int range)
+@@ -456,7 +456,7 @@ diff -rupN tint-0.04+nmu1/utils.c tint/utils.c
+ @@ -69,3 +72,4 @@ bool str2int (int *i,const char *str)
+ return TRUE;
+ }
+-
++
+ +#endif
+ diff -rupN tint-0.04+nmu1/utils.h tint/utils.h
+ --- tint-0.04+nmu1/utils.h 2001-12-07 16:49:35.000000000 +0100
+diff --git a/payloads/libpayload/Makefile.inc b/payloads/libpayload/Makefile.inc
+index 4863d3f1da..0da4098fa0 100644
+--- a/payloads/libpayload/Makefile.inc
++++ b/payloads/libpayload/Makefile.inc
+@@ -64,7 +64,7 @@ CFLAGS += -nostdlib -fno-builtin -ffreestanding -fomit-frame-pointer
+ CFLAGS += -ffunction-sections -fdata-sections
+ CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wmissing-prototypes -Wvla
+ CFLAGS += -Wwrite-strings -Wredundant-decls -Wno-trigraphs -Wimplicit-fallthrough
+-CFLAGS += -Wstrict-aliasing -Wshadow -Werror
++CFLAGS += -Wstrict-aliasing -Wshadow
+
+ $(obj)/libpayload-config.h: $(KCONFIG_AUTOHEADER)
+ cmp $@ $< 2>/dev/null || cp $< $@
+diff --git a/payloads/libpayload/sample/Makefile b/payloads/libpayload/sample/Makefile
+index 18121dfe80..1bf6eb521b 100644
+--- a/payloads/libpayload/sample/Makefile
++++ b/payloads/libpayload/sample/Makefile
+@@ -41,7 +41,7 @@ AS := $(AS_$(ARCH-y))
+ LIBPAYLOAD_DIR := ../install/libpayload
+ XCC := CC="$(CC)" $(LIBPAYLOAD_DIR)/bin/lpgcc
+ XAS := AS="$(AS)" $(LIBPAYLOAD_DIR)/bin/lpas
+-CFLAGS := -fno-builtin -Wall -Werror -Os
++CFLAGS := -fno-builtin -Wall -Os
+ TARGET := hello
+ OBJS := $(TARGET).o
+
+diff --git a/payloads/linuxcheck/Makefile b/payloads/linuxcheck/Makefile
+index 838c90df0c..a9d016db36 100644
+--- a/payloads/linuxcheck/Makefile
++++ b/payloads/linuxcheck/Makefile
+@@ -3,7 +3,7 @@ XCOMPILE=$(LIBPAYLOAD_DIR)/libpayload.xcompile
+ # build libpayload and put .config file in $(CURDIR) instead of ../libpayload
+ # to avoid pollute the libpayload source directory and possible conflicts
+ LPOPTS=obj="$(CURDIR)/build" DESTDIR="$(CURDIR)" DOTCONFIG="$(CURDIR)/.config"
+-CFLAGS += -Wall -Wvla -Werror -Os -ffreestanding -nostdinc -nostdlib
++CFLAGS += -Wall -Wvla -Os -ffreestanding -nostdinc -nostdlib
+ ifeq ($(CONFIG_ARCH_X86),y)
+ TARGETARCH = i386
+ endif
+diff --git a/payloads/nvramcui/Makefile b/payloads/nvramcui/Makefile
+index bf7053b9a6..2255bf1558 100644
+--- a/payloads/nvramcui/Makefile
++++ b/payloads/nvramcui/Makefile
+@@ -3,7 +3,7 @@ XCOMPILE=$(LIBPAYLOAD_DIR)/libpayload.xcompile
+ # build libpayload and put .config file in $(CURDIR) instead of ../libpayload
+ # to avoid pollute the libpayload source directory and possible conflicts
+ LPOPTS=obj="$(CURDIR)/build" DESTDIR="$(CURDIR)" DOTCONFIG="$(CURDIR)/.config"
+-CFLAGS += -Wall -Wvla -Werror -Os -ffreestanding -nostdinc -nostdlib
++CFLAGS += -Wall -Wvla -Os -ffreestanding -nostdinc -nostdlib
+
+ all: nvramcui.elf
+
+diff --git a/src/lib/gnat/Makefile.inc b/src/lib/gnat/Makefile.inc
+index ebd04862bf..c8886ec0aa 100644
+--- a/src/lib/gnat/Makefile.inc
++++ b/src/lib/gnat/Makefile.inc
+@@ -25,7 +25,6 @@ ADAFLAGS_libgnat-$(1) := \
+ -gnatpg \
+ -I$$(src)/lib/gnat/ \
+ $$(GCC_ADAFLAGS_$(1)) \
+- -Werror \
+
+ libgnat-$(1)-y += a-unccon.ads
+ libgnat-$(1)-y += ada.ads
+diff --git a/util/bimgtool/Makefile b/util/bimgtool/Makefile
+index 05ddf7d757..e9a49f1515 100644
+--- a/util/bimgtool/Makefile
++++ b/util/bimgtool/Makefile
+@@ -5,7 +5,7 @@ CFLAGS ?= -g
+ CFLAGS += -D_7ZIP_ST
+ CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wmissing-prototypes
+ CFLAGS += -Wwrite-strings -Wredundant-decls -Wno-trigraphs
+-CFLAGS += -Wstrict-aliasing -Wshadow -Werror
++CFLAGS += -Wstrict-aliasing -Wshadow
+
+ all: $(obj)/bimgtool
+
+diff --git a/util/cbfstool/Makefile.inc b/util/cbfstool/Makefile.inc
+index 95372c2988..7ff88915c7 100644
+--- a/util/cbfstool/Makefile.inc
++++ b/util/cbfstool/Makefile.inc
+@@ -104,7 +104,7 @@ amdcompobj += elfheaders.o
+ amdcompobj += common.o
+ amdcompobj += xdr.o
+
+-TOOLCFLAGS ?= -Werror -Wall -Wextra
++TOOLCFLAGS ?= -Wall -Wextra
+ TOOLCFLAGS += -Wcast-qual -Wmissing-prototypes -Wredundant-decls -Wshadow
+ TOOLCFLAGS += -Wstrict-prototypes -Wwrite-strings
+ TOOLCFLAGS += -O2
+diff --git a/util/cbfstool/lz4/Makefile b/util/cbfstool/lz4/Makefile
+index 931da35d95..4c7c640756 100644
+--- a/util/cbfstool/lz4/Makefile
++++ b/util/cbfstool/lz4/Makefile
+@@ -93,10 +93,10 @@ cmake:
+ @cd cmake_unofficial; cmake CMakeLists.txt; $(MAKE)
+
+ gpptest: clean
+- $(MAKE) all CC=g++ CFLAGS="-O3 -I../lib -Wall -Wextra -Wundef -Wshadow -Wcast-align -Werror"
++ $(MAKE) all CC=g++ CFLAGS="-O3 -I../lib -Wall -Wextra -Wundef -Wshadow -Wcast-align"
+
+ clangtest: clean
+- CFLAGS="-O3 -Werror -Wconversion -Wno-sign-conversion" $(MAKE) all CC=clang
++ CFLAGS="-O3 -Wconversion -Wno-sign-conversion" $(MAKE) all CC=clang
+
+ sanitize: clean
+ CFLAGS="-O3 -g -fsanitize=undefined" $(MAKE) test CC=clang FUZZER_TIME="-T1mn" NB_LOOPS=-i1
+@@ -105,8 +105,8 @@ staticAnalyze: clean
+ CFLAGS=-g scan-build --status-bugs -v $(MAKE) all
+
+ armtest: clean
+- CFLAGS="-O3 -Werror" $(MAKE) -C $(LZ4DIR) all CC=arm-linux-gnueabi-gcc
+- CFLAGS="-O3 -Werror" $(MAKE) -C $(PRGDIR) bins CC=arm-linux-gnueabi-gcc
++ CFLAGS="-O3" $(MAKE) -C $(LZ4DIR) all CC=arm-linux-gnueabi-gcc
++ CFLAGS="-O3" $(MAKE) -C $(PRGDIR) bins CC=arm-linux-gnueabi-gcc
+
+ versionsTest: clean
+ $(MAKE) -C versionsTest
+diff --git a/util/cbmem/Makefile b/util/cbmem/Makefile
+index 485955b68a..483b7a0fab 100644
+--- a/util/cbmem/Makefile
++++ b/util/cbmem/Makefile
+@@ -19,7 +19,7 @@ CC ?= $(CROSS_COMPILE)gcc
+ INSTALL ?= /usr/bin/env install
+ PREFIX ?= /usr/local
+ CFLAGS ?= -O2
+-CFLAGS += -Wall -Wextra -Wmissing-prototypes -Werror
++CFLAGS += -Wall -Wextra -Wmissing-prototypes
+ CPPFLAGS += -I . -I $(ROOT)/commonlib/include
+ CPPFLAGS += -include ../../src/commonlib/include/commonlib/compiler.h
+
+diff --git a/util/ifdtool/Makefile b/util/ifdtool/Makefile
+index a4f0af6217..bca4b01d88 100644
+--- a/util/ifdtool/Makefile
++++ b/util/ifdtool/Makefile
+@@ -18,7 +18,7 @@ PROGRAM = ifdtool
+ CC = gcc
+ INSTALL = /usr/bin/env install
+ PREFIX = /usr/local
+-CFLAGS = -O2 -g -Wall -Wextra -Wmissing-prototypes -Werror
++CFLAGS = -O2 -g -Wall -Wextra -Wmissing-prototypes
+ CFLAGS += -I../../src/commonlib/include
+ CFLAGS += -I../cbfstool/flashmap
+ CFLAGS += -include ../../src/commonlib/include/commonlib/compiler.h
+diff --git a/util/intelvbttool/Makefile b/util/intelvbttool/Makefile
+index fb9aadefda..5728b7a36c 100644
+--- a/util/intelvbttool/Makefile
++++ b/util/intelvbttool/Makefile
+@@ -16,7 +16,7 @@
+ PROGRAM = intelvbttool
+ CC ?= gcc
+ CFLAGS ?= -O2 -g
+-CFLAGS += -Wall -Werror
++CFLAGS += -Wall
+ CFLAGS += -I../../src/commonlib/include
+
+ all: $(PROGRAM)
+diff --git a/util/k8resdump/Makefile b/util/k8resdump/Makefile
+index a1d4dfa682..fc039bae4f 100644
+--- a/util/k8resdump/Makefile
++++ b/util/k8resdump/Makefile
+@@ -19,7 +19,7 @@ CC = gcc
+ INSTALL = /usr/bin/env install
+ PREFIX = /usr/local
+ #CFLAGS = -O2 -g -Wall -Werror
+-CFLAGS = -Os -Wall -Werror
++CFLAGS = -Os -Wall
+ OS_ARCH = $(shell uname)
+ ifeq ($(OS_ARCH), SunOS)
+ LDFLAGS = -lpci
+diff --git a/util/msrtool/configure b/util/msrtool/configure
+index 0606f4b8b9..ef4d9f99cd 100755
+--- a/util/msrtool/configure
++++ b/util/msrtool/configure
+@@ -136,7 +136,7 @@ CC=`findprog "compiler" "${CC}" gcc cc icc` || exit
+ INSTALL=`findprog "install" "${INSTALL}" install ginstall` || exit
+
+ test -n "$DEBUG" && myCFLAGS="-O2 -g" || myCFLAGS="-Os"
+-CFLAGS="${CFLAGS} ${myCFLAGS} -Wall -Werror"
++CFLAGS="${CFLAGS} ${myCFLAGS} -Wall"
+
+ cat > .config.c << EOF
+ #include <pci/pci.h>
+diff --git a/util/pmh7tool/Makefile b/util/pmh7tool/Makefile
+index 034ed40c59..d5496bc59f 100644
+--- a/util/pmh7tool/Makefile
++++ b/util/pmh7tool/Makefile
+@@ -14,7 +14,7 @@
+ ##
+
+ CC = gcc
+-CFLAGS = -O2 -Wall -Wextra -Werror
++CFLAGS = -O2 -Wall -Wextra
+ PROGRAM = pmh7tool
+ INSTALL = /usr/bin/env install
+ PREFIX = /usr/local
+diff --git a/util/romcc/Makefile b/util/romcc/Makefile
+index 2c5f174cf2..a06b490fd0 100644
+--- a/util/romcc/Makefile
++++ b/util/romcc/Makefile
+@@ -1,6 +1,6 @@
+ CC=gcc
+ CPPFLAGS=
+-CFLAGS= -g -Wall -Werror $(CPPFLAGS)
++CFLAGS= -g -Wall $(CPPFLAGS)
+ CPROF_FLAGS=-pg -fprofile-arcs
+ BUILD_DIR=build
+
+diff --git a/util/superiotool/Makefile b/util/superiotool/Makefile
+index 2bc88aba64..ac904d1078 100644
+--- a/util/superiotool/Makefile
++++ b/util/superiotool/Makefile
+@@ -25,7 +25,7 @@ PREFIX ?= /usr/local
+ VERSION := -D'SUPERIOTOOL_VERSION="$(shell git describe 2>/dev/null)"'
+
+ CFLAGS += -O2 -Wall -Wstrict-prototypes -Wundef -Wstrict-aliasing \
+- -Werror-implicit-function-declaration -ansi -pedantic $(VERSION)
++ -ansi -pedantic $(VERSION)
+ LDFLAGS += -lz
+
+ OBJS = superiotool.o serverengines.o ali.o exar.o fintek.o ite.o nsc.o \
+@@ -36,8 +36,8 @@ ifeq ($(OS_ARCH), Darwin)
+ LIBS = -framework IOKit -framework DirectHW -lpci -lz
+ endif
+ ifeq ($(OS_ARCH), FreeBSD)
+-CFLAGS = -O2 -Wall -Werror -Wstrict-prototypes -Wundef -Wstrict-aliasing \
+- -Werror-implicit-function-declaration -ansi $(VERSION) \
++CFLAGS = -O2 -Wall -Wstrict-prototypes -Wundef -Wstrict-aliasing \
++ -ansi $(VERSION) \
+ -I/usr/local/include
+ LDFLAGS += -L/usr/local/lib
+ LIBS = -lz
+diff --git a/util/uio_usbdebug/Makefile b/util/uio_usbdebug/Makefile
+index 74bc80e2e6..c1bbc88737 100644
+--- a/util/uio_usbdebug/Makefile
++++ b/util/uio_usbdebug/Makefile
+@@ -28,7 +28,7 @@ KCONFIG_H := ../../src/include/kconfig.h
+
+ CFLAGS += \
+ -m32 -g \
+- -Wall -Wextra -Werror \
++ -Wall -Wextra \
+ -Wno-unused-parameter -Wno-error=sign-compare
+ CPPFLAGS += \
+ -Iinclude/ \
+diff --git a/util/xcompile/xcompile b/util/xcompile/xcompile
+index 2d3da1e00e..a5a948cb19 100755
+--- a/util/xcompile/xcompile
++++ b/util/xcompile/xcompile
+@@ -112,7 +112,7 @@ testcc() {
+ local tmp_o="$TMPFILE.o"
+ rm -f "$tmp_c" "$tmp_o"
+ echo "void _start(void) {}" >"$tmp_c"
+- "$cc" -nostdlib -Werror $cflags -c "$tmp_c" -o "$tmp_o" >/dev/null 2>&1
++ "$cc" -nostdlib $cflags -c "$tmp_c" -o "$tmp_o" >/dev/null 2>&1
+ }
+
+ testld() {
+--
+2.47.3
+
diff --git a/config/submodule/coreboot/default/arm-trusted-firmware/patches/0001-disable-werror.patch b/config/submodule/coreboot/default/arm-trusted-firmware/patches/0001-disable-werror.patch
new file mode 100644
index 00000000..5554447b
--- /dev/null
+++ b/config/submodule/coreboot/default/arm-trusted-firmware/patches/0001-disable-werror.patch
@@ -0,0 +1,110 @@
+From 5b214f3e1e3919c495d45c6f52884e323a987037 Mon Sep 17 00:00:00 2001
+From: Leah Rowe <leah@libreboot.org>
+Date: Thu, 23 Apr 2026 20:45:33 +0100
+Subject: [PATCH 1/1] disable werror
+
+Signed-off-by: Leah Rowe <leah@libreboot.org>
+---
+ Makefile | 2 +-
+ tools/amlogic/Makefile | 2 +-
+ tools/fiptool/Makefile | 2 +-
+ tools/marvell/doimage/Makefile | 2 +-
+ tools/nxp/create_pbl/Makefile | 2 +-
+ tools/sptool/Makefile | 2 +-
+ tools/stm32image/Makefile | 2 +-
+ 7 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 530e6e0f5..b6f504d7c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -274,7 +274,7 @@ WARNINGS += -Wshift-overflow -Wshift-sign-overflow \
+ endif #(Clang Warning)
+
+ ifneq (${E},0)
+- ERRORS := -Werror
++ ERRORS :=
+ endif #(E)
+
+ ################################################################################
+diff --git a/tools/amlogic/Makefile b/tools/amlogic/Makefile
+index cdaf7e711..576cf0ce6 100644
+--- a/tools/amlogic/Makefile
++++ b/tools/amlogic/Makefile
+@@ -14,7 +14,7 @@ include ${MAKE_HELPERS_DIRECTORY}toolchain.mk
+ PROJECT := doimage$(.exe)
+ OBJECTS := doimage.o
+
+-HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE
++HOSTCCFLAGS := -Wall -pedantic -std=c99 -D_GNU_SOURCE
+
+ ifeq (${DEBUG},1)
+ HOSTCCFLAGS += -g -O0 -DDEBUG
+diff --git a/tools/fiptool/Makefile b/tools/fiptool/Makefile
+index a660a500e..479e72a9a 100644
+--- a/tools/fiptool/Makefile
++++ b/tools/fiptool/Makefile
+@@ -16,7 +16,7 @@ OBJECTS := fiptool.o tbbr_config.o
+ STATIC ?= 0
+
+ override CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700
+-HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99
++HOSTCCFLAGS := -Wall -pedantic -std=c99
+ ifeq (${DEBUG},1)
+ HOSTCCFLAGS += -g -O0 -DDEBUG
+ else
+diff --git a/tools/marvell/doimage/Makefile b/tools/marvell/doimage/Makefile
+index a4f7a1d89..852830a4e 100644
+--- a/tools/marvell/doimage/Makefile
++++ b/tools/marvell/doimage/Makefile
+@@ -10,7 +10,7 @@ include ../../../make_helpers/toolchain.mk
+ PROJECT = doimage
+ OBJECTS = doimage.o
+
+-HOSTCCFLAGS = -Wall -Werror
++HOSTCCFLAGS = -Wall
+ ifeq (${DEBUG},1)
+ HOSTCCFLAGS += -g -O0 -DDEBUG
+ else
+diff --git a/tools/nxp/create_pbl/Makefile b/tools/nxp/create_pbl/Makefile
+index 9285b723e..57bbeaa0e 100644
+--- a/tools/nxp/create_pbl/Makefile
++++ b/tools/nxp/create_pbl/Makefile
+@@ -16,7 +16,7 @@ PROJECT_2 := byte_swap$(.exe)
+ OBJECTS_2 := byte_swap.o
+
+ override CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700
+-CFLAGS := -Wall -Werror -pedantic -std=c99
++CFLAGS := -Wall -pedantic -std=c99
+ ifeq (${DEBUG},1)
+ CFLAGS += -g -O0 -DDEBUG
+ else
+diff --git a/tools/sptool/Makefile b/tools/sptool/Makefile
+index f579a42eb..7a847dd3f 100644
+--- a/tools/sptool/Makefile
++++ b/tools/sptool/Makefile
+@@ -14,7 +14,7 @@ PROJECT := $(notdir ${SPTOOL})
+ OBJECTS := sptool.o
+
+ override CPPFLAGS += -D_GNU_SOURCE -D_XOPEN_SOURCE=700
+-HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99
++HOSTCCFLAGS := -Wall -pedantic -std=c99
+ ifeq (${DEBUG},1)
+ HOSTCCFLAGS += -g -O0 -DDEBUG
+ else
+diff --git a/tools/stm32image/Makefile b/tools/stm32image/Makefile
+index 64b6ccfab..600662d74 100644
+--- a/tools/stm32image/Makefile
++++ b/tools/stm32image/Makefile
+@@ -12,7 +12,7 @@ include ${MAKE_HELPERS_DIRECTORY}toolchain.mk
+ PROJECT := stm32image$(.exe)
+ OBJECTS := stm32image.o
+
+-HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE
++HOSTCCFLAGS := -Wall -pedantic -std=c99 -D_GNU_SOURCE
+
+ ifeq (${DEBUG},1)
+ HOSTCCFLAGS += -g -O0 -DDEBUG
+--
+2.47.3
+
diff --git a/config/submodule/coreboot/default/cmocka/patches/0001-disable-werror.patch b/config/submodule/coreboot/default/cmocka/patches/0001-disable-werror.patch
new file mode 100644
index 00000000..b84e6261
--- /dev/null
+++ b/config/submodule/coreboot/default/cmocka/patches/0001-disable-werror.patch
@@ -0,0 +1,80 @@
+From 228447a166be2743cc377c99968cad0df1cb4909 Mon Sep 17 00:00:00 2001
+From: Leah Rowe <leah@libreboot.org>
+Date: Thu, 23 Apr 2026 20:45:47 +0100
+Subject: [PATCH 1/1] disable werror
+
+Signed-off-by: Leah Rowe <leah@libreboot.org>
+---
+ .ycm_extra_conf.py | 1 -
+ CompilerChecks.cmake | 23 -----------------------
+ 2 files changed, 24 deletions(-)
+
+diff --git a/.ycm_extra_conf.py b/.ycm_extra_conf.py
+index 8305a8b..538bc2b 100644
+--- a/.ycm_extra_conf.py
++++ b/.ycm_extra_conf.py
+@@ -4,7 +4,6 @@ import ycm_core
+ flags = [
+ '-Wall',
+ '-Wextra',
+-'-Werror',
+ '-x', 'c',
+ '-Iinclude',
+ ]
+diff --git a/CompilerChecks.cmake b/CompilerChecks.cmake
+index e39cc1d..5fd39d8 100644
+--- a/CompilerChecks.cmake
++++ b/CompilerChecks.cmake
+@@ -2,20 +2,6 @@ include(AddCCompilerFlag)
+ include(CheckCCompilerFlagSSP)
+
+ if (UNIX)
+- #
+- # Check for -Werror turned on if possible
+- #
+- # This will prevent that compiler flags are detected incorrectly.
+- #
+- check_c_compiler_flag("-Werror" REQUIRED_FLAGS_WERROR)
+- if (REQUIRED_FLAGS_WERROR)
+- set(CMAKE_REQUIRED_FLAGS "-Werror")
+-
+- if (PICKY_DEVELOPER)
+- list(APPEND SUPPORTED_COMPILER_FLAGS "-Werror")
+- endif()
+- endif()
+-
+ add_c_compiler_flag("-std=gnu99" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wpedantic" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wall" SUPPORTED_COMPILER_FLAGS)
+@@ -23,20 +9,12 @@ if (UNIX)
+ add_c_compiler_flag("-Wmissing-prototypes" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wcast-align" SUPPORTED_COMPILER_FLAGS)
+ #add_c_compiler_flag("-Wcast-qual" SUPPORTED_COMPILER_FLAGS)
+- add_c_compiler_flag("-Werror=address" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wstrict-prototypes" SUPPORTED_COMPILER_FLAGS)
+- add_c_compiler_flag("-Werror=strict-prototypes" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wwrite-strings" SUPPORTED_COMPILER_FLAGS)
+- add_c_compiler_flag("-Werror=write-strings" SUPPORTED_COMPILER_FLAGS)
+- add_c_compiler_flag("-Werror-implicit-function-declaration" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wpointer-arith" SUPPORTED_COMPILER_FLAGS)
+- add_c_compiler_flag("-Werror=pointer-arith" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wreturn-type" SUPPORTED_COMPILER_FLAGS)
+- add_c_compiler_flag("-Werror=return-type" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wuninitialized" SUPPORTED_COMPILER_FLAGS)
+- add_c_compiler_flag("-Werror=uninitialized" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wimplicit-fallthrough" SUPPORTED_COMPILER_FLAGS)
+- add_c_compiler_flag("-Werror=strict-overflow" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wstrict-overflow=2" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wno-format-zero-length" SUPPORTED_COMPILER_FLAGS)
+ add_c_compiler_flag("-Wmissing-field-initializers" SUPPORTED_COMPILER_FLAGS)
+@@ -47,7 +25,6 @@ if (UNIX)
+ set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -Wformat")
+ endif()
+ add_c_compiler_flag("-Wformat-security" SUPPORTED_COMPILER_FLAGS)
+- add_c_compiler_flag("-Werror=format-security" SUPPORTED_COMPILER_FLAGS)
+
+ # Allow zero for a variadic macro argument
+ string(TOLOWER "${CMAKE_C_COMPILER_ID}" _C_COMPILER_ID)
+--
+2.47.3
+
diff --git a/config/submodule/coreboot/default/libhwbase/patches/0001-disable-werror.patch b/config/submodule/coreboot/default/libhwbase/patches/0001-disable-werror.patch
new file mode 100644
index 00000000..f7c423d0
--- /dev/null
+++ b/config/submodule/coreboot/default/libhwbase/patches/0001-disable-werror.patch
@@ -0,0 +1,26 @@
+From 215db3c92bc21d6d07d9cd6e209f45d90298fda8 Mon Sep 17 00:00:00 2001
+From: Leah Rowe <leah@libreboot.org>
+Date: Thu, 23 Apr 2026 20:45:13 +0100
+Subject: [PATCH 1/1] disable werror
+
+Signed-off-by: Leah Rowe <leah@libreboot.org>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index fb4c43c..58e080e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -45,7 +45,7 @@ GNATBIND = $(CROSS_COMPILE)gnatbind
+
+ GCC_MAJOR = $(shell echo __GNUC__ | $(CC) -E - 2>/dev/null | tail -1)
+
+-CFLAGS += -Wuninitialized -Wall -Werror
++CFLAGS += -Wuninitialized -Wall
+ CFLAGS += -pipe -g
+ CFLAGS += -Wstrict-aliasing -Wshadow
+ CFLAGS += -fno-common -fomit-frame-pointer
+--
+2.47.3
+
diff --git a/config/submodule/coreboot/default/vboot/patches/0002-disable-werror.patch b/config/submodule/coreboot/default/vboot/patches/0002-disable-werror.patch
new file mode 100644
index 00000000..615e4df7
--- /dev/null
+++ b/config/submodule/coreboot/default/vboot/patches/0002-disable-werror.patch
@@ -0,0 +1,48 @@
+From 9ea31d19a31c4fa40e386c104286dd76d60260bb Mon Sep 17 00:00:00 2001
+From: Leah Rowe <leah@libreboot.org>
+Date: Thu, 23 Apr 2026 20:46:37 +0100
+Subject: [PATCH 1/1] disable werror
+
+Signed-off-by: Leah Rowe <leah@libreboot.org>
+---
+ Android.bp | 1 -
+ Makefile | 4 ++--
+ 2 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/Android.bp b/Android.bp
+index dec72cc8..1974a1a2 100644
+--- a/Android.bp
++++ b/Android.bp
+@@ -9,7 +9,6 @@ cc_defaults {
+
+ cflags: [
+ "-Wall",
+- "-Werror",
+ "-Wstrict-prototypes",
+ "-Wtype-limits",
+ "-Wundef",
+diff --git a/Makefile b/Makefile
+index 67af60d4..cdc63c5e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -113,7 +113,7 @@ endif
+ # Provide default CC and CFLAGS for firmware builds; if you have any -D flags,
+ # please add them after this point (e.g., -DVBOOT_DEBUG).
+ DEBUG_FLAGS := $(if $(filter-out 0,${DEBUG}),-g -Og,-g -Os)
+-WERROR := -Werror
++WERROR :=
+ FIRMWARE_FLAGS := -nostdinc -ffreestanding -fno-builtin -fno-stack-protector
+ COMMON_FLAGS := -pipe ${WERROR} -Wall -Wstrict-prototypes -Wtype-limits \
+ -Wundef -Wmissing-prototypes -Wno-trigraphs -Wredundant-decls -Wshadow \
+@@ -127,7 +127,7 @@ COMMON_FLAGS := -pipe ${WERROR} -Wall -Wstrict-prototypes -Wtype-limits \
+ # returns: $(1) if compiler was successful, empty string otherwise
+ test_ccflag = $(shell \
+ printf "$(2)\nvoid _start(void) {}\n" | \
+- $(CC) -nostdlib -Werror $(1) -xc -c - -o /dev/null \
++ $(CC) -nostdlib $(1) -xc -c - -o /dev/null \
+ >/dev/null 2>&1 && echo "$(1)")
+
+ COMMON_FLAGS += $(call test_ccflag,-Wimplicit-fallthrough)
+--
+2.47.3
+
diff --git a/config/submodule/coreboot/fam15h/vboot/patches/0001-disable-werror.patch b/config/submodule/coreboot/fam15h/vboot/patches/0001-disable-werror.patch
new file mode 100644
index 00000000..8eeffe20
--- /dev/null
+++ b/config/submodule/coreboot/fam15h/vboot/patches/0001-disable-werror.patch
@@ -0,0 +1,26 @@
+From deefd0af4b4d5a84e048ac57be2a9a8cffe16192 Mon Sep 17 00:00:00 2001
+From: Leah Rowe <leah@libreboot.org>
+Date: Thu, 23 Apr 2026 21:30:49 +0100
+Subject: [PATCH 1/1] disable werror
+
+Signed-off-by: Leah Rowe <leah@libreboot.org>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 0539e8d7..ea5e9c68 100644
+--- a/Makefile
++++ b/Makefile
+@@ -136,7 +136,7 @@ endif
+ #
+ # Flag ordering: arch, then -f, then -m, then -W
+ DEBUG_FLAGS := $(if ${DEBUG},-g -O0,-g -Os)
+-WERROR := -Werror
++WERROR :=
+ FIRMWARE_FLAGS := -nostdinc -ffreestanding -fno-builtin -fno-stack-protector
+ COMMON_FLAGS := -pipe ${WERROR} -Wall -Wstrict-prototypes -Wtype-limits \
+ -Wundef -Wmissing-prototypes -Wno-trigraphs -Wredundant-decls -Wshadow \
+--
+2.47.3
+