[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

emacs-24.2.93 build problems

From: Nelson H. F. Beebe
Subject: emacs-24.2.93 build problems
Date: Sat, 2 Mar 2013 16:00:47 -0700 (MST)

I have spent much of today in build attempts for emacs-24.2.93 on
about 25 flavors of Unix in our lab.  After a lot of restarts, I have
mostly succeeded, except for two platforms: OpenBSD 4.9 on x86, and
MirOS 10 on x86.  On those two systems, compilation of src/sysdep.c
fails like this:

    sysdep.c: In function 'list_system_processes':
    sysdep.c:2656: error: 'KERN_PROC' undeclared (first use in this function)
    sysdep.c:2656: error: (Each undeclared identifier is reported only once
    sysdep.c:2656: error: for each function it appears in.)
    sysdep.c:2684: error: 'struct kinfo_proc' has no member named 'p_pid'

Both systems previously had emacs-24.1 installed.  A similar build of
emacs-24.2.93 on OpenBSD 5.1 was successful.

Examination of the source code reveals the problem: function
list_system_processes() is delving into kernel data structures defined
in <kvm.h> which in turn includes <sys/sysctl.h>, and that header file
defines kernel data structures that list_system_processes() attempts
to reference. 

In OpenBSD 5.1, p_pid is in struct kinfo_proc, but on the other two
systems, p_pid is instead in struct kinfo_proc2.  There is no support
code in list_system_processes() for that alternative, and no test for
it in configure either.

By contrast, the emacs-24.1 version of list_system_processes() has no
reference to the kinfo_proc* structs.

On request, I can provide off-list pointers to copies of sysctl.h for
the two failing systems.

Although some might argue that because OpenBSD 5.x is available,
OpenBSD 4.x is no longer of interest, I do not hold that view.  Emacs
has been around now for almost 40 years, and for the last 30 or so,
its portability has been held in high regard.  As a result, it is
available on, or has been ported to, all common desktop and mobile
platforms, even non-Unix ones.  I prefer to see that portability
continue.  Emacs is what makes computers usable in much the same way,
no matter what the underlying O/S platform is.

- Nelson H. F. Beebe                    Tel: +1 801 581 5254                  -
- University of Utah                    FAX: +1 801 581 4148                  -
- Department of Mathematics, 110 LCB    Internet e-mail: address@hidden  -
- 155 S 1400 E RM 233                       address@hidden  address@hidden -
- Salt Lake City, UT 84112-0090, USA    URL: http://www.math.utah.edu/~beebe/ -

reply via email to

[Prev in Thread] Current Thread [Next in Thread]