From 84fa57bd27e7326d68fb8e5c065c4e4637baabfc Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Wed, 17 Sep 2014 09:18:47 +0300 Subject: Init script can now be used to update meta layer repos With --force argument, the b2qt-init-build-env script can be used to update already checked out meta layer repos to updated SHA1s Change-Id: I123714da29fa19eb8adc76a811a6daddab6f217d Reviewed-by: Eirik Aavitsland --- b2qt-init-build-env | 37 +++++++++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 10 deletions(-) (limited to 'b2qt-init-build-env') diff --git a/b2qt-init-build-env b/b2qt-init-build-env index 29657a0..1d598a5 100755 --- a/b2qt-init-build-env +++ b/b2qt-init-build-env @@ -23,15 +23,28 @@ set -e -if [ $# -ne 1 ]; then - echo "Usage: $0 " - exit 1 -fi +usage() { + echo "Usage: $0 [--force]" +} -mkdir -p ${1} +while test -n "$1"; do + case "$1" in + "--help" | "-h") + usage + exit 0 + ;; + "--force" | "-f") + FORCE_UPDATE=1 + ;; + *) + BUILDDIR=$1 + ;; + esac + shift +done DIR=$(readlink -f $(dirname $0)) -BUILDDIR=$(readlink -f $1) +BUILDDIR=$(readlink -f $BUILDDIR) checkout() { REPO=$1 @@ -41,14 +54,18 @@ checkout() { fi REF=${2%%:*} SHA1=${2##*:} - if [ ! -d ${BUILDDIR}/${REPODIR} ]; then - mkdir ${BUILDDIR}/${REPODIR} - cd ${BUILDDIR}/${REPODIR} + mkdir -p ${BUILDDIR}/${REPODIR} + cd ${BUILDDIR}/${REPODIR} + if [ ! -d ${BUILDDIR}/${REPODIR}/.git ]; then + echo "Checking out ${REPODIR}" git init git remote add origin ${REPO} -f git checkout ${REF} git reset --hard ${SHA1} - cd - + elif [ -n "${FORCE_UPDATE}" ]; then + echo "Updating ${REPODIR}" + git fetch origin + git reset --hard ${SHA1} fi } -- cgit v1.2.3-54-g00ecf