summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xb2qt-init-build-env37
1 files changed, 27 insertions, 10 deletions
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 @@
23 23
24set -e 24set -e
25 25
26if [ $# -ne 1 ]; then 26usage() {
27 echo "Usage: $0 <yocto build directory>" 27 echo "Usage: $0 <yocto build directory> [--force]"
28 exit 1 28}
29fi
30 29
31mkdir -p ${1} 30while test -n "$1"; do
31 case "$1" in
32 "--help" | "-h")
33 usage
34 exit 0
35 ;;
36 "--force" | "-f")
37 FORCE_UPDATE=1
38 ;;
39 *)
40 BUILDDIR=$1
41 ;;
42 esac
43 shift
44done
32 45
33DIR=$(readlink -f $(dirname $0)) 46DIR=$(readlink -f $(dirname $0))
34BUILDDIR=$(readlink -f $1) 47BUILDDIR=$(readlink -f $BUILDDIR)
35 48
36checkout() { 49checkout() {
37 REPO=$1 50 REPO=$1
@@ -41,14 +54,18 @@ checkout() {
41 fi 54 fi
42 REF=${2%%:*} 55 REF=${2%%:*}
43 SHA1=${2##*:} 56 SHA1=${2##*:}
44 if [ ! -d ${BUILDDIR}/${REPODIR} ]; then 57 mkdir -p ${BUILDDIR}/${REPODIR}
45 mkdir ${BUILDDIR}/${REPODIR} 58 cd ${BUILDDIR}/${REPODIR}
46 cd ${BUILDDIR}/${REPODIR} 59 if [ ! -d ${BUILDDIR}/${REPODIR}/.git ]; then
60 echo "Checking out ${REPODIR}"
47 git init 61 git init
48 git remote add origin ${REPO} -f 62 git remote add origin ${REPO} -f
49 git checkout ${REF} 63 git checkout ${REF}
50 git reset --hard ${SHA1} 64 git reset --hard ${SHA1}
51 cd - 65 elif [ -n "${FORCE_UPDATE}" ]; then
66 echo "Updating ${REPODIR}"
67 git fetch origin
68 git reset --hard ${SHA1}
52 fi 69 fi
53} 70}
54 71