enhance building of projects/target. building of more then one project at some time is supported. ojects and targets located now in projects dir. you can build projects other then generic with PROJECT=xxx make

This commit is contained in:
Stephan Raue 2009-05-02 23:54:39 +02:00
parent 2427e9bf11
commit d32d2e6397
12 changed files with 7143 additions and 30 deletions

View File

@ -1,3 +1,8 @@
# Use shell variables, if defined
ifeq ($(PROJECT),)
export PROJECT=generic
endif
BUILD_DIRS="build.*"
all: system

View File

@ -1,5 +1,5 @@
# Project name
PROJECT=generic
PROJECT=${PROJECT}
MESA=Mesa
LIBDRM=libdrm
@ -151,10 +151,4 @@ AUTOUPDATE=ask
# multi-processor computer (like hyperthreading SMP CPU)
CONCURRENCY_MAKE_LEVEL=1
# read personal options if available
PROJECT_DIR=~/.openelec
test -f "$PROJECT_DIR/options" \
&& . "$PROJECT_DIR/options"
. config/path

View File

@ -14,13 +14,13 @@ SCRIPTS=scripts
PACKAGES=packages
SOURCES=sources
BUILD_BASE=build
BUILD=$BUILD_BASE.$PROJECT.$TARGET_ARCH.$TARGET_LIBC
BUILD=$BUILD_BASE.OpenELEC.$PROJECT.$TARGET_ARCH.$TARGET_LIBC
[ -n "$TARGET_PLATFORM" ] && BUILD=$BUILD.$TARGET_PLATFORM
STAMPS_NOARCH=.stamps
STAMPS=$BUILD/$STAMPS_NOARCH
DOCS=DOCS
ROOT=`pwd`
PROJECT_DIR=$HOME/.openelec/
PROJECT_DIR=$ROOT/projects
TOOLCHAIN=$BUILD/toolchain
SYSROOT_PREFIX=$ROOT/$TOOLCHAIN/$TARGET_NAME/sysroot
LIB_PREFIX=$SYSROOT_PREFIX/usr
@ -203,6 +203,6 @@ require_cxx() {
INCLUDED_LANGS="en $MENU_LANG $INCLUDED_LANGS"
# read personal options if available
if [ -f $PROJECT_DIR/options ]; then
. $PROJECT_DIR/options
if [ -f $PROJECT_DIR/$PROJECT/options ]; then
. $PROJECT_DIR/$PROJECT/options
fi

View File

@ -13,8 +13,6 @@ make -C $LINUX ARCH=$TARGET_ARCH INSTALL_HDR_PATH=dest headers_install
if [ -f $PROJECT_DIR/$PROJECT/$1/$1.$TARGET_ARCH.conf ]; then
KERNEL_CFG_FILE=$PROJECT_DIR/$PROJECT/$1/$1.$TARGET_ARCH.conf
elif [ -f $PROJECT_DIR/$1/$1.$TARGET_ARCH.conf ]; then
KERNEL_CFG_FILE=$PROJECT_DIR/$1/$1.$TARGET_ARCH.conf
else
KERNEL_CFG_FILE=$PKG_DIR/config/$1.$TARGET_ARCH.conf
fi

View File

@ -8,8 +8,6 @@ PKG_DIR=`find $PACKAGES -type d -name $1`
if [ -f $PROJECT_DIR/$PROJECT/$1/$1.conf ]; then
BUSYBOX_CFG_FILE=$PROJECT_DIR/$PROJECT/$1/$1.conf
elif [ -f $PROJECT_DIR/$1/$1.conf ]; then
BUSYBOX_CFG_FILE=$PROJECT_DIR/$1/$1.conf
else
BUSYBOX_CFG_FILE=$ROOT/$PKG_DIR/config/$1.conf
fi

View File

@ -33,8 +33,8 @@ case "$2" in
# Basissystem...
$SCRIPTS/install uClibc
$SCRIPTS/install gcc-final
$SCRIPTS/install linux $2
$SCRIPTS/install busybox $2
$SCRIPTS/install linux
$SCRIPTS/install busybox
$SCRIPTS/install automountd
echo $TARGET_ARCH > $INSTALL/etc/arch
@ -94,12 +94,12 @@ case "$2" in
ln -sf /var/mnt $INSTALL/mnt
mkdir -p $ROOT/target
rm -rf $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.kernel
cp -PR $BUILD/linux-*/arch/x86/boot/bzImage $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.kernel
rm -rf $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.kernel
cp -PR $BUILD/linux-*/arch/x86/boot/bzImage $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.kernel
rm -rf $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.$2
$ROOT/$TOOLCHAIN/bin/mksquashfs $INSTALL $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.$2 -noappend -all-root
# $ROOT/$TOOLCHAIN/bin/mkfs.axfs $INSTALL openelec.$2
rm -rf $ROOT/target/OpenELEC-$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.$3
$ROOT/$TOOLCHAIN/bin/mksquashfs $INSTALL $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.$3 -noappend -all-root
# $ROOT/$TOOLCHAIN/bin/mkfs.axfs $INSTALL openelec.$3
;;
qemu)
@ -107,18 +107,18 @@ case "$2" in
$SCRIPTS/install image system
mkdir -p $ROOT/target
rm -rf $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.flash
qemu-img create -f raw $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.flash 64M
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.flash
rm -rf $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash
qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash 64M
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash
mkdir -p $ROOT/.tmp
sudo mount -o loop $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.flash $ROOT/.tmp
cp -R $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.system $ROOT/.tmp/openelec.system
sudo mount -o loop $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash $ROOT/.tmp
cp -R $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.system $ROOT/.tmp/openelec.system
sudo umount $ROOT/.tmp
rm -rf $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.store
qemu-img create -f raw $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.store 40M
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.store
rm -rf $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.store
qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.store 40M
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.store
;;

