Patchwork eglinfo: add recipes for x11 and fb backends

login
register
mail settings
Submitter Ross Burton
Date Sept. 2, 2013, 4:13 p.m.
Message ID <1378138412-10373-1-git-send-email-ross.burton@intel.com>
Download mbox | patch
Permalink /patch/57239/
State Accepted
Commit a8835cc014d761bf18a420b48c7c61cdfeded552
Headers show

Comments

Ross Burton - Sept. 2, 2013, 4:13 p.m.
eglinfo is a small utility for printing out information about EGL as well
as about its client APIs, OpenGL / OpenGLES 1.x / OpenGLES 2.x / OpenVG.

Recipe originally by Carlos Rafael Giani <dv@pseudoterminal.org>.

Signed-off-by: Ross Burton <ross.burton@intel.com>
---
 meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb  |   11 ++++++++
 meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb |    8 ++++++
 meta/recipes-graphics/eglinfo/eglinfo.inc        |   32 ++++++++++++++++++++++
 3 files changed, 51 insertions(+)
 create mode 100644 meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb
 create mode 100644 meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb
 create mode 100644 meta/recipes-graphics/eglinfo/eglinfo.inc
dv - Sept. 2, 2013, 6:10 p.m.
On 2013-09-02 18:13, Ross Burton wrote:

Oh, nice to see my utility here again I have to admit, this was one of 
the first recipes I ever wrote. Somebody mentioned concerns about it 
being machine-specific. I think this is the case if EGLINFO_DEVICE is 
set to anything other than "generic". I faced a similar situation with 
the GStreamer 1.0 OpenMAX plugins, and solved this with python code: 
https://github.com/dv1/meta-gstreamer1.0/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-omx.inc#L20 

So, if EGLINFO_DEVICE is not set to generic, PACKAGE_ARCH is 
automatically set to MACHINE_ARCH. I would introduce this in the recipe, 
but do not have the time right now, unfortunately

The other concern is Wayland support. There isn't any yet.

> eglinfo is a small utility for printing out information about EGL as well
> as about its client APIs, OpenGL / OpenGLES 1.x / OpenGLES 2.x / OpenVG.
>
> Recipe originally by Carlos Rafael Giani <dv@pseudoterminal.org>.
>
> Signed-off-by: Ross Burton <ross.burton@intel.com>
> ---
>   meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb  |   11 ++++++++
>   meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb |    8 ++++++
>   meta/recipes-graphics/eglinfo/eglinfo.inc        |   32 
> ++++++++++++++++++++++
>   3 files changed, 51 insertions(+)
>   create mode 100644 meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb
>   create mode 100644 meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb
>   create mode 100644 meta/recipes-graphics/eglinfo/eglinfo.inc
>
> diff --git a/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb 
> b/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb
> new file mode 100644
> index 0000000..65b265f
> --- /dev/null
> +++ b/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb
> @@ -0,0 +1,11 @@
> +EGLINFO_PLATFORM ?= "fb"
> +EGLINFO_BINARY_NAME ?= "eglinfo-fb"
> +
> +# .bbappend files in BSP meta layers can add EGLINFO_DEVICE
> +# values if necessary. eglinfo.inc contains default values for
> +# the currently supported devices.
> +# Consult the eglinfo README.md for details
> +
> +include eglinfo.inc
> +
> +SUMMARY += "(Framebuffer version)"
> diff --git a/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb 
> b/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb
> new file mode 100644
> index 0000000..18fc893
> --- /dev/null
> +++ b/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb
> @@ -0,0 +1,8 @@
> +EGLINFO_PLATFORM ?= "x11"
> +EGLINFO_BINARY_NAME ?= "eglinfo-x11"
> +
> +include eglinfo.inc
> +
> +DEPENDS += "virtual/libx11"
> +
> +SUMMARY += "(X11 version)"
> diff --git a/meta/recipes-graphics/eglinfo/eglinfo.inc 
> b/meta/recipes-graphics/eglinfo/eglinfo.inc
> new file mode 100644
> index 0000000..d53d0ff
> --- /dev/null
> +++ b/meta/recipes-graphics/eglinfo/eglinfo.inc
> @@ -0,0 +1,32 @@
> +SUMMARY = "Utility for printing information EGL and its client APIs 
> (OpenGL, OpenGL ES, OpenVG)"
> +SECTION = "graphics"
> +LICENSE = "Zlib"
> +HOMEPAGE = "https://github.com/dv1/eglinfo"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=8d4f33bc3add976f7dfae85dab66f03c"
> +
> +DEPENDS = "virtual/egl"
> +
> +SRC_URI = "git://github.com/dv1/eglinfo.git;branch=master"
> +SRCREV = "4a49ff59545d9b6a8222badab64115f89d3a6774"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit waf
> +
> +# BSP layers should add .bbappend files for the -x11 and -fb .bb 
> recipes,
> +# which append the respective EGL/OpenGLES/OpenVG libraries to DEPENDS
> +# not doing that here, since some platforms might not have OpenGL ES 
> or OpenVG support
> +# (in that case, the eglinfo build scripts automatically disable the 
> relevant code paths)
> +
> +EGLINFO_DEVICE ?= "generic"
> +EGLINFO_DEVICE_raspberrypi ?= "raspberrypi"
> +EGLINFO_DEVICE_beagleboard ?= "beagleboard"
> +EGLINFO_DEVICE_mx6 ?= "imx6"
> +
> +EXTRA_OECONF = "--platform=${EGLINFO_PLATFORM} \
> +                --device=${EGLINFO_DEVICE} \
> +                --sysroot ${STAGING_DIR_TARGET}"
> +
> +do_install_append() {
> +    mv ${D}/${bindir}/eglinfo ${D}/${bindir}/${EGLINFO_BINARY_NAME}
> +}

