diff options
author | Baptiste Daroussin <bapt@FreeBSD.org> | 2014-06-11 06:44:41 +0000 |
---|---|---|
committer | Baptiste Daroussin <bapt@FreeBSD.org> | 2014-06-11 06:44:41 +0000 |
commit | b7ac854ab42e52d83a983a513f3a736aba2dd017 (patch) | |
tree | db18e9d7d666786371e04dfc334fdaab047db100 /x11-drivers | |
parent | 1920884475f735cb39bda160a8a6b3590d39bc4e (diff) | |
download | ports-b7ac854ab42e52d83a983a513f3a736aba2dd017.tar.gz ports-b7ac854ab42e52d83a983a513f3a736aba2dd017.zip |
Notes
Diffstat (limited to 'x11-drivers')
26 files changed, 335 insertions, 682 deletions
diff --git a/x11-drivers/Makefile b/x11-drivers/Makefile index 909842f24d68..f1578bc11907 100644 --- a/x11-drivers/Makefile +++ b/x11-drivers/Makefile @@ -3,7 +3,6 @@ COMMENT = X11 drivers - SUBDIR += input-wacom SUBDIR += xf86-input-acecad SUBDIR += xf86-input-egalax SUBDIR += xf86-input-elographics @@ -16,6 +15,7 @@ SUBDIR += xf86-input-penmount SUBDIR += xf86-input-synaptics SUBDIR += xf86-input-vmmouse + SUBDIR += xf86-input-wacom SUBDIR += xf86-input-void SUBDIR += xf86-video-apm SUBDIR += xf86-video-ark diff --git a/x11-drivers/input-wacom/Makefile b/x11-drivers/input-wacom/Makefile deleted file mode 100644 index de3e72efb844..000000000000 --- a/x11-drivers/input-wacom/Makefile +++ /dev/null @@ -1,113 +0,0 @@ -# Created by: Dominic Fandrey <kamikaze@bsdforen.de> -# $FreeBSD$ - -PORTNAME= input-wacom -PORTVERSION= ${KLD_VERSION}.${WACOM_VERSION:C/-/./g} -PORTREVISION= 4 -CATEGORIES= x11-drivers kld -MASTER_SITES= http://www.chillt.de/bsdwacom/:bsdwacom \ - SF/linuxwacom/xf86-input-wacom/:linuxwacom -DISTFILES= ${BSDWACOM}.tbz:bsdwacom \ - ${LINUXWACOM}.tar.bz2:linuxwacom - -MAINTAINER= ports@FreeBSD.org -COMMENT= X.Org Wacom tablet driver and kernel module - -BUILD_DEPENDS= v4l_compat>=1.0.20110603:${PORTSDIR}/multimedia/v4l_compat - -MAN4= wacom.4x -MAN1= xsetwacom.1 -#MANCOMPRESSED= yes - -USES= gmake -USE_RC_SUBR= wacom - -KMODDIR?= /boot/modules -XINPUTMODDIR= lib/xorg/modules/input -MAN1DIR= man/man1 -MAN4DIR= man/man4 -WRKSRC= ${WRKDIR} - -PLIST_SUB+= KMODDIR=${KMODDIR} \ - XINPUTMODDIR=${XINPUTMODDIR} \ - PORTTYPE=${PORTTYPE} -SUB_LIST:= ${PLIST_SUB} -SUB_FILES+= pkg-message-${PORTTYPE} -PKGMESSAGE= ${WRKDIR}/pkg-message-${PORTTYPE} - -XORG_CAT= driver -USE_XORG= xi xrandr - -LINUXWACOM= xf86-input-wacom-${WACOM_VERSION} -BSDWACOM= bsdwacom-${KLD_VERSION} -WACOM_VERSION= 0.15.0 -KLD_VERSION= 40 -PATCH_WRKSRC= ${WRKDIR}/${LINUXWACOM} -CONFIGURE_WRKSRC= ${WRKDIR}/${LINUXWACOM} -USE_AUTOTOOLS= autoconf -MAKE_ARGS+= UDEV_CFLAGS="" - -OPTIONS_DEFINE= UWACOMKLD -UWACOMKLD_DESC= Install USB kernel module (not supported on 8.x) - -NO_STAGE= yes -.include <bsd.port.pre.mk> - -.if ${PORT_OPTIONS:MUWACOMKLD} -PLIST_SUB+= UWACOMKLD="uwacom.ko" -PORTTYPE= usb -.else -PLIST_SUB+= UWACOMKLD="@noinst UWACOMKLD uwacom.ko" -PORTTYPE= serial -.endif - -do-build: -.if ${PORT_OPTIONS:MUWACOMKLD} - @cd ${WRKDIR}/uwacom \ - && ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_ARGS} -.endif - @cd ${WRKDIR}/${LINUXWACOM} \ - && ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_ARGS} - -do-install: -.if ${PORT_OPTIONS:MUWACOMKLD} - @${MKDIR} ${KMODDIR} - @${INSTALL_KLD} ${WRKDIR}/uwacom/uwacom.ko ${KMODDIR}/ -.endif - @${MKDIR} ${PREFIX}/${XINPUTMODDIR} ${PREFIX}/${MAN4DIR} - @cd ${WRKDIR}/${LINUXWACOM}/tools/ \ - && ${SETENV} ${MAKE_ENV} ${GMAKE} ${INSTALL} - @${INSTALL} ${WRKDIR}/${LINUXWACOM}/src/.libs/wacom_drv.so \ - ${PREFIX}/${XINPUTMODDIR}/ - @${INSTALL_MAN} ${WRKDIR}/${LINUXWACOM}/man/wacom.4x \ - ${PREFIX}/${MAN4DIR}/ - @${INSTALL_MAN} ${WRKDIR}/${LINUXWACOM}/man/xsetwacom.1 \ - ${PREFIX}/${MAN1DIR}/ - -plist: clean configure - @${ECHO} "===> Rebuilding PLIST." - @${TOUCH} ${PLIST} - @${RM} ${PLIST} - @cd ${WRKDIR}/linuxwacom \ - && ${SETENV} ${MAKE_ENV} PREFIX=${WRKDIR}/plist ./run_configure - @${MKDIR} ${WRKDIR}/plist - @cd ${WRKDIR}/linuxwacom/${LINUXWACOM}/src/util \ - && ${SETENV} ${MAKE_ENV} ${GMAKE} ${INSTALL} - @cd ${WRKDIR}/linuxwacom \ - && ${SETENV} ${MAKE_ENV} ./run_configure - @${FIND} ${WRKDIR}/plist/ -not -type d \ - | ${SED} "s|${WRKDIR}/plist/||1" \ - >> ${PLIST} - @${FIND} -d ${WRKDIR}/plist/ -mindepth 2 -type d \ - | ${SED} "s|${WRKDIR}/plist/|@dirrm |1" \ - >> ${PLIST} - @${ECHO} "%%XINPUTMODDIR%%/wacom_drv.so" >> ${PLIST} - @${ECHO} "@dirrmtry %%XINPUTMODDIR%%" >> ${PLIST} - @${ECHO} "@cwd %%KMODDIR%%" >> ${PLIST} - @${ECHO} "%%UWACOMKLD%%" >> ${PLIST} - -post-install: - @${ECHO} "===> Displaying pkg-message." - @${CAT} ${PKGMESSAGE} - -.include <bsd.port.post.mk> diff --git a/x11-drivers/input-wacom/distinfo b/x11-drivers/input-wacom/distinfo deleted file mode 100644 index 70254fd1dc1f..000000000000 --- a/x11-drivers/input-wacom/distinfo +++ /dev/null @@ -1,4 +0,0 @@ -SHA256 (xorg/driver/bsdwacom-40.tbz) = 42c37d321768ff29fef10eb088a87a83c94753a1b4ae5f92fd453781039a5df9 -SIZE (xorg/driver/bsdwacom-40.tbz) = 19305 -SHA256 (xorg/driver/xf86-input-wacom-0.15.0.tar.bz2) = 2e9b64c30fb223c46407bd0e105a54a1e83f378eb33ac68bd8a73fdbface000f -SIZE (xorg/driver/xf86-input-wacom-0.15.0.tar.bz2) = 528528 diff --git a/x11-drivers/input-wacom/files/patch-configure.ac b/x11-drivers/input-wacom/files/patch-configure.ac deleted file mode 100644 index 3ac3ac30719a..000000000000 --- a/x11-drivers/input-wacom/files/patch-configure.ac +++ /dev/null @@ -1,11 +0,0 @@ ---- configure.ac.orig -+++ configure.ac -@@ -56,7 +56,7 @@ PKG_CHECK_MODULES(XORG, [xorg-server >= - PKG_CHECK_MODULES(X11, x11 xi xrandr) - - # Obtain compiler/linker options for libudev used by ISDV4 code --PKG_CHECK_MODULES(UDEV, libudev) -+#PKG_CHECK_MODULES(UDEV, libudev) - - # X Server SDK location is required to install wacom header files - # This location is also relayed in the xorg-wacom.pc file diff --git a/x11-drivers/input-wacom/files/patch-src-Makefile.in b/x11-drivers/input-wacom/files/patch-src-Makefile.in deleted file mode 100644 index b71548003d27..000000000000 --- a/x11-drivers/input-wacom/files/patch-src-Makefile.in +++ /dev/null @@ -1,40 +0,0 @@ ---- src/Makefile.in.orig -+++ src/Makefile.in -@@ -97,7 +97,7 @@ am__base_list = \ - am__installdirs = "$(DESTDIR)$(@DRIVER_NAME@_drv_ladir)" - LTLIBRARIES = $(@DRIVER_NAME@_drv_la_LTLIBRARIES) - @DRIVER_NAME@_drv_la_LIBADD = --am__objects_1 = xf86Wacom.lo wcmCommon.lo wcmConfig.lo wcmISDV4.lo \ -+am__objects_1 = xf86Wacom.lo wcmCommon.lo wcmConfig.lo \ - wcmFilter.lo wcmUSB.lo wcmXCommand.lo wcmValidateDevice.lo \ - wcmTouchFilter.lo - am_@DRIVER_NAME@_drv_la_OBJECTS = $(am__objects_1) -@@ -291,7 +291,6 @@ DRIVER_SOURCES = \ - $(top_srcdir)/src/xf86Wacom.h \ - $(top_srcdir)/src/wcmCommon.c \ - $(top_srcdir)/src/wcmConfig.c \ -- $(top_srcdir)/src/wcmISDV4.c \ - $(top_srcdir)/src/wcmFilter.c \ - $(top_srcdir)/src/wcmFilter.h \ - $(top_srcdir)/src/xf86WacomDefs.h \ -@@ -383,7 +382,6 @@ distclean-compile: - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcmCommon.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcmConfig.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcmFilter.Plo@am__quote@ --@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcmISDV4.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcmTouchFilter.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcmUSB.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcmValidateDevice.Plo@am__quote@ -@@ -467,12 +465,7 @@ wcmConfig.lo: $(top_srcdir)/src/wcmConfi - @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ - @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wcmConfig.lo `test -f '$(top_srcdir)/src/wcmConfig.c' || echo '$(srcdir)/'`$(top_srcdir)/src/wcmConfig.c - --wcmISDV4.lo: $(top_srcdir)/src/wcmISDV4.c --@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wcmISDV4.lo -MD -MP -MF $(DEPDIR)/wcmISDV4.Tpo -c -o wcmISDV4.lo `test -f '$(top_srcdir)/src/wcmISDV4.c' || echo '$(srcdir)/'`$(top_srcdir)/src/wcmISDV4.c --@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/wcmISDV4.Tpo $(DEPDIR)/wcmISDV4.Plo --@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$(top_srcdir)/src/wcmISDV4.c' object='wcmISDV4.lo' libtool=yes @AMDEPBACKSLASH@ - @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ --@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o wcmISDV4.lo `test -f '$(top_srcdir)/src/wcmISDV4.c' || echo '$(srcdir)/'`$(top_srcdir)/src/wcmISDV4.c - - wcmFilter.lo: $(top_srcdir)/src/wcmFilter.c - @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT wcmFilter.lo -MD -MP -MF $(DEPDIR)/wcmFilter.Tpo -c -o wcmFilter.lo `test -f '$(top_srcdir)/src/wcmFilter.c' || echo '$(srcdir)/'`$(top_srcdir)/src/wcmFilter.c diff --git a/x11-drivers/input-wacom/files/patch-src-wcmConfig.c b/x11-drivers/input-wacom/files/patch-src-wcmConfig.c deleted file mode 100644 index 62bbda8bac56..000000000000 --- a/x11-drivers/input-wacom/files/patch-src-wcmConfig.c +++ /dev/null @@ -1,16 +0,0 @@ ---- src/wcmConfig.c.orig -+++ src/wcmConfig.c -@@ -373,9 +373,12 @@ wcmDetectDeviceClass(const InputInfoPtr - return TRUE; - - /* Bluetooth is also considered as USB */ -+#if 0 - if (gWacomISDV4Device.Detect(pInfo)) - common->wcmDevCls = &gWacomISDV4Device; -- else if (gWacomUSBDevice.Detect(pInfo)) -+ else -+#endif -+ if (gWacomUSBDevice.Detect(pInfo)) - common->wcmDevCls = &gWacomUSBDevice; - else - xf86Msg(X_ERROR, "%s: cannot identify device class.\n", pInfo->name); diff --git a/x11-drivers/input-wacom/files/patch-tools-Makefile.in b/x11-drivers/input-wacom/files/patch-tools-Makefile.in deleted file mode 100644 index 882726d59df9..000000000000 --- a/x11-drivers/input-wacom/files/patch-tools-Makefile.in +++ /dev/null @@ -1,11 +0,0 @@ ---- tools/Makefile.in.orig -+++ tools/Makefile.in -@@ -54,6 +54,6 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --bin_PROGRAMS = xsetwacom$(EXEEXT) isdv4-serial-debugger$(EXEEXT) -+bin_PROGRAMS = xsetwacom$(EXEEXT) - @UNITTESTS_TRUE@check_PROGRAMS = xsetwacom-test$(EXEEXT) - subdir = tools - DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in diff --git a/x11-drivers/input-wacom/files/pkg-message-serial.in b/x11-drivers/input-wacom/files/pkg-message-serial.in deleted file mode 100644 index f64f53d181ce..000000000000 --- a/x11-drivers/input-wacom/files/pkg-message-serial.in +++ /dev/null @@ -1,12 +0,0 @@ -To setup the wacom driver for X run the following commands as the root user: -# %%PREFIX%%/etc/rc.d/wacom onesetup - -Now open your xorg.conf file and check weather the correct serial device -was chosen. If you are using a USB to serial converter you might have -to change it to cuaUX. - -You can clean up the Xorg configuration by running the following command -before deinstalling: -# %%PREFIX%%/etc/rc.d/wacom onecleanup - -Now (re)plug in your tablet and restart X. diff --git a/x11-drivers/input-wacom/files/pkg-message-usb.in b/x11-drivers/input-wacom/files/pkg-message-usb.in deleted file mode 100644 index fdf3c418c99c..000000000000 --- a/x11-drivers/input-wacom/files/pkg-message-usb.in +++ /dev/null @@ -1,16 +0,0 @@ -To setup the wacom driver for X and start the kernel module upon boot -run the following commands as the root user: - -# echo 'wacom_enable="YES"' >> /etc/rc.conf -# %%PREFIX%%/etc/rc.d/wacom setup - -You can unload the driver and clean up the Xorg configuration by -running the following lines before deinstalling: -# %%PREFIX%%/etc/rc.d/wacom cleanup -# %%PREFIX%%/etc/rc.d/wacom stop - -To activate the driver without rebooting run: - -# %%PREFIX%%/etc/rc.d/wacom start - -Now (re)plug in your tablet and restart X. diff --git a/x11-drivers/input-wacom/files/wacom.in b/x11-drivers/input-wacom/files/wacom.in deleted file mode 100644 index 61ed94a285ae..000000000000 --- a/x11-drivers/input-wacom/files/wacom.in +++ /dev/null @@ -1,433 +0,0 @@ -#!/bin/sh - -# PROVIDE: wacom -# REQUIRE: FILESYSTEMS -# -# Add the following lines to /etc/rc.conf.local or /etc/rc.conf -# to enable this service: -# -# wacom_enable (bool): Set to NO by default. -# Set it to YES to enable wacom. -# wacom_types (list): Set to "stylus eraser cursor pad touch" by -# default. A list of wacom profiles to set up. -# wacom_porttype (enum): Set to "%%PORTTYPE%%" by default. -# Set this to usb or serial. -# -# This script additionally offers setup and cleanup to configure Xorg -# for use of the driver or remove the configuration settings. -# The input devices are only added to the first ServerLayout section -# and also only removed once. -# In USB mode the file /boot/loader.conf is also adjusted. -# - -. /etc/rc.subr - -name="wacom" -rcvar=wacom_enable - -extra_commands="setup cleanup" -setup_cmd=do_setup -start_cmd=do_start -stop_cmd=do_stop -cleanup_cmd=do_cleanup - -# -# Outputs the location of the Xorg configuration file. -# Returns 1 if no file could be found. -# -get_xorg_conf() { - local config_locations config - - # Possible Xorg configuration file locations, taken from the - # xorg.conf(5) manual page. - config_locations=" -/etc/X11/$XORGCONFIG -%%PREFIX%%/etc/X11/$XORGCONFIG -/etc/X11/xorg.conf-4 -/etc/X11/xorg.conf -/etc/xorg.conf -%%PREFIX%%/etc/X11/xorg.conf.$HOST -%%PREFIX%%/etc/X11/xorg.conf-4 -%%PREFIX%%/etc/X11/xorg.conf -%%PREFIX%%/lib/X11/xorg.conf.$HOST -%%PREFIX%%/lib/X11/xorg.conf-4 -%%PREFIX%%/lib/X11/xorg.conf -NONE -" - - # Find the first matching config file. - for config in $config_locations; { - test -f "$config" && break - } - - if [ "$config" = "NONE" ]; then - echo "No Xorg configuration has been found." 1>&2 - return 1 - fi - - echo "$config" - return 0 -} - -# -# Returns the line number of the first line matching the extended regular -# expression $2 in the file $1. -# -# @param $1 -# The file to get the line number from. -# @param $2 -# An extend regular expression. -# @stdout -# The line number of the first line matching $2. -# -get_first() { - local result IFS - IFS=' -' - result="$(/usr/bin/grep -Ein "$2" "$1")" - result="${result%%:*}" - - # No match. - if [ -z "$result" ]; then - return 1 - fi - - echo "$result" - return 0 -} - -# -# Returns the line numbers of lines matching the extended regular -# expression $2 in the file $1. -# -# @param $1 -# The file to get the line numbers from. -# @param $2 -# An extend regular expression. -# @stdout -# The line numbers of lines matching $2. -# -get_all() { - local entry result IFS - IFS=' -' - - result="$(/usr/bin/grep -Ein "$2" "$1")" - - # No match. - if [ -z "$result" ]; then - return 1 - fi - - for entry in $result; { - echo "${entry%%:*}" - } -} - -# -# Returns the line number of the line before line number $2 that matches the -# extended regular expression $3 in the file $1. -# -# @param $1 -# The file to get the line number from. -# @param $2 -# The line before which the expression should match. -# @param $3 -# An extend regular expression. -# @stdout -# The line number of the first line before line $2 matching $3. -# -get_before() { - local result IFS line length - IFS=' -' - - # The length is necessary to make sure the check is run once - # again for the last match. - length="$(/usr/bin/wc -l "$1")" - length=${length% *} - - result=-1 - for line in $(/usr/bin/grep -Ein "$3" "$1") $(($length + 1)); { - line="${line%%:*}" - - # We have passed the line to look for. - if [ $line -ge $2 ]; then - - # No match before this line. - if [ $result -lt 0 ]; then - return 1 - fi - - echo "$result" - return 0 - fi - - result=$line - } - - # No result. - return 1 -} - -# -# Returns the line number of the line behind line number $2 that matches the -# extended regular expression $3 in the file $1. -# -# @param $1 -# The file to get the line number from. -# @param $2 -# The line behind which the expression should match. -# @param $3 -# An extend regular expression. -# @stdout -# The line number of the first line behind line $2 matching $3. -# -get_behind() { - local IFS line - IFS=' -' - - for line in $(/usr/bin/grep -Ein "$3" "$1"); { - line="${line%%:*}" - - # We have passed the line to look for. - if [ $line -gt $2 ]; then - echo "$line" - return 0 - fi - } - - # No result. - return 1 -} - -# -# Inserts a line at the end of a section of an Xorg configuration file. -# The insertion is done on all matching sections! -# -section_insert_line() { - local file section insert sections begin end length - file="$1" - section="$2" - insert="$3" - - # Find the beginning of the section. - # Start with the last section to avoid moving sections around - # before something is inserted into them. - sections="$(get_all "$file" \ - "^[[:space:]]*Section[[:space:]]+\"$section\"" \ - | /usr/bin/sort -nr - )" - - if [ -z "$sections" ]; then - echo "Identifying section $section has failed." 1>&2 - return 1 - fi - - for begin in $sections; { - - # Find the end of the section. - end="$(get_behind "$file" "$begin" "^[[:space:]]*EndSection")" - - if [ -z "$end" ]; then - echo "The section $section($begin) is not closed." 1>&2 - return 2 - fi - - # Determine the length of the configuration file. - length="$(/usr/bin/wc -l "$file")" - length=${length% *} - - # Insert the line. - /bin/cp "$file" "$file.$$" - - /usr/bin/head -n$(($end - 1)) "$file.$$" > "$file" - echo "$insert" >> "$file" - /usr/bin/tail -n$(($length - $end + 1)) "$file.$$" >> "$file" - - /bin/rm "$file.$$" - } -} - -# -# Adds the necessary lines to the Xorg configuration. -# -do_setup() { - local config ident status - - # Get the Xorg configuration file. - config="$(get_xorg_conf)" - status=$? - test $status -ne 0 && return $status - - echo "Setting up configuration in $config." - - # Add all the necessary sections. - for ident in $(eval "echo \${${name}_types}"); { - if /usr/bin/grep -Eqi "^[[:space:]]*Identifier[[:space:]]+\"$ident\"" "$config"; then - echo "Skipping $ident, because it already exists in $config." - continue - fi - - echo "Inserting $ident." - - echo "Section \"InputDevice\" - Driver \"wacom\" - Identifier \"$ident\" - Option \"Type\" \"$ident\"" >> "$config" - - if [ "$(eval "echo \${${name}_porttype}")" = "usb" ]; then - echo " Option \"Device\" \"/dev/event0\" - Option \"USB\" \"on\"" >> "$config" - else - echo " Option \"Device\" \"/dev/ttyd0\" - Option \"ForceDevice\" \"ISDV4\"" >> "$config" - fi - - echo "EndSection -" >> "$config" - - section_insert_line "$config" "ServerLayout" " InputDevice \"$ident\" \"SendCoreEvents\"" - } - - if [ "$(eval "echo \${${name}_porttype}")" = "usb" ]; then - if ! /usr/bin/grep -qx 'uwacom_load="YES"' \ - /boot/loader.conf; then - echo "Setting up /boot/loader.conf" - /bin/cp /boot/loader.conf /boot/loader.conf.orig - echo 'uwacom_load="YES"' >> /boot/loader.conf - fi - fi -} - -# -# Removes all wacom stuff from the Xorg configuration file. Beware, -# this also affects handwritten content. -# -do_cleanup() { - local config status driver i begin last_begin end length ident IFS - - # Get the Xorg configuration file. - config="$(get_xorg_conf)" - status=$? - test $status -ne 0 && return $status - - echo "Removing wacom entries from $config." - - IFS=' -' - while true; do - # Find a wacom section. - driver="$(get_first "$config" \ - "^[[:space:]]*Driver[[:space:]]+\"wacom\"" \ - )" - - # Not a numeric, no more wacom sections left. - test -z "$driver" && break - - # Find the beginning of the section. - begin="$(get_before "$config" "$driver" \ - "^[[:space:]]*Section[[:space:]]+\"InputDevice\"" \ - )" - - if [ -z "$begin" ]; then - echo "Beginning of wacom driver section" \ - "could not be found!" 1>&2 - return 1 - fi - - # Find the end of the section. - end="$(get_behind "$config" "$driver" \ - "^[[:space:]]*EndSection" \ - )" - - if [ -z "$end" ]; then - echo "The Wacom driver section is" \ - "not closed properly." 1>&2 - return 2 - fi - - # Determine the length of the configuration file. - length="$(/usr/bin/wc -l "$config")" - length=${length% *} - - # Adjust the end by trailing newlines. - while [ $end -lt $length -a \ - -z "$(/usr/bin/tail -n$(($length - $end)) "$config" \ - | /usr/bin/head -n1)" ]; do - end=$(($end + 1)) - done - - # Remove the section. - /bin/cp "$config" "$config.$$" - - /usr/bin/head -n$(($begin - 1)) "$config.$$" > "$config" - /usr/bin/tail -n$(($length - $end)) "$config.$$" >> "$config" - - /bin/rm "$config.$$" - done - IFS=' -' - - echo "Cleaning up ServerLayout section." - - for ident in $(eval "echo \${${name}_types}"); { - while true; do - driver="$(get_first "$config" \ - "[[:space:]]*InputDevice[[:space:]]+\"$ident\"" \ - )" - - # There is no line matching this driver. - test -z "$driver" && break - - # Determine the length of the configuration file. - length="$(/usr/bin/wc -l "$config")" - length=${length% *} - - # Remove the section. - /bin/cp "$config" "$config.$$" - - /usr/bin/head -n$(($driver - 1)) "$config.$$" > "$config" - /usr/bin/tail -n$(($length - $driver)) "$config.$$" >> "$config" - - /bin/rm "$config.$$" - done - } - - if [ "$(eval "echo \${${name}_porttype}")" = "usb" ]; then - if /usr/bin/grep -qx 'uwacom_load="YES"' \ - /boot/loader.conf; then - echo "Cleaning up /boot/loader.conf" - /bin/cp /boot/loader.conf /boot/loader.conf.orig - /usr/bin/grep -xv 'uwacom_load="YES"' \ - /boot/loader.conf.orig > /boot/loader.conf - fi - fi - -} - -do_start() { - if /sbin/kldstat | /usr/bin/grep -q uwacom; then - return 0 - fi - echo "Starting ${name}." - /sbin/kldload %%KMODDIR%%/uwacom.ko -} - -do_stop() { - if ! /sbin/kldstat | /usr/bin/grep -q uwacom; then - echo "${name} is not running." - return 0 - fi - echo "Stopping ${name}." - /sbin/kldunload %%KMODDIR%%/uwacom.ko -} - -load_rc_config $name - -eval ": \${${name}_enable=\"NO\"}" -eval ": \${${name}_types=\"stylus eraser cursor pad touch\"}" -eval ": \${${name}_porttype=\"%%PORTTYPE%%\"}" - -run_rc_command "$1" diff --git a/x11-drivers/input-wacom/pkg-descr b/x11-drivers/input-wacom/pkg-descr deleted file mode 100644 index 228b6cf6f412..000000000000 --- a/x11-drivers/input-wacom/pkg-descr +++ /dev/null @@ -1,14 +0,0 @@ -This package contains the X.Org linuxwacom driver, a Wacom kernel module -and a script to configure Xorg. - -The kernel module is provided by Bartosz Fabianowski <freebsd@chillt.de> and -supports the following devices: - Graphire*, Graphire2*, Graphire3, Graphire4 - Bamboo, Bamboo One*, Bamboo Fun - Intuos3, Cintiq 21UX - Volito*, Volito2* - PenStation2*, PenPartner2* - -* not tested - -WWW: http://linuxwacom.sourceforge.net/ diff --git a/x11-drivers/input-wacom/pkg-plist b/x11-drivers/input-wacom/pkg-plist deleted file mode 100644 index 8db2aafad372..000000000000 --- a/x11-drivers/input-wacom/pkg-plist +++ /dev/null @@ -1,5 +0,0 @@ -bin/xsetwacom -%%XINPUTMODDIR%%/wacom_drv.so -@dirrmtry %%XINPUTMODDIR%% -@cwd %%KMODDIR%% -%%UWACOMKLD%% diff --git a/x11-drivers/xf86-input-wacom/Makefile b/x11-drivers/xf86-input-wacom/Makefile new file mode 100644 index 000000000000..21ce54118e8a --- /dev/null +++ b/x11-drivers/xf86-input-wacom/Makefile @@ -0,0 +1,38 @@ +# $FreeBSD$ + +PORTNAME= xf86-input-wacom +PORTVERSION= 0.24.99.1 +CATEGORIES= x11-drivers +MASTER_SITES= SF/linuxwacom/${PORTNAME} + +MAINTAINER= jbeich@vfemail.net +COMMENT= X.Org Wacom tablet driver + +BUILD_DEPENDS= v4l_compat>=1.0.20110603:${PORTSDIR}/multimedia/v4l_compat +RUN_DEPENDS= webcamd>0:${PORTSDIR}/multimedia/webcamd + +USES= tar:bzip2 pathfix pkgconfig libtool +USE_XORG= xrandr xinerama +XORG_CAT= driver +SUB_FILES= pkg-message +CONFIGURE_ARGS= --without-systemd-unit-dir \ + --without-udev-rules-dir \ + --without-doxygen + +post-patch: + @${REINPLACE_CMD} -e 's/as_fn_error.*udev/${TRUE} &/' \ + -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: + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/xorg/modules/input/wacom_drv.so + ${MKDIR} ${STAGEDIR}${PREFIX}/etc/X11/xorg.conf.d + ${INSTALL_DATA} ${FILESDIR}/wacom.conf.sample \ + ${STAGEDIR}${PREFIX}/etc/X11/xorg.conf.d + +.include <bsd.port.mk> diff --git a/x11-drivers/xf86-input-wacom/distinfo b/x11-drivers/xf86-input-wacom/distinfo new file mode 100644 index 000000000000..008040a4629d --- /dev/null +++ b/x11-drivers/xf86-input-wacom/distinfo @@ -0,0 +1,2 @@ +SHA256 (xorg/driver/xf86-input-wacom-0.24.99.1.tar.bz2) = 4b68b1570bd6ce085010980fa1842825e5d676cd2962ec6ad2d7d5bc52149983 +SIZE (xorg/driver/xf86-input-wacom-0.24.99.1.tar.bz2) = 586002 diff --git a/x11-drivers/xf86-input-wacom/files/patch-src-wcmConfig.c b/x11-drivers/xf86-input-wacom/files/patch-src-wcmConfig.c new file mode 100644 index 000000000000..76f05c9506c1 --- /dev/null +++ b/x11-drivers/xf86-input-wacom/files/patch-src-wcmConfig.c @@ -0,0 +1,19 @@ +--- src/wcmConfig.c~ ++++ src/wcmConfig.c +@@ -307,7 +307,7 @@ out: + */ + static void wcmSplitName(char* devicename, char *basename, char *subdevice, char *tool, size_t len) + { +- char *name = strdupa(devicename); ++ char *name = strdup(devicename); + char *a, *b; + + *basename = *subdevice = *tool = '\0'; +@@ -325,6 +325,7 @@ static void wcmSplitName(char* devicenam + strncat(tool, a+1, len-1); + } + strncat(basename, name, len-1); ++ free(name); + } + + /** diff --git a/x11-drivers/xf86-input-wacom/files/patch-src-wcmISDV4.c b/x11-drivers/xf86-input-wacom/files/patch-src-wcmISDV4.c new file mode 100644 index 000000000000..85c3dd206146 --- /dev/null +++ b/x11-drivers/xf86-input-wacom/files/patch-src-wcmISDV4.c @@ -0,0 +1,83 @@ +--- src/wcmISDV4.c~ ++++ src/wcmISDV4.c +@@ -24,11 +24,16 @@ + #include "xf86Wacom.h" + #include <xf86_OSproc.h> + #include "wcmFilter.h" +-#include <linux/serial.h> + #include "isdv4.h" + #include <unistd.h> + #include <fcntl.h> ++ ++#ifdef __linux__ ++#include <linux/serial.h> + #include <libudev.h> ++#else ++#include <termios.h> ++#endif + + #define RESET_RELATIVE(ds) do { (ds).relwheel = 0; } while (0) + +@@ -192,10 +197,15 @@ static int wcmSerialValidate(InputInfoPt + + static Bool isdv4Detect(InputInfoPtr pInfo) + { +- struct serial_struct ser; + int rc; + ++#ifdef __linux__ ++ struct serial_struct ser; + rc = ioctl(pInfo->fd, TIOCGSERIAL, &ser); ++#else ++ struct termios termAttr; ++ rc = tcgetattr(pInfo->fd, &termAttr); ++#endif + if (rc == -1) + return FALSE; + +@@ -959,6 +969,7 @@ static Bool get_keys_vendor_tablet_id(ch + return TRUE; + } + ++#ifdef __linux__ + /** + * Return the content of id file from sysfs: /sys/.../device/id + * +@@ -1004,6 +1015,7 @@ out: + + return ret; + } ++#endif + + /** + * Query the device's fd for the key bits and the tablet ID. Returns the ID +@@ -1018,11 +1030,16 @@ out: + */ + static int isdv4ProbeKeys(InputInfoPtr pInfo) + { +- struct serial_struct tmp; + WacomDevicePtr priv = (WacomDevicePtr)pInfo->private; + WacomCommonPtr common = priv->common; + ++#ifdef __linux__ ++ struct serial_struct tmp; + if (ioctl(pInfo->fd, TIOCGSERIAL, &tmp) < 0) ++#else ++ struct termios tmp; ++ if (tcgetattr(pInfo->fd, &tmp) < 0) ++#endif + return 0; + + common->tablet_id = 0x90; +@@ -1037,9 +1054,11 @@ static int isdv4ProbeKeys(InputInfoPtr p + common->wcmProtocolLevel = WCM_PROTOCOL_GENERIC; + + if (!get_keys_vendor_tablet_id(pInfo->name, common)) { ++#ifdef __linux__ + char buf[15] = {0}; + if (get_sysfs_id(pInfo, buf, sizeof(buf))) + get_keys_vendor_tablet_id(buf, common); ++#endif + } + + return common->tablet_id; diff --git a/x11-drivers/input-wacom/files/patch-src-wcmUSB.c b/x11-drivers/xf86-input-wacom/files/patch-src-wcmUSB.c index 9f97ad748033..562764977260 100644 --- a/x11-drivers/input-wacom/files/patch-src-wcmUSB.c +++ b/x11-drivers/xf86-input-wacom/files/patch-src-wcmUSB.c @@ -1,15 +1,15 @@ ---- src/wcmUSB.c.orig +--- src/wcmUSB.c~ +++ src/wcmUSB.c @@ -23,10 +23,17 @@ #include "xf86Wacom.h" -+#ifndef __FreeBSD__ ++#ifdef __linux__ #include <asm/types.h> +#endif #include <linux/input.h> #include <sys/utsname.h> -+#ifndef __FreeBSD__ ++#ifdef __linux__ #include <linux/version.h> +#else +#define LINUX_VERSION_CODE 1 diff --git a/x11-drivers/input-wacom/files/patch-src-xf86WacomDefs.h b/x11-drivers/xf86-input-wacom/files/patch-src-xf86WacomDefs.h index dd7f3f5d55e0..ddef2cf9ca88 100644 --- a/x11-drivers/input-wacom/files/patch-src-xf86WacomDefs.h +++ b/x11-drivers/xf86-input-wacom/files/patch-src-xf86WacomDefs.h @@ -1,10 +1,10 @@ ---- src/xf86WacomDefs.h.orig +--- src/xf86WacomDefs.h~ +++ src/xf86WacomDefs.h @@ -24,7 +24,9 @@ * General Defines ****************************************************************************/ #include <wacom-util.h> -+#ifndef __FreeBSD__ ++#ifdef __linux__ #include <asm/types.h> +#endif #include <linux/input.h> diff --git a/x11-drivers/xf86-input-wacom/files/patch-tools-isdv4-serial-debugger.c b/x11-drivers/xf86-input-wacom/files/patch-tools-isdv4-serial-debugger.c new file mode 100644 index 000000000000..67924d646360 --- /dev/null +++ b/x11-drivers/xf86-input-wacom/files/patch-tools-isdv4-serial-debugger.c @@ -0,0 +1,10 @@ +--- tools/isdv4-serial-debugger.c~ ++++ tools/isdv4-serial-debugger.c +@@ -25,7 +25,6 @@ + + #include <errno.h> + #include <fcntl.h> +-#include <linux/serial.h> + #include <getopt.h> + #include <poll.h> + #include <stdio.h> diff --git a/x11-drivers/xf86-input-wacom/files/patch-tools-isdv4-serial-inputattach.c b/x11-drivers/xf86-input-wacom/files/patch-tools-isdv4-serial-inputattach.c new file mode 100644 index 000000000000..4e0deaefe6c3 --- /dev/null +++ b/x11-drivers/xf86-input-wacom/files/patch-tools-isdv4-serial-inputattach.c @@ -0,0 +1,71 @@ +--- tools/isdv4-serial-inputattach.c~ ++++ tools/isdv4-serial-inputattach.c +@@ -23,8 +23,10 @@ + #include "config.h" + #endif + ++#ifdef __linux__ + #include <linux/serio.h> + #include <libudev.h> ++#endif + + #include <getopt.h> + #include <stdio.h> +@@ -49,7 +52,11 @@ static void usage(void) + "--verbose - verbose output\n" + "--version - version info\n" + "--baudrate <19200|38400> - set baudrate\n", ++#ifdef __GLIBC__ + program_invocation_short_name ++#else ++ getprogname() ++#endif + ); + } + +@@ -64,6 +71,7 @@ static int set_line_discipline(int fd, i + return rc; + } + ++#ifdef __linux + static int bind_kernel_driver(int fd) + { + unsigned long devt; +@@ -77,9 +85,11 @@ static int bind_kernel_driver(int fd) + + return 0; + } ++#endif + + int get_baud_rate(int fd) + { ++#ifdef __linux__ + struct stat st; + int baudrate = 19200; + int id; +@@ -112,6 +122,9 @@ int get_baud_rate(int fd) + udev_unref(udev); + + return baudrate; ++#else ++ return 19200; ++#endif + } + + void sighandler(int signum) +@@ -194,6 +207,7 @@ int main(int argc, char **argv) + return 1; + } + ++#ifdef __linux__ + /* some of the 19200 tablets can't set the line discipline */ + set_line_discipline(fd, N_MOUSE); + +@@ -201,6 +215,7 @@ int main(int argc, char **argv) + fprintf(stderr, "Failed to bind the kernel driver.\n"); + goto out; + } ++#endif + + signal(SIGINT, sighandler); + signal(SIGHUP, sighandler); diff --git a/x11-drivers/xf86-input-wacom/files/patch-tools-tools-shared.c b/x11-drivers/xf86-input-wacom/files/patch-tools-tools-shared.c new file mode 100644 index 000000000000..0be5b371c9a5 --- /dev/null +++ b/x11-drivers/xf86-input-wacom/files/patch-tools-tools-shared.c @@ -0,0 +1,34 @@ +--- tools/tools-shared.c~ ++++ tools/tools-shared.c +@@ -23,7 +23,9 @@ + + #include <errno.h> + #include <fcntl.h> ++#ifdef __linux__ + #include <linux/serial.h> ++#endif + #include <getopt.h> + #include <poll.h> + #include <stdio.h> +@@ -51,7 +53,6 @@ void version(void) + int open_device(const char *path) + { + int fd; +- struct serial_struct ser; + + TRACE("Opening device '%s'.\n", path); + fd = open(path, O_RDWR | O_NOCTTY); +@@ -59,7 +60,13 @@ int open_device(const char *path) + if (fd < 1) + perror("Failed to open device file"); + ++#ifdef __linux__ ++ struct serial_struct ser; + if (ioctl(fd, TIOCGSERIAL, &ser) == -1) ++#else ++ struct termios termAttr; ++ if (tcgetattr(fd, &termAttr) == -1) ++#endif + { + perror("Not a serial device?"); + close(fd); diff --git a/x11-drivers/xf86-input-wacom/files/pkg-message.in b/x11-drivers/xf86-input-wacom/files/pkg-message.in new file mode 100644 index 000000000000..248e28d8ef17 --- /dev/null +++ b/x11-drivers/xf86-input-wacom/files/pkg-message.in @@ -0,0 +1,13 @@ +To configure the driver with HAL just reattach the tablet for Xserver +to pick it up. Otherwise, use/edit the sample configuration file: + + $ 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" diff --git a/x11-drivers/xf86-input-wacom/files/wacom.conf.sample b/x11-drivers/xf86-input-wacom/files/wacom.conf.sample new file mode 100644 index 000000000000..fa247118d492 --- /dev/null +++ b/x11-drivers/xf86-input-wacom/files/wacom.conf.sample @@ -0,0 +1,33 @@ +# A static configuration example for Bamboo P&T for use without 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 diff --git a/x11-drivers/xf86-input-wacom/pkg-descr b/x11-drivers/xf86-input-wacom/pkg-descr new file mode 100644 index 000000000000..b5ba31fda32c --- /dev/null +++ b/x11-drivers/xf86-input-wacom/pkg-descr @@ -0,0 +1,4 @@ +An X.Org driver for Wacom tablets. It communicates with a character +device provided by linux kernel driver in webcamd. + +WWW: http://linuxwacom.sourceforge.net/ diff --git a/x11-drivers/xf86-input-wacom/pkg-plist b/x11-drivers/xf86-input-wacom/pkg-plist new file mode 100644 index 000000000000..2d527bea30f9 --- /dev/null +++ b/x11-drivers/xf86-input-wacom/pkg-plist @@ -0,0 +1,19 @@ +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 +@dirrmtry lib/xorg/modules/input +@dirrmtry lib/xorg/modules +@dirrmtry lib/xorg +@dirrmtry include/xorg +@dirrmtry etc/X11/xorg.conf.d +@dirrmtry etc/X11 diff --git a/x11-drivers/xorg-drivers/Makefile b/x11-drivers/xorg-drivers/Makefile index be7537191b95..14930ce67e4a 100644 --- a/x11-drivers/xorg-drivers/Makefile +++ b/x11-drivers/xorg-drivers/Makefile @@ -2,6 +2,7 @@ PORTNAME= xorg-drivers PORTVERSION= 7.7 +PORTREVISION= 1 CATEGORIES= x11-drivers MASTER_SITES= # none DISTFILES= # none @@ -26,7 +27,8 @@ INPUT_DRIVERS= mouse \ penmount \ synaptics \ vmmouse \ - void + void \ + wacom VIDEO_DRIVERS= ati \ mach64 \ |