1 |
commit: ea65ccccdd15905c34840b9ac4f91cfbc2e68e51 |
2 |
Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
3 |
AuthorDate: Wed May 4 02:10:29 2022 +0000 |
4 |
Commit: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
5 |
CommitDate: Wed May 4 02:10:29 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=ea65cccc |
7 |
|
8 |
dev-util/annobin: add 10.67 |
9 |
|
10 |
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com> |
11 |
|
12 |
dev-util/annobin/Manifest | 1 + |
13 |
dev-util/annobin/annobin-10.67.ebuild | 88 +++++++++++++++++++++++++++++++++++ |
14 |
2 files changed, 89 insertions(+) |
15 |
|
16 |
diff --git a/dev-util/annobin/Manifest b/dev-util/annobin/Manifest |
17 |
index 7649141a1..cc64ada05 100644 |
18 |
--- a/dev-util/annobin/Manifest |
19 |
+++ b/dev-util/annobin/Manifest |
20 |
@@ -1 +1,2 @@ |
21 |
DIST annobin-10.65.tar.xz 849952 BLAKE2B 6f6124f6470d3f6fe37ce766dc65af43b3020d0ea745cbaf501c3757a83c500f590276cde98048bd5c47602b8ca954d43039060779cec3d8d2abdd5f1695fac8 SHA512 c7191fc88072431f3c62ae2abe405b88c78b3d703353810aef6bb6bf0c3fa16ad2db84d5e5e940864518474119393454aadc40fdca84bdbba18d686face59ce1 |
22 |
+DIST annobin-10.67.tar.xz 850052 BLAKE2B d21e85243f729f352fb45e7bb9876507db7cee89bc345cf1b1ff09116d83080aab41a01a787a502bf110c09dc413307463ee58c5ea89bf5c6d976b15289f3c23 SHA512 dde856e327aeef376ab2dc67178fbd8e6a055904c8a24da5bc5d69fc52587bb0673c276ffe68ce6cd424c65d3a1653b8ae1e32a90504378fc9291f039160b413 |
23 |
|
24 |
diff --git a/dev-util/annobin/annobin-10.67.ebuild b/dev-util/annobin/annobin-10.67.ebuild |
25 |
new file mode 100644 |
26 |
index 000000000..763da0ecd |
27 |
--- /dev/null |
28 |
+++ b/dev-util/annobin/annobin-10.67.ebuild |
29 |
@@ -0,0 +1,88 @@ |
30 |
+# Copyright 2018-2022 Gentoo Authors |
31 |
+# Distributed under the terms of the GNU General Public License v2 |
32 |
+ |
33 |
+EAPI=8 |
34 |
+ |
35 |
+LLVM_MAX_SLOT=14 |
36 |
+ |
37 |
+inherit autotools llvm toolchain-funcs |
38 |
+ |
39 |
+DESCRIPTION="Binary annotation compiler plugin and tools" |
40 |
+HOMEPAGE="https://nickc.fedorapeople.org" |
41 |
+SRC_URI="https://nickc.fedorapeople.org/${P}.tar.xz" |
42 |
+ |
43 |
+KEYWORDS="~amd64" |
44 |
+LICENSE="GPL-3" |
45 |
+SLOT="0" |
46 |
+IUSE="clang doc llvm test" |
47 |
+ |
48 |
+RDEPEND=" |
49 |
+ app-arch/rpm |
50 |
+ dev-libs/elfutils |
51 |
+ sys-libs/binutils-libs |
52 |
+ |
53 |
+ clang? ( <sys-devel/clang-${LLVM_MAX_SLOT}:= ) |
54 |
+ !clang? ( llvm? ( <sys-devel/llvm-${LLVM_MAX_SLOT}:= ) ) |
55 |
+ llvm? ( |
56 |
+ || ( |
57 |
+ sys-devel/llvm:12 |
58 |
+ sys-devel/llvm:13 |
59 |
+ sys-devel/llvm:${LLVM_MAX_SLOT} |
60 |
+ ) |
61 |
+ ) |
62 |
+" |
63 |
+DEPEND="${RDEPEND}" |
64 |
+ |
65 |
+PATCHES=( |
66 |
+ "${FILESDIR}/${PN}-10.65-fix-bashism.patch" |
67 |
+ "${FILESDIR}/${PN}-10.58-demangle.h-path.patch" |
68 |
+) |
69 |
+REQUIRED_USE=" |
70 |
+ clang? ( llvm ) |
71 |
+" |
72 |
+RESTRICT="!test? ( test )" |
73 |
+ |
74 |
+pkg_pretend() { |
75 |
+ if [[ ${MERGE_TYPE} != binary ]]; then |
76 |
+ if ! tc-is-gcc ; then |
77 |
+ eerror "${PN} is a gcc plugin. Please emerge using gcc as CC" |
78 |
+ die "use gcc" |
79 |
+ fi |
80 |
+ fi |
81 |
+} |
82 |
+ |
83 |
+src_prepare() { |
84 |
+ default |
85 |
+ sed -i 's|2.69|2.71|g' config/override.m4 || die |
86 |
+ |
87 |
+ if use llvm; then |
88 |
+ local llvmdir="$(get_llvm_prefix -d)" || die |
89 |
+ local llvm_plugindir |
90 |
+ llvm_plugindir="$( |
91 |
+ clang --print-search-dirs | gawk -e\ |
92 |
+ 'BEGIN { FS = ":" } /libraries/ { print gensub(" =","",1,$2) } END { }' |
93 |
+ )" || die |
94 |
+ einfo $llvm_plugindir |
95 |
+ |
96 |
+ sed -i "/^INCDIR.*/ s|$| -I${llvmdir}/include|" {llvm,clang}-plugin/Makefile.in || die |
97 |
+ sed -i "/^CLANG_LIBS.*/ s|$| -L${llvmdir}/$(get_libdir)|" clang-plugin/Makefile.in || die |
98 |
+ sed -i "s|^PLUGIN_INSTALL_DIR =.*|PLUGIN_INSTALL_DIR = \$\{DESTDIR\}/$(realpath ${llvm_plugindir})|" {llvm,clang}-plugin/Makefile.in || die |
99 |
+ fi |
100 |
+ |
101 |
+ eautoreconf |
102 |
+} |
103 |
+ |
104 |
+src_configure() { |
105 |
+ local plugdir="$($(tc-getCC) -print-file-name=plugin)" || die |
106 |
+ local myconf=( |
107 |
+ --with-gcc-plugin-dir="${plugdir}" |
108 |
+ --with-libelf |
109 |
+ --without-debuginfod # we don't have it enabled, comes with elfutils |
110 |
+ $(use_with clang) |
111 |
+ $(use_with doc docs) |
112 |
+ $(use_with llvm) |
113 |
+ $(use_with test tests) |
114 |
+ ) |
115 |
+ |
116 |
+ econf "${myconf[@]}" |
117 |
+} |