commit:     7b7094dde1494d5a38fdc6b8bdb207e8a2d8a0d3
Author:     Nick Sarnie <commendsarnex <AT> gmail <DOT> com>
AuthorDate: Sat Mar 24 01:57:37 2018 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Apr 14 19:50:21 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b7094dd

media-libs/vulkan-loader: Add layers USE

Closes: https://bugs.gentoo.org/619124

 ...e-a-file-to-get-the-spirv-tools-commit-ID.patch | 42 ++++++++++++++++++++++
 media-libs/vulkan-loader/metadata.xml              |  1 +
 media-libs/vulkan-loader/vulkan-loader-9999.ebuild | 12 +++++--
 3 files changed, 52 insertions(+), 3 deletions(-)

diff --git 
a/media-libs/vulkan-loader/files/vulkan-loader-Use-a-file-to-get-the-spirv-tools-commit-ID.patch
 
b/media-libs/vulkan-loader/files/vulkan-loader-Use-a-file-to-get-the-spirv-tools-commit-ID.patch
new file mode 100644
index 00000000000..066f126e437
--- /dev/null
+++ 
b/media-libs/vulkan-loader/files/vulkan-loader-Use-a-file-to-get-the-spirv-tools-commit-ID.patch
@@ -0,0 +1,42 @@
+From 58299a001068a28f5d5f6985c2066b7c4caa7b18 Mon Sep 17 00:00:00 2001
+From: Nick Sarnie <commendsar...@gmail.com>
+Date: Fri, 23 Mar 2018 20:23:54 -0400
+Subject: [PATCH] Use a file to get the spirv-tools commit ID
+
+Signed-off-by: Nick Sarnie <commendsar...@gmail.com>
+---
+ CMakeLists.txt | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c9f73ce9..c3e200b3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -349,6 +349,14 @@ macro(run_external_revision_generate source_dir 
symbol_name output)
+     )
+ endmacro()
+ 
++macro(run_external_revision_generate_spirv_tools source_dir symbol_name 
output)
++    add_custom_command(OUTPUT ${output}
++    COMMAND ${PYTHON_CMD} ${SCRIPTS_DIR}/external_revision_generator.py 
--rev_file ${source_dir}/spirv-tools-commit.h -s ${symbol_name} -o ${output}
++    DEPENDS ${SCRIPTS_DIR}/external_revision_generator.py 
${source_dir}/spirv-tools-commit.h
++    )
++endmacro()
++
++
+ # Custom target for generated vulkan helper file dependencies
+ set(generate_helper_files_DEPENDS)
+ if(BUILD_LAYERS)
+@@ -377,7 +385,7 @@ run_vk_xml_generate(helper_file_generator.py 
vk_object_types.h)
+ run_vk_xml_generate(helper_file_generator.py vk_extension_helper.h)
+ run_vk_xml_generate(helper_file_generator.py vk_typemap_helper.h)
+ if(BUILD_LAYERS)
+-    
run_external_revision_generate(${EXTERNAL_SOURCE_ROOT}/glslang/External/spirv-tools
 SPIRV_TOOLS_COMMIT_ID spirv_tools_commit_id.h)
++    run_external_revision_generate_spirv_tools(/usr/include/spirv-tools 
SPIRV_TOOLS_COMMIT_ID spirv_tools_commit_id.h)
+ endif()
+ 
+ 
+-- 
+2.16.3
+
+

diff --git a/media-libs/vulkan-loader/metadata.xml 
b/media-libs/vulkan-loader/metadata.xml
index 9e5a300d863..5896567b6cb 100644
--- a/media-libs/vulkan-loader/metadata.xml
+++ b/media-libs/vulkan-loader/metadata.xml
@@ -10,5 +10,6 @@
        </upstream>
        <use>
                <flag name="demos">Build vulkan demos and vulkaninfo</flag>
+               <flag name="layers">Build the vulkan layers</flag>
        </use>
 </pkgmetadata>

diff --git a/media-libs/vulkan-loader/vulkan-loader-9999.ebuild 
b/media-libs/vulkan-loader/vulkan-loader-9999.ebuild
index 67822d5a388..b3a7e0743f4 100644
--- a/media-libs/vulkan-loader/vulkan-loader-9999.ebuild
+++ b/media-libs/vulkan-loader/vulkan-loader-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -20,22 +20,28 @@ 
HOMEPAGE="https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers";
 
 LICENSE="Apache-2.0"
 SLOT="0"
-IUSE="demos wayland X"
+IUSE="demos layers wayland X"
 
 RDEPEND=""
 DEPEND="${PYTHON_DEPS}
        demos? ( dev-util/glslang:=[${MULTILIB_USEDEP}] )
+       layers? (
+                       dev-util/glslang:=[${MULTILIB_USEDEP}]
+                       >=dev-util/spirv-tools-2018.2-r1:=[${MULTILIB_USEDEP}]
+               )
        wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] )
        X? (
                x11-libs/libX11:=[${MULTILIB_USEDEP}]
                x11-libs/libXrandr:=[${MULTILIB_USEDEP}]
        )"
 
+PATCHES=( 
"${FILESDIR}/${PN}-Use-a-file-to-get-the-spirv-tools-commit-ID.patch" )
+
 multilib_src_configure() {
        local mycmakeargs=(
                -DCMAKE_SKIP_RPATH=True
                -DBUILD_TESTS=False
-               -DBUILD_LAYERS=False
+               -DBUILD_LAYERS=$(usex layers)
                -DBUILD_DEMOS=$(usex demos)
                -DBUILD_VKJSON=False
                -DBUILD_LOADER=True

Reply via email to