mirror of
https://github.com/Stichting-MINIX-Research-Foundation/u-boot.git
synced 2025-09-08 11:36:21 -04:00

Instead of stripping the "_config" part from the make target names in each call of the "mkconfig" script let this script strip the string. This prepares the ground for forther simplification of the top level Makefile. Signed-off-by: Wolfgang Denk <wd@denx.de>
110 lines
2.3 KiB
Bash
Executable File
110 lines
2.3 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
|
|
TARGETS=""
|
|
|
|
while [ $# -gt 0 ] ; do
|
|
case "$1" in
|
|
--) shift ; break ;;
|
|
-a) shift ; APPEND=yes ;;
|
|
-n) shift ; BOARD_NAME="${1%_config}" ; shift ;;
|
|
-t) shift ; TARGETS="`echo $1 | sed 's:_: :g'` ${TARGETS}" ; shift ;;
|
|
*) break ;;
|
|
esac
|
|
done
|
|
|
|
[ "${BOARD_NAME}" ] || BOARD_NAME="${1%_config}"
|
|
|
|
[ $# -lt 4 ] && exit 1
|
|
[ $# -gt 6 ] && exit 1
|
|
|
|
if [ "${ARCH}" -a "${ARCH}" != "$2" ]; then
|
|
echo "Failed: \$ARCH=${ARCH}, should be '$2' for ${BOARD_NAME}" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
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}/arch/$2/include/asm asm
|
|
LNPREFIX=${SRCTREE}/arch/$2/include/asm/
|
|
cd ../include
|
|
rm -f asm
|
|
ln -s ${SRCTREE}/arch/$2/include/asm asm
|
|
else
|
|
cd ./include
|
|
rm -f asm
|
|
ln -s ../arch/$2/include/asm asm
|
|
fi
|
|
|
|
rm -f asm/arch
|
|
|
|
if [ -z "$6" -o "$6" = "NULL" ] ; then
|
|
ln -s ${LNPREFIX}arch-$3 asm/arch
|
|
else
|
|
ln -s ${LNPREFIX}arch-$6 asm/arch
|
|
fi
|
|
|
|
if [ "$2" = "arm" ] ; then
|
|
rm -f asm/proc
|
|
ln -s ${LNPREFIX}proc-armv asm/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
|
|
|
|
# Assign board directory to BOARDIR variable
|
|
if [ -z "$5" -o "$5" = "NULL" ] ; then
|
|
BOARDDIR=$4
|
|
else
|
|
BOARDDIR=$5/$4
|
|
fi
|
|
|
|
#
|
|
# 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
|
|
|
|
for i in ${TARGETS} ; do
|
|
echo "#define CONFIG_MK_${i} 1" >>config.h ;
|
|
done
|
|
|
|
cat << EOF >> config.h
|
|
#define CONFIG_BOARDDIR board/$BOARDDIR
|
|
#include <config_defaults.h>
|
|
#include <configs/${BOARDNAME}.h>
|
|
#include <asm/config.h>
|
|
EOF
|
|
|
|
exit 0
|