summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2013-03-05 23:46:09 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2013-03-05 23:46:09 -0800
commit0845a75c6a624f88e232499a4c1dd7ff3c6eef5a (patch)
tree15b39356bf035aac7643e90f2a6f6d1cf595ba9d
parent9b1c32713812fa4e0085583469d9f739b7943d50 (diff)
downloademacs-0845a75c6a624f88e232499a4c1dd7ff3c6eef5a.tar.gz
Fix a build failure on OpenBSD 4.x and MirBSD.
* sysdep.c (list_system_processes): Make it a stub on all BSD_SYSTEM hosts, except for DARWIN_OS and FreeBSD where it's been tested. Fixes: debbugs:13881
-rw-r--r--src/ChangeLog5
-rw-r--r--src/sysdep.c6
2 files changed, 6 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 18b22b5da46..f67046ebd43 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,9 +1,10 @@
2013-03-05 Paul Eggert <eggert@cs.ucla.edu>
Fix a build failure on OpenBSD 4.x and MirBSD (Bug#13881).
- * sysdep.c (list_system_processes) [__OpenBSD__ || __MirBSD__]:
+ * sysdep.c (list_system_processes)
+ [BSD_SYSTEM && !DARWIN_OS && !__FreeBSD__]:
Make it a stub in this case; otherwise the build might fail,
- and even if the build worked the function would just return nil anyway.
+ 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
diff --git a/src/sysdep.c b/src/sysdep.c
index 80c7e0bc51e..19c56869ea0 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -2647,12 +2647,12 @@ list_system_processes (void)
return proclist;
}
-#elif defined BSD_SYSTEM && !defined __OpenBSD__ && !defined __MirBSD__
+#elif defined DARWIN_OS || defined __FreeBSD__
Lisp_Object
list_system_processes (void)
{
-#if defined DARWIN_OS || defined __NetBSD__
+#ifdef DARWIN_OS
int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_ALL};
#else
int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_PROC};
@@ -2678,7 +2678,7 @@ 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);
#else
proclist = Fcons (make_fixnum_or_float (procs[i].ki_pid), proclist);