Fix bison 2.6 and clang warnings

Signed-off-by: Ran Benita <ran234@gmail.com>
build: drop the include/ directory

The include/ dir is somewhat redundant and makes it just a bit harder to
handle the -I directives from out side of automake; without it the
default $(top_buildir) just works.
Here's also some further justifications I found:
http://smcv.pseudorandom.co.uk/2008/09/pc-uninstalled/

Signed-off-by: Ran Benita <ran234@gmail.com>
utils: remove uTypedAlloc/Calloc

Signed-off-by: Ran Benita <ran234@gmail.com>
utils: remove Xfuncproto.h and use our own macros

Add XKB_EXPORT to replace _X_EXPORT, and copy the definitions of
_X_ATTRIBUTE_FOO as ATTR_FOO.

Signed-off-by: Ran Benita <ran234@gmail.com>
utils: replace FATAL by malloc_or_die

"Out of memory" is enough in this case. If we want to be OOM-safe this
makes it clear where to begin.

Signed-off-by: Ran Benita <ran234@gmail.com>
Add logging API

Add new public API to provide the library users with some options to
control and customize the logging output from the library. It is based
upon the skeleton from the libabc demo libray:
https://git.kernel.org/?p=linux/kernel/git/kay/libabc.git
which is public domain and works pretty well.

This requires passing in the context object in every logging call, and
thus the conversion is done file by file. We also remove the global
warningLevel variable in favor of a verbosity level in the context,
which can be set by the user and is silent by default.

One issue is the ACTION calls, which, while nice, do not play very well
with line- and priority-based logging, and would require some
line continuation handling or keeping state or some other compromise. So
instead remove these and just inline them with their respective
warning/error. So instead of:
    ERROR("Memory allocation failed\n")
    ACTION("Removing all files on hardisk\n")
its something like that:
    log_err("Memory allocation failed; Removing all files on harddisk\n")

Signed-off-by: Ran Benita <ran234@gmail.com>
keycodes: add keymap to KeyNamesInfo

and let the info always be the first argument to the various functions,
just for consistency (and it acting as the contex for this file).

Signed-off-by: Ran Benita <ran234@gmail.com>
keycodes: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>
symbols: add keymap to SymbolsInfo

and use it. Also make sure info is the first argument to the functions
in this file.

Signed-off-by: Ran Benita <ran234@gmail.com>
symbols: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>
compat: add keymap to CompatInfo

Signed-off-by: Ran Benita <ran234@gmail.com>
compat: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>
types: add keymap to KeyTypesInfo

Signed-off-by: Ran Benita <ran234@gmail.com>
types: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>
action: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>
expr: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>
rules: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>
vmod: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>
misc: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>
path: use new log functions

Signed-off-by: Ran Benita <ran234@gmail.com>