Gentoo Archives: gentoo-commits

From: Andrew Savchenko <bircoph@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/oprofile/
Date: Sun, 30 Aug 2020 13:05:24
Message-Id: 1598792704.d9f840af70f1d562cb326d3829861c1be64aa761.bircoph@gentoo
1 commit: d9f840af70f1d562cb326d3829861c1be64aa761
2 Author: Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
3 AuthorDate: Sun Aug 30 13:01:42 2020 +0000
4 Commit: Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
5 CommitDate: Sun Aug 30 13:05:04 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d9f840af
7
8 dev-util/oprofile: version bump
9
10 - Update to 1.4.0
11 - Migrate to GLEP 81
12 - Add support for doxygen docs build via USE=apidoc
13 - Remove bash-specific operators from configure
14 - Add USE="static-libs" to control *.a and *.la installation
15
16 Closes: https://bugs.gentoo.org/730716
17 Closes: https://bugs.gentoo.org/723092
18 Package-Manager: Portage-3.0.3, Repoman-3.0.0
19 Signed-off-by: Andrew Savchenko <bircoph <AT> gentoo.org>
20
21 dev-util/oprofile/Manifest | 1 +
22 dev-util/oprofile/metadata.xml | 3 ++
23 dev-util/oprofile/oprofile-1.4.0.ebuild | 87 +++++++++++++++++++++++++++++++++
24 3 files changed, 91 insertions(+)
25
26 diff --git a/dev-util/oprofile/Manifest b/dev-util/oprofile/Manifest
27 index 7a50e041dc7..7fab711d237 100644
28 --- a/dev-util/oprofile/Manifest
29 +++ b/dev-util/oprofile/Manifest
30 @@ -1 +1,2 @@
31 DIST oprofile-1.3.0.tar.gz 1547258 BLAKE2B d8777e41856dc2f082570a1542609bd730fd7076000443f2e17c77eaf75df7a7a772ebb49d82ee657f563797858cecb4c23b130b0174d154c54d5619b8528ad1 SHA512 02a940cd8d38834dca2a97c8ac0fff04ef95b3819cfdf74a462b9326c7abbf2dc55d2a9b9d1fbefc7f455465bf85516be2b879d7daf1861ba2c4af51214377ba
32 +DIST oprofile-1.4.0.tar.gz 1557625 BLAKE2B fe1a725b713da0e06d3876c52f001163965c1b0dd8ccbb271ef6924525ac6ca342d55172c06cc21681b441c744780d5cb523be08562952c5916005ec67734221 SHA512 44c0ae55d20d623ea8b4245bfe3e208813dbb8778d7e320378ffe70538ef6af1a6ddaf5d110e29751c216879543f13121dd71cb320023205622b3f0cd6b157df
33
34 diff --git a/dev-util/oprofile/metadata.xml b/dev-util/oprofile/metadata.xml
35 index 2a35c6646c1..99119adc69c 100644
36 --- a/dev-util/oprofile/metadata.xml
37 +++ b/dev-util/oprofile/metadata.xml
38 @@ -6,6 +6,9 @@
39 <name>Andrew Savchenko</name>
40 </maintainer>
41 <longdescription>A transparent low-overhead system-wide profiler</longdescription>
42 + <use>
43 + <flag name="apidoc">Provide doxygen generated API docs.</flag>
44 + </use>
45 <upstream>
46 <remote-id type="sourceforge">oprofile</remote-id>
47 </upstream>
48
49 diff --git a/dev-util/oprofile/oprofile-1.4.0.ebuild b/dev-util/oprofile/oprofile-1.4.0.ebuild
50 new file mode 100644
51 index 00000000000..e881632d5f3
52 --- /dev/null
53 +++ b/dev-util/oprofile/oprofile-1.4.0.ebuild
54 @@ -0,0 +1,87 @@
55 +# Copyright 1999-2020 Gentoo Authors
56 +# Distributed under the terms of the GNU General Public License v2
57 +
58 +EAPI=7
59 +inherit autotools java-pkg-opt-2 linux-info
60 +
61 +DESCRIPTION="A transparent low-overhead system-wide profiler"
62 +HOMEPAGE="http://oprofile.sourceforge.net"
63 +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
64 +
65 +LICENSE="GPL-2"
66 +SLOT="0"
67 +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
68 +IUSE="apidoc java pch static-libs"
69 +
70 +BDEPEND="
71 + apidoc? ( app-doc/doxygen[dot] )
72 + java? ( >=virtual/jdk-1.5:= )
73 +"
74 +CDEPEND="
75 + >=dev-libs/popt-1.7-r1
76 + sys-libs/binutils-libs:=
77 + >=sys-libs/glibc-2.3.2-r1
78 + ppc64? ( dev-libs/libpfm )
79 +"
80 +DEPEND="${CDEPEND}
81 + >=sys-kernel/linux-headers-2.6.31
82 +"
83 +RDEPEND="${CDEPEND}
84 + acct-user/oprofile
85 + acct-group/oprofile
86 +"
87 +
88 +CONFIG_CHECK="PERF_EVENTS"
89 +ERROR_PERF_EVENTS="CONFIG_PERF_EVENTS is mandatory for ${PN} to work."
90 +
91 +pkg_setup() {
92 + linux-info_pkg_setup
93 + if ! kernel_is -ge 2 6 31; then
94 + echo
95 + ewarn "Support for kernels before 2.6.31 has been dropped in ${PN}-1.0.0."
96 + echo
97 + fi
98 +
99 + use java && java-pkg_init
100 +}
101 +
102 +src_prepare() {
103 + # bug 723092
104 + sed -i 's/==/=/g' configure.ac || die
105 +
106 + java-pkg-opt-2_src_prepare
107 + eautoreconf
108 +}
109 +
110 +src_configure() {
111 + local jh=""
112 + use java && jh="$(java-config -O)"
113 + econf \
114 + --disable-werror \
115 + $(use_enable pch) \
116 + $(use_with java java "${jh}")
117 +}
118 +
119 +src_compile() {
120 + default
121 + use apidoc && emake -C doc/srcdoc
122 +}
123 +
124 +src_install() {
125 + emake DESTDIR="${D}" htmldir="/usr/share/doc/${PF}" install
126 + use static-libs || rm "${ED}"/usr/$(get_libdir)/${PN}/*.{a,la}
127 + use apidoc && dodoc -r doc/srcdoc/html
128 +
129 + dodoc ChangeLog* README TODO
130 + echo "LDPATH=${PREFIX}/usr/$(get_libdir)/${PN}" > "${T}/10${PN}" || die
131 + doenvd "${T}/10${PN}"
132 +}
133 +
134 +pkg_postinst() {
135 + echo
136 + elog "Starting from ${PN}-1.0.0 opcontrol was removed, use operf instead."
137 + elog "CONFIG_OPROFILE is no longer used, you may remove it from your kernels."
138 + elog "Please read manpages and this html doc:"
139 + elog " /usr/share/doc/${PF}/${PN}.html"
140 + echo
141 +}