ChangeLog | 77 +++++++++++- configure.ac | 11 + debian/README.source | 73 +++++++++++ debian/changelog | 29 ++++ debian/control | 4 debian/xsfbs/repack.sh | 32 +++++ debian/xsfbs/xsfbs.mk | 21 --- debian/xsfbs/xsfbs.sh | 311 ------------------------------------------------- man/vmmouse.man | 2 shared/vmmouse_defs.h | 6 shared/vmmouse_proto.h | 9 + src/vmmouse.c | 203 +++++++++++++++---------------- tools/vmmouse_detect.c | 6 13 files changed, 344 insertions(+), 440 deletions(-)
New commits: commit 4dbde7d314e2397f3136e1b9e6f6abded2c6a4e4 Author: Cyril Brulebois <k...@debian.org> Date: Sat Dec 5 23:20:24 2009 +0100 Upload to experimental. diff --git a/debian/changelog b/debian/changelog index 7e4a4fe..99e5b0a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,12 @@ -xserver-xorg-input-vmmouse (1:12.6.5-2) UNRELEASED; urgency=low +xserver-xorg-input-vmmouse (1:12.6.5-2) experimental; urgency=low + [ Timo Aaltonen ] * Build against Xserver 1.7. - -- Timo Aaltonen <tjaal...@ubuntu.com> Sat, 05 Dec 2009 02:06:47 +0200 + [ Cyril Brulebois ] + * Upload to experimental. + + -- Cyril Brulebois <k...@debian.org> Sat, 05 Dec 2009 23:20:15 +0100 xserver-xorg-input-vmmouse (1:12.6.5-1) unstable; urgency=low commit 2c87b7dcf51d75d9c201995d27cb36683bcf8f1a Author: Timo Aaltonen <tjaal...@cc.hut.fi> Date: Sat Dec 5 02:07:34 2009 +0200 Build against Xserver 1.7. diff --git a/debian/changelog b/debian/changelog index 5bd8a88..7e4a4fe 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +xserver-xorg-input-vmmouse (1:12.6.5-2) UNRELEASED; urgency=low + + * Build against Xserver 1.7. + + -- Timo Aaltonen <tjaal...@ubuntu.com> Sat, 05 Dec 2009 02:06:47 +0200 + xserver-xorg-input-vmmouse (1:12.6.5-1) unstable; urgency=low * New upstream release. diff --git a/debian/control b/debian/control index 6347092..e7a4204 100644 --- a/debian/control +++ b/debian/control @@ -6,7 +6,7 @@ Uploaders: David Nusinow <dnusi...@debian.org>, Drew Parsons <dpars...@debian.or Build-Depends: debhelper (>= 5), pkg-config, - xserver-xorg-dev (>= 2:1.5.99.901), + xserver-xorg-dev (>= 2:1.7), x11proto-input-dev, x11proto-core-dev, x11proto-randr-dev, commit 2a1b4553fc2c5ba982e8bb8be4c504e28ce79ed1 Author: Julien Cristau <jcris...@debian.org> Date: Fri Sep 25 16:39:23 2009 +0200 xsfbs.mk: remove more obsolete code We can use plain debconf-updatepo, and don't need to clean the 'imports' directory or shlibs.local. diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk index 82eb45f..5e16b10 100755 --- a/debian/xsfbs/xsfbs.mk +++ b/debian/xsfbs/xsfbs.mk @@ -177,19 +177,7 @@ xsfclean: cleanscripts unpatch dh_testdir rm -rf .pc rm -rf $(STAMP_DIR) - rm -rf imports - dh_clean debian/shlibs.local \ - debian/po/pothead - -# Generate the debconf templates POT file header. -debian/po/pothead: debian/po/pothead.in - sed -e 's/SOURCE_VERSION/$(SOURCE_VERSION)/' \ - -e 's/DATE/$(shell date "+%F %X%z"/)' <$< >$@ - -# Update POT and PO files. -.PHONY: updatepo -updatepo: debian/po/pothead - debian/scripts/debconf-updatepo --pot-header=pothead --verbose + dh_clean # Remove files from the upstream source tree that we don't need, or which have # licensing problems. It must be run before creating the .orig.tar.gz. commit 9a4314c976e0d22e8d47f5d86163791e407a6ecc Author: Julien Cristau <jcris...@debian.org> Date: Fri Sep 25 15:43:28 2009 +0200 xsfbs.mk: kill obsolete DEFAULT_DCRESOLUTIONS and SOURCE_DIR usage These variables aren't set anywhere. diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk index 1f86848..82eb45f 100755 --- a/debian/xsfbs/xsfbs.mk +++ b/debian/xsfbs/xsfbs.mk @@ -176,7 +176,7 @@ cleanscripts: xsfclean: cleanscripts unpatch dh_testdir rm -rf .pc - rm -rf $(STAMP_DIR) $(SOURCE_DIR) + rm -rf $(STAMP_DIR) rm -rf imports dh_clean debian/shlibs.local \ debian/po/pothead @@ -252,7 +252,6 @@ $(STAMP_DIR)/genscripts: $(STAMP_DIR)/stampdir | sed -e '/^#INCLUDE_SHELL_LIB#$$/d' >>$$MAINTSCRIPT.tmp; \ sed -e 's/@SOURCE_VERSION@/$(SOURCE_VERSION)/' \ -e 's/@OFFICIAL_BUILD@/$(OFFICIAL_BUILD)/' \ - -e 's/@DEFAULT_DCRESOLUTIONS@/$(DEFAULT_DCRESOLUTIONS)/' \ <$$MAINTSCRIPT.tmp >$$MAINTSCRIPT; \ rm $$MAINTSCRIPT.tmp; \ fi; \ commit bda208ec00d0b7b3632f57fb27e014684cdf73ba Author: Julien Cristau <jcris...@debian.org> Date: Fri Sep 25 15:33:39 2009 +0200 xsfbs.sh: fix typo and remove svn keyword diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index 45acd59..813fd8d 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -1,5 +1,3 @@ -# $Id$ - # This is the X Strike Force shell library for X Window System package # maintainer scripts. It serves to define shell functions commonly used by # such packages, and performs some error checking necessary for proper operation @@ -8,7 +6,7 @@ # removal tasks. # If you are reading this within a Debian package maintainer script (e.g., -# /var/lib/dpkg)info/PACKAGE.{config,preinst,postinst,prerm,postrm}), you can +# /var/lib/dpkg/info/PACKAGE.{config,preinst,postinst,prerm,postrm}), you can # skip past this library by scanning forward in this file to the string # "GOBSTOPPER". commit 4d9c5ba6a6e114eb32ead11365c0392215bfee52 Author: Brice Goglin <bgog...@debian.org> Date: Fri Sep 4 14:29:49 2009 +0200 Prepare changelog for upload diff --git a/debian/changelog b/debian/changelog index 1c33009..5bd8a88 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,9 @@ -xserver-xorg-input-vmmouse (1:12.6.5-1) UNRELEASED; urgency=low +xserver-xorg-input-vmmouse (1:12.6.5-1) unstable; urgency=low * New upstream release. * Bump Standards-Version to 3.8.3 now that we have README.source. - -- Brice Goglin <bgog...@debian.org> Fri, 04 Sep 2009 14:28:48 +0200 + -- Brice Goglin <bgog...@debian.org> Fri, 04 Sep 2009 14:29:46 +0200 xserver-xorg-input-vmmouse (1:12.6.4-1) unstable; urgency=low commit 0234fb7e7583495f96a7edc442e7c7126be94094 Author: Brice Goglin <bgog...@debian.org> Date: Fri Sep 4 14:29:40 2009 +0200 Bump Standards-Version to 3.8.3 now that we have README.source diff --git a/debian/changelog b/debian/changelog index f11d633..1c33009 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,9 @@ xserver-xorg-input-vmmouse (1:12.6.5-1) UNRELEASED; urgency=low * New upstream release. + * Bump Standards-Version to 3.8.3 now that we have README.source. - -- Brice Goglin <bgog...@debian.org> Fri, 04 Sep 2009 13:49:41 +0200 + -- Brice Goglin <bgog...@debian.org> Fri, 04 Sep 2009 14:28:48 +0200 xserver-xorg-input-vmmouse (1:12.6.4-1) unstable; urgency=low diff --git a/debian/control b/debian/control index f07fae2..6347092 100644 --- a/debian/control +++ b/debian/control @@ -15,7 +15,7 @@ Build-Depends: automake, libtool, xutils-dev -Standards-Version: 3.7.3 +Standards-Version: 3.8.3 Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-input-vmmouse Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-input-vmmouse.git commit 73ffc96f5c32ef00468d6934e9e9826dad815ada Author: Brice Goglin <bgog...@debian.org> Date: Fri Sep 4 13:51:26 2009 +0200 New upstream release diff --git a/ChangeLog b/ChangeLog index f8904ec..4071f20 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,43 @@ +commit 989004f300c9fd897837fdee4fd9c1307c6ed6ca +Author: Adam Jackson <a...@redhat.com> +Date: Thu Jul 16 09:57:27 2009 +1000 + + Compile with INPUT ABI 7. + + Button labels up to 7 are essentially default so we can assume they are the + usual ones. Beyond that, they are anyone's guess. + Axis labels are X/Y. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 2fd8646ff528f4f7c4450dff111b4e9335ae2186 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Jul 29 11:21:19 2009 -0700 + + Needed by newer X servers, otherwise the module data is invisible and a dlopen error occurs. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 436582791de540ef85b0b66000f2446d6f8f9802 +Author: Shelley Gong <shelleyg...@vmware.com> +Date: Wed Jul 29 11:12:24 2009 -0700 + + Turn off built-in fallback-to-mouse-driver mechanism. With input + hotplug, HAL handles deciding which driver to use and the presence + of mouse_drv can't be assumed anymore on modern distros. + +commit 370aab66b97a6fdc18f87d584a252f33f575899e +Author: Matthias Hopf <mh...@suse.de> +Date: Fri Jun 5 20:06:40 2009 +0200 + + Remove ModuleInfoRec and associated bits. + + ModuleInfoRec was removed with 2107becb0ce2ffda001be65728c53563496d8d50 from + the server. The MouseOpts were only used from the ModuleInfoRec, they're gone + now too. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + commit d61609868697825717d2f6a63b2a6177cb13873b Author: Shelley Gong <shelleyg...@vmware.com> Date: Mon May 11 10:08:56 2009 -0700 diff --git a/debian/changelog b/debian/changelog index 80f6650..f11d633 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +xserver-xorg-input-vmmouse (1:12.6.5-1) UNRELEASED; urgency=low + + * New upstream release. + + -- Brice Goglin <bgog...@debian.org> Fri, 04 Sep 2009 13:49:41 +0200 + xserver-xorg-input-vmmouse (1:12.6.4-1) unstable; urgency=low * New upstream release. commit 5693792171d885769e58dcccc053c08b11acd12a Author: Julien Cristau <jcris...@debian.org> Date: Wed Aug 26 18:53:36 2009 +0200 xsfbs.mk: no need for shlibs.local diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk index f0f8953..1f86848 100755 --- a/debian/xsfbs/xsfbs.mk +++ b/debian/xsfbs/xsfbs.mk @@ -265,10 +265,6 @@ $(STAMP_DIR)/genscripts: $(STAMP_DIR)/stampdir # debian/*.prerm >$@ -# Generate the shlibs.local file. -debian/shlibs.local: - cat debian/*.shlibs >$@ - SERVERMINVERS = $(shell cat /usr/share/xserver-xorg/serverminver 2>/dev/null) VIDEOABI = $(shell cat /usr/share/xserver-xorg/videoabiver 2>/dev/null) INPUTABI = $(shell cat /usr/share/xserver-xorg/inputabiver 2>/dev/null) commit 1f858adff1ce2687cf542dd9b69b81137412f8a4 Author: Julien Cristau <jcris...@debian.org> Date: Wed Aug 26 18:47:09 2009 +0200 xsfbs.sh: remove unused reject_whitespace function diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index b3f4bbe..45acd59 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -93,22 +93,6 @@ reject_nondigits () { done } -reject_whitespace () { - # syntax: reject_whitespace [ operand ] - # - # scan operand (typically a shell variable whose value cannot be trusted) for - # whitespace characters and barf if any are found - if [ -n "$1" ]; then - # does the operand contain any whitespace? - if expr "$1" : "[[:space:]]" > /dev/null 2>&1; then - # can't use die(), because I want to avoid forward references - echo "$THIS_PACKAGE $THIS_SCRIPT error: reject_whitespace() encountered" \ - "possibly malicious garbage \"$1\"" >&2 - exit $SHELL_LIB_THROWN_ERROR - fi - fi -} - reject_unlikely_path_chars () { # syntax: reject_unlikely_path_chars [ operand ... ] # commit 0dd71e12416aa7dc60ed68af8127e04609b125f4 Author: Julien Cristau <jcris...@debian.org> Date: Wed Aug 26 18:23:53 2009 +0200 xsfbs.sh: remove unused find_culprits function diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index 7dbb196..b3f4bbe 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -199,53 +199,6 @@ usage_error () { exit $SHELL_LIB_USAGE_ERROR } -find_culprits () { - local f p dpkg_info_dir possible_culprits smoking_guns bad_packages package \ - msg - - reject_whitespace "$1" - message "Searching for overlapping packages..." - dpkg_info_dir=/var/lib/dpkg/info - if [ -d $dpkg_info_dir ]; then - if [ "$(echo $dpkg_info_dir/*.list)" != "$dpkg_info_dir/*.list" ]; then - possible_culprits=$(ls -1 $dpkg_info_dir/*.list | egrep -v \ - "(xbase-clients|x11-common|xfs|xlibs)") - if [ -n "$possible_culprits" ]; then - smoking_guns=$(grep -l "$1" $possible_culprits || true) - if [ -n "$smoking_guns" ]; then - bad_packages=$(printf "\\n") - for f in $smoking_guns; do - # too bad you can't nest parameter expansion voodoo - p=${f%*.list} # strip off the trailing ".list" - package=${p##*/} # strip off the directories - bad_packages=$(printf "%s\n%s" "$bad_packages" "$package") - done - msg=$(cat <<EOF -The following packages appear to have file overlaps with the X.Org packages; -these packages are either very old, or in violation of Debian Policy. Try -upgrading each of these packages to the latest available version if possible: -for example, with the command "apt-get install". If no newer version of a -package is available, you will have to remove it; for example, with the command -"apt-get remove". If even the latest available version of the package has -this file overlap, please file a bug against that package with the Debian Bug -Tracking System. You may want to refer the package maintainer to section 12.8 -of the Debian Policy manual. -EOF -) - message "$msg" - message "The overlapping packages are: $bad_packages" - else - message "no overlaps found." - fi - fi - else - message "cannot search; no matches for $dpkg_info_dir/*.list." - fi - else - message "cannot search; $dpkg_info_dir does not exist." - fi -} - font_update () { # run $UPDATECMDS in $FONTDIRS commit b6c6eceec66066ebac16c85cc75bfa8a4f6cf58a Author: Julien Cristau <jcris...@debian.org> Date: Wed Aug 26 18:23:06 2009 +0200 xsfbs.sh: remove unused maplink function diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index f869274..7dbb196 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -199,37 +199,6 @@ usage_error () { exit $SHELL_LIB_USAGE_ERROR } - -maplink () { - # returns what symlink should point to; i.e., what the "sane" answer is - # Keep this in sync with the debian/*.links files. - # This is only needed for symlinks to directories. - # - # XXX: Most of these look wrong in the X11R7 world and need to be fixed. - # If we've stopped using this function, fixing it might enable us to re-enable - # it again and catch more errors. - case "$1" in - /etc/X11/xkb/compiled) echo /var/lib/xkb ;; - /etc/X11/xkb/xkbcomp) echo /usr/X11R6/bin/xkbcomp ;; - /usr/X11R6/lib/X11/app-defaults) echo /etc/X11/app-defaults ;; - /usr/X11R6/lib/X11/fs) echo /etc/X11/fs ;; - /usr/X11R6/lib/X11/lbxproxy) echo /etc/X11/lbxproxy ;; - /usr/X11R6/lib/X11/proxymngr) echo /etc/X11/proxymngr ;; - /usr/X11R6/lib/X11/rstart) echo /etc/X11/rstart ;; - /usr/X11R6/lib/X11/twm) echo /etc/X11/twm ;; - /usr/X11R6/lib/X11/xdm) echo /etc/X11/xdm ;; - /usr/X11R6/lib/X11/xinit) echo /etc/X11/xinit ;; - /usr/X11R6/lib/X11/xkb) echo /etc/X11/xkb ;; - /usr/X11R6/lib/X11/xserver) echo /etc/X11/xserver ;; - /usr/X11R6/lib/X11/xsm) echo /etc/X11/xsm ;; - /usr/bin/X11) echo ../X11R6/bin ;; - /usr/bin/rstartd) echo ../X11R6/bin/rstartd ;; - /usr/include/X11) echo ../X11R6/include/X11 ;; - /usr/lib/X11) echo ../X11R6/lib/X11 ;; - *) internal_error "maplink() called with unknown path \"$1\"" ;; - esac -} - find_culprits () { local f p dpkg_info_dir possible_culprits smoking_guns bad_packages package \ msg commit 8eb3d6a5ce9964876e48ea56048f1a5135ef4f28 Author: Julien Cristau <jcris...@debian.org> Date: Wed Aug 26 18:21:34 2009 +0200 xsfbs.sh: remove unused analyze_path diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index 4461b1a..f869274 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -230,32 +230,6 @@ maplink () { esac } -analyze_path () { - # given a supplied set of pathnames, break each one up by directory and do an - # ls -dl on each component, cumulatively; i.e. - # analyze_path /usr/X11R6/bin -> ls -dl /usr /usr/X11R6 /usr/X11R6/bin - # Thanks to Randolph Chung for this clever hack. - - local f g - - while [ -n "$1" ]; do - reject_whitespace "$1" - g= - message "Analyzing $1:" - for f in $(echo "$1" | tr / \ ); do - if [ -e /$g$f ]; then - ls -dl /$g$f /$g$f.dpkg-* 2> /dev/null || true - g=$g$f/ - else - message "/$g$f: nonexistent; directory contents of /$g:" - ls -l /$g - break - fi - done - shift - done -} - find_culprits () { local f p dpkg_info_dir possible_culprits smoking_guns bad_packages package \ msg commit 1d0081bdf60944d8ef0935a531dfbcc5f01739c5 Author: Julien Cristau <jcris...@debian.org> Date: Wed Aug 26 18:20:11 2009 +0200 xsfbs.sh: remove unused check_symlinks_and_{bomb,warn} diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index 781826f..4461b1a 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -303,115 +303,6 @@ EOF fi } -check_symlink () { - # syntax: check_symlink symlink - # - # See if specified symlink points where it is supposed to. Return 0 if it - # does, and 1 if it does not. - # - # Primarily used by check_symlinks_and_warn() and check_symlinks_and_bomb(). - - local symlink - - # validate arguments - if [ $# -ne 1 ]; then - usage_error "check_symlink() called with wrong number of arguments;" \ - "expected 1, got $#" - exit $SHELL_LIB_USAGE_ERROR - fi - - symlink="$1" - - if [ "$(maplink "$symlink")" = "$(readlink "$symlink")" ]; then - return 0 - else - return 1 - fi -} - -check_symlinks_and_warn () { - # syntax: check_symlinks_and_warn symlink ... - # - # For each argument, check for symlink sanity, and warn if it isn't sane. - # - # Call this function from a preinst script in the event $1 is "upgrade" or - # "install". - - local errmsg symlink - - # validate arguments - if [ $# -lt 1 ]; then - usage_error "check_symlinks_and_warn() called with wrong number of" \ - "arguments; expected at least 1, got $#" - exit $SHELL_LIB_USAGE_ERROR - fi - - while [ -n "$1" ]; do - symlink="$1" - if [ -L "$symlink" ]; then - if ! check_symlink "$symlink"; then - observe "$symlink symbolic link points to wrong location" \ - "$(readlink "$symlink"); removing" - rm "$symlink" - fi - elif [ -e "$symlink" ]; then - errmsg="$symlink exists and is not a symbolic link; this package cannot" - errmsg="$errmsg be installed until this" - if [ -f "$symlink" ]; then - errmsg="$errmsg file" - elif [ -d "$symlink" ]; then - errmsg="$errmsg directory" - else - errmsg="$errmsg thing" - fi - errmsg="$errmsg is removed" - die "$errmsg" - fi - shift - done -} - -check_symlinks_and_bomb () { - # syntax: check_symlinks_and_bomb symlink ... - # - # For each argument, check for symlink sanity, and bomb if it isn't sane. - # - # Call this function from a postinst script. - - local problem symlink - - # validate arguments - if [ $# -lt 1 ]; then - usage_error "check_symlinks_and_bomb() called with wrong number of" - "arguments; expected at least 1, got $#" - exit $SHELL_LIB_USAGE_ERROR - fi - - while [ -n "$1" ]; do - problem= - symlink="$1" - if [ -L "$symlink" ]; then - if ! check_symlink "$symlink"; then - problem=yes - warn "$symlink symbolic link points to wrong location" \ - "$(readlink "$symlink")" - fi - elif [ -e "$symlink" ]; then - problem=yes - warn "$symlink is not a symbolic link" - else - problem=yes - warn "$symlink symbolic link does not exist" - fi - if [ -n "$problem" ]; then - analyze_path "$symlink" "$(readlink "$symlink")" - find_culprits "$symlink" - die "bad symbolic links on system" - fi - shift - done -} - font_update () { # run $UPDATECMDS in $FONTDIRS commit 989004f300c9fd897837fdee4fd9c1307c6ed6ca Author: Adam Jackson <a...@redhat.com> Date: Thu Jul 16 09:57:27 2009 +1000 Compile with INPUT ABI 7. Button labels up to 7 are essentially default so we can assume they are the usual ones. Beyond that, they are anyone's guess. Axis labels are X/Y. Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> diff --git a/src/vmmouse.c b/src/vmmouse.c index caba093..d4f0ca6 100644 --- a/src/vmmouse.c +++ b/src/vmmouse.c @@ -68,6 +68,10 @@ #include "xf86OSmouse.h" #include "compiler.h" +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 +#include <xserver-properties.h> +#endif + #include "xisb.h" #include "mipointer.h" @@ -708,6 +712,10 @@ VMMouseDeviceControl(DeviceIntPtr device, int mode) VMMousePrivPtr mPriv; unsigned char map[MSE_MAXBUTTONS + 1]; int i; +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 + Atom btn_labels[MSE_MAXBUTTONS] = {0}; + Atom axes_labels[2] = { 0, 0 }; +#endif pInfo = device->public.devicePrivate; pMse = pInfo->private; @@ -723,9 +731,30 @@ VMMouseDeviceControl(DeviceIntPtr device, int mode) */ for (i = 0; i < MSE_MAXBUTTONS; i++) map[i + 1] = i + 1; +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 + btn_labels[0] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_LEFT); + btn_labels[1] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_MIDDLE); + btn_labels[2] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_RIGHT); + btn_labels[4] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_WHEEL_UP); + btn_labels[5] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_WHEEL_DOWN); + btn_labels[6] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_HWHEEL_LEFT); + btn_labels[7] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_HWHEEL_RIGHT); + /* other buttons are unknown */ + +#ifdef ABS_VALUATOR_AXES + axes_labels[0] = XIGetKnownProperty(AXIS_LABEL_PROP_ABS_X); + axes_labels[1] = XIGetKnownProperty(AXIS_LABEL_PROP_ABS_Y); +#else + axes_labels[0] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_X); + axes_labels[1] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_Y); +#endif /* ABS_VALUATOR_AXES */ +#endif InitPointerDeviceStruct((DevicePtr)device, map, min(pMse->buttons, MSE_MAXBUTTONS), +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 + btn_labels, +#endif #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 miPointerGetMotionEvents, #elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 3 @@ -737,20 +766,39 @@ VMMouseDeviceControl(DeviceIntPtr device, int mode) #else GetMotionHistorySize(), 2 #endif +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 + , axes_labels +#endif ); /* X valuator */ #ifdef ABS_VALUATOR_AXES - xf86InitValuatorAxisStruct(device, 0, 0, 65535, 10000, 0, 10000); + xf86InitValuatorAxisStruct(device, 0, +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 + axes_labels[0], +#endif + 0, 65535, 10000, 0, 10000); #else - xf86InitValuatorAxisStruct(device, 0, 0, -1, 1, 0, 1); + xf86InitValuatorAxisStruct(device, 0, +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 + axes_labels[0], +#endif + 0, -1, 1, 0, 1); #endif xf86InitValuatorDefaults(device, 0); /* Y valuator */ #ifdef ABS_VALUATOR_AXES - xf86InitValuatorAxisStruct(device, 1, 0, 65535, 10000, 0, 10000); + xf86InitValuatorAxisStruct(device, 1, +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 + axes_labels[1], +#endif + 0, 65535, 10000, 0, 10000); #else - xf86InitValuatorAxisStruct(device, 1, 0, -1, 1, 0, 1); + xf86InitValuatorAxisStruct(device, 1, +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 + axes_labels[1], +#endif + 0, -1, 1, 0, 1); #endif xf86InitValuatorDefaults(device, 1); #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0 commit 2fd8646ff528f4f7c4450dff111b4e9335ae2186 Author: Peter Hutterer <peter.hutte...@who-t.net> Date: Wed Jul 29 11:21:19 2009 -0700 Needed by newer X servers, otherwise the module data is invisible and a dlopen error occurs. Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> diff --git a/src/vmmouse.c b/src/vmmouse.c index 6a4f9f9..caba093 100644 --- a/src/vmmouse.c +++ b/src/vmmouse.c @@ -1175,7 +1175,7 @@ static XF86ModuleVersionInfo VMMouseVersionRec = { /* * The variable contains the necessary information to load and initialize the module */ -XF86ModuleData vmmouseModuleData = { +_X_EXPORT XF86ModuleData vmmouseModuleData = { &VMMouseVersionRec, VMMousePlug, VMMouseUnplug commit 436582791de540ef85b0b66000f2446d6f8f9802 Author: Shelley Gong <shelleyg...@vmware.com> Date: Wed Jul 29 11:12:24 2009 -0700 Turn off built-in fallback-to-mouse-driver mechanism. With input hotplug, HAL handles deciding which driver to use and the presence of mouse_drv can't be assumed anymore on modern distros. diff --git a/configure.ac b/configure.ac index ab39f6c..a7ecda9 100644 --- a/configure.ac +++ b/configure.ac @@ -22,7 +22,7 @@ AC_PREREQ(2.57) AC_INIT([xf86-input-vmmouse], - 12.6.4, + 12.6.5, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xf86-input-vmmouse) @@ -115,6 +115,9 @@ PKG_CHECK_EXISTS([xorg-server >= 1.3.99.0 xorg-server <= 1.4.0.90], PKG_CHECK_EXISTS([xorg-server > 1.4.0.90], [AC_DEFINE([ABS_VALUATOR_AXES], 1, [Define absolute valuator axes])]) +PKG_CHECK_EXISTS([xorg-server >= 1.6.0], + [AC_DEFINE([NO_MOUSE_MODULE], 1, + [Do not include built-in mouse module fallback])]) CFLAGS="$CFLAGS $XORG_CFLAGS "' -I$(top_srcdir)/src' AC_SUBST([CFLAGS]) diff --git a/src/vmmouse.c b/src/vmmouse.c index 2fc0c4c..6a4f9f9 100644 --- a/src/vmmouse.c +++ b/src/vmmouse.c @@ -95,7 +95,7 @@ */ #define VMMOUSE_MAJOR_VERSION 12 #define VMMOUSE_MINOR_VERSION 6 -#define VMMOUSE_PATCHLEVEL 4 +#define VMMOUSE_PATCHLEVEL 5 #define VMMOUSE_DRIVER_VERSION \ (VMMOUSE_MAJOR_VERSION * 65536 + VMMOUSE_MINOR_VERSION * 256 + VMMOUSE_PATCHLEVEL) #define VMMOUSE_DRIVER_VERSION_STRING \ @@ -232,6 +232,9 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags) InputInfoPtr pInfo; MouseDevPtr pMse; VMMousePrivPtr mPriv; + +#ifndef NO_MOUSE_MODULE +{ OSMouseInfoPtr osInfo = NULL; /* @@ -240,6 +243,8 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags) osInfo = xf86OSMouseInit(0); if (!osInfo) return FALSE; +} +#endif mPriv = xcalloc (1, sizeof (VMMousePrivRec)); @@ -1121,7 +1126,6 @@ VMMousePlug(pointer module, int *errmin) { static Bool Initialised = FALSE; - char *name; xf86LoaderReqSymLists(reqSymbols, NULL); @@ -1131,6 +1135,9 @@ VMMousePlug(pointer module, xf86Msg(X_INFO, "VMWARE(0): VMMOUSE module was loaded\n"); xf86AddInputDriver(&VMMOUSE, module, 0); +#ifndef NO_MOUSE_MODULE +{ + char *name; /* * Load the normal mouse module as submodule * If we fail in PreInit later, this allows us to fall back to normal mouse module @@ -1146,6 +1153,8 @@ VMMousePlug(pointer module, LoaderErrorMsg(NULL, name, *errmaj, *errmin); } xfree(name); +} +#endif return module; } commit 370aab66b97a6fdc18f87d584a252f33f575899e Author: Matthias Hopf <mh...@suse.de> Date: Fri Jun 5 20:06:40 2009 +0200 Remove ModuleInfoRec and associated bits. ModuleInfoRec was removed with 2107becb0ce2ffda001be65728c53563496d8d50 from the server. The MouseOpts were only used from the ModuleInfoRec, they're gone now too. Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> diff --git a/src/vmmouse.c b/src/vmmouse.c index deec8c8..2fc0c4c 100644 --- a/src/vmmouse.c +++ b/src/vmmouse.c @@ -116,9 +116,6 @@ const char vm_mouse_version[] __attribute__((section(".modinfo"),unused)) = /***************************************************************************** * static function header ****************************************************************************/ -#ifdef XFree86LOADER -static const OptionInfoRec *VMMouseAvailableOptions(void *unused); -#endif static InputInfoPtr VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags); static void VMMouseUnInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags); static void MouseCommonOptions(InputInfoPtr pInfo); @@ -202,68 +199,6 @@ InputDriverRec VMMOUSE = { 0 }; -typedef enum { - OPTION_ALWAYS_CORE, - OPTION_SEND_CORE_EVENTS, - OPTION_CORE_POINTER, - OPTION_SEND_DRAG_EVENTS, - OPTION_HISTORY_SIZE, - OPTION_DEVICE, - OPTION_PROTOCOL, - OPTION_BUTTONS, - OPTION_EMULATE_3_BUTTONS, - OPTION_EMULATE_3_TIMEOUT, - OPTION_CHORD_MIDDLE, - OPTION_FLIP_XY, - OPTION_INV_X, - OPTION_INV_Y, - OPTION_ANGLE_OFFSET, - OPTION_Z_AXIS_MAPPING, - OPTION_SAMPLE_RATE, - OPTION_RESOLUTION, - OPTION_EMULATE_WHEEL, - OPTION_EMU_WHEEL_BUTTON, - OPTION_EMU_WHEEL_INERTIA, - OPTION_X_AXIS_MAPPING, - OPTION_Y_AXIS_MAPPING, - OPTION_AUTO_SOFT, - OPTION_DRAGLOCKBUTTONS -} MouseOpts; - -/* - * Define the acceptable mouse options - * Currently not all of those options are supported - * - */ -static const OptionInfoRec mouseOptions[] = { - { OPTION_ALWAYS_CORE, "AlwaysCore", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_SEND_CORE_EVENTS, "SendCoreEvents", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_CORE_POINTER, "CorePointer", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_SEND_DRAG_EVENTS, "SendDragEvents", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_HISTORY_SIZE, "HistorySize", OPTV_INTEGER, {0}, FALSE }, - { OPTION_DEVICE, "Device", OPTV_STRING, {0}, FALSE }, - { OPTION_PROTOCOL, "Protocol", OPTV_STRING, {0}, FALSE }, - { OPTION_BUTTONS, "Buttons", OPTV_INTEGER, {0}, FALSE }, - { OPTION_EMULATE_3_BUTTONS, "Emulate3Buttons",OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_EMULATE_3_TIMEOUT, "Emulate3Timeout",OPTV_INTEGER, {0}, FALSE }, - { OPTION_CHORD_MIDDLE, "ChordMiddle", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_FLIP_XY, "FlipXY", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_INV_X, "InvX", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_INV_Y, "InvY", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_ANGLE_OFFSET, "AngleOffset", OPTV_INTEGER, {0}, FALSE }, - { OPTION_Z_AXIS_MAPPING, "ZAxisMapping", OPTV_STRING, {0}, FALSE }, - { OPTION_SAMPLE_RATE, "SampleRate", OPTV_INTEGER, {0}, FALSE }, - { OPTION_RESOLUTION, "Resolution", OPTV_INTEGER, {0}, FALSE }, - { OPTION_EMULATE_WHEEL, "EmulateWheel", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_EMU_WHEEL_BUTTON, "EmulateWheelButton", OPTV_INTEGER, {0}, FALSE }, - { OPTION_EMU_WHEEL_INERTIA, "EmulateWheelInertia", OPTV_INTEGER, {0}, FALSE }, - { OPTION_X_AXIS_MAPPING, "XAxisMapping", OPTV_STRING, {0}, FALSE }, - { OPTION_Y_AXIS_MAPPING, "YAxisMapping", OPTV_STRING, {0}, FALSE }, - { OPTION_AUTO_SOFT, "AutoSoft", OPTV_BOOLEAN, {0}, FALSE }, - { OPTION_DRAGLOCKBUTTONS, "DragLockButtons",OPTV_STRING, {0}, FALSE }, - { -1, NULL, OPTV_NONE, {0}, FALSE } -}; - static char reverseMap[32] = { 0, 4, 2, 6, 1, 5, 3, 7, 8, 12, 10, 14, 9, 13, 11, 15, 16, 20, 18, 22, 17, 21, 19, 23, @@ -416,14 +351,6 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags) return pInfo; } -#ifdef XFree86LOADER -static const OptionInfoRec * -VMMouseAvailableOptions(void *unused) -{ - return (mouseOptions); -} -#endif - /* *---------------------------------------------------------------------- @@ -1146,14 +1073,6 @@ VMMouseConvertProc(InputInfoPtr pInfo, int first, int num, int v0, int v1, int v #ifdef XFree86LOADER -ModuleInfoRec VMMouseInfo = { - 1, - "VMMOUSE", - NULL, - 0, - VMMouseAvailableOptions, -}; - /* *---------------------------------------------------------------------- commit 8f72294ada477f003888b6776883c1dd98289f3f Author: Julien Cristau <jcris...@debian.org> Date: Wed Jun 3 03:37:37 2009 +0200 Kill custom readlink function This was needed for very, very old versions of debianutils. Closes: #498890 diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index 197eb74..781826f 100644 --- a/debian/xsfbs/xsfbs.sh -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org