From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ptmx.org (ptmx.org [178.63.28.110]) by mail.openembedded.org (Postfix) with ESMTP id 3A2BE6BF67 for ; Mon, 2 Sep 2013 18:10:17 +0000 (UTC) Received: from [192.168.178.14] (chello080108009040.14.11.vie.surfer.at [80.108.9.40]) by ptmx.org (Postfix) with ESMTPSA id 07A112A5D6 for ; Mon, 2 Sep 2013 20:10:14 +0200 (CEST) Message-ID: <5224D4A7.6080703@pseudoterminal.org> Date: Mon, 02 Sep 2013 20:10:47 +0200 From: Carlos Rafael Giani User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130806 Thunderbird/17.0.8 MIME-Version: 1.0 To: openembedded-core@lists.openembedded.org References: <1378138412-10373-1-git-send-email-ross.burton@intel.com> In-Reply-To: <1378138412-10373-1-git-send-email-ross.burton@intel.com> Subject: Re: [PATCH] eglinfo: add recipes for x11 and fb backends X-BeenThere: openembedded-core@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Patches and discussions about the oe-core layer List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Sep 2013 18:10:17 -0000 Content-Type: multipart/alternative; boundary="------------080803070002060001030401" --------------080803070002060001030401 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit 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 . > > Signed-off-by: Ross Burton > --- > 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} > +} --------------080803070002060001030401 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit
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}
+}

--------------080803070002060001030401--