From 89e57fb8b4db589e811846dd108f1076842b66bd Mon Sep 17 00:00:00 2001 From: Nick Sarnie Date: Sun, 22 Apr 2018 18:58:35 -0400 Subject: media-libs/vulkan-loader: Fix the installation directory of the layers Upstream installs them into ${prefix}/etc, but these are not configuration files. They should be in the data root directory. This change is based on an idea from stephan wezel Bug: https://bugs.gentoo.org/619124 Package-Manager: Portage-2.3.31, Repoman-2.3.9 --- ...ulkan-loader-Fix-layers-install-directory.patch | 26 +++++++++ .../vulkan-loader/vulkan-loader-1.1.70.0-r1.ebuild | 65 ++++++++++++++++++++++ media-libs/vulkan-loader/vulkan-loader-9999.ebuild | 5 +- 3 files changed, 95 insertions(+), 1 deletion(-) create mode 100644 media-libs/vulkan-loader/files/vulkan-loader-Fix-layers-install-directory.patch create mode 100644 media-libs/vulkan-loader/vulkan-loader-1.1.70.0-r1.ebuild (limited to 'media-libs/vulkan-loader') diff --git a/media-libs/vulkan-loader/files/vulkan-loader-Fix-layers-install-directory.patch b/media-libs/vulkan-loader/files/vulkan-loader-Fix-layers-install-directory.patch new file mode 100644 index 000000000000..193a8e55a465 --- /dev/null +++ b/media-libs/vulkan-loader/files/vulkan-loader-Fix-layers-install-directory.patch @@ -0,0 +1,26 @@ +From 4ae095d8d3e668311b3db3657af753dfb39a149c Mon Sep 17 00:00:00 2001 +From: Nick Sarnie +Date: Sun, 22 Apr 2018 18:44:48 -0400 +Subject: [PATCH] Make the layers install into the data root directory + +Signed-off-by: Nick Sarnie +--- + layers/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/layers/CMakeLists.txt b/layers/CMakeLists.txt +index 9ade6a03..c1a3cedd 100644 +--- a/layers/CMakeLists.txt ++++ b/layers/CMakeLists.txt +@@ -142,7 +142,7 @@ if(UNIX) + VERBATIM + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/linux/${config_file}.json + ) +- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/staging-json/${config_file}.json DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/vulkan/explicit_layer.d) ++ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/staging-json/${config_file}.json DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/vulkan/explicit_layer.d) + endforeach(config_file) + endif() + endif() +-- +2.17.0 + diff --git a/media-libs/vulkan-loader/vulkan-loader-1.1.70.0-r1.ebuild b/media-libs/vulkan-loader/vulkan-loader-1.1.70.0-r1.ebuild new file mode 100644 index 000000000000..980db94c32fb --- /dev/null +++ b/media-libs/vulkan-loader/vulkan-loader-1.1.70.0-r1.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python3_{4,5,6} ) + +if [[ "${PV}" == "9999" ]]; then + EGIT_REPO_URI="https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers.git" + inherit git-r3 +else + KEYWORDS="~amd64" + SRC_URI="https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/archive/sdk-${PV}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/Vulkan-LoaderAndValidationLayers-sdk-${PV}" +fi + +inherit python-any-r1 cmake-multilib + +DESCRIPTION="Vulkan Installable Client Driver (ICD) Loader" +HOMEPAGE="https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="demos layers wayland X" +REQUIRED_USE="demos? ( 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}/${P}-Dont-require-glslang-if-not-building-layers.patch" + "${FILESDIR}/${PN}-Fix-layers-install-directory.patch" + "${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=$(usex layers) + -DBUILD_DEMOS=$(usex demos) + -DBUILD_VKJSON=False + -DBUILD_LOADER=True + -DBUILD_WSI_MIR_SUPPORT=False + -DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland) + -DBUILD_WSI_XCB_SUPPORT=$(usex X) + -DBUILD_WSI_XLIB_SUPPORT=$(usex X) + ) + cmake-utils_src_configure +} + +multilib_src_install() { + keepdir /etc/vulkan/icd.d + + cmake-utils_src_install +} diff --git a/media-libs/vulkan-loader/vulkan-loader-9999.ebuild b/media-libs/vulkan-loader/vulkan-loader-9999.ebuild index b83dbcb76bcd..6d43117ed79a 100644 --- a/media-libs/vulkan-loader/vulkan-loader-9999.ebuild +++ b/media-libs/vulkan-loader/vulkan-loader-9999.ebuild @@ -36,7 +36,10 @@ DEPEND="${PYTHON_DEPS} x11-libs/libXrandr:=[${MULTILIB_USEDEP}] )" -PATCHES=( "${FILESDIR}/${PN}-Use-a-file-to-get-the-spirv-tools-commit-ID.patch" ) +PATCHES=( + "${FILESDIR}/${PN}-Fix-layers-install-directory.patch" + "${FILESDIR}/${PN}-Use-a-file-to-get-the-spirv-tools-commit-ID.patch" + ) multilib_src_configure() { local mycmakeargs=( -- cgit v1.2.3-65-gdbad