diff options
Diffstat (limited to 'meta/recipes-core/images/build-appliance-image_15.0.0.bb')
-rw-r--r-- | meta/recipes-core/images/build-appliance-image_15.0.0.bb | 58 |
1 files changed, 35 insertions, 23 deletions
diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb index 595e7ed74d..520d4f1f5f 100644 --- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb +++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb @@ -1,17 +1,17 @@ SUMMARY = "An image containing the build system itself" DESCRIPTION = "An image containing the build system that you can boot and run using either VirtualBox, VMware Player or VMware Workstation." -HOMEPAGE = "http://www.yoctoproject.org/documentation/build-appliance" +HOMEPAGE = "https://docs.yoctoproject.org/overview-manual/yp-intro.html#archived-components" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-self-hosted \ - kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcp-client \ + kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcpcd \ tzdata python3-pip perl-misc" IMAGE_FEATURES += "x11-base package-management splash" -QB_MEM = '${@bb.utils.contains("DISTRO_FEATURES", "opengl", "-m 512", "-m 256", d)}' +QB_MEM ?= '${@bb.utils.contains("DISTRO_FEATURES", "opengl", "-m 512", "-m 256", d)}' # Ensure there's enough space to do a core-image-sato build, with rm_work enabled IMAGE_ROOTFS_EXTRA_SPACE = "41943040" @@ -20,12 +20,14 @@ IMAGE_ROOTFS_EXTRA_SPACE = "41943040" APPEND += "rootfstype=ext4 quiet" DEPENDS = "zip-native python3-pip-native" -IMAGE_FSTYPES = "wic.vmdk" +IMAGE_FSTYPES = "wic.vmdk wic.vhd wic.vhdx" -inherit core-image module-base setuptools3 +inherit core-image setuptools3 features_check -SRCREV ?= "6b2cdc4b96eab7ad5e8ae8daebe24f2b18b09b1e" -SRC_URI = "git://git.yoctoproject.org/poky \ +REQUIRED_DISTRO_FEATURES += "xattr" + +SRCREV ?= "06cba9abc4dcb630142be7606f5272be8bcb2e36" +SRC_URI = "git://git.yoctoproject.org/poky;branch=master \ file://Yocto_Build_Appliance.vmx \ file://Yocto_Build_Appliance.vmxf \ file://README_VirtualBox_Guest_Additions.txt \ @@ -34,7 +36,7 @@ SRC_URI = "git://git.yoctoproject.org/poky \ RECIPE_NO_UPDATE_REASON = "Recipe is recursive and handled as part of the release process" BA_INCLUDE_SOURCES ??= "0" -IMAGE_CMD_ext4_append () { +IMAGE_CMD:ext4:append () { # We don't need to reserve much space for root, 0.5% is more than enough tune2fs -m 0.5 ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.ext4 } @@ -42,10 +44,10 @@ IMAGE_CMD_ext4_append () { fakeroot do_populate_poky_src () { # Because fetch2's git's unpack uses -s cloneflag, the unpacked git repo # will become invalid in the target. - rm -rf ${WORKDIR}/git/.git - rm -f ${WORKDIR}/git/.gitignore + rm -rf ${UNPACKDIR}/git/.git + rm -f ${UNPACKDIR}/git/.gitignore - cp -R ${WORKDIR}/git ${IMAGE_ROOTFS}/home/builder/poky + cp -R ${UNPACKDIR}/git ${IMAGE_ROOTFS}/home/builder/poky mkdir -p ${IMAGE_ROOTFS}/home/builder/poky/build/conf mkdir -p ${IMAGE_ROOTFS}/home/builder/poky/build/downloads @@ -56,19 +58,14 @@ fakeroot do_populate_poky_src () { fi # Place the README_VirtualBox_Guest_Additions file in builders home folder. - cp ${WORKDIR}/README_VirtualBox_Guest_Additions.txt ${IMAGE_ROOTFS}/home/builder/ + cp ${UNPACKDIR}/README_VirtualBox_Guest_Additions.txt ${IMAGE_ROOTFS}/home/builder/ # Place the README_VirtualBox_Toaster file in builders home folder. - cp ${WORKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/ - - # Create a symlink, needed for out-of-tree kernel modules build - if [ ! -e ${IMAGE_ROOTFS}/lib/modules/${KERNEL_VERSION}/build ]; then - rm -f ${IMAGE_ROOTFS}/lib/modules/${KERNEL_VERSION}/build - lnr ${IMAGE_ROOTFS}${KERNEL_SRC_PATH} ${IMAGE_ROOTFS}/lib/modules/${KERNEL_VERSION}/build - fi + cp ${UNPACKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/ echo "INHERIT += \"rm_work\"" >> ${IMAGE_ROOTFS}/home/builder/poky/build/conf/auto.conf echo "export LC_ALL=en_US.utf8" >> ${IMAGE_ROOTFS}/home/builder/.bashrc + echo "export TERM=xterm-color" >> ${IMAGE_ROOTFS}/home/builder/.bashrc # Also save (for reference only) the actual SRCREV used to create this image echo "export BA_SRCREV=${SRCREV}" >> ${IMAGE_ROOTFS}/home/builder/.bashrc @@ -93,7 +90,7 @@ fakeroot do_populate_poky_src () { # Load tap/tun at startup rm -f ${IMAGE_ROOTFS}/sbin/iptables - lnr ${IMAGE_ROOTFS}/usr/sbin/iptables ${IMAGE_ROOTFS}/sbin/iptables + ln -rs ${IMAGE_ROOTFS}/usr/sbin/iptables ${IMAGE_ROOTFS}/sbin/iptables echo "tun" >> ${IMAGE_ROOTFS}/etc/modules # Use Clearlooks GTK+ theme @@ -114,7 +111,15 @@ fakeroot do_populate_poky_src () { chown -R builder:builder ${IMAGE_ROOTFS}/home/builder/.cache } -IMAGE_PREPROCESS_COMMAND += "do_populate_poky_src; " +fakeroot do_tweak_image () { + # add a /lib64 symlink + # this is needed for building rust-native on a 64-bit build appliance + ln -rs ${IMAGE_ROOTFS}/lib ${IMAGE_ROOTFS}/lib64 +} + +IMAGE_PREPROCESS_COMMAND += "do_populate_poky_src do_tweak_image" +# For pip usage above +do_image[network] = "1" addtask rootfs after do_unpack @@ -124,11 +129,18 @@ python () { d.delVarFlag("do_unpack", "noexec") } +# ${S} doesn't exist for us +do_qa_unpack() { + return +} + create_bundle_files () { cd ${WORKDIR} mkdir -p Yocto_Build_Appliance - cp *.vmx* Yocto_Build_Appliance - ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.wic.vmdk Yocto_Build_Appliance/Yocto_Build_Appliance.vmdk + cp ${UNPACKDIR}/*.vmx* Yocto_Build_Appliance + ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vmdk Yocto_Build_Appliance/Yocto_Build_Appliance.vmdk + ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhdx Yocto_Build_Appliance/Yocto_Build_Appliance.vhdx + ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhd Yocto_Build_Appliance/Yocto_Build_Appliance.vhd zip -r ${IMGDEPLOYDIR}/Yocto_Build_Appliance-${DATETIME}.zip Yocto_Build_Appliance ln -sf Yocto_Build_Appliance-${DATETIME}.zip ${IMGDEPLOYDIR}/Yocto_Build_Appliance.zip } |