diff options
| -rw-r--r-- | Makefile | 8 | ||||
| -rw-r--r-- | config.mk | 1 | ||||
| -rwxr-xr-x | tools/dtc-version.sh | 20 | 
3 files changed, 28 insertions, 1 deletions
| @@ -413,7 +413,7 @@ endif  all:		$(ALL-y) $(SUBDIR_EXAMPLES) -$(obj)u-boot.dtb:	$(obj)u-boot +$(obj)u-boot.dtb:	checkdtc $(obj)u-boot  		$(MAKE) -C dts binary  		mv $(obj)dts/dt.dtb $@ @@ -667,6 +667,12 @@ checkgcc4:  		false; \  	fi +checkdtc: +	@if test $(call dtc-version) -lt 0104; then \ +		echo '*** Your dtc is too old, please upgrade to dtc 1.4 or newer'; \ +		false; \ +	fi +  #  # Auto-generate the autoconf.mk file (which is included by all makefiles)  # @@ -119,6 +119,7 @@ endif  # Usage gcc-ver := $(call cc-version)  cc-version = $(shell $(SHELL) $(SRCTREE)/tools/gcc-version.sh $(CC))  binutils-version = $(shell $(SHELL) $(SRCTREE)/tools/binutils-version.sh $(AS)) +dtc-version = $(shell $(SHELL) $(SRCTREE)/tools/dtc-version.sh $(DTC))  #  # Include the make variables (CC, etc...) diff --git a/tools/dtc-version.sh b/tools/dtc-version.sh new file mode 100755 index 000000000..e8c94d390 --- /dev/null +++ b/tools/dtc-version.sh @@ -0,0 +1,20 @@ +#!/bin/sh +# +# dtc-version dtc-command +# +# Prints the dtc version of `dtc-command' in a canonical 4-digit form +# such as `0222' for binutils 2.22 +# + +dtc="$*" + +if [ ${#dtc} -eq 0 ]; then +	echo "Error: No dtc command specified." +	printf "Usage:\n\t$0 <dtc-command>\n" +	exit 1 +fi + +MAJOR=$($dtc -v | head -1 | awk '{print $NF}' | cut -d . -f 1) +MINOR=$($dtc -v | head -1 | awk '{print $NF}' | cut -d . -f 2) + +printf "%02d%02d\\n" $MAJOR $MINOR |