summaryrefslogtreecommitdiff
path: root/boot/barebox
diff options
context:
space:
mode:
Diffstat (limited to 'boot/barebox')
-rw-r--r--boot/barebox/Config.in6
-rw-r--r--boot/barebox/barebox.mk9
2 files changed, 14 insertions, 1 deletions
diff --git a/boot/barebox/Config.in b/boot/barebox/Config.in
index 0c90f0382..a821c45c0 100644
--- a/boot/barebox/Config.in
+++ b/boot/barebox/Config.in
@@ -11,4 +11,10 @@ config BR2_TARGET_BAREBOX_BOARD_DEFCONFIG
help
Name of the board for which Barebox should be built, without
the _defconfig suffix.
+
+config BR2_TARGET_BAREBOX_BAREBOXENV
+ bool "bareboxenv tool in target"
+ help
+ Install bareboxenv tool in target.
+
endif
diff --git a/boot/barebox/barebox.mk b/boot/barebox/barebox.mk
index 07266d996..09deb5cd2 100644
--- a/boot/barebox/barebox.mk
+++ b/boot/barebox/barebox.mk
@@ -48,7 +48,14 @@ $(BAREBOX_DIR)/.installed: $(BAREBOX_DIR)/.built
cp $(BAREBOX_DIR)/barebox.bin $(BINARIES_DIR)
touch $@
-barebox: $(BAREBOX_DIR)/.installed
+# bareboxenv for the target
+$(TARGET_DIR)/usr/bin/bareboxenv: $(BAREBOX_DIR)/.configured
+ mkdir -p $(@D)
+ $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) -o $@ \
+ $(BAREBOX_DIR)/scripts/bareboxenv.c
+
+barebox: $(BAREBOX_DIR)/.installed \
+ $(if $(BR2_TARGET_BAREBOX_BAREBOXENV),$(TARGET_DIR)/usr/bin/bareboxenv)
ifeq ($(BR2_TARGET_BAREBOX),y)
TARGETS+=barebox