sync code with last improvements from OpenBSD
This commit is contained in:
commit
88965415ff
26235 changed files with 29195616 additions and 0 deletions
38
driver/xf86-input-joystick/man/Makefile.am
Normal file
38
driver/xf86-input-joystick/man/Makefile.am
Normal file
|
@ -0,0 +1,38 @@
|
|||
#
|
||||
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
# copy of this software and associated documentation files (the "Software"),
|
||||
# to deal in the Software without restriction, including without limitation
|
||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
# and/or sell copies of the Software, and to permit persons to whom the
|
||||
# Software is furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice (including the next
|
||||
# paragraph) shall be included in all copies or substantial portions of the
|
||||
# Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
# DEALINGS IN THE SOFTWARE.
|
||||
#
|
||||
|
||||
drivermandir = $(DRIVER_MAN_DIR)
|
||||
|
||||
driverman_PRE = @DRIVER_NAME@.man
|
||||
|
||||
driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@)
|
||||
|
||||
EXTRA_DIST = @DRIVER_NAME@.man
|
||||
|
||||
CLEANFILES = $(driverman_DATA)
|
||||
|
||||
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) < $< > $@
|
509
driver/xf86-input-joystick/man/Makefile.in
Normal file
509
driver/xf86-input-joystick/man/Makefile.in
Normal file
|
@ -0,0 +1,509 @@
|
|||
# Makefile.in generated by automake 1.12.6 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
#
|
||||
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
# copy of this software and associated documentation files (the "Software"),
|
||||
# to deal in the Software without restriction, including without limitation
|
||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
# and/or sell copies of the Software, and to permit persons to whom the
|
||||
# Software is furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice (including the next
|
||||
# paragraph) shall be included in all copies or substantial portions of the
|
||||
# Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
# DEALINGS IN THE SOFTWARE.
|
||||
#
|
||||
|
||||
VPATH = @srcdir@
|
||||
am__make_dryrun = \
|
||||
{ \
|
||||
am__dry=no; \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
|
||||
| grep '^AM OK$$' >/dev/null || am__dry=yes;; \
|
||||
*) \
|
||||
for am__flg in $$MAKEFLAGS; do \
|
||||
case $$am__flg in \
|
||||
*=*|--*) ;; \
|
||||
*n*) am__dry=yes; break;; \
|
||||
esac; \
|
||||
done;; \
|
||||
esac; \
|
||||
test $$am__dry = yes; \
|
||||
}
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
subdir = man
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_@AM_V@)
|
||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_@AM_V@)
|
||||
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
|
||||
am__install_max = 40
|
||||
am__nobase_strip_setup = \
|
||||
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
|
||||
am__nobase_strip = \
|
||||
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
|
||||
am__nobase_list = $(am__nobase_strip_setup); \
|
||||
for p in $$list; do echo "$$p $$p"; done | \
|
||||
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
|
||||
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
|
||||
if (++n[$$2] == $(am__install_max)) \
|
||||
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
|
||||
END { for (dir in files) print dir, files[dir] }'
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
am__installdirs = "$(DESTDIR)$(drivermandir)"
|
||||
DATA = $(driverman_DATA)
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
|
||||
ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
APP_MAN_DIR = @APP_MAN_DIR@
|
||||
APP_MAN_SUFFIX = @APP_MAN_SUFFIX@
|
||||
AR = @AR@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BASE_CFLAGS = @BASE_CFLAGS@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CHANGELOG_CMD = @CHANGELOG_CMD@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CWARNFLAGS = @CWARNFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
|
||||
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
|
||||
DRIVER_NAME = @DRIVER_NAME@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
FILE_MAN_DIR = @FILE_MAN_DIR@
|
||||
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
|
||||
GREP = @GREP@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_CMD = @INSTALL_CMD@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIB_MAN_DIR = @LIB_MAN_DIR@
|
||||
LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAINT = @MAINT@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MAN_SUBSTS = @MAN_SUBSTS@
|
||||
MISC_MAN_DIR = @MISC_MAN_DIR@
|
||||
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_URL = @PACKAGE_URL@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
|
||||
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRICT_CFLAGS = @STRICT_CFLAGS@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
XORG_CFLAGS = @XORG_CFLAGS@
|
||||
XORG_LIBS = @XORG_LIBS@
|
||||
XORG_MAN_PAGE = @XORG_MAN_PAGE@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
inputdir = @inputdir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
runstatedir = @runstatedir@
|
||||
sbindir = @sbindir@
|
||||
sdkdir = @sdkdir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
drivermandir = $(DRIVER_MAN_DIR)
|
||||
driverman_PRE = @DRIVER_NAME@.man
|
||||
driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@)
|
||||
EXTRA_DIST = @DRIVER_NAME@.man
|
||||
CLEANFILES = $(driverman_DATA)
|
||||
SUFFIXES = .$(DRIVER_MAN_SUFFIX) .man
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .$(DRIVER_MAN_SUFFIX) .man
|
||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --foreign man/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
install-drivermanDATA: $(driverman_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(driverman_DATA)'; test -n "$(drivermandir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(drivermandir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(drivermandir)" || exit 1; \
|
||||
fi; \
|
||||
for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
echo "$$d$$p"; \
|
||||
done | $(am__base_list) | \
|
||||
while read files; do \
|
||||
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(drivermandir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(drivermandir)" || exit $$?; \
|
||||
done
|
||||
|
||||
uninstall-drivermanDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(driverman_DATA)'; test -n "$(drivermandir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
dir='$(DESTDIR)$(drivermandir)'; $(am__uninstall_files_from_dir)
|
||||
tags: TAGS
|
||||
TAGS:
|
||||
|
||||
ctags: CTAGS
|
||||
CTAGS:
|
||||
|
||||
cscope cscopelist:
|
||||
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||
else \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(DATA)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(drivermandir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-drivermanDATA
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-drivermanDATA
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
|
||||
distclean distclean-generic distclean-libtool distdir dvi \
|
||||
dvi-am html html-am info info-am install install-am \
|
||||
install-data install-data-am install-drivermanDATA install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am install-man \
|
||||
install-pdf install-pdf-am install-ps install-ps-am \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
maintainer-clean maintainer-clean-generic mostlyclean \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
uninstall uninstall-am uninstall-drivermanDATA
|
||||
|
||||
|
||||
# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure
|
||||
.man.$(DRIVER_MAN_SUFFIX):
|
||||
$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
|
||||
|
||||
# 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:
|
403
driver/xf86-input-joystick/man/joystick.man
Normal file
403
driver/xf86-input-joystick/man/joystick.man
Normal file
|
@ -0,0 +1,403 @@
|
|||
.\" shorthand for double quote that works everywhere.
|
||||
.ds q \N'34'
|
||||
.TH joystick __drivermansuffix__ __vendorversion__
|
||||
.SH NAME
|
||||
joystick \- Joystick input driver
|
||||
.SH SYNOPSIS
|
||||
Snipped for xorg.conf.d(5):
|
||||
|
||||
.nf
|
||||
.B "Section \*qInputClass\*q"
|
||||
.BI " Identifier \*q" joystick-all \*q
|
||||
.BI " Driver \*q" joystick \*q
|
||||
.BI " Option \*qMatchIsJoystick\*q \*q" on \*q
|
||||
.BI " Option \*qMatchDevicePath\*q \*q" /dev/input/event* \*q
|
||||
\ \ ...
|
||||
.B EndSection
|
||||
.fi
|
||||
|
||||
|
||||
.SH DESCRIPTION
|
||||
.B joystick
|
||||
is an __xservername__ input driver for controlling the pointer with a
|
||||
joystick device.
|
||||
.TP 3
|
||||
Use this driver, if you want to
|
||||
- generate
|
||||
.IR "cursor movement" ,
|
||||
perform button or key events to control desktop and applications
|
||||
|
||||
- generate
|
||||
.I "cursor key events"
|
||||
for playing legacy games, that have no native joystick support
|
||||
|
||||
.TP 3
|
||||
.B Do not use, if you want to
|
||||
- play games, that have native joystick support
|
||||
|
||||
- use XI2 applications. The evdev(4) driver will suffice for those in most cases.
|
||||
|
||||
.PP
|
||||
You may mix above scenarios by setting the device
|
||||
.IR floating .
|
||||
The driver reports relative cursor movement, button and key events,
|
||||
as well as raw axis values through valuators.
|
||||
|
||||
.SH SUPPORTED HARDWARE
|
||||
The joystick input module can be used on top of the following kernel devices:
|
||||
|
||||
.nf
|
||||
.B - Linux's evdev device
|
||||
.B - Linux's joystick device
|
||||
.B - BSD's usbhid device
|
||||
.fi
|
||||
|
||||
Every joystick supported by the kernel should be supported by the
|
||||
.B joystick
|
||||
input driver. The joystick is assumed to be calibrated and reporting axis values
|
||||
between
|
||||
.IR "-32768 " and " 32768" .
|
||||
See the Linux kernel documentation for a complete list of supported devices.
|
||||
|
||||
There is no support for
|
||||
.B force feedback
|
||||
at the moment.
|
||||
|
||||
.SH CONFIGURATION DETAILS
|
||||
Please refer to __xconfigfile__(__filemansuffix__) for general configuration
|
||||
details. This section only covers configuration details specific to this
|
||||
driver.
|
||||
.PP
|
||||
The following Driver
|
||||
.B Options
|
||||
are supported:
|
||||
.TP 7
|
||||
.BI "Option \*qDevice\*q \*q" string \*q
|
||||
.TP 7
|
||||
.BI "Option \*qPath\*q \*q" string \*q
|
||||
Specifies the device through which the joystick can be accessed. This option is mandatory and there is no default setting.
|
||||
|
||||
In Linux, joysticks are usually accessible through
|
||||
.IR /dev/input/jsX " or " /dev/input/eventX .
|
||||
|
||||
In *BSD, joysticks are usually recognized as
|
||||
.IR /dev/uhidX .
|
||||
.TP 7
|
||||
.BI "Option \*qAutoRepeat\*q \*q" "delay rate" \*q
|
||||
Sets the auto repeat behaviour for key events.
|
||||
.I delay
|
||||
is the time in milliseconds before a key starts repeating.
|
||||
.I rate
|
||||
is the number of times a key repeats per second. Default: Xorg default
|
||||
.TP 7
|
||||
.BI "Option \*qDebugLevel\*q \*q" integer \*q
|
||||
Controls the verbosity of the driver for debugging purposes. The higher the DebugLevel, the more output is produced.
|
||||
Default: 0
|
||||
.TP 7
|
||||
.BI "Option \*qMapButton<number>\*q \*q" string \*q
|
||||
Sets the mapping of a joystick button to the desired action. Button counting starts with
|
||||
.IR 1 ,
|
||||
Possible options are:
|
||||
.RS 7
|
||||
.TP 7
|
||||
.B "none"
|
||||
Don't do anything
|
||||
.TP 7
|
||||
.BI "\*qbutton="<number> \*q
|
||||
Generate a pointer button event with button
|
||||
.I number
|
||||
(starting with 1).
|
||||
.TP 7
|
||||
.BI "\*qaxis="[<factor>]<axis> \*q
|
||||
Where
|
||||
.I <axis>
|
||||
is one of:
|
||||
.B x, y, zx, zy
|
||||
|
||||
and
|
||||
.I <factor>
|
||||
is an optional amplifier of the axis, like
|
||||
.B -, +, -5, 0.4, 1.3, ...
|
||||
Negative values invert the direction. Default: 1.0
|
||||
.TP 7
|
||||
.BI "\*qamplify="<factor> \*q
|
||||
Amplifies the movement of all axes by the given factor when this button is held down. Different
|
||||
factors can be combined.
|
||||
.TP 7
|
||||
.BI "\*qkey="<scancode>[,<scancode>[,<scancode>[,<scancode>]]]
|
||||
When button is pressed, a series of keydown events with the specified scancodes is
|
||||
generated. When the button is released, matching keyup events in the opposite
|
||||
order are generated. You can specify up to 4 scancodes per button.
|
||||
|
||||
See special section about key events below.
|
||||
.TP 7
|
||||
.B "\*qdisable-mouse\*q"
|
||||
.TP 7
|
||||
.B "\*qdisable-keys\*q"
|
||||
.TP 7
|
||||
.B "\*qdisable-all\*q"
|
||||
Disables either the generation of mouse events, key events or the generation of
|
||||
all X events by the driver. Press button again to allow the driver to generate
|
||||
events again.
|
||||
|
||||
You may also set the device
|
||||
.B floating
|
||||
from client space to prevent it from generating core events.
|
||||
.RE
|
||||
.PP
|
||||
.TP 7
|
||||
.BI "Option \*qMapAxis<number>\*q \*q" string \*q
|
||||
Sets the mapping of the axis to the desired action. Axis counting starts with
|
||||
.IR 1 ,
|
||||
the parameter may contain:
|
||||
.RS 7
|
||||
.TP 7
|
||||
.BI "\*qmode="<string> \*q
|
||||
Where
|
||||
.I <string>
|
||||
can be one of:
|
||||
|
||||
.B none, relative, accelerated, absolute
|
||||
|
||||
.TP 7
|
||||
.B \*qvaluator\*q
|
||||
Send extra valuator events for this axis. The valuators will be numbered ascending, starting with 2 (valuator 0 and 1 are reserved for pointer movement). Please consider using the evdev(4) input driver if you are only interested in XI2 features.
|
||||
|
||||
The range of the valuators is always
|
||||
.IR -32767 " to " 32768 .
|
||||
Neither
|
||||
.B mode
|
||||
nor
|
||||
.B axis
|
||||
needs to be set to generate extra valuator events. The axis will be labelled according to its physical axis number, beginning with
|
||||
.I 1
|
||||
, e.g.
|
||||
.I \*qAxis 1\*q
|
||||
for the first axis (being the 3rd valuator).
|
||||
Default: not set.
|
||||
.TP 7
|
||||
.BI "\*qaxis="[<factor>]<axis> \*q
|
||||
Where
|
||||
.I <axis>
|
||||
is one of:
|
||||
.B x, y, zx, zy, key (see keylow/keyhigh)
|
||||
|
||||
and
|
||||
.I <factor>
|
||||
is an optional amplifier of the axis, like
|
||||
.B -, +, -5, 0.4, 1.3, ...
|
||||
Negative values will invert the movement. Default: 1.0
|
||||
.TP 7
|
||||
.BI "\*qkeylow="<scancode>[,<scancode>[,<scancode>[,<scancode>]]]
|
||||
.TP 7
|
||||
.BI "\*qkeyhigh="<scancode>[,<scancode>[,<scancode>[,<scancode>]]]
|
||||
When the axis is moved out of the deadzone, a series of keydown events according
|
||||
to the direction of the movement is generated. When the axis is released, matching keyup
|
||||
events in opposite order will be generated. You can specify up to 4 scancodes for each direction.
|
||||
|
||||
.B keylow
|
||||
defines the keys to be generated when the axis is moved in negative direction (left or up),
|
||||
.B keyhigh
|
||||
defines the keys to be generated when the axis is moved in positive direction (right or down).
|
||||
|
||||
If
|
||||
.B mode
|
||||
is set to
|
||||
.IR relative :
|
||||
The driver will emulate autorepeat according to the current value of the axis. A keydown and subsequent keyup event will be generated in short time intervals. To modify that interval and the autorepeat speed, supply the
|
||||
.BI "\*qaxis="[<factor>]KEY \*q
|
||||
parameter.
|
||||
|
||||
If
|
||||
.B mode
|
||||
is set to
|
||||
.IR accelerated :
|
||||
Keydown and keyup events will be generated repeatedly. The time between a keydown and a keyup event corresponds to the deflection of the axis.
|
||||
If the axis is deflected by 30%, the key will be considered to be down 300ms out of 1 second. The exact intervals may vary and can be adjusted with the
|
||||
.I amplify
|
||||
parameter. If the axis is deflected by 100%, there will only be one keydown event, so the key is considered down all the time.
|
||||
The keys will be autorepeated according to the Xorg keyboard settings.
|
||||
|
||||
See special section about key events below.
|
||||
.TP 7
|
||||
.BI "\*qdeadzone="<number> \*q
|
||||
Sets the unresponsive range of the axis to
|
||||
.IR <number> .
|
||||
This can be between
|
||||
.IR "0" " and " "30000" .
|
||||
Default: 5000
|
||||
.RE
|
||||
.PP
|
||||
.TP 7
|
||||
.BI "Option \*qStartKeysEnabled\*q \*q" "boolean" \*q
|
||||
Set to
|
||||
.I False
|
||||
to disable key event generation after startup. You can toggle key event generation with the
|
||||
.I disable-keys
|
||||
button mapping. Default: enabled
|
||||
.TP 7
|
||||
.BI "Option \*qStartMouseEnabled\*q \*q" "boolean" \*q
|
||||
Set to
|
||||
.I False
|
||||
to disable mouse event generation after startup. You can toggle mouse event generation with the
|
||||
.I disable-mouse
|
||||
button mapping. Default: enabled
|
||||
.RE
|
||||
.PP
|
||||
|
||||
|
||||
.SH "DEFAULT CONFIGURATION"
|
||||
The default configuration is as follows:
|
||||
|
||||
.nf
|
||||
.BI " Option \*qDebugLevel\*q \*q" 0 \*q
|
||||
.BI " Option \*qStartKeysEnabled\*q \*q" True \*q
|
||||
.BI " Option \*qStartMouseEnabled\*q \*q" True \*q
|
||||
.BI " Option \*qMapButton1\*q \*q" button=1 \*q
|
||||
.BI " Option \*qMapButton2\*q \*q" button=2 \*q
|
||||
.BI " Option \*qMapButton3\*q \*q" button=3 \*q
|
||||
.BI " Option \*qMapButton4\*q \*q" none \*q
|
||||
\ \ ...
|
||||
.BI " Option \*qMapAxis1\*q \*q" "mode=relative axis=+1x deadzone=5000" \*q
|
||||
.BI " Option \*qMapAxis2\*q \*q" "mode=relative axis=+1y deadzone=5000" \*q
|
||||
.BI " Option \*qMapAxis3\*q \*q" "mode=relative axis=+1zx deadzone=5000" \*q
|
||||
.BI " Option \*qMapAxis4\*q \*q" "mode=relative axis=+1zy deadzone=5000" \*q
|
||||
.BI " Option \*qMapAxis5\*q \*q" "mode=accelerated axis=+1x deadzone=5000" \*q
|
||||
.BI " Option \*qMapAxis6\*q \*q" "mode=accelerated axis=+1y deadzone=5000" \*q
|
||||
.BI " Option \*qMapAxis7\*q \*q" "mode=none" \*q
|
||||
\ \ ...
|
||||
.fi
|
||||
|
||||
.SH "ACCELERATED AXIS CONFIGURATION"
|
||||
.B Accelerated
|
||||
mode should be selected, if the axis is a
|
||||
.IR "directional pad" ,
|
||||
which reports only three states: negative, center, positive. It will result in smoothly accelerated movement
|
||||
when the axis is deflected. An optional factor will affect the acceleration and final speed.
|
||||
|
||||
This example will set up the axis as scrolling vertically inverted, with half the speed:
|
||||
.nf
|
||||
.BI " Option \*qMapAxis1\*q \*q" "mode=accelerated axis=-0.5zy" \*q
|
||||
.fi
|
||||
|
||||
This example maps four buttons to the four pointer directions, so you can use the buttons like a d-pad. The movement will be accelerated
|
||||
with half the normal speed:
|
||||
.nf
|
||||
.BI " Option \*qMapButton1\*q \*q" "axis=+0.5x" \*q
|
||||
.BI " Option \*qMapButton2\*q \*q" "axis=-0.5x" \*q
|
||||
.BI " Option \*qMapButton3\*q \*q" "axis=+0.5y" \*q
|
||||
.BI " Option \*qMapButton4\*q \*q" "axis=-0.5y" \*q
|
||||
.fi
|
||||
|
||||
.SH "ABSOLUTE AXIS CONFIGURATION"
|
||||
In
|
||||
.B absolute
|
||||
axis mode, the
|
||||
.I position of the cursor will match the
|
||||
.I position of the configured axis, but relative to the previous position of the cursor. You can specify the range in which the cursor can move. The default range is the screen size.
|
||||
|
||||
In this example the first axis gets a range from left to the right of the screen. The second axis gets a
|
||||
total range of 200 pixels, 100 to the top and 100 to the bottom:
|
||||
.nf
|
||||
.BI " Option \*qMapAxis1\*q \*q" "mode=absolute axis=x" \*q
|
||||
.BI " Option \*qMapAxis2\*q \*q" "mode=absolute axis=200y" \*q
|
||||
.fi
|
||||
|
||||
.SH "GENERATING KEY EVENTS"
|
||||
Providing a \*qkey=<scancode>[,<scancode>[...]]\*q option will generate X Events with specified scancodes. When the button/axis is released, the keys will be released in opposite order.
|
||||
|
||||
If you want a certain KeySym, look up the matching scancode using
|
||||
.BR "xmodmap -pk" .
|
||||
The scancodes depend on the configured keyboard layout. You can also use unused keycodes and map them to a KeySym of your choice using xmodmap(1).
|
||||
|
||||
You can specify up to 4 scancodes per joystick button/axis, which can be used for modificators to get the KeySym you want.
|
||||
|
||||
Examples:
|
||||
.nf
|
||||
.BI " Option \*qMapButton1\*q \*q" "key=64,23" \*q
|
||||
.fi
|
||||
will generate
|
||||
.I "Alt_L+Tab"
|
||||
when the button is pressed.
|
||||
|
||||
.nf
|
||||
.BI " Option \*qMapButton1\*q \*q" "key=50,40" \*q
|
||||
.fi
|
||||
will generate a
|
||||
.I "Shift_L+d"
|
||||
which will result in an uppercase
|
||||
.IR d .
|
||||
|
||||
.nf
|
||||
.BI " Option \*qMapButton1\*q \*q" "key=65" \*q
|
||||
.fi
|
||||
will result in a
|
||||
.IR "space " key.
|
||||
|
||||
.nf
|
||||
.BI " Option \*qMapAxis1\*q \*q" "mode=relative keylow=113 keyhigh=114 axis=0.5key" \*q
|
||||
.BI " Option \*qMapAxis2\*q \*q" "mode=relative keylow=111 keyhigh=116" \*q
|
||||
.BI " Option \*qMapAxis3\*q \*q" "mode=accelerated keylow=113 keyhigh=114" \*q
|
||||
.BI " Option \*qMapAxis4\*q \*q" "mode=accelerated keylow=111 keyhigh=116" \*q
|
||||
.fi
|
||||
will map the first and third axis to the arrow keys
|
||||
.IR left " and " right
|
||||
and the second and fourth axis to the arrow keys
|
||||
.IR up " and " down .
|
||||
|
||||
The keys for the first two axes will be generated in an interval according to the value of the axis. The autorepeat speed of the first axis will be half the speed of that of the second axis.
|
||||
The keys for the third and fourth axis are generated once when the axis moves out of the deadzone and when it moves back into the deadzone. X.Org will autorepeat those keys according to current keyboard settings.
|
||||
|
||||
.SH "XI2 Events"
|
||||
If you only care about raw valuator events instead of using the joystick to control the cursor, consider using the evdev(4)
|
||||
input driver. If you still use the
|
||||
.B joystick
|
||||
driver for raw events, make sure to unmap all axes/buttons and add the
|
||||
.B valuator
|
||||
option to the axes:
|
||||
|
||||
.nf
|
||||
.BI " Option \*qMapAxis1\*q \*q" "mode=none valuator" \*q
|
||||
.BI " Option \*qMapAxis2\*q \*q" "mode=none valuator" \*q
|
||||
.BI " Option \*qMapAxis3\*q \*q" "mode=none valuator" \*q
|
||||
.BI " Option \*qMapAxis4\*q \*q" "mode=none valuator" \*q
|
||||
\ \ ...
|
||||
.BI " Option \*qMapButton1\*q \*q" "button=1" \*q
|
||||
.BI " Option \*qMapButton2\*q \*q" "button=2" \*q
|
||||
.BI " Option \*qMapButton3\*q \*q" "button=3" \*q
|
||||
.BI " Option \*qMapButton4\*q \*q" "button=4" \*q
|
||||
.BI " Option \*qMapButton5\*q \*q" "button=5" \*q
|
||||
\ \ ...
|
||||
.fi
|
||||
|
||||
Remember, that valuators 0 and 1 are reserved for pointer movement, additional axes will start with valuator 2.
|
||||
|
||||
You might also want to set the device "floating" to stop it from reporting core events:
|
||||
.nf
|
||||
.BI " Option \*qFloating\*q \*q" "true" \*q
|
||||
.fi
|
||||
|
||||
.SH "NOTES"
|
||||
It is not recommended to enable the
|
||||
.B joystick
|
||||
input driver by default unless explicitly requested by the user.
|
||||
|
||||
Configuration through
|
||||
.I InputClass
|
||||
sections is recommended in X servers 1.8 and later. See xorg.conf.d(5) for more details. An example xorg.conf.d(5) snipped is provided in
|
||||
.I ${sourcecode}/config/50-joystick-all.conf
|
||||
|
||||
|
||||
Configuration through hal fdi files is recommended in X servers 1.5,
|
||||
1.6 and 1.7. An example hal policy file is still provided in
|
||||
.I ${sourcecode}/config/50-x11-input-joystick.fdi
|
||||
to be placed in
|
||||
.IR /etc/hal/fdi/policy .
|
||||
|
||||
|
||||
.SH "SEE ALSO"
|
||||
__xservername__(__appmansuffix__), __xconfigfile__(__filemansuffix__), xorg.conf.d(5), Xserver(__appmansuffix__), X(__miscmansuffix__), xmodmap(1)
|
||||
.SH AUTHORS
|
||||
Sascha Hlusiak (2007-2012),
|
||||
.fi
|
||||
Frederic Lepied (1995-1999)
|
Loading…
Add table
Add a link
Reference in a new issue