aboutsummaryrefslogtreecommitdiffstats
path: root/main/cpulimit
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2012-09-28 08:28:47 +0300
committerTimo Teräs <timo.teras@iki.fi>2012-09-28 08:28:47 +0300
commit4e58eab1fa3ac6ae722a328143585fa0c1ad6f15 (patch)
tree6c5125ee7684f415eef68b77d25492b35d88f662 /main/cpulimit
parentadccaaa33a873c4140d00a41efe8b7d38100658c (diff)
downloadaports-4e58eab1fa3ac6ae722a328143585fa0c1ad6f15.tar.bz2
aports-4e58eab1fa3ac6ae722a328143585fa0c1ad6f15.tar.xz
main/cpulimit: moved from testing
Diffstat (limited to 'main/cpulimit')
-rw-r--r--main/cpulimit/APKBUILD39
-rw-r--r--main/cpulimit/fix-crash-on-sigquit.patch27
2 files changed, 66 insertions, 0 deletions
diff --git a/main/cpulimit/APKBUILD b/main/cpulimit/APKBUILD
new file mode 100644
index 0000000000..9ed2993c5f
--- /dev/null
+++ b/main/cpulimit/APKBUILD
@@ -0,0 +1,39 @@
+# Maintainer: Natanael Copa
+pkgname=cpulimit
+pkgver=0.0.2012.06.05
+pkgrel=1
+pkgdesc="CPU usage limiter for Linux"
+url="https://github.com/opsengine/cpulimit"
+arch="all"
+license="GPLv2+"
+depends=""
+depends_dev=""
+makedepends="$depends_dev"
+install=""
+subpackages=""
+source="http://dev.alpinelinux.org/archive/cpulimit/cpulimit-$pkgver.tar.gz
+ fix-crash-on-sigquit.patch"
+
+_builddir="$srcdir"/cpulimit
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ install -Dm755 src/cpulimit "$pkgdir"/usr/bin/cpulimit
+}
+
+md5sums="34796b9b49c622d1d2b3adb97b3cf965 cpulimit-0.0.2012.06.05.tar.gz
+664a233f3057e9c0ad245ef4a72e51cd fix-crash-on-sigquit.patch"
diff --git a/main/cpulimit/fix-crash-on-sigquit.patch b/main/cpulimit/fix-crash-on-sigquit.patch
new file mode 100644
index 0000000000..d406dec2e0
--- /dev/null
+++ b/main/cpulimit/fix-crash-on-sigquit.patch
@@ -0,0 +1,27 @@
+Only in cpulimit.fix/: core
+Only in cpulimit.fix/: src/cpulimit
+--- cpulimit/src/cpulimit.c
++++ cpulimit.fix/src/cpulimit.c
+@@ -89,11 +89,13 @@
+ {
+ //let all the processes continue if stopped
+ struct list_node *node = NULL;
+- for (node=pgroup.proclist->first; node!= NULL; node=node->next) {
+- struct process *p = (struct process*)(node->data);
+- kill(p->pid, SIGCONT);
++ if (pgroup.proclist) {
++ for (node=pgroup.proclist->first; node!= NULL; node=node->next) {
++ struct process *p = (struct process*)(node->data);
++ kill(p->pid, SIGCONT);
++ }
++ close_process_group(&pgroup);
+ }
+- close_process_group(&pgroup);
+ //fix ^C little problem
+ printf("\r");
+ fflush(stdout);
+Only in cpulimit.fix/: src/list.o
+Only in cpulimit.fix/: src/process_group.o
+Only in cpulimit.fix/: src/process_iterator.o
+Only in cpulimit.fix/: tests/busy
+Only in cpulimit.fix/: tests/process_iterator_test