Fri May 22 19:05:57 2009 UTC ()
Update to xf86-input-mouse-1.4.0, based on patch from hasso@

>From xorg-announce@ mail:

The big change in 1.4.0 is the move of the OS-specific mouse handling code
from the Xorg server to the mouse driver.   This code was removed from the
Xorg server in the Xorg 1.6 development cycle, so users of non-evdev systems
(i.e. non-Linux or pre-evdev Linux) will need this version of the mouse driver
to run with Xorg 1.6.

Remove useless call to xf86AddModuleInfo
Merge some hardware support information from README.mouse into man page
Fix sun_mouse.c build on Solaris
Rename OS_SOURCES to stop automake complaints about not building program "OS"
Remove checks for Solaris x86 versions older than Solaris 8
sun_mouse.c: remove unused variables
sun_mouse.c: Use miPointerGetScreen instead of miPointerCurrentScreen
Fix solarisMouseAutoProbe to use device name & protocol specified by HAL
sun_mouse: check for Device in commonOptions if pInfo->options isn't set yet
Replace static changelog with one generated via XORG_CHANGELOG
Add XORG_CWARNFLAGS & XORG_WITH_LINT for more compiler checking
Clear assorted compiler, sparse & lint warnings
sun_mouse: fallback to commonOptions for StreamsModule too
Comment typo fixes
Remove some #if 1 statements
Unifdef XFree86LOADER
Add copyright notices for OS mouse code to COPYING file
Add note on hal-based configuration to man page
Version 1.4.0
Add OS mouse sources to the driver build
Change screen private key to an integer variable.
Build fix: Add a prototype for FindDevice function.
Include xorg-server.h to get the WSCONS_SUPPORT define from
prevent a double free of mouse private structure.
W axis support for bsd_mouse.
Make sure xf86MouseProtocolIDToName is of public visibility.
Compile warning fixes.
Fix linux build
man: Note that the server may probe default "Device" options.
Nuke RCS tags.
Check for XINPUT ABI 3.
fix compilation (upper/lower case typo)


(tnn)
diff -r1.9 -r1.10 pkgsrc/x11/xf86-input-mouse/Makefile
diff -r1.7 -r1.8 pkgsrc/x11/xf86-input-mouse/distinfo
diff -r0 -r1.1 pkgsrc/x11/xf86-input-mouse/patches/patch-ac
diff -r0 -r1.1 pkgsrc/x11/xf86-input-mouse/patches/patch-ad

cvs diff -r1.9 -r1.10 pkgsrc/x11/xf86-input-mouse/Makefile (expand / switch to unified diff)

--- pkgsrc/x11/xf86-input-mouse/Makefile 2009/03/14 11:09:37 1.9
+++ pkgsrc/x11/xf86-input-mouse/Makefile 2009/05/22 19:05:57 1.10
@@ -1,17 +1,16 @@ @@ -1,17 +1,16 @@
1# $NetBSD: Makefile,v 1.9 2009/03/14 11:09:37 apb Exp $ 1# $NetBSD: Makefile,v 1.10 2009/05/22 19:05:57 tnn Exp $
2 2
3DISTNAME= xf86-input-mouse-1.3.0 3DISTNAME= xf86-input-mouse-1.4.0
4PKGREVISION= 2 
5CATEGORIES= x11 4CATEGORIES= x11
6MASTER_SITES= ${MASTER_SITE_XORG:=driver/} 5MASTER_SITES= ${MASTER_SITE_XORG:=driver/}
7EXTRACT_SUFX= .tar.bz2 6EXTRACT_SUFX= .tar.bz2
8 7
9MAINTAINER= joerg@NetBSD.org 8MAINTAINER= joerg@NetBSD.org
10HOMEPAGE= http://xorg.freedesktop.org/ 9HOMEPAGE= http://xorg.freedesktop.org/
11COMMENT= Modular Xorg mouse driver 10COMMENT= Modular Xorg mouse driver
12 11
13PKG_DESTDIR_SUPPORT= user-destdir 12PKG_DESTDIR_SUPPORT= user-destdir
14 13
15USE_LIBTOOL= YES 14USE_LIBTOOL= YES
16GNU_CONFIGURE= YES 15GNU_CONFIGURE= YES
17USE_TOOLS+= pkg-config 16USE_TOOLS+= pkg-config

cvs diff -r1.7 -r1.8 pkgsrc/x11/xf86-input-mouse/distinfo (expand / switch to unified diff)

