summaryrefslogtreecommitdiff
path: root/schulung_tools/layer-building/yocto/build-yocto.sh
diff options
context:
space:
mode:
Diffstat (limited to 'schulung_tools/layer-building/yocto/build-yocto.sh')
-rwxr-xr-xschulung_tools/layer-building/yocto/build-yocto.sh56
1 files changed, 56 insertions, 0 deletions
diff --git a/schulung_tools/layer-building/yocto/build-yocto.sh b/schulung_tools/layer-building/yocto/build-yocto.sh
new file mode 100755
index 0000000..323941e
--- /dev/null
+++ b/schulung_tools/layer-building/yocto/build-yocto.sh
@@ -0,0 +1,56 @@
+#!/bin/bash
+set -x
+set -e
+
+test $# -eq 1 || exit 1
+test -w /home/prebuilt || exit 1
+test -w /home/downloads || exit 1
+test -d /opt/mirrors/poky.git || exit 1
+
+MACHINE=$1
+
+setup_extra() {
+ echo -n
+}
+
+build_extra() {
+ echo -n
+}
+
+test ! -f machines/$MACHINE.source || . ./machines/$MACHINE.source
+
+mkdir -p ~/yocto/source ~/yocto/build
+
+DOCHECKOUT=0
+if [ ! -d ~/yocto/source/poky ]; then
+ git clone -b yocto-2.5.1 /opt/mirrors/poky.git ~/yocto/source/poky
+ DOCHECKOUT=1
+fi
+cd ~/yocto/source/poky
+if [ $DOCHECKOUT -eq 1 ]; then
+ git checkout -b yocto-2.5.1-schulung
+fi
+
+. ./oe-init-build-env ~/yocto/build/$MACHINE
+
+cp conf/local.conf.orig conf/local.conf || cp conf/local.conf conf/local.conf.orig
+cat << EOF >> conf/local.conf
+
+MACHINE = "$MACHINE"
+DL_DIR = "/home/downloads"
+#BB_NO_NETWORK = "1"
+PACKAGE_CLASSES = "package_ipk"
+SSTATE_DIR = "/home/prebuilt/$MACHINE/sstate-cache"
+EOF
+
+setup_extra
+
+bitbake meta-toolchain
+bitbake meta-ide-support
+bitbake core-image-minimal
+bitbake -c populate_sdk core-image-minimal
+
+build_extra
+
+cp conf/bblayers.conf /home/prebuilt/$MACHINE/
+cp conf/local.conf /home/prebuilt/$MACHINE/