* [PATCH] scripts/bitbake: Check the git-native version and build it if necessary
@ 2012-07-17 11:59 Richard Purdie
0 siblings, 0 replies; only message in thread
From: Richard Purdie @ 2012-07-17 11:59 UTC (permalink / raw)
To: openembedded-core
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>
---
diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc
index ce2f574..6748b70 100644
--- a/meta/recipes-devtools/git/git.inc
+++ b/meta/recipes-devtools/git/git.inc
@@ -3,6 +3,8 @@ SECTION = "console/utils"
LICENSE = "GPLv2"
DEPENDS = "openssl curl zlib expat"
+PROVIDES_append_virtclass-native = " git-replacement-native"
+
SRC_URI = "${KERNELORG_MIRROR}/software/scm/git/git-${PV}.tar.bz2 "
S = "${WORKDIR}/git-${PV}"
diff --git a/scripts/bitbake b/scripts/bitbake
index 3772d82..580f377 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
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2012-07-17 12:10 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-17 11:59 [PATCH] scripts/bitbake: Check the git-native version and build it if necessary Richard Purdie
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.