From dddeaf3f7dc8d30640119e999bbfabf4ce068a68 Mon Sep 17 00:00:00 2001 From: Peter Jones Date: Fri, 5 Mar 2021 17:44:23 -0500 Subject: Re-organize a bunch of CFLAGS-related makefile bits Some of our makefile bits are a mess, as you may have noticed, making changes to them difficult to review. This patch attempts to make some parts of them vaguely less of a mess, in order to facilitate review of follow-up changes. To so it: - coalesces feature flags, optimizations, -W{no-,}, -W{no-}error, include directives, and define/undefine directives into (mostly) separate groups. - exports them as appropriate so the sub-makes can use them - Makes sure we have -Wextra -Werror everywhere, but adds -Wno-foo and -Wno-error=foo directives at the appropriate places to keep the net warnings the same. - makes the arch defines in Cryptlib and Cryptlib/OpenSSL use the appropriate ones, with no attempt to make them less stupid, without changing the overall order. - coalesces the various includes, with no attempt to make them less stupid, without changing the overall order. - One giant glaring whitespace fix in Cryptlib/OpenSSL/Makefile Signed-off-by: Peter Jones --- Makefile | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index c4403588..6c9083d2 100644 --- a/Makefile +++ b/Makefile @@ -17,8 +17,8 @@ endif override TOPDIR := $(abspath $(TOPDIR)) VPATH = $(TOPDIR) -include $(TOPDIR)/Make.defaults include $(TOPDIR)/Make.rules +include $(TOPDIR)/Make.defaults include $(TOPDIR)/include/coverity.mk include $(TOPDIR)/include/scan-build.mk include $(TOPDIR)/include/fanalyzer.mk @@ -260,10 +260,14 @@ clean-shim-objs: @rm -vf Cryptlib/*.[oa] Cryptlib/*/*.[oa] @if [ -d .git ] ; then git clean -f -d -e 'Cryptlib/OpenSSL/*'; fi -clean: clean-shim-objs clean-test-objs - $(MAKE) -C Cryptlib -f $(TOPDIR)/Cryptlib/Makefile clean +clean-openssl-objs: $(MAKE) -C Cryptlib/OpenSSL -f $(TOPDIR)/Cryptlib/OpenSSL/Makefile clean +clean-cryptlib-objs: + $(MAKE) -C Cryptlib -f $(TOPDIR)/Cryptlib/Makefile clean + +clean: clean-shim-objs clean-test-objs clean-openssl-objs clean-cryptlib-objs + GITTAG = $(VERSION) test-archive: @@ -293,4 +297,5 @@ archive: tag .PHONY : install-deps shim.key -export ARCH CC LD OBJCOPY EFI_INCLUDE OPTIMIZATIONS +export ARCH CC LD OBJCOPY EFI_INCLUDE EFI_INCLUDES OPTIMIZATIONS +export FEATUREFLAGS WARNFLAGS WERRFLAGS -- cgit v1.2.3