Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Saul Wold <saul.wold@intel.com>
To: Robert Yang <liezhi.yang@windriver.com>,
	 openembedded-core@lists.openembedded.org
Subject: Re: [PATCH 3/3] bootimg.bbclass: only inherit syslinux when pcbios
Date: Wed, 30 Mar 2016 18:01:41 -0700	[thread overview]
Message-ID: <1459386101.18406.168.camel@intel.com> (raw)
In-Reply-To: <9050734f9f9baec08caa67948dd70f9389a93a6e.1458640034.git.liezhi.yang@windriver.com>

On Tue, 2016-03-22 at 02:48 -0700, Robert Yang wrote:
> syslinux.bbclass should not be seen when use efi.
> 
That's not completely true, there is a case which still requires the
ioslinux.bin binary when EFI is used.  In the build_iso() function
there is a workaround that is still required and uses isolinux.bin

This change breaks building EFI only machines (intel-quark for example)

Please check into this.
Thanks

Sau!

> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
> ---
>  meta/classes/boot-directdisk.bbclass |    1 -
>  meta/classes/bootimg.bbclass         |    9 +++++++--
>  meta/classes/image-live.bbclass      |    1 -
>  meta/classes/syslinux.bbclass        |    7 +++----
>  4 files changed, 10 insertions(+), 8 deletions(-)
> 
> diff --git a/meta/classes/boot-directdisk.bbclass
> b/meta/classes/boot-directdisk.bbclass
> index c6ada47..46f88ac 100644
> --- a/meta/classes/boot-directdisk.bbclass
> +++ b/meta/classes/boot-directdisk.bbclass
> @@ -59,7 +59,6 @@ inherit ${EFI_CLASS}
>  
>  DISK_SIGNATURE ?= "${DISK_SIGNATURE_GENERATED}"
>  ROOT_VM ?= "root=/dev/sda2"
> -SYSLINUX_CFG_VM  ?= "${S}/syslinux_vm.cfg"
>  
>  boot_direct_populate() {
>  	dest=$1
> diff --git a/meta/classes/bootimg.bbclass
> b/meta/classes/bootimg.bbclass
> index 70ce070..d9ed7db 100644
> --- a/meta/classes/bootimg.bbclass
> +++ b/meta/classes/bootimg.bbclass
> @@ -40,6 +40,11 @@ EFIIMGDIR = "${S}/efi_img"
>  COMPACT_ISODIR = "${S}/iso.z"
>  COMPRESSISO ?= "0"
>  
> +ISOLINUXDIR ?= "/isolinux"
> +ISO_BOOTIMG = "isolinux/isolinux.bin"
> +ISO_BOOTCAT = "isolinux/boot.cat"
> +MKISOFS_OPTIONS = "-no-emul-boot -boot-load-size 4 -boot-info-table"
> +
>  BOOTIMG_VOLUME_ID   ?= "boot"
>  BOOTIMG_EXTRA_SPACE ?= "512"
>  
> @@ -59,10 +64,10 @@ def pcbios(d):
>      return pcbios
>  
>  PCBIOS = "${@pcbios(d)}"
> +PCBIOS_CLASS = "${@['','syslinux'][d.getVar('PCBIOS', True) ==
> '1']}"
>  
> -# The syslinux is required for the isohybrid command and boot
> catalog
> -inherit syslinux
>  inherit ${EFI_CLASS}
> +inherit ${PCBIOS_CLASS}
>  
>  populate() {
>  	DEST=$1
> diff --git a/meta/classes/image-live.bbclass b/meta/classes/image-
> live.bbclass
> index 504725d..05e416a 100644
> --- a/meta/classes/image-live.bbclass
> +++ b/meta/classes/image-live.bbclass
> @@ -3,7 +3,6 @@ INITRD_IMAGE_LIVE ?= "core-image-minimal-initramfs"
>  INITRD_LIVE ?= "${DEPLOY_DIR_IMAGE}/${INITRD_IMAGE_LIVE}-
> ${MACHINE}.cpio.gz"
>  ROOT_LIVE ?= "root=/dev/ram0"
>  LABELS_LIVE ?= "boot install"
> -SYSLINUX_CFG_LIVE ?= "${S}/syslinux_live.cfg"
>  
>  ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.ext4"
>  
> diff --git a/meta/classes/syslinux.bbclass
> b/meta/classes/syslinux.bbclass
> index 6de656b..7d324c3 100644
> --- a/meta/classes/syslinux.bbclass
> +++ b/meta/classes/syslinux.bbclass
> @@ -20,7 +20,7 @@
>  do_bootimg[depends] += "${MLPREFIX}syslinux:do_populate_sysroot \
>                          syslinux-native:do_populate_sysroot"
>  
> -ISOLINUXDIR = "/isolinux"
> +ISOLINUXDIR ?= "/isolinux"
>  SYSLINUXDIR = "/"
>  # The kernel has an internal default console, which you can override
> with
>  # a console=...some_tty...
> @@ -30,10 +30,9 @@ SYSLINUX_SERIAL_TTY ?= "console=ttyS0,115200"
>  SYSLINUX_PROMPT ?= "0"
>  SYSLINUX_TIMEOUT ?= "50"
>  AUTO_SYSLINUXMENU ?= "1"
> -ISO_BOOTIMG = "isolinux/isolinux.bin"
> -ISO_BOOTCAT = "isolinux/boot.cat"
> -MKISOFS_OPTIONS = "-no-emul-boot -boot-load-size 4 -boot-info-table"
>  SYSLINUX_ROOT ?= "${ROOT}"
> +SYSLINUX_CFG_VM  ?= "${S}/syslinux_vm.cfg"
> +SYSLINUX_CFG_LIVE ?= "${S}/syslinux_live.cfg"
>  APPEND_prepend = " ${SYSLINUX_ROOT} "
>  
>  # Need UUID utility code.
> -- 
> 1.7.9.5
> 


  reply	other threads:[~2016-03-31  1:01 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-22  9:48 [PATCH 0/3] Fixes for grub-efi.bbclass (live + vm) Robert Yang
2016-03-22  9:48 ` [PATCH 1/3] bootimg.bbclass: fix settings for grub-efi.bbclass Robert Yang
2016-03-22  9:48 ` [PATCH 2/3] grub-efi.bbclass: make it can build vm and live together Robert Yang
2016-03-22  9:48 ` [PATCH 3/3] bootimg.bbclass: only inherit syslinux when pcbios Robert Yang
2016-03-31  1:01   ` Saul Wold [this message]
2016-03-31  1:12     ` Robert Yang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1459386101.18406.168.camel@intel.com \
    --to=saul.wold@intel.com \
    --cc=liezhi.yang@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox