summaryrefslogtreecommitdiff
path: root/driver
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2011-04-25 14:10:30 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2011-04-25 14:10:30 +0000
commita45f045a4e13f518297377d554b15c45db522711 (patch)
tree990a8f61e51464d4286857b6f10e479031cc0427 /driver
parent4fc8ca0951b648515f88445efde27cd0c7bcac1b (diff)
Update to xf86-input-vmmouse 12.7.0.
Diffstat (limited to 'driver')
-rw-r--r--driver/xf86-input-vmmouse/ChangeLog184
-rw-r--r--driver/xf86-input-vmmouse/INSTALL291
-rw-r--r--driver/xf86-input-vmmouse/aclocal.m4372
-rw-r--r--driver/xf86-input-vmmouse/config.h.in3
-rw-r--r--driver/xf86-input-vmmouse/configure153
-rw-r--r--driver/xf86-input-vmmouse/configure.ac13
-rw-r--r--driver/xf86-input-vmmouse/fdi/11-x11-vmmouse.fdi2
-rw-r--r--driver/xf86-input-vmmouse/man/Makefile.am21
-rw-r--r--driver/xf86-input-vmmouse/man/Makefile.in18
-rw-r--r--driver/xf86-input-vmmouse/src/vmmouse.c235
-rw-r--r--driver/xf86-input-vmmouse/tools/Makefile.am4
-rw-r--r--driver/xf86-input-vmmouse/tools/Makefile.in4
12 files changed, 1036 insertions, 264 deletions
diff --git a/driver/xf86-input-vmmouse/ChangeLog b/driver/xf86-input-vmmouse/ChangeLog
index d5937c073..1ad8f773c 100644
--- a/driver/xf86-input-vmmouse/ChangeLog
+++ b/driver/xf86-input-vmmouse/ChangeLog
@@ -1,3 +1,187 @@
+commit cfaffd24413a31ebd7ae766ac39ed366902e38e5
+Author: Thomas Hellstrom <thellstrom@vmware.com>
+Date: Wed Mar 2 09:06:47 2011 +0100
+
+ vmmouse 12.7.0.0
+
+ VMware internal testing completed.
+
+ Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 07232feb6b5acc5c25e9cdf12b804397ca52dbce
+Author: Thomas Hellstrom <thellstrom@vmware.com>
+Date: Wed Dec 8 10:07:20 2010 +0100
+
+ vmmouse 12.6.99.901
+
+ Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 5d0ba2e03718b73013519fc0a1c74f2ef5f4e7ad
+Author: Thomas Hellstrom <thellstrom@vmware.com>
+Date: Wed Dec 1 10:04:01 2010 +0100
+
+ Make the .fdi script work on solaris
+
+ Solaris doesn't use the same HAL device naming as Linux.
+ Use the common part of the device name.
+
+ Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit e5987a4e60d4e05159c7cc4a24cee6daed36c770
+Author: Thomas Hellstrom <thellstrom@vmware.com>
+Date: Thu Nov 4 09:09:52 2010 +0100
+
+ Make the modinfo sring contain an optional subpatch number
+
+ The idea is that the build system assigns this number if needed.
+ As an example it might be the commit number since the last version tag.
+
+ Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 3ef519e91fb85261834a3f4ff6982c0a9f86d616
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Tue Nov 2 09:23:10 2010 +1000
+
+ Adjust to input ABI 12.
+
+ New PreInit prototype that requires reshuffling.
+
+ Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+ Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 3d97fa1c3a5404ae02ed67eb94a5519394ba2bf5
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Tue Nov 2 09:23:41 2010 +1000
+
+ Move allocation of mPriv down.
+
+ No functional change. If we get to this point, we know it's available.
+
+ Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+ Acked-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 4e08974ead62fc50ebbe0190abce78c5de3fcdff
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Tue Nov 2 09:04:45 2010 +1000
+
+ ABI 12 requires valuator modes to be specified.
+
+ Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+ Acked-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 4527ef863a4c4d3e499007abb65dbb5e086219e8
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Tue Oct 26 10:43:42 2010 +1000
+
+ Move passthrough initialization out into a separate function.
+
+ No functional changes, just modularising a bit to make future changes
+ easier.
+
+ Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+ Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 6561d57d4cc8ba5a68c4f333a48eb2f9f131be7b
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Tue Oct 26 10:38:57 2010 +1000
+
+ Remove superflouous assignment.
+
+ mPriv is freed a few lines down, assigning anything here makes no
+ difference.
+
+ Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+ Acked-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 4345af5cacec0501a045a303ff9816098b0d63d0
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Tue Oct 26 10:16:28 2010 +1000
+
+ Replace LocalDevicePtr with InputInfoPtr.
+
+ The LocalDevicePtr define was removed from the server with ABI 12, but
+ InputInfoPtr has been an alias for it since the Xfree86/Xorg fork.
+
+ Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+ Acked-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 8962e5c7c521e6cf28f464a9cdb80bd37f2f4328
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date: Tue Oct 19 20:20:01 2010 -0400
+
+ make: remove duplicate definition of EXTRA_DIST
+
+ autoreconf -vfi produces this output:
+ tools/Makefile.am:59: EXTRA_DIST multiply defined in condition TRUE ...
+ tools/Makefile.am:36: ... `EXTRA_DIST' previously defined here
+
+ Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
+ Acked-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit d060a173af59cfde74aa5aa9a59557f509022421
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date: Tue Oct 19 20:20:02 2010 -0400
+
+ config: upgrade to util-macros 1.8 for additional man page support
+
+ Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS
+ The value of MAN_SUBST is the same for all X.Org packages.
+
+ Use AC_PROG_SED now supplied by XORG_DEFAULT_OPTIONS
+ Use the appropriate platform version of sed
+
+ Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
+ Acked-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 61944e4497a65370716fa067f4b6a8643d089a24
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date: Tue Oct 19 20:20:03 2010 -0400
+
+ tools make: use Autoconf provided $(AM_V_GEN)$(SED)
+
+ Enables silent rule and use platform appropriate version of sed.
+
+ Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
+ Acked-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 3b290e278b3721bef01ecc8ebc04a9a2992f7558
+Author: Trevor Woerner <twoerner@gmail.com>
+Date: Tue Oct 19 15:10:45 2010 -0400
+
+ InputDriverRec XINPUT cleanup.
+
+ ABI version 11 of the InputDriverRec data structure no longer
+ includes the refCount member.
+
+ Signed-off-by: Trevor Woerner <twoerner@gmail.com>
+ Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 8650db94573e73953ba9718a2cc2644b38adc306
+Author: Trevor Woerner <twoerner@gmail.com>
+Date: Tue Oct 19 15:09:55 2010 -0400
+
+ Deprecated code cleanup.
+
+ Replace calls to deprecated dynamic memory wrapper functions
+ in driver code.
+
+ Signed-off-by: Trevor Woerner <twoerner@gmail.com>
+ Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit adc177e3af9dc5da982ceb7a93e9c5e3bc6aed59
+Author: Adam Jackson <ajax@redhat.com>
+Date: Tue Aug 10 10:36:33 2010 -0400
+
+ xf86-input-vmmouse 12.6.10
+
+ Signed-off-by: Adam Jackson <ajax@redhat.com>
+
+commit cc76aec9b712403c777b7ce1290fa1e7ca62bf8c
+Author: Adam Jackson <ajax@redhat.com>
+Date: Tue Aug 10 10:36:21 2010 -0400
+
+ Fix distcheck
+
commit 61608b87c01ce87bd29869c1554a2ade5998782c
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Jul 9 20:45:53 2010 -0700
diff --git a/driver/xf86-input-vmmouse/INSTALL b/driver/xf86-input-vmmouse/INSTALL
new file mode 100644
index 000000000..8b82ade08
--- /dev/null
+++ b/driver/xf86-input-vmmouse/INSTALL
@@ -0,0 +1,291 @@
+Installation Instructions
+*************************
+
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
+2006, 2007, 2008 Free Software Foundation, Inc.
+
+ This file is free documentation; the Free Software Foundation gives
+unlimited permission to copy, distribute and modify it.
+
+Basic Installation
+==================
+
+ Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package. The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, and a
+file `config.log' containing compiler output (useful mainly for
+debugging `configure').
+
+ It can also use an optional file (typically called `config.cache'
+and enabled with `--cache-file=config.cache' or simply `-C') that saves
+the results of its tests to speed up reconfiguring. Caching is
+disabled by default to prevent problems with accidental use of stale
+cache files.
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If you are using the cache, and at
+some point `config.cache' contains results you don't want to keep, you
+may remove or edit it.
+
+ The file `configure.ac' (or `configure.in') is used to create
+`configure' by a program called `autoconf'. You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system.
+
+ Running `configure' might take a while. While running, it prints
+ some messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation.
+
+ 5. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
+
+ 6. Often, you can also type `make uninstall' to remove the installed
+ files again.
+
+Compilers and Options
+=====================
+
+ Some systems require unusual options for compilation or linking that
+the `configure' script does not know about. Run `./configure --help'
+for details on some of the pertinent environment variables.
+
+ You can give `configure' initial values for configuration parameters
+by setting variables in the command line or in the environment. Here
+is an example:
+
+ ./configure CC=c99 CFLAGS=-g LIBS=-lposix
+
+ *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
+
+ You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you can use GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+ With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory. After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
+
+ On MacOS X 10.5 and later systems, you can create libraries and
+executables that work on multiple system types--known as "fat" or
+"universal" binaries--by specifying multiple `-arch' options to the
+compiler but only a single `-arch' option to the preprocessor. Like
+this:
+
+ ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CPP="gcc -E" CXXCPP="g++ -E"
+
+ This is not guaranteed to produce working output in all cases, you
+may have to build one architecture at a time and combine the results
+using the `lipo' tool if you have problems.
+
+Installation Names
+==================
+
+ By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc. You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX'.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=DIR' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+ Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Particular systems
+==================
+
+ On HP-UX, the default C compiler is not ANSI C compatible. If GNU
+CC is not installed, it is recommended to use the following options in
+order to use an ANSI C compiler:
+
+ ./configure CC="cc -Ae"
+
+and if that doesn't work, install pre-built binaries of GCC for HP-UX.
+
+ On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
+parse its `<wchar.h>' header file. The option `-nodtk' can be used as
+a workaround. If GNU CC is not installed, it is therefore recommended
+to try
+
+ ./configure CC="cc"
+
+and if that doesn't work, try
+
+ ./configure CC="cc -nodtk"
+
+Specifying the System Type
+==========================
+
+ There may be some features `configure' cannot figure out
+automatically, but needs to determine by the type of machine the package
+will run on. Usually, assuming the package is built to be run on the
+_same_ architectures, `configure' can figure that out, but if it prints
+a message saying it cannot guess the machine type, give it the
+`--build=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name which has the form:
+
+ CPU-COMPANY-SYSTEM
+
+where SYSTEM can have one of these forms:
+
+ OS KERNEL-OS
+
+ See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the machine type.
+
+ If you are _building_ compiler tools for cross-compiling, you should
+use the option `--target=TYPE' to select the type of system they will
+produce code for.
+
+ If you want to _use_ a cross compiler, that generates code for a
+platform different from the build platform, you should specify the
+"host" platform (i.e., that on which the generated programs will
+eventually be run) with `--host=TYPE'.
+
+Sharing Defaults
+================
+
+ If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Defining Variables
+==================
+
+ Variables not defined in a site shell script can be set in the
+environment passed to `configure'. However, some packages may run
+configure again during the build, and the customized values of these
+variables may be lost. In order to avoid this problem, you should set
+them in the `configure' command line, using `VAR=value'. For example:
+
+ ./configure CC=/usr/local2/bin/gcc
+
+causes the specified `gcc' to be used as the C compiler (unless it is
+overridden in the site shell script).
+
+Unfortunately, this technique does not work for `CONFIG_SHELL' due to
+an Autoconf bug. Until the bug is fixed you can use this workaround:
+
+ CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
+`configure' Invocation
+======================
+
+ `configure' recognizes the following options to control how it
+operates.
+
+`--help'
+`-h'
+ Print a summary of all of the options to `configure', and exit.
+
+`--help=short'
+`--help=recursive'
+ Print a summary of the options unique to this package's
+ `configure', and exit. The `short' variant lists options used
+ only in the top level, while the `recursive' variant lists options
+ also present in any nested packages.
+
+`--version'
+`-V'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`--cache-file=FILE'
+ Enable the cache: use and save the results of the tests in FILE,
+ traditionally `config.cache'. FILE defaults to `/dev/null' to
+ disable caching.
+
+`--config-cache'
+`-C'
+ Alias for `--cache-file=config.cache'.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`--prefix=DIR'
+ Use DIR as the installation prefix. *Note Installation Names::
+ for more details, including other options available for fine-tuning
+ the installation locations.
+
+`--no-create'
+`-n'
+ Run the configure checks, but stop before creating any output
+ files.
+
+`configure' also accepts some other, not widely useful, options. Run
+`configure --help' for more details.
+
diff --git a/driver/xf86-input-vmmouse/aclocal.m4 b/driver/xf86-input-vmmouse/aclocal.m4
index 2dc7125e9..b8fd22345 100644
--- a/driver/xf86-input-vmmouse/aclocal.m4
+++ b/driver/xf86-input-vmmouse/aclocal.m4
@@ -7633,7 +7633,7 @@ AC_SUBST([am__untar])
dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure.
dnl
-dnl Copyright 2005-2006 Sun Microsystems, Inc. All rights reserved.
+dnl Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
dnl
dnl Permission is hereby granted, free of charge, to any person obtaining a
dnl copy of this software and associated documentation files (the "Software"),
@@ -7670,7 +7670,7 @@ dnl DEALINGS IN THE SOFTWARE.
# See the "minimum version" comment for each macro you use to see what
# version you require.
m4_defun([XORG_MACROS_VERSION],[
-m4_define([vers_have], [1.10.0])
+m4_define([vers_have], [1.13.0])
m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.])))
m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.])))
m4_if(m4_cmp(maj_have, maj_needed), 0,,
@@ -7821,6 +7821,7 @@ MAN_SUBSTS="\
-e 's|__xservername__|Xorg|g' \
-e 's|__xconfigfile__|xorg.conf|g' \
-e 's|__projectroot__|\$(prefix)|g' \
+ -e 's|__apploaddir__|\$(appdefaultdir)|g' \
-e 's|__appmansuffix__|\$(APP_MAN_SUFFIX)|g' \
-e 's|__drivermansuffix__|\$(DRIVER_MAN_SUFFIX)|g' \
-e 's|__adminmansuffix__|\$(ADMIN_MAN_SUFFIX)|g' \
@@ -7978,15 +7979,17 @@ AC_SUBST(MAKE_PDF)
AC_SUBST(MAKE_HTML)
]) # XORG_CHECK_DOCBOOK
-# XORG_WITH_XMLTO([MIN-VERSION])
+# XORG_WITH_XMLTO([MIN-VERSION], [DEFAULT])
# ----------------
# Minimum version: 1.5.0
+# Minimum version for optional DEFAULT argument: 1.11.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-xmlto option, it allows maximum flexibilty in making decisions
-# as whether or not to use the xmlto package.
+# as whether or not to use the xmlto package. When DEFAULT is not specified,
+# --with-xmlto assumes 'auto'.
#
# Interface to module:
# HAVE_XMLTO: used in makefiles to conditionally generate documentation
@@ -8003,10 +8006,12 @@ AC_SUBST(MAKE_HTML)
#
AC_DEFUN([XORG_WITH_XMLTO],[
AC_ARG_VAR([XMLTO], [Path to xmlto command])
+m4_define([_defopt], m4_default([$2], [auto]))
AC_ARG_WITH(xmlto,
AS_HELP_STRING([--with-xmlto],
- [Use xmlto to regenerate documentation (default: yes, if installed)]),
- [use_xmlto=$withval], [use_xmlto=auto])
+ [Use xmlto to regenerate documentation (default: ]_defopt[)]),
+ [use_xmlto=$withval], [use_xmlto=]_defopt)
+m4_undefine([_defopt])
if test "x$use_xmlto" = x"auto"; then
AC_PATH_PROG([XMLTO], [xmlto])
@@ -8060,15 +8065,80 @@ AM_CONDITIONAL([HAVE_XMLTO_TEXT], [test $have_xmlto_text = yes])
AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes])
]) # XORG_WITH_XMLTO
-# XORG_WITH_ASCIIDOC([MIN-VERSION])
+# XORG_WITH_XSLTPROC([MIN-VERSION], [DEFAULT])
+# --------------------------------------------
+# Minimum version: 1.12.0
+# Minimum version for optional DEFAULT argument: 1.12.0
+#
+# XSLT (Extensible Stylesheet Language Transformations) is a declarative,
+# XML-based language used for the transformation of XML documents.
+# The xsltproc command line tool is for applying XSLT stylesheets to XML documents.
+# It is used under the cover by xmlto to generate html files from DocBook/XML.
+# The XSLT processor is often used as a standalone tool for transformations.
+# It should not be assumed that this tool is used only to work with documnetation.
+# When DEFAULT is not specified, --with-xsltproc assumes 'auto'.
+#
+# Interface to module:
+# HAVE_XSLTPROC: used in makefiles to conditionally generate documentation
+# XSLTPROC: returns the path of the xsltproc program found
+# returns the path set by the user in the environment
+# --with-xsltproc: 'yes' user instructs the module to use xsltproc
+# 'no' user instructs the module not to use xsltproc
+# have_xsltproc: returns yes if xsltproc found in PATH or no
+#
+# If the user sets the value of XSLTPROC, AC_PATH_PROG skips testing the path.
+#
+AC_DEFUN([XORG_WITH_XSLTPROC],[
+AC_ARG_VAR([XSLTPROC], [Path to xsltproc command])
+m4_define([_defopt], m4_default([$2], [auto]))
+AC_ARG_WITH(xsltproc,
+ AS_HELP_STRING([--with-xsltproc],
+ [Use xsltproc for the transformation of XML documents (default: ]_defopt[)]),
+ [use_xsltproc=$withval], [use_xsltproc=]_defopt)
+m4_undefine([_defopt])
+
+if test "x$use_xsltproc" = x"auto"; then
+ AC_PATH_PROG([XSLTPROC], [xsltproc])
+ if test "x$XSLTPROC" = "x"; then
+ AC_MSG_WARN([xsltproc not found - cannot transform XML documents])
+ have_xsltproc=no
+ else
+ have_xsltproc=yes
+ fi
+elif test "x$use_xsltproc" = x"yes" ; then
+ AC_PATH_PROG([XSLTPROC], [xsltproc])
+ if test "x$XSLTPROC" = "x"; then
+ AC_MSG_ERROR([--with-xsltproc=yes specified but xsltproc not found in PATH])
+ fi
+ have_xsltproc=yes
+elif test "x$use_xsltproc" = x"no" ; then
+ if test "x$XSLTPROC" != "x"; then
+ AC_MSG_WARN([ignoring XSLTPROC environment variable since --with-xsltproc=no was specified])
+ fi
+ have_xsltproc=no
+else
+ AC_MSG_ERROR([--with-xsltproc expects 'yes' or 'no'])
+fi
+
+# Checking for minimum version is not implemented
+# but we want to keep the interface consistent with other commands
+m4_ifval([$1],[AC_MSG_WARN(Checking for MIN-VERSION is not implemented.)])
+
+AM_CONDITIONAL([HAVE_XSLTPROC], [test "$have_xsltproc" = yes])
+]) # XORG_WITH_XSLTPROC
+
+
+# XORG_WITH_ASCIIDOC([MIN-VERSION], [DEFAULT])
# ----------------
# Minimum version: 1.5.0
+# Minimum version for optional DEFAULT argument: 1.11.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-asciidoc option, it allows maximum flexibilty in making decisions
-# as whether or not to use the asciidoc package.
+# as whether or not to use the asciidoc package. When DEFAULT is not specified,
+# --with-asciidoc assumes 'auto'.
#
# Interface to module:
# HAVE_ASCIIDOC: used in makefiles to conditionally generate documentation
@@ -8081,10 +8151,12 @@ AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes])
#
AC_DEFUN([XORG_WITH_ASCIIDOC],[
AC_ARG_VAR([ASCIIDOC], [Path to asciidoc command])
+m4_define([_defopt], m4_default([$2], [auto]))
AC_ARG_WITH(asciidoc,
AS_HELP_STRING([--with-asciidoc],
- [Use asciidoc to regenerate documentation (default: yes, if installed)]),
- [use_asciidoc=$withval], [use_asciidoc=auto])
+ [Use asciidoc to regenerate documentation (default: ]_defopt[)]),
+ [use_asciidoc=$withval], [use_asciidoc=]_defopt)
+m4_undefine([_defopt])
if test "x$use_asciidoc" = x"auto"; then
AC_PATH_PROG([ASCIIDOC], [asciidoc])
@@ -8125,15 +8197,17 @@ fi])
AM_CONDITIONAL([HAVE_ASCIIDOC], [test "$have_asciidoc" = yes])
]) # XORG_WITH_ASCIIDOC
-# XORG_WITH_DOXYGEN([MIN-VERSION])
+# XORG_WITH_DOXYGEN([MIN-VERSION], [DEFAULT])
# --------------------------------
# Minimum version: 1.5.0
+# Minimum version for optional DEFAULT argument: 1.11.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-doxygen option, it allows maximum flexibilty in making decisions
-# as whether or not to use the doxygen package.
+# as whether or not to use the doxygen package. When DEFAULT is not specified,
+# --with-doxygen assumes 'auto'.
#
# Interface to module:
# HAVE_DOXYGEN: used in makefiles to conditionally generate documentation
@@ -8146,10 +8220,12 @@ AM_CONDITIONAL([HAVE_ASCIIDOC], [test "$have_asciidoc" = yes])
#
AC_DEFUN([XORG_WITH_DOXYGEN],[
AC_ARG_VAR([DOXYGEN], [Path to doxygen command])
+m4_define([_defopt], m4_default([$2], [auto]))
AC_ARG_WITH(doxygen,
AS_HELP_STRING([--with-doxygen],
- [Use doxygen to regenerate documentation (default: yes, if installed)]),
- [use_doxygen=$withval], [use_doxygen=auto])
+ [Use doxygen to regenerate documentation (default: ]_defopt[)]),
+ [use_doxygen=$withval], [use_doxygen=]_defopt)
+m4_undefine([_defopt])
if test "x$use_doxygen" = x"auto"; then
AC_PATH_PROG([DOXYGEN], [doxygen])
@@ -8190,15 +8266,17 @@ fi])
AM_CONDITIONAL([HAVE_DOXYGEN], [test "$have_doxygen" = yes])
]) # XORG_WITH_DOXYGEN
-# XORG_WITH_GROFF
+# XORG_WITH_GROFF([DEFAULT])
# ----------------
# Minimum version: 1.6.0
+# Minimum version for optional DEFAULT argument: 1.11.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-groff option, it allows maximum flexibilty in making decisions
-# as whether or not to use the groff package.
+# as whether or not to use the groff package. When DEFAULT is not specified,
+# --with-groff assumes 'auto'.
#
# Interface to module:
# HAVE_GROFF: used in makefiles to conditionally generate documentation
@@ -8227,10 +8305,12 @@ AM_CONDITIONAL([HAVE_DOXYGEN], [test "$have_doxygen" = yes])
#
AC_DEFUN([XORG_WITH_GROFF],[
AC_ARG_VAR([GROFF], [Path to groff command])
+m4_define([_defopt], m4_default([$1], [auto]))
AC_ARG_WITH(groff,
AS_HELP_STRING([--with-groff],
- [Use groff to regenerate documentation (default: yes, if installed)]),
- [use_groff=$withval], [use_groff=auto])
+ [Use groff to regenerate documentation (default: ]_defopt[)]),
+ [use_groff=$withval], [use_groff=]_defopt)
+m4_undefine([_defopt])
if test "x$use_groff" = x"auto"; then
AC_PATH_PROG([GROFF], [groff])
@@ -8293,15 +8373,17 @@ AM_CONDITIONAL([HAVE_GROFF_MM], [test "$groff_mm_works" = yes])
AM_CONDITIONAL([HAVE_GROFF_HTML], [test "$have_groff_html" = yes])
]) # XORG_WITH_GROFF
-# XORG_WITH_FOP
+# XORG_WITH_FOP([DEFAULT])
# ----------------
# Minimum version: 1.6.0
+# Minimum version for optional DEFAULT argument: 1.11.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-fop option, it allows maximum flexibilty in making decisions
-# as whether or not to use the fop package.
+# as whether or not to use the fop package. When DEFAULT is not specified,
+# --with-fop assumes 'auto'.
#
# Interface to module:
# HAVE_FOP: used in makefiles to conditionally generate documentation
@@ -8314,10 +8396,12 @@ AM_CONDITIONAL([HAVE_GROFF_HTML], [test "$have_groff_html" = yes])
#
AC_DEFUN([XORG_WITH_FOP],[
AC_ARG_VAR([FOP], [Path to fop command])
+m4_define([_defopt], m4_default([$1], [auto]))
AC_ARG_WITH(fop,
AS_HELP_STRING([--with-fop],
- [Use fop to regenerate documentation (default: yes, if installed)]),
- [use_fop=$withval], [use_fop=auto])
+ [Use fop to regenerate documentation (default: ]_defopt[)]),
+ [use_fop=$withval], [use_fop=]_defopt)
+m4_undefine([_defopt])
if test "x$use_fop" = x"auto"; then
AC_PATH_PROG([FOP], [fop])
@@ -8344,15 +8428,17 @@ fi
AM_CONDITIONAL([HAVE_FOP], [test "$have_fop" = yes])
]) # XORG_WITH_FOP
-# XORG_WITH_PS2PDF
+# XORG_WITH_PS2PDF([DEFAULT])
# ----------------
# Minimum version: 1.6.0
+# Minimum version for optional DEFAULT argument: 1.11.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-ps2pdf option, it allows maximum flexibilty in making decisions
-# as whether or not to use the ps2pdf package.
+# as whether or not to use the ps2pdf package. When DEFAULT is not specified,
+# --with-ps2pdf assumes 'auto'.
#
# Interface to module:
# HAVE_PS2PDF: used in makefiles to conditionally generate documentation
@@ -8365,10 +8451,12 @@ AM_CONDITIONAL([HAVE_FOP], [test "$have_fop" = yes])
#
AC_DEFUN([XORG_WITH_PS2PDF],[
AC_ARG_VAR([PS2PDF], [Path to ps2pdf command])
+m4_define([_defopt], m4_default([$1], [auto]))
AC_ARG_WITH(ps2pdf,
AS_HELP_STRING([--with-ps2pdf],
- [Use ps2pdf to regenerate documentation (default: yes, if installed)]),
- [use_ps2pdf=$withval], [use_ps2pdf=auto])
+ [Use ps2pdf to regenerate documentation (default: ]_defopt[)]),
+ [use_ps2pdf=$withval], [use_ps2pdf=]_defopt)
+m4_undefine([_defopt])
if test "x$use_ps2pdf" = x"auto"; then
AC_PATH_PROG([PS2PDF], [ps2pdf])
@@ -8419,14 +8507,12 @@ AM_CONDITIONAL([HAVE_PS2PDF], [test "$have_ps2pdf" = yes])
# parm1: specify the default value, yes or no.
#
AC_DEFUN([XORG_ENABLE_DOCS],[
-default=$1
-if test "x$default" = x ; then
- default="yes"
-fi
+m4_define([docs_default], m4_default([$1], [yes]))
AC_ARG_ENABLE(docs,
AS_HELP_STRING([--enable-docs],
- [Enable building the documentation (default: yes)]),
- [build_docs=$enableval], [build_docs=$default])
+ [Enable building the documentation (default: ]docs_default[)]),
+ [build_docs=$enableval], [build_docs=]docs_default)
+m4_undefine([docs_default])
AM_CONDITIONAL(ENABLE_DOCS, [test x$build_docs = xyes])
AC_MSG_CHECKING([whether to build documentation])
AC_MSG_RESULT([$build_docs])
@@ -8454,14 +8540,12 @@ AC_MSG_RESULT([$build_docs])
# parm1: specify the default value, yes or no.
#
AC_DEFUN([XORG_ENABLE_DEVEL_DOCS],[
-devel_default=$1
-if test "x$devel_default" = x ; then
- devel_default="yes"
-fi
+m4_define([devel_default], m4_default([$1], [yes]))
AC_ARG_ENABLE(devel-docs,
AS_HELP_STRING([--enable-devel-docs],
- [Enable building the developer documentation (default: yes)]),
- [build_devel_docs=$enableval], [build_devel_docs=$devel_default])
+ [Enable building the developer documentation (default: ]devel_default[)]),
+ [build_devel_docs=$enableval], [build_devel_docs=]devel_default)
+m4_undefine([devel_default])
AM_CONDITIONAL(ENABLE_DEVEL_DOCS, [test x$build_devel_docs = xyes])
AC_MSG_CHECKING([whether to build developer documentation])
AC_MSG_RESULT([$build_devel_docs])
@@ -8489,19 +8573,205 @@ AC_MSG_RESULT([$build_devel_docs])
# parm1: specify the default value, yes or no.
#
AC_DEFUN([XORG_ENABLE_SPECS],[
-spec_default=$1
-if test "x$spec_default" = x ; then
- spec_default="yes"
-fi
+m4_define([spec_default], m4_default([$1], [yes]))
AC_ARG_ENABLE(specs,
AS_HELP_STRING([--enable-specs],
- [Enable building the specs (default: yes)]),
- [build_specs=$enableval], [build_specs=$spec_default])
+ [Enable building the specs (default: ]spec_default[)]),
+ [build_specs=$enableval], [build_specs=]spec_default)
+m4_undefine([spec_default])
AM_CONDITIONAL(ENABLE_SPECS, [test x$build_specs = xyes])
AC_MSG_CHECKING([whether to build functional specifications])
AC_MSG_RESULT([$build_specs])
]) # XORG_ENABLE_SPECS
+# XORG_ENABLE_UNIT_TESTS (enable_unit_tests=auto)
+# ----------------------------------------------
+# Minimum version: 1.13.0
+#
+# This macro enables a builder to enable/disable unit testing
+# It makes no assumption about the test cases implementation
+# Test cases may or may not use Automake "Support for test suites"
+# They may or may not use the software utility library GLib
+#
+# When used in conjunction with XORG_WITH_GLIB, use both AM_CONDITIONAL
+# ENABLE_UNIT_TESTS and HAVE_GLIB. Not all unit tests may use glib.
+# The variable enable_unit_tests is used by other macros in this file.
+#
+# Interface to module:
+# ENABLE_UNIT_TESTS: used in makefiles to conditionally build tests
+# enable_unit_tests: used in configure.ac for additional configuration
+# --enable-unit-tests: 'yes' user instructs the module to build tests
+# 'no' user instructs the module not to build tests
+# parm1: specify the default value, yes or no.
+#
+AC_DEFUN([XORG_ENABLE_UNIT_TESTS],[
+AC_BEFORE([$0], [XORG_WITH_GLIB])
+AC_BEFORE([$0], [XORG_LD_WRAP])
+m4_define([_defopt], m4_default([$1], [auto]))
+AC_ARG_ENABLE(unit-tests, AS_HELP_STRING([--enable-unit-tests],
+ [Enable building unit test cases (default: ]_defopt[)]),
+ [enable_unit_tests=$enableval], [enable_unit_tests=]_defopt)
+m4_undefine([_defopt])
+AM_CONDITIONAL(ENABLE_UNIT_TESTS, [test "x$enable_unit_tests" != xno])
+AC_MSG_CHECKING([whether to build unit test cases])
+AC_MSG_RESULT([$enable_unit_tests])
+]) # XORG_ENABLE_UNIT_TESTS
+
+# XORG_WITH_GLIB([MIN-VERSION], [DEFAULT])
+# ----------------------------------------
+# Minimum version: 1.13.0
+#
+# GLib is a library which provides advanced data structures and functions.
+# This macro enables a module to test for the presence of Glib.
+#
+# When used with ENABLE_UNIT_TESTS, it is assumed GLib is used for unit testing.
+# Otherwise the value of $enable_unit_tests is blank.
+#
+# Interface to module:
+# HAVE_GLIB: used in makefiles to conditionally build targets
+# with_glib: used in configure.ac to know if GLib has been found
+# --with-glib: 'yes' user instructs the module to use glib
+# 'no' user instructs the module not to use glib
+#
+AC_DEFUN([XORG_WITH_GLIB],[
+AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+m4_define([_defopt], m4_default([$2], [auto]))
+AC_ARG_WITH(glib, AS_HELP_STRING([--with-glib],
+ [Use GLib library for unit testing (default: ]_defopt[)]),
+ [with_glib=$withval], [with_glib=]_defopt)
+m4_undefine([_defopt])
+
+have_glib=no
+# Do not probe GLib if user explicitly disabled unit testing
+if test "x$enable_unit_tests" != x"no"; then
+ # Do not probe GLib if user explicitly disabled it
+ if test "x$with_glib" != x"no"; then
+ m4_ifval(
+ [$1],
+ [PKG_CHECK_MODULES([GLIB], [glib-2.0 >= $1], [have_glib=yes], [have_glib=no])],
+ [PKG_CHECK_MODULES([GLIB], [glib-2.0], [have_glib=yes], [have_glib=no])]
+ )
+ fi
+fi
+
+# Not having GLib when unit testing has been explicitly requested is an error
+if test "x$enable_unit_tests" = x"yes"; then
+ if test "x$have_glib" = x"no"; then
+ AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
+ fi
+fi
+
+# Having unit testing disabled when GLib has been explicitly requested is an error
+if test "x$enable_unit_tests" = x"no"; then
+ if test "x$with_glib" = x"yes"; then
+ AC_MSG_ERROR([--enable-unit-tests=yes specified but glib-2.0 not found])
+ fi
+fi
+
+# Not having GLib when it has been explicitly requested is an error
+if test "x$with_glib" = x"yes"; then
+ if test "x$have_glib" = x"no"; then
+ AC_MSG_ERROR([--with-glib=yes specified but glib-2.0 not found])
+ fi
+fi
+
+AM_CONDITIONAL([HAVE_GLIB], [test "$have_glib" = yes])
+]) # XORG_WITH_GLIB
+
+# XORG_LD_WRAP
+# ------------
+# Minimum version: 1.13.0
+#
+# Check if linker supports -wrap, passed via compiler flags
+#
+# When used with ENABLE_UNIT_TESTS, it is assumed -wrap is used for unit testing.
+# Otherwise the value of $enable_unit_tests is blank.
+#
+AC_DEFUN([XORG_LD_WRAP],[
+XORG_CHECK_LINKER_FLAGS([-Wl,-wrap,exit],[have_ld_wrap=yes],[have_ld_wrap=no])
+# Not having ld wrap when unit testing has been explicitly requested is an error
+if test "x$enable_unit_tests" = x"yes"; then
+ if test "x$have_ld_wrap" = x"no"; then
+ AC_MSG_ERROR([--enable-unit-tests=yes specified but ld -wrap support is not available])
+ fi
+fi
+AM_CONDITIONAL([HAVE_LD_WRAP], [test "$have_ld_wrap" = yes])
+#
+]) # XORG_LD_WRAP
+
+# XORG_CHECK_LINKER_FLAGS
+# -----------------------
+# SYNOPSIS
+#
+# XORG_CHECK_LINKER_FLAGS(FLAGS, [ACTION-SUCCESS], [ACTION-FAILURE])
+#
+# DESCRIPTION
+#
+# Check whether the given linker FLAGS work with the current language's
+# linker, or whether they give an error.
+#
+# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
+# success/failure.
+#
+# NOTE: Based on AX_CHECK_COMPILER_FLAGS.
+#
+# LICENSE
+#
+# Copyright (c) 2009 Mike Frysinger <vapier@gentoo.org>
+# Copyright (c) 2009 Steven G. Johnson <stevenj@alum.mit.edu>
+# Copyright (c) 2009 Matteo Frigo
+#
+# 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 the
+# Free Software Foundation, either version 3 of the License, or (at your
+# option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
+# Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+# As a special exception, the respective Autoconf Macro's copyright owner
+# gives unlimited permission to copy, distribute and modify the configure
+# scripts that are the output of Autoconf when processing the Macro. You
+# need not follow the terms of the GNU General Public License when using
+# or distributing such scripts, even though portions of the text of the
+# Macro appear in them. The GNU General Public License (GPL) does govern
+# all other use of the material that constitutes the Autoconf Macro.
+#
+# This special exception to the GPL applies to versions of the Autoconf
+# Macro released by the Autoconf Archive. When you make and distribute a
+# modified version of the Autoconf Macro, you may extend this special
+# exception to the GPL to apply to your modified version as well.#
+AC_DEFUN([XORG_CHECK_LINKER_FLAGS],
+[AC_MSG_CHECKING([whether the linker accepts $1])
+dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname:
+AS_LITERAL_IF([$1],
+ [AC_CACHE_VAL(AS_TR_SH(xorg_cv_linker_flags_[$1]), [
+ ax_save_FLAGS=$LDFLAGS
+ LDFLAGS="$1"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM()],
+ AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
+ AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
+ LDFLAGS=$ax_save_FLAGS])],
+ [ax_save_FLAGS=$LDFLAGS
+ LDFLAGS="$1"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM()],
+ eval AS_TR_SH(xorg_cv_linker_flags_[$1])=yes,
+ eval AS_TR_SH(xorg_cv_linker_flags_[$1])=no)
+ LDFLAGS=$ax_save_FLAGS])
+eval xorg_check_linker_flags=$AS_TR_SH(xorg_cv_linker_flags_[$1])
+AC_MSG_RESULT($xorg_check_linker_flags)
+if test "x$xorg_check_linker_flags" = xyes; then
+ m4_default([$2], :)
+else
+ m4_default([$3], :)
+fi
+]) # XORG_CHECK_LINKER_FLAGS
+
# XORG_CHECK_MALLOC_ZERO
# ----------------------
# Minimum version: 1.0.0
@@ -8518,18 +8788,16 @@ AC_ARG_ENABLE(malloc0returnsnull,
AC_MSG_CHECKING([whether malloc(0) returns NULL])
if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then
- AC_RUN_IFELSE([
-char *malloc();
-char *realloc();
-char *calloc();
-main() {
+ AC_RUN_IFELSE([AC_LANG_PROGRAM([
+#include <stdlib.h>
+],[
char *m0, *r0, *c0, *p;
m0 = malloc(0);
p = malloc(10);
r0 = realloc(p,0);
- c0 = calloc(0);
- exit(m0 == 0 || r0 == 0 || c0 == 0 ? 0 : 1);
-}],
+ c0 = calloc(0,10);
+ exit((m0 == 0 || r0 == 0 || c0 == 0) ? 0 : 1);
+])],
[MALLOC_ZERO_RETURNS_NULL=yes],
[MALLOC_ZERO_RETURNS_NULL=no],
[MALLOC_ZERO_RETURNS_NULL=yes])
diff --git a/driver/xf86-input-vmmouse/config.h.in b/driver/xf86-input-vmmouse/config.h.in
index 737128410..375d09acf 100644
--- a/driver/xf86-input-vmmouse/config.h.in
+++ b/driver/xf86-input-vmmouse/config.h.in
@@ -41,6 +41,9 @@
/* Has version 1.1.0 or greater of the Xserver */
#undef HAVE_XORG_SERVER_1_1_0
+/* Has version 1.5.0 or greater of the Xserver */
+#undef HAVE_XORG_SERVER_1_5_0
+
/* Do not include built-in mouse module fallback */
#undef NO_MOUSE_MODULE
diff --git a/driver/xf86-input-vmmouse/configure b/driver/xf86-input-vmmouse/configure
index 70f486c4c..95e4ef84b 100644
--- a/driver/xf86-input-vmmouse/configure
+++ b/driver/xf86-input-vmmouse/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.62 for xf86-input-vmmouse 12.6.10.
+# Generated by GNU Autoconf 2.62 for xf86-input-vmmouse 12.7.0.
#
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
#
@@ -750,8 +750,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='xf86-input-vmmouse'
PACKAGE_TARNAME='xf86-input-vmmouse'
-PACKAGE_VERSION='12.6.10'
-PACKAGE_STRING='xf86-input-vmmouse 12.6.10'
+PACKAGE_VERSION='12.7.0'
+PACKAGE_STRING='xf86-input-vmmouse 12.7.0'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
ac_unique_file="Makefile.am"
@@ -1521,7 +1521,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures xf86-input-vmmouse 12.6.10 to adapt to many kinds of systems.
+\`configure' configures xf86-input-vmmouse 12.7.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1592,7 +1592,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of xf86-input-vmmouse 12.6.10:";;
+ short | recursive ) echo "Configuration of xf86-input-vmmouse 12.7.0:";;
esac
cat <<\_ACEOF
@@ -1722,7 +1722,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-xf86-input-vmmouse configure 12.6.10
+xf86-input-vmmouse configure 12.7.0
generated by GNU Autoconf 2.62
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1736,7 +1736,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by xf86-input-vmmouse $as_me 12.6.10, which was
+It was created by xf86-input-vmmouse $as_me 12.7.0, which was
generated by GNU Autoconf 2.62. Invocation command line was
$ $0 $@
@@ -2387,7 +2387,7 @@ fi
# Define the identity of the package.
PACKAGE='xf86-input-vmmouse'
- VERSION='12.6.10'
+ VERSION='12.7.0'
cat >>confdefs.h <<_ACEOF
@@ -2559,7 +2559,7 @@ fi
-# Require xorg-macros: XORG_DEFAULT_OPTIONS
+# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
@@ -5114,6 +5114,7 @@ MAN_SUBSTS="\
-e 's|__xservername__|Xorg|g' \
-e 's|__xconfigfile__|xorg.conf|g' \
-e 's|__projectroot__|\$(prefix)|g' \
+ -e 's|__apploaddir__|\$(appdefaultdir)|g' \
-e 's|__appmansuffix__|\$(APP_MAN_SUFFIX)|g' \
-e 's|__drivermansuffix__|\$(DRIVER_MAN_SUFFIX)|g' \
-e 's|__adminmansuffix__|\$(ADMIN_MAN_SUFFIX)|g' \
@@ -5697,7 +5698,7 @@ ia64-*-hpux*)
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 5700 "configure"' > conftest.$ac_ext
+ echo '#line 5701 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -8320,11 +8321,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8323: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8324: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:8327: \$? = $ac_status" >&5
+ echo "$as_me:8328: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -8610,11 +8611,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8613: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8614: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:8617: \$? = $ac_status" >&5
+ echo "$as_me:8618: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -8714,11 +8715,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8717: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8718: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:8721: \$? = $ac_status" >&5
+ echo "$as_me:8722: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -11114,7 +11115,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 11117 "configure"
+#line 11118 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11214,7 +11215,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 11217 "configure"
+#line 11218 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -13623,11 +13624,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13626: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13627: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:13630: \$? = $ac_status" >&5
+ echo "$as_me:13631: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -13727,11 +13728,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13730: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13731: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13734: \$? = $ac_status" >&5
+ echo "$as_me:13735: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -15310,11 +15311,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15313: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15314: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15317: \$? = $ac_status" >&5
+ echo "$as_me:15318: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -15414,11 +15415,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15417: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15418: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:15421: \$? = $ac_status" >&5
+ echo "$as_me:15422: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -17629,11 +17630,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:17632: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:17633: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:17636: \$? = $ac_status" >&5
+ echo "$as_me:17637: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -17919,11 +17920,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:17922: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:17923: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:17926: \$? = $ac_status" >&5
+ echo "$as_me:17927: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -18023,11 +18024,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:18026: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:18027: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:18030: \$? = $ac_status" >&5
+ echo "$as_me:18031: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -21506,77 +21507,6 @@ else
fi
-{ $as_echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if test "${ac_cv_path_SED+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
- for ac_i in 1 2 3 4 5 6 7; do
- ac_script="$ac_script$as_nl$ac_script"
- done
- echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
- $as_unset ac_script || ac_script=
- if test -z "$SED"; then
- ac_path_SED_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in sed gsed; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
-# Check for GNU ac_path_SED and select it if it is found.
- # Check for GNU $ac_path_SED
-case `"$ac_path_SED" --version 2>&1` in
-*GNU*)
- ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo '' >> "conftest.nl"
- "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- ac_count=`expr $ac_count + 1`
- if test $ac_count -gt ${ac_path_SED_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_SED="$ac_path_SED"
- ac_path_SED_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_SED_found && break 3
- done
- done
-done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_SED"; then
- { { $as_echo "$as_me:$LINENO: error: no acceptable sed could be found in \$PATH" >&5
-$as_echo "$as_me: error: no acceptable sed could be found in \$PATH" >&2;}
- { (exit 1); exit 1; }; }
- fi
-else
- ac_cv_path_SED=$SED
-fi
-
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
- SED="$ac_cv_path_SED"
- rm -f conftest.sed
-
@@ -21926,6 +21856,19 @@ _ACEOF
fi
if test -n "$PKG_CONFIG" && \
+ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server > 1.4.99\"") >&5
+ ($PKG_CONFIG --exists --print-errors "xorg-server > 1.4.99") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_XORG_SERVER_1_5_0 1
+_ACEOF
+
+fi
+
+if test -n "$PKG_CONFIG" && \
{ ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.3.99.0 xorg-server <= 1.4.0.90\"") >&5
($PKG_CONFIG --exists --print-errors "xorg-server >= 1.3.99.0 xorg-server <= 1.4.0.90") 2>&5
ac_status=$?
@@ -22614,7 +22557,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by xf86-input-vmmouse $as_me 12.6.10, which was
+This file was extended by xf86-input-vmmouse $as_me 12.7.0, which was
generated by GNU Autoconf 2.62. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -22667,7 +22610,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-xf86-input-vmmouse config.status 12.6.10
+xf86-input-vmmouse config.status 12.7.0
configured by $0, generated by GNU Autoconf 2.62,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/driver/xf86-input-vmmouse/configure.ac b/driver/xf86-input-vmmouse/configure.ac
index 8c1322c44..20d680687 100644
--- a/driver/xf86-input-vmmouse/configure.ac
+++ b/driver/xf86-input-vmmouse/configure.ac
@@ -22,7 +22,7 @@
AC_PREREQ(2.57)
AC_INIT([xf86-input-vmmouse],
- 12.6.10,
+ [12.7.0],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
xf86-input-vmmouse)
@@ -32,10 +32,10 @@ AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
-# Require xorg-macros: XORG_DEFAULT_OPTIONS
+# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
m4_ifndef([XORG_MACROS_VERSION],
- [m4_fatal([must install xorg-macros 1.4 or later before running autoconf/autogen])])
-XORG_MACROS_VERSION(1.4)
+ [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])])
+XORG_MACROS_VERSION(1.8)
XORG_DEFAULT_OPTIONS
DRIVER_NAME=vmmouse
@@ -47,7 +47,6 @@ AM_CONFIG_HEADER([config.h])
AC_DISABLE_STATIC
AC_PROG_LIBTOOL
AC_PROG_CC
-AC_PROG_SED
AH_TOP([#include "xorg-server.h"])
@@ -127,6 +126,10 @@ PKG_CHECK_EXISTS([xorg-server >= 1.1.0],
[AC_DEFINE([HAVE_XORG_SERVER_1_1_0], 1,
[Has version 1.1.0 or greater of the Xserver])])
+PKG_CHECK_EXISTS([xorg-server > 1.4.99],
+ [AC_DEFINE([HAVE_XORG_SERVER_1_5_0], 1,
+ [Has version 1.5.0 or greater of the Xserver])])
+
PKG_CHECK_EXISTS([xorg-server >= 1.3.99.0 xorg-server <= 1.4.0.90],
[AC_DEFINE([CALL_CONVERSION_PROC], 1,
[Call conversion_proc from within the driver, as
diff --git a/driver/xf86-input-vmmouse/fdi/11-x11-vmmouse.fdi b/driver/xf86-input-vmmouse/fdi/11-x11-vmmouse.fdi
index e725f9a21..61511968c 100644
--- a/driver/xf86-input-vmmouse/fdi/11-x11-vmmouse.fdi
+++ b/driver/xf86-input-vmmouse/fdi/11-x11-vmmouse.fdi
@@ -2,7 +2,7 @@
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.mouse">
- <match key="input.originating_device" contains="i8042_AUX_port">
+ <match key="input.originating_device" contains="i8042_">
<append key="info.callouts.add" type="strlist">hal-probe-vmmouse</append>
</match>
</match>
diff --git a/driver/xf86-input-vmmouse/man/Makefile.am b/driver/xf86-input-vmmouse/man/Makefile.am
index b176b6104..a8e5ac972 100644
--- a/driver/xf86-input-vmmouse/man/Makefile.am
+++ b/driver/xf86-input-vmmouse/man/Makefile.am
@@ -22,9 +22,7 @@
#
drivermandir = $(DRIVER_MAN_DIR)
-
driverman_PRE = @DRIVER_NAME@.man
-
driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@)
# appmandir = $(APP_MAN_DIR)
@@ -32,27 +30,10 @@ driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@)
# appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
EXTRA_DIST = @DRIVER_NAME@.man $(appman_PRE)
-
CLEANFILES = $(driverman_DATA) $(appman_DATA)
-
-# Strings to replace in man pages
-XORGRELSTRING = @PACKAGE_STRING@
- XORGMANNAME = X Version 11
-
-MAN_SUBSTS = \
- -e 's|__vendorversion__|"$(XORGRELSTRING)" "$(XORGMANNAME)"|' \
- -e 's|__xorgversion__|"$(XORGRELSTRING)" "$(XORGMANNAME)"|' \
- -e 's|__xservername__|Xorg|g' \
- -e 's|__xconfigfile__|xorg.conf|g' \
- -e 's|__projectroot__|$(prefix)|g' \
- -e 's|__appmansuffix__|$(APP_MAN_SUFFIX)|g' \
- -e 's|__drivermansuffix__|$(DRIVER_MAN_SUFFIX)|g' \
- -e 's|__adminmansuffix__|$(ADMIN_MAN_SUFFIX)|g' \
- -e 's|__miscmansuffix__|$(MISC_MAN_SUFFIX)|g' \
- -e 's|__filemansuffix__|$(FILE_MAN_SUFFIX)|g'
-
SUFFIXES = .$(DRIVER_MAN_SUFFIX) .man
+# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure
.man.$(DRIVER_MAN_SUFFIX):
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
.man.$(APP_MAN_SUFFIX):
diff --git a/driver/xf86-input-vmmouse/man/Makefile.in b/driver/xf86-input-vmmouse/man/Makefile.in
index c0b805221..501a5c212 100644
--- a/driver/xf86-input-vmmouse/man/Makefile.in
+++ b/driver/xf86-input-vmmouse/man/Makefile.in
@@ -147,18 +147,7 @@ MAINT = @MAINT@
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
-MAN_SUBSTS = \
- -e 's|__vendorversion__|"$(XORGRELSTRING)" "$(XORGMANNAME)"|' \
- -e 's|__xorgversion__|"$(XORGRELSTRING)" "$(XORGMANNAME)"|' \
- -e 's|__xservername__|Xorg|g' \
- -e 's|__xconfigfile__|xorg.conf|g' \
- -e 's|__projectroot__|$(prefix)|g' \
- -e 's|__appmansuffix__|$(APP_MAN_SUFFIX)|g' \
- -e 's|__drivermansuffix__|$(DRIVER_MAN_SUFFIX)|g' \
- -e 's|__adminmansuffix__|$(ADMIN_MAN_SUFFIX)|g' \
- -e 's|__miscmansuffix__|$(MISC_MAN_SUFFIX)|g' \
- -e 's|__filemansuffix__|$(FILE_MAN_SUFFIX)|g'
-
+MAN_SUBSTS = @MAN_SUBSTS@
MISC_MAN_DIR = @MISC_MAN_DIR@
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
NMEDIT = @NMEDIT@
@@ -239,10 +228,6 @@ driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@)
# appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
EXTRA_DIST = @DRIVER_NAME@.man $(appman_PRE)
CLEANFILES = $(driverman_DATA) $(appman_DATA)
-
-# Strings to replace in man pages
-XORGRELSTRING = @PACKAGE_STRING@
-XORGMANNAME = X Version 11
SUFFIXES = .$(DRIVER_MAN_SUFFIX) .man
all: all-am
@@ -428,6 +413,7 @@ uninstall-am: uninstall-drivermanDATA uninstall-info-am
uninstall-info-am
+# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure
.man.$(DRIVER_MAN_SUFFIX):
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
.man.$(APP_MAN_SUFFIX):
diff --git a/driver/xf86-input-vmmouse/src/vmmouse.c b/driver/xf86-input-vmmouse/src/vmmouse.c
index f5ad23476..ad014ece2 100644
--- a/driver/xf86-input-vmmouse/src/vmmouse.c
+++ b/driver/xf86-input-vmmouse/src/vmmouse.c
@@ -75,6 +75,11 @@
#include "xisb.h"
#include "mipointer.h"
+#ifndef HAVE_XORG_SERVER_1_5_0
+#include <xf86_ansic.h>
+#include <xf86_libc.h>
+#endif
+
/*****************************************************************************
* Local Headers
****************************************************************************/
@@ -105,31 +110,41 @@
/*
* Standard four digit version string expected by VMware Tools installer.
- * As the driver's version is only {major, minor, patchlevel}, simply append an
- * extra zero for the fourth digit.
+ * As the driver's version is only {major, minor, patchlevel},
+ * The fourth digit may describe the commit number relative to the
+ * last version tag as output from `git describe`
*/
#ifdef __GNUC__
+#ifdef VMW_SUBPATCH
+const char vm_mouse_version[] __attribute__((section(".modinfo"),unused)) =
+ "version=" VMMOUSE_DRIVER_VERSION_STRING "." VMW_STRING(VMW_SUBPATCH);
+#else
const char vm_mouse_version[] __attribute__((section(".modinfo"),unused)) =
"version=" VMMOUSE_DRIVER_VERSION_STRING ".0";
+#endif /*VMW_SUBPATCH*/
#endif
/*****************************************************************************
* static function header
****************************************************************************/
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
+static int VMMousePreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags);
+#else
static InputInfoPtr VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags);
+static void VMMouseCloseProc(InputInfoPtr pInfo);
+static Bool VMMouseConvertProc(InputInfoPtr pInfo, int first, int num, int v0, int v1, int v2,
+ int v3, int v4, int v5, int *x, int *y);
+#endif
static void VMMouseUnInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags);
static void MouseCommonOptions(InputInfoPtr pInfo);
static void GetVMMouseMotionEvent(InputInfoPtr pInfo);
static void VMMousePostEvent(InputInfoPtr pInfo, int buttons, int dx, int dy, int dz, int dw);
static void VMMouseDoPostEvent(InputInfoPtr pInfo, int buttons, int dx, int dy);
static Bool VMMouseDeviceControl(DeviceIntPtr device, int mode);
-static void VMMouseCloseProc(LocalDevicePtr local);
-static int VMMouseControlProc(LocalDevicePtr local, xDeviceCtl * control);
+static int VMMouseControlProc(InputInfoPtr pInfo, xDeviceCtl * control);
static void VMMouseReadInput(InputInfoPtr pInfo);
static int VMMouseSwitchMode(ClientPtr client, DeviceIntPtr dev, int mode);
-static Bool VMMouseConvertProc(InputInfoPtr pInfo, int first, int num, int v0, int v1, int v2,
- int v3, int v4, int v5, int *x, int *y);
static void MouseCtrl(DeviceIntPtr device, PtrCtrl *ctrl);
/******************************************************************************
@@ -198,8 +213,11 @@ InputDriverRec VMMOUSE = {
NULL,
VMMousePreInit,
VMMouseUnInit,
- NULL,
+ NULL
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 11
+ ,
0
+#endif
};
static char reverseMap[32] = { 0, 4, 2, 6, 1, 5, 3, 7,
@@ -209,6 +227,56 @@ static char reverseMap[32] = { 0, 4, 2, 6, 1, 5, 3, 7,
#define reverseBits(map, b) (((b) & ~0x0f) | map[(b) & 0x0f])
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
+static int
+VMMouseInitPassthru(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
+{
+ InputAttributes *attrs = NULL;
+ InputOption *input_options = NULL, *tmp, *opts;
+ pointer options;
+ DeviceIntPtr dev;
+ int rc;
+
+ options = xf86OptionListDuplicate(pInfo->options);
+ options = xf86ReplaceStrOption(options, "Driver", "mouse");
+
+ while(options) {
+ tmp = calloc(1, sizeof(InputOption));
+ tmp->key = xf86OptionName(options);
+ tmp->value = xf86OptionValue(options);
+ tmp->next = input_options;
+ input_options = tmp;
+ options = xf86NextOption(options);
+ }
+
+ rc = NewInputDeviceRequest(input_options, attrs, &dev);
+
+ opts = input_options;
+ tmp = opts;
+ while(opts) {
+ tmp = opts->next;
+ free(opts->key);
+ free(opts->value);
+ free(opts);
+ opts = tmp;
+ }
+
+ return rc;
+}
+
+#else /* if ABI_XINPUT_VERSION < 12 */
+static InputInfoPtr
+VMMouseInitPassthru(InputDriverPtr drv, IDevPtr dev, int flags)
+{
+ InputDriverRec *passthruMouse;
+ passthruMouse = (InputDriverRec *)LoaderSymbol("MOUSE");
+ if(passthruMouse != NULL) {
+ return (passthruMouse->PreInit)(drv, dev, flags);
+ } else {
+ return NULL;
+ }
+}
+#endif
/*
*----------------------------------------------------------------------
@@ -229,12 +297,14 @@ static char reverseMap[32] = { 0, 4, 2, 6, 1, 5, 3, 7,
*----------------------------------------------------------------------
*/
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
+static int
+VMMouseNewPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags);
+
static InputInfoPtr
VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
{
InputInfoPtr pInfo;
- MouseDevPtr pMse;
- VMMousePrivPtr mPriv;
#ifndef NO_MOUSE_MODULE
{
@@ -249,15 +319,6 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
}
#endif
- mPriv = xcalloc (1, sizeof (VMMousePrivRec));
-
-
- if (!mPriv) {
- return NULL;
- }
-
- mPriv->absoluteRequested = FALSE;
-
/*
* try to enable vmmouse here
*/
@@ -266,22 +327,12 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
* vmmouse failed
* Fall back to normal mouse module
*/
- InputDriverRec *passthruMouse;
xf86Msg(X_ERROR, "VMWARE(0): vmmouse enable failed\n");
- mPriv->vmmouseAvailable = FALSE;
- passthruMouse = (InputDriverRec *)LoaderSymbol("MOUSE");
- xfree(mPriv);
- if(passthruMouse != NULL){
- return (passthruMouse->PreInit)(drv, dev, flags);
- } else {
- return NULL;
- }
-
+ return VMMouseInitPassthru(drv, dev, flags);
} else {
/*
* vmmouse is available
*/
- mPriv->vmmouseAvailable = TRUE;
xf86Msg(X_INFO, "VMWARE(0): vmmouse is available\n");
/*
* Disable the absolute pointing device for now
@@ -291,22 +342,14 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
}
if (!(pInfo = xf86AllocateInput(drv, 0))) {
- xfree(mPriv);
return NULL;
}
- /* Settup the pInfo */
pInfo->name = dev->identifier;
- pInfo->type_name = XI_MOUSE;
- pInfo->flags = XI86_POINTER_CAPABLE | XI86_SEND_DRAG_EVENTS;
- pInfo->device_control = VMMouseDeviceControl;
- pInfo->read_input = VMMouseReadInput;
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
pInfo->motion_history_proc = xf86GetMotionEvents;
#endif
- pInfo->control_proc = VMMouseControlProc;
pInfo->close_proc = VMMouseCloseProc;
- pInfo->switch_mode = VMMouseSwitchMode;
pInfo->conversion_proc = VMMouseConvertProc;
pInfo->reverse_conversion_proc = NULL;
pInfo->fd = -1;
@@ -314,11 +357,62 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
pInfo->private_flags = 0;
pInfo->always_core_feedback = 0;
pInfo->conf_idev = dev;
+ pInfo->flags = XI86_POINTER_CAPABLE | XI86_SEND_DRAG_EVENTS;
+
+ /* Collect the options, and process the common options. */
+ xf86CollectInputOptions(pInfo, NULL, NULL);
+ xf86ProcessCommonOptions(pInfo, pInfo->options);
+
+ if (VMMouseNewPreInit(drv, pInfo, flags) == Success)
+ pInfo->flags |= XI86_CONFIGURED;
+
+ return pInfo;
+}
+
+static int
+VMMouseNewPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
+#else /* if ABI_XINPUT_VERSION >= 12 */
+static int
+VMMousePreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
+#endif
+{
+ MouseDevPtr pMse = NULL;
+ VMMousePrivPtr mPriv = NULL;
+ int rc = Success;
+
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
+ /* For ABI < 12, we need to return the wrapped driver's pInfo (see
+ * above). ABI 12, we call NIDR and are done */
+ if (!VMMouseClient_Enable()) {
+ xf86Msg(X_ERROR, "VMWARE(0): vmmouse enable failed\n");
+ return VMMouseInitPassthru(drv, pInfo, flags);
+ } else {
+ xf86Msg(X_INFO, "VMWARE(0): vmmouse is available\n");
+ VMMouseClient_Disable();
+ }
+#endif
+
+ mPriv = calloc (1, sizeof (VMMousePrivRec));
+
+ if (!mPriv) {
+ rc = BadAlloc;
+ goto error;
+ }
+
+ mPriv->absoluteRequested = FALSE;
+ mPriv->vmmouseAvailable = TRUE;
+
+ /* Settup the pInfo */
+ pInfo->type_name = XI_MOUSE;
+ pInfo->device_control = VMMouseDeviceControl;
+ pInfo->read_input = VMMouseReadInput;
+ pInfo->control_proc = VMMouseControlProc;
+ pInfo->switch_mode = VMMouseSwitchMode;
/* Allocate the MouseDevRec and initialise it. */
- if (!(pMse = xcalloc(sizeof(MouseDevRec), 1))) {
- xfree(mPriv);
- return pInfo;
+ if (!(pMse = calloc(sizeof(MouseDevRec), 1))) {
+ rc = BadAlloc;
+ goto error;
}
pInfo->private = pMse;
@@ -328,10 +422,6 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
pMse->mousePriv = mPriv;
- /* Collect the options, and process the common options. */
- xf86CollectInputOptions(pInfo, NULL, NULL);
- xf86ProcessCommonOptions(pInfo, pInfo->options);
-
/* Check if the device can be opened. */
pInfo->fd = xf86OpenSerial(pInfo->options);
if (pInfo->fd == -1) {
@@ -339,11 +429,8 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
xf86Msg(X_WARNING, "%s: cannot open input device\n", pInfo->name);
else {
xf86Msg(X_ERROR, "%s: cannot open input device\n", pInfo->name);
- if (pMse->mousePriv)
- xfree(pMse->mousePriv);
- xfree(pMse);
- pInfo->private = NULL;
- return pInfo;
+ rc = BadValue;
+ goto error;
}
}
xf86CloseSerial(pInfo->fd);
@@ -355,8 +442,16 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
/* set up the current screen num */
mPriv->screenNum = xf86SetIntOption(pInfo->options, "ScreenNumber", 0);
- pInfo->flags |= XI86_CONFIGURED;
- return pInfo;
+ return Success;
+
+error:
+ pInfo->private = NULL;
+ if (mPriv)
+ free(mPriv);
+ if (pMse)
+ free(pMse);
+
+ return rc;
}
@@ -645,7 +740,7 @@ MouseCommonOptions(InputInfoPtr pInfo)
}
if (msg) {
xf86Msg(X_CONFIG, "%s: ZAxisMapping: %s\n", pInfo->name, msg);
- xfree(msg);
+ free(msg);
} else {
xf86Msg(X_WARNING, "%s: Invalid ZAxisMapping value: \"%s\"\n",
pInfo->name, s);
@@ -678,7 +773,7 @@ MouseCommonOptions(InputInfoPtr pInfo)
*/
static void
-VMMouseUnInit(InputDriverPtr drv, LocalDevicePtr local, int flags)
+VMMouseUnInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
{
xf86Msg(X_INFO, "VMWARE(0): VMMouseUnInit\n");
}
@@ -776,13 +871,21 @@ VMMouseDeviceControl(DeviceIntPtr device, int mode)
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
axes_labels[0],
#endif
- 0, 65535, 10000, 0, 10000);
+ 0, 65535, 10000, 0, 10000
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
+ , Absolute
+#endif
+ );
#else
xf86InitValuatorAxisStruct(device, 0,
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
axes_labels[0],
#endif
- 0, -1, 1, 0, 1);
+ 0, -1, 1, 0, 1
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
+ , Relative
+#endif
+ );
#endif
xf86InitValuatorDefaults(device, 0);
/* Y valuator */
@@ -791,13 +894,21 @@ VMMouseDeviceControl(DeviceIntPtr device, int mode)
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
axes_labels[1],
#endif
- 0, 65535, 10000, 0, 10000);
+ 0, 65535, 10000, 0, 10000
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
+ , Absolute
+#endif
+ );
#else
xf86InitValuatorAxisStruct(device, 1,
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
axes_labels[1],
#endif
- 0, -1, 1, 0, 1);
+ 0, -1, 1, 0, 1
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
+ , Relative
+#endif
+ );
#endif
xf86InitValuatorDefaults(device, 1);
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
@@ -1025,7 +1136,7 @@ GetVMMouseMotionEvent(InputInfoPtr pInfo){
*/
static int
-VMMouseControlProc(LocalDevicePtr local, xDeviceCtl * control)
+VMMouseControlProc(InputInfoPtr pInfo, xDeviceCtl * control)
{
xf86Msg(X_INFO, "VMWARE(0): VMMouseControlProc\n");
return (Success);
@@ -1047,11 +1158,13 @@ VMMouseControlProc(LocalDevicePtr local, xDeviceCtl * control)
*----------------------------------------------------------------------
*/
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
static void
-VMMouseCloseProc(LocalDevicePtr local)
+VMMouseCloseProc(InputInfoPtr pInfo)
{
xf86Msg(X_INFO, "VMWARE(0): VMMouseCloseProc\n");
}
+#endif
/*
@@ -1092,6 +1205,7 @@ VMMouseSwitchMode(ClientPtr client, DeviceIntPtr dev, int mode)
*----------------------------------------------------------------------
*/
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
static Bool
VMMouseConvertProc(InputInfoPtr pInfo, int first, int num, int v0, int v1, int v2,
int v3, int v4, int v5, int *x, int *y)
@@ -1122,6 +1236,7 @@ VMMouseConvertProc(InputInfoPtr pInfo, int first, int num, int v0, int v1, int v
}
return TRUE;
}
+#endif
#ifdef XFree86LOADER
@@ -1201,7 +1316,7 @@ VMMousePlug(pointer module,
if (!LoadSubModule(module, name, NULL, NULL, NULL, NULL, errmaj, errmin)) {
LoaderErrorMsg(NULL, name, *errmaj, *errmin);
}
- xfree(name);
+ free(name);
}
#endif
diff --git a/driver/xf86-input-vmmouse/tools/Makefile.am b/driver/xf86-input-vmmouse/tools/Makefile.am
index 77a97311f..23493cd99 100644
--- a/driver/xf86-input-vmmouse/tools/Makefile.am
+++ b/driver/xf86-input-vmmouse/tools/Makefile.am
@@ -33,8 +33,6 @@ hal-probe-vmmouse: hal-probe-vmmouse.in
-e 's|__HAL_BIN_PREFIX__|$(HAL_BIN_DIR)|g' \
< $< > $@
-EXTRA_DIST = hal-probe-vmmouse.in
-
CLEANFILES = hal-probe-vmmouse
if HAS_XORG_CONF_DIR
@@ -50,7 +48,7 @@ udevdir=$(UDEV_RULES_DIR)
udev_DATA = 69-xorg-vmmouse.rules
$(udev_DATA): $(udev_DATA).in
- sed -e 's|__BIN_PREFIX__|$(bindir)|g' < $< > $@
+ $(AM_V_GEN)$(SED) -e 's|__BIN_PREFIX__|$(bindir)|g' < $< > $@
CLEANFILES += $(udev_DATA)
diff --git a/driver/xf86-input-vmmouse/tools/Makefile.in b/driver/xf86-input-vmmouse/tools/Makefile.in
index a2b6a9ed0..d042dd585 100644
--- a/driver/xf86-input-vmmouse/tools/Makefile.in
+++ b/driver/xf86-input-vmmouse/tools/Makefile.in
@@ -250,12 +250,12 @@ AM_CPPFLAGS = -I$(top_srcdir)/shared $(XORG_CFLAGS)
@DRIVER_NAME@_detect_LDADD = $(top_builddir)/shared/lib@DRIVER_NAME@.la
calloutsdir = $(HAL_CALLOUTS_DIR)
callouts_SCRIPTS = hal-probe-vmmouse
-EXTRA_DIST = $(udev_DATA).in hal-probe-vmmouse.in
CLEANFILES = hal-probe-vmmouse $(am__append_1)
@HAS_XORG_CONF_DIR_TRUE@confdir = $(XORG_CONF_DIR)
@HAS_XORG_CONF_DIR_TRUE@dist_conf_DATA = 50-vmmouse.conf
@HAS_UDEV_RULES_DIR_TRUE@udevdir = $(UDEV_RULES_DIR)
@HAS_UDEV_RULES_DIR_TRUE@udev_DATA = 69-xorg-vmmouse.rules
+EXTRA_DIST = $(udev_DATA).in hal-probe-vmmouse.in
all: all-am
.SUFFIXES:
@@ -593,7 +593,7 @@ hal-probe-vmmouse: hal-probe-vmmouse.in
< $< > $@
@HAS_UDEV_RULES_DIR_TRUE@$(udev_DATA): $(udev_DATA).in
-@HAS_UDEV_RULES_DIR_TRUE@ sed -e 's|__BIN_PREFIX__|$(bindir)|g' < $< > $@
+@HAS_UDEV_RULES_DIR_TRUE@ $(AM_V_GEN)$(SED) -e 's|__BIN_PREFIX__|$(bindir)|g' < $< > $@
# 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.
.NOEXPORT: