From 46c7ae687e7a2e94bf3f1bab42aa68ff194da3af Mon Sep 17 00:00:00 2001 From: John Ogness Date: Fri, 2 Nov 2018 09:43:42 +0106 Subject: layer-building: add scripts to automatically build yocto layers The yocto training requires a lot of data to be prebuilt/downloaded (about 15GB). These scripts can be used to automatically download/prebuild all that data and create the various layer tarballs. Signed-off-by: John Ogness --- schulung_tools/layer-building/yocto/build-yocto.sh | 56 ++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100755 schulung_tools/layer-building/yocto/build-yocto.sh (limited to 'schulung_tools/layer-building/yocto/build-yocto.sh') 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/ -- cgit v1.2.3