diff options
author | Mike Frysinger <vapier@gentoo.org> | 2013-10-08 22:46:27 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2013-10-08 22:46:27 +0000 |
commit | 006f3dac22fcff95824b16760261bd2182c80cac (patch) | |
tree | e178a6f6348ee88e1b371ff21d8861d9fb8c596c | |
parent | Backport commits tagged by upstream as bugfixes. (diff) | |
download | historical-006f3dac22fcff95824b16760261bd2182c80cac.tar.gz historical-006f3dac22fcff95824b16760261bd2182c80cac.tar.bz2 historical-006f3dac22fcff95824b16760261bd2182c80cac.zip |
Fix call to linux-info pkg_setup. Update SRC_URI paths to handle v3.x upstream. Fix bash-completion install path. Simplify/fix doc building. Add arm lovin. Handle USE="audit libunwind" #485110 by Richard Yao.
Package-Manager: portage-2.2.0/cvs/Linux x86_64
Manifest-Sign-Key: 0xFB7C4156
-rw-r--r-- | dev-util/perf/ChangeLog | 10 | ||||
-rw-r--r-- | dev-util/perf/Manifest | 25 | ||||
-rw-r--r-- | dev-util/perf/metadata.xml | 6 | ||||
-rw-r--r-- | dev-util/perf/perf-3.8-r1.ebuild | 168 |
4 files changed, 206 insertions, 3 deletions
diff --git a/dev-util/perf/ChangeLog b/dev-util/perf/ChangeLog index eaedd667e9a8..f9ec0fb4a773 100644 --- a/dev-util/perf/ChangeLog +++ b/dev-util/perf/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for dev-util/perf # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/perf/ChangeLog,v 1.22 2013/03/21 05:38:48 patrick Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-util/perf/ChangeLog,v 1.23 2013/10/08 22:46:22 vapier Exp $ + +*perf-3.8-r1 (08 Oct 2013) + + 08 Oct 2013; Mike Frysinger <vapier@gentoo.org> +perf-3.8-r1.ebuild, + metadata.xml: + Fix call to linux-info pkg_setup. Update SRC_URI paths to handle v3.x + upstream. Fix bash-completion install path. Simplify/fix doc building. Add + arm lovin. Handle USE="audit libunwind" #485110 by Richard Yao. 21 Mar 2013; Patrick Lauer <patrick@gentoo.org> perf-3.8.ebuild: Avoiding parallel make failure #461710 diff --git a/dev-util/perf/Manifest b/dev-util/perf/Manifest index b207b60fef7a..49d3dbb97f47 100644 --- a/dev-util/perf/Manifest +++ b/dev-util/perf/Manifest @@ -1,8 +1,29 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + DIST linux-3.2.tar.bz2 78147838 SHA256 c881fc2b53cf0da7ca4538aa44623a7de043a41f76fd5d0f51a31f6ed699d463 SHA512 1f57b98e8da34b10f37ce94e0f13a994c111d483b104c27a8f58a4a55013a73a9f1ffcebb597be63ce0dfadb92201e93b0e072ba49bac0033026aceb0840c812 WHIRLPOOL 3dc893bde09f064e4614183964a4b9feaab938ca7a739f46f825818a577884eae815f195b52a4c55c571345de59d7ba09631fb68dac481a0837b24868ce60e3d DIST linux-3.4.tar.bz2 80173484 SHA256 a797a15d0b6228381507c14ecf4eec4a6cc5c77cfd521ba3b3e1325e85b5b16d SHA512 597002fa82b70b5052f9e05c1d8547bc5f89d8e1aecfd1765f4033f6d2c5c02d51b6372dbeef12c2eb070ae318a04c39925050cb37a39399961c8b263479fca1 WHIRLPOOL 57e6dd7094db2bc41175d7bb551e8237ea96eacf3710a734e8413915c54304e84ca11455e41c7752882ce81048459555d44d1798bf0775b79c3d74b13aa3a9f2 DIST linux-3.8.tar.bz2 84623657 SHA256 fce774b5313e73949cb35f128e91e7b2ccd7fa2438abc5cff69267e504395a45 SHA512 966a3b08aecc4b135a48ea73ba3326e1710c455e6da29693479e9d1a56663fc10f569e2342fa861486d39d4ea5c2af406d1bd40613c15555acffdba160ef7ba9 WHIRLPOOL a83baa904c78f71fed5e4cf2607b8e6d1db70a4137b5c00b3cc5f60f04042724faa3cfec36a781417d483548ba0c811f559e82146806edacd1c2fe90bd398e64 EBUILD perf-3.2.ebuild 4228 SHA256 6763a106b3c42da98659903996942a73073bcdbea725c1b0c0d2eb6ce873662e SHA512 2e3ce7a1dae8933b360a58adcb8ff7f5e657729c0ffbe6345e296163e9c63738715851786a8469eb8ee14f8bc7d29d8ecd7b679e730a541942b23d503cdb3872 WHIRLPOOL 263b89d4fba11dffb50227be605a58c4d7d97912050949247a9bc85c6ae2b24250acad27ace23ee8ace8495ed49c423f9aa5811471b3bdc061250b3158198724 EBUILD perf-3.4.ebuild 4306 SHA256 24e6468c5e72612bf5348a1226ef49f751369b80ffe4203d36ce9118a900aebf SHA512 4f87cf6a0627983c946c76c4e3f9c099fbb1618fa96905cfdd4b4cf7b01f06815c52d70016d98ce58e375320e6921f429638eaf2a76b32b85fc1a848525341f6 WHIRLPOOL 190a9abe22b1b3065785522c24b0183fdbf7be46b58eb8d12b6a35233a88853be4adf38be064856d508de75b22c3e63909e747dd12ded0a93414f62f9446bb8f +EBUILD perf-3.8-r1.ebuild 4583 SHA256 d161d6b9c9e7f2cf92fcbcef17509102f0891281f3b1f59e95f9ddedb4873653 SHA512 0e8b4f8ef4137bbcd8e15b4c1a1983b2128daaadc6d6fea66b9b142e98b430a5b1d1bacb4d7c55e4ddafe7a968152a2e922821dff6fdd8389e593fb1b026f1cb WHIRLPOOL 42b47a6d69e48213ecca72c4e65ba546620ef8e4769d0d6209c5c46f0deab4f84a16b723593e01aa1e71add9356a9e57e084c178e2d1c3ac4d1269641129ce55 EBUILD perf-3.8.ebuild 4336 SHA256 84dcb391f30c04d33c18e1e49b6ac4de143278f8510ce2d4eecd8ff41b81657b SHA512 114336b6abdeafba52cc79341e933f85066f3a78cf9b2a472d7ec593c67f06008449a50274cbbe38810fb24637dfd2e9d1bffd28b98ca0774f7a17a9245c8cc2 WHIRLPOOL adcb9a364e137fa7471e2b2aff7a4b01f5c82792536912403ff5309c6d922910abe8abb7957ea4ca634fd5c4b210e5409bc213eef3604d681709df829cf1c4d7 -MISC ChangeLog 4285 SHA256 cd936bbad84c6ac1fdbe33b50cd59c87cd13e971e4ca0e5379f87b50fa95fc0e SHA512 e183c34408eb7864673e410888d0ba52cb847ee588df61fa423b411259ec5d2967e2e1521dc449fba73f052498a288b0d7783418a9da305e6cb87e752c437c8e WHIRLPOOL 733ea812ce94bb0285910cde577e84b7ebfb6e2a6165a6229073621366ce86fc5348cb0d5ead21901a141688ae448b238dca928760ba66f9f5d4a84f7ba15ff1 -MISC metadata.xml 891 SHA256 69d162e1557448101186ac1de9fc2b6c9aebbe1571cf859016fe9513cd943d07 SHA512 a883c8ab5a15b618bdc91541662f025e16420ff8668e17f45d23edefd5dc00ba2880a28ac8c8328073bcadd5e4a86c04133e4be2f55afcd7520f78af70bedf5c WHIRLPOOL fd0b88fc3d76d80ab1ca15966d536cccdf6cd218b310a07fc83fbd5fdfe53ca8d7be90adfd9be30f9ae8409605d4d876faf2c58357a998c80a9ccb0aab80ad57 +MISC ChangeLog 4620 SHA256 45cebc9d5f513f3203128ae83d1ae5d7d20630e2b1d8cfa531faa3ce8b35b0cd SHA512 32ba45bbce7ecf3923b03d75efcc51509f75072ec52cb9fda645b4afac8f175b1a521b8b91aee13c33d64a923ee2cba77a379c38903f6a9d8a8fdbb0aaf57a78 WHIRLPOOL fc8b8d4c31a9630a707770de94d0622bd89a63023b08ddc1cf3cb06d07f810a2576b06eb4faf8d48faaec65e96b9ca29eb75160031d255a8c0ce761e7a18cec7 +MISC metadata.xml 1066 SHA256 660d44c0b3f410b9abe1700887b2f48508a41a236e970aa76a9af106a2272198 SHA512 15aea4d35a8c4578f2ec57a7f23985e995d82fb1bc2a03dd6f5c11a20dedea48c270a9da8eb7a8a1374cff10f5c004a72370a434de03d31ec6b57a451a7e3022 WHIRLPOOL 95f5d6d9d281ade60dc63665c8baf84836372603922c552e7f96f74e3e8ba137aa86f86ff43df6ecd2473d0ab03eb4415de3c7b77308ca98f03f614038956cb8 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.20 (GNU/Linux) + +iQIcBAEBCAAGBQJSVItEAAoJELEHsLL7fEFW9OcQAJDjEp3pu2MRG5yyeYKuj8l+ +AiZLoJcwGXODdhCsLfHdzyIYOC2ZQooDVxlAB6KO05fJZVkjwpzp7WQxVnUQvMuB +eXxCXAFbY4f8fL0mkfXUtQgoQhZgOgb1mUEl0hUZ/fN22jjpUNMggwW6jiCr+JAi ++Lwl7kcGZVvik9j18XhlPD8na6qDZpKezRRNNH0ewltoKGm2FqR5ryPlNhK5d0+7 +4e2ReoRoNEoQupbLA1+uE81dV9W4V14wapLX3+oM6OcQGWUNb34xMiRU+m5muS5m +xSxblYr0gICWxmerhVnCxccqTDLx+BgEDRd+M55cNXwneqULNbKAjgI/KXm5nCoM +FhsGIdysGIS3baXngw/a9HgCbfo0ow8J1uFTTyxXvV9eUznlkogABYu0dbG6qmBp +2orbEVnUV3RmC4phXobng/hhEx9JzTN/OWTl6jWtaxGXJKnX5xmoj7MqNxvF1BFf +CGAtzaCLw2HhxsxBzAGkVNfCTetEtBcCN48/t+u/OcLXtER2F9dzukKG2Vy6SNte +xDmsNKoC79QMVneKnMPvy0OJxFuot1xW8RO+wgMczJkzwwP9k2SPNuSYiGx1acX9 +lgLnFLv4hlSRVStSFvOwpQ4ecdHPAanhYpFZR/N6DARBPk4JV+f2BEVeBKThSsmj +30CkB8hyF5zv3QwMCB4t +=9L2A +-----END PGP SIGNATURE----- diff --git a/dev-util/perf/metadata.xml b/dev-util/perf/metadata.xml index 750711297697..b4aba5127c82 100644 --- a/dev-util/perf/metadata.xml +++ b/dev-util/perf/metadata.xml @@ -5,6 +5,9 @@ <email>naota@gentoo.org</email> </maintainer> <use> + <flag name="audit"> + Enable support for sys-process/audit. + </flag> <flag name="demangle"> Enable C++ symbol name demangling, using libbfd from <pkg>sys-devel/binutils</pkg>. When this flag is enabled, the @@ -21,5 +24,8 @@ <flag name="perl"> Add support for Perl as a scripting language for perf tools. </flag> + <flag name="unwind"> + Use sys-libs/libunwind for frame unwinding support. + </flag> </use> </pkgmetadata> diff --git a/dev-util/perf/perf-3.8-r1.ebuild b/dev-util/perf/perf-3.8-r1.ebuild new file mode 100644 index 000000000000..7909675595cb --- /dev/null +++ b/dev-util/perf/perf-3.8-r1.ebuild @@ -0,0 +1,168 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/perf/perf-3.8-r1.ebuild,v 1.1 2013/10/08 22:46:22 vapier Exp $ + +EAPI="4" + +PYTHON_DEPEND="python? 2" +inherit versionator eutils toolchain-funcs python linux-info + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-pre/-git}" + +DESCRIPTION="Userland tools for Linux Performance Counters" +HOMEPAGE="http://perf.wiki.kernel.org/" + +LINUX_V="${PV:0:1}.x" +if [[ ${PV/_rc} != ${PV} ]] ; then + LINUX_VER=$(get_version_component_range 1-2).$(($(get_version_component_range 3)-1)) + PATCH_VERSION=$(get_version_component_range 1-3) + LINUX_PATCH=patch-${PV//_/-}.bz2 + SRC_URI="mirror://kernel/linux/kernel/v${LINUX_V}/testing/${LINUX_PATCH} + mirror://kernel/linux/kernel/v${LINUX_V}/testing/v${PATCH_VERSION}/${LINUX_PATCH}" +elif [[ $(get_version_component_count) == 4 ]] ; then + # stable-release series + LINUX_VER=$(get_version_component_range 1-3) + LINUX_PATCH=patch-${PV}.bz2 + SRC_URI="mirror://kernel/linux/kernel/v${LINUX_V}/${LINUX_PATCH}" +else + LINUX_VER=${PV} + SRC_URI="" +fi + +LINUX_SOURCES="linux-${LINUX_VER}.tar.bz2" +SRC_URI+=" mirror://kernel/linux/kernel/v${LINUX_V}/${LINUX_SOURCES}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~x86" +IUSE="audit +demangle +doc perl python slang unwind" + +RDEPEND="audit? ( sys-process/audit ) + demangle? ( sys-devel/binutils ) + perl? ( || ( >=dev-lang/perl-5.10 sys-devel/libperl ) ) + slang? ( dev-libs/newt ) + unwind? ( sys-libs/libunwind ) + dev-libs/elfutils" +DEPEND="${RDEPEND} + ${LINUX_PATCH+dev-util/patchutils} + sys-devel/bison + sys-devel/flex + doc? ( + app-text/asciidoc + app-text/sgml-common + app-text/xmlto + sys-process/time + )" + +S_K="${WORKDIR}/linux-${LINUX_VER}" +S="${S_K}/tools/perf" + +CONFIG_CHECK="~PERF_EVENTS ~KALLSYMS" + +pkg_setup() { + linux-info_pkg_setup + use python && python_set_active_version 2 +} + +src_unpack() { + local paths=( tools/perf tools/scripts tools/lib include lib "arch/*/include" "arch/*/lib" ) + + # We expect the tar implementation to support the -j option (both + # GNU tar and libarchive's tar support that). + echo ">>> Unpacking ${LINUX_SOURCES} (${paths[*]}) to ${PWD}" + tar --wildcards -xpf "${DISTDIR}"/${LINUX_SOURCES} \ + "${paths[@]/#/linux-${LINUX_VER}/}" || die + + if [[ -n ${LINUX_PATCH} ]] ; then + eshopts_push -o noglob + ebegin "Filtering partial source patch" + filterdiff -p1 ${paths[@]/#/-i } -z "${DISTDIR}"/${LINUX_PATCH} > ${P}.patch || die + eend $? || die "filterdiff failed" + eshopts_pop + fi + + local a + for a in ${A}; do + [[ ${a} == ${LINUX_SOURCES} ]] && continue + [[ ${a} == ${LINUX_PATCH} ]] && continue + unpack ${a} + done +} + +src_prepare() { + if [[ -n ${LINUX_PATCH} ]] ; then + cd "${S_K}" + epatch "${WORKDIR}"/${P}.patch + fi + + # Drop some upstream too-developer-oriented flags and fix the + # Makefile in general + sed -i \ + -e 's:-Werror::' \ + -e 's:-ggdb3::' \ + -e 's:-fstack-protector-all::' \ + -e 's:^LDFLAGS =:EXTLIBS +=:' \ + -e '/\(PERL\|PYTHON\)_EMBED_LDOPTS/s:ALL_LDFLAGS +=:EXTLIBS +=:' \ + -e '/-x c - /s:\$(ALL_LDFLAGS):\0 $(EXTLIBS):' \ + -e '/^ALL_CFLAGS =/s:$: $(CFLAGS_OPTIMIZE):' \ + -e '/^ALL_LDFLAGS =/s:$: $(LDFLAGS_OPTIMIZE):' \ + -e 's:$(sysconfdir_SQ)/bash_completion.d:/usr/share/bash-completion:' \ + "${S}"/Makefile + sed -i \ + -e '/.FORCE-PERF-VERSION-FILE/s,.FORCE-PERF-VERSION-FILE,,g' \ + "${S}"/Makefile \ + "${S}"/Documentation/Makefile + + # Avoid the call to make kernelversion + echo "PERF_VERSION = ${MY_PV}" > PERF-VERSION-FILE + + # The code likes to compile local assembly files which lack ELF markings. + find -name '*.S' -exec sed -i '$a.section .note.GNU-stack,"",%progbits' {} + +} + +puse() { usex $1 "" no; } +perf_make() { + emake -j1 V=1 \ + CC="$(tc-getCC)" AR="$(tc-getAR)" \ + prefix="/usr" bindir_relative="sbin" \ + CFLAGS_OPTIMIZE="${CFLAGS}" \ + LDFLAGS_OPTIMIZE="${LDFLAGS}" \ + ARCH="$(tc-arch-kernel)" \ + NO_DEMANGLE=$(puse demangle) \ + NO_LIBAUDIT=$(puse audit) \ + NO_LIBPERL=$(puse perl) \ + NO_LIBPYTHON=$(puse python) \ + NO_LIBUNWIND=$(puse unwind) \ + NO_NEWT=$(puse slang) \ + "$@" +} + +src_compile() { + perf_make + use doc && perf_make -C Documentation +} + +src_test() { + : +} + +src_install() { + perf_make install DESTDIR="${D}" + + dodoc CREDITS + + dodoc *txt Documentation/*.txt + if use doc ; then + dohtml Documentation/*.html + doman Documentation/*.1 + fi +} + +pkg_postinst() { + if ! use doc ; then + elog "Without the doc USE flag you won't get any documentation nor man pages." + elog "And without man pages, you won't get any --help output for perf and its" + elog "sub-tools." + fi +} |