summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog22
-rw-r--r--src/sysdep.c16
2 files changed, 15 insertions, 23 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 84ba55e3bdf..bbf2aae960a 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,15 @@
+2013-03-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix a build failure on OpenBSD 4.x and MirBSD (Bug#13881).
+ * sysdep.c (list_system_processes)
+ [BSD_SYSTEM && !DARWIN_OS && !__FreeBSD__]:
+ Make it a stub in this case; otherwise the build might fail,
+ and this code hasn't been tested on such hosts anyway.
+ Problem reported by Nelson H. F. Beebe in
+ <http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00021.html>
+ and analyzed by Jérémie Courrèges-Anglas in
+ <http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00062.html>.
+
2013-03-06 Dmitry Antipov <dmantipov@yandex.ru>
* lisp.h (find_next_newline_no_quit): Rename to find_next_newline.
@@ -65,16 +77,6 @@
to be in sync with bidi_it->bytepos. Suggested by Dmitry Antipov
<dmantipov@yandex.ru>.
-2013-03-05 Paul Eggert <eggert@cs.ucla.edu>
-
- Fix a build failure on OpenBSD 4.x and MirBSD.
- * sysdep.c (KERN_PROC, kinfo_proc)
- [BSD_SYSTEM && (!KERN_PROC || __MirBSD__)]:
- Define to KERN_PROC2 and kinfo_proc2, for OpenBSD 4.9 and MirBSD.
- list-system-processes still returns nil, but at least it doesn't crash.
- Problem reported by Nelson H. F. Beebe in
- <http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00021.html>.
-
2013-03-05 Dmitry Antipov <dmantipov@yandex.ru>
* composite.c (get_composition_id, fill_gstring_header):
diff --git a/src/sysdep.c b/src/sysdep.c
index c4b937183ca..fe6371623a9 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -2541,20 +2541,12 @@ list_system_processes (void)
return proclist;
}
-#elif defined BSD_SYSTEM
-
-/* OpenBSD 4.9 and earlier do not have KERN_PROC. Approximate it with
- KERN_PROC2. MirBSD's KERN_PROC seems to be busted. */
-# if !defined KERN_PROC || defined __MirBSD__
-# undef KERN_PROC
-# define KERN_PROC KERN_PROC2
-# define kinfo_proc kinfo_proc2
-# endif
+#elif defined DARWIN_OS || defined __FreeBSD__
Lisp_Object
list_system_processes (void)
{
-#if defined DARWIN_OS || defined __NetBSD__ || defined __OpenBSD__
+#ifdef DARWIN_OS
int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_ALL};
#else
int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_PROC};
@@ -2580,10 +2572,8 @@ list_system_processes (void)
len /= sizeof (struct kinfo_proc);
for (i = 0; i < len; i++)
{
-#if defined DARWIN_OS || defined __NetBSD__
+#ifdef DARWIN_OS
proclist = Fcons (make_fixnum_or_float (procs[i].kp_proc.p_pid), proclist);
-#elif defined __OpenBSD__
- proclist = Fcons (make_fixnum_or_float (procs[i].p_pid), proclist);
#else
proclist = Fcons (make_fixnum_or_float (procs[i].ki_pid), proclist);
#endif