Skip to contentSkip to conversation

vulkan-headers: add recipe

PATCH Superseded Anuj Mittal 2 participants 7 messages Jul 8, 2019

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/6 vulkan-headers: add recipe

From: Tim Orling <[email protected]>

Provides vulkan header files and API registry.

---
 meta/conf/distro/include/maintainers.inc       |  1 +
 .../vulkan/vulkan-headers_1.1.108.bb           | 18 ++++++++++++++++++
 2 files changed, 19 insertions(+)
 create mode 100644 meta/recipes-graphics/vulkan/vulkan-headers_1.1.108.bb
meta/conf/distro/include/maintainers.inc +1 -0
index 64856e1057..5f3bef54ed 100644
@@ -719,6 +719,7 @@ RECIPE_MAINTAINER_pn-volatile-binds = "Chen Qi <[email protected]>"
 RECIPE_MAINTAINER_pn-vte = "Anuj Mittal <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan-demos = "Ross Burton <[email protected]>"
+RECIPE_MAINTAINER_pn-vulkan-headers = "Anuj Mittal <[email protected]>"
 RECIPE_MAINTAINER_pn-waffle = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-watchdog = "Alexander Kanavin <[email protected]>"
 RECIPE_MAINTAINER_pn-watchdog-config = "Alexander Kanavin <[email protected]>"
meta/recipes-graphics/vulkan/vulkan-headers_1.1.108.bb new file +18 -0
new file mode 100644
index 0000000000..284c19d797
@@ -0,0 +1,18 @@
+SUMMARY = "Vulkan Header files and API registry"
+HOMEPAGE = "https://www.khronos.org/vulkan/"
+BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Headers"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=sdk-${PV}"
+
+SRCREV = "097a1045098213919fd56442f52c716fc78eeb27"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+FILES_${PN} += "${datadir}/vulkan"
+
+UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
Signature · 1 line
2.20.1
#1 lore raw

PATCH 2/6 vulkan-loader: add recipe

From: Tim Orling <[email protected]>

Khronos official Vulkan ICD desktop loader for Windows, Linux, and MacOS.

Adapted from vulkan recipe with the changes done to remove obsolete options. Needs either of X11 or Wayland to be enabled.

---
 meta/conf/distro/include/maintainers.inc      |  1 +
 .../vulkan/vulkan-loader_1.1.108.bb           | 40 +++++++++++++++++++
 2 files changed, 41 insertions(+)
 create mode 100644 meta/recipes-graphics/vulkan/vulkan-loader_1.1.108.bb
meta/conf/distro/include/maintainers.inc +1 -0
index 5f3bef54ed..7c4b8a4a67 100644
@@ -720,6 +720,7 @@ RECIPE_MAINTAINER_pn-vte = "Anuj Mittal <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan-demos = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan-headers = "Anuj Mittal <[email protected]>"
+RECIPE_MAINTAINER_pn-vulkan-loader = "Anuj Mittal <[email protected]>"
 RECIPE_MAINTAINER_pn-waffle = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-watchdog = "Alexander Kanavin <[email protected]>"
 RECIPE_MAINTAINER_pn-watchdog-config = "Alexander Kanavin <[email protected]>"
meta/recipes-graphics/vulkan/vulkan-loader_1.1.108.bb new file +40 -0
new file mode 100644
index 0000000000..a8a423dd39
@@ -0,0 +1,40 @@
+SUMMARY = "3D graphics and compute API common loader"
+DESCRIPTION = "Vulkan is a new generation graphics and compute API \
+that provides efficient access to modern GPUs. These packages \
+provide only the common vendor-agnostic library loader, headers and \
+the vulkaninfo utility."
+HOMEPAGE = "https://www.khronos.org/vulkan/"
+BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Loader"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=sdk-${PV}"
+SRCREV = "ecb0b1e69fb2f4d3cae262e6da24c170ce62ae13"
+
+S = "${WORKDIR}/git"
+
+REQUIRED_DISTRO_FEATURES = "vulkan"
+
+inherit cmake distro_features_check
+ANY_OF_DISTRO_FEATURES = "x11 wayland"
+
+DEPENDS += "vulkan-headers"
+
+EXTRA_OECMAKE = "\
+                 -DBUILD_TESTS=OFF \
+                 -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
+                 "
+
+# must choose x11 or wayland or both
+PACKAGECONFIG ??= "\
+                   ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '' ,d)} \
+                   ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,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"
+PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
+
+RRECOMMENDS_${PN} = "mesa-vulkan-drivers"
+
+UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
Signature · 1 line
2.20.1
#2 lore raw

