summaryrefslogtreecommitdiffstats
path: root/testing/lxdm
diff options
context:
space:
mode:
authorWilliam Pitcock <nenolod@dereferenced.org>2010-12-22 15:47:38 -0600
committerWilliam Pitcock <nenolod@dereferenced.org>2010-12-22 15:47:38 -0600
commite5f936130acb7e29bc68ba1cb346e7f2ff16efd8 (patch)
treed8555ce5e822f6a4431631b8f776370cede13b89 /testing/lxdm
parent477768c1998ec4898ce94019eeba49510502f145 (diff)
testing/lxdm: new aport.
Diffstat (limited to 'testing/lxdm')
-rw-r--r--testing/lxdm/APKBUILD55
-rw-r--r--testing/lxdm/lxdm-execinfo.patch47
-rw-r--r--testing/lxdm/lxdm-nopam.patch18
-rwxr-xr-xtesting/lxdm/lxdm.initd18
4 files changed, 138 insertions, 0 deletions
diff --git a/testing/lxdm/APKBUILD b/testing/lxdm/APKBUILD
new file mode 100644
index 00000000000..de51ddad733
--- /dev/null
+++ b/testing/lxdm/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: William Pitcock <nenolod@dereferenced.org>
+# Maintainer: William Pitcock <nenolod@dereferenced.org>
+pkgname=lxdm
+pkgver=0.3.0
+pkgrel=0
+pkgdesc="LXDE desktop login manager"
+url="http://wiki.lxde.org/en/LXDM"
+license="GPL"
+depends=
+makedepends="autoconf automake gtk+-dev consolekit-dev"
+install=
+source="http://downloads.sourceforge.net/lxde/$pkgname-$pkgver.tar.gz
+ lxdm.initd
+ lxdm-execinfo.patch
+ lxdm-nopam.patch"
+arch="all"
+
+_builddir="$srcdir"/$pkgname-$pkgver
+
+prepare() {
+ cd "$_builddir"
+
+ for i in $source; do
+ case $i in
+ *.patch)
+ msg "Applying $i..."
+ patch -s -p1 -N -i "$srcdir"/$i || return 1
+ ;;
+ esac
+ done
+
+ autoreconf
+}
+
+build() {
+ cd "$_builddir"
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --without-pam
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install
+
+ install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+}
+
+md5sums="1d0688e088edab7c3c563263eb2f9654 lxdm-0.3.0.tar.gz
+27f8ef5c16ae1234365ab318e2c9001c lxdm.initd
+045da38f5bb183ccacc489ea7e50e927 lxdm-execinfo.patch
+0d44e8cd97894fd680e3f09e680c3481 lxdm-nopam.patch"
diff --git a/testing/lxdm/lxdm-execinfo.patch b/testing/lxdm/lxdm-execinfo.patch
new file mode 100644
index 00000000000..b81ef2fc847
--- /dev/null
+++ b/testing/lxdm/lxdm-execinfo.patch
@@ -0,0 +1,47 @@
+--- lxdm-0.3.0/configure.ac
++++ lxdm-0.3.0.mod/configure.ac
+@@ -23,7 +23,7 @@
+
+ # Checks for header files.
+ AC_PATH_X
+-AC_CHECK_HEADERS([shadow.h stdlib.h string.h unistd.h])
++AC_CHECK_HEADERS([shadow.h stdlib.h string.h unistd.h execinfo.h])
+
+ # Checks for typedefs, structures, and compiler characteristics.
+ AC_TYPE_PID_T
+Only in lxdm-0.3.0: data/LoginReady
+Only in lxdm-0.3.0: data/PostLogin
+Only in lxdm-0.3.0: data/PostLogout
+Only in lxdm-0.3.0: data/PreLogin
+Only in lxdm-0.3.0: data/PreReboot
+Only in lxdm-0.3.0: data/PreShutdown
+--- lxdm-0.3.0/src/lxdm.c
++++ lxdm-0.3.0.mod/src/lxdm.c
+@@ -51,7 +51,9 @@
+ #include <sys/ioctl.h>
+ #include <sys/stat.h>
+
++#ifdef HAVE_EXECINFO_H
+ #include <execinfo.h>
++#endif
+
+ #include <utmp.h>
+
+@@ -1480,6 +1482,7 @@
+
+ static void log_sigsegv(void)
+ {
++#ifdef HAVE_EXECINFO_H
+ void *array[40];
+ size_t size;
+ char **bt_strs;
+@@ -1492,6 +1495,9 @@
+ fprintf(stderr, "%s\n", bt_strs[i]);
+
+ free(bt_strs);
++#else
++ fprintf(stderr, "backtrace is unavailable\n");
++#endif
+ }
+
+ static void sigsegv_handler(int sig)
diff --git a/testing/lxdm/lxdm-nopam.patch b/testing/lxdm/lxdm-nopam.patch
new file mode 100644
index 00000000000..86c808fcb64
--- /dev/null
+++ b/testing/lxdm/lxdm-nopam.patch
@@ -0,0 +1,18 @@
+--- lxdm-0.3.0/src/lxdm.c
++++ lxdm-0.3.0.mod/src/lxdm.c
+@@ -152,6 +152,7 @@
+ while( waitpid(-1, 0, WNOHANG) > 0 ) ;
+ }
+
++#if HAVE_LIBPAM
+ static void close_pam_session(pam_handle_t *pamh)
+ {
+ int err;
+@@ -161,6 +162,7 @@
+ pam_end(pamh, err);
+ pamh = NULL;
+ }
++#endif
+
+ static LXSession *lxsession_find_greeter(void)
+ {
diff --git a/testing/lxdm/lxdm.initd b/testing/lxdm/lxdm.initd
new file mode 100755
index 00000000000..274c4afe9b3
--- /dev/null
+++ b/testing/lxdm/lxdm.initd
@@ -0,0 +1,18 @@
+#!/sbin/runscript
+
+depends() {
+ needs localmount
+}
+
+start() {
+ ebegin "Starting lxdm"
+ start-stop-daemon --start --quiet --exec /usr/bin/lxdm -- -d
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping lxdm"
+ start-stop-daemon --stop --quiet --exec /usr/bin/lxdm
+ eend $?
+}
+