summaryrefslogtreecommitdiff
path: root/mkconfig
diff options
context:
space:
mode:
authorMarian Balakowicz <m8@semihalf.com>2006-09-01 19:49:50 +0200
committerMarian Balakowicz <m8@semihalf.com>2006-09-01 19:49:50 +0200
commitf93286397ed2a7084efb0362a43ee09f11702349 (patch)
tree11e0c11781ba0b867831eff47a4178a464cf00b3 /mkconfig
parent24d3d3754634532ae262075484e7c1d00d447152 (diff)
Add support for a saving build objects in a separate directory.
Modifications are based on the linux kernel approach and support two use cases: 1) Add O= to the make command line 'make O=/tmp/build all' 2) Set environement variable BUILD_DIR to point to the desired location 'export BUILD_DIR=/tmp/build' 'make' The second approach can also be used with a MAKEALL script 'export BUILD_DIR=/tmp/build' './MAKEALL' Command line 'O=' setting overrides BUILD_DIR environent variable. When none of the above methods is used the local build is performed and the object files are placed in the source directory.
Diffstat (limited to 'mkconfig')
-rwxr-xr-xmkconfig30
1 files changed, 22 insertions, 8 deletions
diff --git a/mkconfig b/mkconfig
index 4fe6e448bee..c3e4cea8d9e 100755
--- a/mkconfig
+++ b/mkconfig
@@ -5,7 +5,7 @@
#
# Parameters: Target Architecture CPU Board [VENDOR] [SOC]
#
-# (C) 2002 DENX Software Engineering, Wolfgang Denk <wd@denx.de>
+# (C) 2002-2006 DENX Software Engineering, Wolfgang Denk <wd@denx.de>
#
APPEND=no # Default: Create new config file
@@ -27,24 +27,38 @@ done
echo "Configuring for ${BOARD_NAME} board..."
-cd ./include
-
#
# Create link to architecture specific headers
#
-rm -f asm
-ln -s asm-$2 asm
+if [ "$SRCTREE" != "$OBJTREE" ] ; then
+ mkdir -p ${OBJTREE}/include
+ mkdir -p ${OBJTREE}/include2
+ cd ${OBJTREE}/include2
+ rm -f asm
+ ln -s ${SRCTREE}/include/asm-$2 asm
+ LNPREFIX="../../include2/asm/"
+ cd ../include
+ rm -rf asm-$2
+ rm -f asm
+ mkdir asm-$2
+ ln -s asm-$2 asm
+else
+ cd ./include
+ rm -f asm
+ ln -s asm-$2 asm
+fi
+
rm -f asm-$2/arch
if [ -z "$6" -o "$6" = "NULL" ] ; then
- ln -s arch-$3 asm-$2/arch
+ ln -s ${LNPREFIX}arch-$3 asm-$2/arch
else
- ln -s arch-$6 asm-$2/arch
+ ln -s ${LNPREFIX}arch-$6 asm-$2/arch
fi
if [ "$2" = "arm" ] ; then
rm -f asm-$2/proc
- ln -s proc-armv asm-$2/proc
+ ln -s ${LNPREFIX}proc-armv asm-$2/proc
fi
#