[dev-util/include-what-you-use] add IWYU for clang 20

This commit is contained in:
Robert Förster 2025-09-02 19:19:10 +02:00
parent 6a89c517c8
commit a500af9cdb
3 changed files with 75 additions and 0 deletions

View File

@ -0,0 +1 @@
DIST include-what-you-use-0.24.tar.gz 821159 BLAKE2B 191d0299c0b5ad6ed75cb24b5530fe606dc6a9ddb91b8d1667ba6f5b909498354b7565e0ebafbfd56eb6e1c4e1c1cf885a0d08b8584d33fae34c4dcbde92ff65 SHA512 62d26a0e646cb6d94d5dee8d672009b938fdcfe64c5c6086693295e90d858754d9a6706b063ddc2cfe5660181df2722a4becfb56285b8cfc6d60f88f729924b7

View File

@ -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})"
}

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type='person'>
<email>flow@gentoo.org</email>
<name>Florian Schmaus</name>
</maintainer>
<upstream>
<remote-id type="github">include-what-you-use/include-what-you-use</remote-id>
</upstream>
</pkgmetadata>