aboutsummaryrefslogtreecommitdiffstats
path: root/main/xautolock
diff options
context:
space:
mode:
Diffstat (limited to 'main/xautolock')
-rw-r--r--main/xautolock/APKBUILD45
-rw-r--r--main/xautolock/processwait.patch33
2 files changed, 78 insertions, 0 deletions
diff --git a/main/xautolock/APKBUILD b/main/xautolock/APKBUILD
new file mode 100644
index 0000000000..3f946c2d7a
--- /dev/null
+++ b/main/xautolock/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Johannes Matheis <jomat+alpinebuild@jmt.gr>
+# Maintainer: Johannes Matheis <jomat+alpinebuild@jmt.gr>
+pkgname=xautolock
+pkgver=2.2
+pkgrel=0
+pkgdesc="An automatic X screen-locker/screen-saver"
+url="ftp://ibiblio.org/pub/Linux/X11/screensavers/"
+arch="all"
+license="GPL2"
+depends=""
+depends_dev="imake xorg-server-dev libxscrnsaver-dev xorg-cf-files"
+makedepends="$depends_dev"
+install=""
+subpackages="$pkgname-doc"
+source="$url/$pkgname-$pkgver.tgz processwait.patch"
+
+_builddir="$srcdir/$pkgname-$pkgver"
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p0 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ xmkmf
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install
+ make MANPATH=/usr/share/man DESTDIR="$pkgdir" install.man
+}
+
+md5sums="9526347a202694ad235d731d9d3de91f xautolock-2.2.tgz
+ce0533325dbe894944347189faccdd7f processwait.patch"
+sha256sums="11f0275175634e6db756e96f5713ec91b8b1c41f8663df54e8a5d27dc71c4da2 xautolock-2.2.tgz
+30fc12fa13a34c22d46a3cc9ded164a997d47058208a405de6d4af03a3ca01b4 processwait.patch"
+sha512sums="5f9dcc25cda706610e77a74235c4b421ca3a833d154b1a269057f0774579e1c6ec36fe0e5be5fadd6942ce8c1640a760f891397586b162e6024b524635153d04 xautolock-2.2.tgz
+006398a2d73a5b7441536badf933f9764394ca0d09dc9659d4a6ad04c95619d7e57030bf1010a16a7732dd90449af5a23571c8834efeb323ebb91d004da0e8ed processwait.patch"
diff --git a/main/xautolock/processwait.patch b/main/xautolock/processwait.patch
new file mode 100644
index 0000000000..8a8509a6b7
--- /dev/null
+++ b/main/xautolock/processwait.patch
@@ -0,0 +1,33 @@
+--- src/engine.c.orig 2014-08-28 12:50:56.086307943 +0000
++++ src/engine.c 2014-08-28 12:50:59.496333650 +0000
+@@ -209,24 +209,24 @@ evaluateTriggers (Display* d)
+ {
+ #else /* VMS */
+ if (lockerPid)
+ {
+-#if !defined (UTEKV) && !defined (SYSV) && !defined (SVR4)
++#if (!defined (UTEKV) && !defined (SYSV) && !defined (SVR4)) && defined (__GLIBC__)
+ union wait status; /* childs process status */
+-#else /* !UTEKV && !SYSV && !SVR4 */
++#else /* (!UTEKV && !SYSV && !SVR4) && __GLIBC__ */
+ int status = 0; /* childs process status */
+-#endif /* !UTEKV && !SYSV && !SVR4 */
++#endif /* (!UTEKV && !SYSV && !SVR4) && __GLIBC__ */
+
+ if (unlockNow && !disabled)
+ {
+ (void) kill (lockerPid, SIGTERM);
+ }
+
+-#if !defined (UTEKV) && !defined (SYSV) && !defined (SVR4)
++#if (!defined (UTEKV) && !defined (SYSV) && !defined (SVR4)) && defined (__GLIBC__)
+ if (wait3 (&status, WNOHANG, 0))
+-#else /* !UTEKV && !SYSV && !SVR4 */
++#else /* (!UTEKV && !SYSV && !SVR4) && __GLIBC__ */
+ if (waitpid (-1, &status, WNOHANG))
+-#endif /* !UTEKV && !SYSV && !SVR4 */
++#endif /* (!UTEKV && !SYSV && !SVR4) && __GLIBC__ */
+ {
+ /*
+ * If the locker exited normally, we disable any pending kill
+ * trigger. Otherwise, we assume that it either has crashed or