diff options
| author | 2023-09-18 21:05:08 -0400 | |
|---|---|---|
| committer | 2023-09-18 21:14:26 -0400 | |
| commit | 53af8fd4069bc353a47285da50132dc84298d547 (patch) | |
| tree | e48af3ec3279c2efe6e5584d5f9104c1a040b2af | |
| parent | sys-apps/shadow: backport build fixes (diff) | |
| download | gentoo-53af8fd4069bc353a47285da50132dc84298d547.tar.gz gentoo-53af8fd4069bc353a47285da50132dc84298d547.tar.bz2 gentoo-53af8fd4069bc353a47285da50132dc84298d547.zip | |
dev-util/vulkan-tools: Support multiple window systems
Closes: https://bugs.gentoo.org/907071
Closes: https://bugs.gentoo.org/912402
Signed-off-by: Nick Sarnie <sarnex@gentoo.org>
| -rw-r--r-- | dev-util/vulkan-tools/vulkan-tools-1.3.261-r1.ebuild | 80 | ||||
| -rw-r--r-- | dev-util/vulkan-tools/vulkan-tools-9999.ebuild | 6 |
2 files changed, 84 insertions, 2 deletions
diff --git a/dev-util/vulkan-tools/vulkan-tools-1.3.261-r1.ebuild b/dev-util/vulkan-tools/vulkan-tools-1.3.261-r1.ebuild new file mode 100644 index 000000000000..aeda890581ac --- /dev/null +++ b/dev-util/vulkan-tools/vulkan-tools-1.3.261-r1.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PN=Vulkan-Tools +PYTHON_COMPAT=( python3_{9..12} ) +inherit cmake-multilib python-any-r1 + +if [[ ${PV} == *9999* ]]; then + EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git" + EGIT_SUBMODULES=() + inherit git-r3 +else + SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/sdk-${PV}.0.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv" + S="${WORKDIR}"/${MY_PN}-sdk-${PV}.0 +fi + +DESCRIPTION="Official Vulkan Tools and Utilities for Windows, Linux, Android, and MacOS" +HOMEPAGE="https://github.com/KhronosGroup/Vulkan-Tools" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="cube wayland +X" + +REQUIRED_USE="cube? ( || ( X wayland ) )" + +BDEPEND="${PYTHON_DEPS} + cube? ( ~dev-util/glslang-${PV}:=[${MULTILIB_USEDEP}] ) +" +RDEPEND=" + ~media-libs/vulkan-loader-${PV}:=[${MULTILIB_USEDEP},wayland?,X?] + wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] ) + X? ( + x11-libs/libX11:=[${MULTILIB_USEDEP}] + x11-libs/libXrandr:=[${MULTILIB_USEDEP}] + ) +" +DEPEND="${RDEPEND} + ~dev-util/vulkan-headers-${PV} +" + +pkg_setup() { + MULTILIB_CHOST_TOOLS=( + /usr/bin/vulkaninfo + ) + + use cube && MULTILIB_CHOST_TOOLS+=( + /usr/bin/vkcube + /usr/bin/vkcubepp + ) + use cube && use wayland && MULTILIB_CHOST_TOOLS+=( + /usr/bin/vkcube-wayland + ) + + python-any-r1_pkg_setup +} + +multilib_src_configure() { + local mycmakeargs=( + -DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG" + -DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG" + -DCMAKE_SKIP_RPATH=ON + -DBUILD_VULKANINFO=ON + -DBUILD_CUBE=$(usex cube) + -DBUILD_WERROR=OFF + -DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland) + -DBUILD_WSI_XCB_SUPPORT=$(usex X) + -DBUILD_WSI_XLIB_SUPPORT=$(usex X) + -DVULKAN_HEADERS_INSTALL_DIR="${ESYSROOT}/usr" + ) + + use cube && mycmakeargs+=( + -DGLSLANG_INSTALL_DIR="${ESYSROOT}/usr" + -DCUBE_WSI_SELECTION=$(usex X XCB WAYLAND) + ) + + cmake_src_configure +} diff --git a/dev-util/vulkan-tools/vulkan-tools-9999.ebuild b/dev-util/vulkan-tools/vulkan-tools-9999.ebuild index 1269dcab52ee..aeda890581ac 100644 --- a/dev-util/vulkan-tools/vulkan-tools-9999.ebuild +++ b/dev-util/vulkan-tools/vulkan-tools-9999.ebuild @@ -24,8 +24,7 @@ LICENSE="Apache-2.0" SLOT="0" IUSE="cube wayland +X" -# Cube demo only supports one window system at a time -REQUIRED_USE="cube? ( ^^ ( X wayland ) )" +REQUIRED_USE="cube? ( || ( X wayland ) )" BDEPEND="${PYTHON_DEPS} cube? ( ~dev-util/glslang-${PV}:=[${MULTILIB_USEDEP}] ) @@ -51,6 +50,9 @@ pkg_setup() { /usr/bin/vkcube /usr/bin/vkcubepp ) + use cube && use wayland && MULTILIB_CHOST_TOOLS+=( + /usr/bin/vkcube-wayland + ) python-any-r1_pkg_setup } |
