All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] Add vulkan validation and improvements for headless devices
@ 2022-11-10 20:42 Jordan Crouse
  2022-11-10 20:42 ` [PATCH 1/3] spirv-tools: Correctly set the prefix in exported cmake packages Jordan Crouse
                   ` (2 more replies)
  0 siblings, 3 replies; 18+ messages in thread
From: Jordan Crouse @ 2022-11-10 20:42 UTC (permalink / raw)
  To: openembedded-core; +Cc: Jordan Crouse

This small patchset has a few small fixes and a new recipe for the official
Vulkan validation layers from Khronos.

The first patch addresses a bug in the exported cmake packages from
spriv-tools to make sure that the library path is correctly set.  The
second patch enables vulkan-loader for "headless" devices that don't have
either X11 nor Wayland.  The third patch adds the vulkan-validation for the
same version level as the Vulkan headers and other packages.

Jordan Crouse (3):
  spirv-tools: Correctly set the prefix in exported cmake packages
  vulkan-loader: Allow headless targets to build the loader
  vulkan-validation: Add the official Vulkan validation layers

 .../spir/spirv-tools_1.3.231.1.bb             |  7 ++-
 .../vulkan/vulkan-loader_1.3.231.1.bb         |  2 -
 .../vulkan/vulkan-validation_1.3.231.1.bb     | 46 +++++++++++++++++++
 3 files changed, 51 insertions(+), 4 deletions(-)
 create mode 100644 meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb

-- 
2.37.1



^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH 1/3] spirv-tools: Correctly set the prefix in exported cmake packages
  2022-11-10 20:42 [PATCH 0/3] Add vulkan validation and improvements for headless devices Jordan Crouse
@ 2022-11-10 20:42 ` Jordan Crouse
  2022-11-10 20:43   ` [OE-core] " Khem Raj
  2022-11-11 10:44   ` Jose Quaresma
  2022-11-10 20:42 ` [PATCH 2/3] vulkan-loader: Allow headless targets to build the loader Jordan Crouse
  2022-11-10 20:42 ` [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers Jordan Crouse
  2 siblings, 2 replies; 18+ messages in thread
From: Jordan Crouse @ 2022-11-10 20:42 UTC (permalink / raw)
  To: openembedded-core; +Cc: Jordan Crouse

spirv-tools exports Cmake packages.  When they are installed the
INTERFACE_LINK_LIBRARIES variable is not correctly updated to use
_IMPORT_PREFIX like the other variables. This may have something to do with
the path to the sysroot being different than the source path.

The existing recipe recognizes that the sysroot path made it through to the
install and tries to get rid of it, but this just ends up with dependent
tools looking in vain for /usr/lib/librt.so.

Replace the INTERFACE_LINK_LIBRARIES value in SPIRV-ToolsTarget.cmake with
"${IMPORT_PREFIX}/lib".

Signed-off-by: Jordan Crouse <jorcrous@amazon.com>
---

 meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb b/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
index ea47796543..fdc9c9225a 100644
--- a/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
+++ b/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
@@ -10,6 +10,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
 SRCREV = "eb0a36633d2acf4de82588504f951ad0f2cecacb"
 SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git;branch=master;protocol=https"
 PE = "1"
+PR = "r1"
+
 UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
 S = "${WORKDIR}/git"
 
@@ -25,9 +27,10 @@ EXTRA_OECMAKE += "\
 "
 
 do_install:append:class-target() {
-    # reproducibility: remove build host path
+    # Properly set _IMPORT_PREFIX in INTERFACE_LINK_LIBRARIES so that dependent
+    # tools can find the right library
     sed -i ${D}${libdir}/cmake/SPIRV-Tools/SPIRV-ToolsTarget.cmake \
-        -e 's:${STAGING_DIR_HOST}::g'
+        -e 's:INTERFACE_LINK_LIBRARIES.*$:INTERFACE_LINK_LIBRARIES "\$\{_IMPORT_PREFIX\}/lib":'
 }
 
 # all the libraries are unversioned, so don't pack it on PN-dev
-- 
2.37.1



^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 2/3] vulkan-loader: Allow headless targets to build the loader
  2022-11-10 20:42 [PATCH 0/3] Add vulkan validation and improvements for headless devices Jordan Crouse
  2022-11-10 20:42 ` [PATCH 1/3] spirv-tools: Correctly set the prefix in exported cmake packages Jordan Crouse
