* [OE-core v2 PATCH 0/5] aarch64 changes for meta layer
@ 2015-03-18 11:27 Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 1/5] bootimg: Add support to install Image Naresh Bhat
` (5 more replies)
0 siblings, 6 replies; 12+ messages in thread
From: Naresh Bhat @ 2015-03-18 11:27 UTC (permalink / raw)
To: openembedded-core; +Cc: matt.fleming
I am adding the support of aarch64 to LUV OS Distribution project.
The luv-yocto project is based on poky distribution.
https://01.org/linux-uefi-validation
While adding support I find that these are the few meta layer changes,
which I have been asked to upstream. If we merge these changes into
openembedded-core it will be more helpful to maintain the minimum set
patches at dependency projects like luv-yocto.
Changes since V0:[RFC series]
- grub: grub-efi: bootimg: Include all the chages suggested by Bernhard Reutner-Fischer
- grub: Add grub recipe changes suggested by Burton Ross
Changes since V1:
- grub: More documentation on grub recipe and remove CACHED_CONFIGUREVARS as suggested by Richard Purdie
- bootimg: Add NOISO as suggested by Bernhard Reutner-Fischer
- syslinux: Impliment as suggested by Richard Purdie
-Naresh
Naresh Bhat (5):
bootimg: Add support to install Image
syslinux: Remove bootimg dependency on aarch64
bootimg: Skip iso image build on aarch64
grub-efi: Add to support to install grubaa64 efi
grub: Update grub git recipe
meta/classes/bootimg.bbclass | 12 ++++++++--
meta/classes/grub-efi.bbclass | 17 +++++++++-----
meta/classes/syslinux.bbclass | 5 +++-
meta/recipes-bsp/grub/grub_git.bb | 47 +++++++++++++++++++++++++++++++------
4 files changed, 65 insertions(+), 16 deletions(-)
--
1.7.9.5
^ permalink raw reply [flat|nested] 12+ messages in thread
* [OE-core v2 PATCH 1/5] bootimg: Add support to install Image
2015-03-18 11:27 [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
@ 2015-03-18 11:27 ` Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 2/5] syslinux: Remove bootimg dependency on aarch64 Naresh Bhat
` (4 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: Naresh Bhat @ 2015-03-18 11:27 UTC (permalink / raw)
To: openembedded-core; +Cc: matt.fleming
Add support to install kernel image for aarch64
Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
---
meta/classes/bootimg.bbclass | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/meta/classes/bootimg.bbclass b/meta/classes/bootimg.bbclass
index b1c03ba..ed7b32f 100644
--- a/meta/classes/bootimg.bbclass
+++ b/meta/classes/bootimg.bbclass
@@ -64,10 +64,17 @@ inherit ${EFI_CLASS}
populate() {
DEST=$1
- install -d ${DEST}
+
+ SRC_KERNEL_IMAGE=bzImage
+ DEST_KERNEL_IMAGE=vmlinuz
+
+ if [ "${TARGET_ARCH}" = "aarch64" ]; then
+ SRC_KERNEL_IMAGE=Image
+ DEST_KERNEL_IMAGE=Image
+ fi
# Install bzImage, initrd, and rootfs.img in DEST for all loaders to use.
- install -m 0644 ${DEPLOY_DIR_IMAGE}/bzImage ${DEST}/vmlinuz
+ install -m 0644 -D ${STAGING_KERNEL_DIR}/${SRC_KERNEL_IMAGE} ${DEST}/${DEST_KERNEL_IMAGE}
# initrd is made of concatenation of multiple filesystem images
if [ -n "${INITRD}" ]; then
--
1.7.9.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [OE-core v2 PATCH 2/5] syslinux: Remove bootimg dependency on aarch64
2015-03-18 11:27 [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 1/5] bootimg: Add support to install Image Naresh Bhat
@ 2015-03-18 11:27 ` Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 3/5] bootimg: Skip iso image build " Naresh Bhat
` (3 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: Naresh Bhat @ 2015-03-18 11:27 UTC (permalink / raw)
To: openembedded-core; +Cc: matt.fleming
Remove the bootimg dependency as syslinux for aarch64. The reason to skip the syslinux package
- syslinux package contains x86 assembly code. Hence it cannot be compiled on aarch64.
- There is no BIOS on aarch64 to answer syscalls.
Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
---
meta/classes/syslinux.bbclass | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/meta/classes/syslinux.bbclass b/meta/classes/syslinux.bbclass
index d6498d9..16c12a9 100644
--- a/meta/classes/syslinux.bbclass
+++ b/meta/classes/syslinux.bbclass
@@ -17,7 +17,10 @@
# ${SYSLINUX_SERIAL_TTY} - Set alternate console=tty... kernel boot argument
# ${SYSLINUX_KERNEL_ARGS} - Add additional kernel arguments
-do_bootimg[depends] += "${MLPREFIX}syslinux:do_populate_sysroot \
+EXTRABOOTIMGDEPS = ""
+EXTRABOOTIMGDEPS_x86 = "${MLPREFIX}syslinux:do_populate_sysroot"
+EXTRABOOTIMGDEPS_x86-64 = "${MLPREFIX}syslinux:do_populate_sysroot"
+do_bootimg[depends] += "${EXTRABOOTIMGDEPS} \
syslinux-native:do_populate_sysroot"
SYSLINUXCFG = "${S}/syslinux.cfg"
--
1.7.9.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [OE-core v2 PATCH 3/5] bootimg: Skip iso image build on aarch64
2015-03-18 11:27 [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 1/5] bootimg: Add support to install Image Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 2/5] syslinux: Remove bootimg dependency on aarch64 Naresh Bhat
@ 2015-03-18 11:27 ` Naresh Bhat
2015-03-18 12:35 ` Bernhard Reutner-Fischer
2015-03-18 11:27 ` [OE-core v2 PATCH 4/5] grub-efi: Add to support to install grubaa64 efi Naresh Bhat
` (2 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Naresh Bhat @ 2015-03-18 11:27 UTC (permalink / raw)
To: openembedded-core; +Cc: matt.fleming
To generate bootable ISO image the x86 architecture uses syslinux package (syslinux/isolinux.bin).
We have already skip the syslinux package on aarch64. Hence skip the iso image build on aarch64.
Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
---
meta/classes/bootimg.bbclass | 1 +
1 file changed, 1 insertion(+)
diff --git a/meta/classes/bootimg.bbclass b/meta/classes/bootimg.bbclass
index ed7b32f..5a8e70c 100644
--- a/meta/classes/bootimg.bbclass
+++ b/meta/classes/bootimg.bbclass
@@ -33,6 +33,7 @@ do_bootimg[depends] += "dosfstools-native:do_populate_sysroot \
PACKAGES = " "
EXCLUDE_FROM_WORLD = "1"
+NOISO_aarch64 = "1"
HDDDIR = "${S}/hddimg"
ISODIR = "${S}/iso"
--
1.7.9.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [OE-core v2 PATCH 4/5] grub-efi: Add to support to install grubaa64 efi
2015-03-18 11:27 [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
` (2 preceding siblings ...)
2015-03-18 11:27 ` [OE-core v2 PATCH 3/5] bootimg: Skip iso image build " Naresh Bhat
@ 2015-03-18 11:27 ` Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 5/5] grub: Update grub git recipe Naresh Bhat
2015-04-08 7:15 ` [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
5 siblings, 0 replies; 12+ messages in thread
From: Naresh Bhat @ 2015-03-18 11:27 UTC (permalink / raw)
To: openembedded-core; +Cc: matt.fleming
Add support to install grubaa64 efi image. By default GRUB_IMAGE contains
the bootia32.efi image. Depending on the architecture type the variable is
being updated to bootia64.efi or grubaa64.efi
Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
---
meta/classes/grub-efi.bbclass | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/meta/classes/grub-efi.bbclass b/meta/classes/grub-efi.bbclass
index 47bd35e..cded1a0 100644
--- a/meta/classes/grub-efi.bbclass
+++ b/meta/classes/grub-efi.bbclass
@@ -31,15 +31,20 @@ efi_populate() {
# nested under a top level directory.
DEST=$1
- install -d ${DEST}${EFIDIR}
-
GRUB_IMAGE="bootia32.efi"
- if [ "${TARGET_ARCH}" = "x86_64" ]; then
+
+ case ${TARGET_ARCH} in
+ x86_64 )
GRUB_IMAGE="bootx64.efi"
- fi
- install -m 0644 ${DEPLOY_DIR_IMAGE}/${GRUB_IMAGE} ${DEST}${EFIDIR}
+ ;;
+ aarch64 )
+ GRUB_IMAGE="grubaa64.efi"
+ ;;
+ esac
+
+ install -m 0644 -D ${DEPLOY_DIR_IMAGE}/${GRUB_IMAGE} ${DEST}${EFIDIR}
- install -m 0644 ${GRUBCFG} ${DEST}${EFIDIR}
+ install -m 0644 -D ${GRUBCFG} ${DEST}${EFIDIR}
}
efi_iso_populate() {
--
1.7.9.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [OE-core v2 PATCH 5/5] grub: Update grub git recipe
2015-03-18 11:27 [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
` (3 preceding siblings ...)
2015-03-18 11:27 ` [OE-core v2 PATCH 4/5] grub-efi: Add to support to install grubaa64 efi Naresh Bhat
@ 2015-03-18 11:27 ` Naresh Bhat
2015-04-08 7:15 ` [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
5 siblings, 0 replies; 12+ messages in thread
From: Naresh Bhat @ 2015-03-18 11:27 UTC (permalink / raw)
To: openembedded-core; +Cc: matt.fleming
Update the grub git recipe with the following actions for native and target
- Base class extend to native
This is required because on aarch64 we need native recipe to be compiled for host architecture and generate grub-mkimage, which is
executed on host machine to generate grubaa64.efi binary for target architecture. In the case of x86/x86_64 architecture
it does not make any difference because host=target. The flow on aarch64 is as below
grub-native compile for host (generates grub-mkimage) ==> do_install_append_class-target() generates grubaa64.efi binary by executing host executable binary grub-mkimage ==> do_deploy() deploy the grubaa64.efi
Hence add the below lines
+DEPENDS_class-target += "grub-native"
+BBCLASSEXTEND = "native"
- Add autotools-brokensep
The recipe is fails to work (because B!=S) when I have add this recipe to luvOS, hence inherit autotools-brokensep instead of autotools.
May be this needs to be fixed.
- On x86 architecture the recipe builds only for PC, It may be required to extend this recipe.
Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
---
meta/recipes-bsp/grub/grub_git.bb | 47 +++++++++++++++++++++++++++++++------
1 file changed, 40 insertions(+), 7 deletions(-)
diff --git a/meta/recipes-bsp/grub/grub_git.bb b/meta/recipes-bsp/grub/grub_git.bb
index 3ab675b..1ac99f9 100644
--- a/meta/recipes-bsp/grub/grub_git.bb
+++ b/meta/recipes-bsp/grub/grub_git.bb
@@ -8,6 +8,7 @@ DEFAULT_PREFERENCE_arm = "1"
PV = "2.00+${SRCPV}"
SRCREV = "87de66d9d83446ecddb29cfbdf7369102c8e209e"
SRC_URI = "git://git.savannah.gnu.org/grub.git \
+ file://cfg \
file://grub-2.00-fpmath-sse-387-fix.patch \
file://autogen.sh-exclude-pc.patch \
file://grub-2.00-add-oe-kernel.patch \
@@ -18,7 +19,7 @@ S = "${WORKDIR}/git"
COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*)-(linux.*|freebsd.*)'
-inherit autotools gettext texinfo
+inherit autotools-brokensep gettext texinfo deploy
PACKAGECONFIG ??= ""
PACKAGECONFIG[grub-mount] = "--enable-grub-mount,--disable-grub-mount,fuse"
@@ -34,21 +35,53 @@ GRUBPLATFORM ??= "pc"
EXTRA_OECONF = "--with-platform=${GRUBPLATFORM} --disable-grub-mkfont --program-prefix="" \
--enable-liblzma=no --enable-device-mapper=no --enable-libzfs=no"
+export ac_cv_path_HELP2MAN=""
+
do_configure_prepend() {
- ( cd ${S}
- ${S}/autogen.sh )
+ ./autogen.sh
+}
+
+do_install_append_class-native() {
+ install -m 755 -D grub-mkimage ${D}${bindir}
}
-do_install_append () {
- install -d ${D}${sysconfdir}/grub.d
-
+do_install_append_class-target() {
+ # Search for the grub.cfg on the local boot media by using the
+ # built in cfg file provided via this recipe
+ grub-mkimage -c ../cfg -p /EFI/BOOT -d ./grub-core/ \
+ -O ${GRUB_TARGET}-${GRUBPLATFORM} -o ./${GRUB_IMAGE} \
+ boot linux ext2 fat serial part_msdos part_gpt \
+ normal efi_gop iso9660 search efinet tftp all_video chain \
+ gfxmenu jpeg gfxterm
+
+ install -m 0755 -D ${B}/${GRUB_IMAGE} ${D}${bindir}
+}
+
+GRUB_TARGET_aarch64 = "arm64"
+GRUB_IMAGE_aarch64 = "grubaa64.efi"
+
+do_mkimage_class-native() {
+ :
}
+do_deploy() {
+ install -m 0755 -D ${B}/${GRUB_IMAGE} ${DEPLOYDIR}
+}
+
+do_deploy_class-native() {
+ :
+}
+
+addtask deploy after do_install before do_build
+
# debugedit chokes on bare metal binaries
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
-RDEPENDS_${PN} = "diffutils freetype"
+RDEPENDS_${PN}_class-target = "diffutils freetype"
FILES_${PN}-dbg += "${libdir}/${BPN}/*/.debug"
INSANE_SKIP_${PN} = "arch"
INSANE_SKIP_${PN}-dbg = "arch"
+
+DEPENDS_class-target += "grub-native"
+BBCLASSEXTEND = "native"
--
1.7.9.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [OE-core v2 PATCH 3/5] bootimg: Skip iso image build on aarch64
2015-03-18 11:27 ` [OE-core v2 PATCH 3/5] bootimg: Skip iso image build " Naresh Bhat
@ 2015-03-18 12:35 ` Bernhard Reutner-Fischer
2015-03-18 12:42 ` Naresh Bhat
0 siblings, 1 reply; 12+ messages in thread
From: Bernhard Reutner-Fischer @ 2015-03-18 12:35 UTC (permalink / raw)
To: Naresh Bhat; +Cc: Matt Fleming, oe-core
On 18 March 2015 at 12:27, Naresh Bhat <naresh.bhat@linaro.org> wrote:
> To generate bootable ISO image the x86 architecture uses syslinux package (syslinux/isolinux.bin).
> We have already skip the syslinux package on aarch64. Hence skip the iso image build on aarch64.
>
> Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
> ---
> meta/classes/bootimg.bbclass | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/meta/classes/bootimg.bbclass b/meta/classes/bootimg.bbclass
> index ed7b32f..5a8e70c 100644
> --- a/meta/classes/bootimg.bbclass
> +++ b/meta/classes/bootimg.bbclass
> @@ -33,6 +33,7 @@ do_bootimg[depends] += "dosfstools-native:do_populate_sysroot \
>
> PACKAGES = " "
> EXCLUDE_FROM_WORLD = "1"
> +NOISO_aarch64 = "1"
how does that help !COMPATIBLE_HOST (of syslinux) except aarch64?
I meant you to
def mycheck(d):
h = d.getVar('COMPATIBLE_HOST', True)
if h:
t = d.getVar('TARGET_ARCH', True)
if re.match(h, t):
return 0
return 1
and use that to set NOISO ?= "${@mycheck(d)}"
(modulo typos and testing)
I think something like that should work and i think this would be
preferable to adding all those upcoming NOISO_baz
See what i mean?
thanks,
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core v2 PATCH 3/5] bootimg: Skip iso image build on aarch64
2015-03-18 12:35 ` Bernhard Reutner-Fischer
@ 2015-03-18 12:42 ` Naresh Bhat
2015-03-19 9:47 ` Naresh Bhat
0 siblings, 1 reply; 12+ messages in thread
From: Naresh Bhat @ 2015-03-18 12:42 UTC (permalink / raw)
To: Bernhard Reutner-Fischer; +Cc: Matt Fleming, oe-core
[-- Attachment #1: Type: text/plain, Size: 1509 bytes --]
On 18 March 2015 at 18:05, Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
wrote:
> On 18 March 2015 at 12:27, Naresh Bhat <naresh.bhat@linaro.org> wrote:
> > To generate bootable ISO image the x86 architecture uses syslinux
> package (syslinux/isolinux.bin).
> > We have already skip the syslinux package on aarch64. Hence skip the
> iso image build on aarch64.
> >
> > Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
> > ---
> > meta/classes/bootimg.bbclass | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/meta/classes/bootimg.bbclass b/meta/classes/bootimg.bbclass
> > index ed7b32f..5a8e70c 100644
> > --- a/meta/classes/bootimg.bbclass
> > +++ b/meta/classes/bootimg.bbclass
> > @@ -33,6 +33,7 @@ do_bootimg[depends] +=
> "dosfstools-native:do_populate_sysroot \
> >
> > PACKAGES = " "
> > EXCLUDE_FROM_WORLD = "1"
> > +NOISO_aarch64 = "1"
>
> how does that help !COMPATIBLE_HOST (of syslinux) except aarch64?
>
> I meant you to
> def mycheck(d):
> h = d.getVar('COMPATIBLE_HOST', True)
> if h:
> t = d.getVar('TARGET_ARCH', True)
> if re.match(h, t):
> return 0
> return 1
>
> and use that to set NOISO ?= "${@mycheck(d)}"
> (modulo typos and testing)
>
> I think something like that should work and i think this would be
> preferable to adding all those upcoming NOISO_baz
> See what i mean?
>
Thank you very much. I will do it right now, test with luvos distribution,
re-post this patch.
>
> thanks,
>
[-- Attachment #2: Type: text/html, Size: 2278 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core v2 PATCH 3/5] bootimg: Skip iso image build on aarch64
2015-03-18 12:42 ` Naresh Bhat
@ 2015-03-19 9:47 ` Naresh Bhat
2015-03-19 15:46 ` Bernhard Reutner-Fischer
0 siblings, 1 reply; 12+ messages in thread
From: Naresh Bhat @ 2015-03-19 9:47 UTC (permalink / raw)
To: Bernhard Reutner-Fischer; +Cc: Matt Fleming, oe-core
[-- Attachment #1: Type: text/plain, Size: 2651 bytes --]
Hi Bernhard Reutner-Fischer,
On 18 March 2015 at 18:12, Naresh Bhat <naresh.bhat@linaro.org> wrote:
>
>
> On 18 March 2015 at 18:05, Bernhard Reutner-Fischer <rep.dot.nop@gmail.com
> > wrote:
>
>> On 18 March 2015 at 12:27, Naresh Bhat <naresh.bhat@linaro.org> wrote:
>> > To generate bootable ISO image the x86 architecture uses syslinux
>> package (syslinux/isolinux.bin).
>> > We have already skip the syslinux package on aarch64. Hence skip the
>> iso image build on aarch64.
>> >
>> > Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
>> > ---
>> > meta/classes/bootimg.bbclass | 1 +
>> > 1 file changed, 1 insertion(+)
>> >
>> > diff --git a/meta/classes/bootimg.bbclass b/meta/classes/bootimg.bbclass
>> > index ed7b32f..5a8e70c 100644
>> > --- a/meta/classes/bootimg.bbclass
>> > +++ b/meta/classes/bootimg.bbclass
>> > @@ -33,6 +33,7 @@ do_bootimg[depends] +=
>> "dosfstools-native:do_populate_sysroot \
>> >
>> > PACKAGES = " "
>> > EXCLUDE_FROM_WORLD = "1"
>> > +NOISO_aarch64 = "1"
>>
>> how does that help !COMPATIBLE_HOST (of syslinux) except aarch64?
>>
>> I meant you to
>> def mycheck(d):
>> h = d.getVar('COMPATIBLE_HOST', True)
>> if h:
>> t = d.getVar('TARGET_ARCH', True)
>> if re.match(h, t):
>> return 0
>> return 1
>>
>> and use that to set NOISO ?= "${@mycheck(d)}"
>> (modulo typos and testing)
>>
>> I think something like that should work and i think this would be
>> preferable to adding all those upcoming NOISO_baz
>> See what i mean?
>>
> Thank you very much. I will do it right now, test with luvos
> distribution, re-post this patch.
>
I have implemented and tried it with luvOS distribution.
def check_iso_build(d):
host = d.getVar('COMPATIBLE_HOST', True)
if host:
import re
target = d.getVar('TARGET_ARCH', True)
if re.match(host, target):
return 0
return 1
NOISO ?= "${@check_iso_build(d)}"
For the following reason
The COMPATIBLE_HOST value is NULL. Now the question is why it contains
value NULL. That's simply because syslinux recipe does not inherit
bootimg.bbclass.
I did following experiment - The luv-live-image.bb inherit the
bootimg.bbclass hence I have defined the COMPATIBLE_HOST as "x86" or
"aarch64" depending on the build I am doing. This will work for x86
architecture but definitely going to break for aarch64 because of the
below condition
if re.match(host, target):
return 0
Let me know If I need to experiment/change the logic of the implementation.
>
>> thanks,
>>
>
>
[-- Attachment #2: Type: text/html, Size: 4249 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core v2 PATCH 3/5] bootimg: Skip iso image build on aarch64
2015-03-19 9:47 ` Naresh Bhat
@ 2015-03-19 15:46 ` Bernhard Reutner-Fischer
0 siblings, 0 replies; 12+ messages in thread
From: Bernhard Reutner-Fischer @ 2015-03-19 15:46 UTC (permalink / raw)
To: Naresh Bhat; +Cc: Matt Fleming, oe-core
On March 19, 2015 10:47:22 AM GMT+01:00, Naresh Bhat <naresh.bhat@linaro.org> wrote:
>Hi Bernhard Reutner-Fischer,
>
>On 18 March 2015 at 18:12, Naresh Bhat <naresh.bhat@linaro.org> wrote:
>
>>
>>
>> On 18 March 2015 at 18:05, Bernhard Reutner-Fischer
><rep.dot.nop@gmail.com
>> > wrote:
>>
>>> On 18 March 2015 at 12:27, Naresh Bhat <naresh.bhat@linaro.org>
>wrote:
>>> > To generate bootable ISO image the x86 architecture uses syslinux
>>> package (syslinux/isolinux.bin).
>>> > We have already skip the syslinux package on aarch64. Hence skip
>the
>>> iso image build on aarch64.
>>> >
>>> > Signed-off-by: Naresh Bhat <naresh.bhat@linaro.org>
>>> > ---
>>> > meta/classes/bootimg.bbclass | 1 +
>>> > 1 file changed, 1 insertion(+)
>>> >
>>> > diff --git a/meta/classes/bootimg.bbclass
>b/meta/classes/bootimg.bbclass
>>> > index ed7b32f..5a8e70c 100644
>>> > --- a/meta/classes/bootimg.bbclass
>>> > +++ b/meta/classes/bootimg.bbclass
>>> > @@ -33,6 +33,7 @@ do_bootimg[depends] +=
>>> "dosfstools-native:do_populate_sysroot \
>>> >
>>> > PACKAGES = " "
>>> > EXCLUDE_FROM_WORLD = "1"
>>> > +NOISO_aarch64 = "1"
>>>
>>> how does that help !COMPATIBLE_HOST (of syslinux) except aarch64?
>>>
>>> I meant you to
>>> def mycheck(d):
>>> h = d.getVar('COMPATIBLE_HOST', True)
>>> if h:
>>> t = d.getVar('TARGET_ARCH', True)
>>> if re.match(h, t):
>>> return 0
>>> return 1
>>>
>>> and use that to set NOISO ?= "${@mycheck(d)}"
>>> (modulo typos and testing)
>>>
>>> I think something like that should work and i think this would be
>>> preferable to adding all those upcoming NOISO_baz
>>> See what i mean?
>>>
>> Thank you very much. I will do it right now, test with luvos
>> distribution, re-post this patch.
>>
>
>I have implemented and tried it with luvOS distribution.
>
>def check_iso_build(d):
> host = d.getVar('COMPATIBLE_HOST', True)
> if host:
> import re
> target = d.getVar('TARGET_ARCH', True)
> if re.match(host, target):
> return 0
> return 1
>
>NOISO ?= "${@check_iso_build(d)}"
>
>
>For the following reason
>
>The COMPATIBLE_HOST value is NULL. Now the question is why it contains
>value NULL. That's simply because syslinux recipe does not inherit
>bootimg.bbclass.
>
>I did following experiment - The luv-live-image.bb inherit the
>bootimg.bbclass hence I have defined the COMPATIBLE_HOST as "x86" or
>"aarch64" depending on the build I am doing. This will work for x86
>architecture but definitely going to break for aarch64 because of the
>below condition
>
>if re.match(host, target):
> return 0
>
>Let me know If I need to experiment/change the logic of the
>implementation.
Unfortunately bitbake does not currently allow for inter-package interrogation.
Your distro should (IMHO) set NOISO appropriately (like in that func) and the IMG.bbclass should honour that decision.
HTH,
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core v2 PATCH 0/5] aarch64 changes for meta layer
2015-03-18 11:27 [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
` (4 preceding siblings ...)
2015-03-18 11:27 ` [OE-core v2 PATCH 5/5] grub: Update grub git recipe Naresh Bhat
@ 2015-04-08 7:15 ` Naresh Bhat
2015-06-10 1:12 ` Naresh Bhat
5 siblings, 1 reply; 12+ messages in thread
From: Naresh Bhat @ 2015-04-08 7:15 UTC (permalink / raw)
To: oe-core; +Cc: Matt Fleming
On 18 March 2015 at 16:57, Naresh Bhat <naresh.bhat@linaro.org> wrote:
> I am adding the support of aarch64 to LUV OS Distribution project.
> The luv-yocto project is based on poky distribution.
>
> https://01.org/linux-uefi-validation
>
> While adding support I find that these are the few meta layer changes,
> which I have been asked to upstream. If we merge these changes into
> openembedded-core it will be more helpful to maintain the minimum set
> patches at dependency projects like luv-yocto.
>
> Changes since V0:[RFC series]
> - grub: grub-efi: bootimg: Include all the chages suggested by Bernhard Reutner-Fischer
> - grub: Add grub recipe changes suggested by Burton Ross
>
> Changes since V1:
> - grub: More documentation on grub recipe and remove CACHED_CONFIGUREVARS as suggested by Richard Purdie
> - bootimg: Add NOISO as suggested by Bernhard Reutner-Fischer
> - syslinux: Impliment as suggested by Richard Purdie
>
> -Naresh
>
> Naresh Bhat (5):
> bootimg: Add support to install Image
> syslinux: Remove bootimg dependency on aarch64
> bootimg: Skip iso image build on aarch64
> grub-efi: Add to support to install grubaa64 efi
> grub: Update grub git recipe
Ping,
Are you going to pick up any patches (out of above 5) in 1.9 release ?
>
> meta/classes/bootimg.bbclass | 12 ++++++++--
> meta/classes/grub-efi.bbclass | 17 +++++++++-----
> meta/classes/syslinux.bbclass | 5 +++-
> meta/recipes-bsp/grub/grub_git.bb | 47 +++++++++++++++++++++++++++++++------
> 4 files changed, 65 insertions(+), 16 deletions(-)
>
> --
> 1.7.9.5
>
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core v2 PATCH 0/5] aarch64 changes for meta layer
2015-04-08 7:15 ` [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
@ 2015-06-10 1:12 ` Naresh Bhat
0 siblings, 0 replies; 12+ messages in thread
From: Naresh Bhat @ 2015-06-10 1:12 UTC (permalink / raw)
To: oe-core; +Cc: Matt Fleming
Hi All,
On 8 April 2015 at 12:45, Naresh Bhat <naresh.bhat@linaro.org> wrote:
> On 18 March 2015 at 16:57, Naresh Bhat <naresh.bhat@linaro.org> wrote:
>> I am adding the support of aarch64 to LUV OS Distribution project.
>> The luv-yocto project is based on poky distribution.
>>
>> https://01.org/linux-uefi-validation
>>
>> While adding support I find that these are the few meta layer changes,
>> which I have been asked to upstream. If we merge these changes into
>> openembedded-core it will be more helpful to maintain the minimum set
>> patches at dependency projects like luv-yocto.
>>
>> Changes since V0:[RFC series]
>> - grub: grub-efi: bootimg: Include all the chages suggested by Bernhard Reutner-Fischer
>> - grub: Add grub recipe changes suggested by Burton Ross
>>
>> Changes since V1:
>> - grub: More documentation on grub recipe and remove CACHED_CONFIGUREVARS as suggested by Richard Purdie
>> - bootimg: Add NOISO as suggested by Bernhard Reutner-Fischer
>> - syslinux: Impliment as suggested by Richard Purdie
>>
>> -Naresh
>>
>> Naresh Bhat (5):
>> bootimg: Add support to install Image
>> syslinux: Remove bootimg dependency on aarch64
>> bootimg: Skip iso image build on aarch64
>> grub-efi: Add to support to install grubaa64 efi
>> grub: Update grub git recipe
> Ping,
> Are you going to pick up any patches (out of above 5) in 1.9 release ?
Ping, If any of the patches makes sense (out of 5) please pick up in
1.9 release. If something which does not make sense let me know. I
will try to re-work on it according to requirement.
I will be on vacation rest of the week and get back on your response
on Monday 15th June.
Thanks
-Naresh
>>
>> meta/classes/bootimg.bbclass | 12 ++++++++--
>> meta/classes/grub-efi.bbclass | 17 +++++++++-----
>> meta/classes/syslinux.bbclass | 5 +++-
>> meta/recipes-bsp/grub/grub_git.bb | 47 +++++++++++++++++++++++++++++++------
>> 4 files changed, 65 insertions(+), 16 deletions(-)
>>
>> --
>> 1.7.9.5
>>
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2015-06-10 1:12 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-18 11:27 [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 1/5] bootimg: Add support to install Image Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 2/5] syslinux: Remove bootimg dependency on aarch64 Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 3/5] bootimg: Skip iso image build " Naresh Bhat
2015-03-18 12:35 ` Bernhard Reutner-Fischer
2015-03-18 12:42 ` Naresh Bhat
2015-03-19 9:47 ` Naresh Bhat
2015-03-19 15:46 ` Bernhard Reutner-Fischer
2015-03-18 11:27 ` [OE-core v2 PATCH 4/5] grub-efi: Add to support to install grubaa64 efi Naresh Bhat
2015-03-18 11:27 ` [OE-core v2 PATCH 5/5] grub: Update grub git recipe Naresh Bhat
2015-04-08 7:15 ` [OE-core v2 PATCH 0/5] aarch64 changes for meta layer Naresh Bhat
2015-06-10 1:12 ` Naresh Bhat
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.