From 1210026bda8ad1fa24d2f0a7625f5b2cd35662ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ky=C3=B6sti=20M=C3=A4lkki?= Date: Sun, 10 Sep 2017 08:48:11 +0300 Subject: AGESA buildsystem: Reduce include path exposure MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Remove AGESA_AUTOINCLUDES -list from coreboot proper CPPFLAGS. Couple individual directories are now manually added to complete builds. Change-Id: I2595b87641c70e34e49fedf11b42f4961b0842dd Signed-off-by: Kyösti Mälkki Reviewed-on: https://review.coreboot.org/21479 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- src/vendorcode/amd/agesa/Makefile.inc | 5 +++++ src/vendorcode/amd/agesa/f12/Makefile.inc | 15 +++++++++------ src/vendorcode/amd/agesa/f14/Makefile.inc | 17 +++++++++++------ src/vendorcode/amd/agesa/f15/Makefile.inc | 17 +++++++++++------ src/vendorcode/amd/agesa/f15tn/Makefile.inc | 24 ++++++++++++++++-------- src/vendorcode/amd/agesa/f16kb/Makefile.inc | 22 ++++++++++++++-------- 6 files changed, 66 insertions(+), 34 deletions(-) (limited to 'src/vendorcode') diff --git a/src/vendorcode/amd/agesa/Makefile.inc b/src/vendorcode/amd/agesa/Makefile.inc index ca7a201934..018cd53eb3 100644 --- a/src/vendorcode/amd/agesa/Makefile.inc +++ b/src/vendorcode/amd/agesa/Makefile.inc @@ -11,6 +11,7 @@ subdirs-y += common classes-y += libagesa libagesa-y = libagesa-generic-ccopts += -D__LIBAGESA__ +libagesa-generic-ccopts += $(AGESA_INC) $(AGESA_AUTOINCLUDES) ifeq ($(CONFIG_ARCH_ROMSTAGE_X86_32),y) $(eval $(call create_class_compiler,libagesa,x86_32)) @@ -18,7 +19,11 @@ else $(eval $(call create_class_compiler,libagesa,x86_64)) endif +# buildOpts should be in libagesa $(obj)/romstage/mainboard/$(MAINBOARDDIR)/buildOpts.o: CPPFLAGS_x86_32 += $(BUILDOPTS_INCLUDES) $(obj)/ramstage/mainboard/$(MAINBOARDDIR)/buildOpts.o: CPPFLAGS_x86_32 += $(BUILDOPTS_INCLUDES) +$(obj)/romstage/vendorcode/amd/agesa/common/agesa-entry.o: CPPFLAGS_x86_32 += $(BUILDOPTS_INCLUDES) +$(obj)/ramstage/vendorcode/amd/agesa/common/agesa-entry.o: CPPFLAGS_x86_32 += $(BUILDOPTS_INCLUDES) + endif diff --git a/src/vendorcode/amd/agesa/f12/Makefile.inc b/src/vendorcode/amd/agesa/f12/Makefile.inc index 4da54b7d19..3855d1d027 100644 --- a/src/vendorcode/amd/agesa/f12/Makefile.inc +++ b/src/vendorcode/amd/agesa/f12/Makefile.inc @@ -32,20 +32,23 @@ AGESA_ROOT = src/vendorcode/amd/agesa/f12 AGESA_AUTOINCLUDES := $(shell find $(AGESA_ROOT)/Proc -type d -exec echo -n "-I"{}" " \;) -AGESA_INC = -I$(src)/vendorcode/amd/include -I$(src)/mainboard/$(MAINBOARDDIR) +AGESA_INC = -I$(src)/vendorcode/amd/include AGESA_INC += -I$(AGESA_ROOT) AGESA_INC += -I$(AGESA_ROOT)/../common AGESA_INC += -I$(AGESA_ROOT)/Include -AGESA_INC += $(AGESA_AUTOINCLUDES) -BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) +BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) $(AGESA_AUTOINCLUDES) CFLAGS_x86_32 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno-strict-aliasing CFLAGS_x86_64 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno-strict-aliasing -export AGESA_INC := $(AGESA_INC) -CPPFLAGS_x86_32 += $(AGESA_INC) -CPPFLAGS_x86_64 += $(AGESA_INC) +# These are invalid, coreboot proper should not require +# use of AGESA internal header files. +CPPFLAGS_x86_ANY = +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h + +CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) +CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) ####################################################################### diff --git a/src/vendorcode/amd/agesa/f14/Makefile.inc b/src/vendorcode/amd/agesa/f14/Makefile.inc index f71b957b3f..d2e0dfcbce 100644 --- a/src/vendorcode/amd/agesa/f14/Makefile.inc +++ b/src/vendorcode/amd/agesa/f14/Makefile.inc @@ -32,20 +32,25 @@ AGESA_ROOT = src/vendorcode/amd/agesa/f14 AGESA_AUTOINCLUDES := $(shell find $(AGESA_ROOT)/Proc -type d -exec echo -n "-I"{}" " \;) -AGESA_INC = -I$(src)/vendorcode/amd/include -I$(src)/mainboard/$(MAINBOARDDIR) +AGESA_INC = -I$(src)/vendorcode/amd/include AGESA_INC += -I$(AGESA_ROOT) AGESA_INC += -I$(AGESA_ROOT)/../common AGESA_INC += -I$(AGESA_ROOT)/Include -AGESA_INC += $(AGESA_AUTOINCLUDES) -BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) +BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) $(AGESA_AUTOINCLUDES) CFLAGS_x86_32 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno-strict-aliasing CFLAGS_x86_64 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno-strict-aliasing -export AGESA_INC := $(AGESA_INC) -CPPFLAGS_x86_32 += $(AGESA_INC) -CPPFLAGS_x86_64 += $(AGESA_INC) +# These are invalid, coreboot proper should not require +# use of AGESA internal header files. +CPPFLAGS_x86_ANY = +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU/Family + +CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) +CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) + ####################################################################### subdirs-y += Legacy/Proc diff --git a/src/vendorcode/amd/agesa/f15/Makefile.inc b/src/vendorcode/amd/agesa/f15/Makefile.inc index 4f6acba469..a3f6bb46f7 100644 --- a/src/vendorcode/amd/agesa/f15/Makefile.inc +++ b/src/vendorcode/amd/agesa/f15/Makefile.inc @@ -21,21 +21,26 @@ AGESA_ROOT = src/vendorcode/amd/agesa/f15 AGESA_AUTOINCLUDES := $(shell find $(AGESA_ROOT)/Proc -type d -exec echo -n "-I"{}" " \;) -AGESA_INC = -I$(src)/vendorcode/amd/include -I$(src)/mainboard/$(MAINBOARDDIR) +AGESA_INC = -I$(src)/vendorcode/amd/include AGESA_INC += -I$(AGESA_ROOT) AGESA_INC += -I$(AGESA_ROOT)/../common AGESA_INC += -I$(AGESA_ROOT)/Include -AGESA_INC += $(AGESA_AUTOINCLUDES) -BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) +BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) $(AGESA_AUTOINCLUDES) ## AGESA need sse feature ## CFLAGS_x86_32 += -msse3 -fno-zero-initialized-in-bss -fno-strict-aliasing CFLAGS_x86_64 += -msse3 -fno-zero-initialized-in-bss -fno-strict-aliasing -export AGESA_INC := $(AGESA_INC) -CPPFLAGS_x86_32 += $(AGESA_INC) -CPPFLAGS_x86_64 += $(AGESA_INC) +# These are invalid, coreboot proper should not require +# use of AGESA internal header files. +CPPFLAGS_x86_ANY = +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU/Family +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Common # CreateStruct.h + +CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) +CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) ####################################################################### diff --git a/src/vendorcode/amd/agesa/f15tn/Makefile.inc b/src/vendorcode/amd/agesa/f15tn/Makefile.inc index 352a03ce89..40efe60a5b 100644 --- a/src/vendorcode/amd/agesa/f15tn/Makefile.inc +++ b/src/vendorcode/amd/agesa/f15tn/Makefile.inc @@ -32,22 +32,30 @@ AGESA_ROOT = src/vendorcode/amd/agesa/f15tn AGESA_AUTOINCLUDES := $(shell find $(AGESA_ROOT)/Proc -type d -exec echo -n "-I"{}" " \;) -AGESA_INC = -I$(src)/vendorcode/amd/include -I$(src)/mainboard/$(MAINBOARDDIR) +AGESA_INC = -I$(src)/vendorcode/amd/include AGESA_INC += -I$(AGESA_ROOT) AGESA_INC += -I$(AGESA_ROOT)/../common AGESA_INC += -I$(AGESA_ROOT)/Include -AGESA_INC += $(AGESA_AUTOINCLUDES) -AGESA_INC += -I$(src)/southbridge/amd/agesa/hudson - -BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) +BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) $(AGESA_AUTOINCLUDES) CFLAGS_x86_32 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno-strict-aliasing CFLAGS_x86_64 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno-strict-aliasing -export AGESA_INC := $(AGESA_INC) -CPPFLAGS_x86_32 += $(AGESA_INC) -CPPFLAGS_x86_64 += $(AGESA_INC) +# These are invalid, coreboot proper should not require +# use of AGESA internal header files. +CPPFLAGS_x86_ANY = +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU/Family +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/IDS # OptionsIds.h + +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch # FchPlatform.h +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch/Common # FchCommonCfg.h +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Common # AmdFch.h + +CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) +CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) + ####################################################################### subdirs-y += Legacy/Proc diff --git a/src/vendorcode/amd/agesa/f16kb/Makefile.inc b/src/vendorcode/amd/agesa/f16kb/Makefile.inc index 3b5eb4af24..31faea1d23 100644 --- a/src/vendorcode/amd/agesa/f16kb/Makefile.inc +++ b/src/vendorcode/amd/agesa/f16kb/Makefile.inc @@ -32,23 +32,29 @@ AGESA_ROOT = src/vendorcode/amd/agesa/f16kb AGESA_AUTOINCLUDES := $(shell find $(AGESA_ROOT)/Proc -type d -exec echo -n "-I"{}" " \;) -AGESA_INC = -I$(src)/vendorcode/amd/include -I$(src)/mainboard/$(MAINBOARDDIR) +AGESA_INC = -I$(src)/vendorcode/amd/include AGESA_INC += -I$(AGESA_ROOT) AGESA_INC += -I$(AGESA_ROOT)/../common AGESA_INC += -I$(AGESA_ROOT)/Include -AGESA_INC += $(AGESA_AUTOINCLUDES) -AGESA_INC += -I$(src)/southbridge/amd/agesa/hudson - -BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) +BUILDOPTS_INCLUDES = -I$(AGESA_ROOT)/Config $(AGESA_INC) $(AGESA_AUTOINCLUDES) CFLAGS_x86_32 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno-strict-aliasing CFLAGS_x86_64 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno-strict-aliasing +# These are invalid, coreboot proper should not require +# use of AGESA internal header files. +CPPFLAGS_x86_ANY = +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU/Family +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/IDS # OptionsIds.h + +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch # FchPlatform.h +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch/Common # FchCommonCfg.h +CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Common # AmdFch.h -export AGESA_INC := $(AGESA_INC) -CPPFLAGS_x86_32 += $(AGESA_INC) -CPPFLAGS_x86_64 += $(AGESA_INC) +CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) +CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) ####################################################################### -- cgit v1.2.3