Oh lawd he comin'

This commit is contained in:
TheK0tYaRa 2025-09-27 21:04:42 +03:00
parent c72f1038c1
commit fb8e120d8d
24 changed files with 681 additions and 4 deletions

View file

@ -0,0 +1,44 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..14} )
inherit cmake-multilib python-any-r1
if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${PN}.git"
inherit git-r3
elif [[ ${PV} == *1.4.328* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${PN}.git"
inherit git-r3
#
EGIT_OVERRIDE_COMMIT_KHRONOSGROUP_GLSLANG="16.0.0"
KEYWORDS="~amd64 ~x86"
else
GIT_COMMIT="vulkan-sdk-${PV}"
SRC_URI="https://github.com/KhronosGroup/${PN}/archive/${GIT_COMMIT}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86"
S="${WORKDIR}/${PN}-${GIT_COMMIT}"
fi
DESCRIPTION="Khronos reference front-end for GLSL and ESSL, and sample SPIR-V generator"
HOMEPAGE="https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/ https://github.com/KhronosGroup/glslang"
LICENSE="BSD"
SLOT="0/16.0"
BDEPEND="${PYTHON_DEPS}
~dev-util/spirv-tools-${PV}[${MULTILIB_USEDEP}]
"
DEPEND="~dev-util/spirv-tools-${PV}[${MULTILIB_USEDEP}]"
RDEPEND="${DEPEND}"
multilib_src_configure() {
local mycmakeargs=(
-DENABLE_PCH=OFF
-DALLOW_EXTERNAL_SPIRV_TOOLS=ON
)
cmake_src_configure
}

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>vulkan@gentoo.org</email>
<name>Vulkan Project</name>
</maintainer>
<upstream>
<remote-id type="github">KhronosGroup/glslang</remote-id>
</upstream>
</pkgmetadata>

View file

@ -9,11 +9,11 @@ inherit cmake
if [[ ${PV} == *9999* ]]; then if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git" EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
inherit git-r3 inherit git-r3
elif [[ ${PV} == *1.4.326* ]]; then elif [[ ${PV} == *1.4.328* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git" EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
inherit git-r3 inherit git-r3
#EGIT_COMMIT #
EGIT_OVERRIDE_BRANCH_KHRONOSGROUP_SPIRV_HEADERS="vulkan-tmp-${PV}" EGIT_OVERRIDE_COMMIT_KHRONOSGROUP_SPIRV_HEADERS="01e0577914a75a2569c846778c2f93aa8e6feddd"
KEYWORDS="~amd64 ~x86" KEYWORDS="~amd64 ~x86"
else else
SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/vulkan-sdk-${PV}.tar.gz -> ${P}.tar.gz" SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/vulkan-sdk-${PV}.tar.gz -> ${P}.tar.gz"

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>vulkan@gentoo.org</email>
<name>Vulkan Project</name>
</maintainer>
<upstream>
<remote-id type="github">KhronosGroup/SPIRV-Tools</remote-id>
</upstream>
</pkgmetadata>

View file

@ -0,0 +1,62 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PN=SPIRV-Tools
PYTHON_COMPAT=( python3_{11..14} )
PYTHON_REQ_USE="xml(+)"
inherit cmake-multilib python-any-r1
if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
inherit git-r3
elif [[ ${PV} == *1.4.328* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
inherit git-r3
#
EGIT_OVERRIDE_COMMIT_KHRONOSGROUP_SPIRV_TOOLS="v2025.4"
KEYWORDS="~amd64 ~x86"
else
EGIT_COMMIT="vulkan-sdk-${PV}"
SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
S="${WORKDIR}"/${MY_PN}-${EGIT_COMMIT}
fi
DESCRIPTION="Provides an API and commands for processing SPIR-V modules"
HOMEPAGE="https://github.com/KhronosGroup/SPIRV-Tools"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
DEPEND="~dev-util/spirv-headers-${PV}"
# RDEPEND=""
BDEPEND="${PYTHON_DEPS}"
multilib_src_configure() {
local mycmakeargs=(
-DSPIRV-Headers_SOURCE_DIR="${ESYSROOT}"/usr/
-DSPIRV_WERROR=OFF
-DSPIRV_SKIP_TESTS=$(usex !test)
-DSPIRV_TOOLS_BUILD_STATIC=OFF
-DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG"
-DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG"
)
cmake_src_configure
}
src_test() {
CMAKE_SKIP_TESTS=(
# Not relevant for us downstream
spirv-tools-copyrights
# Tests fail upon finding symbols that do not match a regular expression
# in the generated library. Easily hit with non-standard compiler flags
spirv-tools-symbol-exports.*
)
multilib-minimal_src_test
}

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>vulkan@gentoo.org</email>
<name>Vulkan Project</name>
</maintainer>
<upstream>
<remote-id type="github">KhronosGroup/Vulkan-Headers</remote-id>
</upstream>
</pkgmetadata>

View file

@ -0,0 +1,46 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PN=Vulkan-Headers
inherit cmake
if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
inherit git-r3
elif [[ ${PV} == *1.4.328* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
inherit git-r3
#
EGIT_OVERRIDE_COMMIT_KHRONOSGROUP_VULKAN_HEADERS="v1.4.328"
KEYWORDS="~amd64 ~x86"
else
SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/vulkan-sdk-${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86"
S="${WORKDIR}"/${MY_PN}-vulkan-sdk-${PV}
fi
DESCRIPTION="Vulkan Header files and API registry"
HOMEPAGE="https://github.com/KhronosGroup/Vulkan-Headers"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
src_configure() {
local mycmakeargs=(
-DVULKAN_HEADERS_ENABLE_MODULE=OFF
-DVULKAN_HEADERS_ENABLE_TESTS=$(usex test)
)
cmake_src_configure
}
src_install() {
# VULKAN_HEADERS_ENABLE_MODULE doesn't seem to be working so just
# delete the modules manually
cmake_src_install
find "${ED}" -name "*.cppm" -type f -delete || die
}

View file

@ -0,0 +1,90 @@
https://bugs.gentoo.org/959725
https://github.com/KhronosGroup/Vulkan-Tools/issues/1130
https://github.com/KhronosGroup/Vulkan-Tools/pull/1134
https://github.com/KhronosGroup/Vulkan-Tools/commit/105d6c1fede00c3a9055e5a531ebf3d99bac406e
From f546743016f5301c063f2c50af0ea43dd2485ef4 Mon Sep 17 00:00:00 2001
From: Charles Giessen <charles@lunarg.com>
Date: Thu, 17 Jul 2025 09:56:40 -0500
Subject: [PATCH] build: Remove pkg-config provided library names
The library names of Xcb, Xlib, and Wayland do not need to be queried from pkg-config,
instead they can be hardcoded to use the fallback names.
The intent of querying the library names was to prevent issues where the hardcoded name
was not the platform-appropriate name. But because <library>_LINK_LIBRARIES can have
more than one library name, the logic to assign <library>_LINK_LIBRARIES into a compile
definition breaks horribly. While it is possible to handle this in CMake, the dlopen code would
also have to handle it which is much more error prone.
--- a/cube/CMakeLists.txt
+++ b/cube/CMakeLists.txt
@@ -307,16 +307,6 @@ if (ANDROID)
return()
endif()
-if (XCB_LINK_LIBRARIES)
- target_compile_definitions(vkcube PRIVATE "XCB_LIBRARY=\"${XCB_LINK_LIBRARIES}\"")
-endif()
-if (X11_LINK_LIBRARIES)
- target_compile_definitions(vkcube PRIVATE "XLIB_LIBRARY=\"${X11_LINK_LIBRARIES}\"")
-endif()
-if (WAYLAND_CLIENT_LINK_LIBRARIES)
- target_compile_definitions(vkcube PRIVATE "WAYLAND_LIBRARY=\"${WAYLAND_CLIENT_LINK_LIBRARIES}\"")
-endif()
-
# ----------------------------------------------------------------------------
# vkcubepp
@@ -360,16 +350,6 @@ target_include_directories(vkcubepp PRIVATE .)
target_compile_definitions(vkcubepp PRIVATE ${ENABLED_CUBE_PLATFORMS})
target_link_libraries(vkcubepp ${CMAKE_DL_LIBS} Vulkan::Headers)
-if (XCB_LINK_LIBRARIES )
- target_compile_definitions(vkcubepp PUBLIC "XCB_LIBRARY=\"${XCB_LINK_LIBRARIES}\"")
-endif()
-if (X11_LINK_LIBRARIES)
- target_compile_definitions(vkcubepp PUBLIC "XLIB_LIBRARY=\"${X11_LINK_LIBRARIES}\"")
-endif()
-if (WAYLAND_CLIENT_LINK_LIBRARIES)
- target_compile_definitions(vkcubepp PUBLIC "WAYLAND_LIBRARY=\"${WAYLAND_CLIENT_LINK_LIBRARIES}\"")
-endif()
-
if(APPLE)
install(
TARGETS vkcubepp
--- a/cube/wayland_loader.h
+++ b/cube/wayland_loader.h
@@ -80,9 +80,6 @@ static PFN_wl_display_disconnect cube_wl_display_disconnect = NULL;
static inline void *initialize_wayland() {
void *wayland_library = NULL;
-#if defined(WAYLAND_LIBRARY)
- wayland_library = dlopen(WAYLAND_LIBRARY, RTLD_NOW | RTLD_LOCAL);
-#endif
if (NULL == wayland_library) {
wayland_library = dlopen("libwayland-client.so.0", RTLD_NOW | RTLD_LOCAL);
}
--- a/cube/xcb_loader.h
+++ b/cube/xcb_loader.h
@@ -88,9 +88,6 @@ static PFN_xcb_screen_next cube_xcb_screen_next = NULL;
void *initialize_xcb() {
void *xcb_library = NULL;
-#if defined(XCB_LIBRARY)
- xcb_library = dlopen(XCB_LIBRARY, RTLD_NOW | RTLD_LOCAL);
-#endif
if (NULL == xcb_library) {
xcb_library = dlopen("libxcb.so.1", RTLD_NOW | RTLD_LOCAL);
}
--- a/cube/xlib_loader.h
+++ b/cube/xlib_loader.h
@@ -72,9 +72,6 @@ static PFN_XFlush cube_XFlush = NULL;
void* initialize_xlib() {
void* xlib_library = NULL;
-#if defined(XLIB_LIBRARY)
- xlib_library = dlopen(XLIB_LIBRARY, RTLD_NOW | RTLD_LOCAL);
-#endif
if (NULL == xlib_library) {
xlib_library = dlopen("libX11.so.6", RTLD_NOW | RTLD_LOCAL);
}

View file

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>vulkan@gentoo.org</email>
<name>Vulkan Project</name>
</maintainer>
<use>
<flag name="cube">Build the cube/cubepp demos</flag>
</use>
<upstream>
<remote-id type="github">KhronosGroup/Vulkan-Tools</remote-id>
</upstream>
</pkgmetadata>

View file

@ -0,0 +1,97 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PN=Vulkan-Tools
PYTHON_COMPAT=( python3_{11..14} )
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
elif [[ ${PV} == *1.4.328* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
inherit git-r3
#
EGIT_OVERRIDE_COMMIT_KHRONOSGROUP_VULKAN_TOOLS="v1.4.328"
KEYWORDS="~amd64"
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 test X"
RESTRICT="!test? ( test )"
BDEPEND="${PYTHON_DEPS}
cube? ( ~dev-util/glslang-${PV}:=[${MULTILIB_USEDEP}] )
"
RDEPEND="
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}] )
test? (
~media-libs/vulkan-loader-${PV}[${MULTILIB_USEDEP},wayland?,X?]
dev-cpp/gtest
)
"
#PATCHES=(
# "${FILESDIR}"/vulkan-tools-1.4.321-fix-cube-wayland.patch
#)
pkg_setup() {
MULTILIB_CHOST_TOOLS=(
/usr/bin/vulkaninfo
)
use cube && MULTILIB_CHOST_TOOLS+=(
/usr/bin/vkcube
/usr/bin/vkcubepp
)
python-any-r1_pkg_setup
}
multilib_src_configure() {
local mycmakeargs=(
-DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG"
-DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG -DGIT_BRANCH_NAME=\\\"gentoo\\\" -DGIT_TAG_INFO=\\\"${PV//./_}\\\""
-DCMAKE_DISABLE_FIND_PACKAGE_Git=ON
-DCMAKE_SKIP_RPATH=ON
-DBUILD_VULKANINFO=ON
-DBUILD_CUBE=$(usex cube)
-DBUILD_TESTS=$(usex test)
-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"
)
cmake_src_configure
}
pkg_postinst() {
if use cube; then
einfo "As of version 1.4.304.0, the window system for 'vkcube' and 'vkcubepp'"
einfo "can be selected at runtime using the '--wsi' runtime argument."
einfo "For example, Wayland can be selected using '--wsi wayland'."
einfo "As such, 'vkcube-wayland' has been removed and the runtime argument"
einfo "must be used instead. See 'vkcube --help' for more information."
fi
}

View file

@ -0,0 +1 @@
DIST shaderc-2025.4.tar.gz 228962 BLAKE2B eb9fc280e1137198508885114abbeb1e196e0aa5dd9900585a40b76d279c8de3352da76f4ca0444110961bd0edc999caa1f9153ec89a8becc9301a67bc7fec74 SHA512 78a1dac0bd80c447193680066970343413cf504314d0f9a0af772181cf2e673b22b0d467a06cefa9743f451e1c0c9445ade82d3ee68eae927a4c784ec2ca15e3

View file

@ -0,0 +1,13 @@
diff --git a/libshaderc_util/src/compiler.cc b/libshaderc_util/src/compiler.cc
index c5ce37e..4703634 100644
--- a/libshaderc_util/src/compiler.cc
+++ b/libshaderc_util/src/compiler.cc
@@ -20,7 +20,7 @@
#include <thread>
#include <tuple>
-#include "SPIRV/GlslangToSpv.h"
+#include "glslang/SPIRV/GlslangToSpv.h"
#include "libshaderc_util/format.h"
#include "libshaderc_util/io.h"
#include "libshaderc_util/message.h"

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>vulkan@gentoo.org</email>
<name>Vulkan Project</name>
</maintainer>
<upstream>
<remote-id type="github">google/shaderc</remote-id>
</upstream>
</pkgmetadata>

View file

@ -0,0 +1,81 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..14} )
inherit cmake-multilib dot-a python-any-r1
DESCRIPTION="Collection of tools, libraries and tests for shader compilation"
HOMEPAGE="https://github.com/google/shaderc"
EGIT_COMMIT="${PV}"
SRC_URI="https://github.com/google/${PN}/archive/v${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86"
IUSE="doc"
RDEPEND="
>=dev-util/glslang-1.4.321.0:=[${MULTILIB_USEDEP}]
>=dev-util/spirv-tools-1.4.321.0[${MULTILIB_USEDEP}]
"
DEPEND="${RDEPEND}
${PYTHON_DEPS}
>=dev-util/spirv-headers-1.4.321.0"
BDEPEND="doc? ( dev-ruby/asciidoctor )"
PATCHES=(
"${FILESDIR}"/${PN}-2020.4-fix-build.patch
)
# https://github.com/google/shaderc/issues/470
RESTRICT=test
src_prepare() {
cmake_comment_add_subdirectory examples
# Unbundle glslang, spirv-headers, spirv-tools
cmake_comment_add_subdirectory third_party
sed -i \
-e "s|\$<TARGET_FILE:spirv-dis>|${EPREFIX}/usr/bin/spirv-dis|" \
glslc/test/CMakeLists.txt || die
# Disable git versioning
sed -i -e '/build-version/d' glslc/CMakeLists.txt || die
# Manually create build-version.inc as we disabled git versioning
cat <<- EOF > glslc/src/build-version.inc || die
"${P}\n"
"$(best_version dev-util/spirv-tools)\n"
"$(best_version dev-util/glslang)\n"
EOF
cmake_src_prepare
}
multilib_src_configure() {
lto-guarantee-fat
local mycmakeargs=(
-DSHADERC_SKIP_TESTS="true"
-DSHADERC_ENABLE_WERROR_COMPILE="false"
)
cmake_src_configure
}
multilib_src_compile() {
if multilib_is_native_abi && use doc; then
cmake_src_compile glslc_doc_README
fi
cmake_src_compile
}
multilib_src_install() {
if multilib_is_native_abi; then
use doc && local HTML_DOCS=( "${BUILD_DIR}/glslc/README.html" )
fi
cmake_src_install
strip-lto-bytecode
}

View file

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>vulkan@gentoo.org</email>
<name>Vulkan Project</name>
</maintainer>
<upstream>
<remote-id type="github">KhronosGroup/Vulkan-LoaderAndValidationLayers</remote-id>
</upstream>
<use>
<flag name="layers">Include the vulkan layers</flag>
</use>
</pkgmetadata>

View file

@ -0,0 +1,66 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PN=Vulkan-Loader
inherit flag-o-matic cmake-multilib toolchain-funcs
if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
EGIT_SUBMODULES=()
inherit git-r3
elif [[ ${PV} == *1.4.328* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
inherit git-r3
#
EGIT_OVERRIDE_COMMIT_KHRONOSGROUP_VULKAN_LOADER="v1.4.328"
KEYWORDS="~amd64 ~x86"
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 x86"
S="${WORKDIR}"/${MY_PN}-vulkan-sdk-${PV}
fi
DESCRIPTION="Vulkan Installable Client Driver (ICD) Loader"
HOMEPAGE="https://github.com/KhronosGroup/Vulkan-Loader"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="layers wayland X"
DEPEND="
~dev-util/vulkan-headers-${PV}
wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] )
X? (
x11-base/xorg-proto
x11-libs/libX11:=[${MULTILIB_USEDEP}]
x11-libs/libXrandr:=[${MULTILIB_USEDEP}]
)
"
PDEPEND="layers? ( media-libs/vulkan-layers[${MULTILIB_USEDEP}] )"
multilib_src_configure() {
# Integrated clang assembler doesn't work with x86 - Bug #698164
if tc-is-clang && [[ ${ABI} == x86 ]]; then
append-cflags -fno-integrated-as
fi
local mycmakeargs=(
-DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG"
-DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG"
-DCMAKE_SKIP_RPATH=ON
-DBUILD_TESTS=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"
)
cmake_src_configure
}
multilib_src_install() {
keepdir /etc/vulkan/icd.d
cmake_src_install
}

View file

@ -0,0 +1,15 @@
BDEPEND=|| ( dev-lang/python:3.14 dev-lang/python:3.13 dev-lang/python:3.12 dev-lang/python:3.11 ) ~dev-util/spirv-tools-1.4.328[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] app-alternatives/ninja >=dev-build/cmake-3.20.5 >=dev-vcs/git-1.8.2.1[curl]
DEFINED_PHASES=compile configure install prepare setup test unpack
DEPEND=~dev-util/spirv-tools-1.4.328[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?]
DESCRIPTION=Khronos reference front-end for GLSL and ESSL, and sample SPIR-V generator
EAPI=8
HOMEPAGE=https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/ https://github.com/KhronosGroup/glslang
INHERIT=cmake-multilib python-any-r1 git-r3
IUSE=abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64
KEYWORDS=~amd64 ~x86
LICENSE=BSD
PROPERTIES=live
RDEPEND=~dev-util/spirv-tools-1.4.328[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?]
SLOT=0/16.0
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multilib a199af442898963433d6f038a88cce9c multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 cmake-multilib 3f19d8d5fccba52076cdeb2281ad349f python-utils-r1 b7eb9c3a6dc6662368634584aab44a2c python-any-r1 891415dfe39ad9b41b461f2b86354af0 git-r3 875eb471682d3e1f18da124be97dcc81
_md5_=67cd8ccfaab5b8ce75b7624f76dd02ca

View file

@ -9,4 +9,4 @@ LICENSE=MIT
PROPERTIES=live PROPERTIES=live
SLOT=0 SLOT=0
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a git-r3 875eb471682d3e1f18da124be97dcc81 _eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a git-r3 875eb471682d3e1f18da124be97dcc81
_md5_=c65e7b812e5d02849f9bb113b4a7c166 _md5_=c4ac048723e16ac3ea33a8c122198ed5

View file

@ -0,0 +1,15 @@
BDEPEND=|| ( dev-lang/python:3.14[xml(+)] dev-lang/python:3.13[xml(+)] dev-lang/python:3.12[xml(+)] dev-lang/python:3.11[xml(+)] ) app-alternatives/ninja >=dev-build/cmake-3.20.5 >=dev-vcs/git-1.8.2.1[curl]
DEFINED_PHASES=compile configure install prepare setup test unpack
DEPEND=~dev-util/spirv-headers-1.4.328
DESCRIPTION=Provides an API and commands for processing SPIR-V modules
EAPI=8
HOMEPAGE=https://github.com/KhronosGroup/SPIRV-Tools
INHERIT=cmake-multilib python-any-r1 git-r3
IUSE=test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64
KEYWORDS=~amd64 ~x86
LICENSE=Apache-2.0
PROPERTIES=live
RESTRICT=!test? ( test )
SLOT=0
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multilib a199af442898963433d6f038a88cce9c multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 cmake-multilib 3f19d8d5fccba52076cdeb2281ad349f python-utils-r1 b7eb9c3a6dc6662368634584aab44a2c python-any-r1 891415dfe39ad9b41b461f2b86354af0 git-r3 875eb471682d3e1f18da124be97dcc81
_md5_=ca36e0b721ee2e1b35b4e358bc33e6ad

View file

@ -0,0 +1,14 @@
BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5 >=dev-vcs/git-1.8.2.1[curl]
DEFINED_PHASES=compile configure install prepare test unpack
DESCRIPTION=Vulkan Header files and API registry
EAPI=8
HOMEPAGE=https://github.com/KhronosGroup/Vulkan-Headers
INHERIT=cmake git-r3
IUSE=test
KEYWORDS=~amd64 ~x86
LICENSE=Apache-2.0
PROPERTIES=live
RESTRICT=!test? ( test )
SLOT=0
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a git-r3 875eb471682d3e1f18da124be97dcc81
_md5_=947c76c09037e86421a17f3e98245a48

View file

@ -0,0 +1,14 @@
BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5 >=dev-vcs/git-1.8.2.1[curl]
DEFINED_PHASES=compile configure install prepare test unpack
DESCRIPTION=Vulkan Header files and API registry
EAPI=8
HOMEPAGE=https://github.com/KhronosGroup/Vulkan-Headers
INHERIT=cmake git-r3
IUSE=test
KEYWORDS=~amd64 ~x86
LICENSE=Apache-2.0
PROPERTIES=live
RESTRICT=!test? ( test )
SLOT=0
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a git-r3 875eb471682d3e1f18da124be97dcc81
_md5_=533def44eb9f19a9d5da43efe6705426

View file

@ -0,0 +1,16 @@
BDEPEND=|| ( dev-lang/python:3.14 dev-lang/python:3.13 dev-lang/python:3.12 dev-lang/python:3.11 ) cube? ( ~dev-util/glslang-1.4.328:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) app-alternatives/ninja >=dev-build/cmake-3.20.5 >=dev-vcs/git-1.8.2.1[curl]
DEFINED_PHASES=compile configure install postinst prepare setup test unpack
DEPEND=wayland? ( dev-libs/wayland[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) X? ( x11-libs/libX11[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libxcb:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ~dev-util/vulkan-headers-1.4.328 X? ( x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) test? ( ~media-libs/vulkan-loader-1.4.328[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?,wayland?,X?] dev-cpp/gtest )
DESCRIPTION=Official Vulkan Tools and Utilities for Windows, Linux, Android, and MacOS
EAPI=8
HOMEPAGE=https://github.com/KhronosGroup/Vulkan-Tools
INHERIT=cmake-multilib python-any-r1 git-r3
IUSE=cube wayland test X abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64
KEYWORDS=~amd64
LICENSE=Apache-2.0
PROPERTIES=live
RDEPEND=wayland? ( dev-libs/wayland[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) X? ( x11-libs/libX11[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libxcb:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] )
RESTRICT=!test? ( test )
SLOT=0
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multilib a199af442898963433d6f038a88cce9c multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 cmake-multilib 3f19d8d5fccba52076cdeb2281ad349f python-utils-r1 b7eb9c3a6dc6662368634584aab44a2c python-any-r1 891415dfe39ad9b41b461f2b86354af0 git-r3 875eb471682d3e1f18da124be97dcc81
_md5_=0f01ce7fe0ee943eaf2816f21e507f03

View file

@ -0,0 +1,16 @@
BDEPEND=doc? ( dev-ruby/asciidoctor ) app-alternatives/ninja >=dev-build/cmake-3.20.5
DEFINED_PHASES=compile configure install prepare setup test
DEPEND=>=dev-util/glslang-1.4.321.0:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=dev-util/spirv-tools-1.4.321.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] || ( dev-lang/python:3.14 dev-lang/python:3.13 dev-lang/python:3.12 dev-lang/python:3.11 ) >=dev-util/spirv-headers-1.4.321.0
DESCRIPTION=Collection of tools, libraries and tests for shader compilation
EAPI=8
HOMEPAGE=https://github.com/google/shaderc
INHERIT=cmake-multilib dot-a python-any-r1
IUSE=doc abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64
KEYWORDS=amd64 arm arm64 ~loong ppc ppc64 ~riscv x86
LICENSE=Apache-2.0
RDEPEND=>=dev-util/glslang-1.4.321.0:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=dev-util/spirv-tools-1.4.321.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?]
RESTRICT=test
SLOT=0
SRC_URI=https://github.com/google/shaderc/archive/v2025.4.tar.gz -> shaderc-2025.4.tar.gz
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multilib a199af442898963433d6f038a88cce9c multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 cmake-multilib 3f19d8d5fccba52076cdeb2281ad349f dot-a e5200fe17cfd2ed6fa66edd80201763a python-utils-r1 b7eb9c3a6dc6662368634584aab44a2c python-any-r1 891415dfe39ad9b41b461f2b86354af0
_md5_=832c1ee17b14731342245ac5ebcb764e

View file

@ -0,0 +1,15 @@
BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5 >=dev-vcs/git-1.8.2.1[curl]
DEFINED_PHASES=compile configure install prepare test unpack
DEPEND=~dev-util/vulkan-headers-1.4.328 wayland? ( dev-libs/wayland:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) X? ( x11-base/xorg-proto x11-libs/libX11:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] )
DESCRIPTION=Vulkan Installable Client Driver (ICD) Loader
EAPI=8
HOMEPAGE=https://github.com/KhronosGroup/Vulkan-Loader
INHERIT=flag-o-matic cmake-multilib toolchain-funcs git-r3
IUSE=layers wayland X abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64
KEYWORDS=~amd64 ~x86
LICENSE=Apache-2.0
PDEPEND=layers? ( media-libs/vulkan-layers[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] )
PROPERTIES=live
SLOT=0
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multilib a199af442898963433d6f038a88cce9c multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 cmake-multilib 3f19d8d5fccba52076cdeb2281ad349f git-r3 875eb471682d3e1f18da124be97dcc81
_md5_=eb6a6593f989e091be3b2a28af5e0a57