exec a requested new process via /bin/sh to allow for command line args, the same...
[mikachu/openbox.git] / INSTALL
1 Installation instructions for Openbox:
2
3 Compilation and Installation:
4 --------------------------------
5    The `configure' shell script attempts to guess correct values for
6 various system-dependent variables used during compilation.  It uses
7 those values to create a `Makefile' in each directory in the
8 Openbox source tree.
9
10 Finally, it creates a shell script `config.status' that you can run
11 in the future to recreate the current configuration, a file
12 `config.cache' that saves the results of its tests to speed up
13 reconfiguring, and a file `config.log' containing compiler output
14 (useful mainly for debugging `configure').
15
16    If you need to do unusual things to compile Openbox, please try
17 to figure out how `configure' could check whether to do them, and mail
18 diffs or instructions to bhughes@tcac.net so they can be considered
19 for the next release.  If at some point `config.cache' contains
20 results you don't want to keep, you may remove or edit it.
21
22    The file `configure.in' is used to create `configure' by a program
23 called `autoconf'.  You only need `configure.in' if you want to change
24 it or regenerate `configure' using a newer version of `autoconf'.
25
26 The simplest way to compile this package is:
27
28   1. `cd' to the directory containing the package's source code and type
29      `./configure' to configure the package for your system.  If you're
30      using `csh' on an old version of System V, you might need to type
31      `sh ./configure' instead to prevent `csh' from trying to execute
32      `configure' itself.
33
34      Running `configure' takes awhile.  While running, it prints some
35      messages telling which features it is checking for.
36
37   2. Type `make' to compile the package.
38
39   3. Type `make install' to install the programs and any data files and
40      documentation.
41
42   4. You can remove the program binaries and object files from the
43      source code directory by typing `make clean'.  To also remove the
44      files that `configure' created (so you can compile the package for
45      a different kind of computer), type `make distclean'. 
46
47
48 Compilers and Options:
49 ----------------------
50    Some systems require unusual options for compilation or linking that
51 the `configure' script does not know about.  You can give `configure'
52 initial values for variables by setting them in the environment.  Using
53 a Bourne-compatible shell, you can do that on the command line like
54 this:
55      CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
56
57 Or on systems that have the `env' program, you can do it like this:
58      env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
59
60
61 Optional Features:
62 ------------------
63 Openbox supports the XShape extension of X11R6.  This support is enabled by
64 default, but may be overridden by specifying `--disable-shape' on the configure
65 script's command line.
66
67 Openbox supports Window Maker dockapps (warning: restarts from wmaker to
68 Openbox don't always handle dockapps correctly) with a gadget called the Slit.
69 The Slit is compiled into Openbox by default, but may be overridden by
70 specifying `--disable-slit' on the configure script's command line.
71
72 Openbox supports a rendering effect called "faked interlacing" which darkens
73 every other line in rendered images.  This support works only for gradient
74 images.  It is compiled in by default, but may be overridden by specifying
75 `--disable-interlace' on the configure script's command line. 
76
77 Openbox provides an alternative rendering algorithm for dithering on
78 pseudocolor (8 bit) displays. A noticeable pattern is visible when using
79 this; it's a matter of taste whether this looks better than the default
80 algorithm. It is disabled by default, but may be overridden by specifying
81 '--enable-ordered-pseudo' on the configure script's command line.
82
83 Openbox uses a timer which allows it to periodically flush its pixmap
84 cache. It is enabled by default, but may be overridden by specifying
85 '--disable-timed-cache' on the configure script's command line.
86
87 Also, `configure' can usually find the X include and library files
88 automatically, but if it doesn't, you can use the `configure'
89 options `--x-includes=DIR' and `--x-libraries=DIR' to specify
90 their locations.
91
92
93 Please read the README file also.
94