Patch

diff --git a/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb b/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb
new file mode 100644
index 0000000..65b265f
--- /dev/null
+++ b/meta/recipes-graphics/eglinfo/eglinfo-fb_1.0.bb
@@ -0,0 +1,11 @@ 
+EGLINFO_PLATFORM ?= "fb"
+EGLINFO_BINARY_NAME ?= "eglinfo-fb"
+
+# .bbappend files in BSP meta layers can add EGLINFO_DEVICE
+# values if necessary. eglinfo.inc contains default values for
+# the currently supported devices.
+# Consult the eglinfo README.md for details
+
+include eglinfo.inc
+
+SUMMARY += "(Framebuffer version)"
diff --git a/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb b/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb
new file mode 100644
index 0000000..18fc893
--- /dev/null
+++ b/meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.bb
@@ -0,0 +1,8 @@ 
+EGLINFO_PLATFORM ?= "x11"
+EGLINFO_BINARY_NAME ?= "eglinfo-x11"
+
+include eglinfo.inc
+
+DEPENDS += "virtual/libx11"
+
+SUMMARY += "(X11 version)"
diff --git a/meta/recipes-graphics/eglinfo/eglinfo.inc b/meta/recipes-graphics/eglinfo/eglinfo.inc
new file mode 100644
index 0000000..d53d0ff
--- /dev/null
+++ b/meta/recipes-graphics/eglinfo/eglinfo.inc
@@ -0,0 +1,32 @@ 
+SUMMARY = "Utility for printing information EGL and its client APIs (OpenGL, OpenGL ES, OpenVG)"
+SECTION = "graphics"
+LICENSE = "Zlib"
+HOMEPAGE = "https://github.com/dv1/eglinfo"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8d4f33bc3add976f7dfae85dab66f03c"
+
+DEPENDS = "virtual/egl"
+
+SRC_URI = "git://github.com/dv1/eglinfo.git;branch=master"
+SRCREV = "4a49ff59545d9b6a8222badab64115f89d3a6774"
+
+S = "${WORKDIR}/git"
+
+inherit waf
+
+# BSP layers should add .bbappend files for the -x11 and -fb .bb recipes,
+# which append the respective EGL/OpenGLES/OpenVG libraries to DEPENDS
+# not doing that here, since some platforms might not have OpenGL ES or OpenVG support
+# (in that case, the eglinfo build scripts automatically disable the relevant code paths)
+
+EGLINFO_DEVICE ?= "generic"
+EGLINFO_DEVICE_raspberrypi ?= "raspberrypi"
+EGLINFO_DEVICE_beagleboard ?= "beagleboard"
+EGLINFO_DEVICE_mx6 ?= "imx6"
+
+EXTRA_OECONF = "--platform=${EGLINFO_PLATFORM} \
+                --device=${EGLINFO_DEVICE} \
+                --sysroot ${STAGING_DIR_TARGET}"
+
+do_install_append() {
+	mv ${D}/${bindir}/eglinfo ${D}/${bindir}/${EGLINFO_BINARY_NAME}
+}