Skip to contentSkip to conversation

Stefan Stanacar : recipes-bsp: Add gummiboot recipe

oe-commits Martin Jansa 2 participants 2 messages Mar 26, 2014 – Mar 27, 2014 1 message not in the archive

lore
Share & tools
lore
#1 lore raw
In reply to a message not in the archive
Quoted 7 lines · On Tue, Mar 11, 2014 at 04:23:55PM +0000, [email protected] wrote:
Module: openembedded-core.git
Branch: master
Commit: 8f95d0598c31fff76e2a58fecb6c96197121a044
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=8f95d0598c31fff76e2a58fecb6c96197121a044
Author: Stefan Stanacar <[email protected]>
Date:   Fri Feb 21 12:17:35 2014 +0200

COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux"

matching with gnu-efi on which it depends?

Right now it causes ugly error in "bitbake world"

NOTE: Resolving any missing task queue dependencies
ERROR: Nothing PROVIDES 'gnu-efi' (but /home/jenkins/oe/shr-core-branches/shr-core/openembedded-core/meta/recipes-bsp/gummiboot/gummiboot_git.bb DEPENDS on or otherwise requires it)
ERROR: gnu-efi was skipped: incompatible with host arm-oe-linux-gnueabi (not in COMPATIBLE_HOST)
ERROR: Nothing RPROVIDES 'gummiboot-dev' (but /home/jenkins/oe/shr-core-branches/shr-core/openembedded-core/meta/recipes-bsp/gummiboot/gummiboot_git.bb RDEPENDS on or otherwise requires it)
ERROR: No eligible RPROVIDERs exist for 'gummiboot-dev'
NOTE: Runtime target 'gummiboot-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['gummiboot-dev']
ERROR: Nothing RPROVIDES 'gummiboot' (but /home/jenkins/oe/shr-core-branches/shr-core/openembedded-core/meta/recipes-bsp/gummiboot/gummiboot_git.bb RDEPENDS on or otherwise requires it)
ERROR: No eligible RPROVIDERs exist for 'gummiboot'
NOTE: Runtime target 'gummiboot' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['gummiboot']

Quoted 65 lines

recipes-bsp: Add gummiboot recipe

gummiboot is a simple UEFI boot manager.

Recipe imported from meta-intel with these changes:
- drop PR and update configure options
- upgraded to latest version

A couple of notes:
- If you wish you can install the gummiboot package on the target and
use 'gummiboot install' to add the payload to the ESP (see gummiboot --help, just make sure the ESP partition has the boot flag on as gummiboot won't accept it otherwise). However the point of this recipe is to be used by bootimg.bbclass and generate images with gummiboot instead of grub-efi.
- You need a kernel which has CONFIG_EFI_STUB=y at least
- The default linux-yocto kernel config does not enable that, easiest way
to enable is to build with KERNEL_FEATURES_append = " cfg/efi-ext" in local.conf

---

 meta/recipes-bsp/gummiboot/gummiboot_git.bb | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)
meta/recipes-bsp/gummiboot/gummiboot_git.bb new file +25 -0
new file mode 100644
index 0000000..5868a23
@@ -0,0 +1,25 @@
+SUMMARY = "Gummiboot is a simple UEFI boot manager which executes configured EFI images."
+HOMEPAGE = "http://freedesktop.org/wiki/Software/gummiboot"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = "gnu-efi util-linux"
+
+inherit autotools
+inherit deploy
+
+PV = "43+git${SRCPV}"
+SRCREV = "4062c51075ba054d4949c714fe06123f9ad3097d"
+SRC_URI = "git://anongit.freedesktop.org/gummiboot"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OECONF = "--disable-manpages --with-efi-includedir=${STAGING_INCDIR} \
+                --with-efi-ldsdir=${STAGING_LIBDIR} \
+                --with-efi-libdir=${STAGING_LIBDIR}"
+
+do_deploy () {
+        install ${B}/gummiboot*.efi ${DEPLOYDIR}
+}
+addtask deploy before do_build after do_compile
Signature · 5 lines
-- 
_______________________________________________
Openembedded-commits mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-commits
Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#2 lore raw

