summaryrefslogtreecommitdiff
path: root/dev-util/include-what-you-use
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/include-what-you-use')
-rw-r--r--dev-util/include-what-you-use/Manifest2
-rw-r--r--dev-util/include-what-you-use/include-what-you-use-0.22.ebuild84
2 files changed, 86 insertions, 0 deletions
diff --git a/dev-util/include-what-you-use/Manifest b/dev-util/include-what-you-use/Manifest
index a20e13418388..0042c9aa2099 100644
--- a/dev-util/include-what-you-use/Manifest
+++ b/dev-util/include-what-you-use/Manifest
@@ -2,6 +2,8 @@ AUX include-what-you-use-0.19-tests-cxx-badinc.cc-remove-stddef-from-expected.pa
DIST include-what-you-use-0.19-test-util-support-EXTRA_IWYU_ARGS.patch 2314 BLAKE2B d6c99aa59b52207ece610f8a8fe52ae967f3e027118c97f665b0a5d21782d85d94658ece1e0ae0e2d86cdcb94a345f072fdbda495caf589b045a8be38bf56f99 SHA512 2ecd6afc2de5ff85c8a6609b151d7d1e50a985e5c52db9b298ce21bad94a3bafb7b939fcd3b3cec0b753e83ba9ea256f628fbda16837ee6b3c3f1d2ec664d4d9
DIST include-what-you-use-0.20.tar.gz 766208 BLAKE2B 54ae7ab18afc592bae201e551377a22d9439cb38418197836aef9d7a74d84ec7cca81ae155358504af9520a07d513e78e61ed7bcf55028f3b56aaa6e949f950b SHA512 77195dc36338a37d3397c78701d81e52fc1c6a3441979fa016f154b0fc860598959e6430e78a51bbf9049f6b2bb62956e50f5531ac5c94c6554e2383ace540f5
DIST include-what-you-use-0.21.tar.gz 776263 BLAKE2B 32e1afc3400641ba4d648cfed0228db5b12357e5aaf4a4c5d8f063e82f14db4c6c568eedbfbfdfed033ae36d787db42122a026df8f74a080901247264ae856e2 SHA512 d6940fcde5f8212b7d6e1b3b8c9075157f831320279f5b7e57346c292c5b2cc52b53491a2c65b69dfcbd83ae2246c7c71555416e1faad9fd9a0aff9c12ddf1ba
+DIST include-what-you-use-0.22.tar.gz 796681 BLAKE2B 6ae0b2fd94367c458f2db268493af8922f9e82e0a389765fc94d3d53482b7f276f7a7959f6a8d9fe6ca55e58c0db77ee50f58ce4ad375c0ea73b9029e26ea54d SHA512 e95dc64372ed791441b0b92e113cbeee8aa76e8912776f776ffeb02d96f84fec18988527f46b1fbf7e174e11af043b4387ff47d9012cdd74ce38ec0bfc7ebad2
EBUILD include-what-you-use-0.20.ebuild 2463 BLAKE2B 288e581be0efeaa5b5595ded1ff4a1fa7bf308a01e131bc31f140dd01f4751861cab6174d0187a898937d91f6d8736001aee6ef2c9205c879d44d5e4939650d3 SHA512 ab601598e09276e702e0a00dd6beade7fb515d9961882eb426a4a06c79c4ac3a76c6ce0b3ec882f51552b471e901b40a20f81881330a1abdc59264ac880ecca8
EBUILD include-what-you-use-0.21.ebuild 2060 BLAKE2B 439f981a4bf3b56162aacaf54f248e99f1c352d29055ba3f7425602690bf0d3969e5f2d23ff0f521b2a46011da70afd0a83a658f3d647d786b9f30a0e8b698ff SHA512 d28c68eddb498b4522811ecab6d69e45bf9d3f9a10863b11dff79fa24d6e7ea1c7731bae59d332a6b193ab88f9791b56cb51d367ee6fde7cdff63ff0d44e7363
+EBUILD include-what-you-use-0.22.ebuild 2061 BLAKE2B 9488c43a6a6c8097b1ce7a0d8eeefce69a02d72e9dd217d287610aa4b08efe81123778adef68f665d70b30ab51ff401452715a2abaf743a208ef8d9c202ce063 SHA512 67338bb7450e69c79481840e4071261368c45608d3c18e57cac4e8c885976e4e4a12e9903c6d27732b41d2ab23fdbe243070d8c65a62ba82e1f4e458489d0ec8
MISC metadata.xml 353 BLAKE2B 2d95f026ce60294177b001cddd8904988aeddb3fb257a73bcf1d028bebd747b0b9467322a0fb87a5de1f7074721ebc2b9931eaa1c519fcef0388a61a8924fea9 SHA512 88e999a1bb1d9993d150347db7b1ec340978594cd2543191646e54d8fb5e125a68063916f048cc1a7166ccd646d66ea33f7f37d94ff20ed21abc7b7c8413e222
diff --git a/dev-util/include-what-you-use/include-what-you-use-0.22.ebuild b/dev-util/include-what-you-use/include-what-you-use-0.22.ebuild
new file mode 100644
index 000000000000..88d55bd823a9
--- /dev/null
+++ b/dev-util/include-what-you-use/include-what-you-use-0.22.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit cmake llvm 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"
+
+LLVM_MAX_SLOT=18
+
+RDEPEND="
+ sys-devel/clang:${LLVM_MAX_SLOT}
+ sys-devel/llvm:${LLVM_MAX_SLOT}
+ ${PYTHON_DEPS}
+"
+DEPEND="${RDEPEND}"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+llvm_check_deps() {
+ has_version "sys-devel/clang:${LLVM_SLOT}"
+}
+
+pkg_setup() {
+ llvm_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 "${LLVM_MAX_SLOT}")"
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ local clang_version=$(best_version sys-devel/clang:${LLVM_MAX_SLOT})
+ clang_version=${clang_version#*/*-} # reduce it to ${PV}-${PR}
+ clang_version=${clang_version%%[_-]*} # main version without beta/pre/patch/revision
+
+ local clang_include_dir_candidates=(
+ "${ESYSROOT}/usr/lib/clang/${clang_version}/include"
+ "${ESYSROOT}/usr/lib/clang/${LLVM_MAX_SLOT}/include"
+ )
+
+ local candidate_dir
+ for candidate_dir in "${clang_include_dir_candidates[@]}"; do
+ if [[ -d "${candidate_dir}" ]]; then
+ local clang_include_dir="${candidate_dir}"
+ break
+ fi
+ done
+
+ if [[ ! -v clang_include_dir ]]; then
+ die "Could not infer clang include directory. Candidates: ${clang_include_dir_candidates[*]}"
+ fi
+
+ local -x IWYU_EXTRA_ARGS="-I ${clang_include_dir}"
+ "${EPYTHON}" run_iwyu_tests.py \
+ -- "${BUILD_DIR}"/bin/${PN} \
+ || die "Tests failed with $? (using ${EPYTHON})"
+}