Hi,
On Wed, Feb 10, 2010 at 5:27 PM, Jakub Jelinek jakub@redhat.com wrote:
On Wed, Feb 10, 2010 at 08:42:53PM +0900, Mamoru Tasaka wrote:
Parag N(पराग़) wrote, at 02/10/2010 02:58 AM +9:00:
On Tue, Feb 9, 2010 at 11:18 PM, Jakub Jelinek jakub@redhat.com wrote:
On Tue, Feb 09, 2010 at 11:09:50PM +0530, Parag N(पराग़) wrote:
Anyway I find adding missing DSO to CFLAGS in SPEC is easy solution for now.
They don't belong to CFLAGS, those are flags for compilation. You want LDFLAGS or even better add it in configure to LIBS.
I am not sure then what's wrong with my package. Here is how it failed http://koji.fedoraproject.org/koji/getfile?taskID=1970866&name=build.log
This build.log says:
/usr/bin/ld: keyevent.o: undefined reference to symbol 'XKeysymToString' /usr/bin/ld: note: 'XKeysymToString' is defined in DSO /usr/lib/libX11.so.6 so try adding it to the linker command line /usr/lib/libX11.so.6: could not read symbols: Invalid operation collect2: ld returned 1 exit status
And actually src/keyevent.c reads:
275 if (key_disable_overwrite) { 276 key_event->keycode = -1; 277 key_event->keysym = 0; 278 g_print("Not allowed to overwrite KeyCode for %s", 279 XKeysymToString(keysym)); 280 return; 281 }
You should add "AC_CHECK_LIB(X11, XKeysymToString)" to configure.in, for example.
BTW, while you touch this package, it would be useful to fix up all the warnings, I can't believe doing e.g. strcmp on an array of wchar_t can be right. It seems with the exception of one wmemset only strcpy/strcmp etc. are used on keyvalue, so probably keyvalue just should be char array instead of wchar_t, but you'll need to figure out the right size. E.g. having [1] sized keyname can't be right when you copy in 1 char long strings and use strcmp on it afterwards.
Thanks Mamoru and Jakub for your feedback. I will get that code updated soon.
Regards, Parag.