[PATCH libxkbcommon] Use yacc-generated header instead of tokens.h
Ran Benita
ran234 at gmail.com
Sat Feb 25 09:38:54 PST 2012
The yacc implementation can generate all the necessary token
definitions itself; there is no need to maintain a hand written
file for that.
Signed-off-by: Ran Benita <ran234 at gmail.com>
---
Resending this one as suggested by Gaetan Nadon. Should apply cleanly
after the other fix patches. Tested to work both with bison and byacc.
src/xkbcomp/.gitignore | 1 +
src/xkbcomp/Makefile.am | 4 +-
src/xkbcomp/tokens.h | 105 -----------------------------------------------
src/xkbcomp/xkbscan.l | 2 +-
4 files changed, 5 insertions(+), 107 deletions(-)
delete mode 100644 src/xkbcomp/tokens.h
diff --git a/src/xkbcomp/.gitignore b/src/xkbcomp/.gitignore
index f03a5af..f2976af 100644
--- a/src/xkbcomp/.gitignore
+++ b/src/xkbcomp/.gitignore
@@ -1,2 +1,3 @@
xkbparse.c
+xkbparse.h
xkbscan.c
diff --git a/src/xkbcomp/Makefile.am b/src/xkbcomp/Makefile.am
index ecee7d4..6176fb8 100644
--- a/src/xkbcomp/Makefile.am
+++ b/src/xkbcomp/Makefile.am
@@ -1,6 +1,7 @@
AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src
AM_CFLAGS = $(X11_CFLAGS) $(CWARNFLAGS) \
-DDFLT_XKB_CONFIG_ROOT='"$(XKBCONFIGROOT)"'
+AM_YFLAGS = -d
noinst_LTLIBRARIES = libxkbcomp.la
libxkbcomp_la_SOURCES = \
@@ -24,7 +25,6 @@ libxkbcomp_la_SOURCES = \
parseutils.c \
parseutils.h \
symbols.c \
- tokens.h \
utils.c \
utils.h \
vmod.c \
@@ -35,3 +35,5 @@ libxkbcomp_la_SOURCES = \
xkbpath.c \
xkbpath.h \
xkbscan.l
+
+BUILT_SOURCES = xkbparse.h
diff --git a/src/xkbcomp/tokens.h b/src/xkbcomp/tokens.h
deleted file mode 100644
index c936c01..0000000
--- a/src/xkbcomp/tokens.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/************************************************************
- Copyright (c) 1994 by Silicon Graphics Computer Systems, Inc.
-
- Permission to use, copy, modify, and distribute this
- software and its documentation for any purpose and without
- fee is hereby granted, provided that the above copyright
- notice appear in all copies and that both that copyright
- notice and this permission notice appear in supporting
- documentation, and that the name of Silicon Graphics not be
- used in advertising or publicity pertaining to distribution
- of the software without specific prior written permission.
- Silicon Graphics makes no representation about the suitability
- of this software for any purpose. It is provided "as is"
- without any express or implied warranty.
-
- SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
- SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
- GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
- DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
- THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
- ********************************************************/
-#ifndef TOKENS_H
-#define TOKENS_H 1
-
-#include <stdint.h>
-
-#define END_OF_FILE 0
-#define ERROR_TOK 255
-
-#define XKB_KEYMAP 1
-#define XKB_KEYCODES 2
-#define XKB_TYPES 3
-#define XKB_SYMBOLS 4
-#define XKB_COMPATMAP 5
-#define XKB_GEOMETRY 6
-#define XKB_SEMANTICS 7
-#define XKB_LAYOUT 8
-
-#define INCLUDE 10
-#define OVERRIDE 11
-#define AUGMENT 12
-#define REPLACE 13
-#define ALTERNATE 14
-
-#define VIRTUAL_MODS 20
-#define TYPE 21
-#define INTERPRET 22
-#define ACTION_TOK 23
-#define KEY 24
-#define ALIAS 25
-#define GROUP 26
-#define MODIFIER_MAP 27
-#define INDICATOR 28
-#define SHAPE 29
-#define KEYS 30
-#define ROW 31
-#define SECTION 32
-#define OVERLAY 33
-#define TEXT 34
-#define OUTLINE 35
-#define SOLID 36
-#define LOGO 37
-#define VIRTUAL 38
-
-#define EQUALS 40
-#define PLUS 41
-#define MINUS 42
-#define DIVIDE 43
-#define TIMES 44
-#define OBRACE 45
-#define CBRACE 46
-#define OPAREN 47
-#define CPAREN 48
-#define OBRACKET 49
-#define CBRACKET 50
-#define DOT 51
-#define COMMA 52
-#define SEMI 53
-#define EXCLAM 54
-#define INVERT 55
-
-#define STRING 60
-#define INTEGER 61
-#define FLOAT 62
-#define IDENT 63
-#define KEYNAME 64
-
-#define PARTIAL 70
-#define DEFAULT 71
-#define HIDDEN 72
-#define ALPHANUMERIC_KEYS 73
-#define MODIFIER_KEYS 74
-#define KEYPAD_KEYS 75
-#define FUNCTION_KEYS 76
-#define ALTERNATE_GROUP 77
-
-extern uint32_t tok_ONE_LEVEL;
-extern uint32_t tok_TWO_LEVEL;
-extern uint32_t tok_KEYPAD;
-
-#endif
diff --git a/src/xkbcomp/xkbscan.l b/src/xkbcomp/xkbscan.l
index 84fc200..adf03db 100644
--- a/src/xkbcomp/xkbscan.l
+++ b/src/xkbcomp/xkbscan.l
@@ -30,9 +30,9 @@
#include <ctype.h>
#include <X11/Xos.h>
-#include "tokens.h"
#include "utils.h"
#include "parseutils.h"
+#include "xkbparse.h"
char *scanFile = NULL;
int lineNum = 0;
--
1.7.9.2
More information about the xorg-devel
mailing list