diff --git a/dev-util/vulkan-tools/Manifest b/dev-util/vulkan-tools/Manifest index 46eb10c78b9fc..3601b4fc41094 100644 --- a/dev-util/vulkan-tools/Manifest +++ b/dev-util/vulkan-tools/Manifest @@ -1 +1,2 @@ DIST vulkan-tools-1.3.275.tar.gz 755289 BLAKE2B 2366a0c55982ef9ef13495ac62d958d0055fcbbbd7cdaab9530ebf15af9369a71bf3b8d3d6479f3a0ee02d44ace027e0fd57b2b93d6a9a373781c60529a48663 SHA512 5d70498341b8d2447128cd5ab3fd081b706830f5f85d9f7e752dfca9c74fa4c1567207eef6e34e9bf99ff65ec2855b835eb30362fd544e1cf61ecc7a7119df06 +DIST vulkan-tools-1.3.280.0.tar.gz 758884 BLAKE2B 99d9157a3e701d6f143f6f893c85c0f1d9df13f0b8ca75cc8b8985e92272f4621a03094e6bc5c0b24eca9036b622a774acb9f539c30196ab2c2c1505870e72a2 SHA512 d28dd0a83e993058f58ba83c148a3104c1bbe4e731b81bfc934a989dfcdf3cc1b22383bcaee2a34545ddb9b053e00bea3da463d48fa10727a18ee7e34641d1cb diff --git a/dev-util/vulkan-tools/vulkan-tools-1.3.280.0.ebuild b/dev-util/vulkan-tools/vulkan-tools-1.3.280.0.ebuild new file mode 100644 index 0000000000000..56ce6ee1887fa --- /dev/null +++ b/dev-util/vulkan-tools/vulkan-tools-1.3.280.0.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PN=Vulkan-Tools +PYTHON_COMPAT=( python3_{10..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/vulkan-sdk-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv" + S="${WORKDIR}"/${MY_PN}-vulkan-sdk-${PV} +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" + +BDEPEND="${PYTHON_DEPS} + cube? ( ~dev-util/glslang-${PV}:=[${MULTILIB_USEDEP}] ) +" +RDEPEND=" + ~dev-util/volk-${PV}:=[${MULTILIB_USEDEP}] + ~media-libs/vulkan-loader-${PV}[${MULTILIB_USEDEP},wayland?,X?] + wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] ) + X? ( + x11-libs/libX11[${MULTILIB_USEDEP}] + x11-libs/libxcb:=[${MULTILIB_USEDEP}] + ) +" +DEPEND="${RDEPEND} + ~dev-util/vulkan-headers-${PV} + X? ( x11-libs/libXrandr[${MULTILIB_USEDEP}] ) +" + +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" + ) + + if use cube; then + if use X; then + mycmakeargs+=(-DCUBE_WSI_SELECTION=XCB) + elif use wayland; then + mycmakeargs+=(-DCUBE_WSI_SELECTION=WAYLAND) + else + mycmakeargs+=(-DCUBE_WSI_SELECTION=DISPLAY) + fi + fi + + cmake_src_configure +}