diff --git a/llvm-core/flang/Manifest b/llvm-core/flang/Manifest index 6de3fb5fde4db..4210e13610a49 100644 --- a/llvm-core/flang/Manifest +++ b/llvm-core/flang/Manifest @@ -2,4 +2,6 @@ DIST llvm-project-21.1.8.src.tar.xz 158958576 BLAKE2B 0d3d4ee920f8e5db50e9815261 DIST llvm-project-21.1.8.src.tar.xz.sig 119 BLAKE2B cffc1825f5778a3e3c128ec3e856ff6ee50687319d621cdf42e895abf67e05cc51cb7493308e2b506ab60dbdbaca7aa75eb9f78d91d42c81f9682a36f4042e9d SHA512 10f58eff58ed6e701d0f123b15e68c82ab8cbdf99b1c86c0d83e3b8553e90ea51055e30327e8e442ded57c8f503e2a2de9ee075e9c28b5ba815a0f8922f8671c DIST llvm-project-22.1.0-rc1.src.tar.xz 166976000 BLAKE2B eec2cf8822aa6937c751d94f07c6505a3cebda83c544299ff8eaeeedbadc36054b32fb1a0b655993bd604f9c82ac6fa419e974b1dc9c3f4b6c35aa94e9f4e929 SHA512 545ca31b2a24cab3d3a8d5ebfa2a25439eab4258cef01b53706a7a9e5174a75050fb3d36ad2ac4ebb9a23e34a005707c73383cd3cddd78f6789f5b1d4d446e7c DIST llvm-project-22.1.0-rc1.src.tar.xz.sig 119 BLAKE2B e3d5a6c00d7960b0694919ff083e02f0273e97da6a40ad452fbb8261b9edfc52d4262733d82a59f03ad7d15b3b62de743b37a1b2e191417443ecb730520be376 SHA512 51326b9402d7719c491ac5c6ab80a678896743dd88e3f997245adb77e7b3f5e0f84f6389c75872aea268de8a7a049684c84cdf575c1f19c4971bb280a9374de6 +DIST llvm-project-22.1.0-rc2.src.tar.xz 166979860 BLAKE2B d4d58b2615ce596f97ad743ba43a774a7b1e69f8aa394411cfdfdae6abf76ef23c9f483a8db590eac6012a965dbe720111c3c779cf20d1483bd216a3fe5111a0 SHA512 2690f582950a2b8b4dccfce849080b841b34068bbd07acd25ae7d18ef0bc6919f83cd57edda8b90a00327b73aa5cb3411d413ea800247cf541c89143ca26ef98 +DIST llvm-project-22.1.0-rc2.src.tar.xz.sig 119 BLAKE2B 797d0fb36d5ff979504bf094c574ab6473d6d428b0ee0f80c95f6b700c534b8d390f0685e01bd9681fd0b33c0fe39af2d6a8b79372d05af1d87b0a602ba7ff2f SHA512 619a9ef733d7f89ed1e7564d027b4d1ad714dbe7912cd7ff258436e9ee6b878cc806d2856f00b600f982a472644cd9ba54739f8d034f5b5033c1036fcddf9a09 DIST llvm-project-9eaa1ff11ccde52f2e3bf86f253b6b646548c7cc.tar.gz 259436517 BLAKE2B effc5d342ef8440834d03ca7f9d56dc9f5a0aaa10f62aa81fb3d468cfcd0f28a41b343dc12d91e087a5e509a8bb6aa00b477582f42b87efbf22ea580b48a981e SHA512 fda87f688a8a3626c3b025d2a783d7deb0c64ae83cb9c9c89adb73eba764435981545844eb654d7094361fb3786ea955101ba261f0e4af5ee4beffdd9c2449d7 diff --git a/llvm-core/flang/flang-22.1.0_rc2.ebuild b/llvm-core/flang/flang-22.1.0_rc2.ebuild new file mode 100644 index 0000000000000..7c1b7bbf7544c --- /dev/null +++ b/llvm-core/flang/flang-22.1.0_rc2.ebuild @@ -0,0 +1,101 @@ +# 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 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 +}