@ 2022-11-10 20:42 ` Jordan Crouse
  2022-11-10 20:42 ` [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers Jordan Crouse
  2 siblings, 0 replies; 18+ messages in thread
From: Jordan Crouse @ 2022-11-10 20:42 UTC (permalink / raw)
  To: openembedded-core; +Cc: Jordan Crouse

vulkan-loader can build and work on headless targets without display
engines so there isn't any need for the ANY_OF_DISTRO_FEATURES restriction.

Signed-off-by: Jordan Crouse <jorcrous@amazon.com>
---

 meta/recipes-graphics/vulkan/vulkan-loader_1.3.231.1.bb | 2 --
 1 file changed, 2 deletions(-)

diff --git a/meta/recipes-graphics/vulkan/vulkan-loader_1.3.231.1.bb b/meta/recipes-graphics/vulkan/vulkan-loader_1.3.231.1.bb
index 59c52c1db7..7aab7446f6 100644
--- a/meta/recipes-graphics/vulkan/vulkan-loader_1.3.231.1.bb
+++ b/meta/recipes-graphics/vulkan/vulkan-loader_1.3.231.1.bb
@@ -17,7 +17,6 @@ S = "${WORKDIR}/git"
 REQUIRED_DISTRO_FEATURES = "vulkan"
 
 inherit cmake features_check pkgconfig
-ANY_OF_DISTRO_FEATURES = "x11 wayland"
 
 DEPENDS += "vulkan-headers"
 
@@ -29,7 +28,6 @@ EXTRA_OECMAKE = "\
                  -DVulkanRegistry_DIR=${RECIPE_SYSROOT}/${datadir} \
                  "
 
-# must choose x11 or wayland or both
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"
 
 PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr"
-- 
2.37.1



^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2022-11-10 20:42 [PATCH 0/3] Add vulkan validation and improvements for headless devices Jordan Crouse
  2022-11-10 20:42 ` [PATCH 1/3] spirv-tools: Correctly set the prefix in exported cmake packages Jordan Crouse
  2022-11-10 20:42 ` [PATCH 2/3] vulkan-loader: Allow headless targets to build the loader Jordan Crouse
@ 2022-11-10 20:42 ` Jordan Crouse
  2022-11-10 20:57   ` [OE-core] " Alexander Kanavin
  2022-11-13 22:11   ` Alexandre Belloni
  2 siblings, 2 replies; 18+ messages in thread
From: Jordan Crouse @ 2022-11-10 20:42 UTC (permalink / raw)
  To: openembedded-core; +Cc: Jordan Crouse

Add a recipe to build the Khronos official Vulkan validation layers that can
assist developers in verifying that their applications correctly use the
Vulkan APIs.

Signed-off-by: Jordan Crouse <jorcrous@amazon.com>
---

 .../vulkan/vulkan-validation_1.3.231.1.bb     | 46 +++++++++++++++++++
 1 file changed, 46 insertions(+)
 create mode 100644 meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb

diff --git a/meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb b/meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb
new file mode 100644
index 0000000000..3d592fe24a
--- /dev/null
+++ b/meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb
@@ -0,0 +1,46 @@
+SUMMARY = "Vulkan Validation layers"
+DESCRIPTION = "Khronos official Vulkan validation layers to assist developers \
+in verifying that their applications correctly use the Vulkan API"
+HOMEPAGE = "https://www.khronos.org/vulkan/"
+BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-ValidationLayers"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8df9e8826734226d08cb412babfa599c"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-ValidationLayers.git;branch=sdk-1.3.231;protocol=https"
+
+SRCREV="f489610de566df6a5c20de1a3e54776e0ad852e1"
+
+S = "${WORKDIR}/git"
+
+REQUIRED_DISTRO_FEATURES = "vulkan"
+
+inherit cmake features_check pkgconfig
+
+DEPENDS += "vulkan-headers"
+DEPENDS += "spirv-headers spirv-tools"
+DEPENDS += "vulkan-loader"
+DEPENDS += "glslang"
+
+EXTRA_OECMAKE = "\
+                 -DBUILD_TESTS=OFF \
+                 -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
+                 -DASSEMBLER_WORKS=FALSE \
+                 -DVULKAN_HEADERS_INSTALL_DIR=${STAGING_EXECPREFIXDIR} \
+                 -DGLSLANG_INSTALL_DIR=${STAGING_DATADIR} \
+                 -DSPIRV_HEADERS_INSTALL_DIR=${STAGING_EXECPREFIXDIR} \
+                 -DUSE_ROBIN_HOOD_HASHING=OFF \
+                 "
+
+PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr"
+PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
+
+FILES:${PN} += "/usr/share/vulkan/ /usr/lib/"
+
+INSANE_SKIP:${PN} += " ldflags"
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_SYSROOT_STRIP = "1"
+SOLIBS = ".so"
+FILES_SOLIBSDEV = ""
+
+UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
-- 
2.37.1



^ permalink raw reply related	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 1/3] spirv-tools: Correctly set the prefix in exported cmake packages
  2022-11-10 20:42 ` [PATCH 1/3] spirv-tools: Correctly set the prefix in exported cmake packages Jordan Crouse
@ 2022-11-10 20:43   ` Khem Raj
  2022-11-11 10:44   ` Jose Quaresma
  1 sibling, 0 replies; 18+ messages in thread
From: Khem Raj @ 2022-11-10 20:43 UTC (permalink / raw)
  To: jorcrous; +Cc: openembedded-core

On Thu, Nov 10, 2022 at 12:42 PM Jordan Crouse via
lists.openembedded.org <jorcrous=amazon.com@lists.openembedded.org>
wrote:
>
> spirv-tools exports Cmake packages.  When they are installed the
> INTERFACE_LINK_LIBRARIES variable is not correctly updated to use
> _IMPORT_PREFIX like the other variables. This may have something to do with
> the path to the sysroot being different than the source path.
>
> The existing recipe recognizes that the sysroot path made it through to the
> install and tries to get rid of it, but this just ends up with dependent
> tools looking in vain for /usr/lib/librt.so.
>
> Replace the INTERFACE_LINK_LIBRARIES value in SPIRV-ToolsTarget.cmake with
> "${IMPORT_PREFIX}/lib".
>
> Signed-off-by: Jordan Crouse <jorcrous@amazon.com>
> ---
>
>  meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb b/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
> index ea47796543..fdc9c9225a 100644
> --- a/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
> +++ b/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
> @@ -10,6 +10,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
>  SRCREV = "eb0a36633d2acf4de82588504f951ad0f2cecacb"
>  SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git;branch=master;protocol=https"
>  PE = "1"
> +PR = "r1"

We no longer bump the PR manually. So this is not needed.

> +
>  UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
>  S = "${WORKDIR}/git"
>
> @@ -25,9 +27,10 @@ EXTRA_OECMAKE += "\
>  "
>
>  do_install:append:class-target() {
> -    # reproducibility: remove build host path
> +    # Properly set _IMPORT_PREFIX in INTERFACE_LINK_LIBRARIES so that dependent
> +    # tools can find the right library
>      sed -i ${D}${libdir}/cmake/SPIRV-Tools/SPIRV-ToolsTarget.cmake \
> -        -e 's:${STAGING_DIR_HOST}::g'
> +        -e 's:INTERFACE_LINK_LIBRARIES.*$:INTERFACE_LINK_LIBRARIES "\$\{_IMPORT_PREFIX\}/lib":'
>  }
>
>  # all the libraries are unversioned, so don't pack it on PN-dev
> --
> 2.37.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#173108): https://lists.openembedded.org/g/openembedded-core/message/173108
> Mute This Topic: https://lists.openembedded.org/mt/94945230/1997914
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2022-11-10 20:42 ` [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers Jordan Crouse
@ 2022-11-10 20:57   ` Alexander Kanavin
  2022-11-10 21:30     ` Jordan Crouse
  2022-11-13 22:11   ` Alexandre Belloni
  1 sibling, 1 reply; 18+ messages in thread
From: Alexander Kanavin @ 2022-11-10 20:57 UTC (permalink / raw)
  To: jorcrous; +Cc: openembedded-core

On Thu, 10 Nov 2022 at 21:42, Jordan Crouse via lists.openembedded.org
<jorcrous=amazon.com@lists.openembedded.org> wrote:
> +DEPENDS += "vulkan-headers"
> +DEPENDS += "spirv-headers spirv-tools"
> +DEPENDS += "vulkan-loader"
> +DEPENDS += "glslang"

This should be squashed into a single line.

> +
> +EXTRA_OECMAKE = "\
> +                 -DBUILD_TESTS=OFF \
> +                 -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
> +                 -DASSEMBLER_WORKS=FALSE \
> +                 -DVULKAN_HEADERS_INSTALL_DIR=${STAGING_EXECPREFIXDIR} \
> +                 -DGLSLANG_INSTALL_DIR=${STAGING_DATADIR} \
> +                 -DSPIRV_HEADERS_INSTALL_DIR=${STAGING_EXECPREFIXDIR} \
> +                 -DUSE_ROBIN_HOOD_HASHING=OFF \
> +                 "

Some of the choices here would be good to explain in the commit
message. What is this 'robin hood hashing' and why do we not want it?
:)

