[POWERPC] Use embedded dtc in kernel builds
This patch alters the kernel makefiles to build dtc from the sources embedded in the previous patch. It also changes the arch/powerpc/boot/wrapper script to use the embedded dtc, rather than expecting a copy of dtc already installed on the system. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
Родитель
a4da2e3ec8
Коммит
e2dc87a1dc
|
@ -112,16 +112,51 @@ $(patsubst %.S,%.o, $(filter %.S, $(src-boot))): %.o: %.S FORCE
|
|||
$(obj)/wrapper.a: $(obj-wlib) FORCE
|
||||
$(call if_changed,bootar)
|
||||
|
||||
hostprogs-y := addnote addRamDisk hack-coff mktree
|
||||
hostprogs-y := addnote addRamDisk hack-coff mktree dtc
|
||||
|
||||
targets += $(patsubst $(obj)/%,%,$(obj-boot) wrapper.a)
|
||||
extra-y := $(obj)/wrapper.a $(obj-plat) $(obj)/empty.o \
|
||||
$(obj)/zImage.lds $(obj)/zImage.coff.lds $(obj)/zImage.ps3.lds
|
||||
|
||||
wrapper :=$(srctree)/$(src)/wrapper
|
||||
wrapperbits := $(extra-y) $(addprefix $(obj)/,addnote hack-coff mktree) \
|
||||
wrapperbits := $(extra-y) $(addprefix $(obj)/,addnote hack-coff mktree dtc) \
|
||||
$(wrapper) FORCE
|
||||
|
||||
#############
|
||||
# Bits for building dtc
|
||||
# DTC_GENPARSER := 1 # Uncomment to rebuild flex/bison output
|
||||
|
||||
dtc-objs := dtc.o flattree.o fstree.o data.o livetree.o treesource.o srcpos.o checks.o
|
||||
dtc-objs += dtc-lexer.lex.o dtc-parser.tab.o
|
||||
dtc-objs := $(addprefix dtc-src/, $(dtc-objs))
|
||||
|
||||
# prerequisites on generated files needs to be explicit
|
||||
$(obj)/dtc-src/dtc-parser.tab.o: $(obj)/dtc-src/dtc-parser.tab.c $(obj)/dtc-src/dtc-parser.tab.h
|
||||
$(obj)/dtc-src/dtc-lexer.lex.o: $(obj)/dtc-src/dtc-lexer.lex.c $(obj)/dtc-src/dtc-parser.tab.h
|
||||
|
||||
HOSTCFLAGS += -I$(src)/dtc-src/ -I$(src)/libfdt/
|
||||
|
||||
targets += dtc-src/dtc-parser.tab.c
|
||||
targets += dtc-src/dtc-lexer.lex.c
|
||||
|
||||
ifdef DTC_GENPARSER
|
||||
BISON = bison
|
||||
FLEX = flex
|
||||
|
||||
quiet_cmd_bison = BISON $@
|
||||
cmd_bison = $(BISON) -o$@ -d $<; cp $@ $@_shipped
|
||||
quiet_cmd_flex = FLEX $@
|
||||
cmd_flex = $(FLEX) -o$@ $<; cp $@ $@_shipped
|
||||
|
||||
$(obj)/dtc-src/dtc-parser.tab.c: $(src)/dtc-src/dtc-parser.y FORCE
|
||||
$(call if_changed,bison)
|
||||
|
||||
$(obj)/dtc-src/dtc-parser.tab.h: $(obj)/dtc-src/dtc-parser.tab.c
|
||||
|
||||
$(obj)/dtc-src/dtc-lexer.lex.c: $(src)/dtc-src/dtc-lexer.l FORCE
|
||||
$(call if_changed,flex)
|
||||
endif
|
||||
|
||||
#############
|
||||
# Bits for building various flavours of zImage
|
||||
|
||||
|
|
|
@ -124,7 +124,7 @@ if [ -n "$dts" ]; then
|
|||
if [ -z "$dtb" ]; then
|
||||
dtb="$platform.dtb"
|
||||
fi
|
||||
dtc -O dtb -o "$dtb" -b 0 -V 16 "$dts"
|
||||
$object/dtc -O dtb -o "$dtb" -b 0 "$dts"
|
||||
fi
|
||||
|
||||
if [ -z "$kernel" ]; then
|
||||
|
|
Загрузка…
Ссылка в новой задаче