libXi 1.1.3

This commit is contained in:
matthieu 2007-11-24 16:45:12 +00:00
parent f68d10dc1f
commit 3d6019abca
38 changed files with 903 additions and 336 deletions

View File

@ -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>

View File

@ -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
======================

View File

@ -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
View File

@ -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)

View File

@ -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)

View File

@ -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

View File

@ -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)

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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:
{

View File

@ -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;

View File

@ -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;
}

View File

@ -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);

View File

@ -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++) {

View File

@ -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

View File

@ -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;