setup.sh 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. #!/bin/bash
  2. # Bootstrapper for buildbot slave
  3. DIR="build"
  4. MACHINE="qemucsky32"
  5. CONFFILE="conf/auto.conf"
  6. BITBAKEIMAGE="core-image-full-cmdline"
  7. # make sure sstate is there
  8. #echo "Creating sstate directory"
  9. #mkdir -p ~/sstate/$MACHINE
  10. # fix permissions set by buildbot
  11. #echo "Fixing permissions for buildbot"
  12. #umask -S u=rwx,g=rx,o=rx
  13. #chmod -R 755 .
  14. # Reconfigure dash on debian-like systems
  15. which aptitude > /dev/null 2>&1
  16. ret=$?
  17. if [ "$(readlink /bin/sh)" = "dash" -a "$ret" = "0" ]; then
  18. sudo aptitude install expect -y
  19. expect -c 'spawn sudo dpkg-reconfigure -freadline dash; send "n\n"; interact;'
  20. elif [ "${0##*/}" = "dash" ]; then
  21. echo "dash as default shell is not supported"
  22. return
  23. fi
  24. # bootstrap OE
  25. echo "Init OE"
  26. export BASH_SOURCE="openembedded-core/oe-init-build-env"
  27. . ./openembedded-core/oe-init-build-env $DIR
  28. # Symlink the cache
  29. #echo "Setup symlink for sstate"
  30. #ln -s ~/sstate/${MACHINE} sstate-cache
  31. # add the missing layers
  32. echo "Adding layers"
  33. bitbake-layers add-layer ../meta-openembedded/meta-oe
  34. bitbake-layers add-layer ../meta-openembedded/meta-python
  35. bitbake-layers add-layer ../meta-openembedded/meta-multimedia
  36. bitbake-layers add-layer ../meta-openembedded/meta-networking
  37. bitbake-layers add-layer ../meta-external-toolchain
  38. bitbake-layers add-layer ../meta-csky
  39. # fix the configuration
  40. echo "Creating auto.conf"
  41. if [ -e $CONFFILE ]; then
  42. rm -rf $CONFFILE
  43. fi
  44. cat <<EOF > $CONFFILE
  45. MACHINE ?= "${MACHINE}"
  46. #IMAGE_FEATURES += "tools-debug"
  47. #IMAGE_FEATURES += "tools-tweaks"
  48. #IMAGE_FEATURES += "dbg-pkgs"
  49. # rootfs for debugging
  50. #IMAGE_GEN_DEBUGFS = "1"
  51. #IMAGE_FSTYPES_DEBUGFS = "tar.gz"
  52. EXTRA_IMAGE_FEATURES_append = " ssh-server-dropbear"
  53. EXTRA_IMAGE_FEATURES_append = " package-management"
  54. PACKAGECONFIG_append_pn-qemu-native = " sdl"
  55. PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
  56. USER_CLASSES ?= "buildstats buildhistory buildstats-summary image-mklibs image-prelink"
  57. require conf/distro/include/no-static-libs.inc
  58. require conf/distro/include/yocto-uninative.inc
  59. require conf/distro/include/security_flags.inc
  60. INHERIT += "uninative"
  61. DISTRO_FEATURES_append = " largefile opengl ptest multiarch wayland pam systemd "
  62. DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit"
  63. VIRTUAL-RUNTIME_init_manager = "systemd"
  64. HOSTTOOLS_NONFATAL_append = " ssh"
  65. DISTRO_FEATURES_BACKFILL_CONSIDERED += "gobject-introspection-data"
  66. EOF
  67. echo "To build an image run"
  68. echo "---------------------------------------------------"
  69. echo "MACHINE=qemucsky bitbake core-image-full-cmdline"
  70. echo "---------------------------------------------------"
  71. echo ""
  72. echo "Buildable machine info"
  73. echo "---------------------------------------------------"
  74. echo "* qemucsky: The 32-bit CSKY machine"
  75. echo "* freedom-u540: The SiFive HiFive Unleashed board"
  76. echo "---------------------------------------------------"
  77. # start build
  78. #echo "Starting build"
  79. #bitbake $BITBAKEIMAGE