# $Id: PKGBUILD 104447 2014-01-21 01:10:56Z seblu $ # Maintainer: Sébastien Luttringer # Maintainer (Parabola): André Silva pkgbase=linux-libre-tools pkgname=( 'acpidump-libre' 'cgroup_event_listener-libre' 'cpupower-libre' 'libtraceevent-libre' 'linux-libre-tools-meta' 'perf-libre' 'tmon-libre' 'usbip-libre' 'x86_energy_perf_policy-libre' ) _basekernel=3.13 #_sublevel=3 #_pkgver=$_basekernel.$_sublevel pkgver=$_basekernel pkgrel=1 license=('GPL2') arch=('i686' 'x86_64' 'mips64el') url='http://linux-libre.fsfla.org/' options=('!strip') # split packages need all package dependencies set manually in makedepends # kernel source deps makedepends=('asciidoc' 'xmlto') # perf-libre deps makedepends+=('perl' 'python2' 'libnewt' 'elfutils' 'audit' 'libunwind' 'numactl') # cpupower-libre deps makedepends+=('pciutils') # usbip-libre deps makedepends+=('glib2' 'sysfsutils') # tmon-libre deps makedepends+=('ncurses') groups=("$pkgbase") source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/$_basekernel-gnu/linux-libre-$_basekernel-gnu.tar.xz" #"http://linux-libre.fsfla.org/pub/linux-libre/releases/$_pkgver-gnu/patch-$_basekernel-gnu-$_pkgver-gnu.xz" 'cpupower.default' 'cpupower.systemd' 'cpupower.service' 'usbipd.service' '01-fix-perf-python.patch') sha256sums=('6e68eef826b17ae9d7df01ac13e46ef5d978670071d1b05aed775bdbff8fed96' #'561644a6a5d4c434dcd1f1e1dc48c4d8924bfa0407f697b66b7e6de02451acbb' '4fa509949d6863d001075fa3e8671eff2599c046d20c98bb4a70778595cd1c3f' 'fbf6e0ce6eb0ef15703fe212958de6ca46e62188900b5e9f9272ed3cc9cfd54e' 'a89284d0ecb556ca53a66d1c2087b5fd6d0a901ab2769cd3aebb93f4478905dc' '2e187734d8aec58a3046d79883510d779aa93fb3ab20bd3132c1a607ebe5498f' 'fce128f5e0abfa6916d5cb881456d892d1b163b9639166a4c6c1d53e4dc5086a') prepare() { # apply stable patching set if (( NOEXTRACT == 0 )) && [[ -e "$srcdir"/patch-$_basekernel-gnu-$_pkgver-gnu ]]; then msg2 'Applying stable patch set' cd linux-$pkgver patch -Np1 -i "$srcdir"/patch-$_basekernel-gnu-$_pkgver-gnu cd .. fi } build() { msg2 'libtraceevent-libre' pushd linux-$pkgver/tools/lib/traceevent make popd msg2 'perf-libre' pushd linux-$pkgver/tools/perf make \ WERROR=0 \ DESTDIR="$pkgdir/usr" \ perfexecdir='lib/perf' \ PYTHON=python2 \ PYTHON_CONFIG=python2-config \ NO_GTK2=1 \ PERF_VERSION=$pkgver-$pkgrel \ all man popd msg2 'cpupower-libre' pushd linux-$pkgver/tools/power/cpupower # we cannot use --as-needed #LDFLAGS=${LDFLAGS:+"$LDFLAGS,--no-as-needed"} make VERSION=$pkgver-$pkgrel popd msg2 'x86_energy_perf_policy-libre' pushd linux-$pkgver/tools/power/x86/x86_energy_perf_policy make popd msg2 'usbip-libre' pushd linux-$pkgver/drivers/staging/usbip/userspace # fix missing man page sed -i 's/usbip_bind_driver.8//' Makefile.am ./autogen.sh ./configure --prefix=/usr --sbindir=/usr/bin make popd msg2 'tmon-libre' pushd linux-$pkgver/tools/thermal/tmon make popd msg2 'acpidump-libre' pushd linux-$pkgver/tools/power/acpi make popd msg2 'cgroup_event_listener-libre' pushd linux-$pkgver/tools/cgroup make popd } package_linux-libre-tools-meta() { pkgdesc='Linux kernel tools meta package' groups=() depends=( 'acpidump-libre' 'cgroup_event_listener-libre' 'cpupower-libre' 'libtraceevent-libre' 'linux-libre-tools-meta' 'perf-libre' 'tmon-libre' 'usbip-libre' 'x86_energy_perf_policy-libre' ) replaces=('linux-tools-meta') conflicts=('linux-tools-meta') provides=("linux-tools-meta=$pkgver") } package_libtraceevent-libre() { pkgdesc='Linux kernel trace event library' depends=('glibc') replaces=('libtraceevent') conflicts=('libtraceevent') provides=("libtraceevent=$pkgver") cd linux-$pkgver/tools/lib/traceevent install -dm 755 "$pkgdir/usr/lib" install -m 644 libtraceevent.a libtraceevent.so "$pkgdir/usr/lib" } package_perf-libre() { pkgdesc='Linux kernel performance auditing tool' depends=('perl' 'python2' 'libnewt' 'elfutils' 'audit' 'libunwind' 'binutils' 'numactl') replaces=('perf') conflicts=('perf') provides=("perf=$pkgver") cd linux-$pkgver/tools/perf make \ WERROR=0 \ DESTDIR="$pkgdir/usr" \ perfexecdir='lib/perf' \ PYTHON=python2 \ PYTHON_CONFIG=python2-config \ NO_GTK2=1 \ PERF_VERSION=$pkgver-$pkgrel \ install install-man # move completion in new directory cd "$pkgdir" install -Dm644 usr/etc/bash_completion.d/perf usr/share/bash-completion/perf rm -r usr/etc } package_cpupower-libre() { pkgdesc='Linux kernel tool to examine and tune power saving related features of your processor' backup=('etc/default/cpupower') depends=('bash' 'pciutils') replaces=('cpupower' 'cpufrequtils') conflicts=('cpupower' 'cpufrequtils') provides=("cpupower=$pkgver") install=cpupower.install pushd linux-$pkgver/tools/power/cpupower make \ DESTDIR="$pkgdir" \ sbindir='/usr/bin' \ mandir='/usr/share/man' \ docdir='/usr/share/doc/cpupower' \ install install-man popd # install startup scripts install -Dm 644 cpupower.default "$pkgdir/etc/default/cpupower" install -Dm 644 cpupower.service "$pkgdir/usr/lib/systemd/system/cpupower.service" install -Dm 755 cpupower.systemd "$pkgdir/usr/lib/systemd/scripts/cpupower" } package_x86_energy_perf_policy-libre() { pkgdesc='Read or write MSR_IA32_ENERGY_PERF_BIAS' depends=('glibc') replaces=('x86_energy_perf_policy') conflicts=('x86_energy_perf_policy') provides=("x86_energy_perf_policy=$pkgver") cd linux-$pkgver/tools/power/x86/x86_energy_perf_policy install -Dm 755 x86_energy_perf_policy "$pkgdir/usr/bin/x86_energy_perf_policy" install -Dm 644 x86_energy_perf_policy.8 "$pkgdir/usr/share/man/man8/x86_energy_perf_policy.8" } package_usbip-libre() { pkgdesc='An USB device sharing system over IP network' depends=('glib2' 'sysfsutils') replaces=('usbip') conflicts=('usbip') provides=("usbip=$pkgver") pushd linux-$pkgver/drivers/staging/usbip/userspace make install DESTDIR="$pkgdir" popd # module loading install -Dm 644 /dev/null "$pkgdir/usr/lib/modules-load.d/$pkgname.conf" printf 'usbip-core\nusbip-host\n' > "$pkgdir/usr/lib/modules-load.d/$pkgname.conf" # systemd install -Dm 644 usbipd.service "$pkgdir/usr/lib/systemd/system/usbipd.service" } package_tmon-libre() { pkgdesc='Monitoring and Testing Tool for Linux kernel thermal subsystem' depends=('glibc' 'ncurses') replaces=('tmon') conflicts=('tmon') provides=("tmon=$pkgver") cd linux-$pkgver/tools/thermal/tmon make install INSTALL_ROOT="$pkgdir" } package_acpidump-libre() { pkgdesc='Dump system ACPI tables to an ASCII file' depends=('glibc') replaces=('acpidump') conflicts=('acpidump' 'iasl') provides=("acpidump=$pkgver") cd linux-$pkgver/tools/power/acpi install -Dm755 acpidump "$pkgdir/usr/bin/acpidump" install -Dm644 acpidump.8 "$pkgdir/usr/share/man/man8/acpidump.8" } package_cgroup_event_listener-libre() { pkgdesc='Simple listener of cgroup events' depends=('glibc') replaces=('cgroup_event_listener') conflicts=('cgroup_event_listener') provides=("cgroup_event_listener=$pkgver") cd linux-$pkgver/tools/cgroup install -Dm755 cgroup_event_listener "$pkgdir/usr/bin/cgroup_event_listener" } # vim:set ts=2 sw=2 et: