diff options
Diffstat (limited to 'scripts/bitbake')
| -rwxr-xr-x | scripts/bitbake | 21 |
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 |
| 17 | done | 17 | done |
| 18 | 18 | ||
| 19 | needtar="1" | ||
| 20 | TARVERSION=`tar --version | head -n 1 | cut -d ' ' -f 4` | ||
| 21 | float_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 | ||
| 27 | float_test "$TARVERSION > 1.23" && needtar="0" | ||
| 28 | |||
| 19 | buildpseudo="1" | 29 | buildpseudo="1" |
| 20 | if [ $needpseudo = "1" ] && [ -e "$BUILDDIR/pseudodone" ]; then | 30 | if [ $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 |
| 25 | fi | 38 | fi |
| @@ -32,7 +45,11 @@ export PATH=`echo $PATH | sed s#[^:]*/scripts:##` | |||
| 32 | if [ $buildpseudo = "1" ]; then | 45 | if [ $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 |
