summaryrefslogtreecommitdiffstats
path: root/package/Makefile.in
diff options
context:
space:
mode:
authorUlf Samuelsson <ulf.samuelsson@atmel.com>2007-07-12 13:11:03 +0000
committerUlf Samuelsson <ulf.samuelsson@atmel.com>2007-07-12 13:11:03 +0000
commit412ca2a4d4072b5d4d2fa819d62f6a8848ff7fda (patch)
tree0181b9f0673b2cbe494b4ef025aac7cfb26649c0 /package/Makefile.in
parent7def55591de471e6fa2e7921dfdf71c84a308cae (diff)
downloadbuildroot-novena-412ca2a4d4072b5d4d2fa819d62f6a8848ff7fda.tar.gz
buildroot-novena-412ca2a4d4072b5d4d2fa819d62f6a8848ff7fda.zip
BSP Patch:
========================================================= The purpose of the BSP patch is to allow building several boards inside the same buildroot tree. For this to work, each board has to have its own "$(TARGET_DIR)" and all *configurable* packages must be rebuilt for each board. They are now built in the "$(PROJECT_BUILD_DIR)" All non configurable packages can and should still be built in the "$(BUILD_DIR)". If a package is built for one board, then when you build for a second board of the same architecture the build becomes a simple copy of the resulting binaries. ----- Define BR2_PROJECT which will be used as the selector between different boards. Note that BR2_PROJECT allow you to build multiple root file systems for a single board, and should not be confused with BR2_BOARD_NAME which relates to the H/W. ----- Define PROJECT_BUILD_DIR as "PROJECT_BUILD_DIR/$(PROJECT)" Define BINARIES_DIR as "binaries/$(PROJECT)" Define TARGET_DIR as "$(PROJECT_BUILD_DIR)/root" (some prefix/postfix may apply) Resulting images are stored in "$(BINARIES_DIR)" ----- Define a few new environment variables in Makefile PROJECT: Stripped BR2_PROJECT DATE: Date of build in YYYY-MM-DD format HOSTNAME: Stripped BR2_HOSTNAME => /etc/hostname BANNER: Stripped BR2_BANNER => /etc/issue Linux and Busybox will be built in $(PROJECT_BUILD_DIR) More patches will be needed later to ensure all configurable packages are built in this directory.
Diffstat (limited to 'package/Makefile.in')
-rw-r--r--package/Makefile.in10
1 files changed, 7 insertions, 3 deletions
diff --git a/package/Makefile.in b/package/Makefile.in
index 3cbf6321d..fc0f020b4 100644
--- a/package/Makefile.in
+++ b/package/Makefile.in
@@ -69,7 +69,11 @@ DL_DIR:=$(BASE_DIR)/dl
endif
#PATCH_DIR=$(BASE_DIR)/sources/patches
BUILD_DIR:=$(BASE_DIR)/$(TOPDIR_PREFIX)build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)
-TARGET_DIR:=$(BUILD_DIR)/root
+
+PROJECT_BUILD_DIR:=$(BASE_DIR)/$(TOPDIR_PREFIX)project_build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)/$(PROJECT)
+BINARIES_DIR:=$(BASE_DIR)/binaries/$(PROJECT)
+TARGET_DIR:=$(PROJECT_BUILD_DIR)/root
+
GNU_TARGET_SUFFIX:=-$(strip $(subst ",, $(BR2_GNU_TARGET_SUFFIX)))
#"))
@@ -81,7 +85,7 @@ TOOL_BUILD_DIR=$(BASE_DIR)/$(TOPDIR_PREFIX)toolchain_build_$(ARCH)$(ARCH_FPU_SUF
# Quotes are needed for spaces et al in path components.
TARGET_PATH="$(TOOL_BUILD_DIR)/bin:$(STAGING_DIR)/bin:$(STAGING_DIR)/usr/bin:$(PATH)"
-IMAGE:=$(BASE_DIR)/rootfs.$(ARCH)$(ARCH_FPU_SUFFIX)
+IMAGE:=$(BINARIES_DIR)/rootfs.$(ARCH)$(ARCH_FPU_SUFFIX)
GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux
REAL_GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)$(GNU_TARGET_SUFFIX)
TARGET_CROSS=$(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-
@@ -93,7 +97,7 @@ TOOLCHAIN_EXTERNAL_PATH:=$(strip $(subst ",, $(BR2_TOOLCHAIN_EXTERNAL_PATH)))
#"))
TOOL_BUILD_DIR=$(BASE_DIR)/$(TOPDIR_PREFIX)toolchain_build_$(TOOLCHAIN_EXTERNAL_PREFIX)
TARGET_PATH="$(STAGING_DIR)/bin:$(TOOL_BUILD_DIR)/bin:$(TOOLCHAIN_EXTERNAL_PATH)/bin:$(PATH)"
-IMAGE:=$(BASE_DIR)/rootfs.$(TOOLCHAIN_EXTERNAL_PREFIX)
+IMAGE:=$(BINARIES_DIR)/rootfs.$(TOOLCHAIN_EXTERNAL_PREFIX)
REAL_GNU_TARGET_NAME=$(TOOLCHAIN_EXTERNAL_PREFIX)
GNU_TARGET_NAME=$(TOOLCHAIN_EXTERNAL_PREFIX)
KERNEL_CROSS=$(TOOLCHAIN_EXTERNAL_PATH)/bin/$(TOOLCHAIN_EXTERNAL_PREFIX)-