xkbcommon-keysyms: Add header protection

As there is currently no stable release of xkbcommon, other projects might
want to include a copy of the keysyms so they can be used even though
libxkbcommon may not be available on the machine. However, if xkbcommon.h
is still included, conflicts will occur. Hence, to avoid nasty hacks,
simply include a header protection in xkbcommon upstream.

[daniels: Added protection to Makefile.am's update-keysyms, as well as
          XKB_KEY_NoSymbol, and a comment noting that it shouldn't be
          updated directly.]

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
master
David Herrmann 2012-09-11 16:49:04 +01:00 committed by Daniel Stone
parent e9405fa20d
commit 095a7f4cf0
2 changed files with 15 additions and 2 deletions

View File

@ -156,7 +156,11 @@ KEYSYMDEFS = \
$(X11_INCLUDEDIR)/DECkeysym.h \
$(X11_INCLUDEDIR)/HPkeysym.h
update-keysyms:
sed -e '/XK_Ydiaeresis\s*0x100000ee/d; /#define _/d; s/#define\s*\(\w*\)XK_/#define XKB_KEY_\1/; /\(#ifdef\|#ifndef\|#endif\)/d' $(KEYSYMDEFS) > xkbcommon/xkbcommon-keysyms.h
echo -en '#ifndef _XKBCOMMON_KEYSYMS_H\n#define _XKBCOMMON_KEYSYMS_H\n\n' > $(top_srcdir)/xkbcommon/xkbcommon-keysyms.h
echo -en '/* This file is autogenerated from Makefile.am; please do not commit directly. */\n\n' >> $(top_srcdir)/xkbcommon/xkbcommon-keysyms.h
echo -en '#define XKB_KEY_NoSymbol 0x000000 /* Special KeySym */\n\n' >> $(top_srcdir)/xkbcommon/xkbcommon-keysyms.h
sed -e '/XK_Ydiaeresis\s*0x100000ee/d; /#define _/d; s/#define\s*\(\w*\)XK_/#define XKB_KEY_\1/; /\(#ifdef\|#ifndef\|#endif\)/d' $(KEYSYMDEFS) >> $(top_srcdir)/xkbcommon/xkbcommon-keysyms.h
echo -en '\n\n#endif\n' >> $(top_srcdir)/xkbcommon/xkbcommon-keysyms.h
# Android stuff

View File

@ -1,3 +1,10 @@
#ifndef _XKBCOMMON_KEYSYMS_H
#define _XKBCOMMON_KEYSYMS_H
/* This file is autogenerated from Makefile.am; please do not commit directly. */
#define XKB_KEY_NoSymbol 0x000000 /* Special KeySym */
/***********************************************************
Copyright 1987, 1994, 1998 The Open Group
@ -112,7 +119,6 @@ SOFTWARE.
*
*/
#define XKB_KEY_NoSymbol 0x000000 /* Special KeySym */
#define XKB_KEY_VoidSymbol 0xffffff /* Void symbol */
/*
@ -2993,3 +2999,6 @@ performance, or use of this material.
#define XKB_KEY_longminus 0x100000f6
#define XKB_KEY_block 0x100000fc
#endif