PATCH 3/6 vulkan-tools: add recipe

In reply to Anuj Mittal

From: Tim Orling <[email protected]>

Vulkan tools and utilities that can assist development by enabling developers to verify their applications correct use of the Vulkan API.

DEPENDS on vulkan-headers and vulkan-loader.

---
 meta/conf/distro/include/maintainers.inc      |  1 +
 .../vulkan/vulkan-tools_1.1.108.bb            | 34 +++++++++++++++++++
 2 files changed, 35 insertions(+)
 create mode 100644 meta/recipes-graphics/vulkan/vulkan-tools_1.1.108.bb
meta/conf/distro/include/maintainers.inc +1 -0
index 7c4b8a4a67..4556c793d5 100644
@@ -721,6 +721,7 @@ RECIPE_MAINTAINER_pn-vulkan = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan-demos = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan-headers = "Anuj Mittal <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan-loader = "Anuj Mittal <[email protected]>"
+RECIPE_MAINTAINER_pn-vulkan-tools = "Anuj Mittal <[email protected]>"
 RECIPE_MAINTAINER_pn-waffle = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-watchdog = "Alexander Kanavin <[email protected]>"
 RECIPE_MAINTAINER_pn-watchdog-config = "Alexander Kanavin <[email protected]>"
meta/recipes-graphics/vulkan/vulkan-tools_1.1.108.bb new file +34 -0
new file mode 100644
index 0000000000..33c66b4714
@@ -0,0 +1,34 @@
+SUMMARY = "Vulkan Utilities and Tools"
+HOMEPAGE = "https://www.khronos.org/vulkan/"
+BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Tools"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-${PV}"
+SRCREV = "3ccd7f6ebae3e1919adf837718c04feb6c2acc61"
+
+S = "${WORKDIR}/git"
+
+inherit cmake distro_features_check
+ANY_OF_DISTRO_FEATURES = "x11 wayland"
+REQUIRED_DISTRO_FEATURES = "vulkan"
+
+DEPENDS += "vulkan-headers vulkan-loader"
+
+EXTRA_OECMAKE = "\
+                 -DBUILD_TESTS=OFF \
+                 -DBUILD_CUBE=OFF \
+                 -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
+                 "
+
+# must choose x11 or wayland or both
+PACKAGECONFIG ??= "\
+                   ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '' ,d)} \
+                   ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,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"
+PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
+
+UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
Signature · 1 line
2.20.1
#3 lore raw

Re: [PATCH 3/6] vulkan-tools: add recipe

meta/recipes-graphics/vulkan/vulkan-tools_1.1.108.bb line 28

Quoted 3 lines · Anuj Mittal
meta/recipes-graphics/vulkan/vulkan-tools_1.1.108.bb new file +3 -0
+PACKAGECONFIG ??= "\
+                   ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '' ,d)} \
+                   ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,d)} \

bb.utils.filter() is a neater way of expressing this:

PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"

Ross

#4 lore raw

PATCH 4/6 gstreamer1.0-plugins-bad: depend on vulkan-loader now

In reply to Anuj Mittal

Depend on vulkan-loader instead of vulkan which has been deprecated.

---
 .../gstreamer/gstreamer1.0-plugins-bad_1.16.0.bb                | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.0.bb +1 -1
index f676b1f6de..5af01a37ce 100644
@@ -77,7 +77,7 @@ PACKAGECONFIG[ttml]            = "--enable-ttml,--disable-ttml,libxml2 pango cai
 PACKAGECONFIG[uvch264]         = "--enable-uvch264,--disable-uvch264,libusb1 libgudev"
 PACKAGECONFIG[voaacenc]        = "--enable-voaacenc,--disable-voaacenc,vo-aacenc"
 PACKAGECONFIG[voamrwbenc]      = "--enable-voamrwbenc,--disable-voamrwbenc,vo-amrwbenc"
-PACKAGECONFIG[vulkan]          = "--enable-vulkan,--disable-vulkan,vulkan"
+PACKAGECONFIG[vulkan]          = "--enable-vulkan,--disable-vulkan,vulkan-loader"
 PACKAGECONFIG[wayland]         = "--enable-wayland,--disable-wayland,wayland-native wayland wayland-protocols libdrm"
 PACKAGECONFIG[webp]            = "--enable-webp,--disable-webp,libwebp"
 PACKAGECONFIG[webrtc]          = "--enable-webrtc,--disable-webrtc,libnice"