--- pkgsrc/x11/xf86-input-mouse/distinfo 2009/03/14 11:09:37 1.7
+++ pkgsrc/x11/xf86-input-mouse/distinfo 2009/05/22 19:05:57 1.8
@@ -1,7 +1,9 @@ @@ -1,7 +1,9 @@
1$NetBSD: distinfo,v 1.7 2009/03/14 11:09:37 apb Exp $ 1$NetBSD: distinfo,v 1.8 2009/05/22 19:05:57 tnn Exp $
2 2
3SHA1 (xf86-input-mouse-1.3.0.tar.bz2) = 79ecd994b2820d24a00d4c4af9aa9189bdd9db93 3SHA1 (xf86-input-mouse-1.4.0.tar.bz2) = d16c09580a0a5deb1675874e914f616548859747
4RMD160 (xf86-input-mouse-1.3.0.tar.bz2) = a691e809e61e14e2383f1d4533b0eb454373667f 4RMD160 (xf86-input-mouse-1.4.0.tar.bz2) = 17985f0493711a25ffa8fdeae4d741d7f602ca4e
5Size (xf86-input-mouse-1.3.0.tar.bz2) = 282157 bytes 5Size (xf86-input-mouse-1.4.0.tar.bz2) = 292626 bytes
6SHA1 (patch-aa) = baf529a3ae260e98fb068cb9549f749705d8213b 6SHA1 (patch-aa) = baf529a3ae260e98fb068cb9549f749705d8213b
7SHA1 (patch-ab) = 632ec0e3908ccd16678a480b5ffa00dba7db640f 7SHA1 (patch-ab) = 632ec0e3908ccd16678a480b5ffa00dba7db640f
 8SHA1 (patch-ac) = d32bbb082c0898e6eb6bf9dadb2af401b1e79312
 9SHA1 (patch-ad) = 8301f21624cecdb19b2f705d546b6bd37d105dc3

File Added: pkgsrc/x11/xf86-input-mouse/patches/Attic/patch-ac
$NetBSD: patch-ac,v 1.1 2009/05/22 19:05:57 tnn Exp $

Changes from NetBSD xsrc/external/mit/xorg-server/dist/\
hw/xfree86/os-support/bsd/bsd_mouse.c

----------------------------
revision 1.5
date: 2009/02/09 09:49:39;  author: plunky;  state: Exp;  lines: +16 -0
add horizontal mouse-wheel functionality to USB and WSMOUSE drivers
----------------------------
revision 1.4
date: 2009/02/02 03:06:37;  author: christos;  state: Exp;  lines: +7 -11
add a SetupMouse proc to condition the fd. Convert NetBSD's SetupAuto to
SetupMouse.
----------------------------
revision 1.3
date: 2009/01/19 00:54:29;  author: christos;  state: Exp;  lines: +2 -1
fix ioctl.
----------------------------
revision 1.2
date: 2009/01/13 18:43:46;  author: christos;  state: Exp;  lines: +25 -0
Set the mouse event protocol version. (untested, but head will be broken
unless I add this).
----------------------------

--- src/bsd_mouse.c.orig	2009-05-19 15:12:28 +0300
+++ src/bsd_mouse.c	2009-05-19 15:13:13 +0300
@@ -53,12 +53,15 @@
 
 #define HUP_GENERIC_DESKTOP     0x0001
 #define HUP_BUTTON              0x0009
+#define HUP_CONSUMER            0x000c
 
 #define HUG_X                   0x0030
 #define HUG_Y                   0x0031
 #define HUG_Z                   0x0032
 #define HUG_WHEEL               0x0038
 
+#define HUC_AC_PAN              0x0238
+
 #define HID_USAGE2(p,u) (((p) << 16) | u)
 
 /* The UMS mices have middle button as number 3 */
@@ -339,6 +342,23 @@ FindDevice(InputInfoPtr pInfo, const cha
 }
 #endif
 
+#if defined(__NetBSD__)
+static Bool
+SetupMouse(InputInfoPtr pInfo)
+{
+#ifdef WSCONS_SUPPORT
+#ifdef WSMOUSEIO_SETVERSION
+        int version = WSMOUSE_EVENT_VERSION;
+        if (ioctl(pInfo->fd, WSMOUSEIO_SETVERSION, &version) == -1) {
+            xf86Msg(X_WARNING, "%s: cannot set version\n", pInfo->name);
+            return FALSE;
+        }
+#endif
+#endif
+        return TRUE;
+}
+#endif
+
 #if (defined(__OpenBSD__) || defined(__NetBSD__)) && defined(WSCONS_SUPPORT)
 
 /* Only support wsmouse configuration for now */
