coreinfo: fix compilation

- extra rule for config.h creation
- include kconfig.h from libpayload
- libpayload symbols are conflicting with gcc builtins (e.g. log2)
- ALIGN() is already defined in libpayload these days
- move libpayload build directory under build/

Change-Id: I2aefdde26853253d58f6cf6e186e784871c1cb5b
Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-on: http://review.coreboot.org/10717
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
This commit is contained in:
Stefan Reinauer 2015-06-29 16:44:12 -07:00
parent 2b374beebc
commit ccc55fdc6f
2 changed files with 7 additions and 6 deletions

View File

@ -52,15 +52,15 @@ HOSTCFLAGS := -I$(srck) -I$(objk)
HOSTCXXFLAGS := -I$(srck) -I$(objk) HOSTCXXFLAGS := -I$(srck) -I$(objk)
LIBCONFIG_PATH := ../libpayload LIBCONFIG_PATH := ../libpayload
LIBPAYLOAD_DIR := ./libpayloadbin LIBPAYLOAD_DIR := build/libpayload
LPCC := $(LIBPAYLOAD_DIR)/libpayload/bin/lpgcc LPCC := $(LIBPAYLOAD_DIR)/libpayload/bin/lpgcc
LPAS := $(LIBPAYLOAD_DIR)/libpayload/bin/lpas LPAS := $(LIBPAYLOAD_DIR)/libpayload/bin/lpas
HAVE_LIBPAYLOAD := $(wildcard $(LIBPAYLOAD_DIR)/libpayload/lib/libpayload.a) HAVE_LIBPAYLOAD := $(wildcard $(LIBPAYLOAD_DIR)/libpayload/lib/libpayload.a)
LIB_CONFIG ?= defconfig LIB_CONFIG ?= defconfig
OBJCOPY ?= objcopy OBJCOPY ?= objcopy
INCLUDES = -I$(obj) INCLUDES = -I$(obj) -include $(LIBPAYLOAD_DIR)/libpayload/include/kconfig.h
CFLAGS := -Wall -Werror -Os $(INCLUDES) CFLAGS := -Wall -Werror -Os -fno-builtin $(INCLUDES)
OBJECTS = cpuinfo_module.o cpuid.S.o pci_module.o coreboot_module.o \ OBJECTS = cpuinfo_module.o cpuid.S.o pci_module.o coreboot_module.o \
nvram_module.o bootlog_module.o ramdump_module.o lar_module.o \ nvram_module.o bootlog_module.o ramdump_module.o lar_module.o \
multiboot_module.o cbfs_module.o coreinfo.o multiboot_module.o cbfs_module.o coreinfo.o
@ -71,7 +71,7 @@ ifneq ($(strip $(HAVE_DOTCONFIG)),)
include $(src)/.config include $(src)/.config
all: $(TARGET) all: $(TARGET)
$(TARGET): $(src)/.config $(OBJS) libpayload $(TARGET): $(src)/.config $(obj)/config.h $(OBJS) libpayload
$(Q)printf " LPCC $(subst $(shell pwd)/,,$(@))\n" $(Q)printf " LPCC $(subst $(shell pwd)/,,$(@))\n"
$(Q)$(LPCC) -o $@ $(OBJS) $(Q)$(LPCC) -o $@ $(OBJS)
$(Q)$(OBJCOPY) --only-keep-debug $@ $(TARGET).debug $(Q)$(OBJCOPY) --only-keep-debug $@ $(TARGET).debug
@ -101,6 +101,9 @@ libpayload:
$(Q)make -C $(LIBCONFIG_PATH) DESTDIR=$(shell pwd)/$(LIBPAYLOAD_DIR) install $(Q)make -C $(LIBCONFIG_PATH) DESTDIR=$(shell pwd)/$(LIBPAYLOAD_DIR) install
endif endif
$(obj)/config.h:
$(MAKE) oldconfig
$(shell mkdir -p $(obj) $(objk)/lxdialog $(KCONFIG_SPLITCONFIG)) $(shell mkdir -p $(obj) $(objk)/lxdialog $(KCONFIG_SPLITCONFIG))
clean: clean:

View File

@ -22,8 +22,6 @@
#if IS_ENABLED(CONFIG_MODULE_CBFS) #if IS_ENABLED(CONFIG_MODULE_CBFS)
#define ALIGN(_v, _a) (((_v) + ((_a) - 1)) & ~((_a) - 1))
#define HEADER_MAGIC 0x4F524243 #define HEADER_MAGIC 0x4F524243
#define HEADER_ADDR 0xfffffffc #define HEADER_ADDR 0xfffffffc
#define LARCHIVE_MAGIC 0x455649484352414cLL /* "LARCHIVE" */ #define LARCHIVE_MAGIC 0x455649484352414cLL /* "LARCHIVE" */