[U-Boot] [PATCHv2 3/3] tools: add a generic config for native tools building

Tom Rini trini at konsulko.com
Sat Dec 8 00:00:41 UTC 2018


From: Otavio Salvador <otavio at ossystems.com.br>

The motivation for this is to allow distributions to distribute all
possible tools in a generic way, avoiding the need of specific tools
building for each machine.

Especially on OpenEmbedded / Yocto Project ecosystem, it is very
common each BSP to end providing their specific tools when they need
to generate images for some SoC (e.g MX23 / MX28 in meta-freescale
case).

Using this, we can package the tools doing:

$: make tools-only_defconfig
$: make tools-only

Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
[trini: Add MAINTAINERS entry for myself, add to .travis.yml, make
U-Boot itself buildable to not trip up other frameworks]
Signed-off-by: Tom Rini <trini at konsulko.com>
---
 .travis.yml                  |  4 ++++
 MAINTAINERS                  |  1 +
 configs/tools-only_defconfig | 24 ++++++++++++++++++++++++
 tools/Makefile               |  2 +-
 4 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 configs/tools-only_defconfig

diff --git a/.travis.yml b/.travis.yml
index ed07d817fa47..f43a272b3231 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -332,6 +332,10 @@ matrix:
     - name: "sloccount"
       script:
         - sloccount .
+    # Ensure host tools build
+    - name: "Build tools-only"
+      script:
+        - make tools-only_config tools-only -j$(nproc)
 
     # test/py
     - name: "test/py sandbox"
diff --git a/MAINTAINERS b/MAINTAINERS
index 0cec39c542db..0fb089807c57 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -719,5 +719,6 @@ L:	u-boot at lists.denx.de
 Q:	http://patchwork.ozlabs.org/project/uboot/list/
 S:	Maintained
 T:	git git://git.denx.de/u-boot.git
+F:	configs/tools-only_defconfig
 F:	*
 F:	*/
diff --git a/configs/tools-only_defconfig b/configs/tools-only_defconfig
new file mode 100644
index 000000000000..fb0607678541
--- /dev/null
+++ b/configs/tools-only_defconfig
@@ -0,0 +1,24 @@
+CONFIG_SYS_TEXT_BASE=0
+CONFIG_ANDROID_BOOT_IMAGE=y
+CONFIG_FIT=y
+CONFIG_FIT_SIGNATURE=y
+# CONFIG_CMD_BOOTD is not set
+# CONFIG_CMD_BOOTM is not set
+# CONFIG_CMD_ELF is not set
+# CONFIG_CMD_DATE is not set
+CONFIG_OF_CONTROL=y
+CONFIG_OF_HOSTFILE=y
+CONFIG_DEFAULT_DEVICE_TREE="sandbox"
+# CONFIG_UDP_FUNCTION_FASTBOOT is not set
+CONFIG_SANDBOX_GPIO=y
+CONFIG_DM_I2C_COMPAT=y
+CONFIG_PCI=y
+CONFIG_DM_PCI=y
+CONFIG_PCI_SANDBOX=y
+CONFIG_DM_RTC=y
+CONFIG_SOUND=y
+CONFIG_SYSRESET=y
+# CONFIG_VIRTIO_MMIO is not set
+# CONFIG_VIRTIO_PCI is not set
+# CONFIG_VIRTIO_SANDBOX is not set
+# CONFIG_EFI_LOADER is not set
diff --git a/tools/Makefile b/tools/Makefile
index c93d17a42fdf..29ff6ed221b1 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -125,7 +125,7 @@ fit_info-objs   := $(dumpimage-mkimage-objs) fit_info.o
 fit_check_sign-objs   := $(dumpimage-mkimage-objs) fit_check_sign.o
 file2include-objs := file2include.o
 
-ifneq ($(CONFIG_MX23)$(CONFIG_MX28),)
+ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_FIT_SIGNATURE),)
 # Add CONFIG_MXS into host CFLAGS, so we can check whether or not register
 # the mxsimage support within tools/mxsimage.c .
 HOSTCFLAGS_mxsimage.o += -DCONFIG_MXS
-- 
2.7.4



More information about the U-Boot mailing list