]> code.ossystems Code Review - openembedded-core.git/commitdiff
image/image-live: Improve handling of live/iso/hddimg types (drop NOISO/NOHDD)
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 18 Jun 2018 11:04:59 +0000 (11:04 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 20 Jun 2018 15:55:15 +0000 (16:55 +0100)
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.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/image-live.bbclass
meta/classes/image.bbclass
meta/conf/documentation.conf
meta/conf/machine/include/x86-base.inc

index 966277c67853ef06cacd38ebeab889d0a18d4a30..942298a7ce3d2f190e2bc2028dc65104c937a517 100644 (file)
@@ -19,8 +19,6 @@
 
 # External variables (also used by syslinux.bbclass)
 # ${INITRD} - indicates a list of filesystem images to concatenate and use as an initrd (optional)
-# ${NOISO}  - skip building the ISO image if set to 1
-# ${NOHDD}  - skip building the HDD image if set to 1
 # ${HDDIMG_ID} - FAT image volume-id
 # ${ROOTFS} - indicates a filesystem image to include as the root filesystem (optional)
 
@@ -80,8 +78,8 @@ populate_live() {
 }
 
 build_iso() {
-       # Only create an ISO if we have an INITRD and NOISO was not set
-       if [ -z "${INITRD}" ] || [ "${NOISO}" = "1" ]; then
+       # Only create an ISO if we have an INITRD and the live or iso image type was selected
+       if [ -z "${INITRD}" ] || [ "${@bb.utils.contains_any('IMAGE_FSTYPES', 'live iso', '1', '0', d)}" != "1" ]; then
                bbnote "ISO image will not be created."
                return
        fi
@@ -217,7 +215,7 @@ build_fat_img() {
 
 build_hddimg() {
        # Create an HDD image
-       if [ "${NOHDD}" != "1" ] ; then
+       if [ "${@bb.utils.contains_any('IMAGE_FSTYPES', 'live hddimg', '1', '0', d)}" = "1" ] ; then
                populate_live ${HDDDIR}
 
                if [ "${PCBIOS}" = "1" ]; then
index b1132b420ee77c0fcb1106ed668f08213ddfd9e5..f056ca5970b0d211c33577600c5b96cd02fdf515 100644 (file)
@@ -1,11 +1,3 @@
-def build_live(d):
-    if bb.utils.contains("IMAGE_FSTYPES", "live", "live", "0", d) == "0": # live is not set but hob might set iso or hddimg
-        d.setVar('NOISO', bb.utils.contains('IMAGE_FSTYPES', "iso", "0", "1", d))
-        d.setVar('NOHDD', bb.utils.contains('IMAGE_FSTYPES', "hddimg", "0", "1", d))
-        if d.getVar('NOISO') == "0" or d.getVar('NOHDD') == "0":
-            return "image-live"
-        return ""
-    return "image-live"
 
 IMAGE_CLASSES ??= ""
 
@@ -18,7 +10,7 @@ IMGCLASSES = "rootfs_${IMAGE_PKGTYPE} image_types ${IMAGE_CLASSES}"
 # Only Linux SDKs support populate_sdk_ext, fall back to populate_sdk_base
 # in the non-Linux SDK_OS case, such as mingw32
 IMGCLASSES += "${@['populate_sdk_base', 'populate_sdk_ext']['linux' in d.getVar("SDK_OS")]}"
-IMGCLASSES += "${@build_live(d)}"
+IMGCLASSES += "${@bb.utils.contains_any('IMAGE_FSTYPES', 'live iso hddimg', 'image-live', '', d)}"
 IMGCLASSES += "${@bb.utils.contains('IMAGE_FSTYPES', 'container', 'image-container', '', d)}"
 IMGCLASSES += "image_types_wic"
 IMGCLASSES += "${@oe.utils.conditional('TEST_IMAGE', '1', 'testimage-auto', '', d)}"
index 254f8f196048300fd6d67cff0b43515429758c64..3189dd39b72ab69613ff6562143e4a2b992ab92e 100644 (file)
@@ -288,8 +288,6 @@ MULTIMACH_TARGET_SYS[doc] = "Separates files for different machines such that yo
 
 NATIVELSBSTRING[doc] = "A string identifying the host distribution."
 NO_RECOMMENDATIONS[doc] = "When set to '1', no recommended packages will be installed. Realize that some recommended packages might be required for certain system functionality, such as kernel-modules. It is up to the user to add packages to IMAGE_INSTALL as needed."
-NOHDD[doc] = "Causes the OpenEmbedded build system to skip building the .hddimg image."
-NOISO[doc] = "Causes the OpenEmbedded build system to skip building the ISO image."
 
 #O
 
index f8aacea64ccba28b6bfd3fb04357d3a12ab730f2..0edcea7f561fd8808fe29fe83e1dfe0a9a71dafa 100644 (file)
@@ -10,8 +10,7 @@ MACHINE_FEATURES += "screen keyboard pci usbhost ext2 ext3 x86 \
 
 MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
 
-IMAGE_FSTYPES ?= "live"
-NOISO ?= "1"
+IMAGE_FSTYPES ?= "hddimg"
 
 KERNEL_IMAGETYPE ?= "bzImage"