On 10/25/22 9:08 AM, Paul Barker wrote:
Hi Andrew,
On 17/10/2022 15:30, Andrew Davis wrote:
I'm attaching a patch for meta-ti that should
get both core-image-x11 and core-image-weston building for Kirkstone.
I'll give this a test this week. I've included some review comments
below so we can hopefully get something merged to fix this issue...
From c81fbae2cf7787ed01ee00b378e95be9d653d7df Mon Sep 17 00:00:00 2001
From: Andrew Davis <[email protected]>
Date: Thu, 13 Oct 2022 09:59:46 -0500
Subject: [PATCH] Add core-image-weston and core-image-x11 support
This is more changes than I would normally like in a single commit
but these all do seem so logically connected. The goal being to
enable the two oe-core graphical images.
These changes are needed due to our MACHINES all only having GLES2
and not the desktop OpenGL versions. That would mean these belong
in the layer that adds the machines and not in a distro layer.
At some point we should add a new MACHINE_FEATURE that lets a BSP
layer specify the API supported by the hardware. Until then
we append these key recipes to switch them over to GLES2.
Signed-off-by: Andrew Davis <[email protected]>
I expect the long-term solution will be to add a "gles2" entry to
MACHINE_FEATURES on the Yocto master branch, but I doubt that will be
accepted onto the existing kirkstone branch. In the meantime we do need
a solution which can be applied for kirkstone.
Right, far too late to refactor that in kirkstone. For that we will
just have to live with the fixups in meta-ti.
Are the changes here expected to work for all TI targets or just the
AM335x SoC? i.e. can this be applied to the kirkstone branch in meta-ti
once refactored into a couple of different commits (e.g. one per
package)?
Should work on all TI targets.
---
.../recipes-graphics/cairo/cairo_%.bbappend | 3 ++
...abling-patch-to-not-exclude-libepoxy.patch | 46 +++++++++++++++++++
.../recipes-graphics/gtk+/gtk+3_%.bbappend | 9 ++++
.../libepoxy/libepoxy_%.bbappend | 3 ++
.../xorg-xserver/xserver-xorg_%.bbappend | 2 +
.../xwayland/xwayland_%.bbappend | 3 ++
6 files changed, 66 insertions(+)
create mode 100644 meta-ti-bsp/recipes-graphics/cairo/cairo_%.bbappend
create mode 100644
meta-ti-bsp/recipes-graphics/gtk+/gtk+3/0001-Fix-OpenGL-disabling-patch-to-not-exclude-libepoxy.patch
create mode 100644 meta-ti-bsp/recipes-graphics/gtk+/gtk+3_%.bbappend
create mode 100644 meta-ti-bsp/recipes-graphics/libepoxy/libepoxy_%.bbappend
create mode 100644
meta-ti-bsp/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
create mode 100644 meta-ti-bsp/recipes-graphics/xwayland/xwayland_%.bbappend
diff --git a/meta-ti-bsp/recipes-graphics/cairo/cairo_%.bbappend
b/meta-ti-bsp/recipes-graphics/cairo/cairo_%.bbappend
new file mode 100644
index 00000000..726f3911
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/cairo/cairo_%.bbappend
@@ -0,0 +1,3 @@
+PR:append:ti-soc = ".ti1"
+PACKAGECONFIG:append:ti-soc = " ${@bb.utils.contains('MACHINE_FEATURES', 'gpu',
'egl glesv2', '', d)}"
+PACKAGECONFIG:remove:ti-soc = "opengl"
diff --git
a/meta-ti-bsp/recipes-graphics/gtk+/gtk+3/0001-Fix-OpenGL-disabling-patch-to-not-exclude-libepoxy.patch
b/meta-ti-bsp/recipes-graphics/gtk+/gtk+3/0001-Fix-OpenGL-disabling-patch-to-not-exclude-libepoxy.patch
new file mode 100644
index 00000000..c873fb8d
--- /dev/null
+++
b/meta-ti-bsp/recipes-graphics/gtk+/gtk+3/0001-Fix-OpenGL-disabling-patch-to-not-exclude-libepoxy.patch
@@ -0,0 +1,46 @@
+From eb16e80bf1f7c51024f3ed950ae85541e5ba2233 Mon Sep 17 00:00:00 2001
+From: Andrew Davis <[email protected]>
+Date: Wed, 12 Oct 2022 13:05:45 -0500
+Subject: [PATCH] Fix OpenGL disabling patch to not exclude libepoxy
+
+Upstream-Status: Inappropriate
+Signed-off-by: Andrew Davis <[email protected]>
I think this is appropriate to fix upstream.
This patch fixes another patch in oe-core. Upstream gtk+3 doesn't have this
issue.
Andrew
+---
+ configure.ac | 9 ++++-----
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 3cb24e9..aa365be 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -348,10 +348,9 @@ AC_ARG_ENABLE(cloudproviders,
+ [cloudproviders_set=yes])
+ AC_ARG_ENABLE(opengl,
+ [AS_HELP_STRING([--enable-opengl],
+- [When enabled, Gtk+ will use libepoxy and
exposes GtkGLArea widget ])])
++ [When enabled, Gtk+ exposes GtkGLArea widget
])])
+ AS_IF([test "x$enable_opengl" != "xno"], [
+- AC_DEFINE([HAVE_OPENGL], [1], [libepoxy and opengl APIs are available at
buildtime])
+- EPOXY_PACKAGES="epoxy >= epoxy_required_version"
++ AC_DEFINE([HAVE_OPENGL], [1], [OpenGL APIs are available at buildtime])
This section can be changed to always define EPOXY_PACKAGES, or to
define it when `--enable-epoxy` is passed on the command line if we need
a way to enable/disable this dependency to be able to submit the patch
upstream.
+ ])
+ AM_CONDITIONAL([HAVE_OPENGL],[test "x$enable_opengl" != "xno"])
+
+@@ -1365,7 +1364,7 @@ CFLAGS="$saved_cflags"
+ LDFLAGS="$saved_ldflags"
+
+ GDK_PACKAGES="$PANGO_PACKAGES gdk-pixbuf-2.0 >= gdk_pixbuf_required_version cairo >=
cairo_required_version cairo-gobject >= cairo_required_version"
+-GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $cairo_backends
$EPOXY_PACKAGES $CLOUDPROVIDER_PACKAGES $PROFILER_PACKAGES fribidi >=
fribidi_required_version"
++GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $cairo_backends
epoxy >= epoxy_required_version $CLOUDPROVIDER_PACKAGES $PROFILER_PACKAGES fribidi >=
fribidi_required_version"
This line can remain unchanged if EPOXY_PACKAGES is unconditionally
defined above.
+
+ PKG_CHECK_MODULES(GDK_DEP, $GDK_PACKAGES $GDK_PRIVATE_PACKAGES)
+ GDK_DEP_LIBS="$GDK_EXTRA_LIBS $GDK_DEP_LIBS $MATH_LIB"
+@@ -1399,7 +1398,7 @@ fi
+ PKG_CHECK_MODULES(ATK, $ATK_PACKAGES)
+
+ GTK_PACKAGES="atk >= atk_required_version cairo >= cairo_required_version cairo-gobject
>= cairo_required_version gdk-pixbuf-2.0 >= gdk_pixbuf_required_version gio-2.0 >=
glib_required_version"
+-GTK_PRIVATE_PACKAGES="$ATK_PACKAGES $WAYLAND_PACKAGES $EPOXY_PACKAGES fribidi >=
fribidi_required_version"
++GTK_PRIVATE_PACKAGES="$ATK_PACKAGES $WAYLAND_PACKAGES epoxy >= epoxy_required_version
fribidi >= fribidi_required_version"
As above.
+ if test "x$enable_x11_backend" = xyes -o "x$enable_wayland_backend" = xyes;
then
+ GTK_PRIVATE_PACKAGES="$GTK_PRIVATE_PACKAGES pangoft2"
+ fi
diff --git a/meta-ti-bsp/recipes-graphics/gtk+/gtk+3_%.bbappend
b/meta-ti-bsp/recipes-graphics/gtk+/gtk+3_%.bbappend
new file mode 100644
index 00000000..b6e82d14
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/gtk+/gtk+3_%.bbappend
@@ -0,0 +1,9 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
+
+SRC_URI:append:ti-soc = " \
+ file://0001-Fix-OpenGL-disabling-patch-to-not-exclude-libepoxy.patch \
+"
+
+PR:append:ti-soc = ".ti1"
+PACKAGECONFIG:remove:ti-soc = "opengl"
+DEPENDS:append:ti-soc = " libepoxy"
diff --git a/meta-ti-bsp/recipes-graphics/libepoxy/libepoxy_%.bbappend
b/meta-ti-bsp/recipes-graphics/libepoxy/libepoxy_%.bbappend
new file mode 100644
index 00000000..aadf5bab
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/libepoxy/libepoxy_%.bbappend
@@ -0,0 +1,3 @@
+PR:append:ti-soc = ".ti1"
+PACKAGECONFIG:append:ti-soc = " ${@bb.utils.contains('MACHINE_FEATURES', 'gpu',
'egl', '', d)}"
+PACKAGECONFIG:remove:ti-soc = "x11"
diff --git a/meta-ti-bsp/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
b/meta-ti-bsp/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
new file mode 100644
index 00000000..86c1e714
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
@@ -0,0 +1,2 @@
+PR:append:ti-soc = ".ti1"
+OPENGL_PKGCONFIGS:ti-soc = ""
diff --git a/meta-ti-bsp/recipes-graphics/xwayland/xwayland_%.bbappend
b/meta-ti-bsp/recipes-graphics/xwayland/xwayland_%.bbappend
new file mode 100644
index 00000000..e7163207
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/xwayland/xwayland_%.bbappend
@@ -0,0 +1,3 @@
+PR:append:ti-soc = ".ti1"
+PACKAGECONFIG:remove:ti-soc = "glx"
+DEPENDS:append:ti-soc = " libxshmfence"
Thanks,
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#15207):
https://lists.yoctoproject.org/g/meta-ti/message/15207
Mute This Topic: https://lists.yoctoproject.org/mt/93954566/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-ti/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-