diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-07-17 12:59:28 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-07-18 14:28:44 +0100 |
commit | 269f3b3cfacaf229d5e45177ee01b16561370ee3 (patch) | |
tree | 2a900aa6920e0288ae452f9a17dd828d1d1954ee /scripts | |
parent | 11711d5d040e6456ac43f8800b535fe5946144cf (diff) | |
download | openembedded-core-269f3b3cfacaf229d5e45177ee01b16561370ee3.tar.gz openembedded-core-269f3b3cfacaf229d5e45177ee01b16561370ee3.tar.bz2 openembedded-core-269f3b3cfacaf229d5e45177ee01b16561370ee3.zip |
scripts/bitbake: Check the git-native version and build it if necessary
We require git version 1.7.5 or later for the git remote --mirror=xxx syntax.
If we have an older version of git, this patch ensure we build git-replacement-native.
We add an alternative PROVIDES in the same way as tar-native to allow this script
to trigger the build whilst still allowing git-native in ASSUME_PROVIDED.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/bitbake | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/scripts/bitbake b/scripts/bitbake index 3772d826fe..580f377a61 100755 --- a/scripts/bitbake +++ b/scripts/bitbake @@ -58,7 +58,9 @@ elif [ -z "$BUILDDIR" ] ; then fi needtar="1" +needgit="1" TARVERSION=`tar --version | head -n 1 | cut -d ' ' -f 4` +GITVERSION=`git --version | cut -d ' ' -f 3` float_test() { echo | awk 'END { exit ( !( '"$1"')); }' } @@ -67,6 +69,10 @@ float_test() { # but earlier versions do not; this needs to work properly for sstate float_test "$TARVERSION > 1.23" && needtar="0" +# Need git >= 1.7.5 for git-remote --mirror=xxx syntax +float_test "$GITVERSION >= 1.7.5" && needgit="0" + + buildpseudo="1" if [ $needpseudo = "1" ]; then if [ -e "$BUILDDIR/pseudodone" ]; then @@ -97,6 +103,10 @@ fi if [ -e "$PSEUDOBINDIR/tar" -a "$needtar" = "1" ]; then needtar="0" fi +# If git is already built, we don't want to do it again... +if [ -e "$PSEUDOBINDIR/git" -a "$needgit" = "1" ]; then + needgit="0" +fi if [ $needpseudo = "0" ]; then buildpseudo="0" @@ -123,6 +133,11 @@ if [ $buildpseudo -gt 0 ]; then if [ $needtar = "0" ]; then TARTARGET="" fi + GITTARGET="git-replacement-native" + if [ $needgit = "0" ]; then + GITTARGET="" + fi + # Pass through debug options additionalopts="" for opt in $@; do @@ -134,7 +149,7 @@ if [ $buildpseudo -gt 0 ]; then fi done done - bitbake pseudo-native $TARTARGET $additionalopts -c populate_sysroot + bitbake pseudo-native $TARTARGET $GITTARGET $additionalopts -c populate_sysroot ret=$? if [ "$ret" != "0" ]; then exit 1 |