mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-15 14:43:49 +09:00
![Marian Balakowicz](/assets/img/avatar_default.png)
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.
88 lines
1.7 KiB
Bash
Executable File
88 lines
1.7 KiB
Bash
Executable File
#!/bin/sh -e
|
|
|
|
# Script to create header files and links to configure
|
|
# U-Boot for a specific board.
|
|
#
|
|
# Parameters: Target Architecture CPU Board [VENDOR] [SOC]
|
|
#
|
|
# (C) 2002-2006 DENX Software Engineering, Wolfgang Denk <wd@denx.de>
|
|
#
|
|
|
|
APPEND=no # Default: Create new config file
|
|
BOARD_NAME="" # Name to print in make output
|
|
|
|
while [ $# -gt 0 ] ; do
|
|
case "$1" in
|
|
--) shift ; break ;;
|
|
-a) shift ; APPEND=yes ;;
|
|
-n) shift ; BOARD_NAME="${1%%_config}" ; shift ;;
|
|
*) break ;;
|
|
esac
|
|
done
|
|
|
|
[ "${BOARD_NAME}" ] || BOARD_NAME="$1"
|
|
|
|
[ $# -lt 4 ] && exit 1
|
|
[ $# -gt 6 ] && exit 1
|
|
|
|
echo "Configuring for ${BOARD_NAME} board..."
|
|
|
|
#
|
|
# Create link to architecture specific headers
|
|
#
|
|
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 ${LNPREFIX}arch-$3 asm-$2/arch
|
|
else
|
|
ln -s ${LNPREFIX}arch-$6 asm-$2/arch
|
|
fi
|
|
|
|
if [ "$2" = "arm" ] ; then
|
|
rm -f asm-$2/proc
|
|
ln -s ${LNPREFIX}proc-armv asm-$2/proc
|
|
fi
|
|
|
|
#
|
|
# Create include file for Make
|
|
#
|
|
echo "ARCH = $2" > config.mk
|
|
echo "CPU = $3" >> config.mk
|
|
echo "BOARD = $4" >> config.mk
|
|
|
|
[ "$5" ] && [ "$5" != "NULL" ] && echo "VENDOR = $5" >> config.mk
|
|
|
|
[ "$6" ] && [ "$6" != "NULL" ] && echo "SOC = $6" >> config.mk
|
|
|
|
#
|
|
# Create board specific header file
|
|
#
|
|
if [ "$APPEND" = "yes" ] # Append to existing config file
|
|
then
|
|
echo >> config.h
|
|
else
|
|
> config.h # Create new config file
|
|
fi
|
|
echo "/* Automatically generated - do not edit */" >>config.h
|
|
echo "#include <configs/$1.h>" >>config.h
|
|
|
|
exit 0
|