Merge branch 'mach_kernel' of git://github.com/travisghansen/OpenELEC.tv

This commit is contained in:
Stephan Raue 2011-05-19 09:19:57 +02:00
commit 97da4b9fda
11 changed files with 256 additions and 2 deletions

View File

@ -36,5 +36,5 @@ PKG_IS_ADDON="no"
PKG_AUTORECONF="no"
if [ "$HFSTOOLS" = "yes" ]; then
PKG_DEPENDS="$PKG_DEPENDS diskdev_cmds-initramfs"
PKG_DEPENDS="$PKG_DEPENDS diskdev_cmds-initramfs util-linux-initramfs"
fi

View File

@ -115,8 +115,26 @@ REBOOT="0"
fi
}
hfsdiskprep() {
for DEV in `/bin/busybox ls /dev/sd*`; do
FS_TYPE=$(/sbin/blkid -o value -s TYPE $DEV)
if [ "$FS_TYPE" = "hfs" -o "$FS_TYPE" = "hfsplus" ]; then
/sbin/fsck_hfs -r -y $DEV > /dev/null 2>&1
fi
done
}
# deal with hfs partitions
if [ -x /sbin/fsck_hfs ]; then
hfsdiskprep
fi
mount_part "$boot" "/flash" "ro,noatime"
if [ -f "/flash/atv_single_boot" ]; then
IMAGE_KERNEL="MACH_KERNEL"
fi
show_splash
if [ -n "$disk" ]; then

View File

@ -0,0 +1,28 @@
#!/bin/sh
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
. config/options $1
UTIL_LINUX_DIR="$BUILD/util-linux-*"
mkdir -p $INSTALL/sbin
cp $UTIL_LINUX_DIR/misc-utils/blkid $INSTALL/sbin

View File

@ -0,0 +1,36 @@
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
PKG_NAME="util-linux-initramfs"
PKG_VERSION=""
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="APSL"
PKG_SITE="http://userweb.kernel.org/~kzak/util-linux-ng/"
PKG_URL=""
PKG_DEPENDS=""
PKG_BUILD_DEPENDS="toolchain util-linux"
PKG_PRIORITY="optional"
PKG_SECTION="initramfs/system"
PKG_SHORTDESC="util-linux: Miscellaneous system utilities for Linux"
PKG_LONGDESC="The util-linux package contains a large variety of low-level system utilities that are necessary for a Linux system to function. Among many features, Util-linux contains the fdisk configuration tool and the login program."
PKG_IS_ADDON="no"
PKG_AUTORECONF="no"

View File

@ -0,0 +1,29 @@
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
#      Copyright (C) 2010-2011 Roman Weber (roman@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
SUBSYSTEM!="block", GOTO="end"
ACTION!="add", GOTO="end"
ACTION=="add", IMPORT{program}="/sbin/blkid -o udev -p %N"
ACTION=="add", ENV{ID_FS_TYPE}=="hfs|hfsplus", RUN+="/usr/sbin/fsck.hfsplus -r -y /dev/%k"
# exit
LABEL="end"

View File

@ -0,0 +1,36 @@
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
PKG_NAME="darwin-cross"
PKG_VERSION=""
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://gcc.gnu.org/"
PKG_URL="http://atv-bootloader.googlecode.com/files/$PKG_NAME.tar.gz"
PKG_DEPENDS=""
PKG_BUILD_DEPENDS=""
PKG_PRIORITY="optional"
PKG_SECTION="toolchain/toolchains"
PKG_SHORTDESC="darwin-cross: darwin gcc etc"
PKG_LONGDESC="This package contains the GNU Compiler Collection to build for darwin systems"
PKG_IS_ADDON="no"
PKG_AUTORECONF="no"

View File

@ -0,0 +1,27 @@
#!/bin/sh
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
. config/options $1
tar -xzf "${PKG_BUILD}/darwin-cross.tar.gz" -C "${PKG_BUILD}"
mv "${PKG_BUILD}/darwin-cross/"* "${PKG_BUILD}"

View File

@ -0,0 +1,39 @@
#!/bin/sh
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
. config/options $1
get_version
cd $PKG_BUILD
TOOLS_PREFIX="$ROOT/$BUILD"
sed -i -e "s:/opt:$TOOLS_PREFIX:" Makefile
cp -PR $ROOT/$BUILD/linux-*/arch/x86/boot/bzImage vmlinuz
make clean
make LDFLAGS=""
cp -PR mach_kernel $TARGET_IMG/$DISTRONAME-$TARGET_VERSION.mach_kernel
chmod 0644 $TARGET_IMG/$DISTRONAME-$TARGET_VERSION.mach_kernel

View File

@ -0,0 +1,36 @@
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
PKG_NAME="atv-bootloader"
PKG_VERSION="r518"
PKG_REV="1"
PKG_ARCH="i386 x86_64"
PKG_LICENSE="GPL"
PKG_SITE="http://code.google.com/p/atv-bootloader/"
PKG_URL="http://travisghansen.openelec.tv/sources/$PKG_NAME-$PKG_VERSION.tar.gz"
PKG_DEPENDS=""
PKG_BUILD_DEPENDS="darwin-cross linux"
PKG_PRIORITY="optional"
PKG_SECTION="tools"
PKG_SHORTDESC="atv-bootloader: Tool to create a mach_kernel compaitible kernel image"
PKG_LONGDESC="atv-bootloader which uses principals from mach_linux_boot to boot a compiled-in Linux kernel"
PKG_IS_ADDON="no"
PKG_AUTORECONF="no"

View File

@ -78,7 +78,7 @@
PROJECT_CFLAGS=""
# Bootloader to use (syslinux / u-boot)
BOOTLOADER=""
BOOTLOADER="atv-bootloader"
# Configuration for u-boot
UBOOT_CONFIG=""

View File

@ -47,10 +47,15 @@ mkdir -p $TARGET_IMG
fi
cp -PR $BUILD/linux-*/arch/$KERNEL_ARCH/boot/$KERNEL_IMAGE $TARGET_IMG/$DISTRONAME-$TARGET_VERSION.kernel
if [ "$BOOTLOADER" = "atv-bootloader" ]; then
$SCRIPTS/build atv-bootloader
fi
echo "rm -rf $TARGET_IMG/$DISTRONAME-$TARGET_VERSION.system" >> $FAKEROOT_SCRIPT
# echo "$ROOT/$TOOLCHAIN/bin/mksquashfs $BUILD/image/system $TARGET_IMG/$DISTRONAME-$TARGET_VERSION.system -noappend -comp xz" >> $FAKEROOT_SCRIPT
echo "$ROOT/$TOOLCHAIN/bin/mksquashfs $BUILD/image/system $TARGET_IMG/$DISTRONAME-$TARGET_VERSION.system -noappend" >> $FAKEROOT_SCRIPT
$ROOT/$TOOLCHAIN/bin/fakeroot -- $FAKEROOT_SCRIPT
chmod 0644 $TARGET_IMG/$DISTRONAME-$TARGET_VERSION.system
chmod 0644 $TARGET_IMG/$DISTRONAME-$TARGET_VERSION.kernel
rm -rf $FAKEROOT_SCRIPT