> +
> +PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr"
> +PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"

These should be enabled by default subject to DISTRO_FEATURES.

> +FILES:${PN} += "/usr/share/vulkan/ /usr/lib/"
> +
> +INSANE_SKIP:${PN} += " ldflags"
> +INHIBIT_PACKAGE_STRIP = "1"
> +INHIBIT_SYSROOT_STRIP = "1"
> +SOLIBS = ".so"
> +FILES_SOLIBSDEV = ""

All of the above should be removed. If there are error messages due to
that, please show them, and we'll figure out how to address them
properly.

New recipes also need a meta/conf/distro/inclue/maintainers.inc entry.

Alex


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2022-11-10 20:57   ` [OE-core] " Alexander Kanavin
@ 2022-11-10 21:30     ` Jordan Crouse
  2022-11-11  8:03       ` Alexander Kanavin
  0 siblings, 1 reply; 18+ messages in thread
From: Jordan Crouse @ 2022-11-10 21:30 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: openembedded-core

On Thu, Nov 10, 2022 at 09:57:55PM +0100, Alexander Kanavin wrote:
> On Thu, 10 Nov 2022 at 21:42, Jordan Crouse via lists.openembedded.org

<snip>

> > +FILES:${PN} += "/usr/share/vulkan/ /usr/lib/"
> > +
> > +INSANE_SKIP:${PN} += " ldflags"
> > +INHIBIT_PACKAGE_STRIP = "1"
> > +INHIBIT_SYSROOT_STRIP = "1"
> > +SOLIBS = ".so"
> > +FILES_SOLIBSDEV = ""
> 
> All of the above should be removed. If there are error messages due to
> that, please show them, and we'll figure out how to address them
> properly.

ERROR: vulkan-validation-1.3.231.1-r0 do_package_qa: QA Issue: -dev package vulkan-validation-dev contains non-symlink .so '/usr/lib/libVkLayer_khronos_validation.so' [dev-elf]

I borrowed the QA inhibit from vulkan-loader (since they are built
mostly the same) but if there is a different path forward, that would be
great.

Jordan


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2022-11-10 21:30     ` Jordan Crouse
@ 2022-11-11  8:03       ` Alexander Kanavin
  2022-11-11 15:27         ` Jordan Crouse
  0 siblings, 1 reply; 18+ messages in thread
