vulkan: update vulkan recipes

Make our vulkan sub-folder match NXP's by updating recipes, deleting ones that
are no longer needed and adding new ones. Also, stop forcing 1.0.65% as the
preferred vulkan version.

https://jira.digi.com/browse/DEL-6603

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit is contained in:
Gabriel Valcazar 2019-05-14 14:07:21 +02:00
parent 4415627ae7
commit 583dc784bc
21 changed files with 268 additions and 272 deletions

View File

@ -68,9 +68,6 @@ PREFERRED_PROVIDER_u-boot-fw-utils ?= "u-boot-fw-utils"
# Use git recipe for libsoc
PREFERRED_VERSION_libsoc = "git"
# Gstreamer 1.14.0 requires a specific vulkan version.
PREFERRED_VERSION_vulkan ?= "1.0.65%"
SDK_NAME = "${DISTRO}-${TCLIBC}-${SDK_ARCH}-${IMAGE_BASENAME}-${TUNE_PKGARCH}"
SDKPATH = "/opt/${DISTRO}/${SDK_VERSION}"

View File

@ -1,20 +0,0 @@
DESCRIPTION = "Open Asset Import Library is a portable Open Source library to import \
various well-known 3D model formats in a uniform manner."
HOMEPAGE = "http://www.assimp.org/"
SECTION = "devel"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=2119edef0916b0bd511cb3c731076271"
DEPENDS = "zlib"
SRC_URI = "git://github.com/assimp/assimp.git"
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>(\d+(\.\d+)+))"
SRCREV = "80799bdbf90ce626475635815ee18537718a05b1"
S = "${WORKDIR}/git"
inherit cmake
EXTRA_OECMAKE = "-DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DASSIMP_BUILD_TESTS=OFF -DASSIMP_LIB_INSTALL_DIR=${baselib}"

View File

@ -1,82 +0,0 @@
From 372422ed8ce32e1085cd524156c687df65095237 Mon Sep 17 00:00:00 2001
From: Awais Belal <awais_belal@mentor.com>
Date: Tue, 25 Oct 2016 14:44:20 +0500
Subject: [PATCH] CMakeLists.txt: obey CMAKE_INSTALL_LIBDIR
Not using the exact path that is set through cmake
will end up in a mixed configuration setup where
files are installed on hard-coded locations.
Signed-off-by: Awais Belal <awais_belal@mentor.com>
---
OGLCompilersDLL/CMakeLists.txt | 2 +-
SPIRV/CMakeLists.txt | 2 +-
glslang/CMakeLists.txt | 2 +-
glslang/OSDependent/Unix/CMakeLists.txt | 2 +-
glslang/OSDependent/Windows/CMakeLists.txt | 2 +-
hlsl/CMakeLists.txt | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/OGLCompilersDLL/CMakeLists.txt b/OGLCompilersDLL/CMakeLists.txt
index 4954db9..6b518d9 100644
--- a/OGLCompilersDLL/CMakeLists.txt
+++ b/OGLCompilersDLL/CMakeLists.txt
@@ -8,4 +8,4 @@ if(WIN32)
endif(WIN32)
install(TARGETS OGLCompiler
- ARCHIVE DESTINATION lib)
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
diff --git a/SPIRV/CMakeLists.txt b/SPIRV/CMakeLists.txt
index 48a6c46..c657d56 100755
--- a/SPIRV/CMakeLists.txt
+++ b/SPIRV/CMakeLists.txt
@@ -41,4 +41,4 @@ if(WIN32)
endif(WIN32)
install(TARGETS SPIRV SPVRemapper
- ARCHIVE DESTINATION lib)
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt
index ff91135..efb7f15 100644
--- a/glslang/CMakeLists.txt
+++ b/glslang/CMakeLists.txt
@@ -89,4 +89,4 @@ if(WIN32)
endif(WIN32)
install(TARGETS glslang
- ARCHIVE DESTINATION lib)
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
diff --git a/glslang/OSDependent/Unix/CMakeLists.txt b/glslang/OSDependent/Unix/CMakeLists.txt
index 174cc91..d98057b 100644
--- a/glslang/OSDependent/Unix/CMakeLists.txt
+++ b/glslang/OSDependent/Unix/CMakeLists.txt
@@ -2,4 +2,4 @@ add_library(OSDependent STATIC ossource.cpp ../osinclude.h)
set_property(TARGET OSDependent PROPERTY FOLDER glslang)
install(TARGETS OSDependent
- ARCHIVE DESTINATION lib)
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
diff --git a/glslang/OSDependent/Windows/CMakeLists.txt b/glslang/OSDependent/Windows/CMakeLists.txt
index 399760c..744bcbb 100644
--- a/glslang/OSDependent/Windows/CMakeLists.txt
+++ b/glslang/OSDependent/Windows/CMakeLists.txt
@@ -14,4 +14,4 @@ if(WIN32)
endif(WIN32)
install(TARGETS OSDependent
- ARCHIVE DESTINATION lib)
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
diff --git a/hlsl/CMakeLists.txt b/hlsl/CMakeLists.txt
index c7537e2..5111661 100755
--- a/hlsl/CMakeLists.txt
+++ b/hlsl/CMakeLists.txt
@@ -23,4 +23,4 @@ if(WIN32)
endif(WIN32)
install(TARGETS HLSL
- ARCHIVE DESTINATION lib)
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
--
1.9.1

