summaryrefslogtreecommitdiffstats
path: root/abs/core-testing/xf86-input-keyboard/new-server.patch
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core-testing/xf86-input-keyboard/new-server.patch')
-rw-r--r--abs/core-testing/xf86-input-keyboard/new-server.patch5087
1 files changed, 0 insertions, 5087 deletions
diff --git a/abs/core-testing/xf86-input-keyboard/new-server.patch b/abs/core-testing/xf86-input-keyboard/new-server.patch
deleted file mode 100644
index 0d50466..0000000
--- a/abs/core-testing/xf86-input-keyboard/new-server.patch
+++ /dev/null
@@ -1,5087 +0,0 @@
-diff -ruN xf86-input-keyboard-1.2.0/Makefile.in xf86-input-keyboard/Makefile.in
---- xf86-input-keyboard-1.2.0/Makefile.in 2006-11-01 22:19:32.000000000 +0000
-+++ xf86-input-keyboard/Makefile.in 2007-09-03 10:36:18.000000000 +0000
-@@ -1,8 +1,8 @@
--# Makefile.in generated by automake 1.9.6 from Makefile.am.
-+# Makefile.in generated by automake 1.10 from Makefile.am.
- # @configure_input@
-
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
--# 2003, 2004, 2005 Free Software Foundation, Inc.
-+# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -33,15 +33,11 @@
- # ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
- # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--srcdir = @srcdir@
--top_srcdir = @top_srcdir@
- VPATH = @srcdir@
- pkgdatadir = $(datadir)/@PACKAGE@
- pkglibdir = $(libdir)/@PACKAGE@
- pkgincludedir = $(includedir)/@PACKAGE@
--top_builddir = .
- am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
--INSTALL = @INSTALL@
- install_sh_DATA = $(install_sh) -c -m 644
- install_sh_PROGRAM = $(install_sh) -c
- install_sh_SCRIPT = $(install_sh) -c
-@@ -55,17 +51,17 @@
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
-+subdir = .
- DIST_COMMON = $(am__configure_deps) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/config.h.in \
- $(top_srcdir)/configure COPYING ChangeLog config.guess \
- config.sub depcomp install-sh ltmain.sh missing
--subdir = .
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- am__aclocal_m4_deps = $(top_srcdir)/configure.ac
- am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
- am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
-- configure.lineno configure.status.lineno
-+ configure.lineno config.status.lineno
- mkinstalldirs = $(install_sh) -d
- CONFIG_HEADER = config.h
- CONFIG_CLEAN_FILES =
-@@ -73,10 +69,13 @@
- DIST_SOURCES =
- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- html-recursive info-recursive install-data-recursive \
-- install-exec-recursive install-info-recursive \
-- install-recursive installcheck-recursive installdirs-recursive \
-- pdf-recursive ps-recursive uninstall-info-recursive \
-- uninstall-recursive
-+ install-dvi-recursive install-exec-recursive \
-+ install-html-recursive install-info-recursive \
-+ install-pdf-recursive install-ps-recursive install-recursive \
-+ installcheck-recursive installdirs-recursive pdf-recursive \
-+ ps-recursive uninstall-recursive
-+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
-+ distclean-recursive maintainer-clean-recursive
- ETAGS = etags
- CTAGS = ctags
- DIST_SUBDIRS = $(SUBDIRS)
-@@ -94,8 +93,6 @@
- ACLOCAL = @ACLOCAL@
- ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
- ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
--AMDEP_FALSE = @AMDEP_FALSE@
--AMDEP_TRUE = @AMDEP_TRUE@
- AMTAR = @AMTAR@
- APP_MAN_DIR = @APP_MAN_DIR@
- APP_MAN_SUFFIX = @APP_MAN_SUFFIX@
-@@ -104,8 +101,6 @@
- AUTOHEADER = @AUTOHEADER@
- AUTOMAKE = @AUTOMAKE@
- AWK = @AWK@
--BSD_FALSE = @BSD_FALSE@
--BSD_TRUE = @BSD_TRUE@
- CC = @CC@
- CCDEPMODE = @CCDEPMODE@
- CFLAGS = @CFLAGS@
-@@ -132,8 +127,7 @@
- FILE_MAN_DIR = @FILE_MAN_DIR@
- FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
- GREP = @GREP@
--HURD_FALSE = @HURD_FALSE@
--HURD_TRUE = @HURD_TRUE@
-+INSTALL = @INSTALL@
- INSTALL_DATA = @INSTALL_DATA@
- INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
-@@ -144,16 +138,13 @@
- LIBTOOL = @LIBTOOL@
- LIB_MAN_DIR = @LIB_MAN_DIR@
- LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
--LINUX_FALSE = @LINUX_FALSE@
--LINUX_TRUE = @LINUX_TRUE@
- LN_S = @LN_S@
- LTLIBOBJS = @LTLIBOBJS@
- MAINT = @MAINT@
--MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
--MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
- MAKEINFO = @MAKEINFO@
- MISC_MAN_DIR = @MISC_MAN_DIR@
- MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
-+MKDIR_P = @MKDIR_P@
- OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-@@ -164,23 +155,20 @@
- PATH_SEPARATOR = @PATH_SEPARATOR@
- PKG_CONFIG = @PKG_CONFIG@
- RANLIB = @RANLIB@
--SCO_FALSE = @SCO_FALSE@
--SCO_TRUE = @SCO_TRUE@
-+SED = @SED@
- SET_MAKE = @SET_MAKE@
- SHELL = @SHELL@
--SOLARIS_FALSE = @SOLARIS_FALSE@
--SOLARIS_TRUE = @SOLARIS_TRUE@
- STRIP = @STRIP@
- VERSION = @VERSION@
- XORG_CFLAGS = @XORG_CFLAGS@
- XORG_LIBS = @XORG_LIBS@
-+abs_builddir = @abs_builddir@
-+abs_srcdir = @abs_srcdir@
-+abs_top_builddir = @abs_top_builddir@
-+abs_top_srcdir = @abs_top_srcdir@
- ac_ct_CC = @ac_ct_CC@
- ac_ct_CXX = @ac_ct_CXX@
- ac_ct_F77 = @ac_ct_F77@
--am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
--am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
--am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
--am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
- am__include = @am__include@
- am__leading_dot = @am__leading_dot@
- am__quote = @am__quote@
-@@ -192,6 +180,7 @@
- build_cpu = @build_cpu@
- build_os = @build_os@
- build_vendor = @build_vendor@
-+builddir = @builddir@
- datadir = @datadir@
- datarootdir = @datarootdir@
- docdir = @docdir@
-@@ -220,8 +209,11 @@
- psdir = @psdir@
- sbindir = @sbindir@
- sharedstatedir = @sharedstatedir@
-+srcdir = @srcdir@
- sysconfdir = @sysconfdir@
- target_alias = @target_alias@
-+top_builddir = @top_builddir@
-+top_srcdir = @top_srcdir@
- AUTOMAKE_OPTIONS = foreign
- SUBDIRS = src man
- all: config.h
-@@ -265,7 +257,7 @@
- config.h: stamp-h1
- @if test ! -f $@; then \
- rm -f stamp-h1; \
-- $(MAKE) stamp-h1; \
-+ $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
- else :; fi
-
- stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
-@@ -287,7 +279,6 @@
-
- distclean-libtool:
- -rm -f libtool
--uninstall-info-am:
-
- # This directory's subdirectories are mostly independent; you can cd
- # into them and run `make' without going through this Makefile.
-@@ -320,8 +311,7 @@
- $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
- fi; test -z "$$fail"
-
--mostlyclean-recursive clean-recursive distclean-recursive \
--maintainer-clean-recursive:
-+$(RECURSIVE_CLEAN_TARGETS):
- @failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
-@@ -423,23 +413,22 @@
-
- distdir: $(DISTFILES)
- $(am__remove_distdir)
-- mkdir $(distdir)
-- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
-- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
-- list='$(DISTFILES)'; for file in $$list; do \
-- case $$file in \
-- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
-- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
-- esac; \
-+ test -d $(distdir) || mkdir $(distdir)
-+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-+ list='$(DISTFILES)'; \
-+ dist_files=`for file in $$list; do echo $$file; done | \
-+ sed -e "s|^$$srcdirstrip/||;t" \
-+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
-+ case $$dist_files in \
-+ */*) $(MKDIR_P) `echo "$$dist_files" | \
-+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
-+ sort -u` ;; \
-+ esac; \
-+ for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
-- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
-- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
-- dir="/$$dir"; \
-- $(mkdir_p) "$(distdir)$$dir"; \
-- else \
-- dir=''; \
-- fi; \
- if test -d $$d/$$file; then \
-+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
-@@ -453,7 +442,7 @@
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
-- || $(mkdir_p) "$(distdir)/$$subdir" \
-+ || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- distdir=`$(am__cd) $(distdir) && pwd`; \
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-@@ -461,6 +450,8 @@
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$top_distdir" \
- distdir="$$distdir/$$subdir" \
-+ am__remove_distdir=: \
-+ am__skip_length_check=: \
- distdir) \
- || exit 1; \
- fi; \
-@@ -468,7 +459,7 @@
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
-- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
-+ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
- dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-@@ -543,7 +534,7 @@
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
-- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-+ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
- distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
-@@ -613,12 +604,20 @@
-
- install-data-am:
-
-+install-dvi: install-dvi-recursive
-+
- install-exec-am:
-
-+install-html: install-html-recursive
-+
- install-info: install-info-recursive
-
- install-man:
-
-+install-pdf: install-pdf-recursive
-+
-+install-ps: install-ps-recursive
-+
- installcheck-am:
-
- maintainer-clean: maintainer-clean-recursive
-@@ -639,24 +638,26 @@
-
- ps-am:
-
--uninstall-am: uninstall-info-am
-+uninstall-am:
-
--uninstall-info: uninstall-info-recursive
-+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-+ install-strip
-
--.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \
-- check-am clean clean-generic clean-libtool clean-recursive \
-- ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \
-- dist-shar dist-tarZ dist-zip distcheck distclean \
-+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-+ all all-am am--refresh check check-am clean clean-generic \
-+ clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
-+ dist-gzip dist-shar dist-tarZ dist-zip distcheck distclean \
- distclean-generic distclean-hdr distclean-libtool \
-- distclean-recursive distclean-tags distcleancheck distdir \
-- distuninstallcheck dvi dvi-am html html-am info info-am \
-- install install-am install-data install-data-am install-exec \
-- install-exec-am install-info install-info-am install-man \
-- install-strip installcheck installcheck-am installdirs \
-- installdirs-am maintainer-clean maintainer-clean-generic \
-- maintainer-clean-recursive mostlyclean mostlyclean-generic \
-- mostlyclean-libtool mostlyclean-recursive pdf pdf-am ps ps-am \
-- tags tags-recursive uninstall uninstall-am uninstall-info-am
-+ distclean-tags distcleancheck distdir distuninstallcheck dvi \
-+ dvi-am html html-am info info-am install install-am \
-+ install-data install-data-am install-dvi install-dvi-am \
-+ install-exec install-exec-am install-html install-html-am \
-+ install-info install-info-am install-man install-pdf \
-+ install-pdf-am install-ps install-ps-am install-strip \
-+ installcheck installcheck-am installdirs installdirs-am \
-+ maintainer-clean maintainer-clean-generic mostlyclean \
-+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-+ tags tags-recursive uninstall uninstall-am
-
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
-diff -ruN xf86-input-keyboard-1.2.0/configure.ac xf86-input-keyboard/configure.ac
---- xf86-input-keyboard-1.2.0/configure.ac 2006-11-01 22:16:54.000000000 +0000
-+++ xf86-input-keyboard/configure.ac 2007-09-03 10:34:00.000000000 +0000
-@@ -22,7 +22,7 @@
-
- AC_PREREQ(2.57)
- AC_INIT([xf86-input-keyboard],
-- 1.2.0,
-+ 1.2.1,
- [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
- xf86-input-keyboard)
-
-diff -ruN xf86-input-keyboard-1.2.0/depcomp xf86-input-keyboard/depcomp
---- xf86-input-keyboard-1.2.0/depcomp 2006-11-01 22:19:31.000000000 +0000
-+++ xf86-input-keyboard/depcomp 2007-09-03 10:36:18.000000000 +0000
-@@ -1,9 +1,10 @@
- #! /bin/sh
- # depcomp - compile a program generating dependencies as side-effects
-
--scriptversion=2005-07-09.11
-+scriptversion=2006-10-15.18
-
--# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
-+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006 Free Software
-+# Foundation, Inc.
-
- # This program is free software; you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
-@@ -91,7 +92,20 @@
- ## gcc 3 implements dependency tracking that does exactly what
- ## we want. Yay! Note: for some reason libtool 1.4 doesn't like
- ## it if -MD -MP comes after the -MF stuff. Hmm.
-- "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
-+## Unfortunately, FreeBSD c89 acceptance of flags depends upon
-+## the command line argument order; so add the flags where they
-+## appear in depend2.am. Note that the slowdown incurred here
-+## affects only configure: in makefiles, %FASTDEP% shortcuts this.
-+ for arg
-+ do
-+ case $arg in
-+ -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
-+ *) set fnord "$@" "$arg" ;;
-+ esac
-+ shift # fnord
-+ shift # $arg
-+ done
-+ "$@"
- stat=$?
- if test $stat -eq 0; then :
- else
-@@ -276,6 +290,46 @@
- rm -f "$tmpdepfile"
- ;;
-
-+hp2)
-+ # The "hp" stanza above does not work with aCC (C++) and HP's ia64
-+ # compilers, which have integrated preprocessors. The correct option
-+ # to use with these is +Maked; it writes dependencies to a file named
-+ # 'foo.d', which lands next to the object file, wherever that
-+ # happens to be.
-+ # Much of this is similar to the tru64 case; see comments there.
-+ dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-+ test "x$dir" = "x$object" && dir=
-+ base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-+ if test "$libtool" = yes; then
-+ tmpdepfile1=$dir$base.d
-+ tmpdepfile2=$dir.libs/$base.d
-+ "$@" -Wc,+Maked
-+ else
-+ tmpdepfile1=$dir$base.d
-+ tmpdepfile2=$dir$base.d
-+ "$@" +Maked
-+ fi
-+ stat=$?
-+ if test $stat -eq 0; then :
-+ else
-+ rm -f "$tmpdepfile1" "$tmpdepfile2"
-+ exit $stat
-+ fi
-+
-+ for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
-+ do
-+ test -f "$tmpdepfile" && break
-+ done
-+ if test -f "$tmpdepfile"; then
-+ sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
-+ # Add `dependent.h:' lines.
-+ sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
-+ else
-+ echo "#dummy" > "$depfile"
-+ fi
-+ rm -f "$tmpdepfile" "$tmpdepfile2"
-+ ;;
-+
- tru64)
- # The Tru64 compiler uses -MD to generate dependencies as a side
- # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
-@@ -288,13 +342,13 @@
-
- if test "$libtool" = yes; then
- # With Tru64 cc, shared objects can also be used to make a
-- # static library. This mecanism is used in libtool 1.4 series to
-+ # static library. This mechanism is used in libtool 1.4 series to
- # handle both shared and static libraries in a single compilation.
- # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
- #
- # With libtool 1.5 this exception was removed, and libtool now
- # generates 2 separate objects for the 2 libraries. These two
-- # compilations output dependencies in in $dir.libs/$base.o.d and
-+ # compilations output dependencies in $dir.libs/$base.o.d and
- # in $dir$base.o.d. We have to check for both files, because
- # one of the two compilations can be disabled. We should prefer
- # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
-diff -ruN xf86-input-keyboard-1.2.0/install-sh xf86-input-keyboard/install-sh
---- xf86-input-keyboard-1.2.0/install-sh 2006-11-01 22:19:31.000000000 +0000
-+++ xf86-input-keyboard/install-sh 2007-09-03 10:36:18.000000000 +0000
-@@ -1,7 +1,7 @@
- #!/bin/sh
- # install - install a program, script, or datafile
-
--scriptversion=2005-05-14.22
-+scriptversion=2006-10-14.15
-
- # This originates from X11R5 (mit/util/scripts/install.sh), which was
- # later released in X11R6 (xc/config/util/install.sh) with the
-@@ -39,15 +39,24 @@
- # when there is no Makefile.
- #
- # This script is compatible with the BSD install script, but was written
--# from scratch. It can only install one file at a time, a restriction
--# shared with many OS's install programs.
-+# from scratch.
-+
-+nl='
-+'
-+IFS=" "" $nl"
-
- # set DOITPROG to echo to test this script
-
- # Don't use :- since 4.3BSD and earlier shells don't like it.
- doit="${DOITPROG-}"
-+if test -z "$doit"; then
-+ doit_exec=exec
-+else
-+ doit_exec=$doit
-+fi
-
--# put in absolute paths if you don't have them in your path; or use env. vars.
-+# Put in absolute file names if you don't have them in your path;
-+# or use environment vars.
-
- mvprog="${MVPROG-mv}"
- cpprog="${CPPROG-cp}"
-@@ -58,7 +67,13 @@
- rmprog="${RMPROG-rm}"
- mkdirprog="${MKDIRPROG-mkdir}"
-
--chmodcmd="$chmodprog 0755"
-+posix_glob=
-+posix_mkdir=
-+
-+# Desired mode of installed file.
-+mode=0755
-+
-+chmodcmd=$chmodprog
- chowncmd=
- chgrpcmd=
- stripcmd=
-@@ -95,7 +110,7 @@
- CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
- "
-
--while test -n "$1"; do
-+while test $# -ne 0; do
- case $1 in
- -c) shift
- continue;;
-@@ -111,9 +126,15 @@
-
- --help) echo "$usage"; exit $?;;
-
-- -m) chmodcmd="$chmodprog $2"
-+ -m) mode=$2
- shift
- shift
-+ case $mode in
-+ *' '* | *' '* | *'
-+'* | *'*'* | *'?'* | *'['*)
-+ echo "$0: invalid mode: $mode" >&2
-+ exit 1;;
-+ esac
- continue;;
-
- -o) chowncmd="$chownprog $2"
-@@ -136,25 +157,33 @@
-
- --version) echo "$0 $scriptversion"; exit $?;;
-
-- *) # When -d is used, all remaining arguments are directories to create.
-- # When -t is used, the destination is already specified.
-- test -n "$dir_arg$dstarg" && break
-- # Otherwise, the last argument is the destination. Remove it from $@.
-- for arg
-- do
-- if test -n "$dstarg"; then
-- # $@ is not empty: it contains at least $arg.
-- set fnord "$@" "$dstarg"
-- shift # fnord
-- fi
-- shift # arg
-- dstarg=$arg
-- done
-+ --) shift
- break;;
-+
-+ -*) echo "$0: invalid option: $1" >&2
-+ exit 1;;
-+
-+ *) break;;
- esac
- done
-
--if test -z "$1"; then
-+if test $# -ne 0 && test -z "$dir_arg$dstarg"; then
-+ # When -d is used, all remaining arguments are directories to create.
-+ # When -t is used, the destination is already specified.
-+ # Otherwise, the last argument is the destination. Remove it from $@.
-+ for arg
-+ do
-+ if test -n "$dstarg"; then
-+ # $@ is not empty: it contains at least $arg.
-+ set fnord "$@" "$dstarg"
-+ shift # fnord
-+ fi
-+ shift # arg
-+ dstarg=$arg
-+ done
-+fi
-+
-+if test $# -eq 0; then
- if test -z "$dir_arg"; then
- echo "$0: no input file specified." >&2
- exit 1
-@@ -164,6 +193,33 @@
- exit 0
- fi
-
-+if test -z "$dir_arg"; then
-+ trap '(exit $?); exit' 1 2 13 15
-+
-+ # Set umask so as not to create temps with too-generous modes.
-+ # However, 'strip' requires both read and write access to temps.
-+ case $mode in
-+ # Optimize common cases.
-+ *644) cp_umask=133;;
-+ *755) cp_umask=22;;
-+
-+ *[0-7])
-+ if test -z "$stripcmd"; then
-+ u_plus_rw=
-+ else
-+ u_plus_rw='% 200'
-+ fi
-+ cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
-+ *)
-+ if test -z "$stripcmd"; then
-+ u_plus_rw=
-+ else
-+ u_plus_rw=,u+rw
-+ fi
-+ cp_umask=$mode$u_plus_rw;;
-+ esac
-+fi
-+
- for src
- do
- # Protect names starting with `-'.
-@@ -173,15 +229,11 @@
-
- if test -n "$dir_arg"; then
- dst=$src
-- src=
--
-- if test -d "$dst"; then
-- mkdircmd=:
-- chmodcmd=
-- else
-- mkdircmd=$mkdirprog
-- fi
-+ dstdir=$dst
-+ test -d "$dstdir"
-+ dstdir_status=$?
- else
-+
- # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
- # might cause directories to be created, which would be especially bad
- # if $src (and thus $dsttmp) contains '*'.
-@@ -208,53 +260,188 @@
- echo "$0: $dstarg: Is a directory" >&2
- exit 1
- fi
-- dst=$dst/`basename "$src"`
-+ dstdir=$dst
-+ dst=$dstdir/`basename "$src"`
-+ dstdir_status=0
-+ else
-+ # Prefer dirname, but fall back on a substitute if dirname fails.
-+ dstdir=`
-+ (dirname "$dst") 2>/dev/null ||
-+ expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-+ X"$dst" : 'X\(//\)[^/]' \| \
-+ X"$dst" : 'X\(//\)$' \| \
-+ X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
-+ echo X"$dst" |
-+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-+ s//\1/
-+ q
-+ }
-+ /^X\(\/\/\)[^/].*/{
-+ s//\1/
-+ q
-+ }
-+ /^X\(\/\/\)$/{
-+ s//\1/
-+ q
-+ }
-+ /^X\(\/\).*/{
-+ s//\1/
-+ q
-+ }
-+ s/.*/./; q'
-+ `
-+
-+ test -d "$dstdir"
-+ dstdir_status=$?
- fi
- fi
-
-- # This sed command emulates the dirname command.
-- dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
--
-- # Make sure that the destination directory exists.
-+ obsolete_mkdir_used=false
-
-- # Skip lots of stat calls in the usual case.
-- if test ! -d "$dstdir"; then
-- defaultIFS='
-- '
-- IFS="${IFS-$defaultIFS}"
--
-- oIFS=$IFS
-- # Some sh's can't handle IFS=/ for some reason.
-- IFS='%'
-- set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
-- shift
-- IFS=$oIFS
-+ if test $dstdir_status != 0; then
-+ case $posix_mkdir in
-+ '')
-+ # Create intermediate dirs using mode 755 as modified by the umask.
-+ # This is like FreeBSD 'install' as of 1997-10-28.
-+ umask=`umask`
-+ case $stripcmd.$umask in
-+ # Optimize common cases.
-+ *[2367][2367]) mkdir_umask=$umask;;
-+ .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-+
-+ *[0-7])
-+ mkdir_umask=`expr $umask + 22 \
-+ - $umask % 100 % 40 + $umask % 20 \
-+ - $umask % 10 % 4 + $umask % 2
-+ `;;
-+ *) mkdir_umask=$umask,go-w;;
-+ esac
-+
-+ # With -d, create the new directory with the user-specified mode.
-+ # Otherwise, rely on $mkdir_umask.
-+ if test -n "$dir_arg"; then
-+ mkdir_mode=-m$mode
-+ else
-+ mkdir_mode=
-+ fi
-+
-+ posix_mkdir=false
-+ case $umask in
-+ *[123567][0-7][0-7])
-+ # POSIX mkdir -p sets u+wx bits regardless of umask, which
-+ # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
-+ ;;
-+ *)
-+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-+ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-+
-+ if (umask $mkdir_umask &&
-+ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
-+ then
-+ if test -z "$dir_arg" || {
-+ # Check for POSIX incompatibilities with -m.
-+ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
-+ # other-writeable bit of parent directory when it shouldn't.
-+ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
-+ ls_ld_tmpdir=`ls -ld "$tmpdir"`
-+ case $ls_ld_tmpdir in
-+ d????-?r-*) different_mode=700;;
-+ d????-?--*) different_mode=755;;
-+ *) false;;
-+ esac &&
-+ $mkdirprog -m$different_mode -p -- "$tmpdir" && {
-+ ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
-+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
-+ }
-+ }
-+ then posix_mkdir=:
-+ fi
-+ rmdir "$tmpdir/d" "$tmpdir"
-+ else
-+ # Remove any dirs left behind by ancient mkdir implementations.
-+ rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
-+ fi
-+ trap '' 0;;
-+ esac;;
-+ esac
-
-- pathcomp=
-+ if
-+ $posix_mkdir && (
-+ umask $mkdir_umask &&
-+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
-+ )
-+ then :
-+ else
-
-- while test $# -ne 0 ; do
-- pathcomp=$pathcomp$1
-+ # The umask is ridiculous, or mkdir does not conform to POSIX,
-+ # or it failed possibly due to a race condition. Create the
-+ # directory the slow way, step by step, checking for races as we go.
-+
-+ case $dstdir in
-+ /*) prefix=/ ;;
-+ -*) prefix=./ ;;
-+ *) prefix= ;;
-+ esac
-+
-+ case $posix_glob in
-+ '')
-+ if (set -f) 2>/dev/null; then
-+ posix_glob=true
-+ else
-+ posix_glob=false
-+ fi ;;
-+ esac
-+
-+ oIFS=$IFS
-+ IFS=/
-+ $posix_glob && set -f
-+ set fnord $dstdir
- shift
-- if test ! -d "$pathcomp"; then
-- $mkdirprog "$pathcomp"
-- # mkdir can fail with a `File exist' error in case several
-- # install-sh are creating the directory concurrently. This
-- # is OK.
-- test -d "$pathcomp" || exit
-+ $posix_glob && set +f
-+ IFS=$oIFS
-+
-+ prefixes=
-+
-+ for d
-+ do
-+ test -z "$d" && continue
-+
-+ prefix=$prefix$d
-+ if test -d "$prefix"; then
-+ prefixes=
-+ else
-+ if $posix_mkdir; then
-+ (umask=$mkdir_umask &&
-+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
-+ # Don't fail if two instances are running concurrently.
-+ test -d "$prefix" || exit 1
-+ else
-+ case $prefix in
-+ *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
-+ *) qprefix=$prefix;;
-+ esac
-+ prefixes="$prefixes '$qprefix'"
-+ fi
-+ fi
-+ prefix=$prefix/
-+ done
-+
-+ if test -n "$prefixes"; then
-+ # Don't fail if two instances are running concurrently.
-+ (umask $mkdir_umask &&
-+ eval "\$doit_exec \$mkdirprog $prefixes") ||
-+ test -d "$dstdir" || exit 1
-+ obsolete_mkdir_used=true
- fi
-- pathcomp=$pathcomp/
-- done
-+ fi
- fi
-
- if test -n "$dir_arg"; then
-- $doit $mkdircmd "$dst" \
-- && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
-- && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
-- && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
-- && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
--
-+ { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
-+ { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
-+ { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
-+ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
- else
-- dstfile=`basename "$dst"`
-
- # Make a couple of temp file names in the proper directory.
- dsttmp=$dstdir/_inst.$$_
-@@ -262,10 +449,9 @@
-
- # Trap to clean up those temp files at exit.
- trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
-- trap '(exit $?); exit' 1 2 13 15
-
- # Copy the file name to the temp name.
-- $doit $cpprog "$src" "$dsttmp" &&
-+ (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
-
- # and set any options; do chmod last to preserve setuid bits.
- #
-@@ -276,10 +462,10 @@
- { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
- && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
- && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
-- && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
-+ && { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
-
- # Now rename the file to the real destination.
-- { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
-+ { $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null \
- || {
- # The rename failed, perhaps because mv can't rename something else
- # to itself, or perhaps because mv is so ancient that it does not
-@@ -291,11 +477,12 @@
- # reasons. In this case, the final cleanup might fail but the new
- # file should still install successfully.
- {
-- if test -f "$dstdir/$dstfile"; then
-- $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
-- || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
-+ if test -f "$dst"; then
-+ $doit $rmcmd -f "$dst" 2>/dev/null \
-+ || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null \
-+ && { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }; }\
- || {
-- echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
-+ echo "$0: cannot unlink or rename $dst" >&2
- (exit 1); exit 1
- }
- else
-@@ -304,16 +491,13 @@
- } &&
-
- # Now rename the file to the real destination.
-- $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
-+ $doit $mvcmd "$dsttmp" "$dst"
- }
-- }
-- fi || { (exit 1); exit 1; }
--done
-+ } || exit 1
-
--# The final little trick to "correctly" pass the exit status to the exit trap.
--{
-- (exit 0); exit 0
--}
-+ trap '' 0
-+ fi
-+done
-
- # Local variables:
- # eval: (add-hook 'write-file-hooks 'time-stamp)
-diff -ruN xf86-input-keyboard-1.2.0/ltmain.sh xf86-input-keyboard/ltmain.sh
---- xf86-input-keyboard-1.2.0/ltmain.sh 2006-06-19 18:36:49.000000000 +0000
-+++ xf86-input-keyboard/ltmain.sh 2007-06-26 19:45:46.000000000 +0000
-@@ -1,8 +1,8 @@
- # ltmain.sh - Provide generalized library-building support services.
- # NOTE: Changing this file will not affect anything until you rerun configure.
- #
--# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005
--# Free Software Foundation, Inc.
-+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
-+# 2007 Free Software Foundation, Inc.
- # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
- #
- # This program is free software; you can redistribute it and/or modify
-@@ -43,14 +43,22 @@
-
- PROGRAM=ltmain.sh
- PACKAGE=libtool
--VERSION="1.5.22 Debian 1.5.22-4"
--TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)"
-+VERSION=1.5.24
-+TIMESTAMP=" (1.1220.2.455 2007/06/24 02:13:29)"
-
--# See if we are running on zsh, and set the options which allow our
--# commands through without removal of \ escapes.
--if test -n "${ZSH_VERSION+set}" ; then
-+# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
-+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-+ emulate sh
-+ NULLCMD=:
-+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-+ # is contrary to our usage. Disable this feature.
-+ alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-+else
-+ case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
- fi
-+BIN_SH=xpg4; export BIN_SH # for Tru64
-+DUALCASE=1; export DUALCASE # for MKS sh
-
- # Check that we have a working $echo.
- if test "X$1" = X--no-reexec; then
-@@ -105,12 +113,14 @@
- # These must not be set unconditionally because not all systems understand
- # e.g. LANG=C (notably SCO).
- # We save the old values to restore during execute mode.
--if test "${LC_ALL+set}" = set; then
-- save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
--fi
--if test "${LANG+set}" = set; then
-- save_LANG="$LANG"; LANG=C; export LANG
--fi
-+for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
-+do
-+ eval "if test \"\${$lt_var+set}\" = set; then
-+ save_$lt_var=\$$lt_var
-+ $lt_var=C
-+ export $lt_var
-+ fi"
-+done
-
- # Make sure IFS has a sensible default
- lt_nl='
-@@ -136,6 +146,8 @@
- preserve_args=
- lo2o="s/\\.lo\$/.${objext}/"
- o2lo="s/\\.${objext}\$/.lo/"
-+extracted_archives=
-+extracted_serial=0
-
- #####################################
- # Shell function definitions:
-@@ -196,7 +208,13 @@
- if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \
- $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
- win32_nmres=`eval $NM -f posix -A $1 | \
-- $SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'`
-+ $SED -n -e '1,100{
-+ / I /{
-+ s,.*,import,
-+ p
-+ q
-+ }
-+ }'`
- case $win32_nmres in
- import*) win32_libid_type="x86 archive import";;
- *) win32_libid_type="x86 archive static";;
-@@ -327,7 +345,17 @@
- *) my_xabs=`pwd`"/$my_xlib" ;;
- esac
- my_xlib=`$echo "X$my_xlib" | $Xsed -e 's%^.*/%%'`
-- my_xdir="$my_gentop/$my_xlib"
-+ my_xlib_u=$my_xlib
-+ while :; do
-+ case " $extracted_archives " in
-+ *" $my_xlib_u "*)
-+ extracted_serial=`expr $extracted_serial + 1`
-+ my_xlib_u=lt$extracted_serial-$my_xlib ;;
-+ *) break ;;
-+ esac
-+ done
-+ extracted_archives="$extracted_archives $my_xlib_u"
-+ my_xdir="$my_gentop/$my_xlib_u"
-
- $show "${rm}r $my_xdir"
- $run ${rm}r "$my_xdir"
-@@ -454,11 +482,12 @@
- ;;
-
- --version)
-- $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"
-- $echo
-- $echo "Copyright (C) 2005 Free Software Foundation, Inc."
-- $echo "This is free software; see the source for copying conditions. There is NO"
-- $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-+ echo "\
-+$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP
-+
-+Copyright (C) 2007 Free Software Foundation, Inc.
-+This is free software; see the source for copying conditions. There is NO
-+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
- exit $?
- ;;
-
-@@ -755,9 +784,10 @@
- *.class) xform=class ;;
- *.cpp) xform=cpp ;;
- *.cxx) xform=cxx ;;
-- *.f90) xform=f90 ;;
-+ *.[fF][09]?) xform=[fF][09]. ;;
- *.for) xform=for ;;
- *.java) xform=java ;;
-+ *.obj) xform=obj ;;
- esac
-
- libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
-@@ -1138,8 +1168,9 @@
- for arg
- do
- case $arg in
-- -all-static | -static)
-- if test "X$arg" = "X-all-static"; then
-+ -all-static | -static | -static-libtool-libs)
-+ case $arg in
-+ -all-static)
- if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
- $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
- fi
-@@ -1147,12 +1178,20 @@
- dlopen_self=$dlopen_self_static
- fi
- prefer_static_libs=yes
-- else
-+ ;;
-+ -static)
- if test -z "$pic_flag" && test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
- prefer_static_libs=built
-- fi
-+ ;;
-+ -static-libtool-libs)
-+ if test -z "$pic_flag" && test -n "$link_static_flag"; then
-+ dlopen_self=$dlopen_self_static
-+ fi
-+ prefer_static_libs=yes
-+ ;;
-+ esac
- build_libtool_libs=no
- build_old_libs=yes
- break
-@@ -1600,7 +1639,7 @@
- continue
- ;;
-
-- -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
-+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
- compiler_flags="$compiler_flags $arg"
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
-@@ -1620,10 +1659,11 @@
- # -m* pass through architecture-specific compiler args for GCC
- # -m*, -t[45]*, -txscale* pass through architecture-specific
- # compiler args for GCC
-- # -pg pass through profiling flag for GCC
-+ # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC
-+ # -F/path gives path to uninstalled frameworks, gcc on darwin
- # @file GCC response files
-- -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \
-- -t[45]*|-txscale*|@*)
-+ -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
-+ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*)
-
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
-@@ -1651,9 +1691,9 @@
-
- -no-install)
- case $host in
-- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin*)
- # The PATH hackery in wrapper scripts is required on Windows
-- # in order for the loader to find any dlls it needs.
-+ # and Darwin in order for the loader to find any dlls it needs.
- $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
- $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
- fast_install=no
-@@ -1712,7 +1752,7 @@
- continue
- ;;
-
-- -static)
-+ -static | -static-libtool-libs)
- # The effects of -static are defined in a previous loop.
- # We used to do the same as -all-static on platforms that
- # didn't have a PIC flag, but the assumption that the effects
-@@ -2082,10 +2122,7 @@
- case $pass in
- dlopen) libs="$dlfiles" ;;
- dlpreopen) libs="$dlprefiles" ;;
-- link)
-- libs="$deplibs %DEPLIBS%"
-- test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
-- ;;
-+ link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
- esac
- fi
- if test "$pass" = dlopen; then
-@@ -2097,7 +2134,7 @@
- lib=
- found=no
- case $deplib in
-- -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
-+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
- if test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
-@@ -2493,7 +2530,9 @@
-
- if test "$linkmode,$pass" = "prog,link"; then
- if test -n "$library_names" &&
-- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
-+ { { test "$prefer_static_libs" = no ||
-+ test "$prefer_static_libs,$installed" = "built,yes"; } ||
-+ test -z "$old_library"; }; then
- # We need to hardcode the library path
- if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
- # Make sure the rpath contains only unique directories.
-@@ -3189,7 +3228,7 @@
- # which has an extra 1 added just for fun
- #
- case $version_type in
-- darwin|linux|osf|windows)
-+ darwin|linux|osf|windows|none)
- current=`expr $number_major + $number_minor`
- age="$number_minor"
- revision="$number_revision"
-@@ -3200,14 +3239,10 @@
- age="0"
- ;;
- irix|nonstopux)
-- current=`expr $number_major + $number_minor - 1`
-+ current=`expr $number_major + $number_minor`
- age="$number_minor"
- revision="$number_minor"
-- ;;
-- *)
-- $echo "$modename: unknown library version type \`$version_type'" 1>&2
-- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
-- exit $EXIT_FAILURE
-+ lt_irix_increment=no
- ;;
- esac
- ;;
-@@ -3266,7 +3301,8 @@
- versuffix="$major.$age.$revision"
- # Darwin ld doesn't like 0 for these options...
- minor_current=`expr $current + 1`
-- verstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
-+ xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
-+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
- ;;
-
- freebsd-aout)
-@@ -3280,8 +3316,11 @@
- ;;
-
- irix | nonstopux)
-- major=`expr $current - $age + 1`
--
-+ if test "X$lt_irix_increment" = "Xno"; then
-+ major=`expr $current - $age`
-+ else
-+ major=`expr $current - $age + 1`
-+ fi
- case $version_type in
- nonstopux) verstring_prefix=nonstopux ;;
- *) verstring_prefix=sgi ;;
-@@ -3418,11 +3457,11 @@
- fi
-
- # Eliminate all temporary directories.
-- for path in $notinst_path; do
-- lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
-- deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
-- dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
-- done
-+ #for path in $notinst_path; do
-+ # lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
-+ # deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
-+ # dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
-+ #done
-
- if test -n "$xrpath"; then
- # If the user specified any rpath flags, then add them.
-@@ -3523,13 +3562,12 @@
- int main() { return 0; }
- EOF
- $rm conftest
-- $LTCC $LTCFLAGS -o conftest conftest.c $deplibs
-- if test "$?" -eq 0 ; then
-+ if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
- ldd_output=`ldd conftest`
- for i in $deplibs; do
- name=`expr $i : '-l\(.*\)'`
- # If $name is empty we are operating on a -L argument.
-- if test "$name" != "" && test "$name" -ne "0"; then
-+ if test "$name" != "" && test "$name" != "0"; then
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $i "*)
-@@ -3568,9 +3606,7 @@
- # If $name is empty we are operating on a -L argument.
- if test "$name" != "" && test "$name" != "0"; then
- $rm conftest
-- $LTCC $LTCFLAGS -o conftest conftest.c $i
-- # Did it work?
-- if test "$?" -eq 0 ; then
-+ if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
- ldd_output=`ldd conftest`
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
-@@ -3602,7 +3638,7 @@
- droppeddeps=yes
- $echo
- $echo "*** Warning! Library $i is needed by this library but I was not able to"
-- $echo "*** make it link in! You will probably need to install it or some"
-+ $echo "*** make it link in! You will probably need to install it or some"
- $echo "*** library that it depends on before this library will be fully"
- $echo "*** functional. Installing it before continuing would be even better."
- fi
-@@ -3888,7 +3924,10 @@
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- if test -n "$hardcode_libdir_flag_spec_ld"; then
-- eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\"
-+ case $archive_cmds in
-+ *\$LD*) eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" ;;
-+ *) eval dep_rpath=\"$hardcode_libdir_flag_spec\" ;;
-+ esac
- else
- eval dep_rpath=\"$hardcode_libdir_flag_spec\"
- fi
-@@ -4247,12 +4286,14 @@
- reload_conv_objs=
- gentop=
- # reload_cmds runs $LD directly, so let us get rid of
-- # -Wl from whole_archive_flag_spec
-+ # -Wl from whole_archive_flag_spec and hope we can get by with
-+ # turning comma into space..
- wl=
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
-- eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
-+ eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
-+ reload_conv_objs=$reload_objs\ `$echo "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`
- else
- gentop="$output_objdir/${obj}x"
- generated="$generated $gentop"
-@@ -4700,16 +4741,16 @@
- case $host in
- *cygwin* | *mingw* )
- if test -f "$output_objdir/${outputname}.def" ; then
-- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
-- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
-+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP`
-+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP`
- else
-- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
-+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
- fi
- ;;
- * )
-- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
-+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
- ;;
- esac
- ;;
-@@ -4724,13 +4765,13 @@
- # really was required.
-
- # Nullify the symbol file.
-- compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
-- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
-+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP`
-+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP`
- fi
-
- if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
- # Replace the output file specification.
-- compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
-+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$output"'%g' | $NL2SP`
- link_command="$compile_command$compile_rpath"
-
- # We have no uninstalled library dependencies, so finalize right now.
-@@ -4817,7 +4858,7 @@
- if test "$fast_install" != no; then
- link_command="$finalize_var$compile_command$finalize_rpath"
- if test "$fast_install" = yes; then
-- relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
-+ relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $SP2NL | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g' | $NL2SP`
- else
- # fast_install is set to needless
- relink_command=
-@@ -4854,7 +4895,7 @@
- fi
- done
- relink_command="(cd `pwd`; $relink_command)"
-- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
-+ relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP`
- fi
-
- # Quote $echo for shipping.
-@@ -5261,6 +5302,20 @@
- Xsed='${SED} -e 1s/^X//'
- sed_quote_subst='$sed_quote_subst'
-
-+# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
-+if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
-+ emulate sh
-+ NULLCMD=:
-+ # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
-+ # is contrary to our usage. Disable this feature.
-+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
-+ setopt NO_GLOB_SUBST
-+else
-+ case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
-+fi
-+BIN_SH=xpg4; export BIN_SH # for Tru64
-+DUALCASE=1; export DUALCASE # for MKS sh
-+
- # The HP-UX ksh and POSIX shell print the target directory to stdout
- # if CDPATH is set.
- (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-@@ -5403,7 +5458,7 @@
- ;;
- esac
- $echo >> $output "\
-- \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\"
-+ \$echo \"\$0: cannot exec \$program \$*\"
- exit $EXIT_FAILURE
- fi
- else
-@@ -5589,7 +5644,7 @@
- done
- # Quote the link command for shipping.
- relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
-- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
-+ relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP`
- if test "$hardcode_automatic" = yes ; then
- relink_command=
- fi
-@@ -5934,9 +5989,9 @@
-
- if test -n "$inst_prefix_dir"; then
- # Stick the inst_prefix_dir data into the link command.
-- relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
-+ relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%" | $NL2SP`
- else
-- relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
-+ relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%%" | $NL2SP`
- fi
-
- $echo "$modename: warning: relinking \`$file'" 1>&2
-@@ -6145,7 +6200,7 @@
- file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'`
- outputname="$tmpdir/$file"
- # Replace the output file specification.
-- relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
-+ relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g' | $NL2SP`
-
- $show "$relink_command"
- if $run eval "$relink_command"; then :
-@@ -6356,8 +6411,10 @@
- if test -f "$dir/$objdir/$dlname"; then
- dir="$dir/$objdir"
- else
-- $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
-- exit $EXIT_FAILURE
-+ if test ! -f "$dir/$dlname"; then
-+ $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
-+ exit $EXIT_FAILURE
-+ fi
- fi
- ;;
-
-@@ -6421,12 +6478,12 @@
- fi
-
- # Restore saved environment variables
-- if test "${save_LC_ALL+set}" = set; then
-- LC_ALL="$save_LC_ALL"; export LC_ALL
-- fi
-- if test "${save_LANG+set}" = set; then
-- LANG="$save_LANG"; export LANG
-- fi
-+ for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
-+ do
-+ eval "if test \"\${save_$lt_var+set}\" = set; then
-+ $lt_var=\$save_$lt_var; export $lt_var
-+ fi"
-+ done
-
- # Now prepare to actually exec the command.
- exec_cmd="\$cmd$args"
-@@ -6783,9 +6840,9 @@
- -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
- -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
- -export-symbols SYMFILE
-- try to export only the symbols listed in SYMFILE
-+ try to export only the symbols listed in SYMFILE
- -export-symbols-regex REGEX
-- try to export only the symbols matching REGEX
-+ try to export only the symbols matching REGEX
- -LLIBDIR search LIBDIR for required installed libraries
- -lNAME OUTPUT-FILE requires the installed library libNAME
- -module build a library that can dlopened
-@@ -6799,9 +6856,11 @@
- -release RELEASE specify package release information
- -rpath LIBDIR the created library will eventually be installed in LIBDIR
- -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
-- -static do not do any dynamic linking of libtool libraries
-+ -static do not do any dynamic linking of uninstalled libtool libraries
-+ -static-libtool-libs
-+ do not do any dynamic linking of libtool libraries
- -version-info CURRENT[:REVISION[:AGE]]
-- specify library version info [each variable defaults to 0]
-+ specify library version info [each variable defaults to 0]
-
- All other options (arguments beginning with \`-') are ignored.
-
-diff -ruN xf86-input-keyboard-1.2.0/man/.cvsignore xf86-input-keyboard/man/.cvsignore
---- xf86-input-keyboard-1.2.0/man/.cvsignore 1970-01-01 00:00:00.000000000 +0000
-+++ xf86-input-keyboard/man/.cvsignore 2007-09-03 10:34:00.000000000 +0000
-@@ -0,0 +1,2 @@
-+Makefile
-+Makefile.in
-diff -ruN xf86-input-keyboard-1.2.0/man/Makefile.in xf86-input-keyboard/man/Makefile.in
---- xf86-input-keyboard-1.2.0/man/Makefile.in 2006-11-01 22:19:31.000000000 +0000
-+++ xf86-input-keyboard/man/Makefile.in 2007-09-03 10:36:18.000000000 +0000
-@@ -1,8 +1,8 @@
--# Makefile.in generated by automake 1.9.6 from Makefile.am.
-+# Makefile.in generated by automake 1.10 from Makefile.am.
- # @configure_input@
-
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
--# 2003, 2004, 2005 Free Software Foundation, Inc.
-+# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -41,15 +41,11 @@
- # from the copyright holders.
- #
-
--srcdir = @srcdir@
--top_srcdir = @top_srcdir@
- VPATH = @srcdir@
- pkgdatadir = $(datadir)/@PACKAGE@
- pkglibdir = $(libdir)/@PACKAGE@
- pkgincludedir = $(includedir)/@PACKAGE@
--top_builddir = ..
- am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
--INSTALL = @INSTALL@
- install_sh_DATA = $(install_sh) -c -m 644
- install_sh_PROGRAM = $(install_sh) -c
- install_sh_SCRIPT = $(install_sh) -c
-@@ -87,8 +83,6 @@
- ACLOCAL = @ACLOCAL@
- ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
- ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
--AMDEP_FALSE = @AMDEP_FALSE@
--AMDEP_TRUE = @AMDEP_TRUE@
- AMTAR = @AMTAR@
- APP_MAN_DIR = @APP_MAN_DIR@
- APP_MAN_SUFFIX = @APP_MAN_SUFFIX@
-@@ -97,8 +91,6 @@
- AUTOHEADER = @AUTOHEADER@
- AUTOMAKE = @AUTOMAKE@
- AWK = @AWK@
--BSD_FALSE = @BSD_FALSE@
--BSD_TRUE = @BSD_TRUE@
- CC = @CC@
- CCDEPMODE = @CCDEPMODE@
- CFLAGS = @CFLAGS@
-@@ -125,8 +117,7 @@
- FILE_MAN_DIR = @FILE_MAN_DIR@
- FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
- GREP = @GREP@
--HURD_FALSE = @HURD_FALSE@
--HURD_TRUE = @HURD_TRUE@
-+INSTALL = @INSTALL@
- INSTALL_DATA = @INSTALL_DATA@
- INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
-@@ -137,16 +128,13 @@
- LIBTOOL = @LIBTOOL@
- LIB_MAN_DIR = @LIB_MAN_DIR@
- LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
--LINUX_FALSE = @LINUX_FALSE@
--LINUX_TRUE = @LINUX_TRUE@
- LN_S = @LN_S@
- LTLIBOBJS = @LTLIBOBJS@
- MAINT = @MAINT@
--MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
--MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
- MAKEINFO = @MAKEINFO@
- MISC_MAN_DIR = @MISC_MAN_DIR@
- MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
-+MKDIR_P = @MKDIR_P@
- OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-@@ -157,23 +145,20 @@
- PATH_SEPARATOR = @PATH_SEPARATOR@
- PKG_CONFIG = @PKG_CONFIG@
- RANLIB = @RANLIB@
--SCO_FALSE = @SCO_FALSE@
--SCO_TRUE = @SCO_TRUE@
-+SED = sed
- SET_MAKE = @SET_MAKE@
- SHELL = @SHELL@
--SOLARIS_FALSE = @SOLARIS_FALSE@
--SOLARIS_TRUE = @SOLARIS_TRUE@
- STRIP = @STRIP@
- VERSION = @VERSION@
- XORG_CFLAGS = @XORG_CFLAGS@
- XORG_LIBS = @XORG_LIBS@
-+abs_builddir = @abs_builddir@
-+abs_srcdir = @abs_srcdir@
-+abs_top_builddir = @abs_top_builddir@
-+abs_top_srcdir = @abs_top_srcdir@
- ac_ct_CC = @ac_ct_CC@
- ac_ct_CXX = @ac_ct_CXX@
- ac_ct_F77 = @ac_ct_F77@
--am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
--am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
--am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
--am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
- am__include = @am__include@
- am__leading_dot = @am__leading_dot@
- am__quote = @am__quote@
-@@ -185,6 +170,7 @@
- build_cpu = @build_cpu@
- build_os = @build_os@
- build_vendor = @build_vendor@
-+builddir = @builddir@
- datadir = @datadir@
- datarootdir = @datarootdir@
- docdir = @docdir@
-@@ -213,14 +199,16 @@
- psdir = @psdir@
- sbindir = @sbindir@
- sharedstatedir = @sharedstatedir@
-+srcdir = @srcdir@
- sysconfdir = @sysconfdir@
- target_alias = @target_alias@
-+top_builddir = @top_builddir@
-+top_srcdir = @top_srcdir@
- drivermandir = $(DRIVER_MAN_DIR)
- driverman_PRE = @DRIVER_NAME@.man
- driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@)
- EXTRA_DIST = @DRIVER_NAME@.man
- CLEANFILES = $(driverman_DATA)
--SED = sed
-
- # Strings to replace in man pages
- XORGRELSTRING = @PACKAGE_STRING@
-@@ -277,13 +265,9 @@
-
- clean-libtool:
- -rm -rf .libs _libs
--
--distclean-libtool:
-- -rm -f libtool
--uninstall-info-am:
- install-drivermanDATA: $(driverman_DATA)
- @$(NORMAL_INSTALL)
-- test -z "$(drivermandir)" || $(mkdir_p) "$(DESTDIR)$(drivermandir)"
-+ test -z "$(drivermandir)" || $(MKDIR_P) "$(DESTDIR)$(drivermandir)"
- @list='$(driverman_DATA)'; for p in $$list; do \
- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=$(am__strip_dir) \
-@@ -306,22 +290,21 @@
-
-
- distdir: $(DISTFILES)
-- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
-- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
-- list='$(DISTFILES)'; for file in $$list; do \
-- case $$file in \
-- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
-- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
-- esac; \
-+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-+ list='$(DISTFILES)'; \
-+ dist_files=`for file in $$list; do echo $$file; done | \
-+ sed -e "s|^$$srcdirstrip/||;t" \
-+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
-+ case $$dist_files in \
-+ */*) $(MKDIR_P) `echo "$$dist_files" | \
-+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
-+ sort -u` ;; \
-+ esac; \
-+ for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
-- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
-- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
-- dir="/$$dir"; \
-- $(mkdir_p) "$(distdir)$$dir"; \
-- else \
-- dir=''; \
-- fi; \
- if test -d $$d/$$file; then \
-+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
-@@ -337,7 +320,7 @@
- all-am: Makefile $(DATA)
- installdirs:
- for dir in "$(DESTDIR)$(drivermandir)"; do \
-- test -z "$$dir" || $(mkdir_p) "$$dir"; \
-+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
- install: install-am
- install-exec: install-exec-am
-@@ -370,7 +353,7 @@
-
- distclean: distclean-am
- -rm -f Makefile
--distclean-am: clean-am distclean-generic distclean-libtool
-+distclean-am: clean-am distclean-generic
-
- dvi: dvi-am
-
-@@ -384,12 +367,20 @@
-
- install-data-am: install-drivermanDATA
-
-+install-dvi: install-dvi-am
-+
- install-exec-am:
-
-+install-html: install-html-am
-+
- install-info: install-info-am
-
- install-man:
-
-+install-pdf: install-pdf-am
-+
-+install-ps: install-ps-am
-+
- installcheck-am:
-
- maintainer-clean: maintainer-clean-am
-@@ -408,18 +399,21 @@
-
- ps-am:
-
--uninstall-am: uninstall-drivermanDATA uninstall-info-am
-+uninstall-am: uninstall-drivermanDATA
-+
-+.MAKE: install-am install-strip
-
- .PHONY: all all-am check check-am clean clean-generic clean-libtool \
- distclean distclean-generic distclean-libtool distdir dvi \
- dvi-am html html-am info info-am install install-am \
-- install-data install-data-am install-drivermanDATA \
-- install-exec install-exec-am install-info install-info-am \
-- install-man install-strip installcheck installcheck-am \
-- installdirs maintainer-clean maintainer-clean-generic \
-- mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
-- ps ps-am uninstall uninstall-am uninstall-drivermanDATA \
-- uninstall-info-am
-+ install-data install-data-am install-drivermanDATA install-dvi \
-+ install-dvi-am install-exec install-exec-am install-html \
-+ install-html-am install-info install-info-am install-man \
-+ install-pdf install-pdf-am install-ps install-ps-am \
-+ install-strip installcheck installcheck-am installdirs \
-+ maintainer-clean maintainer-clean-generic mostlyclean \
-+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-+ uninstall uninstall-am uninstall-drivermanDATA
-
-
- .man.$(DRIVER_MAN_SUFFIX):
-diff -ruN xf86-input-keyboard-1.2.0/man/keyboard.man xf86-input-keyboard/man/keyboard.man
---- xf86-input-keyboard-1.2.0/man/keyboard.man 1970-01-01 00:00:00.000000000 +0000
-+++ xf86-input-keyboard/man/keyboard.man 2007-09-03 10:34:00.000000000 +0000
-@@ -0,0 +1,108 @@
-+.\" $XdotOrg: $
-+.\" $XFree86: xc/programs/Xserver/hw/xfree86/input/keyboard/keyboard.man,v 1.2 2001/01/27 18:20:57 dawes Exp $
-+.\" shorthand for double quote that works everywhere.
-+.ds q \N'34'
-+.TH KEYBOARD __drivermansuffix__ __vendorversion__
-+.SH NAME
-+keyboard \- Keyboard input driver
-+.SH SYNOPSIS
-+.nf
-+.B "Section \*qInputDevice\*q"
-+.BI " Identifier \*q" idevname \*q
-+.B " Driver \*qkeyboard\*q"
-+\ \ ...
-+.B EndSection
-+.fi
-+.SH DESCRIPTION
-+.B keyboard
-+is an __xservername__ input driver for keyboards. The driver supports the standard
-+OS-provided keyboard interface.
-+.PP
-+The
-+.B keyboard
-+driver functions as a keyboard input device, and may be used as the
-+X server's core keyboard.
-+.PP
-+This driver is built-in to the core X server, and multiple instances are not
-+supported. A loadable driver,
-+.BR kbd ,
-+is available, and is planned to replace the
-+.B keyboard
-+driver in a future release of the __xservername__ server.
-+.SH CONFIGURATION DETAILS
-+Please refer to __xconfigfile__(__filemansuffix__) for general configuration
-+details and for options that can be used with all input drivers. This
-+section only covers configuration details specific to this driver.
-+.PP
-+The following driver
-+.B Options
-+are supported:
-+.TP 7
-+.BI "Option \*qProtocol\*q \*q" string \*q
-+Specify the keyboard protocol. Valid protocol types include:
-+.PP
-+.RS 12
-+Standard, Xqueue.
-+.RE
-+.PP
-+.RS 7
-+Not all protocols are supported on all platforms. Default: "Standard".
-+.RE
-+.TP 7
-+.BI "Option \*qAutoRepeat\*q \*q" "delay rate" \*q
-+sets the auto repeat behaviour for the keyboard. This is not implemented
-+on all platforms.
-+.I delay
-+is the time in milliseconds before a key starts repeating.
-+.I rate
-+is the number of times a key repeats per second. Default: "500 30".
-+.TP 7
-+.BI "Option \*qXLeds\*q \*q" ledlist \*q
-+makes the keyboard LEDs specified in
-+.I ledlist
-+available for client use instead of their traditional function
-+(Scroll Lock, Caps Lock and Num Lock). The numbers in the list are
-+in the range 1 to 3. Default: empty list.
-+.TP 7
-+.BI "Option \*qXkbDisable\*q \*q" boolean \*q
-+disable/enable the XKEYBOARD extension. The \-kb command line
-+option overrides this config file option. Default: XKB is enabled.
-+.PP
-+.RS 7
-+NOTE: This option should be specified in the
-+.B ServerFlags
-+section rather than here. It's use here is deprecated.
-+.RE
-+.TP 7
-+.BI "Option \*qXkbRules\*q \*q" rules \*q
-+specifies which XKB rules file to use for interpreting the
-+.BR XkbModel ,
-+.BR XkbLayout ,
-+.BR XkbVariant ,
-+and
-+.B XkbOptions
-+settings. Default: "xorg" for most platforms, but "xfree98" for the
-+Japanese PC-98 platforms.
-+.TP 7
-+.BI "Option \*qXkbModel\*q \*q" modelname \*q
-+specifies the XKB keyboard model name. Default: "pc105" for most platforms,
-+but "pc98" for the Japanese PC-98 platforms.
-+.TP 7
-+.BI "Option \*qXkbLayout\*q \*q" layoutname \*q
-+specifies the XKB keyboard layout name. This is usually the country or
-+language type of the keyboard. Default: "us" for most platforms, but
-+"nec/jp" for the Japanese PC-98 platforms.
-+.TP 7
-+.BI "Option \*qXkbVariant\*q \*q" variants \*q
-+specifies the XKB keyboard variant components. These can be used to
-+enhance the keyboard layout details. Default: not set.
-+.TP 7
-+.BI "Option \*qXkbOptions\*q \*q" options \*q
-+specifies the XKB keyboard option components. These can be used to
-+enhance the keyboard behaviour. Default: not set.
-+.PP
-+Some other XKB-related options are available, but they are incompatible
-+with the ones listed above and are not recommended, so they are not
-+documented here.
-+.SH "SEE ALSO"
-+kbd(__drivermansuffix__), __xservername__(__appmansuffix__), __xconfigfile__(__filemansuffix__), xorgconfig(__appmansuffix__), Xserver(__appmansuffix__), X(__miscmansuffix__).
-diff -ruN xf86-input-keyboard-1.2.0/missing xf86-input-keyboard/missing
---- xf86-input-keyboard-1.2.0/missing 2006-11-01 22:19:31.000000000 +0000
-+++ xf86-input-keyboard/missing 2007-09-03 10:36:18.000000000 +0000
-@@ -1,9 +1,9 @@
- #! /bin/sh
- # Common stub for a few missing GNU programs while installing.
-
--scriptversion=2005-06-08.21
-+scriptversion=2006-05-10.23
-
--# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
-+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
- # Free Software Foundation, Inc.
- # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
-
-@@ -33,6 +33,8 @@
- fi
-
- run=:
-+sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-+sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
- # In the cases where this matters, `missing' is being run in the
- # srcdir already.
-@@ -44,7 +46,7 @@
-
- msg="missing on your system"
-
--case "$1" in
-+case $1 in
- --run)
- # Try to run requested program, and just exit if it succeeds.
- run=
-@@ -77,6 +79,7 @@
- aclocal touch file \`aclocal.m4'
- autoconf touch file \`configure'
- autoheader touch file \`config.h.in'
-+ autom4te touch the output file, or create a stub one
- automake touch all \`Makefile.in' files
- bison create \`y.tab.[ch]', if possible, from existing .[ch]
- flex create \`lex.yy.c', if possible, from existing .c
-@@ -106,7 +109,7 @@
- # Now exit if we have it, but it failed. Also exit now if we
- # don't have it and --version was passed (most likely to detect
- # the program).
--case "$1" in
-+case $1 in
- lex|yacc)
- # Not GNU programs, they don't have --version.
- ;;
-@@ -135,7 +138,7 @@
-
- # If it does not exist, or fails to run (possibly an outdated version),
- # try to emulate it.
--case "$1" in
-+case $1 in
- aclocal*)
- echo 1>&2 "\
- WARNING: \`$1' is $msg. You should only need it if
-@@ -164,7 +167,7 @@
- test -z "$files" && files="config.h"
- touch_files=
- for f in $files; do
-- case "$f" in
-+ case $f in
- *:*) touch_files="$touch_files "`echo "$f" |
- sed -e 's/^[^:]*://' -e 's/:.*//'`;;
- *) touch_files="$touch_files $f.in";;
-@@ -192,8 +195,8 @@
- You can get \`$1' as part of \`Autoconf' from any GNU
- archive site."
-
-- file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
-- test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
-+ file=`echo "$*" | sed -n "$sed_output"`
-+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -f "$file"; then
- touch $file
- else
-@@ -214,25 +217,25 @@
- in order for those modifications to take effect. You can get
- \`Bison' from any GNU archive site."
- rm -f y.tab.c y.tab.h
-- if [ $# -ne 1 ]; then
-+ if test $# -ne 1; then
- eval LASTARG="\${$#}"
-- case "$LASTARG" in
-+ case $LASTARG in
- *.y)
- SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-- if [ -f "$SRCFILE" ]; then
-+ if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.c
- fi
- SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-- if [ -f "$SRCFILE" ]; then
-+ if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.h
- fi
- ;;
- esac
- fi
-- if [ ! -f y.tab.h ]; then
-+ if test ! -f y.tab.h; then
- echo >y.tab.h
- fi
-- if [ ! -f y.tab.c ]; then
-+ if test ! -f y.tab.c; then
- echo 'main() { return 0; }' >y.tab.c
- fi
- ;;
-@@ -244,18 +247,18 @@
- in order for those modifications to take effect. You can get
- \`Flex' from any GNU archive site."
- rm -f lex.yy.c
-- if [ $# -ne 1 ]; then
-+ if test $# -ne 1; then
- eval LASTARG="\${$#}"
-- case "$LASTARG" in
-+ case $LASTARG in
- *.l)
- SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-- if [ -f "$SRCFILE" ]; then
-+ if test -f "$SRCFILE"; then
- cp "$SRCFILE" lex.yy.c
- fi
- ;;
- esac
- fi
-- if [ ! -f lex.yy.c ]; then
-+ if test ! -f lex.yy.c; then
- echo 'main() { return 0; }' >lex.yy.c
- fi
- ;;
-@@ -267,11 +270,9 @@
- \`Help2man' package in order for those modifications to take
- effect. You can get \`Help2man' from any GNU archive site."
-
-- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
-- if test -z "$file"; then
-- file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
-- fi
-- if [ -f "$file" ]; then
-+ file=`echo "$*" | sed -n "$sed_output"`
-+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-+ if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
-@@ -289,11 +290,17 @@
- DU, IRIX). You might want to install the \`Texinfo' package or
- the \`GNU make' package. Grab either from any GNU archive site."
- # The file to touch is that specified with -o ...
-- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
-+ file=`echo "$*" | sed -n "$sed_output"`
-+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -z "$file"; then
- # ... or it is the one specified with @setfilename ...
- infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-- file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
-+ file=`sed -n '
-+ /^@setfilename/{
-+ s/.* \([^ ]*\) *$/\1/
-+ p
-+ q
-+ }' $infile`
- # ... or it is derived from the source name (dir/f.texi becomes f.info)
- test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
- fi
-@@ -317,13 +324,13 @@
- fi
- firstarg="$1"
- if shift; then
-- case "$firstarg" in
-+ case $firstarg in
- *o*)
- firstarg=`echo "$firstarg" | sed s/o//`
- tar "$firstarg" "$@" && exit 0
- ;;
- esac
-- case "$firstarg" in
-+ case $firstarg in
- *h*)
- firstarg=`echo "$firstarg" | sed s/h//`
- tar "$firstarg" "$@" && exit 0
-diff -ruN xf86-input-keyboard-1.2.0/src/.cvsignore xf86-input-keyboard/src/.cvsignore
---- xf86-input-keyboard-1.2.0/src/.cvsignore 1970-01-01 00:00:00.000000000 +0000
-+++ xf86-input-keyboard/src/.cvsignore 2007-09-03 10:34:00.000000000 +0000
-@@ -0,0 +1,6 @@
-+.deps
-+.libs
-+Makefile
-+Makefile.in
-+*.la
-+*.lo
-diff -ruN xf86-input-keyboard-1.2.0/src/Makefile.am xf86-input-keyboard/src/Makefile.am
---- xf86-input-keyboard-1.2.0/src/Makefile.am 2006-11-01 22:16:43.000000000 +0000
-+++ xf86-input-keyboard/src/Makefile.am 2007-09-03 10:34:00.000000000 +0000
-@@ -21,33 +21,32 @@
- driverdir = @inputdir@
- driver_LTLIBRARIES = kbd_drv.la
- kbd_drv_la_LDFLAGS = -avoid-version -module
--kbd_drv_la_SOURCES = kbd.c
-+kbd_drv_la_SOURCES = kbd.c xf86OSKbd.h xf86Keymap.h
-
--BSD_SOURCES = bsd_KbdMap.c bsd_kbd.c bsd_kbd.h at_scancode.c
--HURD_SOURCES = hurd_kbd.c at_scancode.c
--LINUX_SOURCES = lnx_KbdMap.c lnx_kbd.c lnx_kbd.h at_scancode.c
--SCO_SOURCES = sco_KbdMap.c sco_kbd.c sco_kbd.h
--SOLARIS_SOURCES = sun_kbd.c sun_kbd.h sun_kbdEv.c
-+BSD_SRCS = bsd_KbdMap.c bsd_kbd.c bsd_kbd.h at_scancode.c
-+HURD_SRCS = hurd_kbd.c at_scancode.c
-+LINUX_SRCS = lnx_KbdMap.c lnx_kbd.c lnx_kbd.h at_scancode.c
-+SCO_SRCS = sco_KbdMap.c sco_kbd.c sco_kbd.h
-+SOLARIS_SRCS = sun_kbd.c sun_kbd.h sun_kbdMap.c
-
- if BSD
--kbd_drv_la_SOURCES += $(BSD_SOURCES)
-+kbd_drv_la_SOURCES += $(BSD_SRCS)
- endif
-
- if SOLARIS
--kbd_drv_la_SOURCES += $(SOLARIS_SOURCES)
-+kbd_drv_la_SOURCES += $(SOLARIS_SRCS)
- endif
-
- if LINUX
--kbd_drv_la_SOURCES += $(LINUX_SOURCES)
-+kbd_drv_la_SOURCES += $(LINUX_SRCS)
- endif
-
- if SCO
--kbd_drv_la_SOURCES += $(SCO_SOURCES)
-+kbd_drv_la_SOURCES += $(SCO_SRCS)
- endif
-
- if HURD
--kbd_drv_la_SOURCES += $(HURD_SOURCES)
-+kbd_drv_la_SOURCES += $(HURD_SRCS)
- endif
-
--EXTRA_DIST = $(BSD_SOURCES) $(HURD_SOURCES) $(LINUX_SOURCES) $(SCO_SOURCES) \
-- $(SOLARIS_SOURCES)
-+EXTRA_DIST = $(BSD_SRCS) $(HURD_SRCS) $(LINUX_SRCS) $(SCO_SRCS) $(SOLARIS_SRCS)
-diff -ruN xf86-input-keyboard-1.2.0/src/Makefile.in xf86-input-keyboard/src/Makefile.in
---- xf86-input-keyboard-1.2.0/src/Makefile.in 2006-11-01 22:19:32.000000000 +0000
-+++ xf86-input-keyboard/src/Makefile.in 2007-09-03 10:36:18.000000000 +0000
-@@ -1,8 +1,8 @@
--# Makefile.in generated by automake 1.9.6 from Makefile.am.
-+# Makefile.in generated by automake 1.10 from Makefile.am.
- # @configure_input@
-
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
--# 2003, 2004, 2005 Free Software Foundation, Inc.
-+# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -34,15 +34,11 @@
- # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
--srcdir = @srcdir@
--top_srcdir = @top_srcdir@
- VPATH = @srcdir@
- pkgdatadir = $(datadir)/@PACKAGE@
- pkglibdir = $(libdir)/@PACKAGE@
- pkgincludedir = $(includedir)/@PACKAGE@
--top_builddir = ..
- am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
--INSTALL = @INSTALL@
- install_sh_DATA = $(install_sh) -c -m 644
- install_sh_PROGRAM = $(install_sh) -c
- install_sh_SCRIPT = $(install_sh) -c
-@@ -56,11 +52,11 @@
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@BSD_TRUE@am__append_1 = $(BSD_SOURCES)
--@SOLARIS_TRUE@am__append_2 = $(SOLARIS_SOURCES)
--@LINUX_TRUE@am__append_3 = $(LINUX_SOURCES)
--@SCO_TRUE@am__append_4 = $(SCO_SOURCES)
--@HURD_TRUE@am__append_5 = $(HURD_SOURCES)
-+@BSD_TRUE@am__append_1 = $(BSD_SRCS)
-+@SOLARIS_TRUE@am__append_2 = $(SOLARIS_SRCS)
-+@LINUX_TRUE@am__append_3 = $(LINUX_SRCS)
-+@SCO_TRUE@am__append_4 = $(SCO_SRCS)
-+@HURD_TRUE@am__append_5 = $(HURD_SRCS)
- subdir = src
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-@@ -80,13 +76,13 @@
- driverLTLIBRARIES_INSTALL = $(INSTALL)
- LTLIBRARIES = $(driver_LTLIBRARIES)
- kbd_drv_la_LIBADD =
--am__kbd_drv_la_SOURCES_DIST = kbd.c bsd_KbdMap.c bsd_kbd.c bsd_kbd.h \
-- at_scancode.c sun_kbd.c sun_kbd.h sun_kbdEv.c lnx_KbdMap.c \
-- lnx_kbd.c lnx_kbd.h sco_KbdMap.c sco_kbd.c sco_kbd.h \
-- hurd_kbd.c
-+am__kbd_drv_la_SOURCES_DIST = kbd.c xf86OSKbd.h xf86Keymap.h \
-+ bsd_KbdMap.c bsd_kbd.c bsd_kbd.h at_scancode.c sun_kbd.c \
-+ sun_kbd.h sun_kbdMap.c lnx_KbdMap.c lnx_kbd.c lnx_kbd.h \
-+ sco_KbdMap.c sco_kbd.c sco_kbd.h hurd_kbd.c
- am__objects_1 = bsd_KbdMap.lo bsd_kbd.lo at_scancode.lo
- @BSD_TRUE@am__objects_2 = $(am__objects_1)
--am__objects_3 = sun_kbd.lo sun_kbdEv.lo
-+am__objects_3 = sun_kbd.lo sun_kbdMap.lo
- @SOLARIS_TRUE@am__objects_4 = $(am__objects_3)
- am__objects_5 = lnx_KbdMap.lo lnx_kbd.lo at_scancode.lo
- @LINUX_TRUE@am__objects_6 = $(am__objects_5)
-@@ -97,17 +93,21 @@
- am_kbd_drv_la_OBJECTS = kbd.lo $(am__objects_2) $(am__objects_4) \
- $(am__objects_6) $(am__objects_8) $(am__objects_10)
- kbd_drv_la_OBJECTS = $(am_kbd_drv_la_OBJECTS)
--DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
-+kbd_drv_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
-+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-+ $(kbd_drv_la_LDFLAGS) $(LDFLAGS) -o $@
-+DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
- depcomp = $(SHELL) $(top_srcdir)/depcomp
- am__depfiles_maybe = depfiles
- COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
--LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
-- $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
-- $(AM_CFLAGS) $(CFLAGS)
-+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
- CCLD = $(CC)
--LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-+ $(LDFLAGS) -o $@
- SOURCES = $(kbd_drv_la_SOURCES)
- DIST_SOURCES = $(am__kbd_drv_la_SOURCES_DIST)
- ETAGS = etags
-@@ -116,8 +116,6 @@
- ACLOCAL = @ACLOCAL@
- ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
- ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
--AMDEP_FALSE = @AMDEP_FALSE@
--AMDEP_TRUE = @AMDEP_TRUE@
- AMTAR = @AMTAR@
- APP_MAN_DIR = @APP_MAN_DIR@
- APP_MAN_SUFFIX = @APP_MAN_SUFFIX@
-@@ -126,8 +124,6 @@
- AUTOHEADER = @AUTOHEADER@
- AUTOMAKE = @AUTOMAKE@
- AWK = @AWK@
--BSD_FALSE = @BSD_FALSE@
--BSD_TRUE = @BSD_TRUE@
- CC = @CC@
- CCDEPMODE = @CCDEPMODE@
- CFLAGS = @CFLAGS@
-@@ -154,8 +150,7 @@
- FILE_MAN_DIR = @FILE_MAN_DIR@
- FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
- GREP = @GREP@
--HURD_FALSE = @HURD_FALSE@
--HURD_TRUE = @HURD_TRUE@
-+INSTALL = @INSTALL@
- INSTALL_DATA = @INSTALL_DATA@
- INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
-@@ -166,16 +161,13 @@
- LIBTOOL = @LIBTOOL@
- LIB_MAN_DIR = @LIB_MAN_DIR@
- LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
--LINUX_FALSE = @LINUX_FALSE@
--LINUX_TRUE = @LINUX_TRUE@
- LN_S = @LN_S@
- LTLIBOBJS = @LTLIBOBJS@
- MAINT = @MAINT@
--MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
--MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
- MAKEINFO = @MAKEINFO@
- MISC_MAN_DIR = @MISC_MAN_DIR@
- MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
-+MKDIR_P = @MKDIR_P@
- OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-@@ -186,23 +178,20 @@
- PATH_SEPARATOR = @PATH_SEPARATOR@
- PKG_CONFIG = @PKG_CONFIG@
- RANLIB = @RANLIB@
--SCO_FALSE = @SCO_FALSE@
--SCO_TRUE = @SCO_TRUE@
-+SED = @SED@
- SET_MAKE = @SET_MAKE@
- SHELL = @SHELL@
--SOLARIS_FALSE = @SOLARIS_FALSE@
--SOLARIS_TRUE = @SOLARIS_TRUE@
- STRIP = @STRIP@
- VERSION = @VERSION@
- XORG_CFLAGS = @XORG_CFLAGS@
- XORG_LIBS = @XORG_LIBS@
-+abs_builddir = @abs_builddir@
-+abs_srcdir = @abs_srcdir@
-+abs_top_builddir = @abs_top_builddir@
-+abs_top_srcdir = @abs_top_srcdir@
- ac_ct_CC = @ac_ct_CC@
- ac_ct_CXX = @ac_ct_CXX@
- ac_ct_F77 = @ac_ct_F77@
--am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
--am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
--am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
--am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
- am__include = @am__include@
- am__leading_dot = @am__leading_dot@
- am__quote = @am__quote@
-@@ -214,6 +203,7 @@
- build_cpu = @build_cpu@
- build_os = @build_os@
- build_vendor = @build_vendor@
-+builddir = @builddir@
- datadir = @datadir@
- datarootdir = @datarootdir@
- docdir = @docdir@
-@@ -242,21 +232,23 @@
- psdir = @psdir@
- sbindir = @sbindir@
- sharedstatedir = @sharedstatedir@
-+srcdir = @srcdir@
- sysconfdir = @sysconfdir@
- target_alias = @target_alias@
-+top_builddir = @top_builddir@
-+top_srcdir = @top_srcdir@
- driverdir = @inputdir@
- driver_LTLIBRARIES = kbd_drv.la
- kbd_drv_la_LDFLAGS = -avoid-version -module
--kbd_drv_la_SOURCES = kbd.c $(am__append_1) $(am__append_2) \
-- $(am__append_3) $(am__append_4) $(am__append_5)
--BSD_SOURCES = bsd_KbdMap.c bsd_kbd.c bsd_kbd.h at_scancode.c
--HURD_SOURCES = hurd_kbd.c at_scancode.c
--LINUX_SOURCES = lnx_KbdMap.c lnx_kbd.c lnx_kbd.h at_scancode.c
--SCO_SOURCES = sco_KbdMap.c sco_kbd.c sco_kbd.h
--SOLARIS_SOURCES = sun_kbd.c sun_kbd.h sun_kbdEv.c
--EXTRA_DIST = $(BSD_SOURCES) $(HURD_SOURCES) $(LINUX_SOURCES) $(SCO_SOURCES) \
-- $(SOLARIS_SOURCES)
--
-+kbd_drv_la_SOURCES = kbd.c xf86OSKbd.h xf86Keymap.h $(am__append_1) \
-+ $(am__append_2) $(am__append_3) $(am__append_4) \
-+ $(am__append_5)
-+BSD_SRCS = bsd_KbdMap.c bsd_kbd.c bsd_kbd.h at_scancode.c
-+HURD_SRCS = hurd_kbd.c at_scancode.c
-+LINUX_SRCS = lnx_KbdMap.c lnx_kbd.c lnx_kbd.h at_scancode.c
-+SCO_SRCS = sco_KbdMap.c sco_kbd.c sco_kbd.h
-+SOLARIS_SRCS = sun_kbd.c sun_kbd.h sun_kbdMap.c
-+EXTRA_DIST = $(BSD_SRCS) $(HURD_SRCS) $(LINUX_SRCS) $(SCO_SRCS) $(SOLARIS_SRCS)
- all: all-am
-
- .SUFFIXES:
-@@ -292,7 +284,7 @@
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
- install-driverLTLIBRARIES: $(driver_LTLIBRARIES)
- @$(NORMAL_INSTALL)
-- test -z "$(driverdir)" || $(mkdir_p) "$(DESTDIR)$(driverdir)"
-+ test -z "$(driverdir)" || $(MKDIR_P) "$(DESTDIR)$(driverdir)"
- @list='$(driver_LTLIBRARIES)'; for p in $$list; do \
- if test -f $$p; then \
- f=$(am__strip_dir) \
-@@ -303,7 +295,7 @@
-
- uninstall-driverLTLIBRARIES:
- @$(NORMAL_UNINSTALL)
-- @set -x; list='$(driver_LTLIBRARIES)'; for p in $$list; do \
-+ @list='$(driver_LTLIBRARIES)'; for p in $$list; do \
- p=$(am__strip_dir) \
- echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(driverdir)/$$p'"; \
- $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(driverdir)/$$p"; \
-@@ -318,7 +310,7 @@
- rm -f "$${dir}/so_locations"; \
- done
- kbd_drv.la: $(kbd_drv_la_OBJECTS) $(kbd_drv_la_DEPENDENCIES)
-- $(LINK) -rpath $(driverdir) $(kbd_drv_la_LDFLAGS) $(kbd_drv_la_OBJECTS) $(kbd_drv_la_LIBADD) $(LIBS)
-+ $(kbd_drv_la_LINK) -rpath $(driverdir) $(kbd_drv_la_OBJECTS) $(kbd_drv_la_LIBADD) $(LIBS)
-
- mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-@@ -336,25 +328,25 @@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sco_KbdMap.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sco_kbd.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sun_kbd.Plo@am__quote@
--@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sun_kbdEv.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sun_kbdMap.Plo@am__quote@
-
- .c.o:
--@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
--@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
-+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-+@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- @am__fastdepCC_FALSE@ $(COMPILE) -c $<
-
- .c.obj:
--@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
--@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
-+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-+@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
-
- .c.lo:
--@am__fastdepCC_TRUE@ if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
--@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
-+@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-+@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
-@@ -365,10 +357,6 @@
- clean-libtool:
- -rm -rf .libs _libs
-
--distclean-libtool:
-- -rm -f libtool
--uninstall-info-am:
--
- ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
-@@ -418,22 +406,21 @@
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
- distdir: $(DISTFILES)
-- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
-- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
-- list='$(DISTFILES)'; for file in $$list; do \
-- case $$file in \
-- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
-- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
-- esac; \
-+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-+ list='$(DISTFILES)'; \
-+ dist_files=`for file in $$list; do echo $$file; done | \
-+ sed -e "s|^$$srcdirstrip/||;t" \
-+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
-+ case $$dist_files in \
-+ */*) $(MKDIR_P) `echo "$$dist_files" | \
-+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
-+ sort -u` ;; \
-+ esac; \
-+ for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
-- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
-- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
-- dir="/$$dir"; \
-- $(mkdir_p) "$(distdir)$$dir"; \
-- else \
-- dir=''; \
-- fi; \
- if test -d $$d/$$file; then \
-+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
-@@ -449,7 +436,7 @@
- all-am: Makefile $(LTLIBRARIES)
- installdirs:
- for dir in "$(DESTDIR)$(driverdir)"; do \
-- test -z "$$dir" || $(mkdir_p) "$$dir"; \
-+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
- install: install-am
- install-exec: install-exec-am
-@@ -484,7 +471,7 @@
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
- distclean-am: clean-am distclean-compile distclean-generic \
-- distclean-libtool distclean-tags
-+ distclean-tags
-
- dvi: dvi-am
-
-@@ -498,12 +485,20 @@
-
- install-data-am: install-driverLTLIBRARIES
-
-+install-dvi: install-dvi-am
-+
- install-exec-am:
-
-+install-html: install-html-am
-+
- install-info: install-info-am
-
- install-man:
-
-+install-pdf: install-pdf-am
-+
-+install-ps: install-ps-am
-+
- installcheck-am:
-
- maintainer-clean: maintainer-clean-am
-@@ -524,20 +519,24 @@
-
- ps-am:
-
--uninstall-am: uninstall-driverLTLIBRARIES uninstall-info-am
-+uninstall-am: uninstall-driverLTLIBRARIES
-+
-+.MAKE: install-am install-strip
-
- .PHONY: CTAGS GTAGS all all-am check check-am clean \
- clean-driverLTLIBRARIES clean-generic clean-libtool ctags \
- distclean distclean-compile distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
-- install-data-am install-driverLTLIBRARIES install-exec \
-- install-exec-am install-info install-info-am install-man \
-+ install-data-am install-driverLTLIBRARIES install-dvi \
-+ install-dvi-am install-exec install-exec-am install-html \
-+ install-html-am install-info install-info-am install-man \
-+ install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am \
-- uninstall-driverLTLIBRARIES uninstall-info-am
-+ uninstall-driverLTLIBRARIES
-
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
-diff -ruN xf86-input-keyboard-1.2.0/src/kbd.c xf86-input-keyboard/src/kbd.c
---- xf86-input-keyboard-1.2.0/src/kbd.c 2006-11-01 22:16:43.000000000 +0000
-+++ xf86-input-keyboard/src/kbd.c 2007-09-03 10:34:00.000000000 +0000
-@@ -383,7 +383,22 @@
- InputInfoPtr pInfo = (InputInfoPtr) device->public.devicePrivate;
- KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-
-- if ( ctrl->leds & XCOMP ) {
-+ if ( ctrl->leds & XLED1) {
-+ pKbd->keyLeds |= CAPSFLAG;
-+ } else {
-+ pKbd->keyLeds &= ~CAPSFLAG;
-+ }
-+ if ( ctrl->leds & XLED2) {
-+ pKbd->keyLeds |= NUMFLAG;
-+ } else {
-+ pKbd->keyLeds &= ~NUMFLAG;
-+ }
-+ if ( ctrl->leds & XLED3) {
-+ pKbd->keyLeds |= SCROLLFLAG;
-+ } else {
-+ pKbd->keyLeds &= ~SCROLLFLAG;
-+ }
-+ if ( ctrl->leds & (XCOMP|XLED4) ) {
- pKbd->keyLeds |= COMPOSEFLAG;
- } else {
- pKbd->keyLeds &= ~COMPOSEFLAG;
-@@ -419,6 +434,8 @@
- kevent.u.keyButtonPointer.rootX = 0;
- kevent.u.keyButtonPointer.rootY = 0;
-
-+/* The server does this for us with i-h. */
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 1
- /*
- * Hmm... here is the biggest hack of every time !
- * It may be possible that a switch-vt procedure has finished BEFORE
-@@ -448,6 +465,8 @@
- (* pKeyboard->public.processInputProc)(&kevent, pKeyboard, 1);
- }
- }
-+#endif
-+
- pKbd->scanPrefix = 0;
-
- if (init) {
-@@ -830,7 +849,7 @@
- MODINFOSTRING1,
- MODINFOSTRING2,
- XORG_VERSION_CURRENT,
-- 1, 1, 0,
-+ PACKAGE_VERSION_MAJOR, PACKAGE_VERSION_MINOR, PACKAGE_VERSION_PATCHLEVEL,
- ABI_CLASS_XINPUT,
- ABI_XINPUT_VERSION,
- MOD_CLASS_XINPUT,
-diff -ruN xf86-input-keyboard-1.2.0/src/lnx_kbd.c xf86-input-keyboard/src/lnx_kbd.c
---- xf86-input-keyboard-1.2.0/src/lnx_kbd.c 2006-11-01 22:18:25.000000000 +0000
-+++ xf86-input-keyboard/src/lnx_kbd.c 2007-09-03 10:34:00.000000000 +0000
-@@ -6,6 +6,10 @@
- * Based on the code from lnx_io.c which is
- * Copyright 1992 by Orest Zborowski <obz@Kodak.com>
- * Copyright 1993 by David Dawes <dawes@xfree86.org>
-+ *
-+ * Portions based on kbdrate.c from util-linux 2.9t, which is
-+ * Copyright 1992 Rickard E. Faith. Distributed under the GPL.
-+ * This program comes with ABSOLUTELY NO WARRANTY.
- */
-
- #define NEED_EVENTS
-diff -ruN xf86-input-keyboard-1.2.0/src/sun_kbd.c xf86-input-keyboard/src/sun_kbd.c
---- xf86-input-keyboard-1.2.0/src/sun_kbd.c 2006-11-01 22:18:26.000000000 +0000
-+++ xf86-input-keyboard/src/sun_kbd.c 2007-09-03 10:34:00.000000000 +0000
-@@ -22,7 +22,7 @@
- * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
- * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
--/* Copyright 2004-2005 Sun Microsystems, Inc. All rights reserved.
-+/* Copyright 2004-2007 Sun Microsystems, Inc. All rights reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the
-@@ -59,42 +59,36 @@
- #include "xf86_OSlib.h"
- #include "xf86OSKbd.h"
- #include "sun_kbd.h"
--
--/***************************************************************************
-- * Common implementation of routines shared by "keyboard" driver in sun_io.c
-- * and "kbd" driver (later on in this file)
-- */
-+#include "atKeynames.h"
-
- #include <sys/stropts.h>
- #include <sys/vuid_event.h>
- #include <sys/kbd.h>
-
--_X_HIDDEN int
--sunKbdOpen(const char *devName, pointer options)
-+static void
-+sunKbdSetLeds(InputInfoPtr pInfo, int leds)
- {
-- int kbdFD;
-- const char *kbdPath = NULL;
-- const char *defaultKbd = "/dev/kbd";
-+ int i;
-
-- if (options != NULL) {
-- kbdPath = xf86SetStrOption(options, "Device", NULL);
-- }
-- if (kbdPath == NULL) {
-- kbdPath = defaultKbd;
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCSLED, &leds));
-+ if (i < 0) {
-+ xf86Msg(X_ERROR, "%s: Failed to set keyboard LED's: %s\n",
-+ pInfo->name, strerror(errno));
- }
-+}
-
-- kbdFD = open(kbdPath, O_RDONLY | O_NONBLOCK);
--
-- if (kbdFD == -1) {
-- xf86Msg(X_ERROR, "%s: cannot open \"%s\"\n", devName, kbdPath);
-- } else {
-- xf86MsgVerb(X_INFO, 3, "%s: Opened device \"%s\"\n", devName, kbdPath);
-- }
--
-- if ((kbdPath != NULL) && (kbdPath != defaultKbd)) {
-- xfree(kbdPath);
-+
-+static int
-+sunKbdGetLeds(InputInfoPtr pInfo)
-+{
-+ int i, leds = 0;
-+
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCGLED, &leds));
-+ if (i < 0) {
-+ xf86Msg(X_ERROR, "%s: Failed to get keyboard LED's: %s\n",
-+ pInfo->name, strerror(errno));
- }
-- return kbdFD;
-+ return leds;
- }
-
-
-@@ -102,15 +96,16 @@
- * Save initial keyboard state. This is called at the start of each server
- * generation.
- */
--
--_X_HIDDEN int
--sunKbdInit(sunKbdPrivPtr priv, int kbdFD, const char *devName, pointer options)
-+static int
-+KbdInit(InputInfoPtr pInfo, int what)
- {
-+ KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-+ sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
-+ pointer options = pInfo->options;
-+
- int ktype, klayout, i;
- const char *ktype_name;
-
-- priv->kbdFD = kbdFD;
-- priv->devName = devName;
- priv->otranslation = -1;
- priv->odirect = -1;
-
-@@ -121,25 +116,25 @@
- }
-
- if (priv->strmod) {
-- SYSCALL(i = ioctl(priv->kbdFD, I_PUSH, priv->strmod));
-+ SYSCALL(i = ioctl(pInfo->fd, I_PUSH, priv->strmod));
- if (i < 0) {
- xf86Msg(X_ERROR,
- "%s: cannot push module '%s' onto keyboard device: %s\n",
-- priv->devName, priv->strmod, strerror(errno));
-+ pInfo->name, priv->strmod, strerror(errno));
- }
- }
-
-- SYSCALL(i = ioctl(kbdFD, KIOCTYPE, &ktype));
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCTYPE, &ktype));
- if (i < 0) {
- xf86Msg(X_ERROR, "%s: Unable to determine keyboard type: %s\n",
-- devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- return BadImplementation;
- }
-
-- SYSCALL(i = ioctl(kbdFD, KIOCLAYOUT, &klayout));
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCLAYOUT, &klayout));
- if (i < 0) {
- xf86Msg(X_ERROR, "%s: Unable to determine keyboard layout: %s\n",
-- devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- return BadImplementation;
- }
-
-@@ -157,213 +152,181 @@
- }
-
- xf86Msg(X_PROBED, "%s: Keyboard type: %s (%d)\n",
-- devName, ktype_name, ktype);
-- xf86Msg(X_PROBED, "%s: Keyboard layout: %d\n", devName, klayout);
-+ pInfo->name, ktype_name, ktype);
-+ xf86Msg(X_PROBED, "%s: Keyboard layout: %d\n", pInfo->name, klayout);
-
- priv->ktype = ktype;
-- priv->keyMap = sunGetKbdMapping(ktype);
-- priv->oleds = sunKbdGetLeds(priv);
-+ priv->oleds = sunKbdGetLeds(pInfo);
-
- return Success;
- }
-
--_X_HIDDEN int
--sunKbdOn(sunKbdPrivPtr priv)
-+
-+static int
-+KbdOn(InputInfoPtr pInfo, int what)
- {
-+ KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-+ sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
-+
- int ktrans, kdirect, i;
-
-- SYSCALL(i = ioctl(priv->kbdFD, KIOCGDIRECT, &kdirect));
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCGDIRECT, &kdirect));
- if (i < 0) {
- xf86Msg(X_ERROR,
- "%s: Unable to determine keyboard direct setting: %s\n",
-- priv->devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- return BadImplementation;
- }
-
- priv->odirect = kdirect;
- kdirect = 1;
-
-- SYSCALL(i = ioctl(priv->kbdFD, KIOCSDIRECT, &kdirect));
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCSDIRECT, &kdirect));
- if (i < 0) {
- xf86Msg(X_ERROR, "%s: Failed turning keyboard direct mode on: %s\n",
-- priv->devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- return BadImplementation;
- }
-
- /* Setup translation */
-
-- SYSCALL(i = ioctl(priv->kbdFD, KIOCGTRANS, &ktrans));
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCGTRANS, &ktrans));
- if (i < 0) {
- xf86Msg(X_ERROR,
- "%s: Unable to determine keyboard translation mode: %s\n",
-- priv->devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- return BadImplementation;
- }
-
- priv->otranslation = ktrans;
- ktrans = TR_UNTRANS_EVENT;
-
-- SYSCALL(i = ioctl(priv->kbdFD, KIOCTRANS, &ktrans));
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCTRANS, &ktrans));
- if (i < 0) {
- xf86Msg(X_ERROR, "%s: Failed setting keyboard translation mode: %s\n",
-- priv->devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- return BadImplementation;
- }
-
-+ /* If Caps Lock or Num Lock LEDs are on when server starts,
-+ * send a fake key down on those keys to set the server state
-+ * to match the LED's.
-+ */
-+ if ( priv->oleds & (LED_CAPS_LOCK | LED_NUM_LOCK) ) {
-+ int capslock = -1;
-+ int numlock = -1;
-+ int j;
-+ TransMapPtr kmap = pKbd->scancodeMap;
-+
-+ for (j = kmap->begin; j < kmap->end ; j++) {
-+ switch (kmap->map[j]) {
-+ case KEY_CapsLock:
-+ capslock = j;
-+ break;
-+ case KEY_NumLock:
-+ numlock = j;
-+ break;
-+ default:
-+ /* nothing to do */
-+ break;
-+ }
-+ if ((capslock >= 0) && (numlock >= 0)) {
-+ break;
-+ }
-+ }
-+ if ((priv->oleds & LED_CAPS_LOCK) && (capslock > 0)) {
-+ pKbd->PostEvent(pInfo, capslock, TRUE); /* Press */
-+ pKbd->PostEvent(pInfo, capslock, FALSE); /* Release */
-+ }
-+ if ((priv->oleds & LED_NUM_LOCK) && (numlock > 0)) {
-+ pKbd->PostEvent(pInfo, numlock, TRUE); /* Press */
-+ pKbd->PostEvent(pInfo, numlock, FALSE); /* Release */
-+ }
-+ }
-+
- return Success;
- }
-
--_X_HIDDEN int
--sunKbdOff(sunKbdPrivPtr priv)
-+static int
-+KbdOff(InputInfoPtr pInfo, int what)
- {
-+ KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-+ sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
-+
- int i;
-
- /* restore original state */
-
-- sunKbdSetLeds(priv, priv->oleds);
-+ sunKbdSetLeds(pInfo, priv->oleds);
-
- if (priv->otranslation != -1) {
-- SYSCALL(i = ioctl(priv->kbdFD, KIOCTRANS, &priv->otranslation));
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCTRANS, &priv->otranslation));
- if (i < 0) {
- xf86Msg(X_ERROR,
- "%s: Unable to restore keyboard translation mode: %s\n",
-- priv->devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- return BadImplementation;
- }
- priv->otranslation = -1;
- }
-
- if (priv->odirect != -1) {
-- SYSCALL(i = ioctl(priv->kbdFD, KIOCSDIRECT, &priv->odirect));
-+ SYSCALL(i = ioctl(pInfo->fd, KIOCSDIRECT, &priv->odirect));
- if (i < 0) {
- xf86Msg(X_ERROR,
- "%s: Unable to restore keyboard direct setting: %s\n",
-- priv->devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- return BadImplementation;
- }
- priv->odirect = -1;
- }
-
- if (priv->strmod) {
-- SYSCALL(i = ioctl(priv->kbdFD, I_POP, priv->strmod));
-+ SYSCALL(i = ioctl(pInfo->fd, I_POP, priv->strmod));
- if (i < 0) {
- xf86Msg(X_WARNING,
- "%s: cannot pop module '%s' off keyboard device: %s\n",
-- priv->devName, priv->strmod, strerror(errno));
-+ pInfo->name, priv->strmod, strerror(errno));
- }
- }
-
- return Success;
- }
-
--_X_HIDDEN void
--sunKbdSoundBell(sunKbdPrivPtr priv, int loudness, int pitch, int duration)
-+
-+static void
-+SoundKbdBell(InputInfoPtr pInfo, int loudness, int pitch, int duration)
- {
-+ KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-+ sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
-+
- int kbdCmd, i;
-
- if (loudness && pitch)
- {
- kbdCmd = KBD_CMD_BELL;
-
-- SYSCALL(i = ioctl (priv->kbdFD, KIOCCMD, &kbdCmd));
-+ SYSCALL(i = ioctl (pInfo->fd, KIOCCMD, &kbdCmd));
- if (i < 0) {
- xf86Msg(X_ERROR, "%s: Failed to activate bell: %s\n",
-- priv->devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- }
-
- usleep(duration * loudness * 20);
-
- kbdCmd = KBD_CMD_NOBELL;
-- SYSCALL(i = ioctl (priv->kbdFD, KIOCCMD, &kbdCmd));
-+ SYSCALL(i = ioctl (pInfo->fd, KIOCCMD, &kbdCmd));
- if (i < 0) {
- xf86Msg(X_ERROR, "%s: Failed to deactivate bell: %s\n",
-- priv->devName, strerror(errno));
-+ pInfo->name, strerror(errno));
- }
- }
- }
-
--_X_HIDDEN void
--sunKbdSetLeds(sunKbdPrivPtr priv, int leds)
--{
-- int i;
--
-- SYSCALL(i = ioctl(priv->kbdFD, KIOCSLED, &leds));
-- if (i < 0) {
-- xf86Msg(X_ERROR, "%s: Failed to set keyboard LED's: %s\n",
-- priv->devName, strerror(errno));
-- }
--}
--
--_X_HIDDEN int
--sunKbdGetLeds(sunKbdPrivPtr priv)
--{
-- int i, leds = 0;
--
-- SYSCALL(i = ioctl(priv->kbdFD, KIOCGLED, &leds));
-- if (i < 0) {
-- xf86Msg(X_ERROR, "%s: Failed to get keyboard LED's: %s\n",
-- priv->devName, strerror(errno));
-- }
-- return leds;
--}
--
--/* ARGSUSED0 */
--_X_HIDDEN void
--sunKbdSetRepeat(sunKbdPrivPtr priv, char rad)
--{
-- /* Nothing to do */
--}
--
--/***************************************************************************
-- * Routines called from "kbd" driver via proc vectors filled in by
-- * xf86OSKbdPreInit().
-- */
--
--
--static int
--KbdInit(InputInfoPtr pInfo, int what)
--{
-- KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-- sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
--
-- return sunKbdInit(priv, pInfo->fd, pInfo->name, pInfo->options);
--}
--
--
--static int
--KbdOn(InputInfoPtr pInfo, int what)
--{
-- KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-- sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
--
-- return sunKbdOn(priv);
--}
--
--static int
--KbdOff(InputInfoPtr pInfo, int what)
--{
-- KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-- sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
--
-- return sunKbdOff(priv);
--}
--
--
--static void
--SoundKbdBell(InputInfoPtr pInfo, int loudness, int pitch, int duration)
--{
-- KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-- sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
--
-- sunKbdSoundBell(priv, loudness, pitch, duration);
--}
--
- static void
- SetKbdLeds(InputInfoPtr pInfo, int leds)
- {
-- KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-- sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
-- int real_leds = sunKbdGetLeds(priv);
-+ int real_leds = sunKbdGetLeds(pInfo);
-
- real_leds &= ~(LED_CAPS_LOCK | LED_NUM_LOCK | LED_SCROLL_LOCK | LED_COMPOSE);
-
-@@ -372,16 +335,14 @@
- if (leds & XLED3) real_leds |= LED_SCROLL_LOCK;
- if (leds & XLED4) real_leds |= LED_COMPOSE;
-
-- sunKbdSetLeds(priv, real_leds);
-+ sunKbdSetLeds(pInfo, real_leds);
- }
-
- static int
- GetKbdLeds(InputInfoPtr pInfo)
- {
-- KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-- sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
- int leds = 0;
-- int real_leds = sunKbdGetLeds(priv);
-+ int real_leds = sunKbdGetLeds(pInfo);
-
- if (real_leds & LED_CAPS_LOCK) leds |= XLED1;
- if (real_leds & LED_NUM_LOCK) leds |= XLED2;
-@@ -391,27 +352,17 @@
- return leds;
- }
-
-+/* ARGSUSED0 */
- static void
- SetKbdRepeat(InputInfoPtr pInfo, char rad)
- {
-- KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-- sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
--
-- sunKbdSetRepeat(priv, rad);
--}
--
--static void
--KbdGetMapping (InputInfoPtr pInfo, KeySymsPtr pKeySyms, CARD8 *pModMap)
--{
-- /* Should probably do something better here */
-- xf86KbdGetMapping(pKeySyms, pModMap);
-+ /* Nothing to do */
- }
-
- static void
- ReadInput(InputInfoPtr pInfo)
- {
- KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-- sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
- Firm_event event[64];
- int nBytes, i;
-
-@@ -420,7 +371,7 @@
- if ((nBytes = read(pInfo->fd, (char *)event, sizeof(event))) > 0)
- {
- for (i = 0; i < (nBytes / sizeof(Firm_event)); i++) {
-- pKbd->PostEvent(pInfo, priv->keyMap[event[i].id],
-+ pKbd->PostEvent(pInfo, event[i].id & 0xFF,
- event[i].value == VKEY_DOWN ? TRUE : FALSE);
- }
- }
-@@ -429,13 +380,34 @@
- static Bool
- OpenKeyboard(InputInfoPtr pInfo)
- {
-- pInfo->fd = sunKbdOpen(pInfo->name, pInfo->options);
-+ const char *kbdPath = NULL;
-+ const char *defaultKbd = "/dev/kbd";
-
-- if (pInfo->fd >= 0) {
-- pInfo->read_input = ReadInput;
-- return TRUE;
-+ if (pInfo->options != NULL) {
-+ kbdPath = xf86SetStrOption(pInfo->options, "Device", NULL);
-+ }
-+ if (kbdPath == NULL) {
-+ kbdPath = defaultKbd;
-+ }
-+
-+ pInfo->fd = open(kbdPath, O_RDONLY | O_NONBLOCK);
-+
-+ if (pInfo->fd == -1) {
-+ xf86Msg(X_ERROR, "%s: cannot open \"%s\"\n", pInfo->name, kbdPath);
- } else {
-+ xf86MsgVerb(X_INFO, 3, "%s: Opened device \"%s\"\n", pInfo->name,
-+ kbdPath);
-+ }
-+
-+ if ((kbdPath != NULL) && (kbdPath != defaultKbd)) {
-+ xfree(kbdPath);
-+ }
-+
-+ if (pInfo->fd == -1) {
- return FALSE;
-+ } else {
-+ pInfo->read_input = ReadInput;
-+ return TRUE;
- }
- }
-
-diff -ruN xf86-input-keyboard-1.2.0/src/sun_kbd.h xf86-input-keyboard/src/sun_kbd.h
---- xf86-input-keyboard-1.2.0/src/sun_kbd.h 2006-11-01 22:18:26.000000000 +0000
-+++ xf86-input-keyboard/src/sun_kbd.h 2007-09-03 10:34:00.000000000 +0000
-@@ -1,4 +1,4 @@
--/* Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-+/* Copyright 2007 Sun Microsystems, Inc. All rights reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the
-@@ -29,41 +29,16 @@
- #ifndef _XORG_SUN_KBD_H_
- #define _XORG_SUN_KBD_H_
-
--/*
-- * Keyboard common implementation routines shared by "keyboard" driver
-- * in sun_io.c and "kbd" driver in sun_kbd.c
-- */
--
- typedef struct {
-- int kbdFD;
-- const char * devName;
- int ktype; /* Keyboard type from KIOCTYPE */
- Bool kbdActive; /* Have we set kbd modes for X? */
- int otranslation; /* Original translation mode */
- int odirect; /* Original "direct" mode setting */
- unsigned char oleds; /* Original LED state */
- const char * strmod; /* Streams module pushed on kbd device */
-- const unsigned char *keyMap;
- } sunKbdPrivRec, *sunKbdPrivPtr;
-
--/* sun_kbd.c */
--extern int sunKbdOpen (const char *devName, pointer options);
--extern int sunKbdInit (sunKbdPrivPtr priv, int kbdFD,
-- const char *devName, pointer options);
--extern int sunKbdOn (sunKbdPrivPtr priv);
--extern int sunKbdOff (sunKbdPrivPtr priv);
--
--extern void sunKbdSoundBell (sunKbdPrivPtr priv,
-- int loudness, int pitch, int duration);
--
--extern void sunKbdSetLeds (sunKbdPrivPtr priv, int leds);
--extern int sunKbdGetLeds (sunKbdPrivPtr priv);
--extern void sunKbdSetRepeat (sunKbdPrivPtr priv, char rad);
--
--/* sun_kbdEv.c */
--#include <sys/vuid_event.h>
--extern void sunPostKbdEvent (int ktype, Firm_event *event);
--
--extern const unsigned char *sunGetKbdMapping(int ktype);
--
-+/* sun_kbdMap.c */
-+extern void KbdGetMapping (InputInfoPtr pInfo, KeySymsPtr pKeySyms,
-+ CARD8 *pModMap);
- #endif
-diff -ruN xf86-input-keyboard-1.2.0/src/sun_kbdEv.c xf86-input-keyboard/src/sun_kbdEv.c
---- xf86-input-keyboard-1.2.0/src/sun_kbdEv.c 2006-11-01 22:18:27.000000000 +0000
-+++ xf86-input-keyboard/src/sun_kbdEv.c 1970-01-01 00:00:00.000000000 +0000
-@@ -1,855 +0,0 @@
--/*
-- * Copyright 1990,91 by Thomas Roell, Dinkelscherben, Germany.
-- * Copyright 1993 by David Dawes <dawes@xfree86.org>
-- *
-- * Permission to use, copy, modify, distribute, and sell this software and its
-- * documentation for any purpose is hereby granted without fee, 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 names of Thomas Roell and David Dawes not be used in advertising or
-- * publicity pertaining to distribution of the software without specific,
-- * written prior permission. Thomas Roell and David Dawes make no
-- * representations about the suitability of this software for any purpose. It
-- * is provided "as is" without express or implied warranty.
-- *
-- * THOMAS ROELL AND DAVID DAWES DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
-- * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.
-- * IN NO EVENT SHALL THOMAS ROELL OR DAVID DAWES 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.
-- */
--
--/* [JCH-96/01/21] Extended std reverse map to four buttons. */
--
--#ifdef HAVE_CONFIG_H
--#include "config.h"
--#endif
--
--#include "xf86.h"
--#include "xf86Priv.h"
--#include "xf86_OSlib.h"
--#include "xf86OSKbd.h"
--#include "sun_kbd.h"
--
--#ifdef XINPUT
--#include <X11/extensions/XI.h>
--#include <X11/extensions/XIproto.h>
--#include "xf86Xinput.h"
--#endif
--
--#include "inputstr.h"
--
--#include <sys/kbd.h>
--#include "atKeynames.h"
--
--#ifdef XKB
--extern Bool noXkbExtension;
--#endif
--
--#define XE_POINTER 1
--#define XE_KEYBOARD 2
--
--#ifdef XINPUT
--#define ENQUEUE(ev, code, direction, dev_type) \
-- (ev)->u.u.detail = (code); \
-- (ev)->u.u.type = (direction); \
-- xf86eqEnqueue((ev))
--#else
--#define ENQUEUE(ev, code, direction, dev_type) \
-- (ev)->u.u.detail = (code); \
-- (ev)->u.u.type = (direction); \
-- mieqEnqueue((ev))
--#endif
--
--static void startautorepeat(long keycode);
--static CARD32 processautorepeat(OsTimerPtr timer, CARD32 now, pointer arg);
--
--static OsTimerPtr sunTimer = NULL;
--
--/* Map the Solaris keycodes to the "XFree86" keycodes. */
--/*
-- * This doesn't seem right. It probably needs to be dependent on a keyboard
-- * type.
-- */
--
--/* Additional Sun Japanese Keyboard Keys not defined in common/atKeynames.h */
--#define KEY_Kanji 0x82
--#define KEY_Execute 0x83
--
--static unsigned char map[256] = {
--#if defined(i386) || defined(__i386) || defined(__i386__) || defined(__x86)
-- KEY_NOTUSED, /* 0 */
-- KEY_Tilde, /* 1 */
-- KEY_1, /* 2 */
-- KEY_2, /* 3 */
-- KEY_3, /* 4 */
-- KEY_4, /* 5 */
-- KEY_5, /* 6 */
-- KEY_6, /* 7 */
-- KEY_7, /* 8 */
-- KEY_8, /* 9 */
-- KEY_9, /* 10 */
-- KEY_0, /* 11 */
-- KEY_Minus, /* 12 */
-- KEY_Equal, /* 13 */
-- 0x7D, /*KEY_P_YEN*/ /* 14 */
-- KEY_BackSpace, /* 15 */
-- KEY_Tab, /* 16 */
-- KEY_Q, /* 17 */
-- KEY_W, /* 18 */
-- KEY_E, /* 19 */
-- KEY_R, /* 20 */
-- KEY_T, /* 21 */
-- KEY_Y, /* 22 */
-- KEY_U, /* 23 */
-- KEY_I, /* 24 */
-- KEY_O, /* 25 */
-- KEY_P, /* 26 */
-- KEY_LBrace, /* 27 */
-- KEY_RBrace, /* 28 */
-- KEY_BSlash, /* 29 */
-- KEY_CapsLock, /* 30 */
-- KEY_A, /* 31 */
-- KEY_S, /* 32 */
-- KEY_D, /* 33 */
-- KEY_F, /* 34 */
-- KEY_G, /* 35 */
-- KEY_H, /* 36 */
-- KEY_J, /* 37 */
-- KEY_K, /* 38 */
-- KEY_L, /* 39 */
-- KEY_SemiColon, /* 40 */
-- KEY_Quote, /* 41 */
-- KEY_UNKNOWN, /* 42 */
-- KEY_Enter, /* 43 */
-- KEY_ShiftL, /* 44 */
-- KEY_Less, /* 45 */
-- KEY_Z, /* 46 */
-- KEY_X, /* 47 */
-- KEY_C, /* 48 */
-- KEY_V, /* 49 */
-- KEY_B, /* 50 */
-- KEY_N, /* 51 */
-- KEY_M, /* 52 */
-- KEY_Comma, /* 53 */
-- KEY_Period, /* 54 */
-- KEY_Slash, /* 55 */
-- KEY_BSlash2, /* 56 */
-- KEY_ShiftR, /* 57 */
-- KEY_LCtrl, /* 58 */
-- KEY_LMeta, /* 59 */
-- KEY_Alt, /* 60 */
-- KEY_Space, /* 61 */
-- KEY_AltLang, /* 62 */
-- KEY_RMeta, /* 63 */
-- KEY_RCtrl, /* 64 */
-- KEY_Menu, /* 65 */
-- KEY_UNKNOWN, /* 66 */
-- KEY_UNKNOWN, /* 67 */
-- KEY_UNKNOWN, /* 68 */
-- KEY_UNKNOWN, /* 69 */
-- KEY_UNKNOWN, /* 70 */
-- KEY_UNKNOWN, /* 71 */
-- KEY_UNKNOWN, /* 72 */
-- KEY_UNKNOWN, /* 73 */
-- KEY_UNKNOWN, /* 74 */
-- KEY_Insert, /* 75 */
-- KEY_Delete, /* 76 */
-- KEY_UNKNOWN, /* 77 */
-- KEY_UNKNOWN, /* 78 */
-- KEY_Left, /* 79 */
-- KEY_Home, /* 80 */
-- KEY_End, /* 81 */
-- KEY_UNKNOWN, /* 82 */
-- KEY_Up, /* 83 */
-- KEY_Down, /* 84 */
-- KEY_PgUp, /* 85 */
-- KEY_PgDown, /* 86 */
-- KEY_UNKNOWN, /* 87 */
-- KEY_UNKNOWN, /* 88 */
-- KEY_Right, /* 89 */
-- KEY_NumLock, /* 90 */
-- KEY_KP_7, /* 91 */
-- KEY_KP_4, /* 92 */
-- KEY_KP_1, /* 93 */
-- KEY_UNKNOWN, /* 94 */
-- KEY_KP_Divide, /* 95 */
-- KEY_KP_8, /* 96 */
-- KEY_KP_5, /* 97 */
-- KEY_KP_2, /* 98 */
-- KEY_KP_0, /* 99 */
-- KEY_KP_Multiply, /* 100 */
-- KEY_KP_9, /* 101 */
-- KEY_KP_6, /* 102 */
-- KEY_KP_3, /* 103 */
-- KEY_KP_Decimal, /* 104 */
-- KEY_KP_Minus, /* 105 */
-- KEY_KP_Plus, /* 106 */
-- KEY_UNKNOWN, /* 107 */
-- KEY_KP_Enter, /* 108 */
-- KEY_UNKNOWN, /* 109 */
-- KEY_Escape, /* 110 */
-- KEY_UNKNOWN, /* 111 */
-- KEY_F1, /* 112 */
-- KEY_F2, /* 113 */
-- KEY_F3, /* 114 */
-- KEY_F4, /* 115 */
-- KEY_F5, /* 116 */
-- KEY_F6, /* 117 */
-- KEY_F7, /* 118 */
-- KEY_F8, /* 119 */
-- KEY_F9, /* 120 */
-- KEY_F10, /* 121 */
-- KEY_F11, /* 122 */
-- KEY_F12, /* 123 */
-- KEY_Print, /* 124 */
-- KEY_ScrollLock, /* 125 */
-- KEY_Pause, /* 126 */
-- KEY_UNKNOWN, /* 127 */
-- KEY_UNKNOWN, /* 128 */
-- KEY_UNKNOWN, /* 129 */
-- KEY_UNKNOWN, /* 130 */
-- KEY_NFER, /* 131 */
-- KEY_XFER, /* 132 */
-- KEY_HKTG, /* 133 */
-- KEY_UNKNOWN, /* 134 */
--#elif defined(sparc) || defined(__sparc__)
-- KEY_UNKNOWN, /* 0x00 */
-- KEY_UNKNOWN, /* 0x01 */
-- KEY_UNKNOWN, /* 0x02 */
-- KEY_UNKNOWN, /* 0x03 */
-- KEY_UNKNOWN, /* 0x04 */
-- KEY_F1, /* 0x05 */
-- KEY_F2, /* 0x06 */
-- KEY_F10, /* 0x07 */
-- KEY_F3, /* 0x08 */
-- KEY_F11, /* 0x09 */
-- KEY_F4, /* 0x0A */
-- KEY_F12, /* 0x0B */
-- KEY_F5, /* 0x0C */
-- KEY_UNKNOWN, /* 0x0D */
-- KEY_F6, /* 0x0E */
-- KEY_UNKNOWN, /* 0x0F */
-- KEY_F7, /* 0x10 */
-- KEY_F8, /* 0x11 */
-- KEY_F9, /* 0x12 */
-- KEY_Alt, /* 0x13 */
-- KEY_Up, /* 0x14 */
-- KEY_Pause, /* 0x15 */
-- KEY_SysReqest, /* 0x16 */
-- KEY_ScrollLock, /* 0x17 */
-- KEY_Left, /* 0x18 */
-- KEY_UNKNOWN, /* 0x19 */
-- KEY_UNKNOWN, /* 0x1A */
-- KEY_Down, /* 0x1B */
-- KEY_Right, /* 0x1C */
-- KEY_Escape, /* 0x1D */
-- KEY_1, /* 0x1E */
-- KEY_2, /* 0x1F */
-- KEY_3, /* 0x20 */
-- KEY_4, /* 0x21 */
-- KEY_5, /* 0x22 */
-- KEY_6, /* 0x23 */
-- KEY_7, /* 0x24 */
-- KEY_8, /* 0x25 */
-- KEY_9, /* 0x26 */
-- KEY_0, /* 0x27 */
-- KEY_Minus, /* 0x28 */
-- KEY_Equal, /* 0x29 */
-- KEY_Tilde, /* 0x2A */
-- KEY_BackSpace, /* 0x2B */
-- KEY_Insert, /* 0x2C */
-- KEY_UNKNOWN, /* 0x2D */
-- KEY_KP_Divide, /* 0x2E */
-- KEY_KP_Multiply, /* 0x2F */
-- KEY_UNKNOWN, /* 0x30 */
-- KEY_UNKNOWN, /* 0x31 */
-- KEY_KP_Decimal, /* 0x32 */
-- KEY_UNKNOWN, /* 0x33 */
-- KEY_Home, /* 0x34 */
-- KEY_Tab, /* 0x35 */
-- KEY_Q, /* 0x36 */
-- KEY_W, /* 0x37 */
-- KEY_E, /* 0x38 */
-- KEY_R, /* 0x39 */
-- KEY_T, /* 0x3A */
-- KEY_Y, /* 0x3B */
-- KEY_U, /* 0x3C */
-- KEY_I, /* 0x3D */
-- KEY_O, /* 0x3E */
-- KEY_P, /* 0x3F */
-- KEY_LBrace, /* 0x40 */
-- KEY_RBrace, /* 0x41 */
-- KEY_Delete, /* 0x42 */
-- KEY_UNKNOWN, /* 0x43 */
-- KEY_KP_7, /* 0x44 */
-- KEY_KP_8, /* 0x45 */
-- KEY_KP_9, /* 0x46 */
-- KEY_KP_Minus, /* 0x47 */
-- KEY_UNKNOWN, /* 0x48 */
-- KEY_UNKNOWN, /* 0x49 */
-- KEY_End, /* 0x4A */
-- KEY_UNKNOWN, /* 0x4B */
-- KEY_LCtrl, /* 0x4C */
-- KEY_A, /* 0x4D */
-- KEY_S, /* 0x4E */
-- KEY_D, /* 0x4F */
-- KEY_F, /* 0x50 */
-- KEY_G, /* 0x51 */
-- KEY_H, /* 0x52 */
-- KEY_J, /* 0x53 */
-- KEY_K, /* 0x54 */
-- KEY_L, /* 0x55 */
-- KEY_SemiColon, /* 0x56 */
-- KEY_Quote, /* 0x57 */
-- KEY_BSlash, /* 0x58 */
-- KEY_Enter, /* 0x59 */
-- KEY_KP_Enter, /* 0x5A */
-- KEY_KP_4, /* 0x5B */
-- KEY_KP_5, /* 0x5C */
-- KEY_KP_6, /* 0x5D */
-- KEY_KP_0, /* 0x5E */
-- KEY_UNKNOWN, /* 0x5F */
-- KEY_PgUp, /* 0x60 */
-- KEY_UNKNOWN, /* 0x61 */
-- KEY_NumLock, /* 0x62 */
-- KEY_ShiftL, /* 0x63 */
-- KEY_Z, /* 0x64 */
-- KEY_X, /* 0x65 */
-- KEY_C, /* 0x66 */
-- KEY_V, /* 0x67 */
-- KEY_B, /* 0x68 */
-- KEY_N, /* 0x69 */
-- KEY_M, /* 0x6A */
-- KEY_Comma, /* 0x6B */
-- KEY_Period, /* 0x6C */
-- KEY_Slash, /* 0x6D */
-- KEY_ShiftR, /* 0x6E */
-- KEY_UNKNOWN, /* 0x6F */
-- KEY_KP_1, /* 0x70 */
-- KEY_KP_2, /* 0x71 */
-- KEY_KP_3, /* 0x72 */
-- KEY_UNKNOWN, /* 0x73 */
-- KEY_UNKNOWN, /* 0x74 */
-- KEY_UNKNOWN, /* 0x75 */
-- KEY_UNKNOWN, /* 0x76 */
-- KEY_CapsLock, /* 0x77 */
-- KEY_LMeta, /* 0x78 */
-- KEY_Space, /* 0x79 */
-- KEY_RMeta, /* 0x7A */
-- KEY_PgDown, /* 0x7B */
-- KEY_UNKNOWN, /* 0x7C */
-- KEY_KP_Plus, /* 0x7D */
-- KEY_UNKNOWN, /* 0x7E */
-- KEY_UNKNOWN, /* 0x7F */
--#endif
-- /* The rest default to KEY_UNKNOWN */
--};
--
--#if defined(KB_USB)
--static unsigned char usbmap[256] = {
--/*
-- * partially taken from ../bsd/bsd_KbdMap.c
-- *
-- * added keycodes for Sun special keys (left function keys, audio control)
-- */
-- /* 0 */ KEY_NOTUSED,
-- /* 1 */ KEY_NOTUSED,
-- /* 2 */ KEY_NOTUSED,
-- /* 3 */ KEY_NOTUSED,
-- /* 4 */ KEY_A,
-- /* 5 */ KEY_B,
-- /* 6 */ KEY_C,
-- /* 7 */ KEY_D,
-- /* 8 */ KEY_E,
-- /* 9 */ KEY_F,
-- /* 10 */ KEY_G,
-- /* 11 */ KEY_H,
-- /* 12 */ KEY_I,
-- /* 13 */ KEY_J,
-- /* 14 */ KEY_K,
-- /* 15 */ KEY_L,
-- /* 16 */ KEY_M,
-- /* 17 */ KEY_N,
-- /* 18 */ KEY_O,
-- /* 19 */ KEY_P,
-- /* 20 */ KEY_Q,
-- /* 21 */ KEY_R,
-- /* 22 */ KEY_S,
-- /* 23 */ KEY_T,
-- /* 24 */ KEY_U,
-- /* 25 */ KEY_V,
-- /* 26 */ KEY_W,
-- /* 27 */ KEY_X,
-- /* 28 */ KEY_Y,
-- /* 29 */ KEY_Z,
-- /* 30 */ KEY_1, /* 1 !*/
-- /* 31 */ KEY_2, /* 2 @ */
-- /* 32 */ KEY_3, /* 3 # */
-- /* 33 */ KEY_4, /* 4 $ */
-- /* 34 */ KEY_5, /* 5 % */
-- /* 35 */ KEY_6, /* 6 ^ */
-- /* 36 */ KEY_7, /* 7 & */
-- /* 37 */ KEY_8, /* 8 * */
-- /* 38 */ KEY_9, /* 9 ( */
-- /* 39 */ KEY_0, /* 0 ) */
-- /* 40 */ KEY_Enter, /* Return */
-- /* 41 */ KEY_Escape, /* Escape */
-- /* 42 */ KEY_BackSpace, /* Backspace Delete */
-- /* 43 */ KEY_Tab, /* Tab */
-- /* 44 */ KEY_Space, /* Space */
-- /* 45 */ KEY_Minus, /* - _ */
-- /* 46 */ KEY_Equal, /* = + */
-- /* 47 */ KEY_LBrace, /* [ { */
-- /* 48 */ KEY_RBrace, /* ] } */
-- /* 49 */ KEY_BSlash, /* \ | */
-- /* 50 */ KEY_BSlash, /* \ _ # ~ on some keyboards */
-- /* 51 */ KEY_SemiColon, /* ; : */
-- /* 52 */ KEY_Quote, /* ' " */
-- /* 53 */ KEY_Tilde, /* ` ~ */
-- /* 54 */ KEY_Comma, /* , < */
-- /* 55 */ KEY_Period, /* . > */
-- /* 56 */ KEY_Slash, /* / ? */
-- /* 57 */ KEY_CapsLock, /* Caps Lock */
-- /* 58 */ KEY_F1, /* F1 */
-- /* 59 */ KEY_F2, /* F2 */
-- /* 60 */ KEY_F3, /* F3 */
-- /* 61 */ KEY_F4, /* F4 */
-- /* 62 */ KEY_F5, /* F5 */
-- /* 63 */ KEY_F6, /* F6 */
-- /* 64 */ KEY_F7, /* F7 */
-- /* 65 */ KEY_F8, /* F8 */
-- /* 66 */ KEY_F9, /* F9 */
-- /* 67 */ KEY_F10, /* F10 */
-- /* 68 */ KEY_F11, /* F11 */
-- /* 69 */ KEY_F12, /* F12 */
-- /* 70 */ KEY_Print, /* PrintScrn SysReq */
-- /* 71 */ KEY_ScrollLock, /* Scroll Lock */
-- /* 72 */ KEY_Pause, /* Pause Break */
-- /* 73 */ KEY_Insert, /* Insert XXX Help on some Mac Keyboards */
-- /* 74 */ KEY_Home, /* Home */
-- /* 75 */ KEY_PgUp, /* Page Up */
-- /* 76 */ KEY_Delete, /* Delete */
-- /* 77 */ KEY_End, /* End */
-- /* 78 */ KEY_PgDown, /* Page Down */
-- /* 79 */ KEY_Right, /* Right Arrow */
-- /* 80 */ KEY_Left, /* Left Arrow */
-- /* 81 */ KEY_Down, /* Down Arrow */
-- /* 82 */ KEY_Up, /* Up Arrow */
-- /* 83 */ KEY_NumLock, /* Num Lock */
-- /* 84 */ KEY_KP_Divide, /* Keypad / */
-- /* 85 */ KEY_KP_Multiply, /* Keypad * */
-- /* 86 */ KEY_KP_Minus, /* Keypad - */
-- /* 87 */ KEY_KP_Plus, /* Keypad + */
-- /* 88 */ KEY_KP_Enter, /* Keypad Enter */
-- /* 89 */ KEY_KP_1, /* Keypad 1 End */
-- /* 90 */ KEY_KP_2, /* Keypad 2 Down */
-- /* 91 */ KEY_KP_3, /* Keypad 3 Pg Down */
-- /* 92 */ KEY_KP_4, /* Keypad 4 Left */
-- /* 93 */ KEY_KP_5, /* Keypad 5 */
-- /* 94 */ KEY_KP_6, /* Keypad 6 */
-- /* 95 */ KEY_KP_7, /* Keypad 7 Home */
-- /* 96 */ KEY_KP_8, /* Keypad 8 Up */
-- /* 97 */ KEY_KP_9, /* KEypad 9 Pg Up */
-- /* 98 */ KEY_KP_0, /* Keypad 0 Ins */
-- /* 99 */ KEY_KP_Decimal, /* Keypad . Del */
-- /* 100 */ KEY_Less, /* < > on some keyboards */
-- /* 101 */ KEY_Menu, /* Menu */
-- /* 102 */ KEY_Power, /* Sun: Power */
-- /* 103 */ KEY_KP_Equal, /* Keypad = on Mac keyboards */
-- /* 104 */ KEY_NOTUSED,
-- /* 105 */ KEY_NOTUSED,
-- /* 106 */ KEY_NOTUSED,
-- /* 107 */ KEY_NOTUSED,
-- /* 108 */ KEY_NOTUSED,
-- /* 109 */ KEY_NOTUSED,
-- /* 110 */ KEY_NOTUSED,
-- /* 111 */ KEY_NOTUSED,
-- /* 112 */ KEY_NOTUSED,
-- /* 113 */ KEY_NOTUSED,
-- /* 114 */ KEY_NOTUSED,
-- /* 115 */ KEY_NOTUSED,
-- /* 116 */ KEY_L7, /* Sun: Open */
-- /* 117 */ KEY_Help, /* Sun: Help */
-- /* 118 */ KEY_L3, /* Sun: Props */
-- /* 119 */ KEY_L5, /* Sun: Front */
-- /* 120 */ KEY_L1, /* Sun: Stop */
-- /* 121 */ KEY_L2, /* Sun: Again */
-- /* 122 */ KEY_L4, /* Sun: Undo */
-- /* 123 */ KEY_L10, /* Sun: Cut */
-- /* 124 */ KEY_L6, /* Sun: Copy */
-- /* 125 */ KEY_L8, /* Sun: Paste */
-- /* 126 */ KEY_L9, /* Sun: Find */
-- /* 127 */ KEY_Mute, /* Sun: AudioMute */
-- /* 128 */ KEY_AudioRaise, /* Sun: AudioRaise */
-- /* 129 */ KEY_AudioLower, /* Sun: AudioLower */
-- /* 130 */ KEY_NOTUSED,
-- /* 131 */ KEY_NOTUSED,
-- /* 132 */ KEY_NOTUSED,
-- /* 133 */ KEY_NOTUSED,
-- /* 134 */ KEY_NOTUSED,
-- /* 135 */ KEY_BSlash2, /* Sun Japanese Kbd: Backslash / Underscore */
-- /* 136 */ KEY_XFER, /* Sun Japanese Kbd: Henkan Mode */
-- /* 137 */ KEY_Yen, /* Sun Japanese Kbd: Yen / Brokenbar */
-- /* 138 */ KEY_Kanji, /* Sun Japanese Kbd: Kanji */
-- /* 139 */ KEY_Execute, /* Sun Japanese Kbd: Execute */
-- /* 140 */ KEY_NOTUSED,
-- /* 141 */ KEY_NOTUSED,
-- /* 142 */ KEY_NOTUSED,
-- /* 143 */ KEY_NOTUSED,
-- /* 144 */ KEY_NOTUSED,
-- /* 145 */ KEY_NOTUSED,
-- /* 146 */ KEY_NOTUSED,
-- /* 147 */ KEY_NOTUSED,
-- /* 148 */ KEY_NOTUSED,
-- /* 149 */ KEY_NOTUSED,
-- /* 150 */ KEY_NOTUSED,
-- /* 151 */ KEY_NOTUSED,
-- /* 152 */ KEY_NOTUSED,
-- /* 153 */ KEY_NOTUSED,
-- /* 154 */ KEY_NOTUSED,
-- /* 155 */ KEY_NOTUSED,
-- /* 156 */ KEY_NOTUSED,
-- /* 157 */ KEY_NOTUSED,
-- /* 158 */ KEY_NOTUSED,
-- /* 159 */ KEY_NOTUSED,
-- /* 160 */ KEY_NOTUSED,
-- /* 161 */ KEY_NOTUSED,
-- /* 162 */ KEY_NOTUSED,
-- /* 163 */ KEY_NOTUSED,
-- /* 164 */ KEY_NOTUSED,
-- /* 165 */ KEY_NOTUSED,
-- /* 166 */ KEY_NOTUSED,
-- /* 167 */ KEY_NOTUSED,
-- /* 168 */ KEY_NOTUSED,
-- /* 169 */ KEY_NOTUSED,
-- /* 170 */ KEY_NOTUSED,
-- /* 171 */ KEY_NOTUSED,
-- /* 172 */ KEY_NOTUSED,
-- /* 173 */ KEY_NOTUSED,
-- /* 174 */ KEY_NOTUSED,
-- /* 175 */ KEY_NOTUSED,
-- /* 176 */ KEY_NOTUSED,
-- /* 177 */ KEY_NOTUSED,
-- /* 178 */ KEY_NOTUSED,
-- /* 179 */ KEY_NOTUSED,
-- /* 180 */ KEY_NOTUSED,
-- /* 181 */ KEY_NOTUSED,
-- /* 182 */ KEY_NOTUSED,
-- /* 183 */ KEY_NOTUSED,
-- /* 184 */ KEY_NOTUSED,
-- /* 185 */ KEY_NOTUSED,
-- /* 186 */ KEY_NOTUSED,
-- /* 187 */ KEY_NOTUSED,
-- /* 188 */ KEY_NOTUSED,
-- /* 189 */ KEY_NOTUSED,
-- /* 190 */ KEY_NOTUSED,
-- /* 191 */ KEY_NOTUSED,
-- /* 192 */ KEY_NOTUSED,
-- /* 193 */ KEY_NOTUSED,
-- /* 194 */ KEY_NOTUSED,
-- /* 195 */ KEY_NOTUSED,
-- /* 196 */ KEY_NOTUSED,
-- /* 197 */ KEY_NOTUSED,
-- /* 198 */ KEY_NOTUSED,
-- /* 199 */ KEY_NOTUSED,
-- /* 200 */ KEY_NOTUSED,
-- /* 201 */ KEY_NOTUSED,
-- /* 202 */ KEY_NOTUSED,
-- /* 203 */ KEY_NOTUSED,
-- /* 204 */ KEY_NOTUSED,
-- /* 205 */ KEY_NOTUSED,
-- /* 206 */ KEY_NOTUSED,
-- /* 207 */ KEY_NOTUSED,
-- /* 208 */ KEY_NOTUSED,
-- /* 209 */ KEY_NOTUSED,
-- /* 210 */ KEY_NOTUSED,
-- /* 211 */ KEY_NOTUSED,
-- /* 212 */ KEY_NOTUSED,
-- /* 213 */ KEY_NOTUSED,
-- /* 214 */ KEY_NOTUSED,
-- /* 215 */ KEY_NOTUSED,
-- /* 216 */ KEY_NOTUSED,
-- /* 217 */ KEY_NOTUSED,
-- /* 218 */ KEY_NOTUSED,
-- /* 219 */ KEY_NOTUSED,
-- /* 220 */ KEY_NOTUSED,
-- /* 221 */ KEY_NOTUSED,
-- /* 222 */ KEY_NOTUSED,
-- /* 223 */ KEY_NOTUSED,
-- /* 224 */ KEY_LCtrl, /* Left Control */
-- /* 225 */ KEY_ShiftL, /* Left Shift */
-- /* 226 */ KEY_Alt, /* Left Alt */
-- /* 227 */ KEY_LMeta, /* Left Meta */
-- /* 228 */ KEY_RCtrl, /* Right Control */
-- /* 229 */ KEY_ShiftR, /* Right Shift */
-- /* 230 */ KEY_AltLang, /* Right Alt, AKA AltGr */
-- /* 231 */ KEY_RMeta, /* Right Meta */
--};
--
--#endif /* KB_USB */
--
--_X_HIDDEN const unsigned char *
--sunGetKbdMapping(int ktype) {
--#if defined(KB_USB)
-- if (ktype == KB_USB)
-- return usbmap;
-- else
--#endif
-- return map;
--}
--
--
--/*
-- * sunPostKbdEvent --
-- * Translate the raw hardware Firm_event into an XEvent, and tell DIX
-- * about it. KeyCode preprocessing and so on is done ...
-- *
-- * Most of the Solaris stuff has whacked Panix/PC98 support in the
-- * interests of simplicity - DWH 8/30/99
-- */
--
--_X_HIDDEN void
--sunPostKbdEvent(int sun_ktype, Firm_event *event)
--{
-- Bool down;
-- KeyClassRec *keyc = ((DeviceIntPtr)xf86Info.pKeyboard)->key;
-- Bool updateLeds = FALSE;
-- xEvent kevent;
-- KeySym *keysym;
-- int keycode;
-- static int lockkeys = 0;
--
-- /* Give down a value */
-- if (event->value == VKEY_DOWN)
-- down = TRUE;
-- else
-- down = FALSE;
--
--
--#if defined(KB_USB)
-- if(sun_ktype == KB_USB)
-- keycode = usbmap[event->id];
-- else
--#endif
-- keycode = map[event->id];
--
-- /*
-- * and now get some special keysequences
-- */
--
--#ifdef XKB
-- if (((xf86Info.ddxSpecialKeys == SKWhenNeeded) &&
-- (!xf86Info.ActionKeyBindingsSet)) ||
-- noXkbExtension || (xf86Info.ddxSpecialKeys == SKAlways))
--#endif
-- {
-- if (!(ModifierDown(ShiftMask)) &&
-- ((ModifierDown(ControlMask | AltMask)) ||
-- (ModifierDown(ControlMask | AltLangMask))))
-- {
-- switch (keycode) {
-- /*
-- * The idea here is to pass the scancode down to a list of
-- * registered routines. There should be some standard conventions
-- * for processing certain keys.
-- */
-- case KEY_BackSpace:
-- xf86ProcessActionEvent(ACTION_TERMINATE, NULL);
-- break;
--
-- /*
-- * Check grabs
-- */
-- case KEY_KP_Divide:
-- xf86ProcessActionEvent(ACTION_DISABLEGRAB, NULL);
-- break;
-- case KEY_KP_Multiply:
-- xf86ProcessActionEvent(ACTION_CLOSECLIENT, NULL);
-- break;
--
-- /*
-- * Video mode switches
-- */
-- case KEY_KP_Minus: /* Keypad - */
-- if (down) xf86ProcessActionEvent(ACTION_PREV_MODE, NULL);
-- if (!xf86Info.dontZoom) return;
-- break;
--
-- case KEY_KP_Plus: /* Keypad + */
-- if (down) xf86ProcessActionEvent(ACTION_NEXT_MODE, NULL);
-- if (!xf86Info.dontZoom) return;
-- break;
-- }
-- }
-- }
--
-- /*
-- * Now map the scancodes to real X-keycodes ...
-- */
-- if (keycode == KEY_NOTUSED) {
-- xf86MsgVerb(X_INFO, 0,
-- "raw code %d mapped to KEY_NOTUSED -- please report\n", event->id);
-- return;
-- }
-- if (keycode == KEY_UNKNOWN) {
-- xf86MsgVerb(X_INFO, 0,
-- "raw code %d mapped to KEY_UNKNOWN -- please report\n", event->id);
-- return;
-- }
-- keycode += MIN_KEYCODE;
-- keysym = keyc->curKeySyms.map +
-- (keyc->curKeySyms.mapWidth *
-- (keycode - keyc->curKeySyms.minKeyCode));
--
--#ifdef XKB
-- if (noXkbExtension)
--#endif
-- {
-- /*
-- * Toggle lock keys.
-- */
--#define CAPSFLAG 0x01
--#define NUMFLAG 0x02
--#define SCROLLFLAG 0x04
--#define MODEFLAG 0x08
--
-- if (down) {
-- /*
-- * Handle the KeyPresses of the lock keys.
-- */
--
-- switch (keysym[0]) {
--
-- case XK_Caps_Lock:
-- if (lockkeys & CAPSFLAG) {
-- lockkeys &= ~CAPSFLAG;
-- return;
-- }
-- lockkeys |= CAPSFLAG;
-- updateLeds = TRUE;
-- xf86Info.capsLock = down;
-- break;
--
-- case XK_Num_Lock:
-- if (lockkeys & NUMFLAG) {
-- lockkeys &= ~NUMFLAG;
-- return;
-- }
-- lockkeys |= NUMFLAG;
-- updateLeds = TRUE;
-- xf86Info.numLock = down;
-- break;
--
-- case XK_Scroll_Lock:
-- if (lockkeys & SCROLLFLAG) {
-- lockkeys &= ~SCROLLFLAG;
-- return;
-- }
-- lockkeys |= SCROLLFLAG;
-- updateLeds = TRUE;
-- xf86Info.scrollLock = down;
-- break;
-- }
-- } else {
-- /*
-- * Handle the releases of the lock keys.
-- */
--
-- switch (keysym[0]) {
--
-- case XK_Caps_Lock:
-- if (lockkeys & CAPSFLAG)
-- return;
-- updateLeds = TRUE;
-- xf86Info.capsLock = down;
-- break;
--
-- case XK_Num_Lock:
-- if (lockkeys & NUMFLAG)
-- return;
-- updateLeds = TRUE;
-- xf86Info.numLock = down;
-- break;
--
-- case XK_Scroll_Lock:
-- if (lockkeys & SCROLLFLAG)
-- return;
-- updateLeds = TRUE;
-- xf86Info.scrollLock = down;
-- break;
-- }
-- }
--
-- if (updateLeds)
-- xf86KbdLeds();
--
-- /*
-- * If this keycode is not a modifier key, and its down initiate the
-- * autorepeate sequence. (Only necessary if not using XKB).
-- *
-- * If its not down, then reset the timer.
-- */
-- if (!keyc->modifierMap[keycode]) {
-- if (down) {
-- startautorepeat(keycode);
-- } else {
-- TimerFree(sunTimer);
-- sunTimer = NULL;
-- }
-- }
-- }
--
-- xf86Info.lastEventTime =
-- kevent.u.keyButtonPointer.time =
-- GetTimeInMillis();
--
-- /*
-- * And now send these prefixes ...
-- * NOTE: There cannot be multiple Mode_Switch keys !!!!
-- */
--
-- ENQUEUE(&kevent, keycode, (down ? KeyPress : KeyRelease), XE_KEYBOARD);
--}
--
--
--
--/*
-- * Autorepeat stuff
-- */
--
--void
--startautorepeat(long keycode)
--{
-- sunTimer = TimerSet(sunTimer, /* Timer */
-- 0, /* Flags */
-- xf86Info.kbdDelay, /* millis */
-- processautorepeat, /* callback */
-- (pointer) keycode); /* arg for timer */
--}
--
--CARD32
--processautorepeat(OsTimerPtr timer, CARD32 now, pointer arg)
--{
-- xEvent kevent;
-- int keycode;
--
-- keycode = (long)arg;
--
-- xf86Info.lastEventTime =
-- kevent.u.keyButtonPointer.time =
-- GetTimeInMillis();
--
-- /*
-- * Repeat a key by faking a KeyRelease, and a KeyPress event in rapid
-- * succession
-- */
--
-- ENQUEUE(&kevent, keycode, KeyRelease, XE_KEYBOARD);
-- ENQUEUE(&kevent, keycode, KeyPress, XE_KEYBOARD);
--
-- /* And return the appropriate value so we get rescheduled */
-- return xf86Info.kbdRate;
--}
-diff -ruN xf86-input-keyboard-1.2.0/src/sun_kbdMap.c xf86-input-keyboard/src/sun_kbdMap.c
---- xf86-input-keyboard-1.2.0/src/sun_kbdMap.c 1970-01-01 00:00:00.000000000 +0000
-+++ xf86-input-keyboard/src/sun_kbdMap.c 2007-09-03 10:34:00.000000000 +0000
-@@ -0,0 +1,671 @@
-+/*
-+ * Copyright 1990,91 by Thomas Roell, Dinkelscherben, Germany.
-+ * Copyright 1993 by David Dawes <dawes@xfree86.org>
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, 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 names of Thomas Roell and David Dawes not be used in advertising or
-+ * publicity pertaining to distribution of the software without specific,
-+ * written prior permission. Thomas Roell and David Dawes make no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * THOMAS ROELL AND DAVID DAWES DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
-+ * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.
-+ * IN NO EVENT SHALL THOMAS ROELL OR DAVID DAWES 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.
-+ */
-+
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
-+#include <X11/Xfuncproto.h>
-+#include <X11/Sunkeysym.h>
-+#include "atKeynames.h"
-+#include "xf86OSKbd.h"
-+#include "xf86Keymap.h"
-+#include "sun_kbd.h"
-+
-+#include <sys/kbd.h>
-+
-+/* Map the Solaris keycodes to the "XFree86" keycodes. */
-+
-+/* Additional Sun Japanese Keyboard Keys not defined in common/atKeynames.h */
-+#define KEY_Kanji 0x82
-+#define KEY_Execute 0x83
-+
-+static unsigned char sunmap[256] = {
-+#if defined(i386) || defined(__i386) || defined(__i386__) || defined(__x86)
-+ KEY_NOTUSED, /* 0 */
-+ KEY_Tilde, /* 1 */
-+ KEY_1, /* 2 */
-+ KEY_2, /* 3 */
-+ KEY_3, /* 4 */
-+ KEY_4, /* 5 */
-+ KEY_5, /* 6 */
-+ KEY_6, /* 7 */
-+ KEY_7, /* 8 */
-+ KEY_8, /* 9 */
-+ KEY_9, /* 10 */
-+ KEY_0, /* 11 */
-+ KEY_Minus, /* 12 */
-+ KEY_Equal, /* 13 */
-+ 0x7D, /*KEY_P_YEN*/ /* 14 */
-+ KEY_BackSpace, /* 15 */
-+ KEY_Tab, /* 16 */
-+ KEY_Q, /* 17 */
-+ KEY_W, /* 18 */
-+ KEY_E, /* 19 */
-+ KEY_R, /* 20 */
-+ KEY_T, /* 21 */
-+ KEY_Y, /* 22 */
-+ KEY_U, /* 23 */
-+ KEY_I, /* 24 */
-+ KEY_O, /* 25 */
-+ KEY_P, /* 26 */
-+ KEY_LBrace, /* 27 */
-+ KEY_RBrace, /* 28 */
-+ KEY_BSlash, /* 29 */
-+ KEY_CapsLock, /* 30 */
-+ KEY_A, /* 31 */
-+ KEY_S, /* 32 */
-+ KEY_D, /* 33 */
-+ KEY_F, /* 34 */
-+ KEY_G, /* 35 */
-+ KEY_H, /* 36 */
-+ KEY_J, /* 37 */
-+ KEY_K, /* 38 */
-+ KEY_L, /* 39 */
-+ KEY_SemiColon, /* 40 */
-+ KEY_Quote, /* 41 */
-+ KEY_UNKNOWN, /* 42 */
-+ KEY_Enter, /* 43 */
-+ KEY_ShiftL, /* 44 */
-+ KEY_Less, /* 45 */
-+ KEY_Z, /* 46 */
-+ KEY_X, /* 47 */
-+ KEY_C, /* 48 */
-+ KEY_V, /* 49 */
-+ KEY_B, /* 50 */
-+ KEY_N, /* 51 */
-+ KEY_M, /* 52 */
-+ KEY_Comma, /* 53 */
-+ KEY_Period, /* 54 */
-+ KEY_Slash, /* 55 */
-+ KEY_BSlash2, /* 56 */
-+ KEY_ShiftR, /* 57 */
-+ KEY_LCtrl, /* 58 */
-+ KEY_LMeta, /* 59 */
-+ KEY_Alt, /* 60 */
-+ KEY_Space, /* 61 */
-+ KEY_AltLang, /* 62 */
-+ KEY_RMeta, /* 63 */
-+ KEY_RCtrl, /* 64 */
-+ KEY_Menu, /* 65 */
-+ KEY_UNKNOWN, /* 66 */
-+ KEY_UNKNOWN, /* 67 */
-+ KEY_UNKNOWN, /* 68 */
-+ KEY_UNKNOWN, /* 69 */
-+ KEY_UNKNOWN, /* 70 */
-+ KEY_UNKNOWN, /* 71 */
-+ KEY_UNKNOWN, /* 72 */
-+ KEY_UNKNOWN, /* 73 */
-+ KEY_UNKNOWN, /* 74 */
-+ KEY_Insert, /* 75 */
-+ KEY_Delete, /* 76 */
-+ KEY_UNKNOWN, /* 77 */
-+ KEY_UNKNOWN, /* 78 */
-+ KEY_Left, /* 79 */
-+ KEY_Home, /* 80 */
-+ KEY_End, /* 81 */
-+ KEY_UNKNOWN, /* 82 */
-+ KEY_Up, /* 83 */
-+ KEY_Down, /* 84 */
-+ KEY_PgUp, /* 85 */
-+ KEY_PgDown, /* 86 */
-+ KEY_UNKNOWN, /* 87 */
-+ KEY_UNKNOWN, /* 88 */
-+ KEY_Right, /* 89 */
-+ KEY_NumLock, /* 90 */
-+ KEY_KP_7, /* 91 */
-+ KEY_KP_4, /* 92 */
-+ KEY_KP_1, /* 93 */
-+ KEY_UNKNOWN, /* 94 */
-+ KEY_KP_Divide, /* 95 */
-+ KEY_KP_8, /* 96 */
-+ KEY_KP_5, /* 97 */
-+ KEY_KP_2, /* 98 */
-+ KEY_KP_0, /* 99 */
-+ KEY_KP_Multiply, /* 100 */
-+ KEY_KP_9, /* 101 */
-+ KEY_KP_6, /* 102 */
-+ KEY_KP_3, /* 103 */
-+ KEY_KP_Decimal, /* 104 */
-+ KEY_KP_Minus, /* 105 */
-+ KEY_KP_Plus, /* 106 */
-+ KEY_UNKNOWN, /* 107 */
-+ KEY_KP_Enter, /* 108 */
-+ KEY_UNKNOWN, /* 109 */
-+ KEY_Escape, /* 110 */
-+ KEY_UNKNOWN, /* 111 */
-+ KEY_F1, /* 112 */
-+ KEY_F2, /* 113 */
-+ KEY_F3, /* 114 */
-+ KEY_F4, /* 115 */
-+ KEY_F5, /* 116 */
-+ KEY_F6, /* 117 */
-+ KEY_F7, /* 118 */
-+ KEY_F8, /* 119 */
-+ KEY_F9, /* 120 */
-+ KEY_F10, /* 121 */
-+ KEY_F11, /* 122 */
-+ KEY_F12, /* 123 */
-+ KEY_Print, /* 124 */
-+ KEY_ScrollLock, /* 125 */
-+ KEY_Pause, /* 126 */
-+ KEY_UNKNOWN, /* 127 */
-+ KEY_UNKNOWN, /* 128 */
-+ KEY_UNKNOWN, /* 129 */
-+ KEY_UNKNOWN, /* 130 */
-+ KEY_NFER, /* 131 */
-+ KEY_XFER, /* 132 */
-+ KEY_HKTG, /* 133 */
-+ KEY_UNKNOWN, /* 134 */
-+#elif defined(sparc) || defined(__sparc__)
-+ KEY_UNKNOWN, /* 0x00 */
-+ KEY_UNKNOWN, /* 0x01 */
-+ KEY_UNKNOWN, /* 0x02 */
-+ KEY_UNKNOWN, /* 0x03 */
-+ KEY_UNKNOWN, /* 0x04 */
-+ KEY_F1, /* 0x05 */
-+ KEY_F2, /* 0x06 */
-+ KEY_F10, /* 0x07 */
-+ KEY_F3, /* 0x08 */
-+ KEY_F11, /* 0x09 */
-+ KEY_F4, /* 0x0A */
-+ KEY_F12, /* 0x0B */
-+ KEY_F5, /* 0x0C */
-+ KEY_UNKNOWN, /* 0x0D */
-+ KEY_F6, /* 0x0E */
-+ KEY_UNKNOWN, /* 0x0F */
-+ KEY_F7, /* 0x10 */
-+ KEY_F8, /* 0x11 */
-+ KEY_F9, /* 0x12 */
-+ KEY_Alt, /* 0x13 */
-+ KEY_Up, /* 0x14 */
-+ KEY_Pause, /* 0x15 */
-+ KEY_SysReqest, /* 0x16 */
-+ KEY_ScrollLock, /* 0x17 */
-+ KEY_Left, /* 0x18 */
-+ KEY_UNKNOWN, /* 0x19 */
-+ KEY_UNKNOWN, /* 0x1A */
-+ KEY_Down, /* 0x1B */
-+ KEY_Right, /* 0x1C */
-+ KEY_Escape, /* 0x1D */
-+ KEY_1, /* 0x1E */
-+ KEY_2, /* 0x1F */
-+ KEY_3, /* 0x20 */
-+ KEY_4, /* 0x21 */
-+ KEY_5, /* 0x22 */
-+ KEY_6, /* 0x23 */
-+ KEY_7, /* 0x24 */
-+ KEY_8, /* 0x25 */
-+ KEY_9, /* 0x26 */
-+ KEY_0, /* 0x27 */
-+ KEY_Minus, /* 0x28 */
-+ KEY_Equal, /* 0x29 */
-+ KEY_Tilde, /* 0x2A */
-+ KEY_BackSpace, /* 0x2B */
-+ KEY_Insert, /* 0x2C */
-+ KEY_UNKNOWN, /* 0x2D */
-+ KEY_KP_Divide, /* 0x2E */
-+ KEY_KP_Multiply, /* 0x2F */
-+ KEY_UNKNOWN, /* 0x30 */
-+ KEY_UNKNOWN, /* 0x31 */
-+ KEY_KP_Decimal, /* 0x32 */
-+ KEY_UNKNOWN, /* 0x33 */
-+ KEY_Home, /* 0x34 */
-+ KEY_Tab, /* 0x35 */
-+ KEY_Q, /* 0x36 */
-+ KEY_W, /* 0x37 */
-+ KEY_E, /* 0x38 */
-+ KEY_R, /* 0x39 */
-+ KEY_T, /* 0x3A */
-+ KEY_Y, /* 0x3B */
-+ KEY_U, /* 0x3C */
-+ KEY_I, /* 0x3D */
-+ KEY_O, /* 0x3E */
-+ KEY_P, /* 0x3F */
-+ KEY_LBrace, /* 0x40 */
-+ KEY_RBrace, /* 0x41 */
-+ KEY_Delete, /* 0x42 */
-+ KEY_UNKNOWN, /* 0x43 */
-+ KEY_KP_7, /* 0x44 */
-+ KEY_KP_8, /* 0x45 */
-+ KEY_KP_9, /* 0x46 */
-+ KEY_KP_Minus, /* 0x47 */
-+ KEY_UNKNOWN, /* 0x48 */
-+ KEY_UNKNOWN, /* 0x49 */
-+ KEY_End, /* 0x4A */
-+ KEY_UNKNOWN, /* 0x4B */
-+ KEY_LCtrl, /* 0x4C */
-+ KEY_A, /* 0x4D */
-+ KEY_S, /* 0x4E */
-+ KEY_D, /* 0x4F */
-+ KEY_F, /* 0x50 */
-+ KEY_G, /* 0x51 */
-+ KEY_H, /* 0x52 */
-+ KEY_J, /* 0x53 */
-+ KEY_K, /* 0x54 */
-+ KEY_L, /* 0x55 */
-+ KEY_SemiColon, /* 0x56 */
-+ KEY_Quote, /* 0x57 */
-+ KEY_BSlash, /* 0x58 */
-+ KEY_Enter, /* 0x59 */
-+ KEY_KP_Enter, /* 0x5A */
-+ KEY_KP_4, /* 0x5B */
-+ KEY_KP_5, /* 0x5C */
-+ KEY_KP_6, /* 0x5D */
-+ KEY_KP_0, /* 0x5E */
-+ KEY_UNKNOWN, /* 0x5F */
-+ KEY_PgUp, /* 0x60 */
-+ KEY_UNKNOWN, /* 0x61 */
-+ KEY_NumLock, /* 0x62 */
-+ KEY_ShiftL, /* 0x63 */
-+ KEY_Z, /* 0x64 */
-+ KEY_X, /* 0x65 */
-+ KEY_C, /* 0x66 */
-+ KEY_V, /* 0x67 */
-+ KEY_B, /* 0x68 */
-+ KEY_N, /* 0x69 */
-+ KEY_M, /* 0x6A */
-+ KEY_Comma, /* 0x6B */
-+ KEY_Period, /* 0x6C */
-+ KEY_Slash, /* 0x6D */
-+ KEY_ShiftR, /* 0x6E */
-+ KEY_UNKNOWN, /* 0x6F */
-+ KEY_KP_1, /* 0x70 */
-+ KEY_KP_2, /* 0x71 */
-+ KEY_KP_3, /* 0x72 */
-+ KEY_UNKNOWN, /* 0x73 */
-+ KEY_UNKNOWN, /* 0x74 */
-+ KEY_UNKNOWN, /* 0x75 */
-+ KEY_UNKNOWN, /* 0x76 */
-+ KEY_CapsLock, /* 0x77 */
-+ KEY_LMeta, /* 0x78 */
-+ KEY_Space, /* 0x79 */
-+ KEY_RMeta, /* 0x7A */
-+ KEY_PgDown, /* 0x7B */
-+ KEY_UNKNOWN, /* 0x7C */
-+ KEY_KP_Plus, /* 0x7D */
-+ KEY_UNKNOWN, /* 0x7E */
-+ KEY_UNKNOWN, /* 0x7F */
-+#endif
-+ /* The rest default to KEY_UNKNOWN */
-+};
-+
-+static
-+TransMapRec sunTransMap = {
-+ 0,
-+ (sizeof(sunmap)/sizeof(unsigned char)),
-+ sunmap
-+};
-+
-+#if defined(KB_USB)
-+static unsigned char usbmap[256] = {
-+/*
-+ * partially taken from ../bsd/bsd_KbdMap.c
-+ *
-+ * added keycodes for Sun special keys (left function keys, audio control)
-+ */
-+ /* 0 */ KEY_NOTUSED,
-+ /* 1 */ KEY_NOTUSED,
-+ /* 2 */ KEY_NOTUSED,
-+ /* 3 */ KEY_NOTUSED,
-+ /* 4 */ KEY_A,
-+ /* 5 */ KEY_B,
-+ /* 6 */ KEY_C,
-+ /* 7 */ KEY_D,
-+ /* 8 */ KEY_E,
-+ /* 9 */ KEY_F,
-+ /* 10 */ KEY_G,
-+ /* 11 */ KEY_H,
-+ /* 12 */ KEY_I,
-+ /* 13 */ KEY_J,
-+ /* 14 */ KEY_K,
-+ /* 15 */ KEY_L,
-+ /* 16 */ KEY_M,
-+ /* 17 */ KEY_N,
-+ /* 18 */ KEY_O,
-+ /* 19 */ KEY_P,
-+ /* 20 */ KEY_Q,
-+ /* 21 */ KEY_R,
-+ /* 22 */ KEY_S,
-+ /* 23 */ KEY_T,
-+ /* 24 */ KEY_U,
-+ /* 25 */ KEY_V,
-+ /* 26 */ KEY_W,
-+ /* 27 */ KEY_X,
-+ /* 28 */ KEY_Y,
-+ /* 29 */ KEY_Z,
-+ /* 30 */ KEY_1, /* 1 !*/
-+ /* 31 */ KEY_2, /* 2 @ */
-+ /* 32 */ KEY_3, /* 3 # */
-+ /* 33 */ KEY_4, /* 4 $ */
-+ /* 34 */ KEY_5, /* 5 % */
-+ /* 35 */ KEY_6, /* 6 ^ */
-+ /* 36 */ KEY_7, /* 7 & */
-+ /* 37 */ KEY_8, /* 8 * */
-+ /* 38 */ KEY_9, /* 9 ( */
-+ /* 39 */ KEY_0, /* 0 ) */
-+ /* 40 */ KEY_Enter, /* Return */
-+ /* 41 */ KEY_Escape, /* Escape */
-+ /* 42 */ KEY_BackSpace, /* Backspace Delete */
-+ /* 43 */ KEY_Tab, /* Tab */
-+ /* 44 */ KEY_Space, /* Space */
-+ /* 45 */ KEY_Minus, /* - _ */
-+ /* 46 */ KEY_Equal, /* = + */
-+ /* 47 */ KEY_LBrace, /* [ { */
-+ /* 48 */ KEY_RBrace, /* ] } */
-+ /* 49 */ KEY_BSlash, /* \ | */
-+ /* 50 */ KEY_BSlash, /* \ _ # ~ on some keyboards */
-+ /* 51 */ KEY_SemiColon, /* ; : */
-+ /* 52 */ KEY_Quote, /* ' " */
-+ /* 53 */ KEY_Tilde, /* ` ~ */
-+ /* 54 */ KEY_Comma, /* , < */
-+ /* 55 */ KEY_Period, /* . > */
-+ /* 56 */ KEY_Slash, /* / ? */
-+ /* 57 */ KEY_CapsLock, /* Caps Lock */
-+ /* 58 */ KEY_F1, /* F1 */
-+ /* 59 */ KEY_F2, /* F2 */
-+ /* 60 */ KEY_F3, /* F3 */
-+ /* 61 */ KEY_F4, /* F4 */
-+ /* 62 */ KEY_F5, /* F5 */
-+ /* 63 */ KEY_F6, /* F6 */
-+ /* 64 */ KEY_F7, /* F7 */
-+ /* 65 */ KEY_F8, /* F8 */
-+ /* 66 */ KEY_F9, /* F9 */
-+ /* 67 */ KEY_F10, /* F10 */
-+ /* 68 */ KEY_F11, /* F11 */
-+ /* 69 */ KEY_F12, /* F12 */
-+ /* 70 */ KEY_Print, /* PrintScrn SysReq */
-+ /* 71 */ KEY_ScrollLock, /* Scroll Lock */
-+ /* 72 */ KEY_Pause, /* Pause Break */
-+ /* 73 */ KEY_Insert, /* Insert XXX Help on some Mac Keyboards */
-+ /* 74 */ KEY_Home, /* Home */
-+ /* 75 */ KEY_PgUp, /* Page Up */
-+ /* 76 */ KEY_Delete, /* Delete */
-+ /* 77 */ KEY_End, /* End */
-+ /* 78 */ KEY_PgDown, /* Page Down */
-+ /* 79 */ KEY_Right, /* Right Arrow */
-+ /* 80 */ KEY_Left, /* Left Arrow */
-+ /* 81 */ KEY_Down, /* Down Arrow */
-+ /* 82 */ KEY_Up, /* Up Arrow */
-+ /* 83 */ KEY_NumLock, /* Num Lock */
-+ /* 84 */ KEY_KP_Divide, /* Keypad / */
-+ /* 85 */ KEY_KP_Multiply, /* Keypad * */
-+ /* 86 */ KEY_KP_Minus, /* Keypad - */
-+ /* 87 */ KEY_KP_Plus, /* Keypad + */
-+ /* 88 */ KEY_KP_Enter, /* Keypad Enter */
-+ /* 89 */ KEY_KP_1, /* Keypad 1 End */
-+ /* 90 */ KEY_KP_2, /* Keypad 2 Down */
-+ /* 91 */ KEY_KP_3, /* Keypad 3 Pg Down */
-+ /* 92 */ KEY_KP_4, /* Keypad 4 Left */
-+ /* 93 */ KEY_KP_5, /* Keypad 5 */
-+ /* 94 */ KEY_KP_6, /* Keypad 6 */
-+ /* 95 */ KEY_KP_7, /* Keypad 7 Home */
-+ /* 96 */ KEY_KP_8, /* Keypad 8 Up */
-+ /* 97 */ KEY_KP_9, /* KEypad 9 Pg Up */
-+ /* 98 */ KEY_KP_0, /* Keypad 0 Ins */
-+ /* 99 */ KEY_KP_Decimal, /* Keypad . Del */
-+ /* 100 */ KEY_Less, /* < > on some keyboards */
-+ /* 101 */ KEY_Menu, /* Menu */
-+ /* 102 */ KEY_Power, /* Sun: Power */
-+ /* 103 */ KEY_KP_Equal, /* Keypad = on Mac keyboards */
-+ /* 104 */ KEY_NOTUSED,
-+ /* 105 */ KEY_NOTUSED,
-+ /* 106 */ KEY_NOTUSED,
-+ /* 107 */ KEY_NOTUSED,
-+ /* 108 */ KEY_NOTUSED,
-+ /* 109 */ KEY_NOTUSED,
-+ /* 110 */ KEY_NOTUSED,
-+ /* 111 */ KEY_NOTUSED,
-+ /* 112 */ KEY_NOTUSED,
-+ /* 113 */ KEY_NOTUSED,
-+ /* 114 */ KEY_NOTUSED,
-+ /* 115 */ KEY_NOTUSED,
-+ /* 116 */ KEY_L7, /* Sun: Open */
-+ /* 117 */ KEY_Help, /* Sun: Help */
-+ /* 118 */ KEY_L3, /* Sun: Props */
-+ /* 119 */ KEY_L5, /* Sun: Front */
-+ /* 120 */ KEY_L1, /* Sun: Stop */
-+ /* 121 */ KEY_L2, /* Sun: Again */
-+ /* 122 */ KEY_L4, /* Sun: Undo */
-+ /* 123 */ KEY_L10, /* Sun: Cut */
-+ /* 124 */ KEY_L6, /* Sun: Copy */
-+ /* 125 */ KEY_L8, /* Sun: Paste */
-+ /* 126 */ KEY_L9, /* Sun: Find */
-+ /* 127 */ KEY_Mute, /* Sun: AudioMute */
-+ /* 128 */ KEY_AudioRaise, /* Sun: AudioRaise */
-+ /* 129 */ KEY_AudioLower, /* Sun: AudioLower */
-+ /* 130 */ KEY_NOTUSED,
-+ /* 131 */ KEY_NOTUSED,
-+ /* 132 */ KEY_NOTUSED,
-+ /* 133 */ KEY_NOTUSED,
-+ /* 134 */ KEY_NOTUSED,
-+ /* 135 */ KEY_BSlash2, /* Sun Japanese Kbd: Backslash / Underscore */
-+ /* 136 */ KEY_XFER, /* Sun Japanese Kbd: Henkan Mode */
-+ /* 137 */ KEY_Yen, /* Sun Japanese Kbd: Yen / Brokenbar */
-+ /* 138 */ KEY_Kanji, /* Sun Japanese Kbd: Kanji */
-+ /* 139 */ KEY_Execute, /* Sun Japanese Kbd: Execute */
-+ /* 140 */ KEY_NOTUSED,
-+ /* 141 */ KEY_NOTUSED,
-+ /* 142 */ KEY_NOTUSED,
-+ /* 143 */ KEY_NOTUSED,
-+ /* 144 */ KEY_NOTUSED,
-+ /* 145 */ KEY_NOTUSED,
-+ /* 146 */ KEY_NOTUSED,
-+ /* 147 */ KEY_NOTUSED,
-+ /* 148 */ KEY_NOTUSED,
-+ /* 149 */ KEY_NOTUSED,
-+ /* 150 */ KEY_NOTUSED,
-+ /* 151 */ KEY_NOTUSED,
-+ /* 152 */ KEY_NOTUSED,
-+ /* 153 */ KEY_NOTUSED,
-+ /* 154 */ KEY_NOTUSED,
-+ /* 155 */ KEY_NOTUSED,
-+ /* 156 */ KEY_NOTUSED,
-+ /* 157 */ KEY_NOTUSED,
-+ /* 158 */ KEY_NOTUSED,
-+ /* 159 */ KEY_NOTUSED,
-+ /* 160 */ KEY_NOTUSED,
-+ /* 161 */ KEY_NOTUSED,
-+ /* 162 */ KEY_NOTUSED,
-+ /* 163 */ KEY_NOTUSED,
-+ /* 164 */ KEY_NOTUSED,
-+ /* 165 */ KEY_NOTUSED,
-+ /* 166 */ KEY_NOTUSED,
-+ /* 167 */ KEY_NOTUSED,
-+ /* 168 */ KEY_NOTUSED,
-+ /* 169 */ KEY_NOTUSED,
-+ /* 170 */ KEY_NOTUSED,
-+ /* 171 */ KEY_NOTUSED,
-+ /* 172 */ KEY_NOTUSED,
-+ /* 173 */ KEY_NOTUSED,
-+ /* 174 */ KEY_NOTUSED,
-+ /* 175 */ KEY_NOTUSED,
-+ /* 176 */ KEY_NOTUSED,
-+ /* 177 */ KEY_NOTUSED,
-+ /* 178 */ KEY_NOTUSED,
-+ /* 179 */ KEY_NOTUSED,
-+ /* 180 */ KEY_NOTUSED,
-+ /* 181 */ KEY_NOTUSED,
-+ /* 182 */ KEY_NOTUSED,
-+ /* 183 */ KEY_NOTUSED,
-+ /* 184 */ KEY_NOTUSED,
-+ /* 185 */ KEY_NOTUSED,
-+ /* 186 */ KEY_NOTUSED,
-+ /* 187 */ KEY_NOTUSED,
-+ /* 188 */ KEY_NOTUSED,
-+ /* 189 */ KEY_NOTUSED,
-+ /* 190 */ KEY_NOTUSED,
-+ /* 191 */ KEY_NOTUSED,
-+ /* 192 */ KEY_NOTUSED,
-+ /* 193 */ KEY_NOTUSED,
-+ /* 194 */ KEY_NOTUSED,
-+ /* 195 */ KEY_NOTUSED,
-+ /* 196 */ KEY_NOTUSED,
-+ /* 197 */ KEY_NOTUSED,
-+ /* 198 */ KEY_NOTUSED,
-+ /* 199 */ KEY_NOTUSED,
-+ /* 200 */ KEY_NOTUSED,
-+ /* 201 */ KEY_NOTUSED,
-+ /* 202 */ KEY_NOTUSED,
-+ /* 203 */ KEY_NOTUSED,
-+ /* 204 */ KEY_NOTUSED,
-+ /* 205 */ KEY_NOTUSED,
-+ /* 206 */ KEY_NOTUSED,
-+ /* 207 */ KEY_NOTUSED,
-+ /* 208 */ KEY_NOTUSED,
-+ /* 209 */ KEY_NOTUSED,
-+ /* 210 */ KEY_NOTUSED,
-+ /* 211 */ KEY_NOTUSED,
-+ /* 212 */ KEY_NOTUSED,
-+ /* 213 */ KEY_NOTUSED,
-+ /* 214 */ KEY_NOTUSED,
-+ /* 215 */ KEY_NOTUSED,
-+ /* 216 */ KEY_NOTUSED,
-+ /* 217 */ KEY_NOTUSED,
-+ /* 218 */ KEY_NOTUSED,
-+ /* 219 */ KEY_NOTUSED,
-+ /* 220 */ KEY_NOTUSED,
-+ /* 221 */ KEY_NOTUSED,
-+ /* 222 */ KEY_NOTUSED,
-+ /* 223 */ KEY_NOTUSED,
-+ /* 224 */ KEY_LCtrl, /* Left Control */
-+ /* 225 */ KEY_ShiftL, /* Left Shift */
-+ /* 226 */ KEY_Alt, /* Left Alt */
-+ /* 227 */ KEY_LMeta, /* Left Meta */
-+ /* 228 */ KEY_RCtrl, /* Right Control */
-+ /* 229 */ KEY_ShiftR, /* Right Shift */
-+ /* 230 */ KEY_AltLang, /* Right Alt, AKA AltGr */
-+ /* 231 */ KEY_RMeta, /* Right Meta */
-+};
-+
-+static
-+TransMapRec usbTransMap = {
-+ 0,
-+ (sizeof(usbmap)/sizeof(unsigned char)),
-+ usbmap
-+};
-+#endif /* KB_USB */
-+
-+_X_HIDDEN void
-+KbdGetMapping (InputInfoPtr pInfo, KeySymsPtr pKeySyms, CARD8 *pModMap)
-+{
-+ KbdDevPtr pKbd = (KbdDevPtr) pInfo->private;
-+ sunKbdPrivPtr priv = (sunKbdPrivPtr) pKbd->private;
-+ const unsigned char *keymap;
-+ int i;
-+ KeySym *k;
-+
-+#if defined(KB_USB)
-+ if (priv->ktype == KB_USB)
-+ pKbd->scancodeMap = &usbTransMap;
-+ else
-+#endif
-+ pKbd->scancodeMap = &sunTransMap;
-+
-+ /*
-+ * Add Sun keyboard keysyms to default map
-+ */
-+#define map_for_key(k,c) map[(k * GLYPHS_PER_KEY) + c]
-+ map_for_key(KEY_Kanji, 0) = XK_Kanji;
-+ map_for_key(KEY_Execute, 0) = XK_Execute;
-+ map_for_key(KEY_Power, 0) = SunXK_PowerSwitch;
-+ map_for_key(KEY_Power, 1) = SunXK_PowerSwitchShift;
-+ map_for_key(KEY_Mute, 0) = SunXK_AudioMute;
-+ map_for_key(KEY_Mute, 1) = SunXK_VideoDegauss;
-+ map_for_key(KEY_AudioLower, 0) = SunXK_AudioLowerVolume;
-+ map_for_key(KEY_AudioLower, 1) = SunXK_VideoLowerBrightness;
-+ map_for_key(KEY_AudioRaise, 0) = SunXK_AudioRaiseVolume;
-+ map_for_key(KEY_AudioRaise, 1) = SunXK_VideoRaiseBrightness;
-+ map_for_key(KEY_Help, 0) = XK_Help;
-+ map_for_key(KEY_L1, 0) = XK_L1;
-+ map_for_key(KEY_L2, 0) = XK_L2;
-+ map_for_key(KEY_L3, 0) = XK_L3;
-+ map_for_key(KEY_L4, 0) = XK_L4;
-+ map_for_key(KEY_L5, 0) = XK_L5;
-+ map_for_key(KEY_L6, 0) = XK_L6;
-+ map_for_key(KEY_L7, 0) = XK_L7;
-+ map_for_key(KEY_L8, 0) = XK_L8;
-+ map_for_key(KEY_L9, 0) = XK_L9;
-+ map_for_key(KEY_L10, 0) = XK_L10;
-+ map_for_key(KEY_F11, 0) = SunXK_F36;
-+ map_for_key(KEY_F12, 0) = SunXK_F37;
-+ map_for_key(KEY_Menu, 0) = XK_Multi_key;
-+
-+ /*
-+ * compute the modifier map
-+ */
-+ for (i = 0; i < MAP_LENGTH; i++)
-+ pModMap[i] = NoSymbol; /* make sure it is restored */
-+
-+ for (k = map, i = MIN_KEYCODE;
-+ i < (NUM_KEYCODES + MIN_KEYCODE);
-+ i++, k += 4)
-+ {
-+ switch(*k) {
-+
-+ case XK_Shift_L:
-+ case XK_Shift_R:
-+ pModMap[i] = ShiftMask;
-+ break;
-+
-+ case XK_Control_L:
-+ case XK_Control_R:
-+ pModMap[i] = ControlMask;
-+ break;
-+
-+ case XK_Caps_Lock:
-+ pModMap[i] = LockMask;
-+ break;
-+
-+ case XK_Alt_L:
-+ case XK_Alt_R:
-+ pModMap[i] = AltMask;
-+ break;
-+
-+ case XK_Num_Lock:
-+ pModMap[i] = NumLockMask;
-+ break;
-+
-+ case XK_Scroll_Lock:
-+ pModMap[i] = ScrollLockMask;
-+ break;
-+
-+ /* kana support */
-+ case XK_Kana_Lock:
-+ case XK_Kana_Shift:
-+ pModMap[i] = KanaMask;
-+ break;
-+
-+ /* alternate toggle for multinational support */
-+ case XK_Mode_switch:
-+ pModMap[i] = AltLangMask;
-+ break;
-+
-+ }
-+ }
-+
-+ pKeySyms->map = map;
-+ pKeySyms->mapWidth = GLYPHS_PER_KEY;
-+ pKeySyms->minKeyCode = MIN_KEYCODE;
-+ pKeySyms->maxKeyCode = MAX_KEYCODE;
-+}
-diff -ruN xf86-input-keyboard-1.2.0/src/xf86Keymap.h xf86-input-keyboard/src/xf86Keymap.h
---- xf86-input-keyboard-1.2.0/src/xf86Keymap.h 1970-01-01 00:00:00.000000000 +0000
-+++ xf86-input-keyboard/src/xf86Keymap.h 2007-09-03 10:34:00.000000000 +0000
-@@ -0,0 +1,308 @@
-+
-+/*
-+ * Copyright (c) 1994-2002 by The XFree86 Project, Inc.
-+ *
-+ * Permission is hereby granted, free of charge, to any person obtaining a
-+ * copy of this software and associated documentation files (the "Software"),
-+ * to deal in the Software without restriction, including without limitation
-+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
-+ * and/or sell copies of the Software, and to permit persons to whom the
-+ * Software is furnished to do so, subject to the following conditions:
-+ *
-+ * The above copyright notice and this permission notice shall be included in
-+ * all copies or substantial portions of the Software.
-+ *
-+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-+ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
-+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-+ * OTHER DEALINGS IN THE SOFTWARE.
-+ *
-+ * Except as contained in this notice, the name of the copyright holder(s)
-+ * and author(s) shall not be used in advertising or otherwise to promote
-+ * the sale, use or other dealings in this Software without prior written
-+ * authorization from the copyright holder(s) and author(s).
-+ */
-+
-+/*
-+ *
-+ * For Scancodes see notes in atKeynames.h !!!!
-+ *
-+ */
-+/* $XConsortium: xf86Keymap.h /main/14 1996/02/21 17:38:47 kaleb $ */
-+
-+#include "xorg-server.h"
-+
-+static KeySym map[NUM_KEYCODES * GLYPHS_PER_KEY] = {
-+
-+ /* 0x00 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x01 */ XK_Escape, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x02 */ XK_1, XK_exclam, NoSymbol, NoSymbol,
-+ /* 0x03 */ XK_2, XK_at, NoSymbol, NoSymbol,
-+ /* 0x04 */ XK_3, XK_numbersign, NoSymbol, NoSymbol,
-+ /* 0x05 */ XK_4, XK_dollar, NoSymbol, NoSymbol,
-+ /* 0x06 */ XK_5, XK_percent, NoSymbol, NoSymbol,
-+ /* 0x07 */ XK_6, XK_asciicircum, NoSymbol, NoSymbol,
-+ /* 0x08 */ XK_7, XK_ampersand, NoSymbol, NoSymbol,
-+ /* 0x09 */ XK_8, XK_asterisk, NoSymbol, NoSymbol,
-+ /* 0x0a */ XK_9, XK_parenleft, NoSymbol, NoSymbol,
-+ /* 0x0b */ XK_0, XK_parenright, NoSymbol, NoSymbol,
-+ /* 0x0c */ XK_minus, XK_underscore, NoSymbol, NoSymbol,
-+ /* 0x0d */ XK_equal, XK_plus, NoSymbol, NoSymbol,
-+ /* 0x0e */ XK_BackSpace, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x0f */ XK_Tab, XK_ISO_Left_Tab,NoSymbol, NoSymbol,
-+ /* 0x10 */ XK_Q, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x11 */ XK_W, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x12 */ XK_E, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x13 */ XK_R, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x14 */ XK_T, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x15 */ XK_Y, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x16 */ XK_U, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x17 */ XK_I, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x18 */ XK_O, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x19 */ XK_P, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x1a */ XK_bracketleft, XK_braceleft, NoSymbol, NoSymbol,
-+ /* 0x1b */ XK_bracketright,XK_braceright, NoSymbol, NoSymbol,
-+ /* 0x1c */ XK_Return, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x1d */ XK_Control_L, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x1e */ XK_A, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x1f */ XK_S, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x20 */ XK_D, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x21 */ XK_F, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x22 */ XK_G, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x23 */ XK_H, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x24 */ XK_J, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x25 */ XK_K, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x26 */ XK_L, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x27 */ XK_semicolon, XK_colon, NoSymbol, NoSymbol,
-+ /* 0x28 */ XK_quoteright, XK_quotedbl, NoSymbol, NoSymbol,
-+ /* 0x29 */ XK_quoteleft, XK_asciitilde, NoSymbol, NoSymbol,
-+ /* 0x2a */ XK_Shift_L, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x2b */ XK_backslash, XK_bar, NoSymbol, NoSymbol,
-+ /* 0x2c */ XK_Z, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x2d */ XK_X, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x2e */ XK_C, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x2f */ XK_V, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x30 */ XK_B, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x31 */ XK_N, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x32 */ XK_M, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x33 */ XK_comma, XK_less, NoSymbol, NoSymbol,
-+ /* 0x34 */ XK_period, XK_greater, NoSymbol, NoSymbol,
-+ /* 0x35 */ XK_slash, XK_question, NoSymbol, NoSymbol,
-+ /* 0x36 */ XK_Shift_R, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x37 */ XK_KP_Multiply, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x38 */ XK_Alt_L, XK_Meta_L, NoSymbol, NoSymbol,
-+ /* 0x39 */ XK_space, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3a */ XK_Caps_Lock, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3b */ XK_F1, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3c */ XK_F2, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3d */ XK_F3, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3e */ XK_F4, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3f */ XK_F5, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x40 */ XK_F6, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x41 */ XK_F7, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x42 */ XK_F8, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x43 */ XK_F9, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x44 */ XK_F10, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x45 */ XK_Num_Lock, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x46 */ XK_Scroll_Lock, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x47 */ XK_KP_Home, XK_KP_7, NoSymbol, NoSymbol,
-+ /* 0x48 */ XK_KP_Up, XK_KP_8, NoSymbol, NoSymbol,
-+ /* 0x49 */ XK_KP_Prior, XK_KP_9, NoSymbol, NoSymbol,
-+ /* 0x4a */ XK_KP_Subtract, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x4b */ XK_KP_Left, XK_KP_4, NoSymbol, NoSymbol,
-+ /* 0x4c */ XK_KP_Begin, XK_KP_5, NoSymbol, NoSymbol,
-+ /* 0x4d */ XK_KP_Right, XK_KP_6, NoSymbol, NoSymbol,
-+ /* 0x4e */ XK_KP_Add, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x4f */ XK_KP_End, XK_KP_1, NoSymbol, NoSymbol,
-+ /* 0x50 */ XK_KP_Down, XK_KP_2, NoSymbol, NoSymbol,
-+ /* 0x51 */ XK_KP_Next, XK_KP_3, NoSymbol, NoSymbol,
-+ /* 0x52 */ XK_KP_Insert, XK_KP_0, NoSymbol, NoSymbol,
-+ /* 0x53 */ XK_KP_Delete, XK_KP_Decimal, NoSymbol, NoSymbol,
-+ /* 0x54 */ XK_Sys_Req, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x55 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x56 */ XK_less, XK_greater, NoSymbol, NoSymbol,
-+ /* 0x57 */ XK_F11, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x58 */ XK_F12, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x59 */ XK_Home, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5a */ XK_Up, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5b */ XK_Prior, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5c */ XK_Left, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5d */ XK_Begin, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5e */ XK_Right, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5f */ XK_End, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x60 */ XK_Down, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x61 */ XK_Next, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x62 */ XK_Insert, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x63 */ XK_Delete, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x64 */ XK_KP_Enter, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x65 */ XK_Control_R, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x66 */ XK_Pause, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x67 */ XK_Print, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x68 */ XK_KP_Divide, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x69 */ XK_Alt_R, XK_Meta_R, NoSymbol, NoSymbol,
-+ /* 0x6a */ XK_Break, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6b */ XK_Meta_L, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6c */ XK_Meta_R, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6d */ XK_Menu, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6e */ XK_F13, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6f */ XK_F14, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x70 */ XK_F15, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x71 */ XK_F16, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x72 */ XK_F17, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x73 */ XK_backslash, XK_underscore, NoSymbol, NoSymbol,
-+ /* 0x74 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x75 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x76 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x77 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x78 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x79 */ XK_Henkan, XK_Mode_switch, NoSymbol, NoSymbol,
-+ /* 0x7a */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x7b */ XK_Muhenkan, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x7c */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x7d */ XK_backslash, XK_bar, NoSymbol, NoSymbol,
-+ /* 0x7e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x7f */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+};
-+
-+#if !defined(Lynx) && \
-+ !defined(__UNIXOS2__) && \
-+ !defined(__mips__) && \
-+ !defined(linux) && \
-+ !defined(CSRG_BASED) && \
-+ !defined(__CYGWIN__) && \
-+ !defined(__SOL8__) && \
-+ (!defined(sun) || defined(i386))
-+
-+static KeySym map84[NUM_KEYCODES * GLYPHS_PER_KEY] = {
-+ /* 0x00 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x01 */ XK_Escape, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x02 */ XK_1, XK_exclam, NoSymbol, NoSymbol,
-+ /* 0x03 */ XK_2, XK_at, NoSymbol, NoSymbol,
-+ /* 0x04 */ XK_3, XK_numbersign, NoSymbol, NoSymbol,
-+ /* 0x05 */ XK_4, XK_dollar, NoSymbol, NoSymbol,
-+ /* 0x06 */ XK_5, XK_percent, NoSymbol, NoSymbol,
-+ /* 0x07 */ XK_6, XK_asciicircum, NoSymbol, NoSymbol,
-+ /* 0x08 */ XK_7, XK_ampersand, NoSymbol, NoSymbol,
-+ /* 0x09 */ XK_8, XK_asterisk, NoSymbol, NoSymbol,
-+ /* 0x0a */ XK_9, XK_parenleft, NoSymbol, NoSymbol,
-+ /* 0x0b */ XK_0, XK_parenright, NoSymbol, NoSymbol,
-+ /* 0x0c */ XK_minus, XK_underscore, NoSymbol, NoSymbol,
-+ /* 0x0d */ XK_equal, XK_plus, NoSymbol, NoSymbol,
-+ /* 0x0e */ XK_BackSpace, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x0f */ XK_Tab, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x10 */ XK_Q, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x11 */ XK_W, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x12 */ XK_E, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x13 */ XK_R, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x14 */ XK_T, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x15 */ XK_Y, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x16 */ XK_U, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x17 */ XK_I, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x18 */ XK_O, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x19 */ XK_P, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x1a */ XK_bracketleft, XK_braceleft, NoSymbol, NoSymbol,
-+ /* 0x1b */ XK_bracketright,XK_braceright, NoSymbol, NoSymbol,
-+ /* 0x1c */ XK_Return, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x1d */ XK_Control_L, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x1e */ XK_A, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x1f */ XK_S, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x20 */ XK_D, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x21 */ XK_F, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x22 */ XK_G, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x23 */ XK_H, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x24 */ XK_J, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x25 */ XK_K, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x26 */ XK_L, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x27 */ XK_semicolon, XK_colon, NoSymbol, NoSymbol,
-+ /* 0x28 */ XK_quoteright, XK_quotedbl, NoSymbol, NoSymbol,
-+ /* 0x29 */ XK_quoteleft, XK_asciitilde, NoSymbol, NoSymbol,
-+ /* 0x2a */ XK_Shift_L, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x2b */ XK_backslash, XK_bar, NoSymbol, NoSymbol,
-+ /* 0x2c */ XK_Z, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x2d */ XK_X, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x2e */ XK_C, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x2f */ XK_V, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x30 */ XK_B, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x31 */ XK_N, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x32 */ XK_M, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x33 */ XK_comma, XK_less, NoSymbol, NoSymbol,
-+ /* 0x34 */ XK_period, XK_greater, NoSymbol, NoSymbol,
-+ /* 0x35 */ XK_slash, XK_question, NoSymbol, NoSymbol,
-+ /* 0x36 */ XK_Shift_R, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x37 */ XK_KP_Multiply, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x38 */ XK_Alt_L, XK_Meta_L, NoSymbol, NoSymbol,
-+ /* 0x39 */ XK_space, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3a */ XK_Caps_Lock, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3b */ XK_F1, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3c */ XK_F2, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3d */ XK_F3, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3e */ XK_F4, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x3f */ XK_F5, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x40 */ XK_F6, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x41 */ XK_F7, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x42 */ XK_F8, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x43 */ XK_F9, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x44 */ XK_F10, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x45 */ XK_Num_Lock, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x46 */ XK_Scroll_Lock, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x47 */ XK_KP_Home, XK_KP_7, NoSymbol, NoSymbol,
-+ /* 0x48 */ XK_KP_Up, XK_KP_8, NoSymbol, NoSymbol,
-+ /* 0x49 */ XK_KP_Prior, XK_KP_9, NoSymbol, NoSymbol,
-+ /* 0x4a */ XK_KP_Subtract, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x4b */ XK_KP_Left, XK_KP_4, NoSymbol, NoSymbol,
-+ /* 0x4c */ NoSymbol, XK_KP_5, NoSymbol, NoSymbol,
-+ /* 0x4d */ XK_KP_Right, XK_KP_6, NoSymbol, NoSymbol,
-+ /* 0x4e */ XK_KP_Add, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x4f */ XK_KP_End, XK_KP_1, NoSymbol, NoSymbol,
-+ /* 0x50 */ XK_KP_Down, XK_KP_2, NoSymbol, NoSymbol,
-+ /* 0x51 */ XK_KP_Next, XK_KP_3, NoSymbol, NoSymbol,
-+ /* 0x52 */ XK_KP_Insert, XK_KP_0, NoSymbol, NoSymbol,
-+ /* 0x53 */ XK_KP_Delete, XK_KP_Decimal, NoSymbol, NoSymbol,
-+ /* 0x54 */ XK_Sys_Req, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x55 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x56 */ XK_less, XK_greater, NoSymbol, NoSymbol,
-+ /* 0x57 */ XK_F11, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x58 */ XK_F12, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x59 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5a */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5b */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5c */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5d */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x5f */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x60 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x61 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x62 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x63 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x64 */ XK_KP_Enter, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x65 */ XK_Control_R, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x66 */ XK_Pause, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x67 */ XK_Print, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x68 */ XK_KP_Divide, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x69 */ XK_Alt_R, XK_Meta_R, NoSymbol, NoSymbol,
-+ /* 0x6a */ XK_Break, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6b */ XK_Meta_L, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6c */ XK_Meta_R, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6d */ XK_Menu, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x6f */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x70 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x71 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x72 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x73 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x74 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x75 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x76 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x77 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x78 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x79 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x7a */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x7b */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x7c */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x7d */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+ /* 0x7e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol,
-+};
-+#endif
-diff -ruN xf86-input-keyboard-1.2.0/src/xf86OSKbd.h xf86-input-keyboard/src/xf86OSKbd.h
---- xf86-input-keyboard-1.2.0/src/xf86OSKbd.h 1970-01-01 00:00:00.000000000 +0000
-+++ xf86-input-keyboard/src/xf86OSKbd.h 2007-09-03 10:34:00.000000000 +0000
-@@ -0,0 +1,132 @@
-+/*
-+ * Copyright (c) 2002-2003 by The XFree86 Project, Inc.
-+ *
-+ * Permission is hereby granted, free of charge, to any person obtaining a
-+ * copy of this software and associated documentation files (the "Software"),
-+ * to deal in the Software without restriction, including without limitation
-+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
-+ * and/or sell copies of the Software, and to permit persons to whom the
-+ * Software is furnished to do so, subject to the following conditions:
-+ *
-+ * The above copyright notice and this permission notice shall be included in
-+ * all copies or substantial portions of the Software.
-+ *
-+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-+ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
-+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-+ * OTHER DEALINGS IN THE SOFTWARE.
-+ *
-+ * Except as contained in this notice, the name of the copyright holder(s)
-+ * and author(s) shall not be used in advertising or otherwise to promote
-+ * the sale, use or other dealings in this Software without prior written
-+ * authorization from the copyright holder(s) and author(s).
-+ *
-+ * Author: Ivan Pascal.
-+ */
-+
-+#include "xf86Xinput.h"
-+
-+Bool ATScancode(InputInfoPtr pInfo, int *scanCode);
-+
-+/* Public interface to OS-specific keyboard support. */
-+
-+typedef int (*KbdInitProc)(InputInfoPtr pInfo, int what);
-+typedef int (*KbdOnProc)(InputInfoPtr pInfo, int what);
-+typedef int (*KbdOffProc)(InputInfoPtr pInfo, int what);
-+typedef void (*BellProc)(InputInfoPtr pInfo,
-+ int loudness, int pitch, int duration);
-+typedef void (*SetLedsProc)(InputInfoPtr pInfo, int leds);
-+typedef int (*GetLedsProc)(InputInfoPtr pInfo);
-+typedef void (*SetKbdRepeatProc)(InputInfoPtr pInfo, char rad);
-+typedef void (*KbdGetMappingProc)(InputInfoPtr pInfo,
-+ KeySymsPtr pKeySyms, CARD8* pModMap);
-+typedef int (*GetSpecialKeyProc)(InputInfoPtr pInfo, int scanCode);
-+typedef Bool (*SpecialKeyProc)(InputInfoPtr pInfo,
-+ int key, Bool down, int modifiers);
-+typedef int (*RemapScanCodeProc)(InputInfoPtr pInfo, int *scanCode);
-+typedef Bool (*OpenKeyboardProc)(InputInfoPtr pInfo);
-+typedef void (*PostEventProc)(InputInfoPtr pInfo,
-+ unsigned int key, Bool down);
-+typedef struct {
-+ int begin;
-+ int end;
-+ unsigned char *map;
-+} TransMapRec, *TransMapPtr;
-+
-+typedef struct {
-+ KbdInitProc KbdInit;
-+ KbdOnProc KbdOn;
-+ KbdOffProc KbdOff;
-+ BellProc Bell;
-+ SetLedsProc SetLeds;
-+ GetLedsProc GetLeds;
-+ SetKbdRepeatProc SetKbdRepeat;
-+ KbdGetMappingProc KbdGetMapping;
-+ RemapScanCodeProc RemapScanCode;
-+ GetSpecialKeyProc GetSpecialKey;
-+ SpecialKeyProc SpecialKey;
-+
-+ OpenKeyboardProc OpenKeyboard;
-+ PostEventProc PostEvent;
-+
-+ int rate;
-+ int delay;
-+ int bell_pitch;
-+ int bell_duration;
-+ Bool autoRepeat;
-+ unsigned long leds;
-+ unsigned long xledsMask;
-+ unsigned long keyLeds;
-+ int scanPrefix;
-+ Bool vtSwitchSupported;
-+ Bool CustomKeycodes;
-+ Bool noXkb;
-+ Bool isConsole;
-+ TransMapPtr scancodeMap;
-+ TransMapPtr specialMap;
-+
-+ /* os specific */
-+ pointer private;
-+ int kbdType;
-+ int consType;
-+ int wsKbdType;
-+ Bool sunKbd;
-+ Bool Panix106;
-+
-+} KbdDevRec, *KbdDevPtr;
-+
-+typedef enum {
-+ PROT_STD,
-+ PROT_XQUEUE,
-+ PROT_WSCONS,
-+ PROT_USB,
-+ PROT_UNKNOWN_KBD
-+} KbdProtocolId;
-+
-+typedef struct {
-+ const char *name;
-+ KbdProtocolId id;
-+} KbdProtocolRec;
-+
-+Bool xf86OSKbdPreInit(InputInfoPtr pInfo);
-+
-+/* Adjust this when the kbd interface changes. */
-+
-+/*
-+ * History:
-+ *
-+ * 1.0.0 - Initial version.
-+ */
-+
-+#define OS_KBD_VERSION_MAJOR 1
-+#define OS_KBD_VERSION_MINOR 0
-+#define OS_KBD_VERSION_PATCH 0
-+
-+#define OS_KBD_VERSION_CURRENT \
-+ BUILTIN_INTERFACE_VERSION_NUMERIC(OS_KBD_VERSION_MAJOR, \
-+ OS_KBD_VERSION_MINOR, \
-+ OS_KBD_VERSION_PATCH)
-+