Some U-Boot configurations require the Device Tree compiler to be
available, so we need to depend on host-dtc (example configuration:
zynq_zed).
However, we don't want to build it unconditionally, since the vast
majority of U-Boot configurations don't need it (and host-dtc itself
has a bunch of dependencies).
So, we simply add a Config.in option that allows users to indicate
whether their U-Boot needs DTC or not, and depend on host-dtc if this
option is enabled.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
          Path to the U-Boot configuration file.
 endif
 
+config BR2_TARGET_UBOOT_NEEDS_DTC
+       bool "U-Boot needs dtc"
+       select BR2_PACKAGE_HOST_DTC
+       help
+         Select this option if your U-Boot board configuration
+         requires the Device Tree compiler to be available.
+
 choice
        prompt "U-Boot binary format"
        default BR2_TARGET_UBOOT_FORMAT_BIN
 
        CROSS_COMPILE="$(TARGET_CROSS)" \
        ARCH=$(UBOOT_ARCH)
 
+ifeq ($(BR2_TARGET_UBOOT_NEEDS_DTC),y)
+UBOOT_DEPENDENCIES += host-dtc
+endif
+
 # Helper function to fill the U-Boot config.h file.
 # Argument 1: option name
 # Argument 2: option value