summaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2018-06-18 11:04:59 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-06-21 09:34:40 +0100
commit83d791089fb220553d4df144f56ebea61d9e0713 (patch)
tree76d131c07f8298655469aafe9f13d6cd957f418b /meta/classes
parent25a2244265a14bb1b1585fb406f2b9a722055011 (diff)
downloadpoky-83d791089fb220553d4df144f56ebea61d9e0713.tar.gz
image/image-live: Improve handling of live/iso/hddimg types (drop NOISO/NOHDD)
The logic can be improved and the historical NOISO/NOHDD variables moved into the class and out of common code. The variables are also then removed in favour of directly controlling the behaviour from IMAGE_FSTYPES in line with all the other image types. (From OE-Core rev: a052caed563a09a01f5a3ea1f0477f379c05bee0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/image-live.bbclass8
-rw-r--r--meta/classes/image.bbclass10
2 files changed, 4 insertions, 14 deletions
diff --git a/meta/classes/image-live.bbclass b/meta/classes/image-live.bbclass
index 966277c678..942298a7ce 100644
--- a/meta/classes/image-live.bbclass
+++ b/meta/classes/image-live.bbclass
@@ -19,8 +19,6 @@
19 19
20# External variables (also used by syslinux.bbclass) 20# External variables (also used by syslinux.bbclass)
21# ${INITRD} - indicates a list of filesystem images to concatenate and use as an initrd (optional) 21# ${INITRD} - indicates a list of filesystem images to concatenate and use as an initrd (optional)
22# ${NOISO} - skip building the ISO image if set to 1
23# ${NOHDD} - skip building the HDD image if set to 1
24# ${HDDIMG_ID} - FAT image volume-id 22# ${HDDIMG_ID} - FAT image volume-id
25# ${ROOTFS} - indicates a filesystem image to include as the root filesystem (optional) 23# ${ROOTFS} - indicates a filesystem image to include as the root filesystem (optional)
26 24
@@ -80,8 +78,8 @@ populate_live() {
80} 78}
81 79
82build_iso() { 80build_iso() {
83 # Only create an ISO if we have an INITRD and NOISO was not set 81 # Only create an ISO if we have an INITRD and the live or iso image type was selected
84 if [ -z "${INITRD}" ] || [ "${NOISO}" = "1" ]; then 82 if [ -z "${INITRD}" ] || [ "${@bb.utils.contains_any('IMAGE_FSTYPES', 'live iso', '1', '0', d)}" != "1" ]; then
85 bbnote "ISO image will not be created." 83 bbnote "ISO image will not be created."
86 return 84 return
87 fi 85 fi
@@ -217,7 +215,7 @@ build_fat_img() {
217 215
218build_hddimg() { 216build_hddimg() {
219 # Create an HDD image 217 # Create an HDD image
220 if [ "${NOHDD}" != "1" ] ; then 218 if [ "${@bb.utils.contains_any('IMAGE_FSTYPES', 'live hddimg', '1', '0', d)}" = "1" ] ; then
221 populate_live ${HDDDIR} 219 populate_live ${HDDDIR}
222 220
223 if [ "${PCBIOS}" = "1" ]; then 221 if [ "${PCBIOS}" = "1" ]; then
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index b1132b420e..f056ca5970 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -1,11 +1,3 @@
1def build_live(d):
2 if bb.utils.contains("IMAGE_FSTYPES", "live", "live", "0", d) == "0": # live is not set but hob might set iso or hddimg
3 d.setVar('NOISO', bb.utils.contains('IMAGE_FSTYPES', "iso", "0", "1", d))
4 d.setVar('NOHDD', bb.utils.contains('IMAGE_FSTYPES', "hddimg", "0", "1", d))
5 if d.getVar('NOISO') == "0" or d.getVar('NOHDD') == "0":
6 return "image-live"
7 return ""
8 return "image-live"
9 1
10IMAGE_CLASSES ??= "" 2IMAGE_CLASSES ??= ""
11 3
@@ -18,7 +10,7 @@ IMGCLASSES = "rootfs_${IMAGE_PKGTYPE} image_types ${IMAGE_CLASSES}"
18# Only Linux SDKs support populate_sdk_ext, fall back to populate_sdk_base 10# Only Linux SDKs support populate_sdk_ext, fall back to populate_sdk_base
19# in the non-Linux SDK_OS case, such as mingw32 11# in the non-Linux SDK_OS case, such as mingw32
20IMGCLASSES += "${@['populate_sdk_base', 'populate_sdk_ext']['linux' in d.getVar("SDK_OS")]}" 12IMGCLASSES += "${@['populate_sdk_base', 'populate_sdk_ext']['linux' in d.getVar("SDK_OS")]}"
21IMGCLASSES += "${@build_live(d)}" 13IMGCLASSES += "${@bb.utils.contains_any('IMAGE_FSTYPES', 'live iso hddimg', 'image-live', '', d)}"
22IMGCLASSES += "${@bb.utils.contains('IMAGE_FSTYPES', 'container', 'image-container', '', d)}" 14IMGCLASSES += "${@bb.utils.contains('IMAGE_FSTYPES', 'container', 'image-container', '', d)}"
23IMGCLASSES += "image_types_wic" 15IMGCLASSES += "image_types_wic"
24IMGCLASSES += "${@oe.utils.conditional('TEST_IMAGE', '1', 'testimage-auto', '', d)}" 16IMGCLASSES += "${@oe.utils.conditional('TEST_IMAGE', '1', 'testimage-auto', '', d)}"