From 83e834567264d2e38ea6e184a809159e5a13f5a8 Mon Sep 17 00:00:00 2001 From: Anton Gerasimov Date: Thu, 27 Apr 2017 11:56:14 +0200 Subject: Make layer inclusion a neutral operation Classes are and bbappends are reworked so that mere inclusion of this layer to bbappends.conf doesn't change anything. In addition class behavior can now be controlled by both inheriting sota.bblcass and enabling "sota" DISTRO_FEATURE. --- classes/sota.bbclass | 38 ++++++++++++++++++-------------------- 1 file changed, 18 insertions(+), 20 deletions(-) (limited to 'classes/sota.bbclass') diff --git a/classes/sota.bbclass b/classes/sota.bbclass index 0697932..ab9611a 100644 --- a/classes/sota.bbclass +++ b/classes/sota.bbclass @@ -1,19 +1,19 @@ -DISTRO_FEATURES_append = " sota" -OVERRIDES .= ":sota" +python __anonymous() { + if bb.utils.contains('DISTRO_FEATURES', 'sota', True, False, d): + d.appendVar("OVERRIDES", ":sota") + #d.appendVar("IMAGE_INSTALL", " ostree os-release") -IMAGE_INSTALL_append = " ostree os-release" + d.appendVarFlag("do_image_wic", "depends", " %s:do_image_otaimg" % d.getVar("IMAGE_BASENAME", True)) + #d.appendVar("EXTRA_IMAGEDEPENDS", " parted-native mtools-native dosfstools-native") +} -# live image for OSTree-enabled systems -IMAGE_CLASSES += "image_types_ostree image_types_ota" -IMAGE_FSTYPES += "ostreepush otaimg" +IMAGE_INSTALL_append_sota = " ostree os-release" +IMAGE_CLASSES += " image_types_ostree image_types_ota" +IMAGE_FSTYPES += "${@bb.utils.contains('DISTRO_FEATURES', 'sota', 'ostreepush otaimg wic', ' ', d)}" -# if don't build wic image unless IMAGE_BOOT_FILES is set. Prevents build from failing -# on machines that don't support updater yet -IMAGE_FSTYPES += "${@' wic' if (d.getVar("IMAGE_BOOT_FILES", True)) else ''}" -WKS_FILE ?= "sdimage-sota.wks" -do_image_wic[depends] += "${IMAGE_BASENAME}:do_image_otaimg" +WKS_FILE_sota ?= "sdimage-sota.wks" -EXTRA_IMAGEDEPENDS += " parted-native mtools-native dosfstools-native" +EXTRA_IMAGEDEPENDS_append_sota = " parted-native mtools-native dosfstools-native" # Please redefine OSTREE_REPO in order to have a persistent OSTree repo OSTREE_REPO ?= "${DEPLOY_DIR_IMAGE}/ostree_repo" @@ -21,13 +21,11 @@ OSTREE_BRANCHNAME ?= "ota-${MACHINE}" OSTREE_OSNAME ?= "poky" OSTREE_INITRAMFS_IMAGE ?= "initramfs-ostree-image" -# Prelinking increases the size of downloads and causes build errors -USER_CLASSES_remove = "image-prelink" +SOTA_MACHINE ??="none" +SOTA_MACHINE_raspberrypi2 ?= "raspberrypi" +SOTA_MACHINE_rarpberrypi3 ?= "raspberrypi" +SOTA_MACHINE_porter ?= "porter" +SOTA_MACHINE_intel-corei7-64 ?= "minnowboard" +SOTA_MACHINE_qemux86-64 ?= "qemux86-64" -SOTA_MACHINE ?= "none" -SOTA_MACHINE_raspberrypi = "raspberrypi" -SOTA_MACHINE_raspberrypi3 = "raspberrypi" -SOTA_MACHINE_porter = "porter" -SOTA_MACHINE_intel-corei7-64 = "minnowboard" -SOTA_MACHINE_qemux86-64 = "qemux86-64" inherit sota_${SOTA_MACHINE} -- cgit v1.2.3-54-g00ecf