From: Alexander Kanavin @ 2022-11-11  8:03 UTC (permalink / raw)
  To: Jordan Crouse; +Cc: openembedded-core

On Thu, 10 Nov 2022 at 22:30, Jordan Crouse <jorcrous@amazon.com> wrote:
> ERROR: vulkan-validation-1.3.231.1-r0 do_package_qa: QA Issue: -dev package vulkan-validation-dev contains non-symlink .so '/usr/lib/libVkLayer_khronos_validation.so' [dev-elf]
>
> I borrowed the QA inhibit from vulkan-loader (since they are built
> mostly the same) but if there is a different path forward, that would be
> great.

Thanks. I am not seeing QA inhibits or any special handling in the
current vulkan-loader:
https://git.yoctoproject.org/poky/tree/meta/recipes-graphics/vulkan/vulkan-loader_1.3.231.1.bb?h=master-next

Can you find out why the /usr/lib/libVkLayer_khronos_validation.so is
built unversioned and where in the source tree that decision is made?

We generally require that everything in $libdir is versioned, and .so
is a development symlink to versioned originals.

Alex


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 1/3] spirv-tools: Correctly set the prefix in exported cmake packages
  2022-11-10 20:42 ` [PATCH 1/3] spirv-tools: Correctly set the prefix in exported cmake packages Jordan Crouse
  2022-11-10 20:43   ` [OE-core] " Khem Raj
