summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoy Marples <uberlord@gentoo.org>2007-10-31 21:32:28 +0000
committerRoy Marples <uberlord@gentoo.org>2007-10-31 21:32:28 +0000
commit350adaf3794ed96e807f0da2a57f0996dfcfbd39 (patch)
tree9f5cead9bda0940c0922fb884bc3afd97ef94fac /sys-auth
parentFixing Manifest (diff)
downloadhistorical-350adaf3794ed96e807f0da2a57f0996dfcfbd39.tar.gz
historical-350adaf3794ed96e807f0da2a57f0996dfcfbd39.tar.bz2
historical-350adaf3794ed96e807f0da2a57f0996dfcfbd39.zip
Add a workaround for a FreeBSD kernel bug so consolekit stops when in use.
Package-Manager: portage-2.1.3.16
Diffstat (limited to 'sys-auth')
-rw-r--r--sys-auth/consolekit/ChangeLog6
-rw-r--r--sys-auth/consolekit/Manifest20
-rw-r--r--sys-auth/consolekit/consolekit-0.2.3.ebuild10
-rw-r--r--sys-auth/consolekit/files/consolekit-0.2.3-freebsd.patch107
4 files changed, 133 insertions, 10 deletions
diff --git a/sys-auth/consolekit/ChangeLog b/sys-auth/consolekit/ChangeLog
index 07d16df8e32f..5c763eb770fa 100644
--- a/sys-auth/consolekit/ChangeLog
+++ b/sys-auth/consolekit/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for sys-auth/consolekit
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-auth/consolekit/ChangeLog,v 1.24 2007/10/18 15:43:51 uberlord Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-auth/consolekit/ChangeLog,v 1.25 2007/10/31 21:32:27 uberlord Exp $
+
+ 31 Oct 2007; Roy Marples <uberlord@gentoo.org>
+ +files/consolekit-0.2.3-freebsd.patch, consolekit-0.2.3.ebuild:
+ Add a workaround for a FreeBSD kernel bug so consolekit stops when in use.
18 Oct 2007; Roy Marples <uberlord@gentoo.org> consolekit-0.2.3.ebuild:
Keyworded ~x86-fbsd
diff --git a/sys-auth/consolekit/Manifest b/sys-auth/consolekit/Manifest
index 3c056f65d2b3..82a7fe058527 100644
--- a/sys-auth/consolekit/Manifest
+++ b/sys-auth/consolekit/Manifest
@@ -2,20 +2,24 @@ AUX consolekit-0.1.rc 540 RMD160 0db24125d14b177ac54819f4d57fcac589a86bf3 SHA1 e
MD5 fe92ac14f5b3146d01be6051f7fd32f3 files/consolekit-0.1.rc 540
RMD160 0db24125d14b177ac54819f4d57fcac589a86bf3 files/consolekit-0.1.rc 540
SHA256 53510ed5f365af2f5fc760fb9462aea660ba54cbbd5f4c6be8d3bc75c4c399c8 files/consolekit-0.1.rc 540
+AUX consolekit-0.2.3-freebsd.patch 2945 RMD160 e1193ba4010daa33c9646ed8a78a374944ea73dc SHA1 10af67cab72a184fbe89ba36330a20020ae60206 SHA256 f17aa9f3229a24d6bd4291c9f249396864eceb9c01ed00e5c97172c1c57932c5
+MD5 06894297579df7fb99675a3d3df2ddd6 files/consolekit-0.2.3-freebsd.patch 2945
+RMD160 e1193ba4010daa33c9646ed8a78a374944ea73dc files/consolekit-0.2.3-freebsd.patch 2945
+SHA256 f17aa9f3229a24d6bd4291c9f249396864eceb9c01ed00e5c97172c1c57932c5 files/consolekit-0.2.3-freebsd.patch 2945
DIST ConsoleKit-0.2.1.tar.gz 455036 RMD160 73bc8b6a15e193c346bc9516c6def0df4cac3fb6 SHA1 9a925234d0cca0ddfa3a6b5e0c8e3b78411417f5 SHA256 059290d71bd71665cb1f3d40a5900c9e5ef422855070838b60a963d5bfaef61f
DIST ConsoleKit-0.2.3.tar.gz 468591 RMD160 457c1a08e9d2fc789537127c9d069088588c035b SHA1 009f731aa4331125ef052e587d7b0583e07ee8aa SHA256 1b9571f958d3c3be464a6261947c6f817948e878166bca4616f4ac3ac9f02e47
EBUILD consolekit-0.2.1.ebuild 1788 RMD160 258513597e7e2459f3bfa3b0fa1b7265118bd098 SHA1 cd689ba35741e0824ce1d1ddb2b587975e173a70 SHA256 01fe2b8f56df85b4b972d45274ae37eeae1ea2da2406eb47a3dd537ff6c1f81e
MD5 a436aa93fe7bf7f71286047e2775a9c3 consolekit-0.2.1.ebuild 1788
RMD160 258513597e7e2459f3bfa3b0fa1b7265118bd098 consolekit-0.2.1.ebuild 1788
SHA256 01fe2b8f56df85b4b972d45274ae37eeae1ea2da2406eb47a3dd537ff6c1f81e consolekit-0.2.1.ebuild 1788
-EBUILD consolekit-0.2.3.ebuild 1828 RMD160 ba0e7ef2a88eff0662ee2fadedb8d2f4f2552d76 SHA1 66c5aac7138914f534af21d9d65c6d2553e4d909 SHA256 a135bdd65a6dffc1bf053192a11d94f4a333a8927da4d2f53fe4f7e5f728f531
-MD5 581ee301b9f8a6e015b303fd2549eab5 consolekit-0.2.3.ebuild 1828
-RMD160 ba0e7ef2a88eff0662ee2fadedb8d2f4f2552d76 consolekit-0.2.3.ebuild 1828
-SHA256 a135bdd65a6dffc1bf053192a11d94f4a333a8927da4d2f53fe4f7e5f728f531 consolekit-0.2.3.ebuild 1828
-MISC ChangeLog 3447 RMD160 5b7c07d69516b0fb87934c742f4de83e05244bb8 SHA1 969f396cf2cba29432ede349eb5b66bfd81a23da SHA256 989faef6de44c90c8fbe8537f5357842c934f239585083e3f76807dc84baf950
-MD5 62f350680048c0efad0f6f6b51bb6cd7 ChangeLog 3447
-RMD160 5b7c07d69516b0fb87934c742f4de83e05244bb8 ChangeLog 3447
-SHA256 989faef6de44c90c8fbe8537f5357842c934f239585083e3f76807dc84baf950 ChangeLog 3447
+EBUILD consolekit-0.2.3.ebuild 1974 RMD160 b23c55545ecd6362fca789ece93bc3c8521e4c50 SHA1 1fa31e4c1cd73834466c9865d517af7d4e1920b0 SHA256 fe6a4f806d39b3a64345e944e519e61d3de4379f77eb16cb09294726003942fa
+MD5 294df6785b8ef2a6c18c63dd3126bb61 consolekit-0.2.3.ebuild 1974
+RMD160 b23c55545ecd6362fca789ece93bc3c8521e4c50 consolekit-0.2.3.ebuild 1974
+SHA256 fe6a4f806d39b3a64345e944e519e61d3de4379f77eb16cb09294726003942fa consolekit-0.2.3.ebuild 1974
+MISC ChangeLog 3640 RMD160 2c0f03d46d5f0a9a1c947fdd2dc6cd52d8a697f1 SHA1 ef594c26dd11fd10aaa49fa5722ad8360d2dbd8e SHA256 9530e02758b61bef7cf5700fab162c59c976c728d9d9988c6ec87e8bab6db1a2
+MD5 2be05e05d3c681b00c4eb9776a4c675e ChangeLog 3640
+RMD160 2c0f03d46d5f0a9a1c947fdd2dc6cd52d8a697f1 ChangeLog 3640
+SHA256 9530e02758b61bef7cf5700fab162c59c976c728d9d9988c6ec87e8bab6db1a2 ChangeLog 3640
MISC metadata.xml 224 RMD160 feef623491f64af70c81f6c3e1b05703113b9ab4 SHA1 4d12cdcf7f5c2927c2e26a843c3ee575f21687c3 SHA256 cfc5350e2a164ad4374a1972a10208274c87ae9335dff0d9db2cfc11fb003954
MD5 36894254b4c442994701559c82e7bdaf metadata.xml 224
RMD160 feef623491f64af70c81f6c3e1b05703113b9ab4 metadata.xml 224
diff --git a/sys-auth/consolekit/consolekit-0.2.3.ebuild b/sys-auth/consolekit/consolekit-0.2.3.ebuild
index efc5e3bb3a01..b66b11a05c68 100644
--- a/sys-auth/consolekit/consolekit-0.2.3.ebuild
+++ b/sys-auth/consolekit/consolekit-0.2.3.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-auth/consolekit/consolekit-0.2.3.ebuild,v 1.4 2007/10/18 15:43:51 uberlord Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-auth/consolekit/consolekit-0.2.3.ebuild,v 1.5 2007/10/31 21:32:27 uberlord Exp $
inherit eutils autotools multilib pam
@@ -28,6 +28,14 @@ DEPEND="${RDEPEND}
S="${WORKDIR}/${MY_PN}-${MY_PV}"
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ # Work around an apparent FreeBSD kernel bug
+ use x86-fbsd && epatch "${FILESDIR}/${P}"-freebsd.patch
+}
+
src_compile() {
econf $(use_enable debug) \
$(use_enable pam pam-module) \
diff --git a/sys-auth/consolekit/files/consolekit-0.2.3-freebsd.patch b/sys-auth/consolekit/files/consolekit-0.2.3-freebsd.patch
new file mode 100644
index 000000000000..2e5744092817
--- /dev/null
+++ b/sys-auth/consolekit/files/consolekit-0.2.3-freebsd.patch
@@ -0,0 +1,107 @@
+diff --git a/src/ck-sysdeps-unix.c b/src/ck-sysdeps-unix.c
+index 0001b6b..bcdfb21 100644
+--- a/src/ck-sysdeps-unix.c
++++ b/src/ck-sysdeps-unix.c
+@@ -267,7 +267,13 @@ ck_wait_for_active_console_num (int console_fd,
+ g_debug ("Interrupted waiting for native console %d activation: %s",
+ num,
+ errmsg);
++#if !defined(__FreeBSD__)
++ /* We don't want to retry on FreeBSD since getting
++ * EINTR means we are terminating, and we don't want
++ * to keep restarting our active VT check.
++ */
+ goto again;
++#endif
+ } else {
+ g_warning ("Error waiting for native console %d activation: %s",
+ num,
+diff --git a/src/main.c b/src/main.c
+index 11b6f2e..af2998b 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -245,6 +245,27 @@ setup_debug_log_signals (void)
+ }
+
+ static void
++terminate (int sig __unused)
++{
++ return;
++}
++
++static void
++setup_termination_signals (void)
++{
++ struct sigaction sa;
++
++ sa.sa_handler = terminate;
++ sigemptyset (&sa.sa_mask);
++ sa.sa_flags = 0;
++
++ sigaction (SIGTERM, &sa, NULL);
++ sigaction (SIGQUIT, &sa, NULL);
++ sigaction (SIGINT, &sa, NULL);
++ sigaction (SIGHUP, &sa, NULL);
++}
++
++static void
+ setup_debug_log (gboolean debug)
+ {
+ ck_log_init ();
+@@ -300,6 +321,8 @@ main (int argc,
+
+ setup_debug_log (debug);
+
++ setup_termination_signals ();
++
+ connection = get_system_bus ();
+ if (connection == NULL) {
+ goto out;
+diff --git a/src/test-vt-monitor.c b/src/test-vt-monitor.c
+index c445865..e31b24e 100644
+--- a/src/test-vt-monitor.c
++++ b/src/test-vt-monitor.c
+@@ -30,6 +30,7 @@
+ #include <fcntl.h>
+ #include <pwd.h>
+ #include <string.h>
++#include <signal.h>
+ #include <errno.h>
+
+ #include <locale.h>
+@@ -47,6 +48,12 @@ activated_cb (CkVtMonitor *monitor,
+ g_message ("VT %u activated", num);
+ }
+
++static void
++terminate (int sig __unused)
++{
++ return;
++}
++
+ int
+ main (int argc, char **argv)
+ {
+@@ -55,12 +62,22 @@ main (int argc, char **argv)
+ GError *error;
+ guint num;
+ gboolean res;
++ struct sigaction sa;
+
+ if (! g_thread_supported ()) {
+ g_thread_init (NULL);
+ }
+ g_type_init ();
+
++ sa.sa_handler = terminate;
++ sigemptyset (&sa.sa_mask);
++ sa.sa_flags = 0;
++
++ sigaction (SIGINT, &sa, NULL);
++ sigaction (SIGTERM, &sa, NULL);
++ sigaction (SIGQUIT, &sa, NULL);
++ sigaction (SIGHUP, &sa, NULL);
++
+ if (! ck_is_root_user ()) {
+ g_warning ("Must be run as root");
+ exit (1);