summaryrefslogtreecommitdiff
path: root/libre/linux-libre-tools
diff options
context:
space:
mode:
Diffstat (limited to 'libre/linux-libre-tools')
-rwxr-xr-x[-rw-r--r--]libre/linux-libre-tools/PKGBUILD119
-rwxr-xr-x[-rw-r--r--]libre/linux-libre-tools/cpupower.conf5
-rwxr-xr-x[-rw-r--r--]libre/linux-libre-tools/cpupower.rc33
-rwxr-xr-x[-rw-r--r--]libre/linux-libre-tools/cpupower.service2
-rwxr-xr-xlibre/linux-libre-tools/cpupower.systemd32
-rwxr-xr-xlibre/linux-libre-tools/usbipd.conf3
-rwxr-xr-xlibre/linux-libre-tools/usbipd.rc34
-rwxr-xr-xlibre/linux-libre-tools/usbipd.service8
8 files changed, 175 insertions, 61 deletions
diff --git a/libre/linux-libre-tools/PKGBUILD b/libre/linux-libre-tools/PKGBUILD
index b7dc50f94..d3154ac86 100644..100755
--- a/libre/linux-libre-tools/PKGBUILD
+++ b/libre/linux-libre-tools/PKGBUILD
@@ -1,69 +1,97 @@
# $Id$
# Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org>
-# Maintainer (Parabola): André Silva <andre.paulista@adinet.com.uy>
+# Maintainer (Parabola): André Silva <emulatorman@lavabit.com>
pkgbase=linux-libre-tools
-_pkgname=('perf' 'cpupower')
-pkgname=('perf-libre' 'cpupower-libre')
-_basekernel=3.4
+pkgname=('perf-libre' 'cpupower-libre' 'x86_energy_perf_policy-libre' 'usbip-libre')
+_basekernel=3.6
#_sublevel=1
#pkgver=${_basekernel}.${_sublevel}
pkgver=${_basekernel}
-pkgrel=2
+pkgrel=1
license=('GPL2')
arch=('i686' 'x86_64' 'mips64el')
url='http://linux-libre.fsfla.org/'
options=('!strip')
-makedepends=('asciidoc' 'xmlto')
# split packages need all package dependencies set manually in makedepends
-makedepends+=('python2' 'libnewt' 'elfutils' 'pciutils')
+# kernel source deps
+makedepends=('asciidoc' 'xmlto')
+# perf-libre deps
+makedepends+=('perl' 'python2' 'libnewt' 'elfutils')
+# cpupower-libre deps
+makedepends+=('pciutils')
+# usbip-libre deps
+makedepends+=('glib2' 'sysfsutils')
+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.rc'
'cpupower.conf'
- 'cpupower.service')
-md5sums=('a5e128ca059cceb8b69148b41ff4ac6f'
- '73dbc931e86b3b73d6e2338dcbee81a4'
- '18d5aa9e4c6bb23bb02bf65e155e0f0e'
- '20870541e88109d2f153be3c58a277f1')
+ 'cpupower.rc'
+ 'cpupower.systemd'
+ 'cpupower.service'
+ 'usbipd.conf'
+ 'usbipd.rc'
+ 'usbipd.service')
+md5sums=('a2312edd0265b5b07bd4b50afae2b380'
+ '56883c159381ba89e50ab8ea65efec77'
+ '5fc1fcda4cef93f16e752b1931db23e3'
+ 'c0d17b5295fe964623c772a2dd981771'
+ '2450e8ff41b30eb58d43b5fffbfde1f4'
+ 'e8fac9c45a628015644b4150b139278a'
+ '8a3831d962ff6a9968c0c20fd601cdec'
+ 'ba7c1c513314dd21fb2334fb8417738f')
build() {
- cd "${srcdir}/linux-${_basekernel}"
-
+ # apply stable patching set
if [ "${_basekernel}" != "${pkgver}" ]; then
+ msg2 'Applying stable patch set'
patch -Np1 -i "${srcdir}/patch-${_basekernel}-gnu-${pkgver}-gnu"
fi
- cd ${srcdir}
- msg2 'Build perf'
+ msg2 'Build perf-libre'
pushd linux-$pkgver/tools/perf
make \
+ WERROR=0 \
DESTDIR="$pkgdir/usr" \
- perfexecdir="lib/$_pkgname" \
+ perfexecdir='lib/perf' \
PYTHON=python2 \
NO_GTK2=1 \
PERF_VERSION=$pkgver-$pkgrel \
all man
popd
- msg2 'Build cpupower'
- cd linux-$pkgver/tools/power/cpupower
+ msg2 'Build 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 'Build x86_energy_perf_policy-libre'
+ pushd linux-$pkgver/tools/power/x86/x86_energy_perf_policy
+ make
+ popd
+
+ msg2 'Build usbip-libre'
+ pushd linux-$pkgver/drivers/staging/usbip/userspace
+ ./autogen.sh
+ ./configure --prefix=/usr
+ make
+ popd
}
package_perf-libre() {
pkgdesc='Linux-libre kernel performance auditing tool'
- depends=('python2' 'libnewt' 'elfutils')
+ depends=('perl' 'python2' 'libnewt' 'elfutils')
replaces=('perf')
conflicts=('perf')
provides=("perf=$pkgver")
cd linux-$pkgver/tools/perf
make \
+ WERROR=0 \
DESTDIR="$pkgdir/usr" \
- perfexecdir="lib/$_pkgname" \
+ perfexecdir='lib/perf' \
PYTHON=python2 \
NO_GTK2=1 \
PERF_VERSION=$pkgver-$pkgrel \
@@ -73,8 +101,8 @@ package_perf-libre() {
package_cpupower-libre() {
pkgdesc='Linux-libre kernel tool to examine and tune power saving related features of your processor'
backup=('etc/conf.d/cpupower')
- depends=('pciutils')
- replaces=('cpupower')
+ depends=('bash' 'pciutils')
+ replaces=('cpupower' 'cpufrequtils')
conflicts=('cpupower' 'cpufrequtils')
provides=("cpupower=$pkgver")
@@ -85,10 +113,43 @@ package_cpupower-libre() {
docdir='/usr/share/doc/cpupower' \
install install-man
popd
- # install rc.d script
- install -D -m 755 cpupower.rc "$pkgdir/etc/rc.d/cpupower"
- install -D -m 644 cpupower.conf "$pkgdir/etc/conf.d/cpupower"
- install -D -m 644 cpupower.service "$pkgdir/usr/lib/systemd/system/cpupower.service"
+ # install startup scripts
+ install -Dm 755 cpupower.rc "$pkgdir/etc/rc.d/cpupower"
+ install -Dm 644 cpupower.conf "$pkgdir/etc/conf.d/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')
+ options=('!libtool')
+ 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"
+ # install daemon scripts
+ install -Dm 755 usbipd.rc "$pkgdir/etc/rc.d/usbipd"
+ install -Dm 644 usbipd.conf "$pkgdir/etc/conf.d/usbipd"
+ install -Dm 644 usbipd.service "$pkgdir/usr/lib/systemd/system/usbipd.service"
}
-# vim:set ts=2 sw=2 ft=sh et:
+# vim:set ts=2 sw=2 et:
diff --git a/libre/linux-libre-tools/cpupower.conf b/libre/linux-libre-tools/cpupower.conf
index f4e9cc4c8..b5c522ea1 100644..100755
--- a/libre/linux-libre-tools/cpupower.conf
+++ b/libre/linux-libre-tools/cpupower.conf
@@ -8,10 +8,11 @@
#max_freq="3GHz"
# Specific frequency to be set.
-# Requires userspace governor to be available and loaded.
+# Requires userspace governor to be available.
+# Do not set governor field if you use this one.
#freq=
-# Utilizes cores in one processor package/socket first before processes are
+# Utilizes cores in one processor package/socket first before processes are
# scheduled to other processor packages/sockets.
# See man (1) CPUPOWER-SET for additional details.
#mc_scheduler=
diff --git a/libre/linux-libre-tools/cpupower.rc b/libre/linux-libre-tools/cpupower.rc
index 27a491e95..88edaf791 100644..100755
--- a/libre/linux-libre-tools/cpupower.rc
+++ b/libre/linux-libre-tools/cpupower.rc
@@ -3,39 +3,14 @@
. /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 -i fail=0
-
- # frequency-set options
- declare -a params=()
- params+=(${governor:+-g $governor})
- params+=(${min_freq:+-d $min_freq})
- params+=(${max_freq:+-u $max_freq})
- params+=(${freq:+-f $freq})
- if ((${#params[@]} > 0)); then
- cpupower frequency-set "${params[@]}" >/dev/null || fail=1
- fi
-
- # set options
- declare -a params=()
- params+=(${mc_scheduler:+-m $mc_scheduler})
- params+=(${smp_scheduler:+-s $smp_scheduler})
- params+=(${perf_bias:+-b $perf_bias})
- if ((${#params[@]} > 0)); then
- cpupower set "${params[@]}" >/dev/null || fail=1
- fi
-
- # print failure if any
- (($fail > 0)) && stat_fail && exit 1 || stat_done
+ status 'Setting cpupower rules' /usr/lib/systemd/scripts/cpupower || exit 1
;;
*)
- echo "usage: ${0##*/} {start|restart}"
+ echo "usage: ${0##*/} {start|restart}" >&2
+ exit 1
+ ;;
esac
-true
-
# vim:set ts=2 sw=2 ft=sh et:
diff --git a/libre/linux-libre-tools/cpupower.service b/libre/linux-libre-tools/cpupower.service
index f77cfdc97..aaeba2b08 100644..100755
--- a/libre/linux-libre-tools/cpupower.service
+++ b/libre/linux-libre-tools/cpupower.service
@@ -3,7 +3,7 @@ Description=Apply cpupower configuration
[Service]
Type=oneshot
-ExecStart=/etc/rc.d/cpupower start
+ExecStart=/usr/lib/systemd/scripts/cpupower
RemainAfterExit=yes
[Install]
diff --git a/libre/linux-libre-tools/cpupower.systemd b/libre/linux-libre-tools/cpupower.systemd
new file mode 100755
index 000000000..f45b02bc8
--- /dev/null
+++ b/libre/linux-libre-tools/cpupower.systemd
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+. /etc/conf.d/cpupower
+
+declare -i fail=0
+
+# parse frequency options
+declare -a params=()
+params+=(${governor:+-g $governor})
+params+=(${min_freq:+-d $min_freq})
+params+=(${max_freq:+-u $max_freq})
+params+=(${freq:+-f $freq})
+
+# apply frequency options
+if ((${#params[@]} > 0)); then
+ cpupower frequency-set "${params[@]}" >/dev/null || fail=1
+fi
+
+# parse cpu options
+declare -a params=()
+params+=(${mc_scheduler:+-m $mc_scheduler})
+params+=(${smp_scheduler:+-s $smp_scheduler})
+params+=(${perf_bias:+-b $perf_bias})
+
+# apply cpu options
+if ((${#params[@]} > 0)); then
+ cpupower set "${params[@]}" >/dev/null || fail=1
+fi
+
+exit $fail
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/libre/linux-libre-tools/usbipd.conf b/libre/linux-libre-tools/usbipd.conf
new file mode 100755
index 000000000..5990b857a
--- /dev/null
+++ b/libre/linux-libre-tools/usbipd.conf
@@ -0,0 +1,3 @@
+# vim:set ts=2 sw=2 ft=sh noet:
+
+DAEMON_OPTS=''
diff --git a/libre/linux-libre-tools/usbipd.rc b/libre/linux-libre-tools/usbipd.rc
new file mode 100755
index 000000000..15a1bcf00
--- /dev/null
+++ b/libre/linux-libre-tools/usbipd.rc
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/${0##*/}
+
+DAEMON=/usr/sbin/usbipd
+PID=$(pidof -o %PPID $DAEMON)
+DAEMON_OPTS="--daemon $DAEMON_OPTS"
+
+case "$1" in
+ start)
+ stat_busy "Starting ${0##*/} daemon"
+ [[ ! $PID ]] && $DAEMON $DAEMON_OPTS && add_daemon ${0##*/} && stat_done && exit 0
+ stat_fail
+ ;;
+ stop)
+ stat_busy "Stopping ${0##*/} daemon"
+ [[ $PID ]] && kill $PID &> /dev/null && rm_daemon ${0##*/} && stat_done && exit 0
+ stat_fail
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ exit 0
+ ;;
+ *)
+ echo "usage: ${0##*/} {start|stop|restart}" >&2
+ ;;
+esac
+
+exit 1
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/libre/linux-libre-tools/usbipd.service b/libre/linux-libre-tools/usbipd.service
new file mode 100755
index 000000000..ac2f5f7c1
--- /dev/null
+++ b/libre/linux-libre-tools/usbipd.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=USB/IP server
+
+[Service]
+ExecStart=/usr/sbin/usbipd
+
+[Install]
+WantedBy=multi-user.target