In exim v2.11, a definition was added to OS/os.h-HP-UX:
#define killpg(pgid,sig) kill(-(pgid),sig)
This breaks builds of exim on HP-UX 10.20 and 11.0, since killpg is
already defined in <sys/signal.h> as:
extern int killpg(pid_t, int);
(I'm not sure how it's implemented internally. It might very well just be
a call to kill() with the first argument negated). In any case, killpg()
is a standalone function on HP-UX 10.20 and 11.0.
I'm presuming that this was added for some older version of HP-UX that
didn't have killpg(), but I don't have any older machines to verify this.
Unfortunately, I can't find a simple #define in the headers that lets one
figure out what version of HP-UX you're building under. There is the
comprehensive sysconf() function defined by POSIX, but that would require
runtime interpretation and couldn't easily be included in a header.
On the topic of HP-UX and version skew, I've had a locally-applied patch
for OS/os.h-HPUX since Exim v1.92 (possibly earlier, that's the first
version I used):
-HP-UX.in
--- OS/os.h-HP-UX.orig Wed Mar 18 04:39:09 1998
+++ OS/os.h-HP-UX Fri Mar 27 17:36:12 1998
@@ -7,7 +7,7 @@
#define KERNEL_PATH "/hp-ux"
#define FSCALE 1.0
-#define HAVE_SYS_VFS_H
+#define HAVE_SYS_STATVFS_H
#define SELECT_ARG2_TYPE int
#define F_FREESP O_TRUNC
Which again is probably needed only on HP-UX v10.20 or v11.0
So, I don't have a good solution, but for now people building on newer
versions of HP-UX can just comment out the #define for killpg and Exim
v2.11 should build.
--
j.
James FitzGibbon james@???
System Engineer, ACC Global Net Voice/Fax (416)207-7171/7610
--
*** Exim information can be found at
http://www.exim.org/ ***