@ 2022-11-11 10:44   ` Jose Quaresma
  1 sibling, 0 replies; 18+ messages in thread
From: Jose Quaresma @ 2022-11-11 10:44 UTC (permalink / raw)
  To: jorcrous; +Cc: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 2772 bytes --]

Jordan Crouse via lists.openembedded.org <jorcrous=
amazon.com@lists.openembedded.org> escreveu no dia quinta, 10/11/2022 à(s)
20:42:

> spirv-tools exports Cmake packages.  When they are installed the
> INTERFACE_LINK_LIBRARIES variable is not correctly updated to use
> _IMPORT_PREFIX like the other variables. This may have something to do with
> the path to the sysroot being different than the source path.
>
> The existing recipe recognizes that the sysroot path made it through to the
> install and tries to get rid of it, but this just ends up with dependent
> tools looking in vain for /usr/lib/librt.so.
>
> Replace the INTERFACE_LINK_LIBRARIES value in SPIRV-ToolsTarget.cmake with
> "${IMPORT_PREFIX}/lib".
>
> Signed-off-by: Jordan Crouse <jorcrous@amazon.com>
> ---
>
>  meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
> b/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
> index ea47796543..fdc9c9225a 100644
> --- a/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
> +++ b/meta/recipes-graphics/spir/spirv-tools_1.3.231.1.bb
> @@ -10,6 +10,8 @@ LIC_FILES_CHKSUM =
> "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
>  SRCREV = "eb0a36633d2acf4de82588504f951ad0f2cecacb"
>  SRC_URI = "git://
> github.com/KhronosGroup/SPIRV-Tools.git;branch=master;protocol=https"
>  PE = "1"
> +PR = "r1"
> +
>  UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
>  S = "${WORKDIR}/git"
>
> @@ -25,9 +27,10 @@ EXTRA_OECMAKE += "\
>  "
>
>  do_install:append:class-target() {
> -    # reproducibility: remove build host path
> +    # Properly set _IMPORT_PREFIX in INTERFACE_LINK_LIBRARIES so that
> dependent
> +    # tools can find the right library
>      sed -i ${D}${libdir}/cmake/SPIRV-Tools/SPIRV-ToolsTarget.cmake \
> -        -e 's:${STAGING_DIR_HOST}::g'
> +        -e 's:INTERFACE_LINK_LIBRARIES.*$:INTERFACE_LINK_LIBRARIES
> "\$\{_IMPORT_PREFIX\}/lib":'
>

As this change don't use any bitbake variable can it be done patching the
cmake source file?

Jose


>  }
>
>  # all the libraries are unversioned, so don't pack it on PN-dev
> --
> 2.37.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#173108):
> https://lists.openembedded.org/g/openembedded-core/message/173108
> Mute This Topic: https://lists.openembedded.org/mt/94945230/5052612
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> quaresma.jose@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>

-- 
Best regards,

José Quaresma

[-- Attachment #2: Type: text/html, Size: 4684 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2022-11-11  8:03       ` Alexander Kanavin
@ 2022-11-11 15:27         ` Jordan Crouse
  2022-11-11 17:31           ` Alexander Kanavin
  0 siblings, 1 reply; 18+ messages in thread
From: Jordan Crouse @ 2022-11-11 15:27 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: openembedded-core

On Fri, Nov 11, 2022 at 09:03:02AM +0100, Alexander Kanavin wrote:
> On Thu, 10 Nov 2022 at 22:30, Jordan Crouse <jorcrous@amazon.com> wrote:
> > ERROR: vulkan-validation-1.3.231.1-r0 do_package_qa: QA Issue: -dev package vulkan-validation-dev contains non-symlink .so '/usr/lib/libVkLayer_khronos_validation.so' [dev-elf]
> >
> > I borrowed the QA inhibit from vulkan-loader (since they are built
> > mostly the same) but if there is a different path forward, that would be
> > great.
> 
> Thanks. I am not seeing QA inhibits or any special handling in the
> current vulkan-loader:
> https://git.yoctoproject.org/poky/tree/meta/recipes-graphics/vulkan/vulkan-loader_1.3.231.1.bb?h=master-next

That was my mistake, I guess I don't clearly remember why these were
added in our downstream tree - clearly a poorly executed effort at
getting rid of the error.

> Can you find out why the /usr/lib/libVkLayer_khronos_validation.so is
> built unversioned and where in the source tree that decision is made?

These libraries (plugins, really) are dynamically loaded by the vulkan-loader at runtime. 

I couldn't immediately find an standard online but a cursory glance of the vulkan
drivers/layers from other distros use a .so format, for example:

https://packages.debian.org/buster/amd64/mesa-vulkan-drivers/filelist

And from mesa in OE:

https://git.openembedded.org/openembedded-core/tree/meta/recipes-graphics/mesa/mesa.inc#n304

I agree that the existing INSANE_SKIP was the wrong way to go about it -
perhaps the better option would be to do this:

FILES:${PN} = "${libdir}/*.so ${datadir}/vulkan"

I think ${PN}-dev would nominally be empty anyway - the two
outputs of this package are .so layers and a .manifest file for the
loader.

Jordan


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2022-11-11 15:27         ` Jordan Crouse
@ 2022-11-11 17:31           ` Alexander Kanavin
  0 siblings, 0 replies; 18+ messages in thread
From: Alexander Kanavin @ 2022-11-11 17:31 UTC (permalink / raw)
  To: Jordan Crouse; +Cc: openembedded-core

On Fri, 11 Nov 2022 at 16:28, Jordan Crouse <jorcrous@amazon.com> wrote:

