Update to xtrans 1.2.6. Only a small bug fix in addition to the

usual doc/autotools churn.
This commit is contained in:
matthieu 2010-11-11 10:34:28 +00:00
parent 2b655e7a9e
commit 2514f2c1df
18 changed files with 4151 additions and 1568 deletions

View File

@ -1,4 +1,4 @@
Copyright 1993, 1994, 1998 The Open Group
Copyright 1993, 1994, 1998, 2002 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
@ -48,29 +48,26 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
______________________________________________________________________________
Copyright 2002, 2005 Sun Microsystems, Inc. All rights reserved.
Copyright (c) 2002, 2005, Oracle and/or its affiliates. All rights reserved.
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
The above copyright notice and this permission notice (including the next
paragraph) shall be included in all copies or substantial portions of the
Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of the copyright holders shall
not be used in advertising or otherwise to promote the sale, use or
other dealings in this Software without prior written authorization
from the copyright holders.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
______________________________________________________________________________

View File

@ -1,3 +1,250 @@
commit 59f57d1a19d4091fef115b9eafa139bf620332cb
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Mon Nov 8 16:33:45 2010 -0800
xtrans 1.2.6
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 05cd71c899e83022147f27085ee652d26f5462cb
Author: Jesse Adkins <jesserayadkins@gmail.com>
Date: Sat Nov 6 12:53:24 2010 -0700
Remove ISCFuncs, fix SCOFuncs inclusion (bug 23324)
ISCFuncs was removed by commit 339ddc413559d4cb117a72f87b2a70dae6911c32.
SCOFuncs should be for SCO only, instead of !sun.
Also, remove comments that suggest ISC support.
Signed-off-by: Jesse Adkins <jesserayadkins@gmail.com>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 0e5a66c82535dd8e9beee9fc4c42c52f90d05f50
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Nov 6 13:22:59 2010 -0700
doc: Update for X11R7/modularization
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 1858516e9f0f3e65cc3d1f6cedfe8bfa614c8082
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Nov 6 11:22:15 2010 -0700
doc: Markup & typo cleanups
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 16bdc50ca85bbae065a32647e2410a5ca47b4924
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Nov 6 09:53:08 2010 -0700
doc: Correct legal notices
Restore both copyright/license notices from troff version
Move implementation note out of legalnotice section
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit d01d081538d04ac60b9e14f6e2faa60fe6bed5ff
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Nov 6 09:23:26 2010 -0700
doc: Use installed css stylesheet instead of making another copy
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit ea6977f4a51612172ba51c3bd35aa150ad9ff158
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Nov 6 12:41:48 2010 -0700
Xtransint.h: Add missing ' in comment
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 862d2de24950d2658158ebc4cf8307e73f80bc8d
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 29 18:22:33 2010 -0700
Sun's copyrights now belong to Oracle
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit cbb59ebc916d0be18c322eec782b694f4dc2e685
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Sun Jun 27 20:27:39 2010 -0400
Update README to reflect docs converted from nroff to DocBook XML
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
commit 3441142714b2640d1e143fcb5d089a2a42bd5321
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Sun Jun 27 20:21:20 2010 -0400
doc: remove trailing spaces in xtrans.xml
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
commit 7761846c7fd97f15d7207e1b9fd9d42c9e58a0c4
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Sat Jun 26 13:06:22 2010 -0400
doc: replace groff input format with docbook xml format
Initial version of xtrans docbook xml.
Requires util-macros 1.10
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
commit 4f557036253ac5750576c88e5b9a86759a49d247
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Fri Jun 18 21:47:52 2010 -0400
config: XORG_WITH_GROFF: use HAVE_GROFF_HTML conditional
Groff uses grohtml to generate html output format. This program, in turn,
uses a number of pnm* commands from the netpbm package, psselect
from the psutils package and the ghostscript package.
These are independently installed, so they could be missing.
Skip the HTML output format if one of the dependencies is missing.
The version 1.9 of the util-macros package is required.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
commit 1e9b958a096682b1ec111d400bd25048e3f95ed4
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri May 21 18:54:20 2010 -0700
Update README to reflect docs moved here from xorg-docs module
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit d400e69526c1c331e8e23893e2ba8658979376e8
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Mon Mar 29 14:53:49 2010 -0400
config: remove the pkgconfig pc.in file from EXTRA_DIST
Automake always includes it in the tarball.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
commit 373922e1529b3d55513fbc0ec24527600f7b529c
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Tue Feb 16 18:18:06 2010 -0500
doc: use HAVE_GROFF_MM to skip doc when 'm.tmac' macros missing
This conditional is defined in XORG_WITH_GROFF macro.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
commit b531ff3ed2ad841b716ba370fd43bbe8f06f1185
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Fri Jan 29 15:05:37 2010 -0500
doc: use new macros XORG_WITH_GROFF and PS2PDF
These control the usage of doc tools
Also use XORG_ENABLE_DOCS to control generation of docs
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
commit 5922556f408fbcd14e7ad23bbe46db2ae8dcdee6
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Thu Jan 14 21:11:43 2010 -0800
Update Sun license notices to current X.Org standard form
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit dab2bcdaf60977643ec55d71a81e67c1e3a162a9
Author: Rémi Cardona <remi@gentoo.org>
Date: Thu Dec 17 08:31:20 2009 +0100
require autoconf 2.60 because of $(docdir) use
Signed-off-by: Rémi Cardona <remi@gentoo.org>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
Reviewed-by: Alan Coopersmith <alan.coopersmith@sun.com>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
commit 197ec0dc83e775e42fce4966142ae3a641f2db69
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Fri Nov 27 20:56:05 2009 -0500
Makefile.am: add ChangeLog and INSTALL on MAINTAINERCLEANFILES
Now that the INSTALL file is generated.
Allows running make maintainer-clean.
commit 27a18fb2c9356cc44bdd892f87200c3ea230109b
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Wed Oct 28 14:09:11 2009 -0400
INSTALL, NEWS, README or AUTHORS files are missing/incorrect #24206
Add missing INSTALL file. Use standard GNU file on building tarball
README may have been updated
Remove AUTHORS file as it is empty and no content available yet.
Remove NEWS file as it is empty and no content available yet.
commit 92da89326d26e0924d4c6efe2ebd26ceb527f4f7
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Mon Oct 26 22:08:43 2009 -0400
Makefile.am: ChangeLog not required: EXTRA_DIST or *CLEANFILES #24432
ChangeLog filename is known to Automake and requires no further
coding in the makefile.
commit 9aeff40d0722b4fedc4ab9ccc1aaff75368020fe
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Thu Oct 22 12:34:20 2009 -0400
.gitignore: use common defaults with custom section # 24239
Using common defaults will reduce errors and maintenance.
Only the very small or inexistent custom section need periodic maintenance
when the structure of the component changes. Do not edit defaults.
commit f0f7c47055eecac35786ec616c7632604da204b5
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Wed Oct 21 12:47:27 2009 -0700
This is not a GNU project, so declare it foreign.
On Wed, 2009-10-21 at 13:36 +1000, Peter Hutterer wrote:
> On Tue, Oct 20, 2009 at 08:23:55PM -0700, Jeremy Huddleston wrote:
> > I noticed an INSTALL file in xlsclients and libXvMC today, and it
> > was quite annoying to work around since 'autoreconf -fvi' replaces
> > it and git wants to commit it. Should these files even be in git?
> > Can I nuke them for the betterment of humanity and since they get
> > created by autoreconf anyways?
>
> See https://bugs.freedesktop.org/show_bug.cgi?id=24206
As an interim measure, replace AM_INIT_AUTOMAKE([dist-bzip2]) with
AM_INIT_AUTOMAKE([foreign dist-bzip2]). This will prevent the generation
of the INSTALL file. It is also part of the 24206 solution.
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
commit 7d98b9b03c5fd5a82f9f4d215b10c0926edeab00
Author: Eric Sesterhenn <eric.sesterhenn@lsexperts.de>
Date: Mon Oct 19 09:53:18 2009 -0700
Bug 24612: Memory & fd leaks in local transports
X.Org bug #24612 <http://bugs.freedesktop.org/show_bug.cgi?id=24612>
Patch #30548 <http://bugs.freedesktop.org/attachment.cgi?id=30548>
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 1127b8ec766ed8c48cc49b0779647fb697a07ebd
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 17 13:14:03 2009 -0700

View File

