summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2025-02-22 16:09:59 +0100
committerMichał Górny <mgorny@gentoo.org>2025-02-22 16:19:08 +0100
commit48fe3b7af54204021f8822d69294a964254b0131 (patch)
treea99f135723576cfa851b0a52e062bc9134bcc681 /llvm-core
parentllvm-core/clang: Add 21.0.0_pre20250221 snapshot (diff)
downloadgentoo-48fe3b7af54204021f8822d69294a964254b0131.tar.gz
gentoo-48fe3b7af54204021f8822d69294a964254b0131.tar.bz2
gentoo-48fe3b7af54204021f8822d69294a964254b0131.zip
llvm-core/flang: Add 21.0.0_pre20250221 snapshot
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'llvm-core')
-rw-r--r--llvm-core/flang/Manifest1
-rw-r--r--llvm-core/flang/flang-21.0.0_pre20250221.ebuild72
2 files changed, 73 insertions, 0 deletions
diff --git a/llvm-core/flang/Manifest b/llvm-core/flang/Manifest
index 5401c2124484..509158e881bc 100644
--- a/llvm-core/flang/Manifest
+++ b/llvm-core/flang/Manifest
@@ -1 +1,2 @@
+DIST llvm-project-581599096e8a1a89ccd3e053a1209c69a9079083.tar.gz 227830555 BLAKE2B 28a04dd5ce96716d389fe049c4b877f55d6e5cad5c77d8867dd7e3a448213ef413e4f4d7d5f77b0702b26a8eb25f53e08d90e2a5a97eaa3f89245531d9f6626d SHA512 d775aea9bf71d60673e966a689ff6b933afecab2c133a1f64a158551ba9db049221148eab5087bab0ce0ff917456b85fb4ea4d7284886326f54617d167a385a5
DIST llvm-project-c30a7f459452d5766da244564bc1d5888346c364.tar.gz 227560986 BLAKE2B c1c833aa6d488530826d96db81ca8be2fcf842ccf5b10a65ff18269fdfa32fa2742fb0a547eb315c2a9ee383e1b6b6cce4a78136e1740e04d322c79fb6a66a86 SHA512 0b68d3462e5eac89f50cff5e64603758ab74c701ff2de88c8569dd45b7e702b5d13b26c2745615c0c355d46d13765f47e4d43e61cde735240c6f386c0090becb
diff --git a/llvm-core/flang/flang-21.0.0_pre20250221.ebuild b/llvm-core/flang/flang-21.0.0_pre20250221.ebuild
new file mode 100644
index 000000000000..a5cd1ef77ae3
--- /dev/null
+++ b/llvm-core/flang/flang-21.0.0_pre20250221.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake llvm.org
+
+DESCRIPTION="LLVM's Fortran frontend"
+HOMEPAGE="https://flang.llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions"
+SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
+IUSE="+debug test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ ~llvm-core/clang-${PV}[debug=]
+ ~llvm-core/llvm-${PV}[debug=]
+ ~llvm-core/mlir-${PV}[debug=]
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ test? (
+ dev-python/lit
+ )
+"
+
+LLVM_COMPONENTS=( flang flang-rt cmake )
+LLVM_TEST_COMPONENTS=( clang/test/Driver mlir/test/lib )
+llvm.org_set_globals
+
+src_configure() {
+ 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
+
+ # TODO: always enable to obtain reproducible tools
+ -DFLANG_INCLUDE_TESTS=$(usex test)
+ )
+ 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
+}
+
+src_install() {
+ cmake_src_install
+
+ # move the runtime into 'lib' (sigh), until upstream resolves
+ # libdir support: https://github.com/llvm/llvm-project/issues/127538
+ mv "${ED}/usr/lib/llvm/${LLVM_MAJOR}"/{$(get_libdir),lib} || die
+}