I met a similar error, maybe we can add:
COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux"

to gummiboot_git.bb to fix the problem.

I will send a patch for it, and fix another gnu-efi error.

// Robert

Quoted 96 lines · Martin Jansa
Quoted 7 lines · On Tue, Mar 11, 2014 at 04:23:55PM +0000, [email protected] wrote:
Module: openembedded-core.git
Branch: master
Commit: 8f95d0598c31fff76e2a58fecb6c96197121a044
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=8f95d0598c31fff76e2a58fecb6c96197121a044
Author: Stefan Stanacar <[email protected]>
Date:   Fri Feb 21 12:17:35 2014 +0200

COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux"

matching with gnu-efi on which it depends?

Right now it causes ugly error in "bitbake world"

NOTE: Resolving any missing task queue dependencies
ERROR: Nothing PROVIDES 'gnu-efi' (but /home/jenkins/oe/shr-core-branches/shr-core/openembedded-core/meta/recipes-bsp/gummiboot/gummiboot_git.bb DEPENDS on or otherwise requires it)
ERROR: gnu-efi was skipped: incompatible with host arm-oe-linux-gnueabi (not in COMPATIBLE_HOST)
ERROR: Nothing RPROVIDES 'gummiboot-dev' (but /home/jenkins/oe/shr-core-branches/shr-core/openembedded-core/meta/recipes-bsp/gummiboot/gummiboot_git.bb RDEPENDS on or otherwise requires it)
ERROR: No eligible RPROVIDERs exist for 'gummiboot-dev'
NOTE: Runtime target 'gummiboot-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['gummiboot-dev']
ERROR: Nothing RPROVIDES 'gummiboot' (but /home/jenkins/oe/shr-core-branches/shr-core/openembedded-core/meta/recipes-bsp/gummiboot/gummiboot_git.bb RDEPENDS on or otherwise requires it)
ERROR: No eligible RPROVIDERs exist for 'gummiboot'
NOTE: Runtime target 'gummiboot' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['gummiboot']

Quoted 65 lines

recipes-bsp: Add gummiboot recipe

gummiboot is a simple UEFI boot manager.

Recipe imported from meta-intel with these changes:
- drop PR and update configure options
- upgraded to latest version

A couple of notes:
- If you wish you can install the gummiboot package on the target and
use 'gummiboot install' to add the payload to the ESP (see gummiboot --help, just make sure the ESP partition has the boot flag on as gummiboot won't accept it otherwise). However the point of this recipe is to be used by bootimg.bbclass and generate images with gummiboot instead of grub-efi.
- You need a kernel which has CONFIG_EFI_STUB=y at least
- The default linux-yocto kernel config does not enable that, easiest way
to enable is to build with KERNEL_FEATURES_append = " cfg/efi-ext" in local.conf

---

  meta/recipes-bsp/gummiboot/gummiboot_git.bb | 25 +++++++++++++++++++++++++
  1 file changed, 25 insertions(+)
meta/recipes-bsp/gummiboot/gummiboot_git.bb new file +25 -1
new file mode 100644
index 0000000..5868a23
@@ -0,0 +1,25 @@
+SUMMARY = "Gummiboot is a simple UEFI boot manager which executes configured EFI images."
+HOMEPAGE = "http://freedesktop.org/wiki/Software/gummiboot"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = "gnu-efi util-linux"
+
+inherit autotools
+inherit deploy
+
+PV = "43+git${SRCPV}"
+SRCREV = "4062c51075ba054d4949c714fe06123f9ad3097d"
+SRC_URI = "git://anongit.freedesktop.org/gummiboot"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OECONF = "--disable-manpages --with-efi-includedir=${STAGING_INCDIR} \
+                --with-efi-ldsdir=${STAGING_LIBDIR} \
+                --with-efi-libdir=${STAGING_LIBDIR}"
+
+do_deploy () {
+        install ${B}/gummiboot*.efi ${DEPLOYDIR}
+}
+addtask deploy before do_build after do_compile
 
--

_______________________________________________
Openembedded-commits mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-commits