From a500af9cdb4f0f2554628ceffd01659814699cfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20F=C3=B6rster?= Date: Tue, 2 Sep 2025 19:19:10 +0200 Subject: [PATCH] [dev-util/include-what-you-use] add IWYU for clang 20 --- dev-util/include-what-you-use/Manifest | 1 + .../include-what-you-use-0.24.ebuild | 63 +++++++++++++++++++ dev-util/include-what-you-use/metadata.xml | 11 ++++ 3 files changed, 75 insertions(+) create mode 100644 dev-util/include-what-you-use/Manifest create mode 100644 dev-util/include-what-you-use/include-what-you-use-0.24.ebuild create mode 100644 dev-util/include-what-you-use/metadata.xml diff --git a/dev-util/include-what-you-use/Manifest b/dev-util/include-what-you-use/Manifest new file mode 100644 index 0000000..43fee0e --- /dev/null +++ b/dev-util/include-what-you-use/Manifest @@ -0,0 +1 @@ +DIST include-what-you-use-0.24.tar.gz 821159 BLAKE2B 191d0299c0b5ad6ed75cb24b5530fe606dc6a9ddb91b8d1667ba6f5b909498354b7565e0ebafbfd56eb6e1c4e1c1cf885a0d08b8584d33fae34c4dcbde92ff65 SHA512 62d26a0e646cb6d94d5dee8d672009b938fdcfe64c5c6086693295e90d858754d9a6706b063ddc2cfe5660181df2722a4becfb56285b8cfc6d60f88f729924b7 diff --git a/dev-util/include-what-you-use/include-what-you-use-0.24.ebuild b/dev-util/include-what-you-use/include-what-you-use-0.24.ebuild new file mode 100644 index 0000000..68493e8 --- /dev/null +++ b/dev-util/include-what-you-use/include-what-you-use-0.24.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..13} ) +LLVM_COMPAT=( 20 ) + +inherit cmake llvm-r1 python-single-r1 + +DESCRIPTION="Find unused include directives in C/C++ programs" +HOMEPAGE="https://include-what-you-use.org/" +SRC_URI=" + https://github.com/${PN}/${PN}/archive/${PV}.tar.gz + -> ${P}.tar.gz +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT}= + llvm-core/llvm:${LLVM_SLOT}= + ') + ${PYTHON_DEPS} +" +DEPEND="${RDEPEND}" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +pkg_setup() { + llvm-r1_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + python_fix_shebang . +} + +src_configure() { + local mycmakeargs=( + # Note [llvm install path] + # Unfortunately all binaries using clang driver + # have to reside at the same path depth as + # 'clang' binary itself. See bug #625972 + # Thus as a hack we install it to the same directory + # as llvm/clang itself. + -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)" + # Relative path to the clang library + # https://github.com/include-what-you-use/include-what-you-use/commit/e046d23571876e72719ef96a36ff0cb1cb2e64b6 + -DIWYU_RESOURCE_DIR="../../../clang/${LLVM_SLOT}" + ) + cmake_src_configure +} + +src_test() { + "${EPYTHON}" run_iwyu_tests.py \ + -- "${BUILD_DIR}"/bin/${PN} \ + || die "Tests failed with $? (using ${EPYTHON})" +} diff --git a/dev-util/include-what-you-use/metadata.xml b/dev-util/include-what-you-use/metadata.xml new file mode 100644 index 0000000..28cf5d9 --- /dev/null +++ b/dev-util/include-what-you-use/metadata.xml @@ -0,0 +1,11 @@ + + + + + flow@gentoo.org + Florian Schmaus + + + include-what-you-use/include-what-you-use + +