Signature · 1 line
2.20.1
#5 lore raw

PATCH 5/6 vulkan-demos: depend on vulkan-loader

In reply to Anuj Mittal

Depend on vulkan-loader component of the now split-up vulkan.

---
 meta/recipes-graphics/vulkan/vulkan-demos_git.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-graphics/vulkan/vulkan-demos_git.bb +1 -1
index bf30c980c0..d2041d7d4c 100644
@@ -21,7 +21,7 @@ S = "${WORKDIR}/git"
 REQUIRED_DISTRO_FEATURES = 'vulkan'
 
 inherit cmake distro_features_check
-DEPENDS = "vulkan assimp"
+DEPENDS = "vulkan-loader assimp"
 
 do_install_append () {
     # Remove assets that have uncertain licenses
Signature · 1 line
2.20.1
#6 lore raw

PATCH 6/6 vulkan: remove

In reply to Anuj Mittal

This has been split in multiple components which are now being packaged separately following the repository split upstream.

https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/wiki/Repository-Split

---
 meta/conf/distro/include/maintainers.inc      |   1 -
 .../demos-Don-t-build-tri-or-cube.patch       | 128 ------------------
 .../vulkan/vulkan_1.1.73.0.bb                 |  40 ------
 3 files changed, 169 deletions(-)
 delete mode 100644 meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch
 delete mode 100644 meta/recipes-graphics/vulkan/vulkan_1.1.73.0.bb
meta/conf/distro/include/maintainers.inc +0 -1
index 4556c793d5..60a4fcd2e2 100644
@@ -717,7 +717,6 @@ RECIPE_MAINTAINER_pn-vim-tiny = "Tom Rini <[email protected]>"
 RECIPE_MAINTAINER_pn-virglrenderer = "Alexander Kanavin <[email protected]>"
 RECIPE_MAINTAINER_pn-volatile-binds = "Chen Qi <[email protected]>"
 RECIPE_MAINTAINER_pn-vte = "Anuj Mittal <[email protected]>"
-RECIPE_MAINTAINER_pn-vulkan = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan-demos = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan-headers = "Anuj Mittal <[email protected]>"
 RECIPE_MAINTAINER_pn-vulkan-loader = "Anuj Mittal <[email protected]>"
meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch deleted +0 -128

128 lines not on this page · raw message

meta/recipes-graphics/vulkan/vulkan_1.1.73.0.bb deleted +0 -40
deleted file mode 100644
index 02e4330cf2..0000000000
@@ -1,40 +0,0 @@
-SUMMARY = "3D graphics and compute API common loader"
-DESCRIPTION = "Vulkan is a new generation graphics and compute API \
-that provides efficient access to modern GPUs. These packages \
-provide only the common vendor-agnostic library loader, headers and \
-the vulkaninfo utility."
-HOMEPAGE = "https://www.khronos.org/vulkan/"
-BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Loader"
-SECTION = "libs"
-
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=99c647ca3d4f6a4b9d8628f757aad156 \
-                    file://loader/loader.c;endline=25;md5=151b392f46568aaedb4ad22b246237ec"
-SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;nobranch=1 \
-           file://demos-Don-t-build-tri-or-cube.patch \
-           "
-SRCREV = "5998d6f444a85e6381b7a089ebf3f9e86482a31d"
-UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
-
-S = "${WORKDIR}/git"
-
-REQUIRED_DISTRO_FEATURES = "vulkan"
-
-inherit cmake python3native lib_package distro_features_check
-ANY_OF_DISTRO_FEATURES = "x11 wayland"
-
-EXTRA_OECMAKE = "-DBUILD_WSI_MIR_SUPPORT=OFF \
-                 -DBUILD_LAYERS=OFF \
-                 -DBUILD_TESTS=OFF"
-
-# must choose x11 or wayland or both
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '' ,d)} \
-                   ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,d)}"
-PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON -DDEMOS_WSI_SELECTION=XCB, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF -DDEMOS_WSI_SELECTION=WAYLAND, libxcb libx11 libxrandr"
-PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
-
-RRECOMMENDS_${PN} = "mesa-vulkan-drivers"
-INSANE_SKIP_${PN}-dev += "dev-elf"
-
-# Can't be built with ccache
-CCACHE_DISABLE = "1"
Signature · 1 line
2.20.1