>>>> "Karl" == Karl Pflästerer
<sigurd(a)12move.de> writes:
Karl> Hello, now we have a new version number but the problem with
Karl> recent cygwin and XEmacs:
Karl> lisp.h:801: conflicting types for `intptr_t'
Thanks for reminding me.
Please try this, it seems to do the right thing for me, but my Cygwin
system's configure.in is not at all vanilla. (Patch not in CVS yet,
IIRC FreeBSD had a similar issue and I'd like to see if this is that
right fix for that, too, before committing.)
Index: configure.in
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/configure.in,v
retrieving revision 1.195
diff -u -r1.195 configure.in
--- configure.in 24 Apr 2003 05:26:42 -0000 1.195
+++ configure.in 25 Apr 2003 06:18:46 -0000
@@ -2525,6 +2527,16 @@
AC_TYPE_OFF_T
AC_CHECK_TYPE(ssize_t, int)
+dnl not AC_CHECK_TYPE; lisp.h does hairy conditional typedef
+if test "$ac_cv_header_inttypes_h" != "yes"; then
+AC_MSG_CHECKING(for intptr_t in sys/types.h)
+AC_TRY_COMPILE([#include <sys/types.h>
+intptr_t x;
+],[],[AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_INTPTR_T_IN_SYS_TYPES_H,1)],
+ [AC_MSG_RESULT(no)])
+fi
+
dnl check for Unix98 socklen_t
AC_MSG_CHECKING(for socklen_t)
AC_TRY_COMPILE([#include <sys/types.h>
Index: src/config.h.in
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/config.h.in,v
retrieving revision 1.86
diff -u -r1.86 config.h.in
--- src/config.h.in 26 Mar 2003 04:22:49 -0000 1.86
+++ src/config.h.in 25 Apr 2003 06:18:46 -0000
@@ -892,6 +892,11 @@
#undef SIZEOF_LONG_LONG
#undef SIZEOF_VOID_P
+/* some systems (Cygwin) typedef u?intptr_t in <sys/types.h>
+ but the standard is <inttypes.h>
+ ugliness due to last-resort conditional typedef'ing in lisp.h */
+#undef HAVE_INTPTR_T_IN_SYS_TYPES_H
+
/* Does the keyword `inline' exist? */
#undef inline
Index: src/lisp.h
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/lisp.h,v
retrieving revision 1.100
diff -u -r1.100 lisp.h
--- src/lisp.h 24 Apr 2003 05:33:44 -0000 1.100
+++ src/lisp.h 25 Apr 2003 06:18:47 -0000
@@ -797,6 +797,8 @@
#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
+#elif defined(HAVE_INTPTR_T_IN_SYS_TYPES_H)
+/* included elsewhere */
#elif SIZEOF_VOID_P == SIZEOF_INT
typedef int intptr_t;
typedef unsigned int uintptr_t;
--
Institute of Policy and Planning Sciences
http://turnbull.sk.tsukuba.ac.jp
University of Tsukuba Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
Ask not how you can "do" free software business;
ask what your business can "do for" free software.