annotate INSTALL @ 765:a543dd3d410f

[xemacs-hg @ 2002-03-05 13:21:21 by stephent] <m3sn7fcm7w.fsf@mail.contactor.se> <q7u1yic5cj5.fsf@hw1020.wdf.sap-ag.de>
author stephent
date Tue, 05 Mar 2002 13:21:22 +0000
parents fd49b88b9f06
children 77624ff6e2da
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1 XEmacs Installation Guide
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2 Copyright (c) 1994, 1995, 1996 Board of Trustees, University of Illinois
424
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
3 Copyright (c) 1994-1999 Free Software Foundation, Inc.
412
697ef44129c6 Import from CVS: tag r21-2-14
cvs
parents: 410
diff changeset
4
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5 Permission is granted to anyone to make or distribute verbatim copies
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6 of this document as received, in any medium, provided that the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 copyright notice and permission notice are preserved,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
8 and that the distributor grants the recipient permission
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
9 for further redistribution as permitted by this notice.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
10
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
11 Permission is granted to distribute modified versions
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
12 of this document, or of portions of it,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 under the above conditions, provided also that they
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14 carry prominent notices stating who last changed them,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 and that any new or changed statements about the activities
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
16 of the Free Software Foundation are approved by the Foundation.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
17
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
19 BUILDING AND INSTALLATION FOR UNIX AND CYGWIN
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
20
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
21 (for Microsoft Windows, see nt/README also.)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
22
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
23 PREREQUISITES
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
24 =============
404
2f8bb876ab1d Import from CVS: tag r21-2-32
cvs
parents: 400
diff changeset
25
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
26 Make sure your system has enough swapping space allocated to handle a
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
27 program whose pure code is 900k bytes and whose data area is at least
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
28 400k and can reach 8Mb or more. Note that a typical XEmacs build is
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
29 much bigger. If the swapping space is insufficient, you will get an
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
30 error in the command `temacs -batch -l loadup dump', found in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
31 `./src/Makefile.in.in', or possibly when running the final dumped
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
32 XEmacs.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
34 Verify that your users have a high enough stack limit. On some systems
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
35 such as OpenBSD and OSF/Tru64 the default is 2MB which is too low. See
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
36 'PROBLEMS' for details.
424
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
37
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
38 Building XEmacs requires about 100 Mb of disk space (including the
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
39 XEmacs sources). Once installed, XEmacs occupies between 20 and 100 Mb
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
40 in the file system where it is installed; this includes the executable files,
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
41 Lisp libraries, miscellaneous data files, and on-line documentation. The
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
42 exact amount depends greatly on the number of extra lisp packages that are
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
43 installed
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
44
255
084402c475ba Import from CVS: tag r20-5b26
cvs
parents: 253
diff changeset
45 XEmacs requires an ANSI C compiler, such as GCC. If you wish to build
084402c475ba Import from CVS: tag r20-5b26
cvs
parents: 253
diff changeset
46 the documentation yourself, you will need at least version 1.68 of
084402c475ba Import from CVS: tag r20-5b26
cvs
parents: 253
diff changeset
47 makeinfo (GNU texinfo-3.11).
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
48
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
49 ADD-ON LIBRARIES
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
50 ================
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
51
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
52 Decide on what other software packages you would like to use with
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
53 XEmacs, but are not yet available on your system. On some systems,
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
54 Motif and CDE are optional additions. On Solaris, the SUNWaudmo
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
55 package enables native sound support. There are also a number of free
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
56 software packages that XEmacs can use. If these are not yet available
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
57 on your system, obtain, build and install those external packages
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
58 before building XEmacs. The packages XEmacs can use are:
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
59
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
60 Xaw3d, XPM, JPEG, compface, PNG, zlib, GNU DBM, Berkeley DB, socks,
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
61 term, NAS, Canna, Kinput2, SJ3, Wnn.
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
62
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
63 You can get (most of) them from the XEmacs ftp site at
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
64 ftp://ftp.xemacs.org/pub/xemacs/aux
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
65
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
66 If you want users on other systems to be able to use the XEmacs you
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
67 have built, try to build those packages so that the generated
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
68 libraries are statically linked.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
69
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
70 Use the --site-includes and --site-libraries options when building
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
71 XEmacs to allow configure to find the external software packages.
201
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
72 If you link with dynamic (``.so'') external package libraries, which
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
73 is not recommended, you will also need to add the library directories
424
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
74 to the --site-runtime-libraries option. For your convenience these can
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
75 be set together by using the --with-site-prefix command. This will set
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
76 these variables as needed assuming your libraries are organised as a
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
77 typical /usr tree.
398
74fd4e045ea6 Import from CVS: tag r21-2-29
cvs
parents: 392
diff changeset
78
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
79 PACKAGE SYSTEM
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
80 ==============
424
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
81
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
82 The file README.packages contain information vital to have a fully
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
83 working XEmacs. This information was not included in this file only
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
84 because it is too large for this terse INSTALL. Please read
424
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
85 README.packages now!
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
86
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
87 CONFIGURATION OPTIONS
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
88 =====================
269
b2472a1930f2 Import from CVS: tag r20-5b33
cvs
parents: 255
diff changeset
89
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
90 In the top level directory of the XEmacs distribution, run the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
91 program `configure' as follows:
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
92
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
93 ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ...
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
94
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
95 Almost always, you should let `configure' (actually the shell script
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
96 `config.guess') guess your host type, by omitting the
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
97 CONFIGURATION-NAME argument. If you like to experiment, specify a
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
98 configuration name in the form MACHINE-VENDOR-OPSYS, for example:
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
99
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
100 sparc-sun-solaris2.6
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
101
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
102 See config.guess and configure.in for valid values for MACHINE,
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
103 VENDOR, and OPSYS. Also check `./etc/MACHINES' for advice on building
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
104 on particular machines.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
105
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
106 If you don't want X support, specify `--without-x'. If you omit this
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
107 option, `configure' will try to autodetect whether your system has X,
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
108 and arrange to use it if present.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
109
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
110 The `--x-includes=DIR' and `--x-libraries=DIR' options tell the build
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
111 process where the compiler should look for the include files and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
112 object libraries used with the X Window System. Normally, `configure'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
113 is able to find them; these options are necessary if you have your X
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
114 Window System files installed in unusual places.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
115
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
116 The `--site-includes=DIR' and `--site-libraries=DIR' options allow you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
117 to specify additional places the compiler should look for include
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
118 files and object libraries. You may specify multiple DIR's by
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
119 enclosing the list in quotes. All the external packages you want to
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
120 use with XEmacs (e.g. xpm, wnn, ...) described later should have their
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
121 include and library directories defined using these options.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
122
201
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
123 The `--site-runtime-libraries=DIR' option specifies directories to
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
124 search for shared libraries at run time. This may be necessary if you
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
125 link with dynamic libraries that are installed in non-standard
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
126 directories, or if you expect some of the libraries used to build
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
127 XEmacs to be in a different directory at run time than at build time.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
128 Usually this will add a `-R' to each directory specified and use that
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
129 when linking XEmacs. If you use this option, you must specify ALL of
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
130 the directories containing shared libraries at run time, including
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
131 system directories.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
132
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
133 Rationale: Some people think that directories in --site-libraries
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
134 should be automatically used to update --site-runtime-libraries.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
135 Here's a real-life scenario that explains why this is not done: You
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
136 build binaries for your company using static libs in
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
137 /net/toy/hack/lib. XEmacs adds /net/toy/hack/lib to the runpath of
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
138 the executable you've built. Since there are only static libs there,
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
139 the system runtime loader will look in this dir, and ignore it,
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
140 causing only a .01 second delay in starting XEmacs. You leave the
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
141 company for a job at a small Silicon Valley startup. Time passes.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
142 The next guy who inherits your machine objects to working on a machine
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
143 named `toy', and gets the sysadmin to rename the machine `godzilla'.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
144 The SA forgets to remove the old entry for `toy' from the hosts file.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
145 Now the system loader will still try to access /net/toy/, and the
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
146 automounter will hang trying to access /net/toy. XEmacs suddenly
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
147 takes 30 seconds longer to start up, no one can figure out why, and
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
148 everyone at your old company curses your name, thinking that you've
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
149 put a time bomb into XEmacs. And they're right!
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
150
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
151 The `--with-gcc' option specifies that the build process should
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
152 compile XEmacs using GCC. The `--compiler' option allows you to
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
153 specify some other compiler to be used to compile XEmacs. If neither
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
154 option is specified, the environment variable CC is used instead.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
155 Otherwise the compiler will then default to 'cc'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
156
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
157 The `--cflags' option specifies the CFLAGS the build process should
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
158 use when compiling XEmacs. Otherwise the value of the environment
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
159 variable CFLAGS is consulted. If that is also undefined, CFLAGS
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
160 defaults to "-g -O" for gcc and "-g" for all other compilers.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
161
594
fd49b88b9f06 [xemacs-hg @ 2001-05-31 12:47:21 by ben]
ben
parents: 442
diff changeset
162 The xemacs executable can be built using a C++ compiler. However,
fd49b88b9f06 [xemacs-hg @ 2001-05-31 12:47:21 by ben]
ben
parents: 442
diff changeset
163 because configure and programs in lib-src require a C compiler, two
fd49b88b9f06 [xemacs-hg @ 2001-05-31 12:47:21 by ben]
ben
parents: 442
diff changeset
164 compilers must be used at different times during the build process.
fd49b88b9f06 [xemacs-hg @ 2001-05-31 12:47:21 by ben]
ben
parents: 442
diff changeset
165 Use something like `configure --compiler=gcc --xemacs-compiler=g++'.
fd49b88b9f06 [xemacs-hg @ 2001-05-31 12:47:21 by ben]
ben
parents: 442
diff changeset
166 This option is intended for use by the maintainers.
fd49b88b9f06 [xemacs-hg @ 2001-05-31 12:47:21 by ben]
ben
parents: 442
diff changeset
167
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
168 The `--dynamic' option specifies that configure should try to link
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
169 emacs dynamically rather than statically.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
170
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
171 You can build XEmacs for several different machine types from a single
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
172 source directory. To do this, you must use a version of `make' that
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
173 supports the `VPATH' variable, such as GNU `make'. Create separate
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
174 build directories for the different configuration types, and in each
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
175 one, run the XEmacs `configure' script. `configure' looks for the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
176 Emacs source code in the directory that `configure' is in.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
177
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
178 The `--prefix=PREFIXDIR' option specifies where the installation process
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
179 should put XEmacs and its data files. This defaults to `/usr/local'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
180 - XEmacs (and the other utilities users run) go in PREFIXDIR/bin
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
181 (unless the `--exec-prefix' option says otherwise).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
182 - The architecture-independent files go in PREFIXDIR/lib/xemacs-VERSION
276
6330739388db Import from CVS: tag r21-0b36
cvs
parents: 274
diff changeset
183 (where VERSION is the version number of XEmacs, like `21.0').
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
184 - The architecture-dependent files go in
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
185 PREFIXDIR/lib/xemacs-VERSION/CONFIGURATION-NAME
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
186 (where CONFIGURATION-NAME is the host type, like mips-dec-ultrix4.2),
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
187 unless the `--exec-prefix' option says otherwise.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
188
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
189 The `--exec-prefix=EXECDIR' option allows you to specify a separate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
190 portion of the directory tree for installing architecture-specific
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
191 files, like executables and utility programs. If specified,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
192 - XEmacs (and the other utilities users run) go in EXECDIR/bin, and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
193 - The architecture-dependent files go in
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
194 EXECDIR/lib/xemacs-VERSION/CONFIGURATION-NAME.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
195 EXECDIR/bin should be a directory that is normally in users' PATHs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
196
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
197 If you specify --prefix (or any of the other installation directory
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
198 options), they will get compiled into the xemacs executable so it will
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
199 be able to find its various associated file. However, XEmacs has
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
200 quite elaborate logic to find out the locations of these directories
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
201 dynamically. Sometimes, it is desirable *not* to compile these
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
202 directories into the executable so you can move the XEmacs
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
203 installation around (as whole) at will. This is true for binary kits,
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
204 for instance. Therefore, you can specify --without-prefix on the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
205 configure command line to prevent the installation prefix to become
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
206 part of the generated executable; everything else will continue to
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
207 work as usual.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
208
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
209 The `--with-menubars=TYPE' option allows you to specify which X
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
210 toolkit you wish to use for the menubar. The valid options are
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
211 `lucid', `motif' and `no'. The default is `lucid' which is a
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
212 Motif-lookalike menubar. We highly recommend its usage over the real
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
213 Motif menubar. (In fact, the Motif menubar is currently broken.) If
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
214 `no' is specified then support for menubars will not be compiled in.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
215
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
216 The `--with-scrollbars=TYPE' option allows you to specify which X
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
217 toolkit you wish to use for the scrollbars. The valid options are
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
218 `lucid', `motif', `athena', `athena3d', and `no'. The default is
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
219 `lucid' which is a Motif-lookalike scrollbar. If `no' is specified
104
cf808b4c4290 Import from CVS: tag r20-1b4
cvs
parents: 70
diff changeset
220 then support for scrollbars will not be compiled in.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
221
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
222 The `--with-dialogs=TYPE' option allows you to specify which X toolkit
219
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents: 217
diff changeset
223 you wish to use for the dialog boxes. The valid options are `athena',
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
224 `athena3d', `motif, and `no. The `lucid' option is accepted and will
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
225 result in the `athena' toolkit being used. If the Motif toolkit can be
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
226 found the default is `motif'. Otherwise, the default is `athena'. If
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
227 `no' is specified then support for dialog boxes will not be compiled
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
228 in.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
229
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
230 The `--with-toolbars' option allows you to enable or disable toolbar
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
231 support. The default is `yes' as long as support for a windowing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
232 system is included.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
233
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
234 The `--with-xpm' option specifies that XEmacs should support X11
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
235 Pixmaps. `configure' will attempt to detect if you have the Xpm
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
236 libraries and define `--with-xpm' for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
237
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
238 The `--with-xface' option specifies that XEmacs should support
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
239 X-Faces. `configure' will attempt to detect if you have the compface
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
240 library and define `--with-xface' for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
241
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
242 The `--with-database' option specifies that XEmacs should be built
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
243 with additional database support. The valid options are `no' or a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
244 comma-separated list of one or more of `dbm', `gnudbm' or `berkdb'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
245 `configure' will attempt to detect the necessary libraries and header
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
246 files and define `--with-database' for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
247
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
248 The `--with-socks' option specifies that XEmacs should be built with
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
249 SOCKS support. This requires the libsocks library.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
250
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
251 The `--with-tooltalk' option specifies that XEmacs should be built
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
252 with ToolTalk support for interconnecting with other applications.
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
253 ToolTalk is not yet supported on all architectures. If you use this
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
254 option, you should have the tooltalk package (see etc/PACKAGES)
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
255 installed prior to building XEmacs.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
256
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
257 The `--with-sparcworks' option specifies that XEmacs should be built
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
258 with support for Sun Sparcworks 3.0.1 and up (including Sun WorkShop).
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
259 This functionality is only of use on SunOS 4.1.x and Solaris 2.x
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
260 systems. If you use this option, you should have the Sun package (see
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
261 etc/PACKAGES) installed prior to building XEmacs.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
262
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
263 The `--with-cde' option allows you to enable or disable CDE drag and
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
264 drop support. `configure' will attempt to detect this option and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
265 define `--with-cde' for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
266
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
267 The `--with-offix' option allows you to enable or disable OffiX drag
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
268 and drop support. This requires no external library support, so if
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
269 X11 support is available, then this option defaults to `yes'. OffiX
274
ca9a9ec9c1c1 Import from CVS: tag r21-0b35
cvs
parents: 272
diff changeset
270 support can be explicitly disabled via the `--with-offix=no' option.
2
ac2d302a0011 Import from CVS: tag r19-15b2
cvs
parents: 0
diff changeset
271
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
272 The `--external-widget' option specifies that XEmacs should be built
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
273 with support for being used as a widget by other X11 applications.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
274 This functionality should be considered beta.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
275
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
276 The `--without-xmu' option can be used if your vendor doesn't ship
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
277 the Xmu library.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
278
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
279 The `--puresize' option can be used to change the amount of purespace
104
cf808b4c4290 Import from CVS: tag r20-1b4
cvs
parents: 70
diff changeset
280 allocated for the dumped XEmacs. As of XEmacs 20.1 usage of this
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
281 parameter is deprecated and will be ignored.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
282
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
283 The `--with-sound=TYPE' option specifies that XEmacs should be built
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
284 with sound support. Native (`--with-sound=native') sound support is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
285 currently available only on Sun SparcStations, SGI's, HP9000s, and
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
286 systems (such as Linux) with soundcard.h. Network Audio Support (NAS)
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
287 (`--with-sound=nas' or `--with-sound=both') is an extension to X that
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
288 you may or may not have for your system. For NAS, you will probably
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
289 need to provide the paths to the nas include and library directories
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
290 to configure. If `--with-sound' is not specified, `configure' will
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
291 attempt to determine if your configuration supports native sound and
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
292 define --with-sound for you. If your native sound library is not in a
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
293 standard location you can specify it with the `--native-sound-lib=LIB'
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
294 flag. For Linux, `/dev/audio' is required for SunAudio files and
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
295 `/dev/dsp' is required for raw data and WAVE format files.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
296
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
297 The `--rel-alloc' option can be used to either enable or disable use
151
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
298 of the relocating allocator. Turning on --rel-alloc will allow XEmacs
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
299 to return unused memory to the operating system, thereby reducing its
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
300 memory footprint. However, it may make XEmacs runs more slowly,
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
301 especially if your system's `mmap' implementation is missing or
151
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
302 inefficient. Generally, it's best to go with the default
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
303 configuration for your system. You can tweak this based on how you
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
304 use XEmacs, and the memory and cpu resources available on your system.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
305
426
43177a4f3daf Import from CVS: tag r21-2-21
cvs
parents: 424
diff changeset
306 The `--with-system-malloc' option can be use to either enable or
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
307 disable use of the system malloc. Generally, it's best to go with the
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
308 default configuration for your system. Note that on many systems
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
309 using the system malloc disables the use of the relocating allocator.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
310
426
43177a4f3daf Import from CVS: tag r21-2-21
cvs
parents: 424
diff changeset
311 The `--with-debug-malloc' option can be used to link a special debugging
177
6075d714658b Import from CVS: tag r20-3b15
cvs
parents: 153
diff changeset
312 version of malloc. Debug Malloc is not included with XEmacs, is
6075d714658b Import from CVS: tag r20-3b15
cvs
parents: 153
diff changeset
313 intended for use only by the developers and may be obtained from
6075d714658b Import from CVS: tag r20-3b15
cvs
parents: 153
diff changeset
314 <URL:http://www.letters.com/dmalloc/>.
6075d714658b Import from CVS: tag r20-3b15
cvs
parents: 153
diff changeset
315
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
316 The `--debug' and `--error-checking' options are intended for use only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
317 by the developers. `--debug' adds code to be compiled in for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
318 performing various tests. `--error-checking' adds additional tests to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
319 many of the commonly used macros.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
320
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
321 The `--verbose' and `--extra-verbose' options are intended for use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
322 only by the developers. `--verbose' causes the results of all
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
323 configure tests to be displayed. `--extra-verbose' displays
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
324 additional information, useful for debugging. Another help for
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
325 determining configure failures is the file `config.log', which
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
326 contains the results of the compile and link tests used by configure.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
327
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
328 The `--with-mule' option enables (MUlti-Lingual Emacs) support, needed
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
329 to support non-Latin-1 (including Asian) languages. The Mule support
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
330 is not yet as stable or efficient as the `Latin1' support. Enabling
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
331 Mule support requires the mule-base package installed prior to
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
332 building XEmacs. The following options require Mule support:
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
333
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
334 The `--with-xim' option enables use of the X11 XIM mechanism to allow
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
335 an input method to input text into XEmacs. The input method is shared
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
336 among all the X applications sharing an X display and using the same
151
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
337 language. The XIM support comes in two flavors: `motif' and `xlib'.
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
338 The Motif support (the XmIm* functions) is preferred when available.
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
339 The xlib XIM support works reasonably well so long as the X11 libraries
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
340 are recent enough. It has been fairly well tested on Linux with glibc
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
341 2.0.5 and 2.0.6 and Kinput2 as an XIM server. In this configuration
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
342 X11 must be recompiled with X_LOCALE defined because glibc is lacking
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
343 localization for Japanese. The XIM support defaults to `no' except
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
344 when Motif is detected where it is stable with OSF libraries. The XIM
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
345 support in Lesstif (a Free Motif replacement) does not work as of
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
346 v0.82. If you enable this option, you will probably wish to install
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
347 the `locale' package which contains localized Splash screens and
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
348 Menubars.
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
349
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
350 The `--with-xfs' option enables use of a multilingual Menubar. At the
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
351 present time, only Japanese and French locales are supported. In
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
352 order to use a multilingual Menubar you must have the `locale' package
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
353 installed. The `locale' package does not have to be installed when
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
354 building XEmacs.
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
355
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
356 The `--with-canna' option enables the use of the Canna Japanese input
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
357 method. This is stable code and fairly well tested. In order to use
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
358 it, you will have to have the Canna server installed and running.
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
359 Canna versions 3.2pl2 and 3.5b2 are known to work. Version 3.2pl2 is
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
360 considered most stable than version 3.5b2. If Canna is already
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
361 installed, configure will autodetect it, so you never need to
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
362 explicitly use this option unless your Canna libraries are somewhere
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
363 strange. Canna run time support is currently bundled with the
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
364 `mule-base' package so there is nothing additional to install in order
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
365 to use it.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
366
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
367 The `--with-wnn' and `--with-wnn6' options are for compiling with the Wnn
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
368 multi-language input method. `--with-wnn' is for compiling with Wnn-4.2,
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
369 the Free version of WNN. `--with-wnn6' is for compiling against WNN6,
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
370 the commercial version of WNN available from OMRON Corporation. This is
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
371 stable code and fairly well tested. In order to build with this
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
372 option, you will need to have the `egg-its' lisp package already
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
373 installed.
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
374
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
375 Please note that it is safe to build with as many of the options
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
376 `--with-xim', `--with-canna' and `--with-wnn' as your system
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
377 supports.
104
cf808b4c4290 Import from CVS: tag r20-1b4
cvs
parents: 70
diff changeset
378
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
379 MAIL LOCKING
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
380 ============
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
381
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
382 Find out what the preferred method for locking mail spool files is in
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
383 your environment. Presently, XEmacs supports lockf, flock, and dot
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
384 locking. Specify the locking method via the --mail-locking=METHOD
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
385 option to configure. Valid values for METHOD are --mail-locking are
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
386 `lockf', `flock', and `dot'.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
387
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
388 RUNNING CONFIGURE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
389 =================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
390
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
391 `configure' doesn't do any compilation or installation itself. It
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
392 just creates the files that influence those things: `./src/config.h',
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
393 and all the Makefile's in the build tree.
104
cf808b4c4290 Import from CVS: tag r20-1b4
cvs
parents: 70
diff changeset
394
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
395 When it is done, `configure' prints a description of what it did and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
396 creates a shell script `config.status' which, when run, recreates the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
397 same configuration. If `configure' exits with an error after
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
398 disturbing the status quo, it removes `config.status'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
399
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
400 AUXILIARY PATHS
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
401 ===============
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
402
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
403 Look at `./lisp/paths.el'; if some of those values are not right for
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
404 your system, set up the file `./lisp/site-init.el' with XEmacs Lisp
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
405 code to override them; it is not a good idea to edit paths.el itself.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
406 YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES, rather than
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
407 `defvar', as used by `./lisp/paths.el'. For example,
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
408
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
409 (setq news-inews-program "/usr/bin/inews")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
410
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
411 is how you would override the default value of the variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
412 news-inews-program (which is "/usr/local/inews").
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
413
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
414 Before you override a variable this way, *look at the value* that the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
415 variable gets by default! Make sure you know what kind of value the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
416 variable should have. If you don't pay attention to what you are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
417 doing, you'll make a mistake.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
418
392
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
419 Things may malfunction if the variable `directory-abbrev-alist' is not
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
420 set up to translate "temporary" automounter mount points into the
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
421 canonical form. XEmacs tries to detect how your automounter is
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
422 configured. If you have an unusual automounter configuration that
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
423 XEmacs cannot detect, you may need to change the value of
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
424 `directory-abbrev-alist'.
371
cc15677e0335 Import from CVS: tag r21-2b1
cvs
parents: 367
diff changeset
425
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
426 SITE-SPECIFIC STARTUP CODE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
427 ==========================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
428
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
429 Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs Lisp
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
430 code you want XEmacs to load before it is dumped out. Use
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
431 site-load.el for additional libraries if you arrange for their
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
432 documentation strings to be in the lib-src/DOC file (see
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
433 src/Makefile.in.in if you wish to figure out how to do that). For all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
434 else, use site-init.el.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
435
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
436 Note that, on some systems, the code you place in site-init.el must
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
437 not use expand-file-name or any other function which may look
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
438 something up in the system's password and user information database.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
439 See `./PROBLEMS' for more details on which systems this affects.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
440
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
441 The `site-*.el' files are nonexistent in the distribution. You do not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
442 need to create them if you have nothing to put in them.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
443
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
444 TERMCAP CONFIGURATION
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
445 =====================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
446
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
447 Refer to the file `./etc/TERMS' for information on fields you may
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
448 wish to add to various termcap entries. The files `./etc/termcap.ucb'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
449 and `./etc/termcap.dat' may already contain appropriately-modified
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
450 entries.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
451
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
452 RUNNING MAKE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
453 ============
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
454
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
455 Run `make' in the top directory of the XEmacs distribution to finish
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
456 building XEmacs in the standard way. The final executable file is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
457 named `src/emacs'. You can execute this file "in place" without
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
458 copying it, if you wish; then it automatically uses the sibling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
459 directories ../lisp, ../lib-src, ../info.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
460
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
461 Or you can "install" the executable and the other XEmacs into their
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
462 installed locations, with `make install'. By default, XEmacs's files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
463 are installed in the following directories:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
464
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
465 By default, XEmacs installs its files in the following directories:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
466
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
467 `/usr/local/bin' holds the executable programs users normally run -
388
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
468 `xemacs', `etags', `ctags', `b2m', `emacsclient', `ellcc',
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
469 `gnuclient', `gnudoit', `gnuattach', and `rcs-checkin'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
470
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
471 `/usr/local/lib/xemacs-VERSION/lisp' holds the Emacs Lisp libraries;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
472 `VERSION' stands for the number of the XEmacs version
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
473 you are installing, like `18.59' or `19.14'. Since
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
474 the lisp libraries change from one version of XEmacs to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
475 another, including the version number in the path
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
476 allows you to have several versions of XEmacs installed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
477 at the same time; this means that you don't have to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
478 make XEmacs unavailable while installing a new version.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
479
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
480 XEmacs searches for its lisp files in these
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
481 directories, and then in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
482 `/usr/local/lib/xemacs/site-lisp/*'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
483
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
484 `/usr/local/lib/xemacs-VERSION/etc' holds the XEmacs tutorial, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
485 `yow' database, and other architecture-independent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
486 files XEmacs might need while running. VERSION is as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
487 specified for `.../lisp'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
488
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
489 `/usr/local/lib/xemacs/lock' contains files indicating who is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
490 editing what, so XEmacs can detect editing clashes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
491 between users.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
492
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
493 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME' contains executable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
494 programs used by XEmacs that users are not expected to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
495 run themselves, and the DOC file. `VERSION' is the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
496 number of the XEmacs version you are installing, and
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
497 `CONFIGURATION-NAME' is the host type of your system.
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
498 Since these files are specific to the version of
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
499 XEmacs, operating system, and architecture in use,
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
500 including the configuration name in the path allows
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
501 you to have several versions of XEmacs for any mix of
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
502 machines and operating systems installed at the same
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
503 time; this is useful for sites at which different
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
504 kinds of machines share the file system XEmacs is
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
505 installed on.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
506
388
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
507 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME/modules' holds the Emacs
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
508 dynamically loadable modules. These are special programs
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
509 typically written in C that can be loaded in much the same
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
510 way that Lisp packages are. Not all systems support
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
511 dynamic modules, so do not be alarmed if this directory
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
512 does not exist or is empty.
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
513
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
514 XEmacs searches for modules in this directory, or any
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
515 sub-directory of it, and then in
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
516 `/usr/local/lib/xemacs/site-modules/*'.
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
517
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
518 `/usr/local/lib/xemacs-VERSION/info' holds the on-line documentation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
519 for XEmacs, known as "info files".
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
520
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
521 `/usr/local/man/man1' holds the man pages for the programs installed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
522 in `/usr/local/bin'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
523
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
524 If these directories are not what you want, you can specify where to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
525 install XEmacs's libraries and data files or where XEmacs should search
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
526 for its lisp files by giving values for `make' variables as part of
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
527 the command.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
528
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
529 You can change where the build process installs XEmacs and its data
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
530 files by specifying values for `make' variables as part of the `make'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
531 command line. For example, if you type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
532
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
533 make install bindir=/usr/local/gnubin
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
534
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
535 the `bindir=/usr/local/gnubin' argument indicates that the XEmacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
536 executable files should go in `/usr/local/gnubin', not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
537 `/usr/local/bin'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
538
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
539 Here is a complete list of the variables you may want to set.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
540
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
541 `bindir' indicates where to put executable programs that users can
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
542 run. This defaults to /usr/local/bin.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
543
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
544 `datadir' indicates where to put the architecture-independent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
545 read-only data files that XEmacs refers to while it runs; it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
546 defaults to /usr/local/lib. We create the following
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
547 subdirectories under `datadir':
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
548 - `xemacs-VERSION/lisp', containing the XEmacs lisp libraries, and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
549
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
550 - `xemacs-VERSION/etc', containing the XEmacs tutorial and the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
551 `yow' database.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
552 `VERSION' is the number of the XEmacs version you are installing,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
553 like `18.59' or `19.14'. Since these files vary from one version
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
554 of XEmacs to another, including the version number in the path
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
555 allows you to have several versions of XEmacs installed at the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
556 same time; this means that you don't have to make XEmacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
557 unavailable while installing a new version.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
558
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
559 `statedir' indicates where to put architecture-independent data files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
560 that XEmacs modifies while it runs; it defaults to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
561 /usr/local/lib as well. We create the following
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
562 subdirectories under `statedir':
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
563 - `xemacs/lock', containing files indicating who is editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
564 what, so XEmacs can detect editing clashes between
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
565 users.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
566
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
567 `libdir' indicates where to put architecture-specific data files that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
568 XEmacs refers to as it runs; it too defaults to `/usr/local/lib'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
569 We create the following subdirectories under `libdir':
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
570 - `xemacs-VERSION/CONFIGURATION-NAME', containing executable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
571 programs used by XEmacs that users are not expected to run
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
572 themselves and the DOC file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
573 `VERSION' is the number of the XEmacs version you are installing,
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
574 and `CONFIGURATION-NAME' is the host type of your system.
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
575 Since these files are specific to the version of XEmacs,
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
576 operating system, and architecture in use, including the
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
577 configuration name in the path allows you to have several
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
578 versions of XEmacs for any mix of machines and operating
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
579 systems installed at the same time; this is useful for sites
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
580 at which different kinds of machines share the file system
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
581 XEmacs is installed on.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
582
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
583 `infodir' indicates where to put the info files distributed with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
584 XEmacs; it defaults to `/usr/local/lib/xemacs-VERSION/info'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
585
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
586 `mandir' indicates where to put the man pages for XEmacs and its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
587 utilities (like `etags'); it defaults to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
588 `/usr/local/man/man1'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
589
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
590 `prefix' doesn't give a path for any specific part of XEmacs; instead,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
591 its value is used to determine the defaults for all the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
592 architecture-independent path variables - `datadir',
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
593 `statedir', `infodir', and `mandir'. Its default value is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
594 `/usr/local'; the other variables add on `lib' or `man' to it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
595 by default.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
596
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
597 For example, suppose your site generally places GNU software
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
598 under `/usr/users/software/gnusoft' instead of `/usr/local'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
599 By including
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
600 `prefix=/usr/users/software/gnusoft'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
601 in the arguments to `make', you can instruct the build process
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
602 to place all of the XEmacs data files in the appropriate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
603 directories under that path.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
604
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
605 `exec_prefix' serves the same purpose as `prefix', but instead
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
606 determines the default values for the architecture-dependent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
607 path variables - `bindir' and `libdir'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
608
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
609 The above variables serve analogous purposes in the makefiles for all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
610 GNU software; here are some variables specific to XEmacs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
611
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
612 `lispdir' indicates where XEmacs installs and expects its lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
613 libraries. Its default value, based on `datadir' (see above),
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
614 is `/usr/local/lib/xemacs-VERSION/lisp' (where `VERSION' is as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
615 described above).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
616
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
617 `sitelispdir' indicates where XEmacs should search for lisp libraries
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
618 specific to your site. XEmacs checks them in order before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
619 checking `lispdir'. Its default value, based on `datadir'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
620 (see above), is `/usr/local/lib/xemacs/site-lisp'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
621
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
622 `etcdir' indicates where XEmacs should install and expect the rest of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
623 its architecture-independent data, like the tutorial and yow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
624 database. Its default value, based on `datadir'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
625 (see above), is `/usr/local/lib/xemacs-VERSION/etc' (where
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
626 `VERSION' is as described above).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
627
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
628 `lockdir' indicates the directory where XEmacs keeps track of its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
629 locking information. Its default value, based on `statedir'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
630 (see above), is `/usr/local/lib/xemacs/lock'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
631
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
632 `archlibdir' indicates where XEmacs installs and expects the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
633 executable files and other architecture-dependent data it uses
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
634 while running. Its default value, based on `libdir' (see
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
635 above), is `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
636 (where VERSION and CONFIGURATION-NAME are as described above).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
637
420
41dbb7a9d5f2 Import from CVS: tag r21-2-18
cvs
parents: 412
diff changeset
638 `docdir' indicates where to put Lisp documentation strings that XEmacs
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
639 refers to as it runs. It defaults to the value of `archlibdir'
420
41dbb7a9d5f2 Import from CVS: tag r21-2-18
cvs
parents: 412
diff changeset
640 (see above).
41dbb7a9d5f2 Import from CVS: tag r21-2-18
cvs
parents: 412
diff changeset
641
388
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
642 `moduledir' indicates where XEmacs installs and expects to find
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
643 any dynamic modules. Its default value, based on
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
644 `archlibdir' (see above) is
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
645 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME/modules'
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
646 (where VERSION and CONFIGURATION-NAME are as described above).
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
647 By their very nature, dynamic loadable modules are architecture-
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
648 dependent, and care should be taken not to set this directory
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
649 to a system- or architecture-independent directory.
388
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
650
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
651 Remember that you must specify any variable values you need each time
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
652 you run `make' in the top directory. If you run `make' once to build
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
653 xemacs, test it, and then run `make' again to install the files, you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
654 must provide the same variable settings each time. To make the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
655 settings persist, you can edit them into the `Makefile' in the top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
656 directory, but be aware that running the `configure' program erases
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
657 `Makefile' and rebuilds it from `Makefile.in'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
658
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
659 The top-level Makefile stores the variable settings it used in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
660 Makefiles for the subdirectories, so you don't have to specify them
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
661 when running make in the subdirectories.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
662
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
663 Using GNU Make allows for simultaneous builds with and without the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
664 --srcdir option.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
665
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
666 MAIL-LOCKING POST-INSTALLATION
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
667 ==============================
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
668
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
669 If your system uses dot-locking to interlock access to mailer inbox
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
670 files, then you might need to make the movemail program setuid or
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
671 setgid to enable it to write the lock files. We believe this is safe.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
672 The setuid/setgid bits need not be set on any other XEmacs-related
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
673 executables.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
674
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
675 CLEANING UP
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
676 ==========
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
677
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
678 You are done with the hard part! You can remove executables and
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
679 object files from the build directory by typing `make clean'. To also
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
680 remove the files that `configure' created (so you can compile XEmacs
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
681 for a different configuration), type `make distclean'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
682
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
683 READ README.packages
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
684 ====================
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
685
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
686 Do it!
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
687
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
688 PROBLEMS
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
689 ========
398
74fd4e045ea6 Import from CVS: tag r21-2-29
cvs
parents: 392
diff changeset
690
424
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
691 The most likely problem is that you forgot to read and follow the
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
692 directions in README.packages. You can not have a working XEmacs
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
693 without downloading some additional packages.
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
694
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
695 See the file PROBLEMS in this directory for a list of various
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
696 problems sometimes encountered, and what to do about them.