Update to xinit 1.2.1

This commit is contained in:
matthieu 2010-05-31 20:23:19 +00:00
parent 1a92d04742
commit 7d4fcb4c01
25 changed files with 3584 additions and 1214 deletions

View File

@ -1,3 +1,262 @@
commit eb541d73b35716e1deaccc3c328473e04a5ef024
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Mon Mar 15 15:41:48 2010 -0700
Update to version 1.2.1 for release.
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
commit 17b65f4420a958c577fd17d91f332465cf9fbfa5
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Mon Mar 15 15:39:06 2010 -0700
Updates for .gitignore
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
commit 3d82396b95bff8ed6028e36cf3aed1f1189ba909
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date: Thu Mar 11 16:09:35 2010 -0800
darwin: Handle home directories that contain a single-quote (')
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
commit ad11d954cf296f2bfbe25ad483459c8485197dd1
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date: Thu Mar 11 10:24:11 2010 -0800
Quiet warning for fts_open
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
commit b61c4977d96fbaabdfb8213d2b9cc2e1416952f1
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Thu Nov 26 09:19:54 2009 -0500
Makefile.am: add ChangeLog and INSTALL on MAINTAINERCLEANFILES
Now that the INSTALL file is generated.
Allows running make maintainer-clean.
commit 9d15780beb5db0d39cc34ef2d9f3157fa5a81e57
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Wed Oct 28 14:09:08 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 f60d8d7272efb6da4fd91df9675d9281e4230d9f
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Tue Oct 27 15:07:25 2009 -0400
Deploy the new XORG_DEFAULT_OPTIONS #24242
This macro aggregate a number of existing macros that sets commmon
X.Org components configuration options. It shields the configuration file from
future changes.
commit b748221cf9e7df8b0b460f13f4ad0a86ff7f1b6d
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Thu Oct 22 16:23:27 2009 -0400
Makefile.am: do not include autogen.sh in distribution #24183
This is a private build script that should not be distributed
commit 85cd7aa2f632d159af38252639a3020bf9ee18a1
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Thu Oct 22 12:34:15 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 d243b9943879ec2790d65785805aefdfbb64a378
Author: Rémi Cardona <remi@gentoo.org>
Date: Sat Nov 14 14:51:59 2009 +0100
xinit 1.2.0
Signed-off-by: Rémi Cardona <remi@gentoo.org>
commit 561b6c70648b585e36241c898f0b2dbba3cb2d24
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Tue Oct 27 18:24:31 2009 -0700
Apple: Export X11_PREFS_DOMAIN for children (quartz-wm)
commit 9b89862981070cf9e381512055a778f451c88905
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Wed Oct 21 12:47:20 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 82747989c1332290fabec8b9da38aad05282301f
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Fri Oct 16 20:27:17 2009 -0700
Use platform-specific X server names in man pages for cygwin & darwin
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Jon TURNEY <jon.turney@dronecode.org.uk>
commit c2a5751175b11d3206805468aae1ddecd02c4a98
Author: Rémi Cardona <remi@gentoo.org>
Date: Sat Oct 3 11:50:12 2009 +0200
make XINITDIR configurable at build-time, default is unchanged
Signed-off-by: Rémi Cardona <remi@gentoo.org>
commit 2861f9cf845107870f9d5e9898e5cd4baba8d8f7
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 3 15:28:27 2009 -0700
Strip RCS/CVS tags
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 536a3e66159bb4cbd75b861b9b942da5b1885a26
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 3 15:21:20 2009 -0700
Man page updates
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 2528d709b51bb1f2e8c32db3242c5af815c9b66f
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 3 15:16:55 2009 -0700
Drop ancient SunWindows compatibility check
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit adda4c05eceddca7ecb4470d9804a0fa2da8c12c
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 3 15:15:38 2009 -0700
Drop ancient A/UX compatibility hack
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 817c2d6fe0bea3910d335a0f0ae6d69e358dd9da
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 3 15:06:23 2009 -0700
Purge ancient server names from help, add newer server names instead
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 3a59c294d30f5c68dc1411a1a7a274948e08d528
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Sat Oct 3 14:51:44 2009 -0700
Migrate to xorg macros 1.3 & XORG_DEFAULT_OPTIONS
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
commit 98c7700d5bff9e61a7f29d8a611edc8a34961e8e
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Fri Sep 4 00:36:18 2009 -0700
launchd: Update the DISPLAY envvar to not have a - ... call me paranoid, but I feel safer without it
Also added some extra debugging fluff to distingush between two similar statements.
commit 49b50db0cb1ecc5611a242d12b9ca05b961c91ac
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Thu Sep 3 19:02:56 2009 -0700
launchd: Include LAUNCHD_ID_PREFIX in the socket name for reverse lookup to tell which launchd id owns $DISPLAY
commit 78d181dc74ffb3e67ee0d90780b86e00e03073eb
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Wed Sep 2 10:43:25 2009 -0700
launchd: Added --with-launchd-id-prefix option to set non-standard launchd id prefix (org.x is still default)
commit 33c3dae16b632ab56b6b361273a48079eb0a41c4
Author: Andres Salomon <dilinger@queued.net>
Date: Wed Feb 11 17:18:05 2009 -0500
app/xinit: make startx's $? a useful value
When startx fails to start X, it's most likely xinit that failed. xinit
returns a proper return code (1), but that gets clobbed in the startx
script by clean-up commands. This patch saves $? from xinit and forces
startx to exit with that value.
This way, if startx actually fails to start X, $? reflects that.
Signed-off-by: Andres Salomon <dilinger@debian.org>
commit 028b0839dc4079c8fe56b38a80be51dc8c89ea17
Author: Jon TURNEY <jon.turney@dronecode.org.uk>
Date: Fri Mar 6 17:03:30 2009 +0000
Cygwin can also have spaces in $HOME
commit c30b10caedf7bdafb9abda914f80c90bfaccaec5
Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
Date: Wed Jan 21 19:22:31 2009 -0200
Correct make distcheck for recent git versions.
commit 57f917f8934d441ebb6501c4691a2b59fa217f3f
Author: Robert Macomber <robert.macomber@bigfishgames.com>
Date: Fri Jan 16 01:27:50 2009 +0100
startx: fix misparsing of initial client and server arguments which begin with / or ./
If you invoke startx with a client whose initial command-line arguments
begin with / or ./, it uses the last such argument as the base command
for the client. E.g.:
startx /usr/bin/xterm /usr/bin/mutt
will use /usr/bin/mutt as the client to run instead of /usr/bin/xterm.
This is because of the way in which startx parses its arguments. It's a
loop over a case with three clauses; the bug is in the first. When it's
looking at one of startx's args it checks to see if $clientargs is empty
in order to see if it should set $client or add the argument to
$clientargs. It should also check to see whether $client is set.
There is a similar bug in parsing server args, where it checks to see if
$serverargs is empty to decide whether to set $server.
Debian bug#511717 (http://bugs.debian.org/511717)
Signed-off-by: Julien Cristau <jcristau@debian.org>
commit 7a5086259ca39cc4de6abcda3a3dc5d6c6b380b0
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Thu Dec 18 19:05:08 2008 -0800
Apple: Use MAC_OS_X_VERSION_MIN_REQUIRED instead of __MAC_OS_X_VERSION_MIN_REQUIRED
commit 46d641fdd020d07a9b4bd0364cf126643342a7e3
Author: Jeremy Huddleston <jeremyhu@freedesktop.org>
Date: Wed Dec 17 15:19:38 2008 -0800
@ -429,7 +688,7 @@ Date: Mon Dec 3 19:57:26 2007 -0800
Added some support for Xquartz on OS-X.
commit e2963ff8acb7e20aab1f8e31a656f4553dda208a
Merge: a7fda62... 0516336...
Merge: a7fda62 0516336
Author: Matthieu Herrb <matthieu@bluenote.herrb.com>
Date: Fri Sep 28 22:26:26 2007 +0200

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

@ -19,12 +19,11 @@
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
XINITDIR = $(datadir)/X11/xinit
bin_PROGRAMS = xinit
bin_SCRIPTS = startx
xinit_CFLAGS = $(XINIT_CFLAGS) -DXINITDIR=\"$(XINITDIR)\" -DBINDIR=\"$(bindir)\"
AM_CFLAGS = $(CWARNFLAGS) $(XINIT_CFLAGS)
AM_CPPFLAGS = -DXINITDIR=\"$(XINITDIR)\" -DBINDIR=\"$(bindir)\"
xinit_LDADD = $(XINIT_LIBS)
xinit_SOURCES = \
@ -58,10 +57,14 @@ CPP_FILES_FLAGS = \
-DXINITDIR=$(XINITDIR) $(PROGCPPDEFS) -DLIBDIR=$(libdir) \
-DSHELL_CMD=$(SHELL_CMD) $(STARTX_COOKIE_FLAGS) \
-D__libexecdir__="$(libexecdir)" \
-D__bindir__="$(bindir)"
-D__bindir__="$(bindir)" \
-DLAUNCHD_ID_PREFIX="$(launchdidprefix)"
if LAUNCHD
launchagents_PRE = org.x.startx.plist.cpp
$(launchdidprefix).startx.plist.cpp: org.x.startx.plist.cpp
cp $< $@
launchagents_PRE = $(launchdidprefix).startx.plist.cpp
launchagents_DATA = $(launchagents_PRE:plist.cpp=plist)
SUBDIRS = privileged_startx
@ -71,14 +74,18 @@ DIST_SUBDIRS = privileged_startx
xinitrc_DATA = xinitrc
MAINTAINERCLEANFILES = ChangeLog INSTALL
CLEANFILES = xinitrc startx $(appman_DATA) $(launchagents_DATA)
EXTRA_DIST = xinitrc.cpp startx.cpp org.x.startx.plist.cpp $(appman_PRE) \
startx.cmd xinitrc.cmd xinit.def ChangeLog autogen.sh
startx.cmd xinitrc.cmd xinit.def autogen.sh
.PHONY: ChangeLog
.PHONY: ChangeLog INSTALL
INSTALL:
$(INSTALL_CMD)
ChangeLog:
(GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || (touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
$(CHANGELOG_CMD)
dist-hook: ChangeLog
dist-hook: ChangeLog INSTALL

View File

@ -1,5 +1,5 @@
# $OpenBSD: Makefile.bsd-wrapper,v 1.3 2006/11/29 12:16:07 matthieu Exp $
# $OpenBSD: Makefile.bsd-wrapper,v 1.4 2010/05/31 20:23:19 matthieu Exp $
CONFIGURE_ARGS= --datadir=/etc
CONFIGURE_ARGS= --with-xinitdir=/etc/X11/xinit
.include <bsd.xorg.mk>

View File

@ -87,7 +87,7 @@ am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" \
"$(DESTDIR)$(xinitrcdir)"
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
PROGRAMS = $(bin_PROGRAMS)
am_xinit_OBJECTS = xinit-xinit.$(OBJEXT)
am_xinit_OBJECTS = xinit.$(OBJEXT)
xinit_OBJECTS = $(am_xinit_OBJECTS)
am__DEPENDENCIES_1 =
xinit_DEPENDENCIES = $(am__DEPENDENCIES_1)
@ -137,6 +137,7 @@ 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@
ARCHMANDEFS = @ARCHMANDEFS@
@ -147,8 +148,10 @@ 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@
@ -162,6 +165,7 @@ EXEEXT = @EXEEXT@
FILE_MAN_DIR = @FILE_MAN_DIR@
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
GREP = @GREP@
INSTALL_CMD = @INSTALL_CMD@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -179,6 +183,7 @@ MAINT = @MAINT@
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MAN_SUBSTS = @MAN_SUBSTS@
MCOOKIE = @MCOOKIE@
MISC_MAN_DIR = @MISC_MAN_DIR@
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
@ -206,13 +211,18 @@ VERSION = @VERSION@
WM = @WM@
XAUTH = @XAUTH@
XCLOCK = @XCLOCK@
XCONFIGFILE = @XCONFIGFILE@
XCONFIGFILEMAN = @XCONFIGFILEMAN@
XCONSOLE = @XCONSOLE@
XINIT = @XINIT@
XINITDIR = @XINITDIR@
XINIT_CFLAGS = @XINIT_CFLAGS@
XINIT_LIBS = @XINIT_LIBS@
XMODMAP = @XMODMAP@
XORG_MAN_PAGE = @XORG_MAN_PAGE@
XRDB = @XRDB@
XSERVER = @XSERVER@
XSERVERNAME = @XSERVERNAME@
XTERM = @XTERM@
ac_ct_CC = @ac_ct_CC@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
@ -244,6 +254,7 @@ infodir = @infodir@
install_sh = @install_sh@
launchagentsdir = @launchagentsdir@
launchdaemonsdir = @launchdaemonsdir@
launchdidprefix = @launchdidprefix@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
@ -259,9 +270,9 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
XINITDIR = $(datadir)/X11/xinit
bin_SCRIPTS = startx
xinit_CFLAGS = $(XINIT_CFLAGS) -DXINITDIR=\"$(XINITDIR)\" -DBINDIR=\"$(bindir)\"
AM_CFLAGS = $(CWARNFLAGS) $(XINIT_CFLAGS)
AM_CPPFLAGS = -DXINITDIR=\"$(XINITDIR)\" -DBINDIR=\"$(bindir)\"
xinit_LDADD = $(XINIT_LIBS)
xinit_SOURCES = \
xinit.c
@ -290,7 +301,9 @@ MANDEFS = \
-D__filemansuffix__=$(FILE_MAN_SUFFIX) \
-D__libmansuffix__=$(LIB_MAN_SUFFIX) \
-D__miscmansuffix__=$(MISC_MAN_SUFFIX) \
-D__XSERVERNAME__=Xorg -D__XCONFIGFILE__=xorg.conf \
-D__XSERVERNAME__='$(XSERVERNAME)' \
-D__XCONFIGFILE__='$(XCONFIGFILE)' \
-D__XCONFIGFILEMAN__='$(XCONFIGFILEMAN)' \
-D__xinitdir__=$(XINITDIR) \
-D__bindir__=$(bindir) \
-DSHELL_CMD=$(SHELL_CMD) $(ARCHMANDEFS)
@ -313,16 +326,18 @@ CPP_FILES_FLAGS = \
-DXINITDIR=$(XINITDIR) $(PROGCPPDEFS) -DLIBDIR=$(libdir) \
-DSHELL_CMD=$(SHELL_CMD) $(STARTX_COOKIE_FLAGS) \
-D__libexecdir__="$(libexecdir)" \
-D__bindir__="$(bindir)"
-D__bindir__="$(bindir)" \
-DLAUNCHD_ID_PREFIX="$(launchdidprefix)"
@LAUNCHD_TRUE@launchagents_PRE = org.x.startx.plist.cpp
@LAUNCHD_TRUE@launchagents_PRE = $(launchdidprefix).startx.plist.cpp
@LAUNCHD_TRUE@launchagents_DATA = $(launchagents_PRE:plist.cpp=plist)
@LAUNCHD_TRUE@SUBDIRS = privileged_startx
DIST_SUBDIRS = privileged_startx
xinitrc_DATA = xinitrc
MAINTAINERCLEANFILES = ChangeLog INSTALL
CLEANFILES = xinitrc startx $(appman_DATA) $(launchagents_DATA)
EXTRA_DIST = xinitrc.cpp startx.cpp org.x.startx.plist.cpp $(appman_PRE) \
startx.cmd xinitrc.cmd xinit.def ChangeLog autogen.sh
startx.cmd xinitrc.cmd xinit.def autogen.sh
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
@ -335,15 +350,15 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
@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 \
@ -431,7 +446,7 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xinit-xinit.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xinit.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
@ -446,20 +461,6 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
xinit-xinit.o: xinit.c
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(xinit_CFLAGS) $(CFLAGS) -MT xinit-xinit.o -MD -MP -MF "$(DEPDIR)/xinit-xinit.Tpo" -c -o xinit-xinit.o `test -f 'xinit.c' || echo '$(srcdir)/'`xinit.c; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/xinit-xinit.Tpo" "$(DEPDIR)/xinit-xinit.Po"; else rm -f "$(DEPDIR)/xinit-xinit.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='xinit.c' object='xinit-xinit.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(xinit_CFLAGS) $(CFLAGS) -c -o xinit-xinit.o `test -f 'xinit.c' || echo '$(srcdir)/'`xinit.c
xinit-xinit.obj: xinit.c
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(xinit_CFLAGS) $(CFLAGS) -MT xinit-xinit.obj -MD -MP -MF "$(DEPDIR)/xinit-xinit.Tpo" -c -o xinit-xinit.obj `if test -f 'xinit.c'; then $(CYGPATH_W) 'xinit.c'; else $(CYGPATH_W) '$(srcdir)/xinit.c'; fi`; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/xinit-xinit.Tpo" "$(DEPDIR)/xinit-xinit.Po"; else rm -f "$(DEPDIR)/xinit-xinit.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='xinit.c' object='xinit-xinit.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(xinit_CFLAGS) $(CFLAGS) -c -o xinit-xinit.obj `if test -f 'xinit.c'; then $(CYGPATH_W) 'xinit.c'; else $(CYGPATH_W) '$(srcdir)/xinit.c'; fi`
uninstall-info-am:
install-appmanDATA: $(appman_DATA)
@$(NORMAL_INSTALL)
@ -822,6 +823,7 @@ distclean-generic:
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-recursive
clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
@ -901,17 +903,23 @@ uninstall-info: uninstall-info-recursive
.cpp:
$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@
$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@
.man.$(APP_MAN_SUFFIX):
$(RAWCPP) $(RAWCPPFLAGS) $(MANDEFS) $(EXTRAMANDEFS) < $< | $(CPP_SED_MAGIC) > $@
$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(MANDEFS) $(EXTRAMANDEFS) < $< | $(CPP_SED_MAGIC) > $@
.PHONY: ChangeLog
@LAUNCHD_TRUE@$(launchdidprefix).startx.plist.cpp: org.x.startx.plist.cpp
@LAUNCHD_TRUE@ cp $< $@
.PHONY: ChangeLog INSTALL
INSTALL:
$(INSTALL_CMD)
ChangeLog:
(GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || (touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
$(CHANGELOG_CMD)
dist-hook: ChangeLog
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:

856
app/xinit/aclocal.m4 vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,10 @@
#! /bin/sh
# Wrapper for compilers which do not understand `-c -o'.
scriptversion=2005-05-14.22
scriptversion=2009-10-06.20; # UTC
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009 Free Software
# Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
@ -17,8 +18,7 @@ scriptversion=2005-05-14.22
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@ -103,13 +103,13 @@ if test -z "$ofile" || test -z "$cfile"; then
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use `[/.-]' here to ensure that we don't use the same name
# Note: use `[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
@ -124,9 +124,9 @@ trap "rmdir '$lockdir'; exit 1" 1 2 15
ret=$?
if test -f "$cofile"; then
mv "$cofile" "$ofile"
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
mv "${cofile}bj" "$ofile"
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
@ -138,5 +138,6 @@ exit $ret
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

View File

@ -48,6 +48,9 @@
/* Define to 1 if `vfork' works. */
#undef HAVE_WORKING_VFORK
/* Prefix to use for launchd identifiers */
#undef LAUNCHD_ID_PREFIX
/* Define to 1 if your C compiler doesn't accept -c and -o together. */
#undef NO_MINUS_C_MINUS_O
@ -87,9 +90,6 @@
/* Version number of package */
#undef VERSION
/* Define if you have Xorg X server */
#undef XORG
/* Define to `int' if <sys/types.h> does not define. */
#undef pid_t

3084
app/xinit/configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -21,10 +21,16 @@ dnl
dnl Process this file with autoconf to create configure.
AC_PREREQ([2.57])
AC_INIT(xinit,[1.1.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xinit)
AM_INIT_AUTOMAKE([dist-bzip2])
AC_INIT(xinit,[1.2.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xinit)
AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
# Require xorg-macros: XORG_DEFAULT_OPTIONS
m4_ifndef([XORG_MACROS_VERSION],
[m4_fatal([must install xorg-macros 1.3 or later before running autoconf/autogen])])
XORG_MACROS_VERSION(1.3)
XORG_DEFAULT_OPTIONS
AM_CONFIG_HEADER(config.h)
AC_PROG_CC
@ -41,6 +47,7 @@ AC_CHECK_FUNCS([killpg])
m4_ifdef([AS_HELP_STRING], , [m4_define([AS_HELP_STRING], m4_defn([AC_HELP_STRING]))])
# Build options
DEFAULT_XRDB=xrdb
DEFAULT_XMODMAP=xmodmap
@ -104,6 +111,11 @@ AC_ARG_WITH(xconsole,
[XCONSOLE="$withval"],
[XCONSOLE="$DEFAULT_XCONSOLE"])
AC_ARG_WITH(xinitdir,
AS_HELP_STRING([--with-xinitdir=XINITDIR], [Path to xinitdir]),
[XINITDIR="$withval"],
[XINITDIR="$DEFAULT_XINITDIR"])
AC_ARG_WITH(launchd, AS_HELP_STRING([--with-launchd], [Build with support for Apple's launchd (default: auto)]), [LAUNCHD=$withval], [LAUNCHD=auto])
AC_ARG_WITH(launchagents-dir, AS_HELP_STRING([--with-launchagents-dir=PATH], [Path to launchd's LaunchAgents directory (default: /Library/LaunchAgents)]),
[ launchagentsdir="${withval}" ],
@ -111,6 +123,9 @@ AC_ARG_WITH(launchagents-dir, AS_HELP_STRING([--with-launchagents-dir=PATH], [
AC_ARG_WITH(launchdaemons-dir, AS_HELP_STRING([--with-launchdaemons-dir=PATH], [Path to launchd's LaunchDaemonss directory (default: /Library/LaunchDaemons)]),
[ launchdaemonsdir="${withval}" ],
[ launchdaemonsdir="/Library/LaunchDaemons" ])
AC_ARG_WITH(launchd-id-prefix, AS_HELP_STRING([--with-launchd-id-prefix=PATH], [Prefix to use for launchd identifiers (default: org.x)]),
[ launchdidprefix="${withval}" ],
[ launchdidprefix="org.x" ])
if test "x$LAUNCHD" = "xauto"; then
unset LAUNCHD
@ -129,8 +144,11 @@ else
launchagentsdir=""
launchdaemonsdir=""
fi
AC_DEFINE_UNQUOTED(LAUNCHD_ID_PREFIX, "$launchdidprefix", [Prefix to use for launchd identifiers])
AC_SUBST([launchagentsdir])
AC_SUBST([launchdaemonsdir])
AC_SUBST([launchdidprefix])
AM_CONDITIONAL(LAUNCHD, [test "x$LAUNCHD" = "xyes"])
AM_CONDITIONAL(TIGER_LAUNCHD, [test "x$TIGER_LAUNCHD" = "xyes"])
@ -164,22 +182,34 @@ fi
AC_SUBST(STARTX_COOKIE_FLAGS)
# Additional substitutions in startx, xinitrc & man pages
ARCHMANDEFS=""
SHELL_CMD="/bin/sh"
XSERVERNAME="Xorg"
XCONFIGFILE="xorg.conf"
XCONFIGFILEMAN='${XCONFIGFILE} (__filemansuffix__)'
case $host_os in
cygwin*)
XSERVERNAME="XWin"
XCONFIGFILE="XWinrc"
;;
darwin*)
XSERVERNAME="Xquartz"
XCONFIGFILE="defaults"
XCONFIGFILEMAN='defaults (1)'
;;
*solaris*)
SHELL_CMD="/bin/ksh"
ARCHMANDEFS=""
;;
*sco*)
SHELL_CMD="/bin/ksh"
ARCHMANDEFS="-D__SCOMAN__"
;;
*)
SHELL_CMD="/bin/sh"
ARCHMANDEFS=""
;;
esac
AC_SUBST(SHELL_CMD)
AC_SUBST(ARCHMANDEFS)
AC_SUBST(XSERVERNAME)
AC_SUBST(XCONFIGFILE)
AC_SUBST(XCONFIGFILEMAN)
AC_SUBST(XRDB)
AC_SUBST(XMODMAP)
@ -192,12 +222,7 @@ AC_SUBST(XINIT)
AC_SUBST(WM)
AC_SUBST(XCONSOLE)
# Defines which X servers are listed in help output in xinit.c
# Cheat, lie, and assume all the world is Xorg for now
AC_DEFINE(XORG, 1, [Define if you have Xorg X server])
XORG_MANPAGE_SECTIONS
XORG_RELEASE_VERSION
AC_SUBST(XINITDIR)
AC_OUTPUT([Makefile])
AC_OUTPUT([privileged_startx/Makefile])

View File

@ -23,7 +23,9 @@ MANDEFS = \
-D__filemansuffix__=$(FILE_MAN_SUFFIX) \
-D__libmansuffix__=$(LIB_MAN_SUFFIX) \
-D__miscmansuffix__=$(MISC_MAN_SUFFIX) \
-D__XSERVERNAME__=Xorg -D__XCONFIGFILE__=xorg.conf \
-D__XSERVERNAME__='$(XSERVERNAME)' \
-D__XCONFIGFILE__='$(XCONFIGFILE)' \
-D__XCONFIGFILEMAN__='$(XCONFIGFILEMAN)' \
-D__xinitdir__=$(XINITDIR) \
-D__bindir__=$(bindir) \
-DSHELL_CMD=$(SHELL_CMD) $(ARCHMANDEFS)
@ -31,7 +33,7 @@ MANDEFS = \
SUFFIXES = .$(APP_MAN_SUFFIX) .man .cpp
.cpp:
$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@
$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@
.man.$(APP_MAN_SUFFIX):
$(RAWCPP) $(RAWCPPFLAGS) $(MANDEFS) $(EXTRAMANDEFS) < $< | $(CPP_SED_MAGIC) > $@
$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(MANDEFS) $(EXTRAMANDEFS) < $< | $(CPP_SED_MAGIC) > $@

View File

@ -3,14 +3,14 @@
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.x.startx</string>
<string>LAUNCHD_ID_PREFIX.startx</string>
<key>ProgramArguments</key>
<array>
<string>__bindir__/startx</string>
</array>
<key>Sockets</key>
<dict>
<key>:0</key>
<key>LAUNCHD_ID_PREFIX:0</key>
<dict>
<key>SecureSocketWithKey</key>
<string>DISPLAY</string>

View File

@ -34,7 +34,7 @@ xinitrc_PROGRAMS = privileged_startx
privstartx_SCRIPTS = 10-tmpdirs 20-font_cache
AM_CPPFLAGS = -DXINITDIR=\"$(xinitrcdir)\" -DSCRIPTDIR=\"$(privstartxdir)\" -DBINDIR=\"$(bindir)\"
CPP_FILES_FLAGS = -DXINITDIR="$(xinitrcdir)" -DSCRIPTDIR="$(privstartxdir)" -DBINDIR="$(bindir)"
CPP_FILES_FLAGS = -DXINITDIR="$(xinitrcdir)" -DSCRIPTDIR="$(privstartxdir)" -DBINDIR="$(bindir)" -DLAUNCHD_ID_PREFIX="$(launchdidprefix)"
if TIGER_LAUNCHD
CPP_FILES_FLAGS += -DTIGER_LAUNCHD
@ -55,7 +55,10 @@ BUILT_SOURCES = \
privileged_startxServer.h \
privileged_startx.h
launchdaemons_PRE = org.x.privileged_startx.plist.cpp
$(launchdidprefix).privileged_startx.plist.cpp: org.x.privileged_startx.plist.cpp
cp $< $@
launchdaemons_PRE = $(launchdidprefix).privileged_startx.plist.cpp
launchdaemons_DATA = $(launchdaemons_PRE:plist.cpp=plist)
10-tmpdirs: 10-tmpdirs.cpp Makefile

View File

@ -124,6 +124,7 @@ 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@
ARCHMANDEFS = @ARCHMANDEFS@
@ -134,8 +135,10 @@ 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@
@ -149,6 +152,7 @@ EXEEXT = @EXEEXT@
FILE_MAN_DIR = @FILE_MAN_DIR@
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
GREP = @GREP@
INSTALL_CMD = @INSTALL_CMD@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -166,6 +170,7 @@ MAINT = @MAINT@
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MAN_SUBSTS = @MAN_SUBSTS@
MCOOKIE = @MCOOKIE@
MISC_MAN_DIR = @MISC_MAN_DIR@
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
@ -193,13 +198,18 @@ VERSION = @VERSION@
WM = @WM@
XAUTH = @XAUTH@
XCLOCK = @XCLOCK@
XCONFIGFILE = @XCONFIGFILE@
XCONFIGFILEMAN = @XCONFIGFILEMAN@
XCONSOLE = @XCONSOLE@
XINIT = @XINIT@
XINITDIR = @XINITDIR@
XINIT_CFLAGS = @XINIT_CFLAGS@
XINIT_LIBS = @XINIT_LIBS@
XMODMAP = @XMODMAP@
XORG_MAN_PAGE = @XORG_MAN_PAGE@
XRDB = @XRDB@
XSERVER = @XSERVER@
XSERVERNAME = @XSERVERNAME@
XTERM = @XTERM@
ac_ct_CC = @ac_ct_CC@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
@ -231,6 +241,7 @@ infodir = @infodir@
install_sh = @install_sh@
launchagentsdir = @launchagentsdir@
launchdaemonsdir = @launchdaemonsdir@
launchdidprefix = @launchdidprefix@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
@ -264,7 +275,9 @@ MANDEFS = \
-D__filemansuffix__=$(FILE_MAN_SUFFIX) \
-D__libmansuffix__=$(LIB_MAN_SUFFIX) \
-D__miscmansuffix__=$(MISC_MAN_SUFFIX) \
-D__XSERVERNAME__=Xorg -D__XCONFIGFILE__=xorg.conf \
-D__XSERVERNAME__='$(XSERVERNAME)' \
-D__XCONFIGFILE__='$(XCONFIGFILE)' \
-D__XCONFIGFILEMAN__='$(XCONFIGFILEMAN)' \
-D__xinitdir__=$(XINITDIR) \
-D__bindir__=$(bindir) \
-DSHELL_CMD=$(SHELL_CMD) $(ARCHMANDEFS)
@ -276,7 +289,7 @@ privstartx_SCRIPTS = 10-tmpdirs 20-font_cache
AM_CPPFLAGS = -DXINITDIR=\"$(xinitrcdir)\" -DSCRIPTDIR=\"$(privstartxdir)\" -DBINDIR=\"$(bindir)\"
CPP_FILES_FLAGS = -DXINITDIR="$(xinitrcdir)" \
-DSCRIPTDIR="$(privstartxdir)" -DBINDIR="$(bindir)" \
$(am__append_1)
-DLAUNCHD_ID_PREFIX="$(launchdidprefix)" $(am__append_1)
dist_privileged_startx_SOURCES = \
server.c \
client.c \
@ -292,7 +305,7 @@ BUILT_SOURCES = \
privileged_startxServer.h \
privileged_startx.h
launchdaemons_PRE = org.x.privileged_startx.plist.cpp
launchdaemons_PRE = $(launchdidprefix).privileged_startx.plist.cpp
launchdaemons_DATA = $(launchdaemons_PRE:plist.cpp=plist)
CLEANFILES = \
$(privstartx_SCRIPTS) \
@ -320,9 +333,9 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu privileged_startx/Makefile'; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign privileged_startx/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu privileged_startx/Makefile
$(AUTOMAKE) --foreign privileged_startx/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@ -608,10 +621,13 @@ uninstall-am: uninstall-info-am uninstall-launchdaemonsDATA \
.cpp:
$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@
$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@
.man.$(APP_MAN_SUFFIX):
$(RAWCPP) $(RAWCPPFLAGS) $(MANDEFS) $(EXTRAMANDEFS) < $< | $(CPP_SED_MAGIC) > $@
$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(MANDEFS) $(EXTRAMANDEFS) < $< | $(CPP_SED_MAGIC) > $@
$(launchdidprefix).privileged_startx.plist.cpp: org.x.privileged_startx.plist.cpp
cp $< $@
10-tmpdirs: 10-tmpdirs.cpp Makefile
20-font_cache: 20-font_cache.cpp Makefile

View File

@ -45,9 +45,9 @@ int client_main(void) {
kr = bootstrap_look_up(bootstrap_port, BOOTSTRAP_NAME, &mp);
if (kr != KERN_SUCCESS) {
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
fprintf(stderr, "bootstrap_look_up(): %s\n", bootstrap_strerror(kr));
fprintf(stderr, "privileged_startx: bootstrap_look_up(%s): %s\n", BOOTSTRAP_NAME, bootstrap_strerror(kr));
#else
fprintf(stderr, "bootstrap_look_up(): %ul\n", (unsigned long)kr);
fprintf(stderr, "privileged_startx: bootstrap_look_up(%s): %ul\n", BOOTSTRAP_NAME, (unsigned long)kr);
#endif
exit(EXIT_FAILURE);
}

View File

@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.x.privileged_startx</string>
<string>LAUNCHD_ID_PREFIX.privileged_startx</string>
<key>ProgramArguments</key>
<array>
<string>XINITDIR/privileged_startx</string>
@ -16,7 +16,7 @@
#else
<key>MachServices</key>
<dict>
<key>org.x.privileged_startx</key>
<key>LAUNCHD_ID_PREFIX.privileged_startx</key>
<true/>
</dict>
<key>TimeOut</key>

View File

@ -1,6 +1,10 @@
#ifndef _PRIV_STARTX_TYPES_H_
#define _PRIV_STARTX_TYPES_H_
#define BOOTSTRAP_NAME "org.x.privileged_startx"
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#define BOOTSTRAP_NAME LAUNCHD_ID_PREFIX".privileged_startx"
#endif

View File

@ -26,6 +26,10 @@
* prior written authorization.
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <mach/mach.h>
#include <mach/mach_error.h>
#include <servers/bootstrap.h>
@ -153,7 +157,7 @@ int server_main(const char *dir) {
mp = launch_data_get_machport(svc);
#else
mp = checkin_or_register("org.x.privileged_startx");
mp = checkin_or_register(LAUNCHD_ID_PREFIX".privileged_startx");
#endif
if (mp == MACH_PORT_NULL) {
@ -211,7 +215,7 @@ kern_return_t do_privileged_startx(mach_port_t test_port __attribute__((unused))
#endif
/* script_dir contains a set of files to run with root privs when X11 starts */
ftsp = fts_open(path_argv, FTS_PHYSICAL, ftscmp);
ftsp = fts_open((char * const *)path_argv, FTS_PHYSICAL, ftscmp);
if(!ftsp) {
asl_log(NULL, NULL, ASL_LEVEL_ERR,
"do_privileged_startx: fts_open(%s): %s\n",

View File

@ -1,6 +1,5 @@
/* OS/2 REXX */
/* $XFree86: xc/programs/xinit/startx.cmd,v 3.3 1996/10/17 15:23:47 dawes Exp $
*
/*
* This is just a sample implementation of a slightly less primitive
* interface than xinit. It looks for user xinitrc.cmd and xservrc.cmd
* files, then system xinitrc.cmd and xservrc.cmd files, else lets xinit choose

View File

@ -1,6 +1,5 @@
XCOMM!SHELL_CMD
XCOMM $Xorg: startx.cpp,v 1.3 2000/08/17 19:54:29 cpqbld Exp $
XCOMM
XCOMM This is just a sample implementation of a slightly less primitive
XCOMM interface than xinit. It looks for user .xinitrc and .xserverrc
@ -11,7 +10,6 @@ XCOMM and pop a clock and serveral xterms.
XCOMM
XCOMM Site administrators are STRONGLY urged to write nicer versions.
XCOMM
XCOMM $XFree86: xc/programs/xinit/startx.cpp,v 3.16tsi Exp $
unset DBUS_SESSION_BUS_ADDRESS
unset SESSION_MANAGER
@ -85,7 +83,7 @@ serverargs=""
#ifdef __APPLE__
if [ "x$X11_PREFS_DOMAIN" = x ] ; then
X11_PREFS_DOMAIN="org.x.X11"
export X11_PREFS_DOMAIN=LAUNCHD_ID_PREFIX".X11"
fi
XCOMM Initialize defaults (this will cut down on "safe" error messages)
@ -162,13 +160,13 @@ while [ x"$1" != x ]; do
XCOMM '' required to prevent cpp from treating "/*" as a C comment.
/''*|\./''*)
if [ "$whoseargs" = "client" ]; then
if [ x"$clientargs" = x ]; then
if [ x"$client" = x ] && [ x"$clientargs" = x ]; then
client="$1"
else
clientargs="$clientargs $1"
fi
else
if [ x"$serverargs" = x ]; then
if [ x"$server" = x ] && [ x"$serverargs" = x ]; then
server="$1"
else
serverargs="$serverargs $1"
@ -279,8 +277,8 @@ if [ x"$enable_xauth" = x1 ] ; then
xauth -q -f "$xserverauthfile" << EOF
add :$dummy . $mcookie
EOF
#ifdef __APPLE__
serverargs=${serverargs}" -auth '"${xserverauthfile}"'"
#if defined(__APPLE__) || defined(__CYGWIN__)
serverargs=${serverargs}" -auth '"${xserverauthfile//\'/\'\\\'\'}"'"
#else
serverargs=${serverargs}" -auth "${xserverauthfile}
#endif
@ -313,13 +311,14 @@ else
fi
#else
#ifdef __APPLE__
#if defined(__APPLE__) || defined(__CYGWIN__)
eval XINIT \"$client\" $clientargs -- \"$server\" $display $serverargs
#else
XINIT "$client" $clientargs -- "$server" $display $serverargs
#endif
#endif
retval=$?
if [ x"$enable_xauth" = x1 ] ; then
if [ x"$removelist" != x ]; then
@ -347,3 +346,6 @@ screenrestore
#if defined(sun)
kbd_mode -a
#endif
exit $retval

View File

@ -1,5 +1,4 @@
.\" $Xorg: startx.man,v 1.4 2001/02/09 02:05:49 xorgcvs Exp $
.\" $XdotOrg$
.\"
.\" Copyright 1993, 1998 The Open Group
.\"
.\" Permission to use, copy, modify, distribute, and sell this software and its
@ -24,9 +23,8 @@
.\" other dealings in this Software without prior written authorization
.\" from The Open Group.
.\"
.\" $XFree86: xc/programs/xinit/startx.man,v 1.7 2001/04/19 15:08:32 dawes Exp $
.\"
.TH STARTX 1 __xorgversion__
.TH STARTX __appmansuffix__ __xorgversion__
.SH NAME
startx \- initialize an X session
.SH SYNOPSIS
@ -45,14 +43,16 @@ startx \- initialize an X session
.I options
\&.\|.\|. ]
.SH DESCRIPTION
The \fIstartx\fP script is a front end to \fIxinit\fP that provides a
The \fBstartx\fP script is a front end to
.BR xinit (__appmansuffix__)
that provides a
somewhat nicer user interface for running a single session of the X
Window System. It is often run with no arguments.
.PP
Arguments immediately following the
.I startx
command are used to start a client in the same manner as
.IR xinit (1).
.BR xinit (__appmansuffix__).
The special argument
.RB '--'
marks the end of client arguments and the beginning of server options.
@ -61,11 +61,11 @@ per-session basis the
default color depth, the server's notion of the number of dots-per-inch the
display device presents, or take advantage of a different server layout, as
permitted by the
.IR __XSERVERNAME__ (1)
.BR __XSERVERNAME__ (__appmansuffix__)
server and specified in the
.IR __XCONFIGFILE__ (__filemansuffix__)
file. Some examples of specifying server arguments follow; consult the
manual page for your X server to determine which arguments are legal.
.BR __XCONFIGFILEMAN__
configuration. Some examples of specifying server arguments follow; consult
the manual page for your X server to determine which arguments are legal.
.RS
.PP
startx -- -depth 16
@ -77,7 +77,7 @@ startx -- -layout Multihead
#ifdef __SCOMAN__
.PP
To determine the client to run,
.I startx
.B startx
looks for the following files, in order:
.RS
.PP
@ -93,7 +93,7 @@ looks for the following files, in order:
#else
.PP
To determine the client to run,
.I startx
.B startx
first looks for a file called
.I .xinitrc
in the user's home directory. If that is not found, it uses
@ -105,10 +105,10 @@ library directory.
#endif
If command line client options are given, they override this
behavior and revert to the
.IR xinit (1)
.BR xinit (__appmansuffix__)
behavior.
To determine the server to run,
.I startx
.B startx
first looks for a file called
.I .xserverrc
in the user's home directory. If that is not found, it uses
@ -119,12 +119,12 @@ in the
library directory.
If command line server options are given, they override this
behavior and revert to the
.IR xinit (1)
.BR xinit (__appmansuffix__)
behavior. Users rarely need to provide a
.I .xserverrc
file.
See the
.IR xinit (1)
.BR xinit (__appmansuffix__)
manual page for more details on the arguments.
.PP
The system-wide
@ -139,7 +139,7 @@ The
.I .xinitrc
is typically a shell script which starts many clients according to the
user's preference. When this shell script exits,
.I startx
.B startx
kills the server and performs any other session shutdown needed.
Most of the clients started by
.I .xinitrc
@ -181,7 +181,7 @@ This is to prevent the X server, if not given the
.I \-auth
argument, from automatically setting up insecure host-based authentication
for the local host. See the
.IR Xserver (1)
.BR Xserver (__appmansuffix__)
and
.IR Xsecurity (__miscmansuffix__)
manual pages for more information on X client/server authentication.
@ -216,6 +216,8 @@ Server to run if the user has no
.I .xserverrc
file.
.SH "SEE ALSO"
.IR xinit (1),
.IR Xserver (1),
.IR __XSERVERNAME__ (1)
.BR xinit (__appmansuffix__),
.BR X (__miscmansuffix__),
.BR Xserver (__appmansuffix__),
.BR __XSERVERNAME__ (__appmansuffix__),
.BR __XCONFIGFILEMAN__

View File

@ -1,7 +1,4 @@
/* $Xorg: xinit.c,v 1.5 2001/02/09 02:05:49 xorgcvs Exp $ */
/* $XdotOrg: xc/programs/xinit/xinit.c,v 1.4 2005/10/04 01:27:34 ajax Exp $ */
/* $OpenBSD: xinit.c,v 1.7 2009/05/03 13:17:37 matthieu Exp $ */
/*
Copyright 1986, 1998 The Open Group
@ -27,7 +24,6 @@ used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
*/
/* $XFree86: xc/programs/xinit/xinit.c,v 3.32 2002/05/31 18:46:13 dawes Exp $ */
#ifdef HAVE_CONFIG_H
# include "config.h"
@ -63,7 +59,7 @@ in this Software without prior written authorization from The Open Group.
#ifdef __APPLE__
#include <AvailabilityMacros.h>
#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
#include <vproc.h>
#endif
#endif
@ -103,12 +99,6 @@ char **newenvironlast = NULL;
# endif
#endif
/* A/UX setpgid incorrectly removes the controlling terminal.
Per Posix, only setsid should do that. */
#ifdef macII
#define setpgid setpgrp
#endif
#ifdef __UNIXOS2__
#define HAS_EXECVPE
#endif
@ -121,36 +111,21 @@ char **newenvironlast = NULL;
const char *bindir = BINDIR;
const char * const server_names[] = {
#if defined(ultrix) && defined(mips)
"Xdec Digital color display on DECstation",
#endif
#if defined(sun) && !defined(XORG) /* Sun */
"Xsun Sun BW2, CG2, CG3, CG4, or CG6 on Sun 2, 3, 4, or 386i",
"Xsunmono Sun BW2 on Sun 2, 3, 4, or 386i ",
"Xsun24 Sun BW2, CG2, CG3, CG4, CG6, or CG8 on Sun 4",
#endif
#ifdef hpux /* HP */
"Xhp HP monochrome and colors displays on 9000/300 series",
#endif
#ifdef ibm /* IBM */
"Xibm IBM AED, APA, 8514a, megapel, VGA displays on PC/RT",
#endif
#ifdef macII /* MacII */
"XmacII Apple monochrome display on Macintosh II",
#endif
#ifdef XFREE86
"XFree86 XFree86 displays",
#endif
#ifdef XORG
"Xorg Common X server for most displays",
#endif
#ifdef __APPLE__
"Xquartz Mac OSX Quartz displays.",
#else
# ifdef __CYGWIN__
"XWin X Server for the Cygwin environment on Microsoft Windows",
# else
"Xorg Common X server for most displays",
# endif
#endif
"Xvfb Virtual frame buffer",
"Xfake kdrive-based virtual frame buffer",
"Xnest X server nested in a window on another X server",
"Xephyr kdrive-based nested X server",
"Xvnc X server accessed over VNC's RFB protocol",
"Xdmx Distributed Multi-head X server",
NULL};
#ifndef XINITRC
@ -259,7 +234,7 @@ main(int argc, char *argv[], char *envp[])
int start_of_client_args, start_of_server_args;
struct sigaction sa;
#ifdef __APPLE__
#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
vproc_transaction_t vt;
#endif
#endif
@ -299,15 +274,6 @@ main(int argc, char *argv[], char *envp[])
#endif
for (ptr = default_client; *ptr; )
*cptr++ = *ptr++;
#ifdef sun
/*
* If running on a sun, and if WINDOW_PARENT isn't defined,
* that means SunWindows isn't running, so we should pass
* the -C flag to xterm so that it sets up a console.
*/
if ( getenv("WINDOW_PARENT") == NULL )
*cptr++ = "-C";
#endif /* sun */
} else {
client_given = 1;
}
@ -441,7 +407,7 @@ main(int argc, char *argv[], char *envp[])
signal(SIGUSR1, sigUsr1);
#ifdef __APPLE__
#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
vt = vproc_transaction_begin(NULL);
#endif
#endif
@ -456,7 +422,7 @@ main(int argc, char *argv[], char *envp[])
}
#ifdef __APPLE__
#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
vproc_transaction_end(NULL, vt);
#endif
#endif

View File

@ -1,15 +1,15 @@
.\" $Xorg: xinit.man,v 1.4 2001/02/09 02:05:49 xorgcvs Exp $
.\"
.\" Copyright 1988, 1998 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
.\" the above copyright notice appear in all copies and that both that
.\" copyright notice and this permission notice appear in supporting
.\" documentation.
.\"
.\"
.\" The above copyright notice and this permission notice 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.
@ -17,15 +17,13 @@
.\" 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 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.
.\"
.\" $XFree86: xc/programs/xinit/xinit.man,v 3.9 2001/02/07 23:25:56 dawes Exp $
.\"
.TH XINIT 1 __xorgversion__
.\"
.TH XINIT __appmansuffix__ __xorgversion__
.SH NAME
xinit \- X Window System initializer
.SH SYNOPSIS
@ -44,33 +42,32 @@ xinit \- X Window System initializer
.I options
\&.\|.\|. ]
.SH DESCRIPTION
The \fIxinit\fP program is used to start the X Window System server and a first
client program on systems that
cannot start X directly from \fI/etc/init\fP or in environments
that use multiple window systems. When this first client exits,
\fIxinit\fP will kill the X server and then terminate.
The \fBxinit\fP program is used to start the X Window System server and a first
client program on systems that are not using a display manager such as
.BR xdm (__appmansuffix__)
or in environments
that use multiple window systems. When this first client exits,
\fBxinit\fP will kill the X server and then terminate.
.PP
If no specific client program is given on the command line,
\fIxinit\fP will look for a file in the user's home directory
\fBxinit\fP will look for a file in the user's home directory
called \fI.xinitrc\fP to run as a shell script to start up client programs.
If no such file exists, \fIxinit\fP will use the following as a default:
If no such file exists, \fBxinit\fP will use the following as a default:
.sp
xterm \-geometry +1+1 \-n login \-display :0
.sp
.PP
If no specific server program is given on the command line,
\fIxinit\fP will look for a file in the user's home directory
\fBxinit\fP will look for a file in the user's home directory
called \fI.xserverrc\fP to run as a shell script to start up the server.
If no such file exists, \fIxinit\fP will use the following as a default:
.sp
X :0
.sp
Note that this assumes that there is a program named \fIX\fP in the current
search path. However, servers are usually named \fIXdisplaytype\fP where
\fIdisplaytype\fP is the type of graphics display which is driven by this
server. The site administrator should, therefore, make a link to the
search path. The site administrator should, therefore, make a link to the
appropriate type of server on the machine, or create a shell script that
runs \fIxinit\fP with the appropriate server.
runs \fBxinit\fP with the appropriate server.
.PP
Note, when using a \fI.xserverrc\fP script be sure to ``exec'' the real X server.
Failing to do this can make the X server slow to start and exit. For example:
@ -78,49 +75,49 @@ Failing to do this can make the X server slow to start and exit. For example:
exec Xdisplaytype
.PP
An important point is that programs which are run by \fI\.xinitrc\fP
should be run in the background if they do
should be run in the background if they do
not exit right away, so that they don't prevent other programs from
starting up.
However, the last long-lived program started (usually
a window manager or terminal emulator) should be
left in the foreground so that the script won't exit (which
indicates that the user is done and that \fIxinit\fP should exit).
indicates that the user is done and that \fBxinit\fP should exit).
.PP
An alternate client and/or server may be specified on the
command line. The desired client program and its arguments should be given
as the first command line arguments to \fIxinit\fP. To specify a particular
server command line, append a double dash (\-\^\-) to the \fIxinit\fP command
as the first command line arguments to \fBxinit\fP. To specify a particular
server command line, append a double dash (\-\^\-) to the \fBxinit\fP command
line (after any client and arguments) followed by the desired server command.
.PP
Both the client program name and the server program name must begin with a
slash (/) or a period (.). Otherwise, they are treated as an arguments to be
appended to their respective startup lines. This makes it possible to
add arguments (for example, foreground and background colors) without
appended to their respective startup lines. This makes it possible to
add arguments (for example, foreground and background colors) without
having to retype the whole command line.
.PP
If an explicit server name is not given and the first argument following the
double dash (\-\^\-) is a colon followed by a digit, \fIxinit\fP will use that
number as the display
number instead of zero. All remaining arguments are appended to the server
double dash (\-\^\-) is a colon followed by a digit, \fBxinit\fP will use that
number as the display
number instead of zero. All remaining arguments are appended to the server
command line.
.PP
.SH EXAMPLES
Below are several examples of how command line arguments in \fIxinit\fP are
Below are several examples of how command line arguments in \fBxinit\fP are
used.
.TP 8
.B "xinit"
This will start up a server named \fIX\fP and run the user's \fI\.xinitrc\fP,
if it exists, or else start an \fIxterm\fP.
.TP 8
.B "xinit \-\^\- /usr/local/bin/Xqdss :1"
.B "xinit \-\^\- /usr/local/bin/Xvnc :1"
This is how one could start a specific type of server on an alternate display.
.TP 8
.B "xinit \-geometry =80x65+10+10 \-fn 8x13 \-j \-fg white \-bg navy"
This will start up a server named \fIX\fP, and will append the given
arguments to the default \fIxterm\fP command. It will ignore \fI\.xinitrc\fP.
.TP 8
.B "xinit \-e widgets \-\^\- ./Xsun \-l \-c"
This will use the command \fI\.\/Xsun \-l \-c\fP to start the server and will
.B "xinit \-e widgets \-\^\- ./Xorg \-l \-c"
This will use the command \fI\.\/Xorg \-l \-c\fP to start the server and will
append the arguments \fI\-e widgets\fP to the default \fIxterm\fP command.
.TP 8
.B "xinit /usr/ucb/rsh fasthost cpupig \-display ws:1 \-\^\- :1 \-a 2 \-t 5"
@ -156,7 +153,7 @@ a default \fI\.xinitrc\fP that references a site-wide startup file:
.fi
.in -8
.sp
Another approach is to write a script that starts \fIxinit\fP with a specific
Another approach is to write a script that starts \fBxinit\fP with a specific
shell script. Such scripts are usually named \fIx11\fP, \fIxstart\fP, or
\fIstartx\fP and are a convenient way to provide a simple interface for
novice users:
@ -176,7 +173,7 @@ connect.
.TP 15
.B XINITRC
This variable specifies an init file containing shell commands to start up the
initial windows. By default, \fI\.xinitrc\fP in the home directory will be
initial windows. By default, \fI\.xinitrc\fP in the home directory will be
used.
.SH FILES
.TP 15
@ -192,9 +189,11 @@ default server script
.I X
server to run if \fI.xserverrc\fP does not exist
.SH "SEE ALSO"
.IR X (__miscmansuffix__),
.IR startx (1),
.IR Xserver (1),
.IR xterm (1)
.BR X (__miscmansuffix__),
.BR startx (__appmansuffix__),
.BR Xserver (__appmansuffix__),
.BR __XSERVERNAME__ (__appmansuffix__),
.BR __XCONFIGFILEMAN__,
.BR xterm (__appmansuffix__)
.SH AUTHOR
Bob Scheifler, MIT Laboratory for Computer Science

View File

@ -1,5 +1,4 @@
/* OS/2 REXX */
/* $XFree86: xc/programs/xinit/xinitrc.cmd,v 3.5 1997/01/27 08:26:14 dawes Exp $ */
'@echo off'
env = 'OS2ENVIRONMENT'
x11root = VALUE('X11ROOT',,env)

View File

@ -1,6 +1,5 @@
XCOMM!SHELL_CMD
XCOMM $Xorg: xinitrc.cpp,v 1.3 2000/08/17 19:54:30 cpqbld Exp $
XCOMM $OpenBSD: xinitrc.cpp,v 1.4 2008/06/18 20:31:51 matthieu Exp $
XCOMM $OpenBSD: xinitrc.cpp,v 1.5 2010/05/31 20:23:19 matthieu Exp $
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap