From 127f5c9d7e8ee5a9389b79e3b9c864b39a82085f Mon Sep 17 00:00:00 2001 From: Oliver Grawert Date: Mon, 15 Apr 2013 20:21:27 +0200 Subject: [PATCH] redo ubuntu-touch-android.sh to use its own build chroot since we can not add universe to the livefs builder root --- debian/changelog | 7 ++++++ ubuntu-touch-android.sh | 52 +++++++++++++++++++++++++++++------------ 2 files changed, 44 insertions(+), 15 deletions(-) diff --git a/debian/changelog b/debian/changelog index 30e79f45..487c01da 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +livecd-rootfs (2.122) UNRELEASED; urgency=low + + * redo ubuntu-touch-android.sh to use its own build chroot since we can not + add universe support to the livefs builder chroot + + -- Oliver Grawert Mon, 15 Apr 2013 20:18:32 +0200 + livecd-rootfs (2.121) raring; urgency=low * ubuntu-touch-android.sh: enable universe in the build chroot diff --git a/ubuntu-touch-android.sh b/ubuntu-touch-android.sh index 727a2b81..f832ee7d 100755 --- a/ubuntu-touch-android.sh +++ b/ubuntu-touch-android.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/sh set -e @@ -8,33 +8,55 @@ release=raring [ "$(dpkg --print-architecture)" = "amd64" ] || exit 1 -# enable universe in the build chroot -grep -q universe /etc/apt/sources.list || echo "deb http://ftpmaster.internal/ubuntu $release universe" >>/etc/apt/sources.list - -# set up multiarch -dpkg --print-foreign-architectures | grep -q i386 || dpkg --add-architecture i386 -apt-get update +# set up a build chroot +case $(hostname --fqdn) in + *.buildd) + MIRROR=http://ftpmaster.internal/ubuntu + ;; + *) + MIRROR=http://archive.ubuntu.com/ubuntu + ;; +esac +debootstrap --omponents=ain,universe $release $builddir $MIRROR + +mount -t devpts devpts-$builddir $builddir/dev/pts +chroot mount -t proc proc-$builddir /proc +chroot mount -t sysfs sys-$builddir /sys + +# set up multiarch inside the chroot +chroot $builddir dpkg --add-architecture i386 +chroot $builddir apt-get update # add cross build env including the needed i386 packages -apt-get -y install git gnupg flex bison gperf build-essential \ +chroot $builddir apt-get -y install git gnupg flex bison gperf build-essential \ zip bzr curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \ libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \ libgl1-mesa-dev g++-multilib mingw32 tofrodos phablet-tools \ python-markdown libxml2-utils xsltproc zlib1g-dev:i386 schedtool \ openjdk-6-jdk -# get the git tree -phablet-dev-bootstrap -v $codename $builddir +# create an in chroot script to get the git tree and build it +cat << 'EOF' > $builddir/build-android.sh +#!/bin/bash +phablet-dev-bootstrap -v $codename $builddir cd $builddir repo sync - . build/envsetup.sh brunch $codename +EOF + +chmod +x $builddir/build-android.sh + +chroot $builddir /build-android.sh -cd - -cp $builddir/out/target/product/$codename/*-$codename.zip ./livecd.ubuntu-touch-$codename.zip +cp $builddir/$builddir/out/target/product/$codename/*-$codename.zip ./livecd.ubuntu-touch-$codename.zip for image in system recovery boot; do - cp $builddir/out/target/product/$codename/$image.img ./livecd.ubuntu-touch-$codename.$image.img + cp $builddir/$builddir/out/target/product/$codename/$image.img ./livecd.ubuntu-touch-$codename.$image.img done -rm -rf $buildir + +umount $builddir/sys +umount $builddir/proc +umount $builddir/dev/pts + +rm -rf $builddir