Rob Lahaye wrote:
>
>
> Hi,
>
> I have upgraded my OS (FreeBSD 4.7 to 4.8) and I think I have installed
> all necessary
> components, including X11 libraries/includes (XFree86 version 4.3.0).
> When I build OpenDX-CVS, all goes well until the make ends with:
>
> [...]
> gcc -DHAVE_CONFIG_H -I. -I. -I../../../include -I../../../include
> -I./../widgets -Dfreebsd -I/usr/X11R6/include -g -O2
> -I/usr/X11R6/include -D_GNU_SOURCE -c ` test -f Number.c
> || echo './'`Number.c
> Number.c: In function `SelfInsert':
> Number.c:694: `XK_ISO_Lock' undeclared (first use in this function)
> Number.c:694: (Each undeclared identifier is reported only once
> Number.c:694: for each function it appears in.)
> Number.c:694: `XK_ISO_Last_Group_Lock' undeclared (first use in this
> function)
> gmake[3]: *** [Number.o] Error 1
>
>
> However, when I add
> #include <X11/keysym.h>
> to Number.c, the problem is solved.
>
> Is this an X11-problem, or an OpenDX problem?
I already found some evidence why this error appears all of a sudden:
see below for a diffing of Xutil.h between XFree86 versions 4.2 and 4.3.
However, when I browsed over related topics in the XFree mailing lists,
I always found that Xutil.h is always accompanied by the keysym.h include
as follows:
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/keysym.h>
This is obviously not happening in OpenDX, or is it?
Since I'm not at all an expert on this, I hope someone may know better
what is going wrong here.
Regards,
Rob.
Xutil.h diff between 4.2 and 4.3 version of XFree86:
<DIFF>
--- /tmp/Xutil.h Wed Apr 9 19:52:52 2003
+++ /usr/X11R6/include/X11/Xutil.h Sat Apr 5 22:35:04 2003
@@ -46,7 +46,7 @@
SOFTWARE.
******************************************************************/
-/* $XFree86: xc/lib/X11/Xutil.h,v 3.4 2001/12/14 19:54:10 dawes Exp $ */
+/* $XFree86: xc/lib/X11/Xutil.h,v 3.5 2003/01/26 02:40:10 dawes Exp $ */
#ifndef _XUTIL_H_
#define _XUTIL_H_
@@ -230,6 +230,8 @@
#define IsModifierKey(keysym) \
((((KeySym)(keysym) >= XK_Shift_L) && ((KeySym)(keysym) <= XK_Hyper_R)) \
+ || (((KeySym)(keysym) >= XK_ISO_Lock) && \
+ ((KeySym)(keysym) <= XK_ISO_Last_Group_Lock)) \
|| ((KeySym)(keysym) == XK_Mode_switch) \
|| ((KeySym)(keysym) == XK_Num_Lock))
/*
</DIFF>