@@ -496,7 +516,7 @@ typedef struct _UsbMseRec {
     hid_item_t loc_x;		/* x locator item */
     hid_item_t loc_y;		/* y locator item */
     hid_item_t loc_z;		/* z (wheel) locator item */
-    hid_item_t loc_w;		/* z (wheel) locator item */
+    hid_item_t loc_w;		/* w (pan) locator item */
     hid_item_t loc_btn[MSE_MAXBUTTONS]; /* buttons locator items */
    unsigned char *buffer;
 } UsbMseRec, *UsbMsePtr;
@@ -708,6 +728,9 @@ usbPreInit(InputInfoPtr pInfo, const cha
     if (hid_locate(reportDesc, HID_USAGE2(HUP_GENERIC_DESKTOP, HUG_WHEEL),
 		   hid_input, &pUsbMse->loc_z, pUsbMse->iid) < 0) {
     }
+    if (hid_locate(reportDesc, HID_USAGE2(HUP_CONSUMER, HUC_AC_PAN),
+		   hid_input, &pUsbMse->loc_w, pUsbMse->iid) < 0) {
+    }
 #else
     if (hid_locate(reportDesc, HID_USAGE2(HUP_GENERIC_DESKTOP, HUG_X),
 		   hid_input, &pUsbMse->loc_x) < 0) {
@@ -720,6 +743,9 @@ usbPreInit(InputInfoPtr pInfo, const cha
     if (hid_locate(reportDesc, HID_USAGE2(HUP_GENERIC_DESKTOP, HUG_WHEEL),
 		   hid_input, &pUsbMse->loc_z) < 0) {
     }
+    if (hid_locate(reportDesc, HID_USAGE2(HUP_CONSUMER, HUC_AC_PAN),
+		   hid_input, &pUsbMse->loc_w) < 0) {
+    }
 #endif
     /* Probe for number of buttons */
     for (i = 1; i <= MSE_MAXBUTTONS; i++) {
@@ -790,6 +816,9 @@ xf86OSMouseInit(int flags)
     p->SetupAuto = SetupAuto;
     p->SetMiscRes = SetMouseRes;
 #endif
+#if defined(__NetBSD__)
+    p->SetupMouse = SetupMouse;
+#endif
 #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__NetBSD__)
     p->FindDevice = FindDevice;
 #endif

File Added: pkgsrc/x11/xf86-input-mouse/patches/Attic/patch-ad
$NetBSD: patch-ad,v 1.1 2009/05/22 19:05:57 tnn Exp $

Changes from NetBSD xsrc/external/mit/xorg-server/dist/\
hw/xfree86/os-support/xf86OSmouse.h

----------------------------
revision 1.2
date: 2009/02/02 03:06:37;  author: christos;  state: Exp;  lines: +4 -0
add a SetupMouse proc to condition the fd. Convert NetBSD's SetupAuto to
SetupMouse.
----------------------------

--- ./src/xf86OSmouse.h.orig	2009-05-19 15:15:31 +0300
+++ ./src/xf86OSmouse.h	2009-05-19 15:18:54 +0300
@@ -82,6 +82,7 @@ typedef Bool (*BuiltinPreInitProc)(Input
 				   int flags);
 typedef const char *(*DefaultProtocolProc)(void);
 typedef const char *(*SetupAutoProc)(InputInfoPtr pInfo, int *protoPara);
+typedef Bool (*SetupMouseProc)(InputInfoPtr pInfo);
 typedef void (*SetResProc)(InputInfoPtr pInfo, const char* protocol, int rate,
 			   int res);
 typedef const char *(*FindDeviceProc)(InputInfoPtr pInfo, const char *protocol,
@@ -99,6 +100,7 @@ typedef struct {
 	BuiltinPreInitProc	PreInit;
 	DefaultProtocolProc	DefaultProtocol;
 	SetupAutoProc		SetupAuto;
+	SetupMouseProc		SetupMouse;
 	SetResProc		SetPS2Res;
 	SetResProc		SetBMRes;
 	SetResProc		SetMiscRes;
@@ -141,6 +143,8 @@ typedef struct {
  *
  * SetBMRes:	Set the resolution and sample rate for MSE_BM protocol types.
  *
+ * SetupMouse:	Called once after open to condition the file descriptor.
+ *
  * SetMiscRes:	Set the resolution and sample rate for MSE_MISC protocol types.
  *
  * FindDevice:	This function gets called when no Device has been specified