Compile error building xf86-input-keyboard from current git

Mathieu Taillefumier mathieu.taillefumier at free.fr
Fri Jan 23 03:41:17 PST 2009


Hi,

I also have this problem and a little more digging in the code shows that:

1- XkbSetRulesDflts is defined in two different ways with one argument (in the file xkb/xkbInit.c) and 5 arguments in the proto definition. Fixing this is not problematic but I would like to know which definition I shall to take to modify the code (or just wait for the modifications to be done).
2- My guess is that the devs want to define XkbSetRulesDflts with one argument only but it means that the protos should be modified too.
3- this modification will break a couple of others things in the xserver source. A list of broken things dmx, xf86Config and Xi should be changed.

best

Mathieu


> Alan Coopersmith escribió:
>    
>> Alex Villací­s Lasso wrote:
>>
>>      
>>> Alan Coopersmith escribió:
>>>
>>>        
>>>> Alex Villací­s Lasso wrote:
>>>>
>>>>
>>>>          
>>>>> kbd.c:154: error: 'XKB_DFLT_RULES' undeclared here (not in a function)
>>>>>
>>>>> This is from a recent git pulled this morning. I am pulling the changes
>>>>> from the last few hours, in the hope this is fixed by compiling an
>>>>> updated proto somewhere.
>>>>>
>>>>>
>>>>>            
>>>> The xorg-server.h file installed by the Xorg server build should define
>>>> either __XKBDEFRULES__ (Xorg git prior to this week) or XKB_DFLT_RULES
>>>> (current Xorg git).   The kbd driver as of yesterday's git checkout
>>>> should be accepting either one:
>>>>
>>>> #if !defined(XKB_DFLT_RULES)&&  defined(__XKBDEFRULES__)
>>>> # define XKB_DFLT_RULES __XKBDEFRULES__
>>>> #endif
>>>>
>>>>
>>>>
>>>>          
>>> My build is not defining either. I am building with the
>>> util/modular/build.sh script included in the git tree.
>>>
>>> In the installation dir:
>>>
>>> [alex at srv64 xserver]$ grep -r __XKBDEFRULES__ include/
>>> include/xorg/xorg-server.h:/* #undef __XKBDEFRULES__ */
>>> [alex at srv64 xserver]$ grep -r XKB_DFLT_RULES include/
>>> [alex at srv64 xserver]$
>>>
>>>
>>> My xserver checkout is with current git master.
>>>
>>>        
>> I actually hadn't pushed the fix for that until shortly after sending
>> that message yesterday (oops!)  but git master now has:
>>
>> alanc at alf:/export/alanc/X.org/mod/git/xserver [9:02am - 218] grep
>> __XKBDEFRULES__ include/*
>> alanc at alf:/export/alanc/X.org/mod/git/xserver [9:02am - 219] grep XKB_DFLT_RULES
>> include/*
>> include/xkb-config.h.in:#undef XKB_DFLT_RULES
>> include/xorg-server.h.in:#undef XKB_DFLT_RULES
>>
>> If you don't see XKB_DFLT_RULES at all, you're several days behind
>> git master, or on a different branch than master.
>>
>>
>>      
> I updated xserver to current git. Now I am getting the same compile
> error in xserver itself as reported here:
>    
>> http://tinderbox.x.org/builds/2009-01-22-0007/logs/xserver/#build
>>
>> Keyboard.c: In function 'xnestKeyboardProc':
>> Keyboard.c:177: warning: passing argument 1 of 'XkbSetRulesDflts' from
>> incompatible pointer type
>> Keyboard.c:177: error: too many arguments to function 'XkbSetRulesDflts'
>> Keyboard.c:178: warning: implicit declaration of function 'XkbInitKeyboardDeviceStruct'
>> Keyboard.c:178: warning: nested extern declaration of 'XkbInitKeyboardDeviceStruct'
>> Keyboard.c:206: warning: passing argument 1 of 'InitKeyboardDeviceStruct' from incompatible pointer type
>> Keyboard.c:206: warning: passing argument 2 of 'InitKeyboardDeviceStruct' from incompatible pointer type5B
>> Keyboard.c:122: warning: unused variable 'j'
>> Keyboard.c:117: warning: unused variable 'modifier_keymap'
>> Keyboard.c: In function 'xnestUpdateModifierState':
>> Keyboard.c:227: error: 'struct _KeyClassRec' has no member named 'state'
>> Keyboard.c:235: error: 'struct _KeyClassRec' has no member named 'state'
>> Keyboard.c:256: error: 'struct _KeyClassRec' has no member named 'state'
>>
>> -- Chris Ball<cjb at laptop.org>
>> _______________________________________________ xorg mailing list
>> xorg at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/xorg
>>      
>
>
>    




More information about the xorg mailing list