File diff suppressed because it is too large Load Diff

12
projects/cx700/options Normal file
View File

@ -0,0 +1,12 @@
# Mediacenter to use (elisa, entertainer)
MEDIACENTER=elisa
# X.org drivers to use (all/ati/geode/glint/i740/intel/mga/nv/openchrome/
# radeonhd/s3/s3virge/savage/sis/tdfx/trident/vesa/vmware)
# Space separated list is supported, e.g. XORG_DRIVERS="ati s3"
XORG_DRIVERS="openchrome-ttm nv vesa"
DRIDRIVERS="swrast,openchrome"
MESA=Mesa-openchrome
LIBDRM=libdrm-newttm

File diff suppressed because it is too large Load Diff

12
projects/generic/options Normal file
View File

@ -0,0 +1,12 @@
# Mediacenter to use (elisa, entertainer)
MEDIACENTER=elisa
# X.org drivers to use (all/ati/geode/glint/i740/intel/mga/nv/openchrome/
# radeonhd/s3/s3virge/savage/sis/tdfx/trident/vesa/vmware)
# Space separated list is supported, e.g. XORG_DRIVERS="ati s3"
XORG_DRIVERS="ati nouveau nv vesa openchrome intel"
MESA=Mesa
LIBDRM=libdrm
DRIDRIVERS="swrast,unichrome,r200,r300,radeon,i810,i915,i965"

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,12 @@
# Mediacenter to use (elisa, entertainer)
MEDIACENTER=elisa
# X.org drivers to use (all/ati/geode/glint/i740/intel/mga/nv/openchrome/
# radeonhd/s3/s3virge/savage/sis/tdfx/trident/vesa/vmware)
# Space separated list is supported, e.g. XORG_DRIVERS="ati s3"
XORG_DRIVERS="openchrome-ttm"
DRIDRIVERS="openchrome"
MESA=Mesa-openchrome
LIBDRM=libdrm-newttm