> I agree that the existing INSANE_SKIP was the wrong way to go about it -
> perhaps the better option would be to do this:
>
> FILES:${PN} = "${libdir}/*.so ${datadir}/vulkan"
>
> I think ${PN}-dev would nominally be empty anyway - the two
> outputs of this package are .so layers and a .manifest file for the
> loader.

I suppose we can do it that way. You need to send a v2. :)

Alex


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2022-11-10 20:42 ` [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers Jordan Crouse
  2022-11-10 20:57   ` [OE-core] " Alexander Kanavin
@ 2022-11-13 22:11   ` Alexandre Belloni
  2022-11-14 15:23     ` Jordan Crouse
  1 sibling, 1 reply; 18+ messages in thread
From: Alexandre Belloni @ 2022-11-13 22:11 UTC (permalink / raw)
  To: jorcrous; +Cc: openembedded-core

Hello,

On 10/11/2022 20:42:32+0000, Jordan Crouse via lists.openembedded.org wrote:
> Add a recipe to build the Khronos official Vulkan validation layers that can
> assist developers in verifying that their applications correctly use the
> Vulkan APIs.
> 


This failed on the autobuilders:

NOTE: recipe vulkan-validation-1.3.231.1-r0: task do_compile: Started
ERROR: vulkan-validation-1.3.231.1-r0 do_compile: ExecutionError('/home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056', 1, None, None)
ERROR: Logfile of failure stored in: /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/log.do_compile.3939056
Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: VERBOSE=1 cmake --build /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/build --target all --
| ninja: error: '/home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/recipe-sysroot/usr/lib', needed by 'layers/libVkLayer_khronos_validation.so', missing and no known rule to make it
| WARNING: /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056:153 exit 1 from 'eval ${DESTDIR:+DESTDIR=${DESTDIR} }VERBOSE=1 cmake --build '/home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/build' "$@" -- ${EXTRA_OECMAKE_BUILD}'
| WARNING: Backtrace (BB generated script):
| 	#1: cmake_runcmake_build, /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056, line 153
| 	#2: cmake_do_compile, /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056, line 147
| 	#3: do_compile, /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056, line 142
| 	#4: main, /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056, line 166
NOTE: recipe vulkan-validation-1.3.231.1-r0: task do_compile: Failed
ERROR: Task (/home/pokybuild/yocto-worker/qemux86-world/build/meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb:do_compile) failed with exit code '1'


https://autobuilder.yoctoproject.org/typhoon/#/builders/52/builds/6064/steps/11/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#/builders/108/builds/3735/steps/12/logs/stdio

> Signed-off-by: Jordan Crouse <jorcrous@amazon.com>
> ---
> 
>  .../vulkan/vulkan-validation_1.3.231.1.bb     | 46 +++++++++++++++++++
>  1 file changed, 46 insertions(+)
>  create mode 100644 meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb
> 
> diff --git a/meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb b/meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb
> new file mode 100644
> index 0000000000..3d592fe24a
> --- /dev/null
> +++ b/meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb
> @@ -0,0 +1,46 @@
> +SUMMARY = "Vulkan Validation layers"
> +DESCRIPTION = "Khronos official Vulkan validation layers to assist developers \
> +in verifying that their applications correctly use the Vulkan API"
> +HOMEPAGE = "https://www.khronos.org/vulkan/"
> +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-ValidationLayers"
> +SECTION = "libs"
> +
> +LICENSE = "Apache-2.0"
> +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8df9e8826734226d08cb412babfa599c"
> +SRC_URI = "git://github.com/KhronosGroup/Vulkan-ValidationLayers.git;branch=sdk-1.3.231;protocol=https"
> +
> +SRCREV="f489610de566df6a5c20de1a3e54776e0ad852e1"
> +
> +S = "${WORKDIR}/git"
> +
> +REQUIRED_DISTRO_FEATURES = "vulkan"
> +
> +inherit cmake features_check pkgconfig
> +
> +DEPENDS += "vulkan-headers"
> +DEPENDS += "spirv-headers spirv-tools"
> +DEPENDS += "vulkan-loader"
> +DEPENDS += "glslang"
> +
> +EXTRA_OECMAKE = "\
> +                 -DBUILD_TESTS=OFF \
> +                 -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
> +                 -DASSEMBLER_WORKS=FALSE \
> +                 -DVULKAN_HEADERS_INSTALL_DIR=${STAGING_EXECPREFIXDIR} \
> +                 -DGLSLANG_INSTALL_DIR=${STAGING_DATADIR} \
> +                 -DSPIRV_HEADERS_INSTALL_DIR=${STAGING_EXECPREFIXDIR} \
> +                 -DUSE_ROBIN_HOOD_HASHING=OFF \
> +                 "
> +
> +PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr"
> +PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
> +
> +FILES:${PN} += "/usr/share/vulkan/ /usr/lib/"
> +
> +INSANE_SKIP:${PN} += " ldflags"
> +INHIBIT_PACKAGE_STRIP = "1"
> +INHIBIT_SYSROOT_STRIP = "1"
> +SOLIBS = ".so"
> +FILES_SOLIBSDEV = ""
> +
> +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
> -- 
> 2.37.1
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#173105): https://lists.openembedded.org/g/openembedded-core/message/173105
> Mute This Topic: https://lists.openembedded.org/mt/94945225/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 


