annotate INSTALL @ 1314:15a91d7ae2d1

[xemacs-hg @ 2003-02-20 08:16:21 by ben] check in makefile fixes et al Makefile.in.in: Major surgery. Move all stuff related to building anything in the src/ directory into src/. Simplify the dependencies -- everything in src/ is dependent on the single entry `src' in MAKE_SUBDIRS. Remove weirdo targets like `all-elc[s]', dump-elc[s], etc. mule/mule-msw-init.el: Removed. Delete this file. mule/mule-win32-init.el: New file, with stuff from mule-msw-init.el -- not just for MS Windows native, boys and girls! bytecomp.el: Change code inserted to catch trying to load a Mule-only .elc file in a non-Mule XEmacs. Formerly you got the rather cryptic "The required feature `mule' cannot be provided". Now you get "Loading this file requires Mule support". finder.el: Remove dependency on which directory this function is invoked from. update-elc.el: Don't mess around with ../src/BYTECOMPILE_CHANGE. Now that Makefile.in.in and xemacs.mak are in sync, both of them use NEEDTODUMP and the other one isn't used. dumped-lisp.el: Rewrite in terms of `list' and `nconc' instead of assemble-list, so we can have arbitrary forms, not just `when-feature'. very-early-lisp.el: Nuke this file. finder-inf.el, packages.el, update-elc.el, update-elc-2.el, loadup.el, make-docfile.el: Eliminate references to very-early-lisp. msw-glyphs.el: Comment clarification. xemacs.mak: Add macros DO_TEMACS, DO_XEMACS, and a few others; this macro section is now completely in sync with src/Makefile.in.in. Copy check-features, load-shadows, and rebuilding finder-inf.el from src/Makefile.in.in. The main build/dump/recompile process is now synchronized with src/Makefile.in.in. Change `WARNING' to `NOTE' and `error checking' to `error-checking' TO avoid tripping faux warnings and errors in the VC++ IDE. Makefile.in.in: Major surgery. Move all stuff related to building anything in the src/ directory from top-level Makefile.in.in to here. Simplify the dependencies. Rearrange into logical subsections. Synchronize the main compile/dump/build-elcs section with xemacs.mak, which is already clean and in good working order. Remove weirdo targets like `all-elc[s]', dump-elc[s], etc. Add additional levels of macros \(e.g. DO_TEMACS, DO_XEMACS, TEMACS_BATCH, XEMACS_BATCH, XEMACS_BATCH_PACKAGES) to factor out duplicated stuff. Clean up handling of "HEAP_IN_DATA" (Cygwin) so it doesn't need to ignore the return value from dumping. Add .NO_PARALLEL since various aspects of building and dumping must be serialized but do not always have dependencies between them (this is impossible in some cases). Everything related to src/ now gets built in one pass in this directory by just running `make' (except the Makefiles themselves and config.h, paths.h, Emacs.ad.h, and other generated .h files). console.c: Update list of possibly valid console types. emacs.c: Rationalize the specifying and handling of the type of the first frame. This was originally prompted by a workspace in which I got GTK to compile under C++ and in the process fixed it so it could coexist with X in the same build -- hence, a combined TTY/X/MS-Windows/GTK build is now possible under Cygwin. (However, you can't simultaneously *display* more than one kind of device connection -- but getting that to work is not that difficult. Perhaps a project for a bored grad student. I (ben) would do it but don't see the use.) To make sense of this, I added new switches that can be used to specifically indicate the window system: -x [aka --use-x], -tty \[aka --use-tty], -msw [aka --use-ms-windows], -gtk [aka --use-gtk], and -gnome [aka --use-gnome, same as --use-gtk]. -nw continues as an alias for -tty. When none have been given, XEmacs checks for other parameters implying particular device types (-t -> tty, -display -> x [or should it have same treatment as DISPLAY below?]), and has ad-hoc logic afterwards: if env var DISPLAY is set, use x (or gtk? perhaps should check whether gnome is running), else MS Windows if it exsits, else TTY if it exists, else stream, and you must be running in batch mode. This also fixes an existing bug whereby compiling with no x, no mswin, no tty, when running non- interactively (e.g. to dump) I get "sorry, must have TTY support". emacs.c: Turn on Vstack_trace_on_error so that errors are debuggable even when occurring extremely early in reinitialization. emacs.c: Try to make sure that the user can see message output under Windows (i.e. it doesn't just disappear right away) regardless of when it occurs, e.g. in the middle of creating the first frame. emacs.c: Define new function `emacs-run-status', indicating whether XEmacs is noninteractive or interactive, whether raw, post-dump/pdump-load or run-temacs, whether we are dumping, whether pdump is in effect. event-stream.c: It's "mommas are fat", not "momas are fat". Fix other typo. event-stream.c: Conditionalize in_menu_callback check on HAVE_MENUBARS, because it won't exist on w/o menubar support, lisp.h: More hackery on RETURN_NOT_REACHED. Cygwin v3.2 DOES complain here if RETURN_NOT_REACHED() is blank, as it is for GCC 2.5+. So make it blank only for GCC 2.5 through 2.999999999999999. Declare Vstack_trace_on_error. profile.c: Need to include "profile.h" to fix warnings. sheap.c: Don't fatal() when need to rerun Make, just stderr_out() and exit(0). That way we can distinguish between a dumping failing expectedly (due to lack of stack space, triggering another dump) and unexpectedly, in which case, we want to stop building. (or go on, if -K is given) syntax.c, syntax.h: Use ints where they belong, and enum syntaxcode's where they belong, and fix warnings thereby. syntax.h: Fix crash caused by an edge condition in the syntax-cache macros. text.h: Spacing fixes. xmotif.h: New file, to get around shadowing warnings. EmacsManager.c, event-Xt.c, glyphs-x.c, gui-x.c, input-method-motif.c, xmmanagerp.h, xmprimitivep.h: Include xmotif.h. alloc.c: Conditionalize in_malloc on ERROR_CHECK_MALLOC. config.h.in, file-coding.h, fileio.c, getloadavg.c, select-x.c, signal.c, sysdep.c, sysfile.h, systime.h, text.c, unicode.c: Eliminate HAVE_WIN32_CODING_SYSTEMS, use WIN32_ANY instead. Replace defined (WIN32_NATIVE) || defined (CYGWIN) with WIN32_ANY. lisp.h: More futile attempts to walk and chew gum at the same time when dealing with subr's that don't return.
author ben
date Thu, 20 Feb 2003 08:16:21 +0000
parents 32bc2bab419c
children 314c4e18dda0
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
1036
b33a835c21cc [xemacs-hg @ 2002-10-08 03:11:48 by stephent]
stephent
parents: 845
diff changeset
35 such as OpenBSD and OSF/Tru64 the default is 2MB which is too low. On
b33a835c21cc [xemacs-hg @ 2002-10-08 03:11:48 by stephent]
stephent
parents: 845
diff changeset
36 MacOS/X (Darwin), it's 512kB. See '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
1045
ae9378e1cde3 [xemacs-hg @ 2002-10-10 14:47:21 by stephent]
stephent
parents: 1036
diff changeset
47 makeinfo (GNU texinfo-3.11). GNU Texinfo 4.2 is recommended; it is
ae9378e1cde3 [xemacs-hg @ 2002-10-10 14:47:21 by stephent]
stephent
parents: 1036
diff changeset
48 necessary for building packages, and we may move to it for the core.
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
49
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
50 ADD-ON LIBRARIES
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
51 ================
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
52
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
53 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
54 XEmacs, but are not yet available on your system. On some systems,
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
55 Motif and CDE are optional additions. On Solaris, the SUNWaudmo
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
56 package enables native sound support. There are also a number of free
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
57 software packages that XEmacs can use. If these are not yet available
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
58 on your system, obtain, build and install those external packages
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
59 before building XEmacs. The packages XEmacs can use are:
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
60
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
61 Xaw3d, XPM, JPEG, compface, PNG, zlib, GNU DBM, Berkeley DB, socks,
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
62 term, NAS, Canna, Kinput2, SJ3, Wnn.
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
63
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
64 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
65 ftp://ftp.xemacs.org/pub/xemacs/aux
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
66
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
67 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
68 have built, try to build those packages so that the generated
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
69 libraries are statically linked.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
70
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
71 Use the --site-includes and --site-libraries options when building
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
72 XEmacs to allow configure to find the external software packages.
201
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
73 If you link with dynamic (``.so'') external package libraries, which
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
74 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
75 to the --site-runtime-libraries option. For your convenience these can
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
76 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
77 these variables as needed assuming your libraries are organised as a
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
78 typical /usr tree.
398
74fd4e045ea6 Import from CVS: tag r21-2-29
cvs
parents: 392
diff changeset
79
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
80 PACKAGE SYSTEM
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
81 ==============
424
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
82
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
83 The file README.packages contain information vital to have a fully
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
84 working XEmacs. This information was not included in this file only
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
85 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
86 README.packages now!
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
87
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
88 CONFIGURATION OPTIONS
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
89 =====================
269
b2472a1930f2 Import from CVS: tag r20-5b33
cvs
parents: 255
diff changeset
90
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
91 In the top level directory of the XEmacs distribution, run the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
92 program `configure' as follows:
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
93
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
94 ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ...
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
95
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
96 Almost always, you should let `configure' (actually the shell script
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
97 `config.guess') guess your host type, by omitting the
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
98 CONFIGURATION-NAME argument. If you like to experiment, specify a
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
99 configuration name in the form MACHINE-VENDOR-OPSYS, for example:
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
100
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
101 sparc-sun-solaris2.6
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
102
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
103 See config.guess and configure.in for valid values for MACHINE,
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
104 VENDOR, and OPSYS. Also check `./etc/MACHINES' for advice on building
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
105 on particular machines.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
106
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
107 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
108 option, `configure' will try to autodetect whether your system has X,
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
109 and arrange to use it if present.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
110
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
111 The `--x-includes=DIR' and `--x-libraries=DIR' options tell the build
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
112 process where the compiler should look for the include files and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
113 object libraries used with the X Window System. Normally, `configure'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
114 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
115 Window System files installed in unusual places.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
116
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
117 The `--site-includes=DIR' and `--site-libraries=DIR' options allow you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
118 to specify additional places the compiler should look for include
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
119 files and object libraries. You may specify multiple DIR's by
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
120 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
121 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
122 include and library directories defined using these options.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
123
201
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
124 The `--site-runtime-libraries=DIR' option specifies directories to
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
125 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
126 link with dynamic libraries that are installed in non-standard
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
127 directories, or if you expect some of the libraries used to build
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
128 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
129 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
130 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
131 the directories containing shared libraries at run time, including
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
132 system directories.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
133
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
134 Rationale: Some people think that directories in --site-libraries
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
135 should be automatically used to update --site-runtime-libraries.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
136 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
137 build binaries for your company using static libs in
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
138 /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
139 the executable you've built. Since there are only static libs there,
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
140 the system runtime loader will look in this dir, and ignore it,
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
141 causing only a .01 second delay in starting XEmacs. You leave the
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
142 company for a job at a small Silicon Valley startup. Time passes.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
143 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
144 named `toy', and gets the sysadmin to rename the machine `godzilla'.
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
145 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
146 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
147 automounter will hang trying to access /net/toy. XEmacs suddenly
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
148 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
149 everyone at your old company curses your name, thinking that you've
eb5470882647 Import from CVS: tag r20-3b27
cvs
parents: 185
diff changeset
150 put a time bomb into XEmacs. And they're right!
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
151
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
152 The `--with-gcc' option specifies that the build process should
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
153 compile XEmacs using GCC. The `--compiler' option allows you to
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
154 specify some other compiler to be used to compile XEmacs. If neither
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
155 option is specified, the environment variable CC is used instead.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
156 Otherwise the compiler will then default to 'cc'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
157
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
158 The `--cflags' option specifies the CFLAGS the build process should
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
159 use when compiling XEmacs. Otherwise the value of the environment
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
160 variable CFLAGS is consulted. If that is also undefined, CFLAGS
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
161 defaults to "-g -O" for gcc and "-g" for all other compilers.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
162
594
fd49b88b9f06 [xemacs-hg @ 2001-05-31 12:47:21 by ben]
ben
parents: 442
diff changeset
163 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
164 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
165 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
166 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
167 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
168
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
169 The `--dynamic' option specifies that configure should try to link
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
170 emacs dynamically rather than statically.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
171
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
172 You can build XEmacs for several different machine types from a single
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
173 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
174 supports the `VPATH' variable, such as GNU `make'. Create separate
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
175 build directories for the different configuration types, and in each
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
176 one, run the XEmacs `configure' script. `configure' looks for the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
177 Emacs source code in the directory that `configure' is in.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
178
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
179 The `--prefix=PREFIXDIR' option specifies where the installation process
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
180 should put XEmacs and its data files. This defaults to `/usr/local'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
181 - XEmacs (and the other utilities users run) go in PREFIXDIR/bin
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
182 (unless the `--exec-prefix' option says otherwise).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
183 - The architecture-independent files go in PREFIXDIR/lib/xemacs-VERSION
276
6330739388db Import from CVS: tag r21-0b36
cvs
parents: 274
diff changeset
184 (where VERSION is the version number of XEmacs, like `21.0').
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
185 - The architecture-dependent files go in
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
186 PREFIXDIR/lib/xemacs-VERSION/CONFIGURATION-NAME
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
187 (where CONFIGURATION-NAME is the host type, like mips-dec-ultrix4.2),
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
188 unless the `--exec-prefix' option says otherwise.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
189
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
190 The `--exec-prefix=EXECDIR' option allows you to specify a separate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
191 portion of the directory tree for installing architecture-specific
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
192 files, like executables and utility programs. If specified,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
193 - XEmacs (and the other utilities users run) go in EXECDIR/bin, and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
194 - The architecture-dependent files go in
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
195 EXECDIR/lib/xemacs-VERSION/CONFIGURATION-NAME.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
196 EXECDIR/bin should be a directory that is normally in users' PATHs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
197
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
198 If you specify --prefix (or any of the other installation directory
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
199 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
200 be able to find its various associated file. However, XEmacs has
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
201 quite elaborate logic to find out the locations of these directories
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
202 dynamically. Sometimes, it is desirable *not* to compile these
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
203 directories into the executable so you can move the XEmacs
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
204 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
205 for instance. Therefore, you can specify --without-prefix on the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
206 configure command line to prevent the installation prefix to become
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
207 part of the generated executable; everything else will continue to
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
208 work as usual.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
209
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
210 The `--with-menubars=TYPE' option allows you to specify which X
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
211 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
212 `lucid', `motif' and `no'. The default is `lucid' which is a
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
213 Motif-lookalike menubar. We highly recommend its usage over the real
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
214 Motif menubar. (In fact, the Motif menubar is currently broken.) If
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
215 `no' is specified then support for menubars will not be compiled in.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
216
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
217 The `--with-scrollbars=TYPE' option allows you to specify which X
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
218 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
219 `lucid', `motif', `athena', `athena3d', and `no'. The default is
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
220 `lucid' which is a Motif-lookalike scrollbar. If `no' is specified
104
cf808b4c4290 Import from CVS: tag r20-1b4
cvs
parents: 70
diff changeset
221 then support for scrollbars will not be compiled in.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
222
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
223 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
224 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
225 `athena3d', `motif, and `no. The `lucid' option is accepted and will
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
226 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
227 found the default is `motif'. Otherwise, the default is `athena'. If
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
228 `no' is specified then support for dialog boxes will not be compiled
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
229 in.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
230
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
231 The `--with-toolbars' option allows you to enable or disable toolbar
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
232 support. The default is `yes' as long as support for a windowing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
233 system is included.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
234
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
235 The `--with-xpm' option specifies that XEmacs should support X11
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
236 Pixmaps. `configure' will attempt to detect if you have the Xpm
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
237 libraries and define `--with-xpm' for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
238
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
239 The `--with-xface' option specifies that XEmacs should support
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
240 X-Faces. `configure' will attempt to detect if you have the compface
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
241 library and define `--with-xface' for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
242
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
243 The `--with-database' option specifies that XEmacs should be built
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
244 with additional database support. The valid options are `no' or a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
245 comma-separated list of one or more of `dbm', `gnudbm' or `berkdb'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
246 `configure' will attempt to detect the necessary libraries and header
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
247 files and define `--with-database' for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
248
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
249 The `--with-socks' option specifies that XEmacs should be built with
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
250 SOCKS support. This requires the libsocks library.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
251
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
252 The `--with-tooltalk' option specifies that XEmacs should be built
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
253 with ToolTalk support for interconnecting with other applications.
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
254 ToolTalk is not yet supported on all architectures. If you use this
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
255 option, you should have the tooltalk package (see etc/PACKAGES)
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
256 installed prior to building XEmacs.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
257
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
258 The `--with-sparcworks' option specifies that XEmacs should be built
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
259 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
260 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
261 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
262 etc/PACKAGES) installed prior to building XEmacs.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
263
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
264 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
265 drop support. `configure' will attempt to detect this option and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
266 define `--with-cde' for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
267
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
268 The `--with-offix' option allows you to enable or disable OffiX drag
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
269 and drop support. This requires no external library support, so if
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
270 X11 support is available, then this option defaults to `yes'. OffiX
274
ca9a9ec9c1c1 Import from CVS: tag r21-0b35
cvs
parents: 272
diff changeset
271 support can be explicitly disabled via the `--with-offix=no' option.
2
ac2d302a0011 Import from CVS: tag r19-15b2
cvs
parents: 0
diff changeset
272
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
273 The `--external-widget' option specifies that XEmacs should be built
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
274 with support for being used as a widget by other X11 applications.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
275 This functionality should be considered beta.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
276
272
c5d627a313b1 Import from CVS: tag r21-0b34
cvs
parents: 269
diff changeset
277 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
278 the Xmu library.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
279
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
280 The `--with-sound=TYPE' option specifies that XEmacs should be built
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
281 with sound support. Native (`--with-sound=native') sound support is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
282 currently available only on Sun SparcStations, SGI's, HP9000s, and
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
283 systems (such as Linux) with soundcard.h. Network Audio Support (NAS)
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
284 (`--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
285 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
286 need to provide the paths to the nas include and library directories
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
287 to configure. If `--with-sound' is not specified, `configure' will
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
288 attempt to determine if your configuration supports native sound and
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
289 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
290 standard location you can specify it with the `--native-sound-lib=LIB'
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
291 flag. For Linux, `/dev/audio' is required for SunAudio files and
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
292 `/dev/dsp' is required for raw data and WAVE format files.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
293
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
294 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
295 of the relocating allocator. Turning on --rel-alloc will allow XEmacs
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
296 to return unused memory to the operating system, thereby reducing its
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
297 memory footprint. However, it may make XEmacs runs more slowly,
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
298 especially if your system's `mmap' implementation is missing or
151
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
299 inefficient. Generally, it's best to go with the default
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
300 configuration for your system. You can tweak this based on how you
59463afc5666 Import from CVS: tag r20-3b2
cvs
parents: 149
diff changeset
301 use XEmacs, and the memory and cpu resources available on your system.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
302
426
43177a4f3daf Import from CVS: tag r21-2-21
cvs
parents: 424
diff changeset
303 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
304 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
305 default configuration for your system. Note that on many systems
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
306 using the system malloc disables the use of the relocating allocator.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
307
426
43177a4f3daf Import from CVS: tag r21-2-21
cvs
parents: 424
diff changeset
308 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
309 version of malloc. Debug Malloc is not included with XEmacs, is
6075d714658b Import from CVS: tag r20-3b15
cvs
parents: 153
diff changeset
310 intended for use only by the developers and may be obtained from
6075d714658b Import from CVS: tag r20-3b15
cvs
parents: 153
diff changeset
311 <URL:http://www.letters.com/dmalloc/>.
6075d714658b Import from CVS: tag r20-3b15
cvs
parents: 153
diff changeset
312
1283
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
313 The `--debug' and `--error-checking' options are primarily useful to the
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
314 developers. `--debug' incorporates code for performing various tests,
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
315 but does not impose a speed penalty. `--error-checking' adds additional
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
316 tests to many of the commonly used macros, and imposes a speed penalty.
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
317 Neither is especially useful in most common debugging situations.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
318
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
319 The `--verbose' and `--extra-verbose' options are intended for use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
320 only by the developers. `--verbose' causes the results of all
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
321 configure tests to be displayed. `--extra-verbose' displays
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
322 additional information, useful for debugging. Another help for
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
323 determining configure failures is the file `config.log', which
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
324 contains the results of the compile and link tests used by configure.
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
325
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
326 The `--with-mule' option enables (MUlti-Lingual Emacs) support, needed
1283
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
327 to support non-Latin-1 (including Asian) languages. Mule support is
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
328 required for Asian language and Unicode (multibyte and wide character)
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
329 support. With the advent of the Euro and European Community
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
330 expansion, Mule support is also recommended for Western Europeans.
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
331 Enabling Mule support requires the mule-base package installed prior
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
332 to 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
845
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
382 For most platforms, configure or the src/s file have the preferred
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
383 method for locking mail spool files preconfigured. Otherwise you must
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
384 find out for youself. Do not choose a locking protocol "on the
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
385 objective merits." XEmacs must use the same method as other mail
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
386 utilities on your system, or you will lose mail.
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
387
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
388 Presently, XEmacs supports lockf, flock, and dot locking. Specify the
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
389 locking method via the --mail-locking=METHOD option to configure.
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
390 Valid values for METHOD are --mail-locking are `lockf', `flock', and
77624ff6e2da [xemacs-hg @ 2002-05-16 15:11:22 by stephent]
stephent
parents: 594
diff changeset
391 `dot'.
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
392
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
393 RUNNING CONFIGURE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
394 =================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
395
149
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
396 `configure' doesn't do any compilation or installation itself. It
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
397 just creates the files that influence those things: `./src/config.h',
538048ae2ab8 Import from CVS: tag r20-3b1
cvs
parents: 126
diff changeset
398 and all the Makefile's in the build tree.
104
cf808b4c4290 Import from CVS: tag r20-1b4
cvs
parents: 70
diff changeset
399
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
400 When it is done, `configure' prints a description of what it did and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
401 creates a shell script `config.status' which, when run, recreates the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
402 same configuration. If `configure' exits with an error after
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
403 disturbing the status quo, it removes `config.status'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
404
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
405 AUXILIARY PATHS
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
406 ===============
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
407
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
408 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
409 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
410 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
411 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
412 `defvar', as used by `./lisp/paths.el'. For example,
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
413
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
414 (setq news-inews-program "/usr/bin/inews")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
415
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
416 is how you would override the default value of the variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
417 news-inews-program (which is "/usr/local/inews").
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
418
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
419 Before you override a variable this way, *look at the value* that the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
420 variable gets by default! Make sure you know what kind of value the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
421 variable should have. If you don't pay attention to what you are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
422 doing, you'll make a mistake.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
423
392
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
424 Things may malfunction if the variable `directory-abbrev-alist' is not
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
425 set up to translate "temporary" automounter mount points into the
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
426 canonical form. XEmacs tries to detect how your automounter is
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
427 configured. If you have an unusual automounter configuration that
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
428 XEmacs cannot detect, you may need to change the value of
1f50e6fe4f3f Import from CVS: tag r21-2-11
cvs
parents: 388
diff changeset
429 `directory-abbrev-alist'.
371
cc15677e0335 Import from CVS: tag r21-2b1
cvs
parents: 367
diff changeset
430
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
431 SITE-SPECIFIC STARTUP CODE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
432 ==========================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
433
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
434 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
435 code you want XEmacs to load before it is dumped out. Use
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
436 site-load.el for additional libraries if you arrange for their
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
437 documentation strings to be in the lib-src/DOC file (see
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
438 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
439 else, use site-init.el.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
440
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
441 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
442 not use expand-file-name or any other function which may look
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
443 something up in the system's password and user information database.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
444 See `./PROBLEMS' for more details on which systems this affects.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
445
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
446 The `site-*.el' files are nonexistent in the distribution. You do not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
447 need to create them if you have nothing to put in them.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
448
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
449 TERMCAP CONFIGURATION
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
450 =====================
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
451
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
452 Refer to the file `./etc/TERMS' for information on fields you may
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
453 wish to add to various termcap entries. The files `./etc/termcap.ucb'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
454 and `./etc/termcap.dat' may already contain appropriately-modified
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
455 entries.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
456
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
457 RUNNING MAKE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
458 ============
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
459
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
460 Run `make' in the top directory of the XEmacs distribution to finish
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
461 building XEmacs in the standard way. The final executable file is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
462 named `src/emacs'. You can execute this file "in place" without
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
463 copying it, if you wish; then it automatically uses the sibling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
464 directories ../lisp, ../lib-src, ../info.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
465
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
466 Or you can "install" the executable and the other XEmacs into their
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
467 installed locations, with `make install'. By default, XEmacs's files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
468 are installed in the following directories:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
469
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
470 By default, XEmacs installs its files in the following directories:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
471
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
472 `/usr/local/bin' holds the executable programs users normally run -
388
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
473 `xemacs', `etags', `ctags', `b2m', `emacsclient', `ellcc',
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
474 `gnuclient', `gnudoit', `gnuattach', and `rcs-checkin'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
475
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
476 `/usr/local/lib/xemacs-VERSION/lisp' holds the Emacs Lisp libraries;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
477 `VERSION' stands for the number of the XEmacs version
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
478 you are installing, like `18.59' or `19.14'. Since
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
479 the lisp libraries change from one version of XEmacs to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
480 another, including the version number in the path
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
481 allows you to have several versions of XEmacs installed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
482 at the same time; this means that you don't have to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
483 make XEmacs unavailable while installing a new version.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
484
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
485 XEmacs searches for its lisp files in these
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
486 directories, and then in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
487 `/usr/local/lib/xemacs/site-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-VERSION/etc' holds the XEmacs tutorial, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
490 `yow' database, and other architecture-independent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
491 files XEmacs might need while running. VERSION is as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
492 specified for `.../lisp'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
493
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
494 `/usr/local/lib/xemacs/lock' contains files indicating who is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
495 editing what, so XEmacs can detect editing clashes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
496 between users.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
497
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
498 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME' contains executable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
499 programs used by XEmacs that users are not expected to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
500 run themselves, and the DOC file. `VERSION' is the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
501 number of the XEmacs version you are installing, and
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
502 `CONFIGURATION-NAME' is the host type of your system.
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
503 Since these files are specific to the version of
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
504 XEmacs, operating system, and architecture in use,
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
505 including the configuration name in the path allows
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
506 you to have several versions of XEmacs for any mix of
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
507 machines and operating systems installed at the same
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
508 time; this is useful for sites at which different
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
509 kinds of machines share the file system XEmacs is
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
510 installed on.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
511
388
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
512 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME/modules' holds the Emacs
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
513 dynamically loadable modules. These are special programs
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
514 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
515 way that Lisp packages are. Not all systems support
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
516 dynamic modules, so do not be alarmed if this directory
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
517 does not exist or is empty.
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
518
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
519 XEmacs searches for modules in this directory, or any
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
520 sub-directory of it, and then in
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
521 `/usr/local/lib/xemacs/site-modules/*'.
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
522
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
523 `/usr/local/lib/xemacs-VERSION/info' holds the on-line documentation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
524 for XEmacs, known as "info files".
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
525
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
526 `/usr/local/man/man1' holds the man pages for the programs installed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
527 in `/usr/local/bin'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
528
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
529 If these directories are not what you want, you can specify where to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
530 install XEmacs's libraries and data files or where XEmacs should search
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
531 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
532 the command.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
533
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
534 You can change where the build process installs XEmacs and its data
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
535 files by specifying values for `make' variables as part of the `make'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
536 command line. For example, if you type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
537
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
538 make install bindir=/usr/local/gnubin
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
539
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
540 the `bindir=/usr/local/gnubin' argument indicates that the XEmacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
541 executable files should go in `/usr/local/gnubin', not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
542 `/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 Here is a complete list of the variables you may want to set.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
545
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
546 `bindir' indicates where to put executable programs that users can
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
547 run. This defaults to /usr/local/bin.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
548
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
549 `datadir' indicates where to put the architecture-independent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
550 read-only data files that XEmacs refers to while it runs; it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
551 defaults to /usr/local/lib. We create the following
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
552 subdirectories under `datadir':
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
553 - `xemacs-VERSION/lisp', containing the XEmacs lisp libraries, and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
554
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
555 - `xemacs-VERSION/etc', containing the XEmacs tutorial and the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
556 `yow' database.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
557 `VERSION' is the number of the XEmacs version you are installing,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
558 like `18.59' or `19.14'. Since these files vary from one version
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
559 of XEmacs to another, including the version number in the path
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
560 allows you to have several versions of XEmacs installed at the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
561 same time; this means that you don't have to make XEmacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
562 unavailable while installing a new version.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
563
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
564 `statedir' indicates where to put architecture-independent data files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
565 that XEmacs modifies while it runs; it defaults to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
566 /usr/local/lib as well. We create the following
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
567 subdirectories under `statedir':
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
568 - `xemacs/lock', containing files indicating who is editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
569 what, so XEmacs can detect editing clashes between
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
570 users.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
571
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
572 `libdir' indicates where to put architecture-specific data files that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
573 XEmacs refers to as it runs; it too defaults to `/usr/local/lib'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
574 We create the following subdirectories under `libdir':
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
575 - `xemacs-VERSION/CONFIGURATION-NAME', containing executable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
576 programs used by XEmacs that users are not expected to run
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
577 themselves and the DOC file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
578 `VERSION' is the number of the XEmacs version you are installing,
243
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
579 and `CONFIGURATION-NAME' is the host type of your system.
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
580 Since these files are specific to the version of XEmacs,
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
581 operating system, and architecture in use, including the
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
582 configuration name in the path allows you to have several
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
583 versions of XEmacs for any mix of machines and operating
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
584 systems installed at the same time; this is useful for sites
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
585 at which different kinds of machines share the file system
f220cc83d72e Import from CVS: tag r20-5b20
cvs
parents: 227
diff changeset
586 XEmacs is installed on.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
587
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
588 `infodir' indicates where to put the info files distributed with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
589 XEmacs; it defaults to `/usr/local/lib/xemacs-VERSION/info'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
590
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
591 `mandir' indicates where to put the man pages for XEmacs and its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
592 utilities (like `etags'); it defaults to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
593 `/usr/local/man/man1'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
594
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
595 `prefix' doesn't give a path for any specific part of XEmacs; instead,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
596 its value is used to determine the defaults for all the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
597 architecture-independent path variables - `datadir',
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
598 `statedir', `infodir', and `mandir'. Its default value is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
599 `/usr/local'; the other variables add on `lib' or `man' to it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
600 by default.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
601
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
602 For example, suppose your site generally places GNU software
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
603 under `/usr/users/software/gnusoft' instead of `/usr/local'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
604 By including
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
605 `prefix=/usr/users/software/gnusoft'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
606 in the arguments to `make', you can instruct the build process
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
607 to place all of the XEmacs data files in the appropriate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
608 directories under that path.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
609
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
610 `exec_prefix' serves the same purpose as `prefix', but instead
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
611 determines the default values for the architecture-dependent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
612 path variables - `bindir' and `libdir'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
613
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
614 The above variables serve analogous purposes in the makefiles for all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
615 GNU software; here are some variables specific to XEmacs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
616
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
617 `lispdir' indicates where XEmacs installs and expects its lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
618 libraries. Its default value, based on `datadir' (see above),
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
619 is `/usr/local/lib/xemacs-VERSION/lisp' (where `VERSION' is as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
620 described above).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
621
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
622 `sitelispdir' indicates where XEmacs should search for lisp libraries
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
623 specific to your site. XEmacs checks them in order before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
624 checking `lispdir'. 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/site-lisp'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
626
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
627 `etcdir' indicates where XEmacs should install and expect the rest of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
628 its architecture-independent data, like the tutorial and yow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
629 database. Its default value, based on `datadir'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
630 (see above), is `/usr/local/lib/xemacs-VERSION/etc' (where
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
631 `VERSION' is as described above).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
632
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
633 `lockdir' indicates the directory where XEmacs keeps track of its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
634 locking information. Its default value, based on `statedir'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
635 (see above), is `/usr/local/lib/xemacs/lock'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
636
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
637 `archlibdir' indicates where XEmacs installs and expects the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
638 executable files and other architecture-dependent data it uses
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
639 while running. Its default value, based on `libdir' (see
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
640 above), is `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
641 (where VERSION and CONFIGURATION-NAME are as described above).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
642
420
41dbb7a9d5f2 Import from CVS: tag r21-2-18
cvs
parents: 412
diff changeset
643 `docdir' indicates where to put Lisp documentation strings that XEmacs
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
644 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
645 (see above).
41dbb7a9d5f2 Import from CVS: tag r21-2-18
cvs
parents: 412
diff changeset
646
388
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
647 `moduledir' indicates where XEmacs installs and expects to find
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
648 any dynamic modules. Its default value, based on
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
649 `archlibdir' (see above) is
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
650 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME/modules'
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
651 (where VERSION and CONFIGURATION-NAME are as described above).
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
652 By their very nature, dynamic loadable modules are architecture-
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
653 dependent, and care should be taken not to set this directory
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
654 to a system- or architecture-independent directory.
388
aabb7f5b1c81 Import from CVS: tag r21-2-9
cvs
parents: 380
diff changeset
655
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
656 Remember that you must specify any variable values you need each time
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
657 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
658 xemacs, test it, and then run `make' again to install the files, you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
659 must provide the same variable settings each time. To make the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
660 settings persist, you can edit them into the `Makefile' in the top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
661 directory, but be aware that running the `configure' program erases
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
662 `Makefile' and rebuilds it from `Makefile.in'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
663
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
664 The top-level Makefile stores the variable settings it used in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
665 Makefiles for the subdirectories, so you don't have to specify them
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
666 when running make in the subdirectories.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
667
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
668 Using GNU Make allows for simultaneous builds with and without the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
669 --srcdir option.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
670
1283
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
671 STRIPPING BINARIES
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
672 ==================
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
673
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
674 This saves nothing but a small (by modern standards) amount of disk
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
675 space; the symbol table is not loaded into memory at execution time.
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
676 If you do encounter a crash or other serious bug, the first thing the
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
677 developers will do is ask you to build an XEmacs with a full symbol
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
678 table, anyway. Don't strip the XEmacs binary.
32bc2bab419c [xemacs-hg @ 2003-02-10 14:28:09 by stephent]
stephent
parents: 1202
diff changeset
679
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
680 MAIL-LOCKING POST-INSTALLATION
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
681 ==============================
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 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
684 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
685 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
686 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
687 executables.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
688
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
689 CLEANING UP
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
690 ==========
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
691
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
692 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
693 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
694 remove the files that `configure' created (so you can compile XEmacs
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
695 for a different configuration), type `make distclean'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
696
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
697 READ README.packages
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
698 ====================
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
699
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
700 Do it!
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
701
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
702 PROBLEMS
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 426
diff changeset
703 ========
398
74fd4e045ea6 Import from CVS: tag r21-2-29
cvs
parents: 392
diff changeset
704
424
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
705 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
706 directions in README.packages. You can not have a working XEmacs
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
707 without downloading some additional packages.
11054d720c21 Import from CVS: tag r21-2-20
cvs
parents: 420
diff changeset
708
1036
b33a835c21cc [xemacs-hg @ 2002-10-08 03:11:48 by stephent]
stephent
parents: 845
diff changeset
709 See the file PROBLEMS in this directory for a list of various problems
b33a835c21cc [xemacs-hg @ 2002-10-08 03:11:48 by stephent]
stephent
parents: 845
diff changeset
710 sometimes encountered, and what to do about them. PROBLEMS is also
b33a835c21cc [xemacs-hg @ 2002-10-08 03:11:48 by stephent]
stephent
parents: 845
diff changeset
711 the place where platform-specific build notes can be found.