[Buildroot] BSP patch vs 20070208 (updated according to suggestions)

Ulf Samuelsson ulf at atmel.com
Thu Feb 8 21:55:48 UTC 2007


Author:    Ulf Samuelsson
Date:    2007-02-08

Log:
    Here is my suggestion for supporting different BSP's
    in the same buildroot structure
    Updated according to suggestions.
    BR2_BOARDNAME cannot be empty,since it is used to define directory
names.
    I don't think it should be defined by the targtets, since you may
want to build
    several different boards, using the same target

    Add BINARIES_DIR directory,
    where resulting binaries can be stored
    Typically this directory contains a subdirectory for each BSP.

    Add TARGET_BUILD_DIR directory, where BSP for different
    boards can be built without destroying results of previous builds.
    Typically each BSP would build in a subdirectory of TARGET_BUILD_DIR


Modified:
    Config.in
    Makefile
    package/Makefile.in

Changeset
    Config.in
    Makefile
    package/Makefile.in

diff -purN buildroot-0rig/Config.in buildroot-atmel/Config.in
--- buildroot-0rig/Config.in    2007-02-08 22:17:40.000000000 +0100
+++ buildroot-atmel/Config.in    2007-02-08 22:35:48.000000000 +0100
@@ -6,6 +6,21 @@ config BR2_HAVE_DOT_CONFIG
     bool
     default y
 
+menu "Board"
+
+config BR2_BOARDNAME
+    string "Boardname"
+    default "uclibc"
+    help
+      The boardname is used to define subdirectories
+      * where the Board Support Packages are built
+        (Linux,Root fs Bootmonitor,Utilities etc.)
+      * where the resulting binaries are stored.
+      Older target may still build in the build_<arch>
+      and store binaries in the top directory.
+
+endmenu
+
 choice
     prompt "Target Architecture"
     default BR2_i386
diff -purN buildroot-0rig/Makefile buildroot-atmel/Makefile
--- buildroot-0rig/Makefile    2007-02-08 22:17:40.000000000 +0100
+++ buildroot-atmel/Makefile    2007-02-08 22:29:14.000000000 +0100
@@ -79,12 +79,15 @@ TARGETS_CLEAN:=$(patsubst %,%-clean,$(TA
 TARGETS_SOURCE:=$(patsubst %,%-source,$(TARGETS))
 TARGETS_DIRCLEAN:=$(patsubst %,%-dirclean,$(TARGETS))
 
-world: $(DL_DIR) $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) $(TARGETS)
+world: $(DL_DIR) $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
+    $(TARGET_BUILD_DIR) $(BINARIES_DIR) $(TARGETS)
+
 dirs: $(DL_DIR) $(BUILD_DIR) $(STAGING_DIR)
 
 .PHONY: all world dirs clean dirclean distclean source $(TARGETS) \
     $(TARGETS_CLEAN) $(TARGETS_DIRCLEAN) $(TARGETS_SOURCE) \
-    $(DL_DIR) $(BUILD_DIR) $(TOOL_BUILD_DIR) $(STAGING_DIR)
+    $(DL_DIR) $(BUILD_DIR) $(TOOL_BUILD_DIR) $(STAGING_DIR) \
+    $(TARGET_BUILD_DIR) $(BINARIES_DIR)
 
 #############################################################
 #
@@ -92,7 +95,8 @@ dirs: $(DL_DIR) $(BUILD_DIR) $(STAGING_D
 # dependencies anywhere else
 #
 #############################################################
-$(DL_DIR) $(BUILD_DIR) $(TOOL_BUILD_DIR):
+$(DL_DIR) $(BUILD_DIR) $(TOOL_BUILD_DIR) \
+$(TARGET_BUILD_DIR) $(BINARIES_DIR):
     @mkdir -p $@
 
 $(STAGING_DIR):
diff -purN buildroot-0rig/package/Makefile.in
buildroot-atmel/package/Makefile.in
--- buildroot-0rig/package/Makefile.in    2007-02-08 22:17:40.000000000
+0100
+++ buildroot-atmel/package/Makefile.in    2007-02-08 22:31:52.000000000
+0100
@@ -71,6 +71,8 @@ TOOLCHAIN_EXTERNAL_PREFIX:=$(strip $(sub
 TOOLCHAIN_EXTERNAL_PATH:=$(strip $(subst ",,
$(BR2_TOOLCHAIN_EXTERNAL_PATH)))
 #"))
 TOOL_BUILD_DIR=$(BASE_DIR)/$(TOPDIR_PREFIX)toolchain_build_$(TOOLCHAIN_EXTERNAL_PREFIX)
+TARGET_BUILD_DIR:=$(BASE_DIR)/$(TOPDIR_PREFIX)target_build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)/$(BR2_BOARDNAME)
+BINARIES_DIR:=$(BASE_DIR)/binaries/$(BR2_BOARDNAME)
 TARGET_PATH="$(STAGING_DIR)/bin:$(TOOL_BUILD_DIR)/bin:$(TOOLCHAIN_EXTERNAL_PATH)/bin:$(PATH)"
 IMAGE:=$(BASE_DIR)/rootfs.$(TOOLCHAIN_EXTERNAL_PREFIX)
 REAL_GNU_TARGET_NAME=$(TOOLCHAIN_EXTERNAL_PREFIX)

-- 
Best Regards,
Ulf Samuelsson



-------------- next part --------------
A non-text attachment was scrubbed...
Name: BSP_Support-20070208.patch
Type: text/x-patch
Size: 3606 bytes
Desc: not available
Url : http://lists.busybox.net/pipermail/buildroot/attachments/20070208/2d371ddd/attachment-0002.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ulf.vcf
Type: text/x-vcard
Size: 301 bytes
Desc: not available
Url : http://lists.busybox.net/pipermail/buildroot/attachments/20070208/2d371ddd/attachment-0002.vcf 


More information about the buildroot mailing list