David P Grove wrote:
Hi,
I'm getting the following errors when building classpath
0.93-generics for AIX. Anyone seen it before or have advice on how to
fix it? This appears to be in code added since 0.92-generics, which
does build on AIX.
thanks,
I resolved these issues on OpenBSD with the attached patches. YMMV
-Fred
--dave
/usr/gnu/bin/gcc -w -O -Wa,-mppc -DHAVE_CONFIG_H -I.
-I../../../../classpath/native/jni/native-lib -I../../../include
-I../../../../classpath/include
-I../../../../classpath/native/jni/classpath
-I../../../../classpath/native/jni/native-lib -D_POSIX_SOURCE
-D_ALL_SOURCE -D__ppc__ -W -Wall -Wmissing-declarations
-Wwrite-strings -Wmissing-prototypes -Wno-long-long
-Wstrict-prototypes -pedantic -g -O2 -MT cpnet.lo -MD -MP -MF
.deps/cpnet.Tpo -c ../../../../classpath/native/jni/native-lib/cpnet.c
-DPIC -o .libs/cpnet.o
../../../../classpath/native/jni/native-lib/cpnet.c:63:2: error:
#error "No suitable flag found to ommit a SIGPIPE on signal errors
with send()."
../../../../classpath/native/jni/native-lib/cpnet.c: In function
'cpnet_send':
../../../../classpath/native/jni/native-lib/cpnet.c:259: error:
'SOCKET_NOSIGNAL' undeclared (first use in this function)
../../../../classpath/native/jni/native-lib/cpnet.c:259: error: (Each
undeclared identifier is reported only once
../../../../classpath/native/jni/native-lib/cpnet.c:259: error: for
each function it appears in.)
../../../../classpath/native/jni/native-lib/cpnet.c: In function
'cpnet_sendTo':
../../../../classpath/native/jni/native-lib/cpnet.c:275: error:
'SOCKET_NOSIGNAL' undeclared (first use in this function)
../../../../classpath/native/jni/native-lib/cpnet.c: In function
'cpnet_getHostByName':
../../../../classpath/native/jni/native-lib/cpnet.c:612: error: too
many arguments to function 'gethostbyname_r'
make[3]: *** [cpnet.lo] Error 1
make[3]: Leaving directory
`/gsa/watgsa/.projects/p1/jikesrvm/classpath-32/classpath-0.93-generic/powerpc-ibm-aix5.3.0.0/native/jni/native-lib'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/gsa/watgsa/.projects/p1/jikesrvm/classpath-32/classpath-0.93-generic/powerpc-ibm-aix5.3.0.0/native/jni'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/gsa/watgsa/.projects/p1/jikesrvm/classpath-32/classpath-0.93-generic/powerpc-ibm-aix5.3.0.0/native'
make: *** [all-recursive] Error 1
$OpenBSD$
--- native/jni/native-lib/cpnet.c.orig Sun Sep 17 03:31:43 2006
+++ native/jni/native-lib/cpnet.c Sat Nov 4 20:44:03 2006
@@ -43,6 +43,13 @@ exception statement from your version. *
#include <unistd.h>
#include <errno.h>
#include <fcntl.h>
+
+#ifdef __OpenBSD__
+#define HAVE_SO_NOSIGPIPE
+#define SO_NOSIGPIPE 0
+#include <netinet/in_systm.h>
+#endif
+
#include <netinet/in.h>
#include <netinet/tcp.h>
#include <netdb.h>
$OpenBSD$
--- native/jni/native-lib/cpnet.h.orig Sat Nov 4 20:51:23 2006
+++ native/jni/native-lib/cpnet.h Sat Nov 4 20:52:00 2006
@@ -43,6 +43,9 @@ exception statement from your version. *
#include <string.h>
#include <sys/socket.h>
+#ifdef __OpenBSD__
+#include <netinet/in_systm.h>
+#endif
#include <netinet/in.h>
#include <netinet/ip.h>