commit:     31368c9ef8bdfccc0338ef4997fd111298351be0
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Wed Feb  5 00:36:08 2025 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Wed Feb  5 01:35:41 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31368c9e

dev-util/mesa_clc: Add new package

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 dev-util/mesa_clc/mesa_clc-9999.ebuild | 95 ++++++++++++++++++++++++++++++++++
 dev-util/mesa_clc/metadata.xml         | 12 +++++
 2 files changed, 107 insertions(+)

diff --git a/dev-util/mesa_clc/mesa_clc-9999.ebuild 
b/dev-util/mesa_clc/mesa_clc-9999.ebuild
new file mode 100644
index 000000000000..b2101eeea73a
--- /dev/null
+++ b/dev-util/mesa_clc/mesa_clc-9999.ebuild
@@ -0,0 +1,95 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( {16..19} )
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit llvm-r1 meson python-any-r1
+
+MY_PV="${PV/_/-}"
+
+DESCRIPTION="mesa_clc tool used for building OpenCL C to SPIR-V"
+HOMEPAGE="https://mesa3d.org/";
+
+if [[ ${PV} == 9999 ]]; then
+       S="${WORKDIR}/mesa_clc-${MY_PV}"
+       EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git";
+       inherit git-r3
+else
+       S="${WORKDIR}/mesa-${MY_PV}"
+       SRC_URI="https://archive.mesa3d.org/mesa-${MY_PV}.tar.xz";
+       KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="debug"
+
+RDEPEND="
+       dev-util/spirv-tools
+       $(llvm_gen_dep '
+               dev-util/spirv-llvm-translator:${LLVM_SLOT}
+               llvm-core/clang:${LLVM_SLOT}=
+               =llvm-core/libclc-${LLVM_SLOT}*
+               llvm-core/llvm:${LLVM_SLOT}=
+       ')
+"
+DEPEND="${RDEPEND}
+       dev-libs/expat
+       >=sys-libs/zlib-1.2.8:=
+       x11-libs/libdrm
+"
+BDEPEND="
+       ${PYTHON_DEPS}
+       $(python_gen_any_dep "
+               >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]
+               dev-python/packaging[\${PYTHON_USEDEP}]
+               dev-python/pyyaml[\${PYTHON_USEDEP}]
+       ")
+       virtual/pkgconfig
+"
+
+python_check_deps() {
+       python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" &&
+       python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" &&
+       python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1
+}
+
+pkg_setup() {
+       llvm-r1_pkg_setup
+       python-any-r1_pkg_setup
+}
+
+src_configure() {
+       PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
+
+       use debug && EMESON_BUILDTYPE=debug
+
+       local emesonargs=(
+               -Dllvm=enabled
+               -Dshared-llvm=enabled
+               -Dmesa-clc=enabled
+               -Dinstall-mesa-clc=true
+
+               -Dgallium-drivers=''
+               -Dvulkan-drivers=''
+
+               # Set platforms empty to avoid the default "auto" setting. If
+               # platforms is empty meson.build will add surfaceless.
+               -Dplatforms=''
+
+               -Dglx=disabled
+               -Dlibunwind=disabled
+               -Dzstd=disabled
+
+               -Db_ndebug=$(usex debug false true)
+       )
+       meson_src_configure
+}
+
+src_install() {
+       dobin "${BUILD_DIR}"/src/compiler/clc/mesa_clc
+       dobin "${BUILD_DIR}"/src/compiler/spirv/vtn_bindgen2
+}

diff --git a/dev-util/mesa_clc/metadata.xml b/dev-util/mesa_clc/metadata.xml
new file mode 100644
index 000000000000..a0aca75101e9
--- /dev/null
+++ b/dev-util/mesa_clc/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <maintainer type="project">
+    <email>[email protected]</email>
+    <name>X11</name>
+  </maintainer>
+  <upstream>
+    <remote-id type="cpe">cpe:/a:mesa3d:mesa</remote-id>
+    <remote-id type="freedesktop-gitlab">mesa/mesa</remote-id>
+  </upstream>
+</pkgmetadata>

Reply via email to