From 5a0b06163f63cedb2c873bf21ecfa1e3795013e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Wed, 10 Sep 2025 10:55:51 +0200 Subject: [PATCH] llvm-core/flang: Add 22.0.0_pre20250910 snapshot MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- llvm-core/flang/Manifest | 1 + .../flang/flang-22.0.0_pre20250910.ebuild | 101 ++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 llvm-core/flang/flang-22.0.0_pre20250910.ebuild diff --git a/llvm-core/flang/Manifest b/llvm-core/flang/Manifest index de80bdbd69397..1ec7c057815e6 100644 --- a/llvm-core/flang/Manifest +++ b/llvm-core/flang/Manifest @@ -1,3 +1,4 @@ DIST llvm-project-21.1.0.src.tar.xz 158971856 BLAKE2B ac8c3cc8d2c986abcaa523acc872b01311ec118a738654f9cc53a1d5fdba70ba10cfe829e23f3913557e460403ed6a2df81cb5e9a435c8e1ce08e7ead3511bf0 SHA512 1487dcdc041dd6cdcffa6cc95a565e18a9fce2a73215671e366a9601cecce6c8bf70065df5564de5998d1841c3d8d829a9fbd2cad72e3aab4db279e8885ff446 DIST llvm-project-21.1.0.src.tar.xz.sig 438 BLAKE2B c5731350bc7454867da18887628c0e87bf404589097034c7ddfffbeec277b900bd1fa49daabd41d4f8800a8ab76105bf7e910a99dd970819ab987373d4ed4ed9 SHA512 c3cd0a759e22a24f4307d8747b7986f966f4fa3c413092efc73ccca252476f1b59878dc65b444884515bcce3d3bfab902f585cc1d08e2aeb55aa8e588128aeb6 DIST llvm-project-645dd324d1b7d028745c2a4045b69e745df2ae6a.tar.gz 247443586 BLAKE2B dd3229c32768e42fd2f311638f1e63f5503fabee3fa414bc3300313b36bbfa062d90900319e4fdbbafae17947537fba699fe5940e1b6553a2d9a716c0ce7b59c SHA512 659dc22e2fd1fd0bced13f941127797dc7703b8d810eeb7a0fc51cf55c274e69e2d6660867c191d5d90615ddee3a1faff7f7cd357ff2eb88d715762be50098c3 +DIST llvm-project-f059d2bac034acca39ad60a1b13aaec6afa0a3d6.tar.gz 248627883 BLAKE2B e1603ba38fcf70e7f3794a30a42057d0052a422bd0aaf423c65d1fd8f9ec7d3981cd651f309dc3ab5c28183291241732373b9bdb75fc2a11fc8d9f238388b8c3 SHA512 63a1627a8b3cc8f240cefe2066d7e306cab5091317f97dd808b9ad887d4e6eb2d21af3f79bccfdb9387f5f7a5ed0b772013b0261a647c8d50ffaa55914362dfb diff --git a/llvm-core/flang/flang-22.0.0_pre20250910.ebuild b/llvm-core/flang/flang-22.0.0_pre20250910.ebuild new file mode 100644 index 0000000000000..2659ac8c0d5b0 --- /dev/null +++ b/llvm-core/flang/flang-22.0.0_pre20250910.ebuild @@ -0,0 +1,101 @@ +# 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 flag-o-matic llvm.org python-any-r1 toolchain-funcs + +DESCRIPTION="LLVM's Fortran frontend" +HOMEPAGE="https://flang.llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions" +SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" +IUSE="+clang +debug test" +RESTRICT="!test? ( test )" + +DEPEND=" + ~llvm-core/clang-${PV}[debug=] + ~llvm-core/llvm-${PV}[debug=] + ~llvm-core/mlir-${PV}[debug=] +" +RDEPEND=" + ${DEPEND} +" +PDEPEND=" + >=llvm-runtimes/flang-rt-${PV}:${LLVM_MAJOR} +" +BDEPEND=" + clang? ( llvm-core/clang ) + test? ( + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + ) +" + +LLVM_COMPONENTS=( flang cmake ) +LLVM_TEST_COMPONENTS=( clang/test/Driver mlir/test/lib ) +LLVM_USE_TARGETS=llvm+eq +llvm.org_set_globals + +python_check_deps() { + python_has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +pkg_pretend() { + if ! use clang && tc-is-gcc; then + ewarn "Building using GCC requires lots of memory (up to 10 GiB per process)." + ewarn "Consider enabling USE=clang." + ewarn "See https://gcc.gnu.org/PR119705" + fi +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_configure() { + if use clang; then + # Only do this conditionally to allow overriding with + # e.g. CC=clang-13 in case of breakage + if ! tc-is-clang ; then + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + fi + + strip-unsupported-flags + fi + + local mycmakeargs=( + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" + + -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}" + -DCLANG_RESOURCE_DIR="../../../clang/${LLVM_MAJOR}" + + -DBUILD_SHARED_LIBS=OFF + -DMLIR_LINK_MLIR_DYLIB=ON + # flang does not feature a dylib, so do not install libraries + # or headers + -DLLVM_INSTALL_TOOLCHAIN_ONLY=ON + # installed by llvm-runtimes/flang-rt + -DFLANG_INCLUDE_RUNTIME=OFF + + # TODO: always enable to obtain reproducible tools + -DFLANG_INCLUDE_TESTS=$(usex test) + + -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" + ) + 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 +} + +src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + cmake_build check-flang +}