-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2022-11-13 22:11   ` Alexandre Belloni
@ 2022-11-14 15:23     ` Jordan Crouse
  2023-06-01 21:55       ` Vincent Davis Jr
  0 siblings, 1 reply; 18+ messages in thread
From: Jordan Crouse @ 2022-11-14 15:23 UTC (permalink / raw)
  To: Alexandre Belloni; +Cc: openembedded-core

On Sun, Nov 13, 2022 at 11:11:50PM +0100, Alexandre Belloni wrote:
> Hello,
> 
> On 10/11/2022 20:42:32+0000, Jordan Crouse via lists.openembedded.org wrote:
> > Add a recipe to build the Khronos official Vulkan validation layers that can
> > assist developers in verifying that their applications correctly use the
> > Vulkan APIs.
> >
> 
> 
> This failed on the autobuilders:
> 
> NOTE: recipe vulkan-validation-1.3.231.1-r0: task do_compile: Started
> ERROR: vulkan-validation-1.3.231.1-r0 do_compile: ExecutionError('/home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056', 1, None, None)
> ERROR: Logfile of failure stored in: /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/log.do_compile.3939056
> Log data follows:
> | DEBUG: Executing shell function do_compile
> | NOTE: VERBOSE=1 cmake --build /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/build --target all --
> | ninja: error: '/home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/recipe-sysroot/usr/lib', needed by 'layers/libVkLayer_khronos_validation.so', missing and no known rule to make it
> | WARNING: /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056:153 exit 1 from 'eval ${DESTDIR:+DESTDIR=${DESTDIR} }VERBOSE=1 cmake --build '/home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/build' "$@" -- ${EXTRA_OECMAKE_BUILD}'
> | WARNING: Backtrace (BB generated script):
> |       #1: cmake_runcmake_build, /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056, line 153
> |       #2: cmake_do_compile, /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056, line 147
> |       #3: do_compile, /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056, line 142
> |       #4: main, /home/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/core2-64-poky-linux/vulkan-validation/1.3.231.1-r0/temp/run.do_compile.3939056, line 166
> NOTE: recipe vulkan-validation-1.3.231.1-r0: task do_compile: Failed
> ERROR: Task (/home/pokybuild/yocto-worker/qemux86-world/build/meta/recipes-graphics/vulkan/vulkan-validation_1.3.231.1.bb:do_compile) failed with exit code '1'
> 
> 
> https://autobuilder.yoctoproject.org/typhoon/#/builders/52/builds/6064/steps/11/logs/stdio
> https://autobuilder.yoctoproject.org/typhoon/#/builders/108/builds/3735/steps/12/logs/stdio

Thanks, I'll see if I can figure out what happened here.

Jordan


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2022-11-14 15:23     ` Jordan Crouse
@ 2023-06-01 21:55       ` Vincent Davis Jr
  2023-06-02  5:21         ` [OE-core] " Alexander Kanavin
  0 siblings, 1 reply; 18+ messages in thread
From: Vincent Davis Jr @ 2023-06-01 21:55 UTC (permalink / raw)
  To: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 74 bytes --]

Hello,

Is there any status on this? I'd definitely benefit from this.

