summaryrefslogtreecommitdiffstats
path: root/scripts/bitbake
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/bitbake')
-rwxr-xr-xscripts/bitbake21
1 files changed, 19 insertions, 2 deletions
diff --git a/scripts/bitbake b/scripts/bitbake
index 39d5957078..3923421cec 100755
--- a/scripts/bitbake
+++ b/scripts/bitbake
@@ -16,10 +16,23 @@ done
16[ $needpseudo = "0" ] && break 16[ $needpseudo = "0" ] && break
17done 17done
18 18
19needtar="1"
20TARVERSION=`tar --version | head -n 1 | cut -d ' ' -f 4`
21float_test() {
22 echo | awk 'END { exit ( !( '"$1"')); }'
23}
24
25# Tar version 1.24 and onwards handle symlinks in sstate packages correctly
26# but earlier versions do not
27float_test "$TARVERSION > 1.23" && needtar="0"
28
19buildpseudo="1" 29buildpseudo="1"
20if [ $needpseudo = "1" ] && [ -e "$BUILDDIR/pseudodone" ]; then 30if [ $needpseudo = "1" ] && [ -e "$BUILDDIR/pseudodone" ]; then
21 PSEUDOBINDIR=`cat $BUILDDIR/pseudodone` 31 PSEUDOBINDIR=`cat $BUILDDIR/pseudodone`
22 if [ -e "$PSEUDOBINDIR/pseudo" -a -e "$PSEUDOBINDIR/tar" ]; then 32 if [ -e "$PSEUDOBINDIR/pseudo" -a -e "$PSEUDOBINDIR/tar" -a "$needtar" = "1" ]; then
33 buildpseudo="0"
34 fi
35 if [ -e "$PSEUDOBINDIR/pseudo" -a $needtar = "0" ]; then
23 buildpseudo="0" 36 buildpseudo="0"
24 fi 37 fi
25fi 38fi
@@ -32,7 +45,11 @@ export PATH=`echo $PATH | sed s#[^:]*/scripts:##`
32if [ $buildpseudo = "1" ]; then 45if [ $buildpseudo = "1" ]; then
33 echo "Pseudo is not present but is required, building this first before the main build" 46 echo "Pseudo is not present but is required, building this first before the main build"
34 export PSEUDO_BUILD=1 47 export PSEUDO_BUILD=1
35 bitbake pseudo-native tar-replacement-native -c populate_sysroot 48 TARTARGET="tar-replacement-native"
49 if [ $needtar = "0" ]; then
50 TARTARGET=""
51 fi
52 bitbake pseudo-native $TARTARGET -c populate_sysroot
36 ret=$? 53 ret=$?
37 if [ "$ret" != "0" ]; then 54 if [ "$ret" != "0" ]; then
38 exit 1 55 exit 1