On 12/6/2022 11:45 AM, Randolph Sapp wrote:
Individually package rogue graphics components to prevent conflicts with
other recipes.

The package ti-img-rogue-umlibs will now distribute the window system
agnostic components of the DDK. This being the IMG's implementations of
OpenGLES, OpenCL, and Vulkan in binary format and the device firmware.
These are the only components that cannot be open source currently.

The mesa component is currently piggybacking off the default mesa
package. It's not elegant, but it reflects the implementation well and
allows users to config mesa as needed.

Signed-off-by: Randolph Sapp <[email protected]>
---
  meta-ti-bsp/conf/machine/include/am62xx.inc   |   4 -
  meta-ti-bsp/conf/machine/include/j721e.inc    |   4 -
  meta-ti-bsp/conf/machine/include/j721s2.inc   |   4 -
  ...-OpenEmbedded-nodistro-internal-aarc.patch |  29 --
  ...bb => ti-img-rogue-driver_1.18.6276027.bb} |  12 +-
  .../ti-img-rogue-umlibs_1.15.6133109.bb       |  71 ----
  .../ti-img-rogue-umlibs_1.18.6276027.bb       |  55 +++
  ...nd-deprecate-drm_handle_format-and-d.patch | 158 +++++++++
  ...fine-__NR_futex-if-it-does-not-exist.patch |  34 ++
  ...sdetects-64bit-atomics-on-mips-clang.patch |  25 ++
  ...k-for-all-linux-host_os-combinations.patch |  43 +++
  ...ormat-Check-for-NEON-before-using-it.patch |  47 +++
  ...02-meson.build-make-TLS-ELF-optional.patch |  61 ++++
  .../recipes-graphics/mesa/mesa-gl_22.0.3.bb   |  13 +
  .../recipes-graphics/mesa/mesa_22.0.3.bb      |   1 +
  .../recipes-graphics/mesa/rogue-mesa.inc      |  28 ++
  .../recipes-graphics/mesa/vanilla-mesa.inc    | 320 ++++++++++++++++++
  17 files changed, 790 insertions(+), 119 deletions(-)



--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/mesa/rogue-mesa.inc
@@ -0,0 +1,28 @@
+require vanilla-mesa.inc

This include logic seems a little convoluted. I think it might a little cleaner if the mesa.bb files just included somthing like mesa.inc (like how oe is packaged).

Rename vanilla-mesa.inc to just mesa.inc.

Then at the end of the mesa.inc you could simply have something like this:

# Apply rogue driver overrides if applicable
require ${@bb.utils.contains('PREFERRED_PROVIDER_virtual/gpudriver', 'ti-img-rogue-driver', 'rogue-mesa.inc', '', d)}


+BRANCH = "rogue/kirkstone/pvr-1.18/22.0"
+
+SRC_URI = 
"git://gitlab.freedesktop.org/StaticRocket/mesa.git;protocol=https;branch=${BRANCH}
 \
+           
file://0001-meson.build-check-for-all-linux-host_os-combinations.patch \
+           file://0002-meson.build-make-TLS-ELF-optional.patch \
+           file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
+           file://0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch \
+           file://0001-util-format-Check-for-NEON-before-using-it.patch \
+           
file://0001-Revert-egl-wayland-deprecate-drm_handle_format-and-d.patch \
+           "
+
+S = "${WORKDIR}/git"
+
+SRCREV = "fddf5106f04de2bd35892d30e5574c0b2881edd9"
+
+PV:append = "+rogue"
+
+GALLIUMDRIVERS:append = ",pvr"
+
+EXTRA_OEMESON:append = " -Dgallium-pvr-alias=tidss"
+
+do_install:append () {
+    # remove pvr custom pkgconfig
+    rm -rf ${D}${datadir}/pkgconfig
+}
+
+RRECOMMENDS:mesa-megadriver += "ti-img-rogue-driver ti-img-rogue-umlibs"


This line needs to be:

RRECOMMENDS:class-target:mesa-megadriver += "ti-img-rogue-driver ti-img-rogue-umlibs"

Otherwise there are build dependency errors related to trying to build native/nativesdk versions of the rogue driver and umlibs, which we do not need/want to do.


--
Ryan Eatmon                [email protected]
-----------------------------------------
Texas Instruments, Inc.  -  LCPD  -  MGTS
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#15419): 
https://lists.yoctoproject.org/g/meta-ti/message/15419
Mute This Topic: https://lists.yoctoproject.org/mt/95498459/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-ti/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to