[-- Attachment #2: Type: text/html, Size: 82 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2023-06-01 21:55       ` Vincent Davis Jr
@ 2023-06-02  5:21         ` Alexander Kanavin
  2023-06-27 17:10           ` Jordan Crouse
  0 siblings, 1 reply; 18+ messages in thread
From: Alexander Kanavin @ 2023-06-02  5:21 UTC (permalink / raw)
  To: Vincent Davis Jr; +Cc: openembedded-core

Given that this was in November last year, I think the best course of
action is for you to take the proposed patch and fix it into a state
that can be merged.

Alex

On Thu, 1 Jun 2023 at 23:55, Vincent Davis Jr <vince@underview.tech> wrote:
>
> Hello,
>
> Is there any status on this? I'd definitely benefit from this.
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#182122): https://lists.openembedded.org/g/openembedded-core/message/182122
> Mute This Topic: https://lists.openembedded.org/mt/94945225/1686489
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2023-06-02  5:21         ` [OE-core] " Alexander Kanavin
@ 2023-06-27 17:10           ` Jordan Crouse
  2023-06-27 19:13             ` Alexander Kanavin
  2023-06-27 19:26             ` Vincent Davis Jr
  0 siblings, 2 replies; 18+ messages in thread
From: Jordan Crouse @ 2023-06-27 17:10 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: Vincent Davis Jr, openembedded-core

On Fri, Jun 02, 2023 at 07:21:13AM +0200, Alexander Kanavin wrote:
> CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe.
> 
> 
> 
> Given that this was in November last year, I think the best course of
> action is for you to take the proposed patch and fix it into a state
> that can be merged.

I couldn't figure out why it kept failing the verification. I need to
pick it back up but I got distracted by other things. If you manage to
figure it out, please merge on with my blessing.

Jordan


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [OE-core] [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2023-06-27 17:10           ` Jordan Crouse
@ 2023-06-27 19:13             ` Alexander Kanavin
  2023-06-27 19:26             ` Vincent Davis Jr
  1 sibling, 0 replies; 18+ messages in thread
From: Alexander Kanavin @ 2023-06-27 19:13 UTC (permalink / raw)
  To: Jordan Crouse; +Cc: Vincent Davis Jr, openembedded-core

I didn't actually use the recipe in any way, nor have plans to do so
:) My involvement is limited to bring it in sync with the rest of
vulkan items and do code reviews, but primary maintenance is on you.

Alex

On Tue, 27 Jun 2023 at 19:10, Jordan Crouse <jorcrous@amazon.com> wrote:
>
> On Fri, Jun 02, 2023 at 07:21:13AM +0200, Alexander Kanavin wrote:
> > CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe.
> >
> >
> >
> > Given that this was in November last year, I think the best course of
> > action is for you to take the proposed patch and fix it into a state
> > that can be merged.
>
> I couldn't figure out why it kept failing the verification. I need to
> pick it back up but I got distracted by other things. If you manage to
> figure it out, please merge on with my blessing.
>
> Jordan


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers
  2023-06-27 17:10           ` Jordan Crouse
  2023-06-27 19:13             ` Alexander Kanavin
@ 2023-06-27 19:26             ` Vincent Davis Jr
  1 sibling, 0 replies; 18+ messages in thread
From: Vincent Davis Jr @ 2023-06-27 19:26 UTC (permalink / raw)
  To: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 431 bytes --]

Hey Jordan,

Yeah, the issue turned out to be a property set in SPIRV-ToolsTarget.cmake. Commit bellow should explain
Although ${base_libdir} should of been ${baselib}.

https://lists.openembedded.org/g/openembedded-core/message/182445

Also, renamed recipe to vulkan-validation-layers. Let me know if you have issues everything
looks good in my setup.

https://lists.openembedded.org/g/openembedded-core/message/182446

[-- Attachment #2: Type: text/html, Size: 693 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2023-06-27 19:27 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-10 20:42 [PATCH 0/3] Add vulkan validation and improvements for headless devices Jordan Crouse
2022-11-10 20:42 ` [PATCH 1/3] spirv-tools: Correctly set the prefix in exported cmake packages Jordan Crouse
2022-11-10 20:43   ` [OE-core] " Khem Raj
2022-11-11 10:44   ` Jose Quaresma
2022-11-10 20:42 ` [PATCH 2/3] vulkan-loader: Allow headless targets to build the loader Jordan Crouse
2022-11-10 20:42 ` [PATCH 3/3] vulkan-validation: Add the official Vulkan validation layers Jordan Crouse
2022-11-10 20:57   ` [OE-core] " Alexander Kanavin
2022-11-10 21:30     ` Jordan Crouse
2022-11-11  8:03       ` Alexander Kanavin
2022-11-11 15:27         ` Jordan Crouse
2022-11-11 17:31           ` Alexander Kanavin
2022-11-13 22:11   ` Alexandre Belloni
2022-11-14 15:23     ` Jordan Crouse
2023-06-01 21:55       ` Vincent Davis Jr
2023-06-02  5:21         ` [OE-core] " Alexander Kanavin
2023-06-27 17:10           ` Jordan Crouse
2023-06-27 19:13             ` Alexander Kanavin
2023-06-27 19:26             ` Vincent Davis Jr

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.