Index: head/x11-drivers/xf86-input-wacom/Makefile =================================================================== --- head/x11-drivers/xf86-input-wacom/Makefile (revision 408422) +++ head/x11-drivers/xf86-input-wacom/Makefile (revision 408423) @@ -1,49 +1,46 @@ # $FreeBSD$ PORTNAME= xf86-input-wacom PORTVERSION= 0.32.0 +PORTREVISION= 1 CATEGORIES= x11-drivers MASTER_SITES= SF/linuxwacom/${PORTNAME} MAINTAINER= jbeich@FreeBSD.org COMMENT= X.Org Wacom tablet driver LICENSE= GPLv2+ BUILD_DEPENDS= v4l_compat>=1.0.20110603:${PORTSDIR}/multimedia/v4l_compat RUN_DEPENDS= webcamd>=3.1.0.1:${PORTSDIR}/multimedia/webcamd USES= tar:bzip2 pathfix pkgconfig libtool USE_XORG= xrandr xinerama XORG_CAT= driver USE_RC_SUBR= wacom SUB_FILES= pkg-message CONFIGURE_ENV= UDEV_CFLAGS=" " UDEV_LIBS=" " CONFIGURE_ARGS= --without-systemd-unit-dir \ --without-udev-rules-dir \ --without-doxygen INSTALL_TARGET= install-strip OPTIONS_DEFINE= DEBUG TEST DEBUG_CONFIGURE_ENABLE=debug TEST_CONFIGURE_ENABLE=unit-tests TEST_ALL_TARGET=check post-patch: @${REINPLACE_CMD} \ -e 's/dir=.*xorg-server/& \ --define-variable prefix="$$prefix"/' \ ${WRKSRC}/configure - -# XXX adjust MatchProduct to whatever Xorg/devd reports - @${REINPLACE_CMD} -e '/^SUBDIRS/s/ conf//' \ - ${WRKSRC}/Makefile.in post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/etc/X11/xorg.conf.d ${INSTALL_DATA} ${FILESDIR}/wacom.conf.sample \ ${STAGEDIR}${PREFIX}/etc/X11/xorg.conf.d .include Index: head/x11-drivers/xf86-input-wacom/files/patch-src-wcmUSB.c =================================================================== --- head/x11-drivers/xf86-input-wacom/files/patch-src-wcmUSB.c (revision 408422) +++ head/x11-drivers/xf86-input-wacom/files/patch-src-wcmUSB.c (revision 408423) @@ -1,20 +1,32 @@ --- src/wcmUSB.c~ +++ src/wcmUSB.c @@ -23,10 +23,17 @@ #include "xf86Wacom.h" +#ifdef __linux__ #include +#endif #include #include +#ifdef __linux__ #include +#else +#define LINUX_VERSION_CODE 1 +#define KERNEL_VERSION(a,b,c) 0 +#endif #define MAX_USB_EVENTS 32 +@@ -276,6 +283,11 @@ static struct WacomModelDesc + { WACOM_VENDOR_ID, 0x315,200000, 200000, &usbIntuosPro, "Intuos Pro M" }, + { WACOM_VENDOR_ID, 0x317,200000, 200000, &usbIntuosPro, "Intuos Pro L" }, + ++ { WACOM_VENDOR_ID, 0x33B,200000, 200000, &usbIntuos5, "Intuos Draw small" }, ++ { WACOM_VENDOR_ID, 0x33C,200000, 200000, &usbIntuos5, "Intuos Art/Photo/Comic small"}, ++ { WACOM_VENDOR_ID, 0x33D,200000, 200000, &usbIntuos5, "Intuos Draw medium" }, ++ { WACOM_VENDOR_ID, 0x33E,200000, 200000, &usbIntuos5, "Intuos Art medium" }, ++ + { WACOM_VENDOR_ID, 0x3F, 200000, 200000, &usbCintiqV5, "Cintiq 21UX" }, + { WACOM_VENDOR_ID, 0xC5, 200000, 200000, &usbCintiqV5, "Cintiq 20WSX" }, + { WACOM_VENDOR_ID, 0xC6, 200000, 200000, &usbCintiqV5, "Cintiq 12WX" }, Index: head/x11-drivers/xf86-input-wacom/files/patch-src-wcmValidateDevice.c =================================================================== --- head/x11-drivers/xf86-input-wacom/files/patch-src-wcmValidateDevice.c (nonexistent) +++ head/x11-drivers/xf86-input-wacom/files/patch-src-wcmValidateDevice.c (revision 408423) @@ -0,0 +1,55 @@ +--- src/wcmValidateDevice.c.orig 2015-10-23 17:26:33 UTC ++++ src/wcmValidateDevice.c +@@ -34,6 +34,7 @@ static Bool wcmCheckSource(InputInfoPtr + { + int match = 0; + InputInfoPtr pDevices = xf86FirstLocalDevice(); ++ char* fsource = xf86CheckStrOption(pInfo->options, "_source", ""); + + for (; !match && pDevices != NULL; pDevices = pDevices->next) + { +@@ -51,7 +52,6 @@ static Bool wcmCheckSource(InputInfoPtr + if (pInfo != pDevices) + { + WacomCommonPtr pCommon = ((WacomDevicePtr)pDevices->private)->common; +- char* fsource = xf86CheckStrOption(pInfo->options, "_source", ""); + char* psource = xf86CheckStrOption(pDevices->options, "_source", ""); + + if (pCommon->min_maj && +@@ -62,10 +62,11 @@ static Bool wcmCheckSource(InputInfoPtr + if (strcmp(fsource, psource)) + match = 1; + } +- free(fsource); + free(psource); + } + } ++ free(fsource); ++ + if (match) + xf86Msg(X_WARNING, "%s: device file already in use by %s. " + "Ignoring.\n", pInfo->name, pDevices->name); +@@ -205,6 +206,10 @@ int wcmDeviceTypeKeys(InputInfoPtr pInfo + case 0x314: /* Intuos Pro S */ + case 0x315: /* Intuos Pro M */ + case 0x317: /* Intuos Pro L */ ++ case 0x33B: /* Intuos Draw small */ ++ case 0x33C: /* Intuos Art/Photo/Comic small */ ++ case 0x33D: /* Intuos Draw medium */ ++ case 0x33E: /* Intuos Art medium */ + case 0x26: /* I5 */ + case 0x27: /* I5 */ + case 0x28: /* I5 */ +@@ -623,8 +628,10 @@ int wcmNeedAutoHotplug(InputInfoPtr pInf + + if (!source) /* xorg.conf device, don't auto-pick type */ + goto out; +- +- if (source && strcmp(source, "server/hal") && strcmp(source, "server/udev")) ++ if (strcmp(source, "server/hal") && ++ strcmp(source, "server/udev") && ++ strcmp(source, "server/devd") && ++ strcmp(source, "server/wscons")) + goto out; + + /* no type specified, so we need to pick the first one applicable Property changes on: head/x11-drivers/xf86-input-wacom/files/patch-src-wcmValidateDevice.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/x11-drivers/xf86-input-wacom/files/patch-src-xf86Wacom.c =================================================================== --- head/x11-drivers/xf86-input-wacom/files/patch-src-xf86Wacom.c (nonexistent) +++ head/x11-drivers/xf86-input-wacom/files/patch-src-xf86Wacom.c (revision 408423) @@ -0,0 +1,20 @@ +--- src/xf86Wacom.c.orig 2015-10-23 17:26:33 UTC ++++ src/xf86Wacom.c +@@ -667,6 +667,17 @@ void wcmReadPacket(InputInfoPtr pInfo) + + if (len <= 0) + { ++ /* BSD specific code. */ ++ /* Hotplug code does not send remove dev notify because ++ * opened cuse dev cant be removed. */ ++ if (priv->isParent && errno == EINVAL) { ++ WacomDevicePtr other; ++ for (other = common->wcmDevices; other; other = other->next) { ++ xf86Msg(X_INFO, "%s: removing automatically added device.\n", ++ other->pInfo->name); ++ DeleteInputDeviceRequest(other->pInfo->dev); ++ } ++ } else + /* for all other errors, hope that the hotplugging code will + * remove the device */ + if (errno != EAGAIN && errno != EINTR) Property changes on: head/x11-drivers/xf86-input-wacom/files/patch-src-xf86Wacom.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/x11-drivers/xf86-input-wacom/files/pkg-message.in =================================================================== --- head/x11-drivers/xf86-input-wacom/files/pkg-message.in (revision 408422) +++ head/x11-drivers/xf86-input-wacom/files/pkg-message.in (revision 408423) @@ -1,17 +1,9 @@ -To configure the driver with HAL just reattach the tablet for Xserver -to pick it up. Otherwise, use/edit the sample configuration file: +wacom(4x) is configured automatically via devd or HAL. However, if you +prefer to do so manually copy and edit the sample: $ cd %%PREFIX%%/etc/X11/xorg.conf.d/ $ cp wacom.conf.sample wacom.conf - -On xorg-server-1.7 and earlier you may need to also merge wacom.conf -into xorg.conf and add the following lines to ServerLayout section - - InputDevice "wacom stylus" - InputDevice "wacom eraser" - InputDevice "wacom touch" - InputDevice "wacom pad" moused(8) may interfere with tablet input by attaching to fake /dev/ums*. To prevent that add a usb_quirk(4) then detach and attach the tablet. %%PREFIX%%/etc/rc.d/wacom is an example how preserve quirks across reboot. Index: head/x11-drivers/xf86-input-wacom/files/wacom.conf.sample =================================================================== --- head/x11-drivers/xf86-input-wacom/files/wacom.conf.sample (revision 408422) +++ head/x11-drivers/xf86-input-wacom/files/wacom.conf.sample (revision 408423) @@ -1,33 +1,33 @@ -# A static configuration example for Bamboo P&T for use without HAL. +# Manual configuration example for Bamboo Pen & Touch for use without devd or HAL. Section "InputDevice" Identifier "wacom stylus" Driver "wacom" Option "Type" "stylus" Option "Device" "/dev/input/event0" Option "AutoServerLayout" "true" EndSection Section "InputDevice" Identifier "wacom eraser" Driver "wacom" Option "Type" "eraser" Option "Device" "/dev/input/event0" Option "AutoServerLayout" "true" EndSection Section "InputDevice" Identifier "wacom touch" Driver "wacom" Option "Type" "touch" Option "Device" "/dev/input/event1" Option "AutoServerLayout" "true" EndSection Section "InputDevice" Identifier "wacom pad" Driver "wacom" Option "Type" "pad" Option "Device" "/dev/input/event1" Option "AutoServerLayout" "true" EndSection Index: head/x11-drivers/xf86-input-wacom/pkg-plist =================================================================== --- head/x11-drivers/xf86-input-wacom/pkg-plist (revision 408422) +++ head/x11-drivers/xf86-input-wacom/pkg-plist (revision 408423) @@ -1,13 +1,14 @@ bin/isdv4-serial-debugger bin/isdv4-serial-inputattach bin/xsetwacom @comment not marked @sample due to conflict with HAL etc/X11/xorg.conf.d/wacom.conf.sample include/xorg/Xwacom.h include/xorg/isdv4.h include/xorg/wacom-properties.h include/xorg/wacom-util.h lib/xorg/modules/input/wacom_drv.so libdata/pkgconfig/xorg-wacom.pc man/man1/xsetwacom.1.gz man/man4/wacom.4x.gz +share/X11/xorg.conf.d/50-wacom.conf