View File

@ -10,13 +10,13 @@ HOMEPAGE = "https://www.khronos.org/opengles/sdk/tools/Reference-Compiler"
inherit cmake
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://glslang/Include/Types.h;beginline=1;endline=36;md5=6639a5f9543e833d71e2f4e4ff52f34b"
LIC_FILES_CHKSUM = "file://glslang/Include/Types.h;beginline=1;endline=36;md5=26473d85c7f85d955e24663f67a53818"
S = "${WORKDIR}/git"
SRCREV = "81cd764b5ffc475bc73f1fb35f75fd1171bb2343"
SRCREV = "1bc601c674aecc2fee0dee8ff7a118db76b4c439"
SRC_URI = "git://github.com/KhronosGroup/glslang \
file://0001-CMakeLists.txt-obey-CMAKE_INSTALL_LIBDIR.patch"
"
FILES_${PN} += "${libdir}/*"
@ -30,6 +30,10 @@ do_install_append() {
cp -f ${S}/SPIRV/SPVRemapper.h ${D}${includedir}/SPIRV
cp -f ${S}/SPIRV/spvIR.h ${D}${includedir}/SPIRV
# Remove redundant headers from spirv-headers
rm -rf ${D}${includedir}/SPIRV/GLSL.std.450.h
rm -rf ${D}${includedir}/SPIRV/spirv.hpp
install -d ${D}${includedir}/glslang/Include
cp -f ${S}/glslang/Include/*.h ${D}${includedir}/glslang/Include
install -d ${D}${includedir}/glslang/Public

View File

@ -12,10 +12,10 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
S = "${WORKDIR}/git"
SPIRV_HEADERS_LOCATION = "${S}/external/spirv-headers"
HEADERS_VERSION = "1.1"
HEADERS_VERSION = "unified1"
SRCREV_spirv-tools = "2c0ce872103d676bf8de5dc87a03ad2c32e215a2"
SRCREV_spirv-headers = "3a4dbdde9a9b2cf23736694ba70262dce27fbeaa"
SRCREV_spirv-tools = "9d699f6d4038f432c55310d5d0b4a6d507c1b686"
SRCREV_spirv-headers = "2434b89345a50c018c84f42a310b0fad4f3fd94f"
SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools;protocol=http;name=spirv-tools \
git://github.com/KhronosGroup/SPIRV-Headers;name=spirv-headers;destsuffix=${SPIRV_HEADERS_LOCATION} \
file://0002-spirv-lesspipe.sh-allow-using-generic-shells.patch"

View File

@ -0,0 +1,56 @@
From 436b5b09a0f5fcd3b4f2c1711e850b52b357befb Mon Sep 17 00:00:00 2001
From: Tom Hochstein <tom.hochstein@nxp.com>
Date: Wed, 13 Jun 2018 22:02:20 +0000
Subject: [PATCH] scenes: Use depth format supported by i.MX
Upstream-Status: Inappropriate [i.MX-specific]
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
---
src/scenes/shading_scene.cpp | 2 +-
src/scenes/texture_scene.cpp | 2 +-
src/scenes/vertex_scene.cpp | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/scenes/shading_scene.cpp b/src/scenes/shading_scene.cpp
index fa496ba..3e19ee8 100644
--- a/src/scenes/shading_scene.cpp
+++ b/src/scenes/shading_scene.cpp
@@ -64,7 +64,7 @@ void ShadingScene::setup(
vulkan = &vulkan_;
extent = vulkan_images[0].extent;
format = vulkan_images[0].format;
- depth_format = vk::Format::eD32Sfloat;
+ depth_format = vk::Format::eD24UnormS8Uint;
aspect = static_cast<float>(extent.height) / extent.width;
mesh = Model{"cat.3ds"}.to_mesh(
diff --git a/src/scenes/texture_scene.cpp b/src/scenes/texture_scene.cpp
index 04a8207..ccc9d2f 100644
--- a/src/scenes/texture_scene.cpp
+++ b/src/scenes/texture_scene.cpp
@@ -65,7 +65,7 @@ void TextureScene::setup(
vulkan = &vulkan_;
extent = vulkan_images[0].extent;
format = vulkan_images[0].format;
- depth_format = vk::Format::eD32Sfloat;
+ depth_format = vk::Format::eD24UnormS8Uint;
aspect = static_cast<float>(extent.height) / extent.width;
mesh = Model{"cube.3ds"}.to_mesh(
diff --git a/src/scenes/vertex_scene.cpp b/src/scenes/vertex_scene.cpp
index 0fd7fe7..4f6d49a 100644
--- a/src/scenes/vertex_scene.cpp
+++ b/src/scenes/vertex_scene.cpp
@@ -66,7 +66,7 @@ void VertexScene::setup(
vulkan = &vulkan_;
extent = vulkan_images[0].extent;
format = vulkan_images[0].format;
- depth_format = vk::Format::eD32Sfloat;
+ depth_format = vk::Format::eD24UnormS8Uint;
aspect = static_cast<float>(extent.height) / extent.width;
mesh = Model{"horse.3ds"}.to_mesh(
--
2.7.4

View File

@ -10,12 +10,13 @@ inherit meson
S = "${WORKDIR}/git"
SRCREV = "${AUTOREV}"
SRCREV = "1ebd49364f03372a710f010c01dedd0d79456413"
SRC_URI = "git://github.com/vkmark/vkmark;protocol=https"
SRC_URI += "file://0001-scenes-Use-depth-format-supported-by-i.MX.patch"
VKMARK_INSTALL_DIR = "${WORKDIR}/vm-install"
DEPENDS = " vulkan imx-gpu-viv assimp glm ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
DEPENDS = " vulkan-headers vulkan-loader imx-gpu-viv assimp glm ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
bb.utils.contains('DISTRO_FEATURES', 'x11', ' libxcb','libdrm libgbm', d), d)}"
do_compile() {
@ -34,5 +35,3 @@ do_install() {
}
FILES_${PN} += "${bindir} ${datadir}"
COMPATIBLE_MACHINE = "(mx8)"

View File

@ -1,2 +1,3 @@
COMPATIBLE_MACHINE = "(mx8)"
DEPENDS_remove = "vulkan"
DEPENDS_append = " vulkan-headers vulkan-loader"

View File

@ -0,0 +1,3 @@
COMPATIBLE_MACHINE = "(mx8)"
COMPATIBLE_MACHINE_mx8mm = "(^$)"

View File

@ -0,0 +1,20 @@
SUMMARY = "Vulkan Header files and API registry"
DESCRIPTION = "Vulkan is a new generation graphics and compute API \
that provides efficient access to modern GPUs."
HOMEPAGE = "https://www.khronos.org/vulkan/"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=sdk-1.1.92 \
"
SRCREV = "114c3546e195819bd53a34b39f5194b2989a5b12"
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
REQUIRED_DISTRO_FEATURES = "vulkan"
inherit cmake distro_features_check
ANY_OF_DISTRO_FEATURES = "x11 wayland"
FILES_${PN} += "${datadir}/vulkan/registry"

View File

@ -0,0 +1,38 @@
From 4f7fd011b47cb65c58b0a1ffaa3830f0b63b5b1d Mon Sep 17 00:00:00 2001
From: Ella <ella.feng@nxp.com>
Date: Thu, 7 Mar 2019 17:18:26 +0800
Subject: [PATCH] STDIO-844 No need to change the App's apiVersion to ICD
version
There is no need to do so, otherwise we won't catch the App's error and
Vulkan CTS will fail to reject the invalid api version.
Date: 7th Mar, 2019
Signed-off-by: Ella Feng <ella.feng@nxp.com>
---
loader/loader.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/loader/loader.c b/loader/loader.c
index 281851584..f2033b6ad 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -5741,6 +5741,7 @@ VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateInstance(const VkInstanceCreateI
}
// Create an instance, substituting the version to 1.0 if necessary
+#if 0
VkApplicationInfo icd_app_info;
uint32_t icd_version_nopatch = VK_MAKE_VERSION(VK_VERSION_MAJOR(icd_version), VK_VERSION_MINOR(icd_version), 0);
uint32_t requested_version = pCreateInfo == NULL || pCreateInfo->pApplicationInfo == NULL ? VK_API_VERSION_1_0 : pCreateInfo->pApplicationInfo->apiVersion;
@@ -5753,6 +5754,7 @@ VKAPI_ATTR VkResult VKAPI_CALL terminator_CreateInstance(const VkInstanceCreateI
icd_app_info.apiVersion = icd_version;
icd_create_info.pApplicationInfo = &icd_app_info;
}
+#endif
icd_result = ptr_instance->icd_tramp_list.scanned_list[i].CreateInstance(&icd_create_info, pAllocator, &(icd_term->instance));
if (VK_ERROR_OUT_OF_HOST_MEMORY == icd_result) {
// If out of memory, bail immediately.
--
2.21.0

View File

@ -0,0 +1,8 @@
# choose wayland
PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,d)}"
SRC_URI_append = " file://0001-STDIO-844-No-need-to-change-the-App-s-apiVersion-to-.patch"
COMPATIBLE_MACHINE = "(mx8)"
COMPATIBLE_MACHINE_mx8mm = "(^$)"

View File

@ -0,0 +1,34 @@
SUMMARY = "Vulkan loader"
DESCRIPTION = "Vulkan loader is responsible for working with the various \
layers as well as supporting multiple GPUs and their drivers.The loader is \
critical to managing the proper dispatching of Vulkan functions to the appropriate \
set of layers and ICDs."
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=3b83ef96387f14655fc854ddc3c6bd57\
file://loader/loader.c;endline=25;md5=151b392f46568aaedb4ad22b246237ec"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=sdk-1.1.92 \
"
SRCREV = "4cd7e44fc1ca6c4d8361720b43a3588ddf9fc4b6"
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"
DEPENDS = "vulkan-headers"
EXTRA_OECMAKE = "-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"

View File

@ -0,0 +1,10 @@
# choose wayland
PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,d)}"
EXTRA_OECMAKE = "-DBUILD_CUBE=OFF"
RDEPENDS_${PN} += "libvulkan-imx"
COMPATIBLE_MACHINE = "(mx8)"
COMPATIBLE_MACHINE_mx8mm = "(^$)"

View File

@ -0,0 +1,25 @@
SUMMARY = "Vulkan Tools"
DESCRIPTION = "This project provides Vulkan tools and utilities that \
can assist development by enabling developers to verify their \
applications correct use of the Vulkan API."
SECTION = "graphics"
HOMEPAGE = "https://github.com/LunarG/VulkanTools"
DEPENDS = "vulkan-headers vulkan-loader"
inherit cmake python3native
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
S = "${WORKDIR}/git"
SRCREV = "9bbdd552f0fd62741aa1f1e02ab3eafc45cf3c1e"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-${PV} \
"
# 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 -DCUBE_WSI_SELECTION=XCB, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF -DCUBE_WSI_SELECTION=WAYLAND, libxcb libx11"
PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"

View File

@ -0,0 +1,38 @@
From 23ed27a79b3c9afa3dcb2138abf89f466a308702 Mon Sep 17 00:00:00 2001
From: Neena Busireddy <neenareddy.busireddy@nxp.com>
Date: Wed, 5 Dec 2018 13:33:10 -0600
Subject: [PATCH] CMakeLists.txt: Change the installation path of JSON files
Also modify the library path in JSON files to /usr/lib/libVK*.so
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Neena Busireddy <neenareddy.busireddy@nxp.com>
---
layers/CMakeLists.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/layers/CMakeLists.txt b/layers/CMakeLists.txt
index 5fd5b44..c4a7810 100644
--- a/layers/CMakeLists.txt
+++ b/layers/CMakeLists.txt
@@ -105,7 +105,7 @@ if(WIN32)
elseif(UNIX) # UNIX includes APPLE
foreach(TARGET_NAME ${TARGET_NAMES})
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/staging-json/${TARGET_NAME}.json
- DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/vulkan/explicit_layer.d)
+ DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/vulkan/explicit_layer.d)
endforeach()
endif()
@@ -236,7 +236,7 @@ if(UNIX)
-DVK_VERSION=1.1.${vk_header_version})
# If this json file is not a metalayer, get the needed properties from that target
if(TARGET ${TARGET_NAME})
- set(INSTALL_DEFINES ${INSTALL_DEFINES} -DRELATIVE_LAYER_BINARY="$<TARGET_FILE_NAME:${TARGET_NAME}>")
+ set(INSTALL_DEFINES ${INSTALL_DEFINES} -DRELATIVE_LAYER_BINARY="${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/$<TARGET_FILE_NAME:${TARGET_NAME}>")
endif()
add_custom_target(${TARGET_NAME}-staging-json ALL
COMMAND ${CMAKE_COMMAND} ${INSTALL_DEFINES} -P "${CMAKE_CURRENT_BINARY_DIR}/generator.cmake")
--
2.7.4

View File

@ -2,13 +2,12 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
SRC_URI += " \
file://icd_VSI.json \
file://0001-CMakeLists.txt-Modify-the-library-path-to-point-to.patch \
file://0001-CMakeLists.txt-Change-the-installation-path-of-JSON-.patch \
"
# choose wayland
PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,d)}"
DEPENDS = "virtual/egl glslang spirv-tools"
RDEPENDS_${PN} += "libvulkan-imx"
DEPENDS += " virtual/egl glslang spirv-tools"
EXTRA_OECMAKE_remove = "-DBUILD_LAYERS=OFF"
# Enable validation layers
@ -20,13 +19,15 @@ do_install_append () {
cp ${WORKDIR}/icd_VSI.json ${D}${sysconfdir}/vulkan/icd.d
sed -i "s,/usr/lib,${libdir}," ${D}${sysconfdir}/vulkan/icd.d/icd_VSI.json
sed -i "s,1.0.30,${PV}," ${D}${sysconfdir}/vulkan/icd.d/icd_VSI.json
# Use some vulkan headers from imx-gpu-viv
rm -rf ${D}${includedir}/vulkan/vk_*
}
FILES_SOLIBSDEV = ""
FILES_${PN} += "${libdir}/libvulkan.so ${libdir}/libVkLayer_*.so"
FILES_${PN} += "${libdir}/libVkLayer_*.so"
# The package libvulkan-imx is required to configure the imx-gpu-viv vulkan drivers for the validation layers
RDEPENDS_${PN} += "libvulkan-imx"
INSANE_SKIP_${PN} = "dev-so"
COMPATIBLE_MACHINE = "(mx8)"
COMPATIBLE_MACHINE_mx8mm = "(^$)"

View File

@ -1,19 +1,16 @@
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."
SUMMARY = "Vulkan ValidationLayers"
DESCRIPTION = "This project provides Vulkan validation layers that \
can be enabled to assist development by enabling developers to verify \
their applications correct use of the Vulkan API."
HOMEPAGE = "https://www.khronos.org/vulkan/"
BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers"
BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-ValidationLayers"
SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=99c647ca3d4f6a4b9d8628f757aad156 \
file://loader/loader.c;endline=25;md5=a87cd5442291c23d1fce4eece4cfde9d"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers.git;branch=sdk-1.0.65 \
file://demos-Don-t-build-tri-or-cube.patch \
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-ValidationLayers.git;nobranch=1 \
"
SRCREV = "73486a1a169d862d5210e2ad520d95319a2383fa"
SRCREV = "6e6da6ccab8931f7c30815966ef839b1155e5bec"
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
@ -23,10 +20,12 @@ 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"
DEPENDS = "vulkan-headers vulkan-loader"
EXTRA_OECMAKE = " \
-DBUILD_LAYERS=OFF \
-DGLSLANG_INSTALL_DIR=${STAGING_DIR_HOST}/usr \
"
# must choose x11 or wayland or both
PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '' ,d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,d)}"

View File

@ -1,27 +0,0 @@
From abb274c45150373c91bf74d4511b86e039f08306 Mon Sep 17 00:00:00 2001
From: Neena Busireddy <neenareddy.busireddy@nxp.com>
Date: Tue, 31 Jul 2018 18:22:49 -0500
Subject: [PATCH] CMakeLists.txt: Modify the library path to point to
/usr/lib/libVK<validation layer>.so in json files
Signed-off-by: Neena Busireddy <neenareddy.busireddy@nxp.com>
---
layers/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/layers/CMakeLists.txt b/layers/CMakeLists.txt
index 35a1b41..9e761a5 100644
--- a/layers/CMakeLists.txt
+++ b/layers/CMakeLists.txt
@@ -92,7 +92,7 @@ if(UNIX)
add_custom_target(${config_file}-staging-json ALL
COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/staging-json
COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/linux/${config_file}.json ${CMAKE_CURRENT_BINARY_DIR}/staging-json
- COMMAND sed -i -e "/\"library_path\":/s$./libVkLayer$libVkLayer$" ${CMAKE_CURRENT_BINARY_DIR}/staging-json/${config_file}.json
+ COMMAND sed -i -e "/\"library_path\":/s$./libVkLayer$/usr/lib/libVkLayer$" ${CMAKE_CURRENT_BINARY_DIR}/staging-json/${config_file}.json
VERBATIM
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/linux/${config_file}.json
)
--
1.9.1

View File

@ -1,108 +0,0 @@
commit f63cbe944107b5cd8f150ceaaec43b26099d5688
Author: Adam Jackson <ajax@redhat.com>
Date: Tue Feb 16 10:05:25 2016 -0500
demos: Don't build tri or cube
There are more interesting demos, all we really want here is vulkaninfo.
This helps because we don't need to pre-build glslang/llvm/lunarglass
just to get the loader and layers.
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Index: git/demos/CMakeLists.txt
===================================================================
--- git.orig/demos/CMakeLists.txt
+++ git/demos/CMakeLists.txt
@@ -63,46 +63,6 @@ elseif(UNIX)
else()
endif()
-if(WIN32)
- # For Windows, since 32-bit and 64-bit items can co-exist, we build each in its own build directory.
- # 32-bit target data goes in build32, and 64-bit target data goes into build. So, include/link the
- # appropriate data at build time.
- if (CMAKE_CL_64)
- set (BUILDTGT_DIR build)
- else ()
- set (BUILDTGT_DIR build32)
- endif()
-
- # Use static MSVCRT libraries
- foreach(configuration in CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELEASE CMAKE_C_FLAGS_RELWITHDEBINFO
- CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_RELWITHDEBINFO)
- if(${configuration} MATCHES "/MD")
- string(REGEX REPLACE "/MD" "/MT" ${configuration} "${${configuration}}")
- endif()
- endforeach()
-
- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.spv
- COMMAND ${GLSLANG_VALIDATOR} -s -V -o ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${PROJECT_SOURCE_DIR}/demos/cube.vert
- DEPENDS cube.vert ${GLSLANG_VALIDATOR}
- )
- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.spv
- COMMAND ${GLSLANG_VALIDATOR} -s -V -o ${CMAKE_BINARY_DIR}/demos/cube-frag.spv ${PROJECT_SOURCE_DIR}/demos/cube.frag
- DEPENDS cube.frag ${GLSLANG_VALIDATOR}
- )
- file(COPY cube.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/demos)
- file(COPY vulkaninfo.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/demos)
-else()
- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})
- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.spv
- COMMAND ${GLSLANG_VALIDATOR} -s -V -o cube-vert.spv ${PROJECT_SOURCE_DIR}/demos/cube.vert
- DEPENDS cube.vert ${GLSLANG_VALIDATOR}
- )
- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.spv
- COMMAND ${GLSLANG_VALIDATOR} -s -V -o cube-frag.spv ${PROJECT_SOURCE_DIR}/demos/cube.frag
- DEPENDS cube.frag ${GLSLANG_VALIDATOR}
- )
- endif()
-endif()
if(WIN32)
include_directories (
@@ -116,43 +76,6 @@ endif()
add_executable(${API_LOWERCASE}info vulkaninfo.c)
target_link_libraries(${API_LOWERCASE}info ${LIBRARIES})
-if(NOT WIN32)
- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})
- add_executable(cube cube.c ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
- target_link_libraries(cube ${LIBRARIES})
- endif()
-else()
- if (CMAKE_CL_64)
- set (LIB_DIR "Win64")
- else()
- set (LIB_DIR "Win32")
- endif()
-
- add_executable(cube WIN32 cube.c ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
- target_link_libraries(cube ${LIBRARIES})
-endif()
-
-if(NOT WIN32)
- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})
- add_executable(cubepp cube.cpp ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
- target_link_libraries(cubepp ${LIBRARIES})
- endif()
-else()
- if (CMAKE_CL_64)
- set (LIB_DIR "Win64")
- else()
- set (LIB_DIR "Win32")
- endif()
-
- add_executable(cubepp WIN32 cube.cpp ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
- target_link_libraries(cubepp ${LIBRARIES})
-endif()
-
-if ((${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}))
- if ((DEMOS_WSI_SELECTION STREQUAL "XCB") OR (DEMOS_WSI_SELECTION STREQUAL "WAYLAND") OR WIN32 OR (CMAKE_SYSTEM_NAME STREQUAL "Android"))
- add_subdirectory(smoke)
- endif()
-endif()
if(UNIX)
if(INSTALL_LVL_FILES)