mirror of
https://github.com/archr-linux/Arch-R.git
synced 2026-03-31 14:41:55 -07:00
- adding eglibc as default libc, with this some bugs are fixed. We also can use binary drivers and can have vdpau support (will be included later).
113 lines
3.8 KiB
Bash
Executable File
113 lines
3.8 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
. config/options
|
|
|
|
PKG_DIR=`find $PACKAGES -type d -name $1`
|
|
|
|
BUILD_DATE=`date +%Y%m%d`
|
|
BZR_BUILD=`bzr version-info --custom --template={revno}`
|
|
|
|
[ "$OPENELEC_VERSION" = devel ] && \
|
|
OPENELEC_VERSION=$OPENELEC_VERSION-$BUILD_DATE-r$BZR_BUILD
|
|
[ "$OPENELEC_VERSION" = debug ] && \
|
|
OPENELEC_VERSION=$OPENELEC_VERSION-$BUILD_DATE-r$BZR_BUILD
|
|
|
|
case "$2" in
|
|
system)
|
|
|
|
$SCRIPTS/install squashfs
|
|
$SCRIPTS/build fakeroot
|
|
|
|
export INSTALL=$BUILD/$1/$2
|
|
|
|
rm -rf $ROOT/.fakeroot # remove /.fakeroot if it exist
|
|
touch $ROOT/.fakeroot # create an empty /.fakeroot
|
|
chmod +x $ROOT/.fakeroot # make /.fakeroot executable
|
|
echo "chown -R 0:0 $INSTALL" >> $ROOT/.fakeroot
|
|
|
|
rm -rf $INSTALL
|
|
mkdir -p $INSTALL
|
|
|
|
mkdir -p $INSTALL/bin
|
|
mkdir -p $INSTALL/etc
|
|
mkdir -p $INSTALL/lib
|
|
mkdir -p $INSTALL/sbin
|
|
mkdir -p $INSTALL/dev
|
|
mkdir -p $INSTALL/proc
|
|
mkdir -p $INSTALL/sys
|
|
mkdir -p $INSTALL/usr
|
|
mkdir -p $INSTALL/var
|
|
mkdir -p $INSTALL/flash
|
|
mkdir -p $INSTALL/storage
|
|
|
|
ln -sf /var $INSTALL/usr/var
|
|
ln -sf /var/tmp $INSTALL/tmp
|
|
ln -sf /var/media $INSTALL/media
|
|
|
|
# Basissystem...
|
|
$SCRIPTS/install $TARGET_LIBC
|
|
$SCRIPTS/install gcc-final
|
|
$SCRIPTS/install linux $2
|
|
$SCRIPTS/install busybox
|
|
$SCRIPTS/install util-linux-ng
|
|
|
|
echo $TARGET_ARCH > $INSTALL/etc/arch
|
|
echo "$OPENELEC_VERSION" > $INSTALL/etc/version
|
|
echo "OpenELEC.tv - Date of build: $BUILD_DATE Build: $BZR_BUILD" > $INSTALL/etc/openelec-release
|
|
|
|
# Network support
|
|
[ "$NETWORK" = yes ] && $SCRIPTS/install network
|
|
|
|
# Graphic support
|
|
[ ! "$DISPLAYSERVER" = no ] && $SCRIPTS/install $DISPLAYSERVER
|
|
|
|
# Multimedia support
|
|
[ ! "$MEDIACENTER" = no ] && $SCRIPTS/install mediacenter
|
|
|
|
# Games support
|
|
[ "$GAMES" = yes ] && $SCRIPTS/install games
|
|
[ "$EMULATORS" = yes ] && $SCRIPTS/install emulators
|
|
|
|
# Devtools... (not for Release)
|
|
[ "$DEVTOOLS" = yes ] && $SCRIPTS/install debug
|
|
|
|
# Devtools for Coreboot... (not for Release)
|
|
[ "$COREBOOT" = yes ] && $SCRIPTS/install superiotool
|
|
[ "$COREBOOT" = yes ] && $SCRIPTS/install flashrom
|
|
[ "$COREBOOT" = yes ] && $SCRIPTS/install getpir
|
|
|
|
# setting up hostname
|
|
echo "127.0.0.1 mobile.openelec.tv localhost" > $INSTALL/etc/hosts
|
|
|
|
mkdir -p $ROOT/target
|
|
rm -rf $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.kernel
|
|
cp -PR $BUILD/linux-*/arch/x86/boot/bzImage $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.kernel
|
|
|
|
echo "rm -rf $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.system" >> $ROOT/.fakeroot
|
|
echo "$ROOT/$TOOLCHAIN/bin/mksquashfs $INSTALL $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.system -noappend" >> $ROOT/.fakeroot
|
|
$ROOT/$TOOLCHAIN/bin/fakeroot -- $ROOT/.fakeroot
|
|
chmod 0644 $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.system
|
|
rm -rf $ROOT/.fakeroot
|
|
;;
|
|
|
|
qemu)
|
|
|
|
$SCRIPTS/install image system
|
|
|
|
mkdir -p $ROOT/target
|
|
rm -rf $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.flash
|
|
qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.flash 128M
|
|
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.flash
|
|
|
|
mkdir -p $ROOT/.tmp
|
|
sudo mount -o loop $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.flash $ROOT/.tmp
|
|
cp -R $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION.system $ROOT/.tmp/openelec.system
|
|
sudo umount $ROOT/.tmp
|
|
|
|
rm -rf $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.store
|
|
qemu-img create -f raw $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.store 40M
|
|
/sbin/mkfs.ext3 -L OpenELEC -F $ROOT/target/OpenELEC-$PROJECT-$TARGET_LIBC-$OPENELEC_VERSION-qemu.store
|
|
;;
|
|
|
|
esac
|