bitbake 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #!/bin/sh
  2. NO_BUILD_OPTS="--version -h --help -p --parse-only -s --show-versions -e --environment"
  3. needpseudo="1"
  4. for opt in $@; do
  5. for key in $NO_BUILD_OPTS; do
  6. if [ $opt = $key ]
  7. then
  8. needpseudo="0"
  9. break
  10. fi
  11. done
  12. [ $needpseudo = "0" ] && break
  13. done
  14. buildpseudo="1"
  15. if [ $needpseudo = "1" ] && [ -e "$BUILDDIR/pseudodone" ]; then
  16. PSEUDOBINDIR=`cat $BUILDDIR/pseudodone`
  17. if [ -e "$PSEUDOBINDIR/pseudo" -a -e "$PSEUDOBINDIR/tar" ]; then
  18. buildpseudo="0"
  19. fi
  20. fi
  21. if [ $needpseudo = "0" ]; then
  22. buildpseudo="0"
  23. fi
  24. OLDPATH=$PATH
  25. export PATH=`echo $PATH | sed s#[^:]*/scripts:##`
  26. if [ $buildpseudo = "1" ]; then
  27. echo "Pseudo is not present but is required, building this first before the main build"
  28. export PSEUDO_BUILD=1
  29. bitbake pseudo-native tar-replacement-native -c populate_sysroot
  30. ret=$?
  31. if [ "$ret" != "0" ]; then
  32. exit 1
  33. fi
  34. PSEUDOBINDIR=`bitbake -e | grep STAGING_BINDIR_NATIVE=\" | cut -d '=' -f2 | cut -d '"' -f2`
  35. ret=$?
  36. if [ "$ret" != "0" ]; then
  37. exit 1
  38. fi
  39. echo $PSEUDOBINDIR > $BUILDDIR/pseudodone
  40. # This needs to exist in case pseudo has to log somewhere
  41. mkdir -p $PSEUDOBINDIR/../../var/pseudo
  42. fi
  43. BITBAKE=`which bitbake`
  44. export PATH=$OLDPATH
  45. if [ $needpseudo = "1" ]; then
  46. export PSEUDO_BUILD=2
  47. PSEUDOBINDIR=`cat $BUILDDIR/pseudodone`
  48. PSEUDO_BINDIR=$PSEUDOBINDIR PSEUDO_LIBDIR=$PSEUDOBINDIR/../lib/pseudo/lib PSEUDO_PREFIX=$PSEUDOBINDIR/../../ PSEUDO_DISABLED=1 $PSEUDOBINDIR/pseudo $BITBAKE $@
  49. else
  50. export PSEUDO_BUILD=0
  51. $BITBAKE $@
  52. fi
  53. ret=$?
  54. exit $ret