1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- #!/bin/bash
- # Bootstrapper for buildbot slave
- DIR="build"
- MACHINE="qemuriscv64"
- CONFFILE="conf/auto.conf"
- BITBAKEIMAGE="core-image-full-cmdline"
- # make sure sstate is there
- #echo "Creating sstate directory"
- #mkdir -p ~/sstate/$MACHINE
- # fix permissions set by buildbot
- #echo "Fixing permissions for buildbot"
- #umask -S u=rwx,g=rx,o=rx
- #chmod -R 755 .
- # Reconfigure dash on debian-like systems
- which aptitude > /dev/null 2>&1
- ret=$?
- if [ "$(readlink /bin/sh)" = "dash" -a "$ret" = "0" ]; then
- sudo aptitude install expect -y
- expect -c 'spawn sudo dpkg-reconfigure -freadline dash; send "n\n"; interact;'
- elif [ "${0##*/}" = "dash" ]; then
- echo "dash as default shell is not supported"
- return
- fi
- # bootstrap OE
- echo "Init OE"
- export BASH_SOURCE="openembedded-core/oe-init-build-env"
- . ./openembedded-core/oe-init-build-env $DIR
- # Symlink the cache
- #echo "Setup symlink for sstate"
- #ln -s ~/sstate/${MACHINE} sstate-cache
- # add the missing layers
- echo "Adding layers"
- bitbake-layers add-layer ../meta-openembedded/meta-oe
- bitbake-layers add-layer ../meta-openembedded/meta-python
- bitbake-layers add-layer ../meta-openembedded/meta-multimedia
- bitbake-layers add-layer ../meta-openembedded/meta-networking
- bitbake-layers add-layer ../meta-riscv
- # fix the configuration
- echo "Creating auto.conf"
- if [ -e $CONFFILE ]; then
- rm -rf $CONFFILE
- fi
- cat <<EOF > $CONFFILE
- MACHINE ?= "${MACHINE}"
- #IMAGE_FEATURES += "tools-debug"
- #IMAGE_FEATURES += "tools-tweaks"
- #IMAGE_FEATURES += "dbg-pkgs"
- # rootfs for debugging
- #IMAGE_GEN_DEBUGFS = "1"
- #IMAGE_FSTYPES_DEBUGFS = "tar.gz"
- EXTRA_IMAGE_FEATURES_append = " ssh-server-dropbear"
- EXTRA_IMAGE_FEATURES_append = " package-management"
- PACKAGECONFIG_append_pn-qemu-native = " sdl"
- PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
- USER_CLASSES ?= "buildstats buildhistory buildstats-summary image-mklibs image-prelink"
- require conf/distro/include/no-static-libs.inc
- require conf/distro/include/yocto-uninative.inc
- require conf/distro/include/security_flags.inc
- INHERIT += "uninative"
- DISTRO_FEATURES_append = " largefile opengl ptest multiarch wayland pam systemd "
- DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit"
- VIRTUAL-RUNTIME_init_manager = "systemd"
- HOSTTOOLS_NONFATAL_append = " ssh"
- EOF
- echo "To build an image run"
- echo "---------------------------------------------------"
- echo "MACHINE=qemuriscv64 bitbake core-image-full-cmdline"
- echo "---------------------------------------------------"
- echo ""
- echo "Buildable machine info"
- echo "---------------------------------------------------"
- echo "* qemuriscv64: The 64-bit RISC-V machine"
- echo "* qemuriscv32: The 32-bit RISC-V machine"
- echo "* freedom-u540: The SiFive HiFive Unleashed board"
- echo "---------------------------------------------------"
- # start build
- #echo "Starting build"
- #bitbake $BITBAKEIMAGE
|