commit: d033a41e9d66ede9d09131cbbcd601621f2256ba
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 6 14:12:19 2022 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Apr 6 14:12:43 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d033a41e
sys-devel/clang: Install clang-tidy headers
The clang-tidy headers are apparently needed to build custom clang-tidy
plugins, so install them. Since they aren't needed by anything
in ::gentoo at the moment, limit the change to live ebuilds. I'll add
it to ~arch when another 14.x revbump or release happens.
TODO: split the header targets upstream to make it possible to install
only a subset of generally useful headers rather than all the headers
used by standard clang-tidy plugins.
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
sys-devel/clang/clang-14.0.0.9999.ebuild | 11 +++++++----
sys-devel/clang/clang-15.0.0.9999.ebuild | 11 +++++++----
2 files changed, 14 insertions(+), 8 deletions(-)
diff --git a/sys-devel/clang/clang-14.0.0.9999.ebuild
b/sys-devel/clang/clang-14.0.0.9999.ebuild
index a30ff8ddf23e..4cb70129b171 100644
--- a/sys-devel/clang/clang-14.0.0.9999.ebuild
+++ b/sys-devel/clang/clang-14.0.0.9999.ebuild
@@ -105,10 +105,6 @@ check_distribution_components() {
clang-libraries|distribution)
continue
;;
- # headers for clang-tidy static library
- clang-tidy-headers)
- continue
- ;;
# tools
clang|clangd|clang-*)
;;
@@ -194,6 +190,7 @@ get_distribution_components() {
clang-query
clang-reorder-fields
clang-tidy
+ clang-tidy-headers
clangd
find-all-symbols
modularize
@@ -350,6 +347,7 @@ src_install() {
# Move runtime headers to /usr/lib/clang, where they belong
mv "${ED}"/usr/include/clangrt "${ED}"/usr/lib/clang || die
# move (remaining) wrapped headers back
+ mv "${T}"/clang-tidy "${ED}"/usr/include/ || die
mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${SLOT}/include || die
# Apply CHOST and version suffix to clang tools
@@ -395,6 +393,11 @@ multilib_src_install() {
rm -rf "${ED}"/usr/include || die
mv "${ED}"/usr/lib/llvm/${SLOT}/include "${ED}"/usr/include || die
mv "${ED}"/usr/lib/llvm/${SLOT}/$(get_libdir)/clang
"${ED}"/usr/include/clangrt || die
+ if multilib_is_native_abi; then
+ # don't wrap clang-tidy headers, the list is too long
+ # (they're fine for non-native ABI but enabling the targets is
problematic)
+ mv "${ED}"/usr/include/clang-tidy "${T}/" || die
+ fi
}
multilib_src_install_all() {
diff --git a/sys-devel/clang/clang-15.0.0.9999.ebuild
b/sys-devel/clang/clang-15.0.0.9999.ebuild
index a30ff8ddf23e..4cb70129b171 100644
--- a/sys-devel/clang/clang-15.0.0.9999.ebuild
+++ b/sys-devel/clang/clang-15.0.0.9999.ebuild
@@ -105,10 +105,6 @@ check_distribution_components() {
clang-libraries|distribution)
continue
;;
- # headers for clang-tidy static library
- clang-tidy-headers)
- continue
- ;;
# tools
clang|clangd|clang-*)
;;
@@ -194,6 +190,7 @@ get_distribution_components() {
clang-query
clang-reorder-fields
clang-tidy
+ clang-tidy-headers
clangd
find-all-symbols
modularize
@@ -350,6 +347,7 @@ src_install() {
# Move runtime headers to /usr/lib/clang, where they belong
mv "${ED}"/usr/include/clangrt "${ED}"/usr/lib/clang || die
# move (remaining) wrapped headers back
+ mv "${T}"/clang-tidy "${ED}"/usr/include/ || die
mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${SLOT}/include || die
# Apply CHOST and version suffix to clang tools
@@ -395,6 +393,11 @@ multilib_src_install() {
rm -rf "${ED}"/usr/include || die
mv "${ED}"/usr/lib/llvm/${SLOT}/include "${ED}"/usr/include || die
mv "${ED}"/usr/lib/llvm/${SLOT}/$(get_libdir)/clang
"${ED}"/usr/include/clangrt || die
+ if multilib_is_native_abi; then
+ # don't wrap clang-tidy headers, the list is too long
+ # (they're fine for non-native ABI but enabling the targets is
problematic)
+ mv "${ED}"/usr/include/clang-tidy "${T}/" || die
+ fi
}
multilib_src_install_all() {