[meta-virtualization] [PATCH v2 1/4] vgabios : extract biossums tool and build it separately, native
christopher.w.clark at gmail.com
christopher.w.clark at gmail.com
Wed Aug 23 14:43:32 PDT 2017
From: Christopher Clark <christopher.clark6 at baesystems.com>
The biossums tool is used to generate the vgabios build product.
This patch:
* adds a separate recipe "biossums" for the tool
* makes the vgabios recipe depend upon biossums-native
* makes the vgabios recipe use the native binary rather than a locally built one
The upstream source tarball contains binaries so these are removed
before compiling proceeds.
Signed-off-by: Christopher Clark <christopher.clark6 at baesystems.com>
---
v2: updated commit message to explain "clean" in compile step.
also added code comment to explain "clean" in the recipe.
removed 'PR' from the recipe.
recipes-extended/vgabios/biossums_0.7a.bb | 37 +++++++++++++++++++++++++++++++
recipes-extended/vgabios/vgabios_0.7a.bb | 6 +++--
2 files changed, 41 insertions(+), 2 deletions(-)
create mode 100644 recipes-extended/vgabios/biossums_0.7a.bb
diff --git a/recipes-extended/vgabios/biossums_0.7a.bb b/recipes-extended/vgabios/biossums_0.7a.bb
new file mode 100644
index 0000000..276d037
--- /dev/null
+++ b/recipes-extended/vgabios/biossums_0.7a.bb
@@ -0,0 +1,36 @@
+DESCRIPTION = "biossums tool for building Plex86/Bochs LGPL VGABios"
+HOMEPAGE = "http://www.nongnu.org/vgabios/"
+LICENSE = "LGPLv2.1"
+SECTION = "firmware"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=dcf3c825659e82539645da41a7908589"
+
+SRC_URI = "http://savannah.gnu.org/download/vgabios/vgabios-${PV}.tgz"
+
+SRC_URI[md5sum] = "2c0fe5c0ca08082a9293e3a7b23dc900"
+SRC_URI[sha256sum] = "9d24c33d4bfb7831e2069cf3644936a53ef3de21d467872b54ce2ea30881b865"
+
+BBCLASSEXTEND = "native"
+
+FILES_${PN} = "${bindir}/biossums"
+
+S = "${WORKDIR}/vgabios-${PV}"
+
+do_configure() {
+ # Don't override the compiler or its flags:
+ sed 's,^CC,DISABLED_CC,' -i Makefile
+ sed 's,^CFLAGS,DISABLED_CFLAGS,' -i Makefile
+ # Supply the C flags to the compiler:
+ sed 's,-o biossums,$(CFLAGS) -o biossums,' -i Makefile
+}
+
+do_compile() {
+ # clean removes binaries distributed with source
+ oe_runmake clean
+ oe_runmake biossums
+}
+
+do_install() {
+ mkdir -p "${D}${bindir}"
+ install -m 0755 biossums "${D}${bindir}"
+}
diff --git a/recipes-extended/vgabios/vgabios_0.7a.bb b/recipes-extended/vgabios/vgabios_0.7a.bb
index 0ed8bb4..8c89041 100644
--- a/recipes-extended/vgabios/vgabios_0.7a.bb
+++ b/recipes-extended/vgabios/vgabios_0.7a.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://www.nongnu.org/vgabios/"
LICENSE = "LGPLv2.1"
SECTION = "firmware"
-DEPENDS = "dev86-native"
+DEPENDS = "dev86-native biossums-native"
LIC_FILES_CHKSUM = "file://COPYING;md5=dcf3c825659e82539645da41a7908589"
@@ -20,7 +20,9 @@ FILES_${PN}-dbg = "/usr/share/firmware/${PN}-${PV}*.debug.bin"
S = "${WORKDIR}/${PN}-${PV}"
do_configure() {
- echo "Skip do_configure"
+ # Override to use the native-built biossums tool:
+ sed 's,./biossums,biossums,' -i Makefile
+ sed 's,$(CC) -o biossums biossums.c,touch biossums,' -i Makefile
}
do_install() {
--
2.1.4
More information about the meta-virtualization
mailing list