diff options
author | Michael Olbrich <m.olbrich@pengutronix.de> | 2014-02-18 11:06:46 +0100 |
---|---|---|
committer | Michael Olbrich <m.olbrich@pengutronix.de> | 2014-02-18 11:47:58 +0100 |
commit | 6a70e98b54a5a63c19d8e05eb1c5ffd952fe565e (patch) | |
tree | 5f29319771405d9c49901f66d2eedfdca2650a9b /rules/dtc.make | |
parent | 0142691e855453934a4a32620dceacfe71bfee88 (diff) | |
download | ptxdist-6a70e98b54a5a63c19d8e05eb1c5ffd952fe565e.tar.gz ptxdist-6a70e98b54a5a63c19d8e05eb1c5ffd952fe565e.tar.xz |
dtc: fix dtb dependency handling
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
Diffstat (limited to 'rules/dtc.make')
-rw-r--r-- | rules/dtc.make | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/rules/dtc.make b/rules/dtc.make index 191c691a4..2747ddd2e 100644 --- a/rules/dtc.make +++ b/rules/dtc.make @@ -23,15 +23,19 @@ DTC_VERSION := 1.0.0 ptx/dtb = $(notdir $(basename $(strip $(1)))).dtb +%.dtb: TMP_DTS = $(STATEDIR)/$(notdir $<).tmp +%.dtb: TMP_DEPS = $(PTXDIST_TEMPDIR)/dts.deps +%.dtb: DEPS = $(STATEDIR)/$(notdir $<).deps %.dtb: + echo $(TMP_DTS) @$(call targetinfo) @if [ -z "$(strip $<)" ]; then \ ptxd_bailout "Device-tree for `ptxd_print_path '$@'` undefined!"; \ fi - @echo CPP `ptxd_print_path "$(STATEDIR)/$(notdir $<).tmp"` + @echo CPP `ptxd_print_path "$(TMP_DTS)"` @cpp \ - -Wp,-MD,$(STATEDIR)/dtc.dtc.deps \ - -Wp,-MT,$(STATEDIR)/$(notdir $<).tmp \ + -Wp,-MD,$(TMP_DEPS) \ + -Wp,-MT,$(TMP_DTS) \ -nostdinc \ -P \ -I$(dir $<) \ @@ -39,8 +43,9 @@ ptx/dtb = $(notdir $(basename $(strip $(1)))).dtb -I$(KERNEL_DIR)/arch/$(GENERIC_KERNEL_ARCH)/boot/dts/include \ -I$(KERNEL_DIR)/include \ -undef -D__DTS__ -x assembler-with-cpp \ - -o $(STATEDIR)/$(notdir $<).tmp \ + -o $(TMP_DTS) \ $< + @sed 's;^$(TMP_DTS):;$@:;' $(TMP_DEPS) > $(DEPS) @echo DTC `ptxd_print_path "$@"` @if $(PTXCONF_SYSROOT_HOST)/bin/dtc -h 2>&1 | grep -q "^[[:space:]]-i$$"; then \ dtc_include="-i $(dir $<) -i $(KERNEL_DIR)/arch/$(GENERIC_KERNEL_ARCH)/boot/dts"; \ @@ -48,16 +53,16 @@ ptx/dtb = $(notdir $(basename $(strip $(1)))).dtb $(PTXCONF_SYSROOT_HOST)/bin/dtc \ $(call remove_quotes,$(PTXCONF_DTC_EXTRA_ARGS)) \ $$dtc_include \ - -d $(PTXDIST_TEMPDIR)/dtc.dtc.deps \ + -d $(TMP_DEPS) \ -I dts -O dtb -b 0 \ - -o "$@" "$(STATEDIR)/$(notdir $<).tmp" + -o "$@" "$(TMP_DTS)" @awk '{ \ printf "%s", $$1 ; \ for (i = 2; i <= NF; i++) { \ printf " $$(wildcard %s)", $$i; \ }; \ print "" \ - }' $(PTXDIST_TEMPDIR)/dtc.dtc.deps >> $(STATEDIR)/dtc.dtc.deps + }' $(TMP_DEPS) >> $(DEPS) @$(call finish) DTC_DTB = $(foreach dts, $(call remove_quotes,$(PTXCONF_DTC_OFTREE_DTS)), $(IMAGEDIR)/$(call ptx/dtb, $(dts))) |