mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-23 16:49:10 -07:00
llvm-core/mlir: Add 22.0.0_pre20260113 snapshot
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
DIST llvm-project-05349a9b43805d3c0b424da99f3a1fa362cd3419.tar.gz 256643165 BLAKE2B fe7be8ea73a22de902c399784ad95a0011add75af77ddc191bcbabdd276df65af4aa5339cdc74e89f5d2971ef74251ea46a5513a462a97963d36f85102c89665 SHA512 d6c58681f3e3f59589f2eac963ab9e92cd27a39dafe3e79ebdae82ad9e6fc6e3180a45ba7a142a7552a3585bc6cba46caeff1c0e2227563ec48820cdd1502e86
|
||||
DIST llvm-project-21.1.8.src.tar.xz 158958576 BLAKE2B 0d3d4ee920f8e5db50e98152616f16004c74df0e7313cc86d893428fb7b1c875109988a5e40ea6f2e5d0fef53c7bfe2fc2b69e84807f6eb440b03afa1b228a36 SHA512 cae4c44e7bf678071723da63ad5839491d717a7233e7f4791aa408207f3ea42f52de939ad15189b112c02a0770f1bb8d59bae6ad31ef53417a6eea7770fe52ab
|
||||
DIST llvm-project-21.1.8.src.tar.xz.sig 119 BLAKE2B cffc1825f5778a3e3c128ec3e856ff6ee50687319d621cdf42e895abf67e05cc51cb7493308e2b506ab60dbdbaca7aa75eb9f78d91d42c81f9682a36f4042e9d SHA512 10f58eff58ed6e701d0f123b15e68c82ab8cbdf99b1c86c0d83e3b8553e90ea51055e30327e8e442ded57c8f503e2a2de9ee075e9c28b5ba815a0f8922f8671c
|
||||
DIST llvm-project-85c3c83ae54c9e81924f1ca048cfddc8d36bbb02.tar.gz 258189384 BLAKE2B d7a0c36511c17e8dacef27701abcda316902ac17325c63f79e33366efc783e0ab53d62d71c92e2e49457db095d9e8fec0bcabf1a8056a95d25eb976bdd5ba15f SHA512 a8a9ea91b4181005fb6385afff7681fdfc5a46e05aba216add29216a6dcb70cc667d1d300ee85be75997a963193e8e015917401def27d5759ff774f0fa00b527
|
||||
DIST llvm-project-b01c3d6682d2fa5d6ac22d5a964b739009e9db7b.tar.gz 256801517 BLAKE2B dbdcaed7e0e06a673730c53c64c988add905b2679695ca0cf09db8b28f59eedd5455f4a0ad5a3d672e4f6601d7480775ef8fc405dc1e60c75b425382410e59cf SHA512 3afa29dac2f9b22e6af4b1783bae0bc7507a1a8ca397e88fd6687cbd9620df54525b2b9115906b80e9d1dcd16e0704a5a90eaa6cf0fa3d7f89d3d60f7d8ee19f
|
||||
|
||||
233
llvm-core/mlir/mlir-22.0.0_pre20260113.ebuild
Normal file
233
llvm-core/mlir/mlir-22.0.0_pre20260113.ebuild
Normal file
@@ -0,0 +1,233 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11..14} )
|
||||
inherit cmake llvm.org multilib-minimal python-any-r1
|
||||
|
||||
DESCRIPTION="Multi-Level Intermediate Representation (library only)"
|
||||
HOMEPAGE="https://mlir.llvm.org/"
|
||||
|
||||
LICENSE="Apache-2.0-with-LLVM-exceptions"
|
||||
SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
|
||||
IUSE="+debug test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
~llvm-core/llvm-${PV}[debug=,${MULTILIB_USEDEP}]
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
"
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
llvm-core/llvm:${LLVM_MAJOR}
|
||||
test? (
|
||||
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
|
||||
)
|
||||
"
|
||||
|
||||
LLVM_COMPONENTS=( mlir cmake )
|
||||
# tablegen tests use *.td files there
|
||||
LLVM_TEST_COMPONENTS=( llvm/include )
|
||||
llvm.org_set_globals
|
||||
|
||||
python_check_deps() {
|
||||
if use test; then
|
||||
python_has_version "dev-python/lit[${PYTHON_USEDEP}]"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
llvm.org_src_prepare
|
||||
|
||||
# https://github.com/llvm/llvm-project/issues/120902
|
||||
sed -i -e '/LINK_LIBS/s:PUBLIC:PRIVATE:' \
|
||||
lib/ExecutionEngine/CMakeLists.txt || die
|
||||
}
|
||||
|
||||
check_distribution_components() {
|
||||
if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then
|
||||
local all_targets=() my_targets=() l
|
||||
cd "${BUILD_DIR}" || die
|
||||
|
||||
while read -r l; do
|
||||
if [[ ${l} == install-*-stripped:* ]]; then
|
||||
l=${l#install-}
|
||||
l=${l%%-stripped*}
|
||||
|
||||
case ${l} in
|
||||
# meta-targets
|
||||
mlir-libraries|distribution)
|
||||
continue
|
||||
;;
|
||||
# dylib
|
||||
MLIR)
|
||||
;;
|
||||
# installed test libraries
|
||||
MLIRTestAnalysis|MLIRTestDialect|MLIRTestIR)
|
||||
;;
|
||||
MLIROpenACCTestPasses)
|
||||
;;
|
||||
# static libraries
|
||||
MLIR*)
|
||||
continue
|
||||
;;
|
||||
esac
|
||||
|
||||
all_targets+=( "${l}" )
|
||||
fi
|
||||
done < <(${NINJA} -t targets all)
|
||||
|
||||
while read -r l; do
|
||||
my_targets+=( "${l}" )
|
||||
done < <(get_distribution_components $"\n")
|
||||
|
||||
local add=() remove=()
|
||||
for l in "${all_targets[@]}"; do
|
||||
if ! has "${l}" "${my_targets[@]}"; then
|
||||
add+=( "${l}" )
|
||||
fi
|
||||
done
|
||||
for l in "${my_targets[@]}"; do
|
||||
if ! has "${l}" "${all_targets[@]}"; then
|
||||
remove+=( "${l}" )
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then
|
||||
eqawarn "get_distribution_components() is outdated!"
|
||||
eqawarn " Add: ${add[*]}"
|
||||
eqawarn "Remove: ${remove[*]}"
|
||||
fi
|
||||
cd - >/dev/null || die
|
||||
fi
|
||||
}
|
||||
|
||||
get_distribution_components() {
|
||||
local sep=${1-;}
|
||||
|
||||
local out=(
|
||||
mlir-cmake-exports
|
||||
mlir-headers
|
||||
|
||||
# the dylib
|
||||
MLIR
|
||||
|
||||
# shared libraries
|
||||
mlir_apfloat_wrappers
|
||||
mlir_arm_runner_utils
|
||||
mlir_arm_sme_abi_stubs
|
||||
mlir_async_runtime
|
||||
mlir_c_runner_utils
|
||||
mlir_float16_utils
|
||||
mlir_runner_utils
|
||||
|
||||
# test libraries required by flang
|
||||
MLIROpenACCTestPasses
|
||||
MLIRTestAnalysis
|
||||
MLIRTestDialect
|
||||
MLIRTestIR
|
||||
)
|
||||
|
||||
if multilib_is_native_abi; then
|
||||
out+=(
|
||||
# tools
|
||||
mlir-linalg-ods-yaml-gen
|
||||
mlir-lsp-server
|
||||
mlir-opt
|
||||
mlir-pdll
|
||||
mlir-pdll-lsp-server
|
||||
mlir-query
|
||||
mlir-reduce
|
||||
mlir-rewrite
|
||||
mlir-runner
|
||||
mlir-tblgen
|
||||
mlir-translate
|
||||
tblgen-lsp-server
|
||||
tblgen-to-irdl
|
||||
)
|
||||
fi
|
||||
|
||||
printf "%s${sep}" "${out[@]}"
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
|
||||
-DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
|
||||
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
# this controls building libMLIR.so
|
||||
-DLLVM_BUILD_LLVM_DYLIB=ON
|
||||
-DMLIR_BUILD_MLIR_C_DYLIB=OFF
|
||||
-DMLIR_LINK_MLIR_DYLIB=ON
|
||||
-DMLIR_INCLUDE_TESTS=ON
|
||||
-DMLIR_INCLUDE_INTEGRATION_TESTS=OFF
|
||||
-DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components)
|
||||
# this enables installing mlir-tblgen and mlir-pdll
|
||||
-DLLVM_BUILD_UTILS=ON
|
||||
|
||||
-DPython3_EXECUTABLE="${PYTHON}"
|
||||
|
||||
-DLLVM_BUILD_TOOLS=ON
|
||||
# TODO
|
||||
-DMLIR_ENABLE_CUDA_RUNNER=0
|
||||
-DMLIR_ENABLE_ROCM_RUNNER=0
|
||||
-DMLIR_ENABLE_SYCL_RUNNER=0
|
||||
-DMLIR_ENABLE_SPIRV_CPU_RUNNER=0
|
||||
-DMLIR_ENABLE_VULKAN_RUNNER=0
|
||||
-DMLIR_ENABLE_BINDINGS_PYTHON=0
|
||||
-DMLIR_INSTALL_AGGREGATE_OBJECTS=OFF
|
||||
)
|
||||
use test && mycmakeargs+=(
|
||||
-DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
|
||||
-DLLVM_LIT_ARGS="$(get_lit_flags)"
|
||||
)
|
||||
|
||||
# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
|
||||
use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
|
||||
cmake_src_configure
|
||||
|
||||
multilib_is_native_abi && check_distribution_components
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
cmake_build distribution
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
local known_xfail=(
|
||||
# https://github.com/llvm/llvm-project/pull/157885#issuecomment-3288095032
|
||||
mlir-pdll-lsp-server/view-output.test
|
||||
)
|
||||
|
||||
case ${ABI} in
|
||||
arm|ppc|x86)
|
||||
known_xfail+=(
|
||||
# MLIR is full of 64-bit assumptions, sigh
|
||||
# https://github.com/llvm/llvm-project/issues/124541
|
||||
Conversion/MemRefToLLVM/memref-to-llvm.mlir
|
||||
Dialect/Bufferization/Transforms/one-shot-bufferize-pass-statistics.mlir
|
||||
Dialect/LLVMIR/sroa-statistics.mlir
|
||||
Dialect/Linalg/vectorize-tensor-extract.mlir
|
||||
Dialect/MemRef/mem2reg-statistics.mlir
|
||||
Dialect/Tensor/fold-tensor-subset-ops.mlir
|
||||
Dialect/Tensor/tracking-listener.mlir
|
||||
Pass/pipeline-stats-nested.mlir
|
||||
Pass/pipeline-stats.mlir
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
||||
# respect TMPDIR!
|
||||
local -x LIT_PRESERVES_TMP=1
|
||||
local -x LIT_XFAIL="${known_xfail[*]}"
|
||||
LIT_XFAIL=${LIT_XFAIL// /;}
|
||||
cmake_build check-mlir
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
DESTDIR=${D} cmake_build install-distribution
|
||||
}
|
||||
Reference in New Issue
Block a user