diff options
author | root <root@rshg054.dnsready.net> | 2011-12-01 23:14:46 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2011-12-01 23:14:46 +0000 |
commit | 9e9ab642711f2424f828e21d14b98c45cdef2b29 (patch) | |
tree | 5c1495cfda2b453e377084bad1b20e431e119063 /community/linux-tools | |
parent | bc0657f7159d0b01373ecb59afc426b98a172b1e (diff) |
Thu Dec 1 23:14:46 UTC 2011
Diffstat (limited to 'community/linux-tools')
-rw-r--r-- | community/linux-tools/PKGBUILD | 64 | ||||
-rw-r--r-- | community/linux-tools/cpupower.conf | 14 | ||||
-rw-r--r-- | community/linux-tools/cpupower.rc | 31 |
3 files changed, 109 insertions, 0 deletions
diff --git a/community/linux-tools/PKGBUILD b/community/linux-tools/PKGBUILD new file mode 100644 index 000000000..34165dbe9 --- /dev/null +++ b/community/linux-tools/PKGBUILD @@ -0,0 +1,64 @@ +# $Id: PKGBUILD 59838 2011-12-01 00:13:46Z seblu $ +# Maintainer: Sebastien Luttringer <seblu+arch@seblu.net> + +pkgbase=linux-tools +pkgname=('perf' 'cpupower') +pkgver=3.1.4 +pkgrel=1 +license=('GPL2') +arch=('i686' 'x86_64') +url='http://www.kernel.org' +options=('!strip') +makedepends=('asciidoc' 'xmlto') +# split packages need all package dependencies set manually in makedepends +makedepends+=('python2' 'libnewt' 'elfutils' 'pciutils') +source=("http://ftp.kernel.org/pub/linux/kernel/v3.0/linux-$pkgver.tar.xz" + 'cpupower.rc' + 'cpupower.conf') +md5sums=('e48e246675a3e790062d4fecf36cd6e3' + 'd8b119eff7dc1a2d655eb71a47fa6215' + '218fd36a7957d3170ed8bd1a0be1f62f') + +build() { + msg2 'Build perf' + cd linux-$pkgver/tools/perf + make PYTHON=python2 DESTDIR="${pkgdir}/usr" perfexecdir="lib/$pkgname" PERF_VERSION=$pkgver \ + all man + + msg2 'Build cpupower' + # we cannot use --as-needed + LDFLAGS=${LDFLAGS:+"$LDFLAGS,--no-as-needed"} + cd "$srcdir/linux-$pkgver/tools/power/cpupower" + make +} + +package_perf() { + pkgdesc='Linux kernel perf tool' + depends=('python2' 'libnewt' 'elfutils') + + cd linux-${pkgver}/tools/perf + make PYTHON=python2 DESTDIR="${pkgdir}/usr" perfexecdir="lib/$pkgname" PERF_VERSION=$pkgver \ + install install-man +} + +package_cpupower() { + pkgdesc='Linux kernel power tool' + backup=('etc/conf.d/cpupower') + depends=('pciutils') + conflicts=('cpufrequtils') + provides=("cpufrequtils=$pkgver") + + cd linux-$pkgver/tools/power/cpupower + make \ + DESTDIR="$pkgdir" \ + INSTALL='/bin/install -c' \ + mandir='/usr/share/man' \ + docdir='/usr/share/doc/cpupower' \ + install install-man + + # install rc.d script + install -D -m 755 "$srcdir/cpupower.rc" "$pkgdir/etc/rc.d/cpupower" + install -D -m 644 "$srcdir/cpupower.conf" "$pkgdir/etc/conf.d/cpupower" +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/community/linux-tools/cpupower.conf b/community/linux-tools/cpupower.conf new file mode 100644 index 000000000..0f56836b1 --- /dev/null +++ b/community/linux-tools/cpupower.conf @@ -0,0 +1,14 @@ +# valid governors: +# ondemand, performance, powersave, +# conservative, userspace +#governor="ondemand" + +# limit frequency range (optional) +# valid suffixes: Hz, kHz (default), MHz, GHz, THz +#min_freq="2.25GHz" +#max_freq="3GHz" + +# use freq to set up the exact cpu frequency using it with userspace governor +#freq= + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/community/linux-tools/cpupower.rc b/community/linux-tools/cpupower.rc new file mode 100644 index 000000000..812637b61 --- /dev/null +++ b/community/linux-tools/cpupower.rc @@ -0,0 +1,31 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +[[ -f /etc/conf.d/cpupower ]] && . /etc/conf.d/cpupower + +case "$1" in + start|restart) + stat_busy "Setting cpupower rules" + + declare params='' + if [[ "$governor" ]]; then + params="-g $governor " + params+="${min_freq:+-d $min_freq} " + params+="${max_freq:+-u $max_freq} " + params+="${freq:+-f $freq} " + cpupower frequency-set $params >/dev/null || { stat_fail; exit 1; } + stat_done + else + stat_append ': Invalid configuration' + stat_fail + fi + ;; + *) + echo "usage: $0 {start|restart}" +esac + +true + +# vim:set ts=2 sw=2 ft=sh et: |