@ -1,16 +1,19 @@
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, 2007, 2008 Free Software Foundation, Inc.
This file is free documentation; the Free Software Foundation gives
This file is free documentation; the Free Software Foundation gives
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.
@ -67,42 +67,57 @@ The simplest way to compile this package is:
all sorts of other programs in order to regenerate files that came
with the distribution.
6. Often, you can also type `make uninstall' to remove the installed
files again.
Compilers and Options
=====================
Some systems require unusual options for compilation or linking that the
`configure' script does not know about. Run `./configure --help' for
details on some of the pertinent environment variables.
Some systems require unusual options for compilation or linking that
the `configure' script does not know about. Run `./configure --help'
for details on some of the pertinent environment variables.
You can give `configure' initial values for configuration parameters
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.
Compiling For Multiple Architectures
====================================
You can compile the package for more than one kind of computer at the
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.
On MacOS X 10.5 and later systems, you can create libraries and
executables that work on multiple system types--known as "fat" or
"universal" binaries--by specifying multiple `-arch' options to the
compiler but only a single `-arch' option to the preprocessor. Like
this:
./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CPP="gcc -E" CXXCPP="g++ -E"
This is not guaranteed to produce working output in all cases, you
may have to build one architecture at a time and combine the results
using the `lipo' tool if you have problems.
Installation Names
==================
By default, `make install' installs the package's commands under
By default, `make install' installs the package's commands under
`/usr/local/bin', include files under `/usr/local/include', etc. You
can specify an installation prefix other than `/usr/local' by giving
`configure' the option `--prefix=PREFIX'.
@ -125,7 +140,7 @@ option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
Optional Features
=================
Some packages pay attention to `--enable-FEATURE' options to
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The
@ -137,14 +152,36 @@ find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
Particular systems
==================
On HP-UX, the default C compiler is not ANSI C compatible. If GNU
CC is not installed, it is recommended to use the following options in
order to use an ANSI C compiler:
./configure CC="cc -Ae"
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
a workaround. If GNU CC is not installed, it is therefore recommended
to try
./configure CC="cc"
and if that doesn't work, try
./configure CC="cc -nodtk"
Specifying the System Type
==========================
There may be some features `configure' cannot figure out automatically,
but needs to determine by the type of machine the package will run on.
Usually, assuming the package is built to be run on the _same_
architectures, `configure' can figure that out, but if it prints a
message saying it cannot guess the machine type, give it the
There may be some features `configure' cannot figure out
automatically, but needs to determine by the type of machine the package
will run on. Usually, assuming the package is built to be run on the
_same_ architectures, `configure' can figure that out, but if it prints
a message saying it cannot guess the machine type, give it the
`--build=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name which has the form:
@ -170,9 +207,9 @@ eventually be run) with `--host=TYPE'.
Sharing Defaults
================
If you want to set default values for `configure' scripts to share, you
can create a site shell script called `config.site' that gives default
values for variables like `CC', `cache_file', and `prefix'.
If you want to set default values for `configure' scripts to share,
you can create a site shell script called `config.site' that gives
default values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script.
@ -181,7 +218,7 @@ A warning: not all `configure' scripts look for a site script.
Defining Variables
==================
Variables not defined in a site shell script can be set in the
Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set
@ -190,21 +227,29 @@ 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
======================
`configure' recognizes the following options to control how it operates.
`configure' recognizes the following options to control how it
operates.
`--help'
`-h'
Print a summary of the options to `configure', and exit.
Print a summary of all of the options to `configure', and exit.
`--help=short'
`--help=recursive'
Print a summary of the options unique to this package's
`configure', and exit. The `short' variant lists options used
only in the top level, while the `recursive' variant lists options
also present in any nested packages.
`--version'
`-V'
@ -231,6 +276,16 @@ configuration-related scripts to be executed by `/bin/bash'.
Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically.
`--prefix=DIR'
Use DIR as the installation prefix. *Note Installation Names::
for more details, including other options available for fine-tuning
the installation locations.
`--no-create'
`-n'
Run the configure checks, but stop before creating any output
files.
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.

View File

@ -1,3 +1,5 @@
SUBDIRS=doc
Xtransincludedir = $(includedir)/X11/Xtrans
Xtransinclude_HEADERS = \
Xtrans.h \
@ -15,55 +17,15 @@ aclocal_DATA = xtrans.m4
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = xtrans.pc
EXTRA_DIST = xtrans.pc.in ${aclocal_DATA} ChangeLog Xtrans.mm
MAINTAINERCLEANFILES = ChangeLog INSTALL
EXTRA_DIST = ${aclocal_DATA}
MAINTAINERCLEANFILES = ChangeLog
.PHONY: ChangeLog INSTALL
.PHONY: ChangeLog
INSTALL:
$(INSTALL_CMD)
ChangeLog:
$(CHANGELOG_CMD)
dist-hook: ChangeLog
# Rules to convert documentation from troff to other formats
doc_sources = Xtrans.mm
if HAVE_PS2PDF
printable_format = .pdf
else
printable_format = .ps
endif
if BUILD_DOCS
doc_DATA = $(doc_sources:.mm=.txt) \
$(doc_sources:.mm=$(printable_format)) \
$(doc_sources:.mm=.html)
CLEANFILES = $(doc_DATA)
MOSTLYCLEANFILES = index.*
# Pass version string as a troff string for substitution
GROFF_DEFS = -dxV="$(PACKAGE_STRING)"
# -t to run through tbl
GROFF_FLAGS = -t -mm $(GROFF_DEFS)
SUFFIXES = .mm .ps .txt .html .pdf
.mm.ps:
-$(AM_V_GEN) $(GROFF) -Tps $(GROFF_FLAGS) $< 2> index.$@.raw > $@
@if grep '^[^1-9.]' index.$@.raw | grep -v warning; then exit 1; \
else test $$? -le 1; fi
.mm.txt:
$(AM_V_GEN) env GROFF_NO_SGR=TRUE $(GROFF) -Tutf8 $(GROFF_FLAGS) \
$< 2> index.$@.raw > $@
.mm.html:
$(AM_V_GEN) $(GROFF) -Thtml $(GROFF_FLAGS) $< 2> index.$@.raw > $@
.ps.pdf:
$(AM_V_GEN) $(PS2PDF) $< $@
endif BUILD_DOCS
dist-hook: ChangeLog INSTALL

View File

@ -53,22 +53,28 @@ mkinstalldirs = $(SHELL) $(install_sh) -d
CONFIG_CLEAN_FILES = xtrans.pc
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-exec-recursive install-info-recursive \
install-recursive installcheck-recursive installdirs-recursive \
pdf-recursive ps-recursive uninstall-info-recursive \
uninstall-recursive
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
am__installdirs = "$(DESTDIR)$(aclocaldir)" "$(DESTDIR)$(docdir)" \
am__installdirs = "$(DESTDIR)$(aclocaldir)" \
"$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(Xtransincludedir)"
aclocalDATA_INSTALL = $(INSTALL_DATA)
docDATA_INSTALL = $(INSTALL_DATA)
pkgconfigDATA_INSTALL = $(INSTALL_DATA)
DATA = $(aclocal_DATA) $(doc_DATA) $(pkgconfig_DATA)
DATA = $(aclocal_DATA) $(pkgconfig_DATA)
XtransincludeHEADERS_INSTALL = $(INSTALL_HEADER)
HEADERS = $(Xtransinclude_HEADERS)
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@ -79,20 +85,20 @@ am__remove_distdir = \
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
APP_MAN_DIR = @APP_MAN_DIR@
APP_MAN_SUFFIX = @APP_MAN_SUFFIX@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BUILD_DOCS_FALSE = @BUILD_DOCS_FALSE@
BUILD_DOCS_TRUE = @BUILD_DOCS_TRUE@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
@ -109,13 +115,22 @@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_DOCS_FALSE = @ENABLE_DOCS_FALSE@
ENABLE_DOCS_TRUE = @ENABLE_DOCS_TRUE@
EXEEXT = @EXEEXT@
FILE_MAN_DIR = @FILE_MAN_DIR@
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
FOP = @FOP@
GREP = @GREP@
GROFF = @GROFF@
HAVE_PS2PDF_FALSE = @HAVE_PS2PDF_FALSE@
HAVE_PS2PDF_TRUE = @HAVE_PS2PDF_TRUE@
HAVE_FOP_FALSE = @HAVE_FOP_FALSE@
HAVE_FOP_TRUE = @HAVE_FOP_TRUE@
HAVE_STYLESHEETS_FALSE = @HAVE_STYLESHEETS_FALSE@
HAVE_STYLESHEETS_TRUE = @HAVE_STYLESHEETS_TRUE@
HAVE_XMLTO_FALSE = @HAVE_XMLTO_FALSE@
HAVE_XMLTO_TEXT_FALSE = @HAVE_XMLTO_TEXT_FALSE@
HAVE_XMLTO_TEXT_TRUE = @HAVE_XMLTO_TEXT_TRUE@
HAVE_XMLTO_TRUE = @HAVE_XMLTO_TRUE@
INSTALL_CMD = @INSTALL_CMD@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -130,6 +145,7 @@ MAINT = @MAINT@
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MAN_SUBSTS = @MAN_SUBSTS@
MISC_MAN_DIR = @MISC_MAN_DIR@
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
OBJEXT = @OBJEXT@
@ -140,11 +156,17 @@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PS2PDF = @PS2PDF@
PKG_CONFIG = @PKG_CONFIG@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
STYLESHEET_SRCDIR = @STYLESHEET_SRCDIR@
VERSION = @VERSION@
XMLTO = @XMLTO@
XORG_MAN_PAGE = @XORG_MAN_PAGE@
XORG_SGML_PATH = @XORG_SGML_PATH@
XSL_STYLESHEET = @XSL_STYLESHEET@
ac_ct_CC = @ac_ct_CC@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
@ -161,7 +183,6 @@ build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
distcleancheck_listfiles = @distcleancheck_listfiles@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
@ -191,6 +212,7 @@ sharedstatedir = @sharedstatedir@
sticky_bit_define = @sticky_bit_define@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
SUBDIRS = doc
Xtransincludedir = $(includedir)/X11/Xtrans
Xtransinclude_HEADERS = \
Xtrans.h \
@ -206,45 +228,26 @@ aclocaldir = $(datadir)/aclocal
aclocal_DATA = xtrans.m4
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = xtrans.pc
EXTRA_DIST = xtrans.pc.in ${aclocal_DATA} ChangeLog Xtrans.mm
MAINTAINERCLEANFILES = ChangeLog
# Rules to convert documentation from troff to other formats
doc_sources = Xtrans.mm
@HAVE_PS2PDF_FALSE@printable_format = .ps
@HAVE_PS2PDF_TRUE@printable_format = .pdf
@BUILD_DOCS_TRUE@doc_DATA = $(doc_sources:.mm=.txt) \
@BUILD_DOCS_TRUE@ $(doc_sources:.mm=$(printable_format)) \
@BUILD_DOCS_TRUE@ $(doc_sources:.mm=.html)
@BUILD_DOCS_TRUE@CLEANFILES = $(doc_DATA)
@BUILD_DOCS_TRUE@MOSTLYCLEANFILES = index.*
# Pass version string as a troff string for substitution
@BUILD_DOCS_TRUE@GROFF_DEFS = -dxV="$(PACKAGE_STRING)"
# -t to run through tbl
@BUILD_DOCS_TRUE@GROFF_FLAGS = -t -mm $(GROFF_DEFS)
@BUILD_DOCS_TRUE@SUFFIXES = .mm .ps .txt .html .pdf
all: all-am
MAINTAINERCLEANFILES = ChangeLog INSTALL
EXTRA_DIST = ${aclocal_DATA}
all: all-recursive
.SUFFIXES:
.SUFFIXES: .mm .ps .txt .html .pdf
am--refresh:
@:
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
cd $(srcdir) && $(AUTOMAKE) --gnu \
echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \
cd $(srcdir) && $(AUTOMAKE) --foreign \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu Makefile
$(AUTOMAKE) --foreign Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@ -283,23 +286,6 @@ uninstall-aclocalDATA:
echo " rm -f '$(DESTDIR)$(aclocaldir)/$$f'"; \
rm -f "$(DESTDIR)$(aclocaldir)/$$f"; \
done
install-docDATA: $(doc_DATA)
@$(NORMAL_INSTALL)
test -z "$(docdir)" || $(mkdir_p) "$(DESTDIR)$(docdir)"
@list='$(doc_DATA)'; for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
f=$(am__strip_dir) \
echo " $(docDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(docdir)/$$f'"; \
$(docDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(docdir)/$$f"; \
done
uninstall-docDATA:
@$(NORMAL_UNINSTALL)
@list='$(doc_DATA)'; for p in $$list; do \
f=$(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(docdir)/$$f'"; \
rm -f "$(DESTDIR)$(docdir)/$$f"; \
done
install-pkgconfigDATA: $(pkgconfig_DATA)
@$(NORMAL_INSTALL)
test -z "$(pkgconfigdir)" || $(mkdir_p) "$(DESTDIR)$(pkgconfigdir)"
@ -335,6 +321,77 @@ uninstall-XtransincludeHEADERS:
rm -f "$(DESTDIR)$(Xtransincludedir)/$$f"; \
done
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
@ -345,10 +402,23 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
@ -361,7 +431,7 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$tags $$unique; \
fi
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
@ -413,6 +483,21 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(mkdir_p) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
distdir) \
|| exit 1; \
fi; \
done
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$(top_distdir)" distdir="$(distdir)" \
dist-hook
@ -514,31 +599,30 @@ distcleancheck: distclean
$(distcleancheck_listfiles) ; \
exit 1; } >&2
check-am: all-am
check: check-am
check: check-recursive
all-am: Makefile $(DATA) $(HEADERS)
installdirs:
for dir in "$(DESTDIR)$(aclocaldir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(Xtransincludedir)"; do \
installdirs: installdirs-recursive
installdirs-am:
for dir in "$(DESTDIR)$(aclocaldir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(Xtransincludedir)"; do \
test -z "$$dir" || $(mkdir_p) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
@ -547,94 +631,86 @@ maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am
clean: clean-recursive
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-tags
dvi: dvi-am
dvi: dvi-recursive
dvi-am:
html: html-am
html: html-recursive
info: info-am
info: info-recursive
info-am:
install-data-am: install-XtransincludeHEADERS install-aclocalDATA \
install-docDATA install-pkgconfigDATA
install-pkgconfigDATA
install-exec-am:
install-info: install-info-am
install-info: install-info-recursive
install-man:
installcheck-am:
maintainer-clean: maintainer-clean-am
maintainer-clean: maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf: pdf-recursive
pdf-am:
ps: ps-am
ps: ps-recursive
ps-am:
uninstall-am: uninstall-XtransincludeHEADERS uninstall-aclocalDATA \
uninstall-docDATA uninstall-info-am uninstall-pkgconfigDATA
.PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \
clean-generic ctags dist dist-all dist-bzip2 dist-gzip \
dist-hook dist-shar dist-tarZ dist-zip distcheck distclean \
distclean-generic distclean-tags distcleancheck distdir \
distuninstallcheck dvi dvi-am html html-am info info-am \
install install-XtransincludeHEADERS install-aclocalDATA \
install-am install-data install-data-am install-docDATA \
install-exec install-exec-am install-info install-info-am \
install-man install-pkgconfigDATA install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags uninstall uninstall-XtransincludeHEADERS \
uninstall-aclocalDATA uninstall-am uninstall-docDATA \
uninstall-info-am uninstall-pkgconfigDATA
uninstall-info: uninstall-info-recursive
.PHONY: ChangeLog
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \
check-am clean clean-generic clean-recursive ctags \
ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-hook \
dist-shar dist-tarZ dist-zip distcheck distclean \
distclean-generic distclean-recursive distclean-tags \
distcleancheck distdir distuninstallcheck dvi dvi-am html \
html-am info info-am install install-XtransincludeHEADERS \
install-aclocalDATA install-am install-data install-data-am \
install-exec install-exec-am install-info install-info-am \
install-man install-pkgconfigDATA install-strip installcheck \
installcheck-am installdirs installdirs-am maintainer-clean \
maintainer-clean-generic maintainer-clean-recursive \
mostlyclean mostlyclean-generic mostlyclean-recursive pdf \
pdf-am ps ps-am tags tags-recursive uninstall \
uninstall-XtransincludeHEADERS uninstall-aclocalDATA \
uninstall-am uninstall-info-am uninstall-pkgconfigDATA
.PHONY: ChangeLog INSTALL
INSTALL:
$(INSTALL_CMD)
ChangeLog:
$(CHANGELOG_CMD)
dist-hook: ChangeLog
@BUILD_DOCS_TRUE@.mm.ps:
@BUILD_DOCS_TRUE@ -$(AM_V_GEN) $(GROFF) -Tps $(GROFF_FLAGS) $< 2> index.$@.raw > $@
@BUILD_DOCS_TRUE@ @if grep '^[^1-9.]' index.$@.raw | grep -v warning; then exit 1; \
@BUILD_DOCS_TRUE@ else test $$? -le 1; fi
@BUILD_DOCS_TRUE@.mm.txt:
@BUILD_DOCS_TRUE@ $(AM_V_GEN) env GROFF_NO_SGR=TRUE $(GROFF) -Tutf8 $(GROFF_FLAGS) \
@BUILD_DOCS_TRUE@ $< 2> index.$@.raw > $@
@BUILD_DOCS_TRUE@.mm.html:
@BUILD_DOCS_TRUE@ $(AM_V_GEN) $(GROFF) -Thtml $(GROFF_FLAGS) $< 2> index.$@.raw > $@
@BUILD_DOCS_TRUE@.ps.pdf:
@BUILD_DOCS_TRUE@ $(AM_V_GEN) $(PS2PDF) $< $@
dist-hook: ChangeLog INSTALL
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -10,9 +10,10 @@ system, this package simply installs the C source files into
$(prefix)/include/X11/Xtrans and installs a pkg-config file and an
autoconf m4 macro file with the flags needed to use it.
Documentation of the xtrans API can be found in the xorg-docs package,
in PostScript format in xorg-docs/hardcopy/xtrans/Xtrans.PS.gz and in
the original troff format in xorg-docs/specs/xtrans/Xtrans.mm .
Documentation of the xtrans API can be found in the included xtrans.xml
file in DocBook XML format. If 'xmlto' is installed, you can generate text,
html, postscript or pdf versions of the documentation by configuring
the build with --enable-docs, which is the default.
Please submit bugs & patches to the Xorg bugzilla:

View File

@ -72,7 +72,7 @@ from The Open Group.
#define TRANS_LOCAL_LOCAL_INDEX 9
#define TRANS_LOCAL_PTS_INDEX 10
#define TRANS_LOCAL_NAMED_INDEX 11
#define TRANS_LOCAL_ISC_INDEX 12
/* 12 used to be ISC, but that's gone. */
#define TRANS_LOCAL_SCO_INDEX 13
#define TRANS_SOCKET_INET6_INDEX 14
#define TRANS_LOCAL_PIPE_INDEX 15
@ -108,12 +108,10 @@ Xtransport_table Xtransports[] = {
#endif
#ifdef sun
{ &TRANS(PIPEFuncs), TRANS_LOCAL_PIPE_INDEX },
#else /* !sun */
#if !defined(__SCO__) && !defined(__UNIXWARE__)
{ &TRANS(ISCFuncs), TRANS_LOCAL_ISC_INDEX },
#endif
{ &TRANS(SCOFuncs), TRANS_LOCAL_SCO_INDEX },
#endif /* sun */
#if defined(__SCO__) || defined(__UNIXWARE__)
{ &TRANS(SCOFuncs), TRANS_LOCAL_SCO_INDEX },
#endif /* __SCO__ || __UNIXWARE__ */
#endif /* LOCALCONN */
};

View File

@ -1,789 +0,0 @@
.\" $XFree86: xc/doc/specs/xtrans/Xtrans.mm,v 1.2 2003/07/09 15:27:27 tsi Exp $
'\".nr Ej 1
.PH "'''"
.ce
\fBX Transport Interface\fR
.sp
Copyright (c) 1993, 1994 NCR Corporation - Dayton, Ohio, USA
.sp
All Rights Reserved
.sp
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted, provided
that the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation, and that the name NCR not be used in advertising
or publicity pertaining to distribution of the software without specific,
written prior permission. NCR makes no representations about the
suitability of this software for any purpose. It is provided "as is"
without express or implied warranty.
.sp
NCR DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN
NO EVENT SHALL NCR BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.sp
Copyright 1993, 1994, 2002 The Open Group
.sp
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the ``Software''), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
.sp
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
.sp
THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
.sp
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
.sp
X Window System is a trademark of The Open Group, Inc.
.sp
Designed by Stuart Anderson (NCR) with help from Ralph Mor (X Consortium)
.sp
.ce
\fIDraft Version 0.6\fR
.sp
NOTE: This documentation does not completely match the implementation in R6
(as a result of some late changes made in the code). Specifically, support
was added for font server cloning, and conditional compliation was introduced
for client vs. server code.
.bp
.H 1 "Purposes and Goals"
.P
The X Transport Interface is intended to combine all system and transport
specific code into a single place in the source tree. This API should be used
by all libraries, clients and servers of the X Window System. Use of this API
should allow the addition of new types of transports and support for new
platforms without making any changes to the source except in the X Transport
Interface code.
.P
This interface should solve the problem of multiple #ifdef TRANSPORT and
#ifdef PLATFORM statements scattered throughout the source tree.
.P
This interface should provide enough functionality to support all types of
protocols, including connection oriented protocols such as X11 and FS, and
connection-less oriented protocols such as XDMCP.
.H 1 "Overview of the interface"
.P
The interface provides an API for use by applications. The functions in this
API perform work that is common to all transports and systems, such as
parsing an address into a host and port number. The functions in this API
call transport specific functions that are contained in a table whose
contents are defined at compile time. This table contains an entry for each
type of transport. Each entry is a record containing mostly pointers to
function that implements the interface for the given transport.
.P
This API does not provide an abstraction for select() or poll().
These function are themselves transport independent, so an additional interface
is not needed for these functions. It is also unclear how such an interface
would affect performance.
.H 1 "Definition of Address Specification Format"
.P
Addresses are specified in the following syntax,
.sp
\fIprotocol/host:port\fR
.sp
where \fIprotocol\fR specifies a protocol family or an alias for a protocol
family. A definition of common protocol families is given in a later section.
.P
The \fIhost\fR part specifies the name of a host or other transport dependent
entity that could be interpreted as a Network Service Access Point (NSAP).
.P
The \fIport\fR part specifies the name of a Transport Service Access Point
(TSAP). The format of the TSAP is defined by the underlying transport
implementation, but it is represented using a string format when it is part
of an address.
.H 1 "Internal Data Structures"
.P
There are two major data structures associated with the transport independent
portion of this interface. Additional data structures may be used internally
by each transport.
.H 2 "Xtransport"
.P
Each transport supported has an entry in the transport table.
The transport table is an array of \fIXtransport\fR records. Each record
contains all the entry points for a single transport. This record is defined as:
.DS
.nf
typedef struct _Xtransport {
char *TransName;
int flags;
XtransConnInfo (*OpenCOTSClient)(
struct _Xtransport *, /* transport */
char *, /* protocol */
char *, /* host */
char * /* port */
);
XtransConnInfo (*OpenCOTSServer)(
struct _Xtransport *, /* transport */
char *, /* protocol */
char *, /* host */
char * /* port */
);
XtransConnInfo (*OpenCLTSClient)(
struct _Xtransport *, /* transport */
char *, /* protocol */
char *, /* host */
char * /* port */
);
XtransConnInfo (*OpenCLTSServer)(
struct _Xtransport *, /* transport */
char *, /* protocol */
char *, /* host */
char * /* port */
);
int (*SetOption)(
XtransConnInfo, /* connection */
int, /* option */
int /* arg */
);
int (*CreateListener)(
XtransConnInfo, /* connection */
char *, /* port */
int /* flags */
);
int (*ResetListener)(
XtransConnInfo /* connection */
);
XtransConnInfo (*Accept)(
XtransConnInfo /* connection */
);
int (*Connect)(
XtransConnInfo, /* connection */
char *, /* host */
char * /* port */
);
int (*BytesReadable)(
XtransConnInfo, /* connection */
BytesReadable_t * /* pend */
);
int (*Read)(
XtransConnInfo, /* connection */
char *, /* buf */
int /* size */
);
int (*Write)(
XtransConnInfo, /* connection */
char *, /* buf */
int /* size */
);
int (*Readv)(
XtransConnInfo, /* connection */
struct iovec *, /* buf */
int /* size */
);
int (*Writev)(
XtransConnInfo, /* connection */
struct iovec *, /* buf */
int /* size */
);
int (*Disconnect)(
XtransConnInfo /* connection */
);
int (*Close)(
XtransConnInfo /* connection */
);
} Xtransport;
.fi
.DE
.P
The \fIflags\fR field can contain an OR of the following masks:
.sp
\fITRANS_ALIAS\fR: indicates that this record is providing an alias,
and should not be used to create a listner.
.sp
\fITRANS_LOCAL\fR: indicates that this is a LOCALCONN transport.
.H 2 "XtransConnInfo"
.P
Each connection will have an opaque \fIXtransConnInfo\fR transport connection
object allocated for it. This record contains information specific to the
connection. The record is defined
as:
.DS
.nf
typedef struct _XtransConnInfo *XtransConnInfo;
struct _XtransConnInfo {
struct _Xtransport *transptr;
char *priv;
int flags;
int fd;
int family;
char *addr;
int addrlen;
char *peeraddr;
int peeraddrlen;
};
.fi
.DE
.H 1 "Exposed Transport Independent API"
.P
This API is included in each library and server that uses it. The API
may be used by the library, but it is not added to the public API for that
library. This interface is simply an implementation
facilitator. This API contains a low level set of core primitives, and a few
utility functions that are built on top of the primitives. The utility
functions exist to provide a more familiar interface that can be used to
port existing code.
.P
A macro is defined in Xtrans.h for TRANS(func) that creates a unique function
name depending on where the code is compiled. For example, when built for Xlib,
TRANS(OpenCOTSClient) becomes _X11TransOpenCOTSClient.
.P
All failures are considered fatal, and the connection should be closed and
re-established if desired. In most cases, however, the value of errno will
be available for debugging purposes.
.H 2 "Core Interface API"
.BL
.LI
XtransConnInfo
TRANS(OpenCOTSClient)(char *address)
.P
This function creates a Connection-Oriented Transport that is suitable for
use by a client.
The parameter \fIaddress\fR contains the full address of the
server to which this endpoint will be connected.
This functions returns an opaque transport connection object on success,
or NULL on failure.
.LI
XtransConnInfo
TRANS(OpenCOTSServer)(char *address)
.P
This function creates a Connection-Oriented Transport that is suitable for
use by a server.
The parameter \fIaddress\fR contains the full address to which this
server will be bound.
This functions returns an opaque transport connection object on success,
or NULL on failure.
.LI
XtransConnInfo
TRANS(OpenCLTSClient)(char *address)
.P
This function creates a Connection-Less Transport that is suitable for
use by a client.
The parameter \fIaddress\fR contains the full address of the
server to which this endpoint will be connected.
This functions returns an opaque transport connection object on success,
or NULL on failure.
.LI
XtransConnInfo
TRANS(OpenCLTSServer)(char *address)
.P
This function creates a Connection-Less Transport that is suitable for
use by a server.
The parameter \fIaddress\fR contains the full address to which this
server will be bound.
This functions returns an opaque transport connection object on success,
or NULL on failure.
.LI
int TRANS(SetOption)(XtransConnInfo connection, int option, int arg)
.P
This function sets transport options, similar to the way setsockopt() and
ioctl() work.
The parameter \fIconnection\fR is an endpoint that was obtained from
_XTransOpen*() functions.
The parameter \fIoption\fR contains the option that will be set. The actual
values for \fIoption\fR are defined in a later section.
The parameter \fIarg\fR can be used to pass in an additional value that may
be required by some options.
This function return 0 on success and -1 on failure.
.P
Note: Based on current usage, the complimentary function TRANS(GetOption)()
is not necessary.
.LI
int TRANS(CreateListener)(XtransConnInfo connection, char *port, int flags)
.P
This function sets up the server endpoint for listening.
The parameter \fIconnection\fR is an endpoint that was obtained from
TRANS(OpenCOTSServer)() or TRANS(OpenCLTSServer)().
The parameter \fIport\fR specifies the port to which this endpoint
should be bound for listening.
If \fIport\fR is NULL, then the transport may attempt to allocate any
available TSAP for this connection. If the transport cannot support this,
then this function will return a failure.
The \fIflags\fR parameter can be set to ADDR_IN_USE_ALLOWED to allow
the call to the underlying binding function to fail with a EADDRINUSE
error without causing the TRANS(CreateListener) function itself to
fail.
This function return 0 on success and -1 on failure.
.LI
int TRANS(ResetListener)(XtransConnInfo connection)
.P
When a server is restarted, certain listen ports may need to be reset.
For example, unix domain needs to check that the file used for communication
has not been deleted. If it has, it must be recreated.
The parameter \fIconnection\fR is an opened and bound endpoint that was
obtained from TRANS(OpenCOTSServer)() and passed to TRANS(CreateListener)().
This function will return one of the following values: TRANS_RESET_NOOP,
TRANS_RESET_NEW_FD, or TRANS_RESET_FAILURE.
.LI
XtransConnInfo
TRANS(Accept)(XtransConnInfo connection)
.P
Once a connection indication is received, this function can be called to
accept the connection.
The parameter \fIconnection\fR is an opened and bound endpoint that was
obtained from TRANS(OpenCOTSServer)() and passed to TRANS(CreateListener)().
This function will return a new opaque transport connection object upon
success, NULL otherwise.
.LI
int TRANS(Connect)(XtransConnInfo connection, char *address)
.P
This function creates a connection to a server.
The parameter \fIconnection\fR is an endpoint that was obtained from
TRANS(OpenCOTSClient)().
The parameters \fIaddress\fR specify the TSAP to which this
endpoint should connect. If the protocol is included in the address, it will
be ignored.
This function return 0 on success and -1 on failure.
.LI
int TRANS(BytesReadable)(XtransConnInfo connection, BytesReadable_t *pend);
.P
This function provides the same functionality as the BytesReadable macro.
.LI
int TRANS(Read)(XtransConnInfo connection, char *buf, int size)
.P
This function will return the number of bytes requested on a COTS connection,
and will return the minimum of the number bytes requested or the size of
the incoming packet on a CLTS connection.
.LI
int TRANS(Write)(XtransConnInfo connection, char *buf, int size)
.P
This function will write the requested number of bytes on a COTS connection, and
will send a packet of the requested size on a CLTS connection.
.LI
int TRANS(Readv)(XtransConnInfo connection, struct iovec *buf, int size)
.P
Similar to TRANS(Read)().
.LI
int TRANS(Writev)(XtransConnInfo connection, struct iovec *buf, int size)
.P
Similar to TRANS(Write)().
.LI
int TRANS(Disconnect)(XtransConnInfo connection)
.P
This function is used when an orderly disconnect is desired. This function
breaks the connection on the transport. It is similar to the
socket function shutdown().
.LI
int TRANS(Close)(XtransConnInfo connection)
.P
This function closes the transport, unbinds it, and frees all resources that
was associated with the transport. If a TRANS(Disconnect) call was not made
on the connection, a disorderly disconnect may occur.
.LI
int TRANS(IsLocal)(XtransConnInfo connection)
.P
Returns TRUE if it is a local transport.
.LI
int TRANS(GetMyAddr)(XtransConnInfo connection,
.br
int *familyp, int *addrlenp, Xtransaddr **addrp)
.P
This function is similar to getsockname(). This function will allocate space
for the address, so it must be freed by the caller. Not all transports will
have a valid address until a connection is established. This function should
not be used until the connection is established with Connect() or Accept().
.LI
int TRANS(GetPeerAddr)(XtransConnInfo connection,
.br
int *familyp, int *addrlenp, Xtransaddr **addrp)
.P
This function is similar to getpeername(). This function will allocate space
for the address, so it must be freed by the caller. Not all transports will
have a valid address until a connection is established. This function should
not be used until the connection is established with Connect() or Accept().
.LI
int TRANS(GetConnectionNumber)(XtransConnInfo connection)
.P
Returns the file descriptor associated with this transport.
.LI
int TRANS(MakeAllCOTSServerListeners)(
.br
char *port, int *partial_ret, int *count_ret, XtransConnInfo **connections_ret)
.P
This function should be used by most servers. It will try to establish a COTS
server endpoint for each transport listed in the transport table.
\fIpartial_ret\fR will be set to True if only a partial network could be
created. \fIcount_ret\fR is the number of transports returns, and
\fIconnections_ret\fR is the list of transports.
.LI
int TRANS(MakeAllCLTSServerListeners)(
.br
char *port, int *partial_ret, int *count_ret, XtransConnInfo **connections_ret)
.P
This function should be used by most servers. It will try to establish a CLTS
server endpoint for each transport listed in the transport table.
\fIpartial_ret\fR will be set to True if only a partial network could be
created. \fIcount_ret\fR is the number of transports returns, and
\fIconnections_ret\fR is the list of transports.
.LE
.H 2 "Utility API"
.P
This section describes a few useful functions that have been implemented on top
of the Core Interface API. These functions are being provided as a convenience.
.BL
.LI
int TRANS(ConvertAddress)(int *familyp, int *addrlenp, Xtransaddr *addrp)
.P
This function converts a sockaddr based address to an
X authorization based address (ie AF_INET, AF_UNIX to the
X protocol definition (ie FamilyInternet, FamilyLocal)).
.LE
.H 1 "Transport Option Definition"
.P
The following options are defined for the TRANS(SetOption)() function. If an
OS or transport does not support any of these options, then it will silently
ignore the option.
.BL
.LI
TRANS_NONBLOCKING
.P
This option controls the blocking mode of the connection. If the argument
is set to 1, then the connection will be set to blocking. If the argument
is set to 0, then the connection will be set to non-blocking.
.LI
TRANS_CLOSEONEXEC
.P
This option determines what will happen to the connection when an exec
is encountered. If the argument is set to 1, then the connection will be
closed when an exec occurs. If the argument is set to 0, then the connection
will not be closed when an exec occurs.
.LE
.H 1 "Hidden Transport Dependent API"
.P
The hidden transport dependent functions are placed in the Xtransport record.
These function are similar to the Exposed Transport Independent API, but some
of the parameters and return values are slightly different.
Stuff like the #ifdef SUNSYSV should be handled inside these functions.
.BL
.LI
XtransConnInfo *OpenCOTSClient (
.br
struct _Xtransport *thistrans, char *protocol, char *host, char *port)
.P
This function creates a Connection-Oriented Transport. The parameter
\fIthistrans\fR points to an Xtransport entry in the transport table. The
parameters \fIprotocol\fR, \fIhost\fR, and \fIport\fR point to strings
containing the corresponding parts of the address that was passed into
TRANS(OpenCOTSClient)().
.P
This function must allocate and initialize the contents of the XtransConnInfo
structure that is returned by this function. This function will open the
transport, and bind it into the transport namespace if applicable. The
local address portion of the XtransConnInfo structure will also be filled
in by this function.
.LI
XtransConnInfo *OpenCOTSServer (
.br
struct _Xtransport *thistrans, char *protocol, char *host, char *port)
.P
This function creates a Connection-Oriented Transport. The parameter
\fIthistrans\fR points to an Xtransport entry in the transport table. The
parameters \fIprotocol\fR, \fIhost\fR, and \fIport\fR point to strings
containing the corresponding parts of the address that was passed into
TRANS(OpenCOTSClient)().
.P
This function must allocate and initialize the contents of the XtransConnInfo
structure that is returned by this function. This function will open the
transport.
.LI
XtransConnInfo *OpenCLTSClient (
.br
struct _Xtransport *thistrans, char *protocol, char *host, char *port)
.P
This function creates a Connection-Less Transport. The parameter
\fIthistrans\fR points to an Xtransport entry in the transport table. The
parameters \fIprotocol\fR, \fIhost\fR, and \fIport\fR point to strings
containing the corresponding parts of the address that was passed into
TRANS(OpenCOTSClient)().
.P
This function must allocate and initialize the contents of the XtransConnInfo
structure that is returned by this function. This function will open the
transport, and bind it into the transport namespace if applicable. The
local address portion of the XtransConnInfo structure will also be filled
in by this function.
.LI
XtransConnInfo *OpenCLTSServer (
.br
struct _Xtransport *thistrans, char *protocol, char *host, char *port)
.P
This function creates a Connection-Less Transport. The parameter
\fIthistrans\fR points to an Xtransport entry in the transport table. The
parameters \fIprotocol\fR, \fIhost\fR, and \fIport\fR point to strings
containing the corresponding parts of the address that was passed into
TRANS(OpenCOTSClient)().
.P
This function must allocate and initialize the contents of the XtransConnInfo
structure that is returned by this function. This function will open the
transport.
.LI
int SetOption (struct _Xtransport *thistrans, int option, int arg)
.P
This function provides a transport dependent way of implementing the options
defined by the X Transport Interface. In the current prototype, this function
is not being used, because all of the option defined so far, are transport
independent. This function will have to be used if a radically different
transport type is added, or a transport dependent option is defined.
.LI
int CreateListener (struct _Xtransport *thistrans, char *port, int flags )
.P
This function takes a transport endpoint opened for a server, and sets it
up to listen for incoming connection requests. The parameter \fIport\fR
should contain the port portion of the address that was passed to the Open
function.
.P
The parameter \fIflags\fR should be set to ADDR_IN_USE_ALLOWED if the
underlying transport endpoint may be already bound and this should not
be considered as an error. Otherwise \fIflags\fR sould be set to 0.
This is used by IPv6 code, where the same socket can be bound to both
an IPv6 address and then to a IPv4 address.
.P
This function will bind the transport into the transport name space if
applicable, and fill in the local address portion of the XtransConnInfo
structure. The transport endpoint will then be set to listen for
incoming connection requests.
.LI
int ResetListener (struct _Xtransport *thistrans)
.P
This function resets the transport for listening.
.LI
XtransConnInfo Accept(struct _Xtransport *thistrans)
.P
This function creates a new transport endpoint as a result of an incoming
connection request. The parameter \fIthistrans\fR is the endpoint that was opened
for listening by the server. The new endpoint is opened and bound into the
transport's namespace. A XtransConnInfo structure describing the new endpoint
is returned from this function
.LI
int Connect(struct _Xtransport *thistrans, char *host, char *port )
.P
This function establishes a connection to a server. The parameters \fIhost\fR
and \fIport\fR describe the server to which the connection should be
established. The connection will be established so that Read() and Write()
call can be made.
.LI
int BytesReadable(struct _Xtransport *thistrans, BytesReadable_t *pend )
.P
This function replaces the BytesReadable() macro. This allows each transport
to have it's own mechanism for determining how much data is ready to be read.
.LI
int Read(struct _Xtransport *thistrans, char *buf, int size )
.P
This function reads \fIsize\fR bytes into \fIbuf\fR from the connection.
.LI
int Write(struct _Xtransport *thistrans, char *buf, int size )
.P
This function writes \fIsize\fR bytes from \fIbuf\fR to the connection.
.LI
int Readv(struct _Xtransport *thistrans, struct iovec *buf, int size )
.P
This function performs a readv() on the connection.
.LI
int Writev(struct _Xtransport *thistrans, struct iovec *buf, int size )
.P
This function performs a writev() on the connection.
.LI
int Disconnect(struct _Xtransport *thistrans)
.P
This function initiates an orderly shutdown of a connection. If a transport
does not distinguish between orderly and disorderly disconnects, then a
call to this function will have no affect.
.LI
int Close(struct _Xtransport *thistrans)
.P
This function will break the connection, and close the endpoint.
.LE
.H 1 "Configuration"
.P
The implementation of each transport can be platform specific. It is expected
that existing connection types such as TCPCONN, UNIXCONN, LOCALCONN and
STREAMSCONN will be replaced with flags for each possible transport type.
.P
Below are the flags that can be set in \fIConnectionFlags\fR in the vendor.cf
or site.def config files.
.TS
center;
l l .
TCPCONN Enables the INET (IPv4) Domain Socket based transport
IPv6 Extends TCPCONN to enable IPv6 Socket based transport
UNIXCONN Enables the UNIX Domain Sokcet based transport
STREAMSCONN Enables the TLI based transports
LOCALCONN Enables the SYSV Local connection transports
DNETCONN Enables the DECnet transports
.TE
.H 1 "Transport Specific Definitions"
.TS
center box;
lb | cb sb sb
lb | cb | cb | cb
lb | cb | cb | cb
l | l | l | l.
Protocol Address Component
_ _ _
Family protocol host port
=
Internet T{
inet
.br
inet6
.br
tcp
.br
udp
T} name of an internet addressable host T{
string containing the name of a service or a valid port number.
.br
Example: "xserver0", "7100"
T}
_
DECnet decnet name of a DECnet addressable host T{
string containing the complete name of the object.
.br
Example: "X$X0"
T}
_
NETware ipx name of a NETware addressable host T{
Not sure of the specifics yet.
T}
_
OSI osi name of an OSI addressable host T{
Not sure of the specifics yet.
T}
_
Local T{
local
.br
pts
.br
named
.br
sco
.br
isc
T} (ignored) T{
String containing the port name, ie "xserver0", "fontserver0".
T}
.TE
.H 1 "Implementation Notes"
.P
This section refers to the prototype implementation that is being developed
concurrently with this document. This prototype has been able to flush out
many details and problems as the specification was being developed.
.P
All of the source code for this interface is located in xc/lib/xtrans.
.P
All functions names in the source are of the format TRANS(func)(). The TRANS()
macro is defined as
.DS
.sp
#if (__STDC__ && !defined(UNIXCPP)) || defined(ANSICPP)
#define TRANS(func) _PROTOCOLTrans##func
#else
#define TRANS(func) _PROTOCOLTrans/**/func
#endif
.sp
.DE
PROTOCOL will be uniquely defined in each directory where this code
is compiled. PROTOCOL will be defined to be the name of the protocol that is
implemented by the library or server, such as X11, FS, and ICE.
.P
All libraries and servers that use the X Transport Interface should have a new
file called transport.c. This file will include the transports based
on the configuration flags \fIConnectionFlags\fR. Below is an example
transport.c.
.DS
.nf
#include "Xtransint.h"
#ifdef DNETCONN
#include "Xtransdnet.c"
#endif
#ifdef LOCALCONN
#include "Xtranslocal.c"
#endif
#ifdef TCPCONN
#include "Xtranssock.c"
#endif
#ifdef STREAMSCONN
#include "Xtranstli.c"
#endif
#include "Xtrans.c"
#include "Xtransutil.c"
.fi
.DE
.P
The source files for this interface are listed below.
.DS
.TS
center;
l l.
Xtrans.h T{
Function prototypes and defines for
the Transport Independent API.
T}
Xtransint.h T{
Used by the interface implementation only.
Contains the internal data structures.
T}
Xtranssock.c T{
Socket implementation of the Transport Dependent API.
T}
Xtranstli.c T{
TLI implementation of the Transport Dependent API.
T}
Xtransdnet.c T{
DECnet implementation of the Transport Dependent API.
T}
Xtranslocal.c T{
Implementation of the Transport Dependent API for
SYSV Local connections.
T}
Xtrans.c T{
Exposed Transport Independent API Functions.
T}
Xtransutil.c T{
Collection of Utility functions that use the
X Transport Interface.
T}
.TE
.DE
.P
The file \fIXtransint.h\fR contains much of the transport related code that
previously in Xlibint.h and Xlibnet.h. This will make the definitions
available for all transport users. This should also obsolete the equivalent
code in other libraries.

View File

@ -300,7 +300,7 @@ typedef struct _Xtransport_table {
#define TRANS_LOCAL (1<<1) /* local transport */
#define TRANS_DISABLED (1<<2) /* Don't open this one */
#define TRANS_NOLISTEN (1<<3) /* Don't listen on this one */
#define TRANS_NOUNLINK (1<<4) /* Dont unlink transport endpoints */
#define TRANS_NOUNLINK (1<<4) /* Don't unlink transport endpoints */
#define TRANS_ABSTRACT (1<<5) /* Use abstract sockets if available */
#define TRANS_NOXAUTH (1<<6) /* Don't verify authentication (because it's secure some other way at the OS layer) */

View File

@ -102,7 +102,6 @@ from The Open Group.
/* Types of local connections supported:
* - PTS
* - named pipes
* - ISC
* - SCO
*/
#if !defined(sun)
@ -163,6 +162,7 @@ TRANS(FillAddrInfo)(XtransConnInfo ciptr, char *sun_path, char *peer_sun_path)
if (strlen(sun_path) > sizeof(sunaddr->sun_path) - 1) {
PRMSG(1, "FillAddrInfo: path too long\n", 0, 0, 0);
xfree((char *) sunaddr);
return 0;
}
strcpy (sunaddr->sun_path, sun_path);
@ -190,6 +190,7 @@ TRANS(FillAddrInfo)(XtransConnInfo ciptr, char *sun_path, char *peer_sun_path)
if (strlen(peer_sun_path) > sizeof(p_sunaddr->sun_path) - 1) {
PRMSG(1, "FillAddrInfo: peer path too long\n", 0, 0, 0);
xfree((char *) p_sunaddr);
return 0;
}
strcpy (p_sunaddr->sun_path, peer_sun_path);
@ -248,11 +249,6 @@ static void _dummy(int sig)
#else
#define NAMEDNODENAME "/dev/X/Nserver."
/*
* ISC is only defined for X11 since they are there for
* backwards binary compatability only.
*/
#define SCORNODENAME "/dev/X%1sR"
#define SCOSNODENAME "/dev/X%1sS"
#endif /* !sun */
@ -352,6 +348,7 @@ TRANS(PTSOpenClient)(XtransConnInfo ciptr, char *port)
if ((fd = open(DEV_PTMX, O_RDWR)) < 0) {
PRMSG(1,"PTSOpenClient: failed to open %s\n", DEV_PTMX, 0,0);
close(server);
return(-1);
}
@ -933,7 +930,7 @@ TRANS(NAMEDAccept)(XtransConnInfo ciptr, XtransConnInfo newciptr, int *status)
#if defined(LOCAL_TRANS_SCO)
/*
* connect_spipe is used by the SCO and ISC connection types.
* connect_spipe is used by the SCO connection type.
*/
static int
connect_spipe(int fd1, int fd2)
@ -958,7 +955,7 @@ connect_spipe(int fd1, int fd2)
}
/*
* named_spipe is used by the SCO and ISC connection types.
* named_spipe is used by the SCO connection type.
*/
static int
@ -1126,6 +1123,10 @@ TRANS(SCOOpenServer)(XtransConnInfo ciptr, char *port)
if ((fds = open(DEV_SPX, O_RDWR)) < 0 ||
(fdr = open(DEV_SPX, O_RDWR)) < 0 ) {
PRMSG(1,"SCOOpenServer: failed to open %s\n", DEV_SPX, 0,0 );
if (fds >= 0)
close(fds);
if (fdr >= 0)
close(fdr);
return -1;
}
@ -1165,7 +1166,7 @@ TRANS(SCOOpenServer)(XtransConnInfo ciptr, char *port)
}
fdr = open (serverR_path, O_RDWR | O_NDELAY);
if (fds < 0) {
if (fdr < 0) {
PRMSG(1,"SCOOpenServer: failed to open %s\n", serverR_path, 0, 0);
close (fds);
return -1;
@ -1668,7 +1669,7 @@ static char *freeXLOCAL=NULL;
#elif defined(sun)
#define DEF_XLOCAL "UNIX:NAMED"
#else
#define DEF_XLOCAL "UNIX:PTS:NAMED:ISC:SCO"
#define DEF_XLOCAL "UNIX:PTS:NAMED:SCO"
#endif
static void

View File

@ -1,7 +1,28 @@
/*
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
/*
Copyright 1993, 1994, 1998 The Open Group
Copyright 2002 Sun Microsystems, Inc. All rights reserved.
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that

1001
lib/libxtrans/aclocal.m4 vendored

File diff suppressed because it is too large Load Diff

1313
lib/libxtrans/configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -20,16 +20,21 @@ dnl PERFORMANCE OF THIS SOFTWARE.
dnl
dnl Process this file with autoconf to create configure.
AC_PREREQ([2.57])
AC_INIT(xtrans, [1.2.5], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xtrans)
AM_INIT_AUTOMAKE([dist-bzip2])
AC_PREREQ([2.60])
AC_INIT([xtrans], [1.2.6],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xtrans])
AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
# Require xorg-macros 1.3 or later: XORG_DEFAULT_OPTIONS
# Require xorg-macros minimum of 1.10 for DocBook XML documentation
m4_ifndef([XORG_MACROS_VERSION],
[m4_fatal([must install xorg-macros 1.3 or later before running autoconf/autogen])])
XORG_MACROS_VERSION(1.3)
[m4_fatal([must install xorg-macros 1.10 or later before running autoconf/autogen])])
XORG_MACROS_VERSION(1.10)
XORG_DEFAULT_OPTIONS
XORG_ENABLE_DOCS
XORG_WITH_XMLTO(0.0.20)
XORG_WITH_FOP
XORG_CHECK_SGML_DOCTOOLS(1.5)
# Because xtrans is included into other modules rather than being linked
# with, these defines have to be added to the cflags line
@ -49,21 +54,6 @@ sticky_bit_define="-DHAS_STICKY_DIR_BIT"
AC_SUBST(sticky_bit_define)
# Documentation is currently provided in troff format, built on request
AC_PATH_PROGS([GROFF], [groff], [none], [$PATH:/usr/gnu/bin])
AC_PATH_PROGS([PS2PDF], [ps2pdf], [none], [$PATH:/usr/gnu/bin])
AC_MSG_CHECKING([whether to build documentation])
AC_ARG_ENABLE(docs, AC_HELP_STRING([--enable-docs],
[Enable building of documentation]),
[build_docs="${enableval}"], [build_docs="no"])
AC_MSG_RESULT([${build_docs}])
if test "x${build_docs}" = xyes && test "x${GROFF}" = xnone ; then
AC_MSG_ERROR([can't build documentation without groff])
fi
AM_CONDITIONAL(BUILD_DOCS, [test x$build_docs = xyes])
AM_CONDITIONAL(HAVE_PS2PDF, [test x$PS2PDF != xnone])
AC_OUTPUT([Makefile
doc/Makefile
xtrans.pc])

View File

@ -0,0 +1,62 @@
#
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
#
if ENABLE_DOCS
doc_sources = xtrans.xml
dist_doc_DATA = $(doc_sources)
if HAVE_XMLTO
doc_DATA = $(doc_sources:.xml=.html)
if HAVE_FOP
doc_DATA += $(doc_sources:.xml=.ps) $(doc_sources:.xml=.pdf)
endif
if HAVE_XMLTO_TEXT
doc_DATA += $(doc_sources:.xml=.txt)
endif
if HAVE_STYLESHEETS
XMLTO_FLAGS = \
-m $(XSL_STYLESHEET) \
--stringparam html.stylesheet="$(STYLESHEET_SRCDIR)/xorg.css"
endif
CLEANFILES = $(doc_DATA)
SUFFIXES = .xml .ps .pdf .txt .html
.xml.txt:
$(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) txt $<
.xml.html:
$(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) xhtml-nochunks $<
.xml.pdf:
$(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) --with-fop pdf $<
.xml.ps:
$(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) --with-fop ps $<
endif HAVE_XMLTO
endif ENABLE_DOCS

View File

@ -0,0 +1,430 @@
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
#
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
#
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
@ENABLE_DOCS_TRUE@@HAVE_FOP_TRUE@@HAVE_XMLTO_TRUE@am__append_1 = $(doc_sources:.xml=.ps) $(doc_sources:.xml=.pdf)
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TEXT_TRUE@@HAVE_XMLTO_TRUE@am__append_2 = $(doc_sources:.xml=.txt)
subdir = doc
DIST_COMMON = $(am__dist_doc_DATA_DIST) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(install_sh) -d
CONFIG_CLEAN_FILES =
SOURCES =
DIST_SOURCES =
am__dist_doc_DATA_DIST = xtrans.xml
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
am__installdirs = "$(DESTDIR)$(docdir)" "$(DESTDIR)$(docdir)"
dist_docDATA_INSTALL = $(INSTALL_DATA)
docDATA_INSTALL = $(INSTALL_DATA)
DATA = $(dist_doc_DATA) $(doc_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
APP_MAN_DIR = @APP_MAN_DIR@
APP_MAN_SUFFIX = @APP_MAN_SUFFIX@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CHANGELOG_CMD = @CHANGELOG_CMD@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CWARNFLAGS = @CWARNFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_DOCS_FALSE = @ENABLE_DOCS_FALSE@
ENABLE_DOCS_TRUE = @ENABLE_DOCS_TRUE@
EXEEXT = @EXEEXT@
FILE_MAN_DIR = @FILE_MAN_DIR@
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
FOP = @FOP@
GREP = @GREP@
HAVE_FOP_FALSE = @HAVE_FOP_FALSE@
HAVE_FOP_TRUE = @HAVE_FOP_TRUE@
HAVE_STYLESHEETS_FALSE = @HAVE_STYLESHEETS_FALSE@
HAVE_STYLESHEETS_TRUE = @HAVE_STYLESHEETS_TRUE@
HAVE_XMLTO_FALSE = @HAVE_XMLTO_FALSE@
HAVE_XMLTO_TEXT_FALSE = @HAVE_XMLTO_TEXT_FALSE@
HAVE_XMLTO_TEXT_TRUE = @HAVE_XMLTO_TEXT_TRUE@
HAVE_XMLTO_TRUE = @HAVE_XMLTO_TRUE@
INSTALL_CMD = @INSTALL_CMD@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_MAN_DIR = @LIB_MAN_DIR@
LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MAN_SUBSTS = @MAN_SUBSTS@
MISC_MAN_DIR = @MISC_MAN_DIR@
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
STYLESHEET_SRCDIR = @STYLESHEET_SRCDIR@
VERSION = @VERSION@
XMLTO = @XMLTO@
XORG_MAN_PAGE = @XORG_MAN_PAGE@
XORG_SGML_PATH = @XORG_SGML_PATH@
XSL_STYLESHEET = @XSL_STYLESHEET@
ac_ct_CC = @ac_ct_CC@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
fchown_define = @fchown_define@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sticky_bit_define = @sticky_bit_define@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
@ENABLE_DOCS_TRUE@doc_sources = xtrans.xml
@ENABLE_DOCS_TRUE@dist_doc_DATA = $(doc_sources)
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@doc_DATA = \
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@ $(doc_sources:.xml=.html) \
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@ $(am__append_1) \
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@ $(am__append_2)
@ENABLE_DOCS_TRUE@@HAVE_STYLESHEETS_TRUE@@HAVE_XMLTO_TRUE@XMLTO_FLAGS = \
@ENABLE_DOCS_TRUE@@HAVE_STYLESHEETS_TRUE@@HAVE_XMLTO_TRUE@ -m $(XSL_STYLESHEET) \
@ENABLE_DOCS_TRUE@@HAVE_STYLESHEETS_TRUE@@HAVE_XMLTO_TRUE@ --stringparam html.stylesheet="$(STYLESHEET_SRCDIR)/xorg.css"
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@CLEANFILES = $(doc_DATA)
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@SUFFIXES = .xml .ps .pdf .txt .html
all: all-am
.SUFFIXES:
.SUFFIXES: .xml .ps .pdf .txt .html
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --foreign doc/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
uninstall-info-am:
install-dist_docDATA: $(dist_doc_DATA)
@$(NORMAL_INSTALL)
test -z "$(docdir)" || $(mkdir_p) "$(DESTDIR)$(docdir)"
@list='$(dist_doc_DATA)'; for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
f=$(am__strip_dir) \
echo " $(dist_docDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(docdir)/$$f'"; \
$(dist_docDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(docdir)/$$f"; \
done
uninstall-dist_docDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_doc_DATA)'; for p in $$list; do \
f=$(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(docdir)/$$f'"; \
rm -f "$(DESTDIR)$(docdir)/$$f"; \
done
install-docDATA: $(doc_DATA)
@$(NORMAL_INSTALL)
test -z "$(docdir)" || $(mkdir_p) "$(DESTDIR)$(docdir)"
@list='$(doc_DATA)'; for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
f=$(am__strip_dir) \
echo " $(docDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(docdir)/$$f'"; \
$(docDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(docdir)/$$f"; \
done
uninstall-docDATA:
@$(NORMAL_UNINSTALL)
@list='$(doc_DATA)'; for p in $$list; do \
f=$(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(docdir)/$$f'"; \
rm -f "$(DESTDIR)$(docdir)/$$f"; \
done
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
case $$file in \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
esac; \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(docdir)" "$(DESTDIR)$(docdir)"; do \
test -z "$$dir" || $(mkdir_p) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
info: info-am
info-am:
install-data-am: install-dist_docDATA install-docDATA
install-exec-am:
install-info: install-info-am
install-man:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_docDATA uninstall-docDATA \
uninstall-info-am
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_docDATA install-docDATA install-exec \
install-exec-am install-info install-info-am install-man \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
uninstall-dist_docDATA uninstall-docDATA uninstall-info-am
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@.xml.txt:
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@ $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) txt $<
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@.xml.html:
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@ $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) xhtml-nochunks $<
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@.xml.pdf:
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@ $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) --with-fop pdf $<
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@.xml.ps:
@ENABLE_DOCS_TRUE@@HAVE_XMLTO_TRUE@ $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) --with-fop ps $<
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

1206
lib/libxtrans/doc/xtrans.xml Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,28 +1,24 @@
dnl $XdotOrg: lib/xtrans/xtrans.m4,v 1.6 2005/07/26 18:59:11 alanc Exp $
dnl
dnl Copyright 2005 Sun Microsystems, Inc. All rights reserved.
dnl Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
dnl
dnl Permission to use, copy, modify, distribute, and sell this software and its
dnl documentation for any purpose is hereby granted without fee, provided that
dnl the above copyright notice appear in all copies and that both that
dnl copyright notice and this permission notice appear in supporting
dnl documentation.
dnl Permission is hereby granted, free of charge, to any person obtaining a
dnl copy of this software and associated documentation files (the "Software"),
dnl to deal in the Software without restriction, including without limitation
dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
dnl and/or sell copies of the Software, and to permit persons to whom the
dnl Software is furnished to do so, subject to the following conditions:
dnl
dnl The above copyright notice and this permission notice shall be included
dnl in all copies or substantial portions of the Software.
dnl The above copyright notice and this permission notice (including the next
dnl paragraph) shall be included in all copies or substantial portions of the
dnl Software.
dnl
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
dnl OTHER DEALINGS IN THE SOFTWARE.
dnl
dnl Except as contained in this notice, the name of the copyright holders shall
dnl not be used in advertising or otherwise to promote the sale, use or
dnl other dealings in this Software without prior written authorization
dnl from the copyright holders.
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
dnl DEALINGS IN THE SOFTWARE.
dnl
# XTRANS_TCP_FLAGS()