diff options
author | Florian Schmaus <flow@gentoo.org> | 2024-11-15 20:56:42 +0100 |
---|---|---|
committer | Florian Schmaus <flow@gentoo.org> | 2024-11-15 21:34:19 +0100 |
commit | 328298e190a1d5d6ca02780d19c8f10c8df91ed4 (patch) | |
tree | eab5f1dcd0cd6a6555c61d9ceda9ec2cce523af3 /dev-util | |
parent | net-irc/kvirc: drop 5.2.4 (diff) | |
download | gentoo-328298e190a1d5d6ca02780d19c8f10c8df91ed4.tar.gz gentoo-328298e190a1d5d6ca02780d19c8f10c8df91ed4.tar.bz2 gentoo-328298e190a1d5d6ca02780d19c8f10c8df91ed4.zip |
dev-util/include-what-you-use: add 0.23
Signed-off-by: Florian Schmaus <flow@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/include-what-you-use/Manifest | 1 | ||||
-rw-r--r-- | dev-util/include-what-you-use/include-what-you-use-0.23.ebuild | 88 |
2 files changed, 89 insertions, 0 deletions
diff --git a/dev-util/include-what-you-use/Manifest b/dev-util/include-what-you-use/Manifest index 4e8b1cad4f3e..8e69046b7248 100644 --- a/dev-util/include-what-you-use/Manifest +++ b/dev-util/include-what-you-use/Manifest @@ -2,3 +2,4 @@ DIST include-what-you-use-0.19-test-util-support-EXTRA_IWYU_ARGS.patch 2314 BLAK 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 +DIST include-what-you-use-0.23.tar.gz 813726 BLAKE2B 845101985d1c39925605d2908ad76c40b8df0838467d7afd83b644914893f8e32ed1563348e568bc126ea4349ab390b189b734f66cf3b8da75277af169313a23 SHA512 5c2bbda7dbc614089717d2a4f8b9a96111dc30efcdd331a21c548399d58b47229210d5f17eb48eeb56c44797068ebac634a5d68a5c50ff322753e5f7965b3d48 diff --git a/dev-util/include-what-you-use/include-what-you-use-0.23.ebuild b/dev-util/include-what-you-use/include-what-you-use-0.23.ebuild new file mode 100644 index 000000000000..09fa7d9e2fce --- /dev/null +++ b/dev-util/include-what-you-use/include-what-you-use-0.23.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +LLVM_COMPAT=( 19 ) + +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 ' + sys-devel/clang:${LLVM_SLOT} + sys-devel/llvm:${LLVM_SLOT} + ') + ${PYTHON_DEPS} +" +DEPEND="${RDEPEND}" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +llvm_check_deps() { + has_version "sys-devel/clang:${LLVM_SLOT}" +} + +pkg_setup() { + llvm-r1_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + python_fix_shebang . + + rm tests/cxx/stdint.cc || die +} + +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)" + ) + cmake_src_configure +} + +src_test() { + local clang_version=$(best_version sys-devel/clang:${LLVM_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_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})" +} |