Current versions of dtc always print a message like
DTC: dts->dtb on file "dt.dtb.tmp"
which cannot even be suppressed with "-qqq". To avoid incorrect
MAKEALL status, we manually filter out this message. This is a bit
complicated, as we have to make sure to set a correct return code.
Also, get rid of the temp file: dtc accepts "-" for stdin.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
DT_BIN := $(obj)dt.dtb
$(DT_BIN): $(TOPDIR)/board/$(VENDOR)/dts/$(DEVICE_TREE).dts
- cat $< | $(CPP) -P $(DTS_CPPFLAGS) - >$@.tmp
- $(DTC) -R 4 -p 0x1000 -O dtb -o ${DT_BIN} $@.tmp
- rm $@.tmp
+ rc=$$( \
+ cat $< | $(CPP) -P $(DTS_CPPFLAGS) - | \
+ { { $(DTC) -R 4 -p 0x1000 -O dtb -o ${DT_BIN} - 2>&1 ; \
+ echo $$? >&3 ; } | \
+ grep -v '^DTC: dts->dtb on file' ; \
+ } 3>&1 ) ; \
+ exit $$rc
process_lds = \
$(1) | sed -r -n 's/^OUTPUT_$(2)[ ("]*([^")]*).*/\1/p'