From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 464E81582EF for ; Tue, 11 Feb 2025 11:30:02 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 0505134313E for ; Tue, 11 Feb 2025 11:30:02 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 86180110474; Tue, 11 Feb 2025 11:29:53 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 8183F110474 for ; Tue, 11 Feb 2025 11:29:53 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 3287D3430A9 for ; Tue, 11 Feb 2025 11:29:53 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 9448A27F6 for ; Tue, 11 Feb 2025 11:29:51 +0000 (UTC) From: "Michał Górny" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Michał Górny" Message-ID: <1739273374.f784fb764cfe00952de9a3df370d88338e7c3d60.mgorny@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: llvm-core/mlir/ X-VCS-Repository: repo/gentoo X-VCS-Files: llvm-core/mlir/Manifest llvm-core/mlir/mlir-21.0.0_pre20250211.ebuild X-VCS-Directories: llvm-core/mlir/ X-VCS-Committer: mgorny X-VCS-Committer-Name: Michał Górny X-VCS-Revision: f784fb764cfe00952de9a3df370d88338e7c3d60 X-VCS-Branch: master Date: Tue, 11 Feb 2025 11:29:51 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 1481bfd8-ff93-4e55-8a0a-8ef7886c9688 X-Archives-Hash: 0ae95407efe5998132fb6e5b0b3989ee commit: f784fb764cfe00952de9a3df370d88338e7c3d60 Author: Michał Górny gentoo org> AuthorDate: Tue Feb 11 10:56:44 2025 +0000 Commit: Michał Górny gentoo org> CommitDate: Tue Feb 11 11:29:34 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f784fb76 llvm-core/mlir: Add 21.0.0_pre20250211 snapshot Signed-off-by: Michał Górny gentoo.org> llvm-core/mlir/Manifest | 1 + llvm-core/mlir/mlir-21.0.0_pre20250211.ebuild | 204 ++++++++++++++++++++++++++ 2 files changed, 205 insertions(+) diff --git a/llvm-core/mlir/Manifest b/llvm-core/mlir/Manifest index 40edb55270b1..80c6e58a9da8 100644 --- a/llvm-core/mlir/Manifest +++ b/llvm-core/mlir/Manifest @@ -1,5 +1,6 @@ DIST llvm-project-1f26ac10ca1bef40a80be8f81a6f109713bc586f.tar.gz 226424755 BLAKE2B 642befb8d6923f335d1d68129ebb7357f8ba22e110df494dd956c8097e4e5db4b2a88fcc069ab67184b03558f072c68e002bdaf90eba865e38b1473a0ef29eed SHA512 e9bb4fd31bbad5ec864c662515b5ec2e5511cce975040f9f3cd8f009c92f76077928feae0467fd9519a001a379c857f7539c506953d8d5a9209a9f358f414aac DIST llvm-project-20.1.0-rc1.src.tar.xz 147144668 BLAKE2B ea4733962f38ea5897c73e91840818921739909c3671749bc8a0b1d2798e5a0815bbe750ade3a2a7414836ab7158754818b2f9370a4ee1bbbd52c96b1e95ef9b SHA512 c23c4b1227b6b0b7c3059358e64a00ee98893236bb1a0a41d7e821bdf2aa8353aea8f9f7b9498899c6807b9b8e2ceb06c3cd62e32fd07a786a319135055541b4 DIST llvm-project-20.1.0-rc1.src.tar.xz.sig 566 BLAKE2B 32eb278ec4ff1bb9d258b584922b0d227f4126a957ba75af44dcaa63b6a12ef73db56d6a86f24244af47803ddf6a243149d784f08137cbea60b49700be537705 SHA512 d7a334326201f8ca78284b33c325f180538667a0401bc30931e790aacc96dd78f6559c45929b6c335d40ef1dbe772738c0ce55d881ae3d7401733778b485408c +DIST llvm-project-2cd8207b26ea4269630feba661f68554d7ae3c15.tar.gz 227261597 BLAKE2B 51ce992b651fcf08b7fd520420040803b59f1260947953325400c50bec576c418b162d8ae2d2307e70b885b1185c302a97409bcfe48cdb14b8e1384f4e2dfa9e SHA512 a41749943508ea4a18b47c4e947917b5268544e64372c0c3347f9ab8172a2c229d8b1d813d1e842be1b98aedd624524857ed3bb23fe98ad5f36e7a71581abb4b DIST llvm-project-6f241e36831927e3aea113cfc017c34fdeda340a.tar.gz 227203285 BLAKE2B 8d5e424c1836acc82ea766cd2cef104593c44d197ebeb64f18dbe74b1b5baeb4bc84084f5b68bd87ac36f7df25689dd2522cb6674a97da4f96f4f10f7bae5b06 SHA512 2b6e4bd6445eabfa3ace9b45d20797c7afc23f4553a8938399aeba227e3b8ca6a53a7d7762925a845bfed031c37af692b9c08180fbab80db2f3166940e560077 DIST llvm-project-bfa7edcc6652bdb37d53e0cec64926aab3f280eb.tar.gz 226735989 BLAKE2B 165837dc526e618b44c49d5fa3dceda373452e010a09746bff248903fe77874637d05ab9f5d2f63de7ebce5c14e3b19a131313a4a557adfd20fe9cb93ab60476 SHA512 e9e19176fcf1302727ee34d69eaa820b94959d64ceaf754d8a93ebd5e262cec7fe35e87b08f705b09e42c3ea26b671318eecf10e9137c635b12f481f80fbac23 diff --git a/llvm-core/mlir/mlir-21.0.0_pre20250211.ebuild b/llvm-core/mlir/mlir-21.0.0_pre20250211.ebuild new file mode 100644 index 000000000000..d69b14b4bb5c --- /dev/null +++ b/llvm-core/mlir/mlir-21.0.0_pre20250211.ebuild @@ -0,0 +1,204 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +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) + ;; + # 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_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 + 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() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + cmake_build check-mlir +} + +multilib_src_install() { + DESTDIR=${D} cmake_build install-distribution +}