libXi 1.1.3
This commit is contained in:
parent
f68d10dc1f
commit
3d6019abca
@ -1,10 +1,126 @@
|
||||
commit 540b4cc6f5657c870079b4bf883c9297ab434d71
|
||||
commit 0239ef13d66113024066b7db8ade3942af563656
|
||||
Author: Eric Anholt <eric@anholt.net>
|
||||
Date: Wed Sep 5 09:45:20 2007 -0700
|
||||
|
||||
Bump version to 1.1.3.
|
||||
|
||||
commit 235b283ef6eda4591c95b4749d0a8cd0181783a6
|
||||
Author: James Cloos <cloos@jhcloos.com>
|
||||
Date: Mon Sep 3 05:53:41 2007 -0400
|
||||
|
||||
Add *~ to .gitignore to skip patch/emacs droppings
|
||||
|
||||
commit 89d7e38124cdb34c55f8c28680725b5b645fe106
|
||||
Author: Eric S. Raymond <esr@thyrsus.com>
|
||||
Date: Sun Jan 14 10:51:00 2007 -0800
|
||||
|
||||
Bug #9659: Bad markup on XListInputDevices.3x
|
||||
|
||||
X.Org Bugzilla #9659 <https://bugs.freedesktop.org/show_bug.cgi?id=9659>
|
||||
|
||||
commit bf01e98979e6fa500f74d882c1b21746c60d5d31
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Wed Nov 8 16:20:34 2006 +0200
|
||||
Date: Wed Aug 1 05:16:45 2007 +0300
|
||||
|
||||
bump to 1.0.2
|
||||
XSetDeviceFocus: Add missing extension check
|
||||
|
||||
Actually check for Xi existing before we try to do anything fancy.
|
||||
|
||||
commit f0f5fb7b4eb685094fc64aa1b46573991e84589f
|
||||
commit 8f5f7e9d6fc288a5cc00df3a7fec44211cdbe8f4
|
||||
Author: David Weinehall <tao@debian.org>
|
||||
Date: Wed Aug 1 05:12:21 2007 +0300
|
||||
|
||||
XGetSelectedExtensionEvents: Still more locking bugs
|
||||
|
||||
Fix a couple more return-without-unlocks.
|
||||
|
||||
commit a07c3cc1eec0427a056414ef44ef6ee4204df383
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Wed Aug 1 03:03:44 2007 +0300
|
||||
|
||||
XChangeDeviceControl: Fix completely broken locking
|
||||
|
||||
Drop the display lock when we exit from XChangeDeviceControl(), instead of
|
||||
leaking it.
|
||||
|
||||
commit 7f1b5257b7eb0c873988c33453c110fc5f9996dd
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Wed Aug 1 01:59:17 2007 +0300
|
||||
|
||||
Bump to 1.1.2
|
||||
|
||||
commit 257345a0500ef0b7cf8e56f19a8bf93721408673
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Wed Aug 1 01:37:05 2007 +0300
|
||||
|
||||
DevicePresenceNotify: Don't make non-static function, static
|
||||
|
||||
I wish that there was a better way to do this, but c'est la vie. It's our
|
||||
exposed API, so we've just got to deal for now.
|
||||
|
||||
commit 9d0aa39742a0d1d4221ad4104708b0f8f60c14c7
|
||||
Author: Peter Hutterer <peter@cs.unisa.edu.au>
|
||||
Date: Thu Jul 5 10:47:45 2007 +0930
|
||||
|
||||
Bump to version 1.1.1.
|
||||
|
||||
commit ddc3b9cbbcc892a48dce2bd441e6d404cd44d943
|
||||
Author: Peter Hutterer <peter@cs.unisa.edu.au>
|
||||
Date: Wed Jun 13 15:36:01 2007 +0930
|
||||
|
||||
Bug 9657: Bad markup on XGrabDeviceKey.3x
|
||||
|
||||
<https://bugs.freedesktop.org/show_bug.cgi?id=9657>
|
||||
|
||||
commit c8696a5230c565f8999fea136a85a875b04e7b9a
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Wed Dec 6 18:56:56 2006 +0200
|
||||
|
||||
Makefile.am: make ChangeLog hook safer
|
||||
|
||||
Make ChangeLog hook as safe as possible.
|
||||
|
||||
commit 60dccd9a7be95e35b4b8c90934888efedfde84cc
|
||||
Author: Jamey Sharp <jamey@minilop.net>
|
||||
Date: Sun Nov 19 01:04:26 2006 -0800
|
||||
|
||||
Bug #8663: _XiCheckExtInit must drop the Display lock in all error cases.
|
||||
|
||||
commit 41710257257939b181a1615937610550b40621b9
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Wed Nov 8 16:19:58 2006 +0200
|
||||
|
||||
DevicePresenceNotify: remove verbosity, fill out all fields
|
||||
Don't throw a printf every time we get a DPN, and fill in all the fields
|
||||
when copying the structure.
|
||||
|
||||
commit eeebae55766bd4c0121479a7b7188d6a0545f66c
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Sat Oct 21 12:08:21 2006 +0300
|
||||
|
||||
re-enable iscore in DEVICE_CORE, re-enable DEVICE_ENABLE
|
||||
|
||||
commit 50c88082ba2ee4785f4beaa351f2b772f1a381ad
|
||||
Author: Zephaniah E. Hull <warp@agamemnon.b5>
|
||||
Date: Sat Oct 21 04:01:46 2006 -0400
|
||||
|
||||
Comment out DEVICE_ENABLE, and use of iscore in the DEVICE_CORE control.
|
||||
(We now compile again.)
|
||||
|
||||
Track the DEVICE_TOUCHSCREEN -> DEVICE_ABS_CALIB and new DEVICE_ABS_AREA
|
||||
changes to the input protocol.
|
||||
|
||||
commit 2a3f042241bb63601f5745f397bb1b66ecc5a592
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Fri Oct 20 00:39:50 2006 +0300
|
||||
|
||||
add DEVICE_ENABLE control, add iscore to DEVICE_CORE
|
||||
|
||||
Add DEVICE_ENABLE for enabling/disabling devices, and an 'iscore'
|
||||
flag to DEVICE_CORE that specifies whether or not the device is a
|
||||
virtual core device.
|
||||
|
||||
commit c27e00ceceed3fea011c98c0e70ab568bf0687c6
|
||||
Author: Jamey Sharp <jamey@minilop.net>
|
||||
Date: Sun Oct 15 00:26:21 2006 -0700
|
||||
|
||||
@ -17,7 +133,77 @@ Date: Sun Oct 15 00:26:21 2006 -0700
|
||||
|
||||
Thanks to Magnus Kessler <Magnus.Kessler@gmx.net> for identifying
|
||||
the bug and proposing a workaround.
|
||||
(cherry picked from c27e00ceceed3fea011c98c0e70ab568bf0687c6 commit)
|
||||
|
||||
commit 5dda1e1509d40ef64ebc816ce538cef462a4fa51
|
||||
Author: Jamey Sharp <jamey@minilop.net>
|
||||
Date: Sun Oct 15 00:03:57 2006 -0700
|
||||
|
||||
Don't call XInput_find_display in _XiGetExtensionVersion, while the Display lock is held.
|
||||
|
||||
_XiGetExtensionVersion has two callers. One had already called
|
||||
XInput_find_display, and the other could easily do so outside the
|
||||
Display lock. So I change the _XiGetExtensionVersion interface to
|
||||
accept a previously-computed XExtDisplayInfo from the caller.
|
||||
Besides being more correct, this should be slightly faster. :-)
|
||||
|
||||
Thanks to Magnus Kessler <Magnus.Kessler@gmx.net> for identifying
|
||||
the bug and proposing a workaround.
|
||||
|
||||
commit 8e317d390d1ef8f2c072957355b5d71db3b89c43
|
||||
Author: Jamey Sharp <jamey@minilop.net>
|
||||
Date: Sat Oct 14 23:56:20 2006 -0700
|
||||
|
||||
Add *.o to .gitignore.
|
||||
|
||||
commit 6e08a76fd8e356f98d2d6913f0c1b1401090768d
|
||||
Merge: ba84e84... 360ceac...
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Sun Sep 24 20:02:24 2006 +0300
|
||||
|
||||
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/lib/libXi
|
||||
|
||||
commit ba84e84575b4167b0c6298e86a860b0741e2d2a3
|
||||
Merge: 93d3c2c... 576c579...
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Sun Sep 24 19:58:56 2006 +0300
|
||||
|
||||
Merge branch 'input-hotplug'
|
||||
|
||||
commit 360ceacb2a3cbad1652d1b02d79b24469db2980a
|
||||
Author: Drew Parsons <dparsons@debian.org>
|
||||
Date: Mon Aug 14 14:10:52 2006 -0700
|
||||
|
||||
Bug 7855/Patch 6530: incorrect manpage section suffix
|
||||
|
||||
Bug 7855 <https://bugs.freedesktop.org/show_bug.cgi?id=7855>
|
||||
Patch 6530 <https://bugs.freedesktop.org/attachment.cgi?id=6530>
|
||||
Based on patch by Fabio M. Di Nitto c/- Colin Watson, Debian Bug#377204.
|
||||
|
||||
commit 576c5794cf4b786dfc183c9b6f0a387cad4a5460
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Tue Jul 18 11:46:02 2006 -0400
|
||||
|
||||
bump version to 1.1.0, require inputproto 1.4
|
||||
Bump the version to 1.1.0, and make sure we build with inputproto 1.4,
|
||||
for the DEVICE_{TOUCHSCREEN,CORE} controls, and DevicePresenceNotify.
|
||||
|
||||
commit b22d8d0e1519d3f86474f4a79f3c4b27b46c662a
|
||||
Author: Daniel Stone <krh@redhat.com>
|
||||
Date: Tue Jul 18 11:45:07 2006 -0400
|
||||
|
||||
add DevicePresenceNotify event
|
||||
Add a DevicePresenceNotify event, which notes that something about the
|
||||
device list changed.
|
||||
|
||||
commit 878d9e76764d27f5af861817b46b2caf2d89d7c4
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Tue Jul 18 11:43:24 2006 -0400
|
||||
|
||||
add sensible DEVICE_TOUCHSCREEN and DEVICE_CORE controls
|
||||
Add a more sensible DEVICE_TOUCHSCREEN control, which allows you to
|
||||
clip the x and y values.
|
||||
Add a DEVICE_CORE control, which toggles the sending of core events
|
||||
by extended devices.
|
||||
|
||||
commit 93d3c2c45ccd9a806342746c4df33c684a284dd6
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
|
@ -1,8 +1,8 @@
|
||||
Installation Instructions
|
||||
*************************
|
||||
|
||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
|
||||
Software Foundation, Inc.
|
||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
|
||||
2006 Free Software Foundation, Inc.
|
||||
|
||||
This file is free documentation; the Free Software Foundation gives
|
||||
unlimited permission to copy, distribute and modify it.
|
||||
@ -10,7 +10,10 @@ unlimited permission to copy, distribute and modify it.
|
||||
Basic Installation
|
||||
==================
|
||||
|
||||
These are generic installation instructions.
|
||||
Briefly, the shell commands `./configure; make; make install' should
|
||||
configure, build, and install this package. The following
|
||||
more-detailed instructions are generic; see the `README' file for
|
||||
instructions specific to this package.
|
||||
|
||||
The `configure' shell script attempts to guess correct values for
|
||||
various system-dependent variables used during compilation. It uses
|
||||
@ -23,9 +26,9 @@ debugging `configure').
|
||||
|
||||
It can also use an optional file (typically called `config.cache'
|
||||
and enabled with `--cache-file=config.cache' or simply `-C') that saves
|
||||
the results of its tests to speed up reconfiguring. (Caching is
|
||||
the results of its tests to speed up reconfiguring. Caching is
|
||||
disabled by default to prevent problems with accidental use of stale
|
||||
cache files.)
|
||||
cache files.
|
||||
|
||||
If you need to do unusual things to compile the package, please try
|
||||
to figure out how `configure' could check whether to do them, and mail
|
||||
@ -35,20 +38,17 @@ some point `config.cache' contains results you don't want to keep, you
|
||||
may remove or edit it.
|
||||
|
||||
The file `configure.ac' (or `configure.in') is used to create
|
||||
`configure' by a program called `autoconf'. You only need
|
||||
`configure.ac' if you want to change it or regenerate `configure' using
|
||||
a newer version of `autoconf'.
|
||||
`configure' by a program called `autoconf'. You need `configure.ac' if
|
||||
you want to change it or regenerate `configure' using a newer version
|
||||
of `autoconf'.
|
||||
|
||||
The simplest way to compile this package is:
|
||||
|
||||
1. `cd' to the directory containing the package's source code and type
|
||||
`./configure' to configure the package for your system. If you're
|
||||
using `csh' on an old version of System V, you might need to type
|
||||
`sh ./configure' instead to prevent `csh' from trying to execute
|
||||
`configure' itself.
|
||||
`./configure' to configure the package for your system.
|
||||
|
||||
Running `configure' takes awhile. While running, it prints some
|
||||
messages telling which features it is checking for.
|
||||
Running `configure' might take a while. While running, it prints
|
||||
some messages telling which features it is checking for.
|
||||
|
||||
2. Type `make' to compile the package.
|
||||
|
||||
@ -78,7 +78,7 @@ details on some of the pertinent environment variables.
|
||||
by setting variables in the command line or in the environment. Here
|
||||
is an example:
|
||||
|
||||
./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
|
||||
./configure CC=c99 CFLAGS=-g LIBS=-lposix
|
||||
|
||||
*Note Defining Variables::, for more details.
|
||||
|
||||
@ -87,17 +87,15 @@ Compiling For Multiple Architectures
|
||||
|
||||
You can compile the package for more than one kind of computer at the
|
||||
same time, by placing the object files for each architecture in their
|
||||
own directory. To do this, you must use a version of `make' that
|
||||
supports the `VPATH' variable, such as GNU `make'. `cd' to the
|
||||
own directory. To do this, you can use GNU `make'. `cd' to the
|
||||
directory where you want the object files and executables to go and run
|
||||
the `configure' script. `configure' automatically checks for the
|
||||
source code in the directory that `configure' is in and in `..'.
|
||||
|
||||
If you have to use a `make' that does not support the `VPATH'
|
||||
variable, you have to compile the package for one architecture at a
|
||||
time in the source code directory. After you have installed the
|
||||
package for one architecture, use `make distclean' before reconfiguring
|
||||
for another architecture.
|
||||
With a non-GNU `make', it is safer to compile the package for one
|
||||
architecture at a time in the source code directory. After you have
|
||||
installed the package for one architecture, use `make distclean' before
|
||||
reconfiguring for another architecture.
|
||||
|
||||
Installation Names
|
||||
==================
|
||||
@ -190,12 +188,12 @@ them in the `configure' command line, using `VAR=value'. For example:
|
||||
./configure CC=/usr/local2/bin/gcc
|
||||
|
||||
causes the specified `gcc' to be used as the C compiler (unless it is
|
||||
overridden in the site shell script). Here is a another example:
|
||||
overridden in the site shell script).
|
||||
|
||||
/bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
|
||||
an Autoconf bug. Until the bug is fixed you can use this workaround:
|
||||
|
||||
Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
|
||||
configuration-related scripts to be executed by `/bin/bash'.
|
||||
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
|
||||
`configure' Invocation
|
||||
======================
|
||||
|
@ -14,6 +14,6 @@ CLEANFILES = ChangeLog
|
||||
.PHONY: ChangeLog
|
||||
|
||||
ChangeLog:
|
||||
GIT_DIR=${srcdir}/.git git-log > ChangeLog
|
||||
(GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || (touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
|
||||
|
||||
dist-hook: ChangeLog
|
||||
|
177
lib/libXi/config.sub
vendored
177
lib/libXi/config.sub
vendored
@ -1,9 +1,9 @@
|
||||
#! /bin/sh
|
||||
# Configuration validation subroutine script.
|
||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
||||
# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
|
||||
|
||||
timestamp='2005-07-08'
|
||||
timestamp='2003-07-04'
|
||||
|
||||
# This file is (in principle) common to ALL GNU software.
|
||||
# The presence of a machine in this file suggests that SOME GNU software
|
||||
@ -21,15 +21,14 @@ timestamp='2005-07-08'
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
|
||||
# 02110-1301, USA.
|
||||
#
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
# Boston, MA 02111-1307, USA.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
|
||||
# Please send patches to <config-patches@gnu.org>. Submit a context
|
||||
# diff and a properly formatted ChangeLog entry.
|
||||
#
|
||||
@ -71,7 +70,7 @@ Report bugs and patches to <config-patches@gnu.org>."
|
||||
version="\
|
||||
GNU config.sub ($timestamp)
|
||||
|
||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
|
||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This is free software; see the source for copying conditions. There is NO
|
||||
@ -84,11 +83,11 @@ Try \`$me --help' for more information."
|
||||
while test $# -gt 0 ; do
|
||||
case $1 in
|
||||
--time-stamp | --time* | -t )
|
||||
echo "$timestamp" ; exit ;;
|
||||
echo "$timestamp" ; exit 0 ;;
|
||||
--version | -v )
|
||||
echo "$version" ; exit ;;
|
||||
echo "$version" ; exit 0 ;;
|
||||
--help | --h* | -h )
|
||||
echo "$usage"; exit ;;
|
||||
echo "$usage"; exit 0 ;;
|
||||
-- ) # Stop option processing
|
||||
shift; break ;;
|
||||
- ) # Use stdin as input.
|
||||
@ -100,7 +99,7 @@ while test $# -gt 0 ; do
|
||||
*local*)
|
||||
# First pass through any local machine types.
|
||||
echo $1
|
||||
exit ;;
|
||||
exit 0;;
|
||||
|
||||
* )
|
||||
break ;;
|
||||
@ -119,8 +118,7 @@ esac
|
||||
# Here we must recognize all the valid KERNEL-OS combinations.
|
||||
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
|
||||
case $maybe_os in
|
||||
nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
|
||||
kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
|
||||
nto-qnx* | linux-gnu* | kfreebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
|
||||
os=-$maybe_os
|
||||
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
|
||||
;;
|
||||
@ -146,7 +144,7 @@ case $os in
|
||||
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
|
||||
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
|
||||
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
|
||||
-apple | -axis | -knuth | -cray)
|
||||
-apple | -axis)
|
||||
os=
|
||||
basic_machine=$1
|
||||
;;
|
||||
@ -230,16 +228,14 @@ case $basic_machine in
|
||||
| a29k \
|
||||
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
|
||||
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
|
||||
| am33_2.0 \
|
||||
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
|
||||
| bfin \
|
||||
| c4x | clipper \
|
||||
| d10v | d30v | dlx | dsp16xx \
|
||||
| fr30 | frv \
|
||||
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
|
||||
| i370 | i860 | i960 | ia64 \
|
||||
| ip2k | iq2000 \
|
||||
| m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
|
||||
| ip2k \
|
||||
| m32r | m68000 | m68k | m88k | mcore \
|
||||
| mips | mipsbe | mipseb | mipsel | mipsle \
|
||||
| mips16 \
|
||||
| mips64 | mips64el \
|
||||
@ -248,37 +244,30 @@ case $basic_machine in
|
||||
| mips64vr4100 | mips64vr4100el \
|
||||
| mips64vr4300 | mips64vr4300el \
|
||||
| mips64vr5000 | mips64vr5000el \
|
||||
| mips64vr5900 | mips64vr5900el \
|
||||
| mipsisa32 | mipsisa32el \
|
||||
| mipsisa32r2 | mipsisa32r2el \
|
||||
| mipsisa64 | mipsisa64el \
|
||||
| mipsisa64r2 | mipsisa64r2el \
|
||||
| mipsisa64sb1 | mipsisa64sb1el \
|
||||
| mipsisa64sr71k | mipsisa64sr71kel \
|
||||
| mipstx39 | mipstx39el \
|
||||
| mn10200 | mn10300 \
|
||||
| ms1 \
|
||||
| msp430 \
|
||||
| ns16k | ns32k \
|
||||
| or32 \
|
||||
| openrisc | or32 \
|
||||
| pdp10 | pdp11 | pj | pjl \
|
||||
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
|
||||
| pyramid \
|
||||
| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
|
||||
| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
|
||||
| sh64 | sh64le \
|
||||
| sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
|
||||
| sparcv8 | sparcv9 | sparcv9b \
|
||||
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
|
||||
| strongarm \
|
||||
| tahoe | thumb | tic4x | tic80 | tron \
|
||||
| v850 | v850e \
|
||||
| we32k \
|
||||
| x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
|
||||
| x86 | xscale | xstormy16 | xtensa \
|
||||
| z8k)
|
||||
basic_machine=$basic_machine-unknown
|
||||
;;
|
||||
m32c)
|
||||
basic_machine=$basic_machine-unknown
|
||||
;;
|
||||
m6811 | m68hc11 | m6812 | m68hc12)
|
||||
# Motorola 68HC11/12.
|
||||
basic_machine=$basic_machine-unknown
|
||||
@ -303,22 +292,22 @@ case $basic_machine in
|
||||
| a29k-* \
|
||||
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
|
||||
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
|
||||
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
|
||||
| alphapca5[67]-* | alpha64pca5[67]-* | amd64-* | arc-* \
|
||||
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
|
||||
| avr-* \
|
||||
| bfin-* | bs2000-* \
|
||||
| bs2000-* \
|
||||
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
|
||||
| clipper-* | craynv-* | cydra-* \
|
||||
| clipper-* | cydra-* \
|
||||
| d10v-* | d30v-* | dlx-* \
|
||||
| elxsi-* \
|
||||
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
|
||||
| h8300-* | h8500-* \
|
||||
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
|
||||
| i*86-* | i860-* | i960-* | ia64-* \
|
||||
| ip2k-* | iq2000-* \
|
||||
| m32r-* | m32rle-* \
|
||||
| ip2k-* \
|
||||
| m32r-* \
|
||||
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
|
||||
| m88110-* | m88k-* | maxq-* | mcore-* \
|
||||
| m88110-* | m88k-* | mcore-* \
|
||||
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
|
||||
| mips16-* \
|
||||
| mips64-* | mips64el-* \
|
||||
@ -327,40 +316,33 @@ case $basic_machine in
|
||||
| mips64vr4100-* | mips64vr4100el-* \
|
||||
| mips64vr4300-* | mips64vr4300el-* \
|
||||
| mips64vr5000-* | mips64vr5000el-* \
|
||||
| mips64vr5900-* | mips64vr5900el-* \
|
||||
| mipsisa32-* | mipsisa32el-* \
|
||||
| mipsisa32r2-* | mipsisa32r2el-* \
|
||||
| mipsisa64-* | mipsisa64el-* \
|
||||
| mipsisa64r2-* | mipsisa64r2el-* \
|
||||
| mipsisa64sb1-* | mipsisa64sb1el-* \
|
||||
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
|
||||
| mipstx39-* | mipstx39el-* \
|
||||
| mmix-* \
|
||||
| ms1-* \
|
||||
| msp430-* \
|
||||
| none-* | np1-* | ns16k-* | ns32k-* \
|
||||
| none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
|
||||
| orion-* \
|
||||
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
|
||||
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
|
||||
| pyramid-* \
|
||||
| romp-* | rs6000-* \
|
||||
| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \
|
||||
| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
|
||||
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
|
||||
| sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
|
||||
| sparclite-* \
|
||||
| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
|
||||
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
|
||||
| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
|
||||
| tahoe-* | thumb-* \
|
||||
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
|
||||
| tron-* \
|
||||
| v850-* | v850e-* | vax-* \
|
||||
| we32k-* \
|
||||
| x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
|
||||
| xstormy16-* | xtensa-* \
|
||||
| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
|
||||
| xtensa-* \
|
||||
| ymp-* \
|
||||
| z8k-*)
|
||||
;;
|
||||
m32c-*)
|
||||
;;
|
||||
# Recognize the various machine names and aliases which stand
|
||||
# for a CPU type and a company and sometimes even an OS.
|
||||
386bsd)
|
||||
@ -377,9 +359,6 @@ case $basic_machine in
|
||||
basic_machine=a29k-amd
|
||||
os=-udi
|
||||
;;
|
||||
abacus)
|
||||
basic_machine=abacus-unknown
|
||||
;;
|
||||
adobe68k)
|
||||
basic_machine=m68010-adobe
|
||||
os=-scout
|
||||
@ -397,9 +376,6 @@ case $basic_machine in
|
||||
amd64)
|
||||
basic_machine=x86_64-pc
|
||||
;;
|
||||
amd64-*)
|
||||
basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||
;;
|
||||
amdahl)
|
||||
basic_machine=580-amdahl
|
||||
os=-sysv
|
||||
@ -459,27 +435,12 @@ case $basic_machine in
|
||||
basic_machine=j90-cray
|
||||
os=-unicos
|
||||
;;
|
||||
craynv)
|
||||
basic_machine=craynv-cray
|
||||
os=-unicosmp
|
||||
;;
|
||||
cr16c)
|
||||
basic_machine=cr16c-unknown
|
||||
os=-elf
|
||||
;;
|
||||
crds | unos)
|
||||
basic_machine=m68k-crds
|
||||
;;
|
||||
crisv32 | crisv32-* | etraxfs*)
|
||||
basic_machine=crisv32-axis
|
||||
;;
|
||||
cris | cris-* | etrax*)
|
||||
basic_machine=cris-axis
|
||||
;;
|
||||
crx)
|
||||
basic_machine=crx-unknown
|
||||
os=-elf
|
||||
;;
|
||||
da30 | da30-*)
|
||||
basic_machine=m68k-da30
|
||||
;;
|
||||
@ -502,10 +463,6 @@ case $basic_machine in
|
||||
basic_machine=m88k-motorola
|
||||
os=-sysv3
|
||||
;;
|
||||
djgpp)
|
||||
basic_machine=i586-pc
|
||||
os=-msdosdjgpp
|
||||
;;
|
||||
dpx20 | dpx20-*)
|
||||
basic_machine=rs6000-bull
|
||||
os=-bosx
|
||||
@ -684,6 +641,10 @@ case $basic_machine in
|
||||
mips3*)
|
||||
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
|
||||
;;
|
||||
mmix*)
|
||||
basic_machine=mmix-knuth
|
||||
os=-mmixware
|
||||
;;
|
||||
monitor)
|
||||
basic_machine=m68k-rom68k
|
||||
os=-coff
|
||||
@ -764,6 +725,10 @@ case $basic_machine in
|
||||
np1)
|
||||
basic_machine=np1-gould
|
||||
;;
|
||||
nv1)
|
||||
basic_machine=nv1-cray
|
||||
os=-unicosmp
|
||||
;;
|
||||
nsr-tandem)
|
||||
basic_machine=nsr-tandem
|
||||
;;
|
||||
@ -771,12 +736,9 @@ case $basic_machine in
|
||||
basic_machine=hppa1.1-oki
|
||||
os=-proelf
|
||||
;;
|
||||
openrisc | openrisc-*)
|
||||
or32 | or32-*)
|
||||
basic_machine=or32-unknown
|
||||
;;
|
||||
os400)
|
||||
basic_machine=powerpc-ibm
|
||||
os=-os400
|
||||
os=-coff
|
||||
;;
|
||||
OSE68000 | ose68000)
|
||||
basic_machine=m68000-ericsson
|
||||
@ -998,10 +960,6 @@ case $basic_machine in
|
||||
tower | tower-32)
|
||||
basic_machine=m68k-ncr
|
||||
;;
|
||||
tpf)
|
||||
basic_machine=s390x-ibm
|
||||
os=-tpf
|
||||
;;
|
||||
udi29k)
|
||||
basic_machine=a29k-amd
|
||||
os=-udi
|
||||
@ -1045,10 +1003,6 @@ case $basic_machine in
|
||||
basic_machine=hppa1.1-winbond
|
||||
os=-proelf
|
||||
;;
|
||||
xbox)
|
||||
basic_machine=i686-pc
|
||||
os=-mingw32
|
||||
;;
|
||||
xps | xps100)
|
||||
basic_machine=xps100-honeywell
|
||||
;;
|
||||
@ -1079,9 +1033,6 @@ case $basic_machine in
|
||||
romp)
|
||||
basic_machine=romp-ibm
|
||||
;;
|
||||
mmix)
|
||||
basic_machine=mmix-knuth
|
||||
;;
|
||||
rs6000)
|
||||
basic_machine=rs6000-ibm
|
||||
;;
|
||||
@ -1098,10 +1049,13 @@ case $basic_machine in
|
||||
we32k)
|
||||
basic_machine=we32k-att
|
||||
;;
|
||||
sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
|
||||
sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
|
||||
basic_machine=sh-unknown
|
||||
;;
|
||||
sparc | sparcv8 | sparcv9 | sparcv9b)
|
||||
sh64)
|
||||
basic_machine=sh64-unknown
|
||||
;;
|
||||
sparc | sparcv9 | sparcv9b)
|
||||
basic_machine=sparc-sun
|
||||
;;
|
||||
cydra)
|
||||
@ -1174,21 +1128,19 @@ case $os in
|
||||
| -aos* \
|
||||
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
|
||||
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
|
||||
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
|
||||
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
|
||||
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
|
||||
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \
|
||||
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
|
||||
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
|
||||
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
|
||||
| -chorusos* | -chorusrdb* \
|
||||
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
|
||||
| -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
|
||||
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
|
||||
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
|
||||
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
|
||||
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
|
||||
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
|
||||
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
|
||||
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
|
||||
| -skyos* | -haiku*)
|
||||
| -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
|
||||
# Remember, each alternative MUST END IN *, to match a version number.
|
||||
;;
|
||||
-qnx*)
|
||||
@ -1206,15 +1158,12 @@ case $os in
|
||||
os=`echo $os | sed -e 's|nto|nto-qnx|'`
|
||||
;;
|
||||
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
|
||||
| -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
|
||||
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \
|
||||
| -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
|
||||
;;
|
||||
-mac*)
|
||||
os=`echo $os | sed -e 's|mac|macos|'`
|
||||
;;
|
||||
-linux-dietlibc)
|
||||
os=-linux-dietlibc
|
||||
;;
|
||||
-linux*)
|
||||
os=`echo $os | sed -e 's|linux|linux-gnu|'`
|
||||
;;
|
||||
@ -1227,9 +1176,6 @@ case $os in
|
||||
-opened*)
|
||||
os=-openedition
|
||||
;;
|
||||
-os400*)
|
||||
os=-os400
|
||||
;;
|
||||
-wince*)
|
||||
os=-wince
|
||||
;;
|
||||
@ -1251,9 +1197,6 @@ case $os in
|
||||
-atheos*)
|
||||
os=-atheos
|
||||
;;
|
||||
-syllable*)
|
||||
os=-syllable
|
||||
;;
|
||||
-386bsd)
|
||||
os=-bsd
|
||||
;;
|
||||
@ -1276,9 +1219,6 @@ case $os in
|
||||
-sinix*)
|
||||
os=-sysv4
|
||||
;;
|
||||
-tpf*)
|
||||
os=-tpf
|
||||
;;
|
||||
-triton*)
|
||||
os=-sysv3
|
||||
;;
|
||||
@ -1315,9 +1255,6 @@ case $os in
|
||||
-kaos*)
|
||||
os=-kaos
|
||||
;;
|
||||
-zvmoe)
|
||||
os=-zvmoe
|
||||
;;
|
||||
-none)
|
||||
;;
|
||||
*)
|
||||
@ -1395,15 +1332,9 @@ case $basic_machine in
|
||||
*-be)
|
||||
os=-beos
|
||||
;;
|
||||
*-haiku)
|
||||
os=-haiku
|
||||
;;
|
||||
*-ibm)
|
||||
os=-aix
|
||||
;;
|
||||
*-knuth)
|
||||
os=-mmixware
|
||||
;;
|
||||
*-wec)
|
||||
os=-proelf
|
||||
;;
|
||||
@ -1536,15 +1467,9 @@ case $basic_machine in
|
||||
-mvs* | -opened*)
|
||||
vendor=ibm
|
||||
;;
|
||||
-os400*)
|
||||
vendor=ibm
|
||||
;;
|
||||
-ptx*)
|
||||
vendor=sequent
|
||||
;;
|
||||
-tpf*)
|
||||
vendor=ibm
|
||||
;;
|
||||
-vxsim* | -vxworks* | -windiss*)
|
||||
vendor=wrs
|
||||
;;
|
||||
@ -1569,7 +1494,7 @@ case $basic_machine in
|
||||
esac
|
||||
|
||||
echo $basic_machine$os
|
||||
exit
|
||||
exit 0
|
||||
|
||||
# Local variables:
|
||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||
|
@ -4,7 +4,7 @@ dnl Process this file with autoconf to create configure.
|
||||
|
||||
AC_PREREQ([2.57])
|
||||
|
||||
AC_INIT(libXi, 1.0.2, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], libXi)
|
||||
AC_INIT(libXi, 1.1.3, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], libXi)
|
||||
AM_INIT_AUTOMAKE([dist-bzip2])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
@ -15,7 +15,7 @@ AC_PROG_CC
|
||||
AC_PROG_LIBTOOL
|
||||
|
||||
# Checks for pkg-config packages
|
||||
PKG_CHECK_MODULES(XI, xproto x11 xextproto xext inputproto)
|
||||
PKG_CHECK_MODULES(XI, xproto x11 xextproto xext inputproto >= 1.4)
|
||||
AC_SUBST(XI_CFLAGS)
|
||||
AC_SUBST(XI_LIBS)
|
||||
|
||||
|
@ -1,9 +1,10 @@
|
||||
#! /bin/sh
|
||||
# depcomp - compile a program generating dependencies as side-effects
|
||||
|
||||
scriptversion=2005-07-09.11
|
||||
scriptversion=2006-10-15.18
|
||||
|
||||
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006 Free Software
|
||||
# Foundation, Inc.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@ -91,7 +92,20 @@ gcc3)
|
||||
## gcc 3 implements dependency tracking that does exactly what
|
||||
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
|
||||
## it if -MD -MP comes after the -MF stuff. Hmm.
|
||||
"$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
|
||||
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
|
||||
## the command line argument order; so add the flags where they
|
||||
## appear in depend2.am. Note that the slowdown incurred here
|
||||
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
|
||||
*) set fnord "$@" "$arg" ;;
|
||||
esac
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
done
|
||||
"$@"
|
||||
stat=$?
|
||||
if test $stat -eq 0; then :
|
||||
else
|
||||
@ -276,6 +290,46 @@ icc)
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
hp2)
|
||||
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
|
||||
# compilers, which have integrated preprocessors. The correct option
|
||||
# to use with these is +Maked; it writes dependencies to a file named
|
||||
# 'foo.d', which lands next to the object file, wherever that
|
||||
# happens to be.
|
||||
# Much of this is similar to the tru64 case; see comments there.
|
||||
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
|
||||
test "x$dir" = "x$object" && dir=
|
||||
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
|
||||
if test "$libtool" = yes; then
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir.libs/$base.d
|
||||
"$@" -Wc,+Maked
|
||||
else
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir$base.d
|
||||
"$@" +Maked
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -eq 0; then :
|
||||
else
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
if test -f "$tmpdepfile"; then
|
||||
sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
|
||||
# Add `dependent.h:' lines.
|
||||
sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
|
||||
else
|
||||
echo "#dummy" > "$depfile"
|
||||
fi
|
||||
rm -f "$tmpdepfile" "$tmpdepfile2"
|
||||
;;
|
||||
|
||||
tru64)
|
||||
# The Tru64 compiler uses -MD to generate dependencies as a side
|
||||
# effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
|
||||
@ -288,13 +342,13 @@ tru64)
|
||||
|
||||
if test "$libtool" = yes; then
|
||||
# With Tru64 cc, shared objects can also be used to make a
|
||||
# static library. This mecanism is used in libtool 1.4 series to
|
||||
# static library. This mechanism is used in libtool 1.4 series to
|
||||
# handle both shared and static libraries in a single compilation.
|
||||
# With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
|
||||
#
|
||||
# With libtool 1.5 this exception was removed, and libtool now
|
||||
# generates 2 separate objects for the 2 libraries. These two
|
||||
# compilations output dependencies in in $dir.libs/$base.o.d and
|
||||
# compilations output dependencies in $dir.libs/$base.o.d and
|
||||
# in $dir$base.o.d. We have to check for both files, because
|
||||
# one of the two compilations can be disabled. We should prefer
|
||||
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
# install - install a program, script, or datafile
|
||||
|
||||
scriptversion=2005-05-14.22
|
||||
scriptversion=2006-10-14.15
|
||||
|
||||
# This originates from X11R5 (mit/util/scripts/install.sh), which was
|
||||
# later released in X11R6 (xc/config/util/install.sh) with the
|
||||
@ -39,15 +39,24 @@ scriptversion=2005-05-14.22
|
||||
# when there is no Makefile.
|
||||
#
|
||||
# This script is compatible with the BSD install script, but was written
|
||||
# from scratch. It can only install one file at a time, a restriction
|
||||
# shared with many OS's install programs.
|
||||
# from scratch.
|
||||
|
||||
nl='
|
||||
'
|
||||
IFS=" "" $nl"
|
||||
|
||||
# set DOITPROG to echo to test this script
|
||||
|
||||
# Don't use :- since 4.3BSD and earlier shells don't like it.
|
||||
doit="${DOITPROG-}"
|
||||
if test -z "$doit"; then
|
||||
doit_exec=exec
|
||||
else
|
||||
doit_exec=$doit
|
||||
fi
|
||||
|
||||
# put in absolute paths if you don't have them in your path; or use env. vars.
|
||||
# Put in absolute file names if you don't have them in your path;
|
||||
# or use environment vars.
|
||||
|
||||
mvprog="${MVPROG-mv}"
|
||||
cpprog="${CPPROG-cp}"
|
||||
@ -58,7 +67,13 @@ stripprog="${STRIPPROG-strip}"
|
||||
rmprog="${RMPROG-rm}"
|
||||
mkdirprog="${MKDIRPROG-mkdir}"
|
||||
|
||||
chmodcmd="$chmodprog 0755"
|
||||
posix_glob=
|
||||
posix_mkdir=
|
||||
|
||||
# Desired mode of installed file.
|
||||
mode=0755
|
||||
|
||||
chmodcmd=$chmodprog
|
||||
chowncmd=
|
||||
chgrpcmd=
|
||||
stripcmd=
|
||||
@ -95,7 +110,7 @@ Environment variables override the default commands:
|
||||
CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
|
||||
"
|
||||
|
||||
while test -n "$1"; do
|
||||
while test $# -ne 0; do
|
||||
case $1 in
|
||||
-c) shift
|
||||
continue;;
|
||||
@ -111,9 +126,15 @@ while test -n "$1"; do
|
||||
|
||||
--help) echo "$usage"; exit $?;;
|
||||
|
||||
-m) chmodcmd="$chmodprog $2"
|
||||
-m) mode=$2
|
||||
shift
|
||||
shift
|
||||
case $mode in
|
||||
*' '* | *' '* | *'
|
||||
'* | *'*'* | *'?'* | *'['*)
|
||||
echo "$0: invalid mode: $mode" >&2
|
||||
exit 1;;
|
||||
esac
|
||||
continue;;
|
||||
|
||||
-o) chowncmd="$chownprog $2"
|
||||
@ -136,25 +157,33 @@ while test -n "$1"; do
|
||||
|
||||
--version) echo "$0 $scriptversion"; exit $?;;
|
||||
|
||||
*) # When -d is used, all remaining arguments are directories to create.
|
||||
# When -t is used, the destination is already specified.
|
||||
test -n "$dir_arg$dstarg" && break
|
||||
# Otherwise, the last argument is the destination. Remove it from $@.
|
||||
for arg
|
||||
do
|
||||
if test -n "$dstarg"; then
|
||||
# $@ is not empty: it contains at least $arg.
|
||||
set fnord "$@" "$dstarg"
|
||||
shift # fnord
|
||||
fi
|
||||
shift # arg
|
||||
dstarg=$arg
|
||||
done
|
||||
--) shift
|
||||
break;;
|
||||
|
||||
-*) echo "$0: invalid option: $1" >&2
|
||||
exit 1;;
|
||||
|
||||
*) break;;
|
||||
esac
|
||||
done
|
||||
|
||||
if test -z "$1"; then
|
||||
if test $# -ne 0 && test -z "$dir_arg$dstarg"; then
|
||||
# When -d is used, all remaining arguments are directories to create.
|
||||
# When -t is used, the destination is already specified.
|
||||
# Otherwise, the last argument is the destination. Remove it from $@.
|
||||
for arg
|
||||
do
|
||||
if test -n "$dstarg"; then
|
||||
# $@ is not empty: it contains at least $arg.
|
||||
set fnord "$@" "$dstarg"
|
||||
shift # fnord
|
||||
fi
|
||||
shift # arg
|
||||
dstarg=$arg
|
||||
done
|
||||
fi
|
||||
|
||||
if test $# -eq 0; then
|
||||
if test -z "$dir_arg"; then
|
||||
echo "$0: no input file specified." >&2
|
||||
exit 1
|
||||
@ -164,6 +193,33 @@ if test -z "$1"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if test -z "$dir_arg"; then
|
||||
trap '(exit $?); exit' 1 2 13 15
|
||||
|
||||
# Set umask so as not to create temps with too-generous modes.
|
||||
# However, 'strip' requires both read and write access to temps.
|
||||
case $mode in
|
||||
# Optimize common cases.
|
||||
*644) cp_umask=133;;
|
||||
*755) cp_umask=22;;
|
||||
|
||||
*[0-7])
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw='% 200'
|
||||
fi
|
||||
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
|
||||
*)
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw=,u+rw
|
||||
fi
|
||||
cp_umask=$mode$u_plus_rw;;
|
||||
esac
|
||||
fi
|
||||
|
||||
for src
|
||||
do
|
||||
# Protect names starting with `-'.
|
||||
@ -173,15 +229,11 @@ do
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
dst=$src
|
||||
src=
|
||||
|
||||
if test -d "$dst"; then
|
||||
mkdircmd=:
|
||||
chmodcmd=
|
||||
else
|
||||
mkdircmd=$mkdirprog
|
||||
fi
|
||||
dstdir=$dst
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
else
|
||||
|
||||
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
|
||||
# might cause directories to be created, which would be especially bad
|
||||
# if $src (and thus $dsttmp) contains '*'.
|
||||
@ -208,53 +260,188 @@ do
|
||||
echo "$0: $dstarg: Is a directory" >&2
|
||||
exit 1
|
||||
fi
|
||||
dst=$dst/`basename "$src"`
|
||||
dstdir=$dst
|
||||
dst=$dstdir/`basename "$src"`
|
||||
dstdir_status=0
|
||||
else
|
||||
# Prefer dirname, but fall back on a substitute if dirname fails.
|
||||
dstdir=`
|
||||
(dirname "$dst") 2>/dev/null ||
|
||||
expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
||||
X"$dst" : 'X\(//\)[^/]' \| \
|
||||
X"$dst" : 'X\(//\)$' \| \
|
||||
X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
|
||||
echo X"$dst" |
|
||||
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
||||
s//\1/
|
||||
q
|
||||
}
|
||||
/^X\(\/\/\)[^/].*/{
|
||||
s//\1/
|
||||
q
|
||||
}
|
||||
/^X\(\/\/\)$/{
|
||||
s//\1/
|
||||
q
|
||||
}
|
||||
/^X\(\/\).*/{
|
||||
s//\1/
|
||||
q
|
||||
}
|
||||
s/.*/./; q'
|
||||
`
|
||||
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
fi
|
||||
fi
|
||||
|
||||
# This sed command emulates the dirname command.
|
||||
dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
|
||||
obsolete_mkdir_used=false
|
||||
|
||||
# Make sure that the destination directory exists.
|
||||
if test $dstdir_status != 0; then
|
||||
case $posix_mkdir in
|
||||
'')
|
||||
# Create intermediate dirs using mode 755 as modified by the umask.
|
||||
# This is like FreeBSD 'install' as of 1997-10-28.
|
||||
umask=`umask`
|
||||
case $stripcmd.$umask in
|
||||
# Optimize common cases.
|
||||
*[2367][2367]) mkdir_umask=$umask;;
|
||||
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
|
||||
|
||||
# Skip lots of stat calls in the usual case.
|
||||
if test ! -d "$dstdir"; then
|
||||
defaultIFS='
|
||||
'
|
||||
IFS="${IFS-$defaultIFS}"
|
||||
*[0-7])
|
||||
mkdir_umask=`expr $umask + 22 \
|
||||
- $umask % 100 % 40 + $umask % 20 \
|
||||
- $umask % 10 % 4 + $umask % 2
|
||||
`;;
|
||||
*) mkdir_umask=$umask,go-w;;
|
||||
esac
|
||||
|
||||
oIFS=$IFS
|
||||
# Some sh's can't handle IFS=/ for some reason.
|
||||
IFS='%'
|
||||
set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
|
||||
shift
|
||||
IFS=$oIFS
|
||||
# With -d, create the new directory with the user-specified mode.
|
||||
# Otherwise, rely on $mkdir_umask.
|
||||
if test -n "$dir_arg"; then
|
||||
mkdir_mode=-m$mode
|
||||
else
|
||||
mkdir_mode=
|
||||
fi
|
||||
|
||||
pathcomp=
|
||||
posix_mkdir=false
|
||||
case $umask in
|
||||
*[123567][0-7][0-7])
|
||||
# POSIX mkdir -p sets u+wx bits regardless of umask, which
|
||||
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
|
||||
;;
|
||||
*)
|
||||
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
|
||||
trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
|
||||
|
||||
while test $# -ne 0 ; do
|
||||
pathcomp=$pathcomp$1
|
||||
if (umask $mkdir_umask &&
|
||||
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
|
||||
then
|
||||
if test -z "$dir_arg" || {
|
||||
# Check for POSIX incompatibilities with -m.
|
||||
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
|
||||
# other-writeable bit of parent directory when it shouldn't.
|
||||
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
|
||||
ls_ld_tmpdir=`ls -ld "$tmpdir"`
|
||||
case $ls_ld_tmpdir in
|
||||
d????-?r-*) different_mode=700;;
|
||||
d????-?--*) different_mode=755;;
|
||||
*) false;;
|
||||
esac &&
|
||||
$mkdirprog -m$different_mode -p -- "$tmpdir" && {
|
||||
ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
|
||||
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
|
||||
}
|
||||
}
|
||||
then posix_mkdir=:
|
||||
fi
|
||||
rmdir "$tmpdir/d" "$tmpdir"
|
||||
else
|
||||
# Remove any dirs left behind by ancient mkdir implementations.
|
||||
rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
|
||||
fi
|
||||
trap '' 0;;
|
||||
esac;;
|
||||
esac
|
||||
|
||||
if
|
||||
$posix_mkdir && (
|
||||
umask $mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
|
||||
)
|
||||
then :
|
||||
else
|
||||
|
||||
# The umask is ridiculous, or mkdir does not conform to POSIX,
|
||||
# or it failed possibly due to a race condition. Create the
|
||||
# directory the slow way, step by step, checking for races as we go.
|
||||
|
||||
case $dstdir in
|
||||
/*) prefix=/ ;;
|
||||
-*) prefix=./ ;;
|
||||
*) prefix= ;;
|
||||
esac
|
||||
|
||||
case $posix_glob in
|
||||
'')
|
||||
if (set -f) 2>/dev/null; then
|
||||
posix_glob=true
|
||||
else
|
||||
posix_glob=false
|
||||
fi ;;
|
||||
esac
|
||||
|
||||
oIFS=$IFS
|
||||
IFS=/
|
||||
$posix_glob && set -f
|
||||
set fnord $dstdir
|
||||
shift
|
||||
if test ! -d "$pathcomp"; then
|
||||
$mkdirprog "$pathcomp"
|
||||
# mkdir can fail with a `File exist' error in case several
|
||||
# install-sh are creating the directory concurrently. This
|
||||
# is OK.
|
||||
test -d "$pathcomp" || exit
|
||||
$posix_glob && set +f
|
||||
IFS=$oIFS
|
||||
|
||||
prefixes=
|
||||
|
||||
for d
|
||||
do
|
||||
test -z "$d" && continue
|
||||
|
||||
prefix=$prefix$d
|
||||
if test -d "$prefix"; then
|
||||
prefixes=
|
||||
else
|
||||
if $posix_mkdir; then
|
||||
(umask=$mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
|
||||
# Don't fail if two instances are running concurrently.
|
||||
test -d "$prefix" || exit 1
|
||||
else
|
||||
case $prefix in
|
||||
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
|
||||
*) qprefix=$prefix;;
|
||||
esac
|
||||
prefixes="$prefixes '$qprefix'"
|
||||
fi
|
||||
fi
|
||||
prefix=$prefix/
|
||||
done
|
||||
|
||||
if test -n "$prefixes"; then
|
||||
# Don't fail if two instances are running concurrently.
|
||||
(umask $mkdir_umask &&
|
||||
eval "\$doit_exec \$mkdirprog $prefixes") ||
|
||||
test -d "$dstdir" || exit 1
|
||||
obsolete_mkdir_used=true
|
||||
fi
|
||||
pathcomp=$pathcomp/
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
$doit $mkdircmd "$dst" \
|
||||
&& { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
|
||||
&& { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
|
||||
&& { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
|
||||
&& { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
|
||||
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
|
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
|
||||
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
|
||||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
|
||||
else
|
||||
dstfile=`basename "$dst"`
|
||||
|
||||
# Make a couple of temp file names in the proper directory.
|
||||
dsttmp=$dstdir/_inst.$$_
|
||||
@ -262,10 +449,9 @@ do
|
||||
|
||||
# Trap to clean up those temp files at exit.
|
||||
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
|
||||
trap '(exit $?); exit' 1 2 13 15
|
||||
|
||||
# Copy the file name to the temp name.
|
||||
$doit $cpprog "$src" "$dsttmp" &&
|
||||
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
|
||||
|
||||
# and set any options; do chmod last to preserve setuid bits.
|
||||
#
|
||||
@ -276,10 +462,10 @@ do
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
|
||||
&& { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
|
||||
&& { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
|
||||
&& { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
|
||||
&& { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
|
||||
|
||||
# Now rename the file to the real destination.
|
||||
{ $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
|
||||
{ $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null \
|
||||
|| {
|
||||
# The rename failed, perhaps because mv can't rename something else
|
||||
# to itself, or perhaps because mv is so ancient that it does not
|
||||
@ -291,11 +477,12 @@ do
|
||||
# reasons. In this case, the final cleanup might fail but the new
|
||||
# file should still install successfully.
|
||||
{
|
||||
if test -f "$dstdir/$dstfile"; then
|
||||
$doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
|
||||
|| $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
|
||||
if test -f "$dst"; then
|
||||
$doit $rmcmd -f "$dst" 2>/dev/null \
|
||||
|| { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null \
|
||||
&& { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }; }\
|
||||
|| {
|
||||
echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
|
||||
echo "$0: cannot unlink or rename $dst" >&2
|
||||
(exit 1); exit 1
|
||||
}
|
||||
else
|
||||
@ -304,16 +491,13 @@ do
|
||||
} &&
|
||||
|
||||
# Now rename the file to the real destination.
|
||||
$doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
|
||||
$doit $mvcmd "$dsttmp" "$dst"
|
||||
}
|
||||
}
|
||||
fi || { (exit 1); exit 1; }
|
||||
done
|
||||
} || exit 1
|
||||
|
||||
# The final little trick to "correctly" pass the exit status to the exit trap.
|
||||
{
|
||||
(exit 0); exit 0
|
||||
}
|
||||
trap '' 0
|
||||
fi
|
||||
done
|
||||
|
||||
# Local variables:
|
||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XAllDvEv.man,v 1.3 2000/08/17 19:41:55 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XAllowDeviceEvents 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XAllowDeviceEvents __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XAllowDeviceEvents \- release queued events
|
||||
.SH SYNTAX
|
||||
@ -141,6 +141,6 @@ also occur if the specified device is the X keyboard or X pointer device.
|
||||
\fIBadValue\fP
|
||||
An invalid mode was specified on the request.
|
||||
.SH "SEE ALSO"
|
||||
XGrabDevice(3X11)
|
||||
XGrabDevice(3)
|
||||
.br
|
||||
\fI\*(xL\fP
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XChProp.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XChangeDeviceDontPropagateList 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XChangeDeviceDontPropagateList __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XChangeDeviceDontPropagateList, XGetDeviceDontPropagateList \- query or change the dont-propagate-list for extension devices
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XChgKbd.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XChangeKeyboardDevice 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XChangeKeyboardDevice __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XChangeKeyboardDevice \- change which device is used as the X keyboard
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XChgPtr.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XChangePointerDevice 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XChangePointerDevice __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XChangePointerDevice \- change which device is the X pointer
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XDevBell.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XDeviceBell 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XDeviceBell __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XDeviceBell \- ring a bell on a device supported through the input extension
|
||||
.SH SYNTAX
|
||||
@ -71,7 +71,7 @@ not been opened by this client via \fIXOpenInputDevice\fP.
|
||||
\fIBadValue\fP
|
||||
An invalid feedbackclass, feedbackid, or percent value was specified.
|
||||
.SH "SEE ALSO"
|
||||
XChangeFeedbackControl(3X),
|
||||
XBell(3X)
|
||||
XChangeFeedbackControl(3),
|
||||
XBell(3)
|
||||
.br
|
||||
\fI\*(xL\fP
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XChDCtl.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XGetDeviceControl 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XGetDeviceControl __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XGetDeviceControl, XChangeDeviceControl \- query and change input device controls
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XChKMap.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XGetDeviceKeyMapping 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XGetDeviceKeyMapping __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XGetDeviceKeyMapping, XChangeDeviceKeyMapping \- query or change device key mappings
|
||||
.SH SYNTAX
|
||||
@ -173,8 +173,8 @@ alternatives can generate this error.
|
||||
\fIBadAlloc\fP
|
||||
The server failed to allocate the requested resource or server memory.
|
||||
.SH "SEE ALSO"
|
||||
XSetDeviceButtonMapping(3X11)
|
||||
XSetDeviceButtonMapping(3)
|
||||
.br
|
||||
XSetDeviceModifierMapping(3X11)
|
||||
XSetDeviceModifierMapping(3)
|
||||
.br
|
||||
\fI\*(xL\fP
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XChMMap.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XGetDeviceModifierMapping 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XGetDeviceModifierMapping __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XGetDeviceModifierMapping, XSetDeviceModifierMapping \- query or change device modifier mappings
|
||||
.SH SYNTAX
|
||||
@ -138,8 +138,8 @@ Unless a specific range is specified for an argument, the full range defined
|
||||
by the argument's type is accepted. Any argument defined as a set of
|
||||
alternatives can generate this error.
|
||||
.SH "SEE ALSO"
|
||||
XSetDeviceKeyMapping(3X11)
|
||||
XSetDeviceKeyMapping(3)
|
||||
.br
|
||||
XSetDeviceButtonMapping(3X11)
|
||||
XSetDeviceButtonMapping(3)
|
||||
.br
|
||||
\fI\*(xL\fP
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XGetDvMo.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XGetDeviceMotionEvents 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XGetDeviceMotionEvents __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XGetDeviceMotionEvents, XDeviceTimeCoord \- get device motion history
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XGetExtV.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XGetExtensionVersion 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XGetExtensionVersion __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XGetExtensionVersion \- query the version of the input extension.
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XChFCtl.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XGetFeedbackControl 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XGetFeedbackControl __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XGetFeedbackControl, XChangeFeedbackControl \- query and change input device feedbacks
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XGrabDev.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XGrabDevice 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XGrabDevice __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XGrabDevice, XUngrabDevice \- grab/release the specified extension device
|
||||
.SH SYNTAX
|
||||
@ -196,8 +196,8 @@ alternatives can generate this error.
|
||||
\fIBadWindow\fP
|
||||
A value for a Window argument does not name a defined Window.
|
||||
.SH "SEE ALSO"
|
||||
XAllowDeviceEvents(3X),
|
||||
XGrabDeviceButton(3X),
|
||||
XGrabDeviceKey(3X),
|
||||
XAllowDeviceEvents(3),
|
||||
XGrabDeviceButton(3),
|
||||
XGrabDeviceKey(3),
|
||||
.br
|
||||
\fI\*(xL\fP
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XGrDvBut.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XGrabDeviceButton 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XGrabDeviceButton __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XGrabDeviceButton, XUngrabDeviceButton \- grab/ungrab extension input device buttons
|
||||
.SH SYNTAX
|
||||
@ -202,10 +202,10 @@ alternatives can generate this error.
|
||||
\fIBadWindow\fP
|
||||
A value for a Window argument does not name a defined Window.
|
||||
.SH "SEE ALSO"
|
||||
XAllowDeviceEvents(3X),
|
||||
XAllowDeviceEvents(3),
|
||||
.br
|
||||
XGrabDevice(3X),
|
||||
XGrabDevice(3),
|
||||
.br
|
||||
XGrabDeviceKey(3X),
|
||||
XGrabDeviceKey(3),
|
||||
.br
|
||||
\fI\*(xL\fP
|
||||
|
@ -13,11 +13,10 @@
|
||||
.\"
|
||||
.\" $Xorg: XGrDvKey.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XGrabDeviceKey 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XGrabDeviceKey __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XGrabDeviceKey, XUngrabDeviceKey \- grab/ungrab extension input device Keys
|
||||
.SH SYNTAX
|
||||
.SP
|
||||
.HP
|
||||
int XGrabDeviceKey\^(\^Display *\fIdisplay\fP\^, XDevice *\fIdevice\fP\^,
|
||||
unsigned int \fIKey\fP\^, unsigned int \fImodifiers\fP\^, XDevice
|
||||
@ -196,11 +195,11 @@ alternatives can generate this error.
|
||||
\fIBadWindow\fP
|
||||
A value for a Window argument does not name a defined Window.
|
||||
.SH "SEE ALSO"
|
||||
XAllowDeviceEvents(3X),
|
||||
XAllowDeviceEvents(3),
|
||||
.br
|
||||
XGrabDevice(3X),
|
||||
XGrabDevice(3),
|
||||
.br
|
||||
XGrabDeviceButton(3X),
|
||||
XGrabDeviceButton(3),
|
||||
.br
|
||||
.br
|
||||
\fI\*(xL\fP
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XListDev.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XListInputDevices 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XListInputDevices __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XListInputDevices, XFreeDeviceList \- list available input devices
|
||||
.SH SYNTAX
|
||||
@ -175,7 +175,7 @@ num_buttons specifies the number of buttons that the device has.
|
||||
The XValuatorInfo structure defines the characteristics of the valuators
|
||||
on the device. It is defined as follows:
|
||||
.LP
|
||||
.DE
|
||||
.DS
|
||||
.nf
|
||||
typedef struct _XValuatorInfo {
|
||||
XID class;
|
||||
@ -186,7 +186,7 @@ typedef struct _XValuatorInfo {
|
||||
XAxisInfoPtr axes;
|
||||
} XValuatorInfo;
|
||||
.fi
|
||||
.DS
|
||||
.DE
|
||||
num_axes contains the number of axes the device supports.
|
||||
.LP
|
||||
mode is a constant that has one of the following
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XOpenDev.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XOpenDevice 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XOpenDevice __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XOpenDevice, XCloseDevice \- open or close an extension input device
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XQueryDv.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XQueryDeviceState 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XQueryDeviceState __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XQueryDeviceState \- query the state of an extension input device.
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XSelExtEv.man,v 1.3 2000/08/17 19:41:57 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XSelectExtensionEvent 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XSelectExtensionEvent __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XSelectExtensionEvent, XGetSelectedExtensionEvents \- select extension events, get the list of currently selected extension events
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XSExEvnt.man,v 1.3 2000/08/17 19:41:56 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XSendExtensionEvent 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XSendExtensionEvent __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XSendExtensionEvent \- send input extension events to a client
|
||||
.SH SYNTAX
|
||||
@ -56,7 +56,7 @@ determines which clients should receive the specified events,
|
||||
and ignores any active grabs.
|
||||
This request requires you to pass an event class list.
|
||||
For a discussion of the valid event class names,
|
||||
see \fIXOpenDevice(3X11)\fP.
|
||||
see \fIXOpenDevice(3)\fP.
|
||||
This request uses the w argument to identify the destination window as follows:
|
||||
.IP \(bu 5
|
||||
If w is
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XSeBMap.man,v 1.3 2000/08/17 19:41:57 cpqbld Exp $
|
||||
.ds xL Programming With Xlib
|
||||
.TH XSetDeviceButtonMapping 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XSetDeviceButtonMapping __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XSetDeviceButtonMapping, XGetDeviceButtonMapping \- query or change device button mappings
|
||||
.SH SYNTAX
|
||||
@ -92,11 +92,11 @@ Unless a specific range is specified for an argument, the full range defined
|
||||
by the argument's type is accepted. Any argument defined as a set of
|
||||
alternatives can generate this error.
|
||||
.SH "SEE ALSO"
|
||||
XChangeDeviceKeyboardControl(3X),
|
||||
XChangeDeviceKeyboardControl(3),
|
||||
.br
|
||||
XChangeDeviceKeyMapping(3X)
|
||||
XChangeDeviceKeyMapping(3)
|
||||
.br
|
||||
XChangeDeviceModifierMapping(3X)
|
||||
XChangeDeviceModifierMapping(3)
|
||||
.br
|
||||
.br
|
||||
\fI\*(xL\fP
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XSeDvFoc.man,v 1.3 2000/08/17 19:41:57 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XSetDeviceFocus 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XSetDeviceFocus __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XSetDeviceFocus, XGetDeviceFocus \- control extension input device focus
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XSetMode.man,v 1.3 2000/08/17 19:41:57 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XSetDeviceMode 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XSetDeviceMode __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XSetDeviceMode \- change the mode of a device
|
||||
.SH SYNTAX
|
||||
|
@ -13,7 +13,7 @@
|
||||
.\"
|
||||
.\" $Xorg: XSetDVal.man,v 1.3 2000/08/17 19:41:57 cpqbld Exp $
|
||||
.ds xL Programming with Xlib
|
||||
.TH XSetDeviceValuators 3X11 __xorgversion__ "X FUNCTIONS"
|
||||
.TH XSetDeviceValuators __LIB_MAN_SUFFIX__ __xorgversion__ "X FUNCTIONS"
|
||||
.SH NAME
|
||||
XSetDeviceValuators \- initialize the valuators on an extension input device
|
||||
.SH SYNTAX
|
||||
|
@ -1,9 +1,9 @@
|
||||
#! /bin/sh
|
||||
# Common stub for a few missing GNU programs while installing.
|
||||
|
||||
scriptversion=2005-06-08.21
|
||||
scriptversion=2006-05-10.23
|
||||
|
||||
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
|
||||
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
|
||||
# Free Software Foundation, Inc.
|
||||
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
|
||||
|
||||
@ -33,6 +33,8 @@ if test $# -eq 0; then
|
||||
fi
|
||||
|
||||
run=:
|
||||
sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
|
||||
sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
|
||||
|
||||
# In the cases where this matters, `missing' is being run in the
|
||||
# srcdir already.
|
||||
@ -44,7 +46,7 @@ fi
|
||||
|
||||
msg="missing on your system"
|
||||
|
||||
case "$1" in
|
||||
case $1 in
|
||||
--run)
|
||||
# Try to run requested program, and just exit if it succeeds.
|
||||
run=
|
||||
@ -77,6 +79,7 @@ Supported PROGRAM values:
|
||||
aclocal touch file \`aclocal.m4'
|
||||
autoconf touch file \`configure'
|
||||
autoheader touch file \`config.h.in'
|
||||
autom4te touch the output file, or create a stub one
|
||||
automake touch all \`Makefile.in' files
|
||||
bison create \`y.tab.[ch]', if possible, from existing .[ch]
|
||||
flex create \`lex.yy.c', if possible, from existing .c
|
||||
@ -106,7 +109,7 @@ esac
|
||||
# Now exit if we have it, but it failed. Also exit now if we
|
||||
# don't have it and --version was passed (most likely to detect
|
||||
# the program).
|
||||
case "$1" in
|
||||
case $1 in
|
||||
lex|yacc)
|
||||
# Not GNU programs, they don't have --version.
|
||||
;;
|
||||
@ -135,7 +138,7 @@ esac
|
||||
|
||||
# If it does not exist, or fails to run (possibly an outdated version),
|
||||
# try to emulate it.
|
||||
case "$1" in
|
||||
case $1 in
|
||||
aclocal*)
|
||||
echo 1>&2 "\
|
||||
WARNING: \`$1' is $msg. You should only need it if
|
||||
@ -164,7 +167,7 @@ WARNING: \`$1' is $msg. You should only need it if
|
||||
test -z "$files" && files="config.h"
|
||||
touch_files=
|
||||
for f in $files; do
|
||||
case "$f" in
|
||||
case $f in
|
||||
*:*) touch_files="$touch_files "`echo "$f" |
|
||||
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
|
||||
*) touch_files="$touch_files $f.in";;
|
||||
@ -192,8 +195,8 @@ WARNING: \`$1' is needed, but is $msg.
|
||||
You can get \`$1' as part of \`Autoconf' from any GNU
|
||||
archive site."
|
||||
|
||||
file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
|
||||
test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
|
||||
file=`echo "$*" | sed -n "$sed_output"`
|
||||
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
|
||||
if test -f "$file"; then
|
||||
touch $file
|
||||
else
|
||||
@ -214,25 +217,25 @@ WARNING: \`$1' $msg. You should only need it if
|
||||
in order for those modifications to take effect. You can get
|
||||
\`Bison' from any GNU archive site."
|
||||
rm -f y.tab.c y.tab.h
|
||||
if [ $# -ne 1 ]; then
|
||||
if test $# -ne 1; then
|
||||
eval LASTARG="\${$#}"
|
||||
case "$LASTARG" in
|
||||
case $LASTARG in
|
||||
*.y)
|
||||
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
|
||||
if [ -f "$SRCFILE" ]; then
|
||||
if test -f "$SRCFILE"; then
|
||||
cp "$SRCFILE" y.tab.c
|
||||
fi
|
||||
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
|
||||
if [ -f "$SRCFILE" ]; then
|
||||
if test -f "$SRCFILE"; then
|
||||
cp "$SRCFILE" y.tab.h
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
if [ ! -f y.tab.h ]; then
|
||||
if test ! -f y.tab.h; then
|
||||
echo >y.tab.h
|
||||
fi
|
||||
if [ ! -f y.tab.c ]; then
|
||||
if test ! -f y.tab.c; then
|
||||
echo 'main() { return 0; }' >y.tab.c
|
||||
fi
|
||||
;;
|
||||
@ -244,18 +247,18 @@ WARNING: \`$1' is $msg. You should only need it if
|
||||
in order for those modifications to take effect. You can get
|
||||
\`Flex' from any GNU archive site."
|
||||
rm -f lex.yy.c
|
||||
if [ $# -ne 1 ]; then
|
||||
if test $# -ne 1; then
|
||||
eval LASTARG="\${$#}"
|
||||
case "$LASTARG" in
|
||||
case $LASTARG in
|
||||
*.l)
|
||||
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
|
||||
if [ -f "$SRCFILE" ]; then
|
||||
if test -f "$SRCFILE"; then
|
||||
cp "$SRCFILE" lex.yy.c
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
if [ ! -f lex.yy.c ]; then
|
||||
if test ! -f lex.yy.c; then
|
||||
echo 'main() { return 0; }' >lex.yy.c
|
||||
fi
|
||||
;;
|
||||
@ -267,11 +270,9 @@ WARNING: \`$1' is $msg. You should only need it if
|
||||
\`Help2man' package in order for those modifications to take
|
||||
effect. You can get \`Help2man' from any GNU archive site."
|
||||
|
||||
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
|
||||
if test -z "$file"; then
|
||||
file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
|
||||
fi
|
||||
if [ -f "$file" ]; then
|
||||
file=`echo "$*" | sed -n "$sed_output"`
|
||||
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
|
||||
if test -f "$file"; then
|
||||
touch $file
|
||||
else
|
||||
test -z "$file" || exec >$file
|
||||
@ -289,11 +290,17 @@ WARNING: \`$1' is $msg. You should only need it if
|
||||
DU, IRIX). You might want to install the \`Texinfo' package or
|
||||
the \`GNU make' package. Grab either from any GNU archive site."
|
||||
# The file to touch is that specified with -o ...
|
||||
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
|
||||
file=`echo "$*" | sed -n "$sed_output"`
|
||||
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
|
||||
if test -z "$file"; then
|
||||
# ... or it is the one specified with @setfilename ...
|
||||
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
|
||||
file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
|
||||
file=`sed -n '
|
||||
/^@setfilename/{
|
||||
s/.* \([^ ]*\) *$/\1/
|
||||
p
|
||||
q
|
||||
}' $infile`
|
||||
# ... or it is derived from the source name (dir/f.texi becomes f.info)
|
||||
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
|
||||
fi
|
||||
@ -317,13 +324,13 @@ WARNING: \`$1' is $msg. You should only need it if
|
||||
fi
|
||||
firstarg="$1"
|
||||
if shift; then
|
||||
case "$firstarg" in
|
||||
case $firstarg in
|
||||
*o*)
|
||||
firstarg=`echo "$firstarg" | sed s/o//`
|
||||
tar "$firstarg" "$@" && exit 0
|
||||
;;
|
||||
esac
|
||||
case "$firstarg" in
|
||||
case $firstarg in
|
||||
*h*)
|
||||
firstarg=`echo "$firstarg" | sed s/h//`
|
||||
tar "$firstarg" "$@" && exit 0
|
||||
|
@ -92,7 +92,7 @@ XChangeDeviceControl(dpy, dev, control, d)
|
||||
R = (XDeviceResolutionControl *) d;
|
||||
r.control = DEVICE_RESOLUTION;
|
||||
r.length = sizeof(xDeviceResolutionCtl) +
|
||||
R->num_valuators * sizeof(int);
|
||||
R->num_valuators * sizeof(int);
|
||||
r.first_valuator = R->first_valuator;
|
||||
r.num_valuators = R->num_valuators;
|
||||
req->length += ((unsigned)(r.length + 3) >> 2);
|
||||
@ -104,8 +104,115 @@ XChangeDeviceControl(dpy, dev, control, d)
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return (NoSuchExtension);
|
||||
} else
|
||||
} else {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return (rep.status);
|
||||
}
|
||||
}
|
||||
case DEVICE_ABS_CALIB:
|
||||
{
|
||||
XDeviceAbsCalibControl *C = (XDeviceAbsCalibControl *) d;
|
||||
xDeviceAbsCalibCtl c;
|
||||
|
||||
c.control = DEVICE_ABS_CALIB;
|
||||
c.length = sizeof(c);
|
||||
c.min_x = C->min_x;
|
||||
c.max_x = C->max_x;
|
||||
c.min_y = C->min_y;
|
||||
c.max_y = C->max_y;
|
||||
c.flip_x = C->flip_x;
|
||||
c.flip_y = C->flip_y;
|
||||
c.rotation = C->rotation;
|
||||
c.button_threshold = C->button_threshold;
|
||||
|
||||
req->length += (sizeof(c) + 3) >> 2;
|
||||
Data(dpy, (char *) &c, sizeof(c));
|
||||
|
||||
if (!_XReply(dpy, (xReply *) &rep, 0, xTrue)) {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return NoSuchExtension;
|
||||
}
|
||||
else {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return rep.status;
|
||||
}
|
||||
}
|
||||
case DEVICE_ABS_AREA:
|
||||
{
|
||||
XDeviceAbsAreaControl *A = (XDeviceAbsAreaControl *) d;
|
||||
xDeviceAbsAreaCtl a;
|
||||
|
||||
a.control = DEVICE_ABS_AREA;
|
||||
a.length = sizeof(a);
|
||||
a.offset_x = A->offset_x;
|
||||
a.offset_y = A->offset_y;
|
||||
a.width = A->width;
|
||||
a.height = A->height;
|
||||
a.screen = A->screen;
|
||||
a.following = A->following;
|
||||
|
||||
req->length += (sizeof(a) + 3) >> 2;
|
||||
Data(dpy, (char *) &a, sizeof(a));
|
||||
|
||||
if (!_XReply(dpy, (xReply *) &rep, 0, xTrue)) {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return NoSuchExtension;
|
||||
}
|
||||
else {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return rep.status;
|
||||
}
|
||||
}
|
||||
case DEVICE_CORE:
|
||||
{
|
||||
XDeviceCoreControl *C = (XDeviceCoreControl *) d;
|
||||
xDeviceCoreCtl c;
|
||||
|
||||
c.control = DEVICE_CORE;
|
||||
c.length = sizeof(c);
|
||||
c.status = C->status;
|
||||
|
||||
req->length += (sizeof(c) + 3) >> 2;
|
||||
Data (dpy, (char *) &c, sizeof(c));
|
||||
|
||||
if (!_XReply(dpy, (xReply *) &rep, 0, xTrue)) {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return NoSuchExtension;
|
||||
}
|
||||
else {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return rep.status;
|
||||
}
|
||||
}
|
||||
case DEVICE_ENABLE:
|
||||
{
|
||||
XDeviceEnableControl *E = (XDeviceEnableControl *) d;
|
||||
xDeviceEnableCtl e;
|
||||
|
||||
e.control = DEVICE_ENABLE;
|
||||
e.length = sizeof(e);
|
||||
e.enable = E->enable;
|
||||
|
||||
req->length += (sizeof(e) + 3) >> 2;
|
||||
Data (dpy, (char *) &e, sizeof(e));
|
||||
|
||||
if (!_XReply(dpy, (xReply *) &rep, 0, xTrue)) {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return NoSuchExtension;
|
||||
}
|
||||
else {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return rep.status;
|
||||
}
|
||||
}
|
||||
default:
|
||||
{
|
||||
|
@ -80,9 +80,6 @@ typedef struct _XInputData
|
||||
XExtensionVersion *vers;
|
||||
} XInputData;
|
||||
|
||||
#define XInputCheckExtension(dpy,i,val) \
|
||||
XextCheckExtension (dpy, i, xinput_extension_name, val)
|
||||
|
||||
static /* const */ XExtensionHooks xinput_extension_hooks = {
|
||||
NULL, /* create_gc */
|
||||
NULL, /* copy_gc */
|
||||
@ -122,7 +119,9 @@ XEXT_GENERATE_FIND_DISPLAY(XInput_find_display, xinput_info,
|
||||
{XI_Present, XI_Add_XSetDeviceValuators_Major,
|
||||
XI_Add_XSetDeviceValuators_Minor},
|
||||
{XI_Present, XI_Add_XChangeDeviceControl_Major,
|
||||
XI_Add_XChangeDeviceControl_Minor}
|
||||
XI_Add_XChangeDeviceControl_Minor},
|
||||
{XI_Present, XI_Add_DevicePresenceNotify_Major,
|
||||
XI_Add_DevicePresenceNotify_Minor}
|
||||
};
|
||||
|
||||
/***********************************************************************
|
||||
@ -181,6 +180,12 @@ _xidevicebusy(dpy, error)
|
||||
*error = info->codes->first_error + XI_DeviceBusy;
|
||||
}
|
||||
|
||||
static int XInputCheckExtension(Display *dpy, XExtDisplayInfo *info)
|
||||
{
|
||||
XextCheckExtension (dpy, info, xinput_extension_name, 0);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
*
|
||||
* Check to see if the input extension is installed in the server.
|
||||
@ -196,7 +201,10 @@ _XiCheckExtInit(dpy, version_index, info)
|
||||
{
|
||||
XExtensionVersion *ext;
|
||||
|
||||
XInputCheckExtension(dpy, info, -1);
|
||||
if (!XInputCheckExtension(dpy, info)) {
|
||||
UnlockDisplay(dpy);
|
||||
return (-1);
|
||||
}
|
||||
|
||||
if (info->data == NULL) {
|
||||
info->data = (XPointer) Xmalloc(sizeof(XInputData));
|
||||
@ -205,7 +213,7 @@ _XiCheckExtInit(dpy, version_index, info)
|
||||
return (-1);
|
||||
}
|
||||
((XInputData *) info->data)->vers =
|
||||
_XiGetExtensionVersion(dpy, "XInputExtension");
|
||||
_XiGetExtensionVersion(dpy, "XInputExtension", info);
|
||||
}
|
||||
|
||||
if (versions[version_index].major_version > Dont_Check) {
|
||||
@ -251,6 +259,14 @@ Ones(mask)
|
||||
return (((y + (y >> 3)) & 030707070707) % 077);
|
||||
}
|
||||
|
||||
int
|
||||
_XiGetDevicePresenceNotifyEvent(Display * dpy)
|
||||
{
|
||||
XExtDisplayInfo *info = XInput_find_display(dpy);
|
||||
|
||||
return info->codes->first_event + XI_DevicePresenceNotify;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
*
|
||||
* Handle Input extension events.
|
||||
@ -665,6 +681,22 @@ XInputWireToEvent(dpy, re, event)
|
||||
return (ENQUEUE_EVENT);
|
||||
}
|
||||
break;
|
||||
|
||||
case XI_DevicePresenceNotify:
|
||||
{
|
||||
XDevicePresenceNotifyEvent *ev = (XDevicePresenceNotifyEvent *) re;
|
||||
devicePresenceNotify *ev2 = (devicePresenceNotify *) event;
|
||||
|
||||
*ev = *(XDevicePresenceNotifyEvent *) save;
|
||||
ev->window = 0;
|
||||
ev->time = ev2->time;
|
||||
ev->devchange = ev2->devchange;
|
||||
ev->deviceid = ev2->deviceid;
|
||||
ev->control = ev2->control;
|
||||
return (ENQUEUE_EVENT);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
printf("XInputWireToEvent: UNKNOWN WIRE EVENT! type=%d\n", type);
|
||||
break;
|
||||
|
@ -61,13 +61,11 @@ SOFTWARE.
|
||||
#include <X11/extensions/extutil.h>
|
||||
#include "XIint.h"
|
||||
|
||||
XDeviceControl * XGetDeviceControl(dpy, dev, control)
|
||||
register Display *
|
||||
dpy;
|
||||
XDevice *
|
||||
dev;
|
||||
int
|
||||
control;
|
||||
XDeviceControl *
|
||||
XGetDeviceControl(dpy, dev, control)
|
||||
register Display *dpy;
|
||||
XDevice *dev;
|
||||
int control;
|
||||
{
|
||||
int size = 0;
|
||||
int nbytes, i;
|
||||
@ -116,6 +114,20 @@ XDeviceControl * XGetDeviceControl(dpy, dev, control)
|
||||
(3 * sizeof(int) * r->num_valuators);
|
||||
break;
|
||||
}
|
||||
case DEVICE_ABS_CALIB:
|
||||
{
|
||||
size += sizeof(xDeviceAbsCalibState);
|
||||
break;
|
||||
}
|
||||
case DEVICE_ABS_AREA:
|
||||
{
|
||||
size += sizeof(xDeviceAbsAreaState);
|
||||
break;
|
||||
}
|
||||
case DEVICE_CORE:
|
||||
{
|
||||
size += sizeof(xDeviceCoreState);
|
||||
}
|
||||
default:
|
||||
size += d->length;
|
||||
break;
|
||||
@ -152,6 +164,63 @@ XDeviceControl * XGetDeviceControl(dpy, dev, control)
|
||||
*iptr++ = *iptr2++;
|
||||
break;
|
||||
}
|
||||
case DEVICE_ABS_CALIB:
|
||||
{
|
||||
xDeviceAbsCalibState *c = (xDeviceAbsCalibState *) d;
|
||||
XDeviceAbsCalibState *C = (XDeviceAbsCalibState *) Device;
|
||||
|
||||
C->control = DEVICE_ABS_CALIB;
|
||||
C->length = sizeof(C);
|
||||
C->min_x = c->min_x;
|
||||
C->max_x = c->max_x;
|
||||
C->min_y = c->min_y;
|
||||
C->max_y = c->max_y;
|
||||
C->flip_x = c->flip_x;
|
||||
C->flip_y = c->flip_y;
|
||||
C->rotation = c->rotation;
|
||||
C->button_threshold = c->button_threshold;
|
||||
|
||||
break;
|
||||
}
|
||||
case DEVICE_ABS_AREA:
|
||||
{
|
||||
xDeviceAbsAreaState *a = (xDeviceAbsAreaState *) d;
|
||||
XDeviceAbsAreaState *A = (XDeviceAbsAreaState *) Device;
|
||||
|
||||
A->control = DEVICE_ABS_AREA;
|
||||
A->length = sizeof(A);
|
||||
A->offset_x = a->offset_x;
|
||||
A->offset_y = a->offset_y;
|
||||
A->width = a->width;
|
||||
A->height = a->height;
|
||||
A->screen = a->screen;
|
||||
A->following = a->following;
|
||||
|
||||
break;
|
||||
}
|
||||
case DEVICE_CORE:
|
||||
{
|
||||
xDeviceCoreState *c = (xDeviceCoreState *) d;
|
||||
XDeviceCoreState *C = (XDeviceCoreState *) Device;
|
||||
|
||||
C->control = DEVICE_CORE;
|
||||
C->length = sizeof(C);
|
||||
C->status = c->status;
|
||||
C->iscore = c->iscore;
|
||||
|
||||
break;
|
||||
}
|
||||
case DEVICE_ENABLE:
|
||||
{
|
||||
xDeviceEnableState *e = (xDeviceEnableState *) d;
|
||||
XDeviceEnableState *E = (XDeviceEnableState *) Device;
|
||||
|
||||
E->control = DEVICE_ENABLE;
|
||||
E->length = sizeof(E);
|
||||
E->enable = e->enable;
|
||||
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@ -64,9 +64,10 @@ XExtensionVersion *
|
||||
XGetExtensionVersion(register Display * dpy, _Xconst char *name)
|
||||
{
|
||||
XExtensionVersion *ext;
|
||||
XExtDisplayInfo *info = XInput_find_display(dpy);
|
||||
|
||||
LockDisplay(dpy);
|
||||
ext = _XiGetExtensionVersion(dpy, name);
|
||||
ext = _XiGetExtensionVersion(dpy, name, info);
|
||||
if (ext != (XExtensionVersion *) NoSuchExtension) {
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
@ -75,12 +76,11 @@ XGetExtensionVersion(register Display * dpy, _Xconst char *name)
|
||||
}
|
||||
|
||||
XExtensionVersion *
|
||||
_XiGetExtensionVersion(register Display * dpy, _Xconst char *name)
|
||||
_XiGetExtensionVersion(register Display * dpy, _Xconst char *name, XExtDisplayInfo *info)
|
||||
{
|
||||
xGetExtensionVersionReq *req;
|
||||
xGetExtensionVersionReply rep;
|
||||
XExtensionVersion *ext;
|
||||
XExtDisplayInfo *info = XInput_find_display(dpy);
|
||||
|
||||
if (_XiCheckExtInit(dpy, Dont_Check, info) == -1)
|
||||
return ((XExtensionVersion *) NoSuchExtension);
|
||||
|
@ -106,6 +106,8 @@ XGetSelectedExtensionEvents(dpy, w, this_client_count, this_client_list,
|
||||
sizeof(XEventClass));
|
||||
if (!*this_client_list) {
|
||||
_XEatData(dpy, (unsigned long)tlen + alen);
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return (Success);
|
||||
}
|
||||
for (i = 0; i < *this_client_count; i++) {
|
||||
@ -122,6 +124,8 @@ XGetSelectedExtensionEvents(dpy, w, this_client_count, this_client_list,
|
||||
Xfree((char *)*this_client_list);
|
||||
*this_client_list = NULL;
|
||||
_XEatData(dpy, (unsigned long)alen);
|
||||
UnlockDisplay(dpy);
|
||||
SyncHandle();
|
||||
return (Success);
|
||||
}
|
||||
for (i = 0; i < *all_clients_count; i++) {
|
||||
|
@ -12,6 +12,6 @@ extern XExtDisplayInfo *XInput_find_display(Display *);
|
||||
|
||||
extern int _XiCheckExtInit(Display *, int, XExtDisplayInfo *);
|
||||
|
||||
extern XExtensionVersion *_XiGetExtensionVersion(Display *, _Xconst char *);
|
||||
extern XExtensionVersion *_XiGetExtensionVersion(Display *, _Xconst char *, XExtDisplayInfo *);
|
||||
|
||||
#endif
|
||||
|
@ -72,6 +72,8 @@ XSetDeviceFocus(dpy, dev, focus, revert_to, time)
|
||||
XExtDisplayInfo *info = XInput_find_display(dpy);
|
||||
|
||||
LockDisplay(dpy);
|
||||
if (_XiCheckExtInit(dpy, XInput_Initial_Release, info) == -1)
|
||||
return (NoSuchExtension);
|
||||
|
||||
GetReq(SetDeviceFocus, req);
|
||||
req->reqType = info->codes->major_opcode;
|
||||
|
Loading…
Reference in New Issue
Block a user