mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 13:46:49 +00:00
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:
parent
2427e9bf11
commit
d32d2e6397
5
Makefile
5
Makefile
@ -1,3 +1,8 @@
|
|||||||
|
# Use shell variables, if defined
|
||||||
|
ifeq ($(PROJECT),)
|
||||||
|
export PROJECT=generic
|
||||||
|
endif
|
||||||
|
|
||||||
BUILD_DIRS="build.*"
|
BUILD_DIRS="build.*"
|
||||||
|
|
||||||
all: system
|
all: system
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Project name
|
# Project name
|
||||||
PROJECT=generic
|
PROJECT=${PROJECT}
|
||||||
|
|
||||||
MESA=Mesa
|
MESA=Mesa
|
||||||
LIBDRM=libdrm
|
LIBDRM=libdrm
|
||||||
@ -151,10 +151,4 @@ AUTOUPDATE=ask
|
|||||||
# multi-processor computer (like hyperthreading SMP CPU)
|
# multi-processor computer (like hyperthreading SMP CPU)
|
||||||
CONCURRENCY_MAKE_LEVEL=1
|
CONCURRENCY_MAKE_LEVEL=1
|
||||||
|
|
||||||
# read personal options if available
|
|
||||||
PROJECT_DIR=~/.openelec
|
|
||||||
|
|
||||||
test -f "$PROJECT_DIR/options" \
|
|
||||||
&& . "$PROJECT_DIR/options"
|
|
||||||
|
|
||||||
. config/path
|
. config/path
|
||||||
|
@ -14,13 +14,13 @@ SCRIPTS=scripts
|
|||||||
PACKAGES=packages
|
PACKAGES=packages
|
||||||
SOURCES=sources
|
SOURCES=sources
|
||||||
BUILD_BASE=build
|
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
|
[ -n "$TARGET_PLATFORM" ] && BUILD=$BUILD.$TARGET_PLATFORM
|
||||||
STAMPS_NOARCH=.stamps
|
STAMPS_NOARCH=.stamps
|
||||||
STAMPS=$BUILD/$STAMPS_NOARCH
|
STAMPS=$BUILD/$STAMPS_NOARCH
|
||||||
DOCS=DOCS
|
DOCS=DOCS
|
||||||
ROOT=`pwd`
|
ROOT=`pwd`
|
||||||
PROJECT_DIR=$HOME/.openelec/
|
PROJECT_DIR=$ROOT/projects
|
||||||
TOOLCHAIN=$BUILD/toolchain
|
TOOLCHAIN=$BUILD/toolchain
|
||||||
SYSROOT_PREFIX=$ROOT/$TOOLCHAIN/$TARGET_NAME/sysroot
|
SYSROOT_PREFIX=$ROOT/$TOOLCHAIN/$TARGET_NAME/sysroot
|
||||||
LIB_PREFIX=$SYSROOT_PREFIX/usr
|
LIB_PREFIX=$SYSROOT_PREFIX/usr
|
||||||
@ -203,6 +203,6 @@ require_cxx() {
|
|||||||
INCLUDED_LANGS="en $MENU_LANG $INCLUDED_LANGS"
|
INCLUDED_LANGS="en $MENU_LANG $INCLUDED_LANGS"
|
||||||
|
|
||||||
# read personal options if available
|
# read personal options if available
|
||||||
if [ -f $PROJECT_DIR/options ]; then
|
if [ -f $PROJECT_DIR/$PROJECT/options ]; then
|
||||||
. $PROJECT_DIR/options
|
. $PROJECT_DIR/$PROJECT/options
|
||||||
fi
|
fi
|
||||||
|
@ -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
|
if [ -f $PROJECT_DIR/$PROJECT/$1/$1.$TARGET_ARCH.conf ]; then
|
||||||
KERNEL_CFG_FILE=$PROJECT_DIR/$PROJECT/$1/$1.$TARGET_ARCH.conf
|
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
|
else
|
||||||
KERNEL_CFG_FILE=$PKG_DIR/config/$1.$TARGET_ARCH.conf
|
KERNEL_CFG_FILE=$PKG_DIR/config/$1.$TARGET_ARCH.conf
|
||||||
fi
|
fi
|
||||||
|
@ -8,8 +8,6 @@ PKG_DIR=`find $PACKAGES -type d -name $1`
|
|||||||
|
|
||||||
if [ -f $PROJECT_DIR/$PROJECT/$1/$1.conf ]; then
|
if [ -f $PROJECT_DIR/$PROJECT/$1/$1.conf ]; then
|
||||||
BUSYBOX_CFG_FILE=$PROJECT_DIR/$PROJECT/$1/$1.conf
|
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
|
else
|
||||||
BUSYBOX_CFG_FILE=$ROOT/$PKG_DIR/config/$1.conf
|
BUSYBOX_CFG_FILE=$ROOT/$PKG_DIR/config/$1.conf
|
||||||
fi
|
fi
|
||||||
|
@ -33,8 +33,8 @@ case "$2" in
|
|||||||
# Basissystem...
|
# Basissystem...
|
||||||
$SCRIPTS/install uClibc
|
$SCRIPTS/install uClibc
|
||||||
$SCRIPTS/install gcc-final
|
$SCRIPTS/install gcc-final
|
||||||
$SCRIPTS/install linux $2
|
$SCRIPTS/install linux
|
||||||
$SCRIPTS/install busybox $2
|
$SCRIPTS/install busybox
|
||||||
$SCRIPTS/install automountd
|
$SCRIPTS/install automountd
|
||||||
|
|
||||||
echo $TARGET_ARCH > $INSTALL/etc/arch
|
echo $TARGET_ARCH > $INSTALL/etc/arch
|
||||||
@ -94,12 +94,12 @@ case "$2" in
|
|||||||
ln -sf /var/mnt $INSTALL/mnt
|
ln -sf /var/mnt $INSTALL/mnt
|
||||||
|
|
||||||
mkdir -p $ROOT/target
|
mkdir -p $ROOT/target
|
||||||
rm -rf $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/$PROJECT-$MEDIACENTER-$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
|
rm -rf $ROOT/target/OpenELEC-$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.$3
|
||||||
$ROOT/$TOOLCHAIN/bin/mksquashfs $INSTALL $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.$2 -noappend -all-root
|
$ROOT/$TOOLCHAIN/bin/mksquashfs $INSTALL $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.$3 -noappend -all-root
|
||||||
# $ROOT/$TOOLCHAIN/bin/mkfs.axfs $INSTALL openelec.$2
|
# $ROOT/$TOOLCHAIN/bin/mkfs.axfs $INSTALL openelec.$3
|
||||||
;;
|
;;
|
||||||
|
|
||||||
qemu)
|
qemu)
|
||||||
@ -107,18 +107,18 @@ case "$2" in
|
|||||||
$SCRIPTS/install image system
|
$SCRIPTS/install image system
|
||||||
|
|
||||||
mkdir -p $ROOT/target
|
mkdir -p $ROOT/target
|
||||||
rm -rf $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/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.flash 64M
|
qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash 64M
|
||||||
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.flash
|
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash
|
||||||
|
|
||||||
mkdir -p $ROOT/.tmp
|
mkdir -p $ROOT/.tmp
|
||||||
sudo mount -o loop $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.flash $ROOT/.tmp
|
sudo mount -o loop $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.flash $ROOT/.tmp
|
||||||
cp -R $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION.system $ROOT/.tmp/openelec.system
|
cp -R $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION.system $ROOT/.tmp/openelec.system
|
||||||
sudo umount $ROOT/.tmp
|
sudo umount $ROOT/.tmp
|
||||||
|
|
||||||
rm -rf $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/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.store 40M
|
qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.store 40M
|
||||||
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/$PROJECT-$MEDIACENTER-$OPENELEC_VERSION-qemu.store
|
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$OPENELEC_VERSION-qemu.store
|
||||||
|
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
2181
projects/cx700/linux/linux.i386.conf
Normal file
2181
projects/cx700/linux/linux.i386.conf
Normal file
File diff suppressed because it is too large
Load Diff
12
projects/cx700/options
Normal file
12
projects/cx700/options
Normal 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
|
||||||
|
|
2720
projects/generic/linux/linux.i386.conf
Normal file
2720
projects/generic/linux/linux.i386.conf
Normal file
File diff suppressed because it is too large
Load Diff
12
projects/generic/options
Normal file
12
projects/generic/options
Normal 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"
|
||||||
|
|
2181
projects/jetway_j7f5m/linux/linux.i386.conf
Normal file
2181
projects/jetway_j7f5m/linux/linux.i386.conf
Normal file
File diff suppressed because it is too large
Load Diff
12
projects/jetway_j7f5m/options
Normal file
12
projects/jetway_j7f5m/options
Normal 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
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user