Mercurial > hg > xemacs-beta
annotate INSTALL @ 4690:257b468bf2ca
Move the #'query-coding-region implementation to C.
This is necessary because there is no reasonable way to access the
corresponding mswindows-multibyte functionality from Lisp, and we need such
functionality if we're going to have a reliable and portable
#'query-coding-region implementation. However, this change doesn't yet
provide #'query-coding-region for the mswindow-multibyte coding systems,
there should be no functional differences between an XEmacs with this change
and one without it.
src/ChangeLog addition:
2009-09-19 Aidan Kehoe <kehoea@parhasard.net>
Move the #'query-coding-region implementation to C.
This is necessary because there is no reasonable way to access the
corresponding mswindows-multibyte functionality from Lisp, and we
need such functionality if we're going to have a reliable and
portable #'query-coding-region implementation. However, this
change doesn't yet provide #'query-coding-region for the
mswindow-multibyte coding systems, there should be no functional
differences between an XEmacs with this change and one without it.
* mule-coding.c (struct fixed_width_coding_system):
Add a new coding system type, fixed_width, and implement it. It
uses the CCL infrastructure but has a much simpler creation API,
and its own query_method, formerly in lisp/mule/mule-coding.el.
* unicode.c:
Move the Unicode query method implementation here from
unicode.el.
* lisp.h: Declare Fmake_coding_system_internal, Fcopy_range_table
here.
* intl-win32.c (complex_vars_of_intl_win32):
Use Fmake_coding_system_internal, not Fmake_coding_system.
* general-slots.h: Add Qsucceeded, Qunencodable, Qinvalid_sequence
here.
* file-coding.h (enum coding_system_variant):
Add fixed_width_coding_system here.
(struct coding_system_methods):
Add query_method and query_lstream_method to the coding system
methods.
Provide flags for the query methods.
Declare the default query method; initialise it correctly in
INITIALIZE_CODING_SYSTEM_TYPE.
* file-coding.c (default_query_method):
New function, the default query method for coding systems that do
not set it. Moved from coding.el.
(make_coding_system_1):
Accept new elements in PROPS in #'make-coding-system; aliases, a
list of aliases; safe-chars and safe-charsets (these were
previously accepted but not saved); and category.
(Fmake_coding_system_internal):
New function, what used to be #'make-coding-system--on Mule
builds, we've now moved some of the functionality of this to
Lisp.
(Fcoding_system_canonical_name_p):
Move this earlier in the file, since it's now called from within
make_coding_system_1.
(Fquery_coding_region):
Move the implementation of this here, from coding.el.
(complex_vars_of_file_coding):
Call Fmake_coding_system_internal, not Fmake_coding_system;
specify safe-charsets properties when we're a mule build.
* extents.h (mouse_highlight_priority, Fset_extent_priority,
Fset_extent_face, Fmap_extents):
Make these available to other C files.
lisp/ChangeLog addition:
2009-09-19 Aidan Kehoe <kehoea@parhasard.net>
Move the #'query-coding-region implementation to C.
* coding.el:
Consolidate code that depends on the presence or absence of Mule
at the end of this file.
(default-query-coding-region, query-coding-region):
Move these functions to C.
(default-query-coding-region-safe-charset-skip-chars-map):
Remove this variable, the corresponding C variable is
Vdefault_query_coding_region_chartab_cache in file-coding.c.
(query-coding-string): Update docstring to reflect actual multiple
values, be more careful about not modifying a range table that
we're currently mapping over.
(encode-coding-char): Make the implementation of this simpler.
(featurep 'mule): Autoload #'make-coding-system from
mule/make-coding-system.el if we're a mule build; provide an
appropriate compiler macro.
Do various non-mule compatibility things if we're not a mule
build.
* update-elc.el (additional-dump-dependencies):
Add mule/make-coding-system as a dump time dependency if we're a
mule build.
* unicode.el (ccl-encode-to-ucs-2):
(decode-char):
(encode-char):
Move these earlier in the file, for the sake of some byte compile
warnings.
(unicode-query-coding-region):
Move this to unicode.c
* mule/make-coding-system.el:
New file, not dumped. Contains the functionality to rework the
arguments necessary for fixed-width coding systems, and contains
the implementation of #'make-coding-system, which now calls
#'make-coding-system-internal.
* mule/vietnamese.el (viscii):
* mule/latin.el (iso-8859-2):
(windows-1250):
(iso-8859-3):
(iso-8859-4):
(iso-8859-14):
(iso-8859-15):
(iso-8859-16):
(iso-8859-9):
(macintosh):
(windows-1252):
* mule/hebrew.el (iso-8859-8):
* mule/greek.el (iso-8859-7):
(windows-1253):
* mule/cyrillic.el (iso-8859-5):
(koi8-r):
(koi8-u):
(windows-1251):
(alternativnyj):
(koi8-ru):
(koi8-t):
(koi8-c):
(koi8-o):
* mule/arabic.el (iso-8859-6):
(windows-1256):
Move all these coding systems to being of type fixed-width, not of
type CCL. This allows the distinct query-coding-region for them to
be in C, something which will eventually allow us to implement
query-coding-region for the mswindows-multibyte coding systems.
* mule/general-late.el (posix-charset-to-coding-system-hash):
Document why we're pre-emptively persuading the byte compiler that
the ELC for this file needs to be written using escape-quoted.
Call #'set-unicode-query-skip-chars-args, now the Unicode
query-coding-region implementation is in C.
* mule/thai-xtis.el (tis-620):
Don't bother checking whether we're XEmacs or not here.
* mule/mule-coding.el:
Move the eight bit fixed-width functionality from this file to
make-coding-system.el.
tests/ChangeLog addition:
2009-09-19 Aidan Kehoe <kehoea@parhasard.net>
* automated/mule-tests.el:
Check a coding system's type, not an 8-bit-fixed property, for
whether that coding system should be treated as a fixed-width
coding system.
* automated/query-coding-tests.el:
Don't test the query coding functionality for mswindows-multibyte
coding systems, it's not yet implemented.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sat, 19 Sep 2009 22:53:13 +0100 |
parents | 742a23369b74 |
children | 5460287a3327 |
rev | line source |
---|---|
0 | 1 XEmacs Installation Guide |
1338 | 2 |
0 | 3 Copyright (c) 1994, 1995, 1996 Board of Trustees, University of Illinois |
4508
742a23369b74
Improve package documentation.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3179
diff
changeset
|
4 Copyright (c) 1994-1999, 2003, 2008 Free Software Foundation, Inc. |
412 | 5 |
0 | 6 Permission is granted to anyone to make or distribute verbatim copies |
7 of this document as received, in any medium, provided that the | |
8 copyright notice and permission notice are preserved, | |
9 and that the distributor grants the recipient permission | |
10 for further redistribution as permitted by this notice. | |
11 | |
12 Permission is granted to distribute modified versions | |
13 of this document, or of portions of it, | |
14 under the above conditions, provided also that they | |
15 carry prominent notices stating who last changed them, | |
16 and that any new or changed statements about the activities | |
17 of the Free Software Foundation are approved by the Foundation. | |
18 | |
442 | 19 BUILDING AND INSTALLATION FOR UNIX AND CYGWIN |
20 | |
21 (for Microsoft Windows, see nt/README also.) | |
22 | |
23 PREREQUISITES | |
24 ============= | |
404 | 25 |
442 | 26 Make sure your system has enough swapping space allocated to handle a |
27 program whose pure code is 900k bytes and whose data area is at least | |
1338 | 28 400k and can reach 8Mb or more. Note that a typical XEmacs process |
29 can get much bigger: the instance this sentence was written with is | |
30 over 100MB! If the swapping space is insufficient, you will get an | |
442 | 31 error in the command `temacs -batch -l loadup dump', found in |
32 `./src/Makefile.in.in', or possibly when running the final dumped | |
33 XEmacs. | |
0 | 34 |
442 | 35 Verify that your users have a high enough stack limit. On some systems |
1036 | 36 such as OpenBSD and OSF/Tru64 the default is 2MB which is too low. On |
2648 | 37 MacOS/X (Darwin) before 10.3, it's 512kB. See 'PROBLEMS' for details. |
424 | 38 |
39 Building XEmacs requires about 100 Mb of disk space (including the | |
1338 | 40 XEmacs sources). Once installed, XEmacs occupies between 20 and 100 |
41 MB in the file system where it is installed; this includes the | |
42 executable files, Lisp libraries, miscellaneous data files, and | |
43 on-line documentation. The exact amount depends greatly on the number | |
44 of extra Lisp packages that are installed. | |
149 | 45 |
2427 | 46 XEmacs requires an ANSI C compiler, such as GCC. If you wish to build the |
47 documentation yourself, you will need at least version 1.68 of makeinfo (GNU | |
48 texinfo-3.11). GNU Texinfo 4.2 is recommended; it is necessary for building | |
49 Lisp packages, and we may move to it for the core. | |
149 | 50 |
1338 | 51 A note on terminology: unfortunately the terms "library" and "package" |
52 are heavily overloaded. In the following, "library" refers to an | |
53 external body of executable code which may be linked with XEmacs at | |
54 build time to provide support for system features, such as images, | |
55 audio, stream compression, databases, and input methods. A "Lisp | |
56 library" is a file of Lisp code which may be loaded into XEmacs at | |
57 run-time to provide editor features. A "package" is a specially | |
58 prepared Lisp library or set of Lisp libraries, providing for easy | |
59 installation, upgrade, and removal of applications written in Lisp. | |
398 | 60 |
442 | 61 PACKAGE SYSTEM |
62 ============== | |
424 | 63 |
4508
742a23369b74
Improve package documentation.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3179
diff
changeset
|
64 The FAQ sections 1.7 and 2.1 contain information vital to have a fully |
1338 | 65 working XEmacs. It includes a description of available packages, and |
66 how to bootstrap XEmacs from a minimal or a complete set of packages. | |
67 This information was not included in this file only because it is too | |
4508
742a23369b74
Improve package documentation.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3179
diff
changeset
|
68 large for this terse INSTALL. The FAQ is available in Texinfo format |
742a23369b74
Improve package documentation.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3179
diff
changeset
|
69 in man/xemacs-faq.texi, as an Info file once you build XEmacs, and |
742a23369b74
Improve package documentation.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3179
diff
changeset
|
70 online at http://www.xemacs.org/Documentation/21.5/html/xemacs-faq_1.html. |
1338 | 71 |
72 ADD-ON LIBRARIES | |
73 ================ | |
74 | |
75 Decide which libraries you would like to use with XEmacs, but are not | |
1375 | 76 yet available on your system. On some systems, X11, Motif and CDE are |
3018 | 77 optional additions. On MacOS/X systems prior to 10.2, you may download |
78 X11R6 for Mac OS X from http://www.apple.com/macosx/x11/download/. In | |
79 later releases X11 is available as an optional package on the | |
80 installation CDs. In either case you need both the runtime libraries | |
81 and the SDK (in a sidebar of that page at the time of writing). There | |
82 is also a 3rd-party implementation of X11R6 for the Mac at | |
83 http://www.xdarwin.org/. On Solaris, the SUNWaudmo package enables | |
84 native sound support. There are also a number of free software | |
85 applications that XEmacs can use. If these are not yet available on | |
86 your system, obtain, build and install those external libraries before | |
87 building XEmacs. The libraries XEmacs can use are: | |
1338 | 88 |
89 Xaw3d, XPM, JPEG, compface, PNG, zlib, GNU DBM, Berkeley DB, socks, | |
90 term, NAS, Canna, Kinput2, SJ3, Wnn, PostgreSQL, LDAP. | |
91 | |
92 You can get (most of) them from the XEmacs FTP archive at | |
93 <ftp://ftp.xemacs.org/pub/xemacs/aux>. Information about what | |
94 each library does is available in the file | |
95 <ftp://ftp.xemacs.org/pub/xemacs/aux/00README.txt>. | |
96 | |
2648 | 97 Use the `--with-site-includes' and `--with-site-libraries' options when |
98 building XEmacs to allow configure to find the external software | |
99 packages. For your convenience these can be set together by using the | |
100 `--with-site-prefixes' option. This will set these variables as needed | |
1338 | 101 assuming your libraries are organised as a typical /usr tree. |
102 | |
103 If you link dynamically with external libraries, usually denoted by | |
2648 | 104 ".so" (Unix), ".dll" (Windows), or ".dylib" (MacOS) file extensions, on |
105 some systems you may also need to add the library directories to the | |
106 `--with-site-runtime-libraries' option. It is typically necessary only | |
1338 | 107 if you link with dynamic libraries that are installed in non-standard |
2648 | 108 directories, or if you expect some of the libraries used to build XEmacs |
109 to be in a different directory at run time than at build time. | |
1338 | 110 |
111 NOTE: This option has unusual semantics. ONLY libraries found in the | |
112 directories specified in this option will be used at runtime. This | |
113 means you must specify ALL directories you want searched at runtime in | |
114 this option (perhaps excluding a very small number of standard system | |
115 library paths). | |
116 | |
2648 | 117 Directories specified with `--with-site-libraries' are NOT automatically |
118 added. The rationale is that most users will not need this option, and | |
119 this allows the builder to specify exactly the needed directories. | |
120 Specifying unnecessary directories leads to obscure problems (typically | |
121 startup delays) if those directories are mounted over a network, and the | |
122 automounter configuration changes. Not all systems need this option; | |
123 it's best to avoid using it if you can. | |
1338 | 124 |
125 Dynamic linking has pros and cons. Dynamically linking 3rd party | |
126 libraries to XEmacs decreases the size of the binary, and means you | |
127 don't need to rebuild XEmacs to take advantage of improvements in the | |
128 libraries. On the other hand, XEmacs can fail subtly if the semantics | |
129 of a library changes, other users may not be able to use your | |
130 "private" copies of the libraries, and you may have to relink XEmacs, | |
131 or even omit the feature, if the ABI changes when the libraries are | |
132 upgraded. | |
424 | 133 |
442 | 134 CONFIGURATION OPTIONS |
135 ===================== | |
269 | 136 |
442 | 137 In the top level directory of the XEmacs distribution, run the |
138 program `configure' as follows: | |
0 | 139 |
149 | 140 ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ... |
0 | 141 |
3018 | 142 Options are generally of the form `--with-FEATURE' or |
143 `--enable-FEATURE' to use a feature or `--without-FEATURE' or | |
144 `--disable-FEATURE' to not use a feature. Unlike the `configure' | |
145 program used in other applications, either `--with-FEATURE' or | |
146 `--enable-FEATURE' can be used to use the same feature. | |
147 | |
3050 | 148 If you haven't built XEmacs 21.5 recently, the change from the |
149 configure script based on Autoconf 2.13 can be a shock. Appendix: | |
150 Correspondence to Old Configure Options (at the end of this document) | |
151 contains a list of old options and their new equivalents. | |
152 | |
1338 | 153 Controlling the Host Type |
154 ------------------------- | |
155 | |
243 | 156 Almost always, you should let `configure' (actually the shell script |
157 `config.guess') guess your host type, by omitting the | |
149 | 158 CONFIGURATION-NAME argument. If you like to experiment, specify a |
159 configuration name in the form MACHINE-VENDOR-OPSYS, for example: | |
160 | |
161 sparc-sun-solaris2.6 | |
162 | |
163 See config.guess and configure.in for valid values for MACHINE, | |
164 VENDOR, and OPSYS. Also check `./etc/MACHINES' for advice on building | |
165 on particular machines. | |
0 | 166 |
1338 | 167 Specifying Location of Headers and Libraries |
168 -------------------------------------------- | |
169 | |
2648 | 170 The `--with-site-includes=DIR' and `--with-site-libraries=DIR' options |
171 allow you to specify additional places the compiler should look for | |
172 include files and object libraries. You may specify multiple DIR's by | |
1338 | 173 enclosing the list in quotes. All the external libraries you want to |
174 use with XEmacs (e.g. xpm, wnn, ...) described later should have their | |
175 include and library directories defined using these options. | |
176 | |
2648 | 177 The `--with-site-runtime-libraries=DIR' option specifies directories to |
1338 | 178 search for shared libraries at run time. If you use this option, you |
179 must specify ALL of the directories containing shared libraries at run | |
180 time, including system directories. Please read the information about | |
181 "ADD-ON LIBRARIES" above very carefully. | |
0 | 182 |
183 The `--x-includes=DIR' and `--x-libraries=DIR' options tell the build | |
184 process where the compiler should look for the include files and | |
185 object libraries used with the X Window System. Normally, `configure' | |
186 is able to find them; these options are necessary if you have your X | |
187 Window System files installed in unusual places. | |
188 | |
1338 | 189 Configuring the Build Process |
190 ----------------------------- | |
149 | 191 |
2648 | 192 The `--with-gcc=PROGRAM' option specifies that the build process should |
193 compile XEmacs using GCC. The `--with-compiler' option allows you to | |
194 specify some other compiler to be used to compile XEmacs. If neither | |
195 option is specified, the environment variable CC is used instead. | |
196 Otherwise the compiler will then default to 'cc'. | |
201 | 197 |
2648 | 198 The `--with-xemacs-compiler=PROGRAM' option specifies the compiler |
199 control program for the xemacs binary only. Other C code will be | |
200 compiled according to the `--with-gcc' and `--with-compiler' options | |
201 above. This is useful if you wish to compile XEmacs with a C++ | |
202 compiler, because the utilities in ./lib-src cannot be compiled as C++. | |
203 This option is primarily intended for use by the maintainers. | |
0 | 204 |
2648 | 205 The `--with-cflags=FLAGS' option specifies all of the CFLAGS the build |
206 process should use when compiling XEmacs, except for flags controlling | |
207 warning generation. Otherwise the value of the environment variable | |
208 CFLAGS is consulted. If that is also undefined, CFLAGS defaults to "-g | |
209 -O" for gcc and "-g" for all other compilers. | |
0 | 210 |
2648 | 211 The `--with-cflags-warning=FLAGS' option specifies the warnings to be |
1338 | 212 generated. There is normally no reason to use this flag, as XEmacs |
3050 | 213 turns on as many warnings as possible, and is still intended to build |
214 with no warnings. If you get any undocumented warnings, please report | |
215 them as bugs---they very often are, or at least indicate possible | |
216 bitrot. | |
594 | 217 |
2648 | 218 The `--with-cflags-optimization=FLAGS' option specifies the |
3050 | 219 optimizations to be used. There is normally no reason to use this |
220 flag, as XEmacs will already set the maximum safe optimization flags | |
221 appropriate for the compiler being invoked. | |
2648 | 222 |
223 The `--with-cflags-debugging=FLAGS' option specifies debugging | |
3050 | 224 information to be generated. You should avoid using this flag, as it |
225 makes most severe or fatal bugs hard-to-impossible to diagnose and | |
226 fix. Debugging information does not slow down XEmacs at runtime, and | |
227 it doesn't make the binary very much bigger. | |
2648 | 228 |
3050 | 229 The `--with-dynamic' option specifies that configure should try to |
230 link XEmacs dynamically rather than statically. `--with-static' | |
231 specifies the reverse. XEmacs's configure script detects whether | |
232 dynamic linking can be done on all platforms we know of; these options | |
233 are normally unnecessary. | |
234 | |
235 The `--with-modules' option specifies that XEmacs be built with | |
236 support for runtime loadable modules. NOTE TO OEMS: XEmacs can be | |
237 distributed configured to support several options based on external | |
238 APIs (currently LDAP, PostgreSQL, and Canna) as loadable modules. You | |
239 can distribute an XEmacs binary package with these options enabled | |
240 without depending on the external package. XEmacs will fail | |
241 gracefully at runtime, issuing an error message indicating that the | |
242 required support was not found on the system. | |
0 | 243 |
244 You can build XEmacs for several different machine types from a single | |
245 source directory. To do this, you must use a version of `make' that | |
442 | 246 supports the `VPATH' variable, such as GNU `make'. Create separate |
0 | 247 build directories for the different configuration types, and in each |
248 one, run the XEmacs `configure' script. `configure' looks for the | |
1338 | 249 Emacs source code in the directory that `configure' is in. The |
250 `--srcdir' option may not work correctly (traditionally it was | |
251 overridden by the directory containing `configure'). | |
252 | |
253 Configuring the Installation Layout | |
254 ----------------------------------- | |
0 | 255 |
256 The `--prefix=PREFIXDIR' option specifies where the installation process | |
257 should put XEmacs and its data files. This defaults to `/usr/local'. | |
258 - XEmacs (and the other utilities users run) go in PREFIXDIR/bin | |
259 (unless the `--exec-prefix' option says otherwise). | |
260 - The architecture-independent files go in PREFIXDIR/lib/xemacs-VERSION | |
276 | 261 (where VERSION is the version number of XEmacs, like `21.0'). |
0 | 262 - The architecture-dependent files go in |
243 | 263 PREFIXDIR/lib/xemacs-VERSION/CONFIGURATION-NAME |
264 (where CONFIGURATION-NAME is the host type, like mips-dec-ultrix4.2), | |
0 | 265 unless the `--exec-prefix' option says otherwise. |
266 | |
267 The `--exec-prefix=EXECDIR' option allows you to specify a separate | |
268 portion of the directory tree for installing architecture-specific | |
269 files, like executables and utility programs. If specified, | |
270 - XEmacs (and the other utilities users run) go in EXECDIR/bin, and | |
271 - The architecture-dependent files go in | |
243 | 272 EXECDIR/lib/xemacs-VERSION/CONFIGURATION-NAME. |
0 | 273 EXECDIR/bin should be a directory that is normally in users' PATHs. |
274 | |
442 | 275 If you specify --prefix (or any of the other installation directory |
276 options), they will get compiled into the xemacs executable so it will | |
1338 | 277 be able to find its various associated files. However, XEmacs has |
442 | 278 quite elaborate logic to find out the locations of these directories |
279 dynamically. Sometimes, it is desirable *not* to compile these | |
280 directories into the executable so you can move the XEmacs | |
281 installation around (as whole) at will. This is true for binary kits, | |
282 for instance. Therefore, you can specify --without-prefix on the | |
283 configure command line to prevent the installation prefix to become | |
284 part of the generated executable; everything else will continue to | |
285 work as usual. | |
0 | 286 |
1338 | 287 Configuring Feature Support |
288 --------------------------- | |
289 | |
290 If you don't want X Window System support, specify `--without-x'. If | |
291 you omit this option, `configure' will try to autodetect whether your | |
292 system has X Window System support, and arrange to use it if present. | |
293 | |
294 The `--without-xmu' option can be used if your vendor doesn't ship | |
295 the Xmu library. | |
296 | |
3050 | 297 The `--with-menubars=TYPE' option allows you to specify which X |
0 | 298 toolkit you wish to use for the menubar. The valid options are |
149 | 299 `lucid', `motif' and `no'. The default is `lucid' which is a |
0 | 300 Motif-lookalike menubar. We highly recommend its usage over the real |
301 Motif menubar. (In fact, the Motif menubar is currently broken.) If | |
149 | 302 `no' is specified then support for menubars will not be compiled in. |
0 | 303 |
3050 | 304 The `--with-scrollbars=TYPE' option allows you to specify which X |
0 | 305 toolkit you wish to use for the scrollbars. The valid options are |
149 | 306 `lucid', `motif', `athena', `athena3d', and `no'. The default is |
2648 | 307 `lucid' which is a Motif-lookalike scrollbar. If `no' is specified then |
308 support for scrollbars will not be compiled in. | |
0 | 309 |
3050 | 310 The `--with-dialogs=TYPE' option allows you to specify which X toolkit |
219 | 311 you wish to use for the dialog boxes. The valid options are `athena', |
243 | 312 `athena3d', `motif, and `no. The `lucid' option is accepted and will |
313 result in the `athena' toolkit being used. If the Motif toolkit can be | |
314 found the default is `motif'. Otherwise, the default is `athena'. If | |
2648 | 315 `no' is specified then support for dialog boxes will not be compiled in. |
0 | 316 |
3050 | 317 The `--with-toolbars' option allows you to enable or disable toolbar |
1338 | 318 support. The default is `yes' if support for a windowing system is |
319 included. | |
0 | 320 |
149 | 321 The `--with-xpm' option specifies that XEmacs should support X11 |
0 | 322 Pixmaps. `configure' will attempt to detect if you have the Xpm |
323 libraries and define `--with-xpm' for you. | |
324 | |
325 The `--with-xface' option specifies that XEmacs should support | |
326 X-Faces. `configure' will attempt to detect if you have the compface | |
327 library and define `--with-xface' for you. | |
328 | |
3050 | 329 The `--with-database' option specifies that XEmacs should be built |
1338 | 330 with simple database support. The valid options are `no' or a |
0 | 331 comma-separated list of one or more of `dbm', `gnudbm' or `berkdb'. |
332 `configure' will attempt to detect the necessary libraries and header | |
3050 | 333 files and define `--with-database' for you. |
0 | 334 |
1338 | 335 The `--with-postgresql' option specifies that XEmacs should be built |
336 with PostgreSQL support, linking with libpq. `configure' will attempt | |
337 to detect whether PostgreSQL support is available, and automatically | |
3050 | 338 define `--with-postgresql' for you. NOTE TO OEMS: If modules are |
339 supported and enabled, the libpq API support will be build as a | |
340 module. | |
1338 | 341 |
342 The `--with-ldap' option specifies that XEmacs should be build with | |
343 LDAP support, using the OpenLDAP libraries. `configure' will attempt | |
344 to detect whether LDAP support is available, and automatically define | |
3050 | 345 `--with-ldap' for you. NOTE TO OEMS: If modules are supported and |
346 enabled, the OpenLDAP API support will be build as a module. | |
1338 | 347 |
0 | 348 The `--with-socks' option specifies that XEmacs should be built with |
149 | 349 SOCKS support. This requires the libsocks library. |
0 | 350 |
3050 | 351 The `--with-external-widget' option specifies that XEmacs should be |
2648 | 352 built with support for being used as a widget by other X11 applications. |
1338 | 353 This functionality should be considered beta. |
354 | |
3050 | 355 The `--with-sound=TYPE' option specifies that XEmacs should be built |
356 with sound support. Native (`--with-sound=native') sound support is | |
1338 | 357 currently available only on Sun SparcStations, SGI's, HP9000s, and |
358 systems (such as Linux) with soundcard.h. Network Audio Support (NAS) | |
3050 | 359 (`--with-sound=nas') is an extension to X that you may or may not have |
2648 | 360 for your system. For NAS, you will probably need to provide the paths |
361 to the nas include and library directories to configure. If | |
3050 | 362 `--with-sound' is not specified, `configure' will attempt to determine |
363 if your configuration supports native sound and define --with-sound | |
2648 | 364 for you. If your native sound library is not in a standard location you |
365 can specify it with the `--with-native-sound-lib=LIB' flag. For Linux, | |
366 `/dev/audio' is required for SunAudio files and `/dev/dsp' is required | |
367 for raw data and WAVE format files. | |
1338 | 368 |
0 | 369 The `--with-tooltalk' option specifies that XEmacs should be built |
370 with ToolTalk support for interconnecting with other applications. | |
243 | 371 ToolTalk is not yet supported on all architectures. If you use this |
372 option, you should have the tooltalk package (see etc/PACKAGES) | |
373 installed prior to building XEmacs. | |
0 | 374 |
375 The `--with-sparcworks' option specifies that XEmacs should be built | |
149 | 376 with support for Sun Sparcworks 3.0.1 and up (including Sun WorkShop). |
377 This functionality is only of use on SunOS 4.1.x and Solaris 2.x | |
272 | 378 systems. If you use this option, you should have the Sun package (see |
243 | 379 etc/PACKAGES) installed prior to building XEmacs. |
0 | 380 |
149 | 381 The `--with-cde' option allows you to enable or disable CDE drag and |
0 | 382 drop support. `configure' will attempt to detect this option and |
383 define `--with-cde' for you. | |
384 | |
272 | 385 The `--with-offix' option allows you to enable or disable OffiX drag |
386 and drop support. This requires no external library support, so if | |
387 X11 support is available, then this option defaults to `yes'. OffiX | |
274 | 388 support can be explicitly disabled via the `--with-offix=no' option. |
2 | 389 |
1338 | 390 Internationalization Options |
391 ---------------------------- | |
0 | 392 |
3050 | 393 The `--with-mule' option enables MUlti-Lingual Emacs (Mule) support, |
1338 | 394 needed to support non-Latin-1 (including Asian) languages. Mule |
395 support is required for Asian language and Unicode (multibyte and wide | |
396 character) support. With the advent of the Euro and European | |
397 Community expansion, Mule support is also recommended for Western | |
398 Europeans. Enabling Mule support requires the mule-base package | |
399 installed prior to building XEmacs. The `--with-xim', --with-xfs', | |
400 `--with-canna', `--with-wnn' and `--with-wnn6' options require | |
401 Mule support. | |
149 | 402 |
403 The `--with-xim' option enables use of the X11 XIM mechanism to allow | |
404 an input method to input text into XEmacs. The input method is shared | |
405 among all the X applications sharing an X display and using the same | |
151 | 406 language. The XIM support comes in two flavors: `motif' and `xlib'. |
407 The Motif support (the XmIm* functions) is preferred when available. | |
243 | 408 The xlib XIM support works reasonably well so long as the X11 libraries |
409 are recent enough. It has been fairly well tested on Linux with glibc | |
410 2.0.5 and 2.0.6 and Kinput2 as an XIM server. In this configuration | |
411 X11 must be recompiled with X_LOCALE defined because glibc is lacking | |
412 localization for Japanese. The XIM support defaults to `no' except | |
413 when Motif is detected where it is stable with OSF libraries. The XIM | |
414 support in Lesstif (a Free Motif replacement) does not work as of | |
415 v0.82. If you enable this option, you will probably wish to install | |
416 the `locale' package which contains localized Splash screens and | |
417 Menubars. | |
418 | |
272 | 419 The `--with-xfs' option enables use of a multilingual Menubar. At the |
243 | 420 present time, only Japanese and French locales are supported. In |
272 | 421 order to use a multilingual Menubar you must have the `locale' package |
243 | 422 installed. The `locale' package does not have to be installed when |
423 building XEmacs. | |
149 | 424 |
425 The `--with-canna' option enables the use of the Canna Japanese input | |
243 | 426 method. This is stable code and fairly well tested. In order to use |
2283 | 427 it, you will have to have the Canna server installed and running. Canna |
428 versions 3.2pl2, 3.5b2, and 3.7p3 are known to work. Version 3.2pl2 is | |
429 considered more stable than version 3.5b2; the stability of 3.7p3 is | |
430 still unknown. If Canna is already installed, configure will autodetect | |
431 it, so you never need to explicitly use this option unless your Canna | |
432 libraries are somewhere strange. Canna run time support is currently | |
433 bundled with the `mule-base' package so there is nothing additional to | |
3050 | 434 install in order to use it. NOTE TO OEMS: If modules are supported |
435 and enabled, the libcanna API support will be build as a module. | |
0 | 436 |
243 | 437 The `--with-wnn' and `--with-wnn6' options are for compiling with the Wnn |
438 multi-language input method. `--with-wnn' is for compiling with Wnn-4.2, | |
439 the Free version of WNN. `--with-wnn6' is for compiling against WNN6, | |
440 the commercial version of WNN available from OMRON Corporation. This is | |
441 stable code and fairly well tested. In order to build with this | |
442 option, you will need to have the `egg-its' lisp package already | |
443 installed. | |
444 | |
445 Please note that it is safe to build with as many of the options | |
446 `--with-xim', `--with-canna' and `--with-wnn' as your system | |
447 supports. | |
104 | 448 |
1338 | 449 Options for Developers and Special Requirements |
450 ----------------------------------------------- | |
451 | |
2648 | 452 The `--with-rel-alloc' option can be used to either enable or disable |
453 use of the relocating allocator. Turning on --with-rel-alloc will allow | |
454 XEmacs to return unused memory to the operating system, thereby reducing | |
455 its memory footprint. However, it may make XEmacs runs more slowly, | |
1338 | 456 especially if your system's `mmap' implementation is missing or |
2648 | 457 inefficient. Generally, it's best to go with the default configuration |
458 for your system. You can tweak this based on how you use XEmacs, and | |
459 the memory and cpu resources available on your system. | |
1338 | 460 |
461 The `--with-system-malloc' option can be used to either enable or | |
462 disable use of the system malloc. Generally, it's best to go with the | |
463 default configuration for your system. Note that on many systems | |
464 using the system malloc disables the use of the relocating allocator. | |
465 | |
466 The `--with-debug-malloc' option can be used to link a special | |
467 debugging version of malloc. Debug Malloc is not included with XEmacs | |
468 and is intended for use only by the developers. It may be obtained | |
469 from <URL:http://www.letters.com/dmalloc/>. | |
470 | |
2648 | 471 The `--enable-debug' and `--enable-error-checking' options are primarily |
472 useful to the developers. `--enable-debug' incorporates code for | |
473 performing various tests, but does not impose a speed penalty. | |
474 `--enable-error-checking' adds additional tests to many of the commonly | |
475 used macros, and imposes a speed penalty. Using either or both of these | |
476 options can make bug reports more useful to the developers. | |
1338 | 477 |
2648 | 478 The `--verbose' option is useful only to the developers. It displays |
479 additional information, useful for debugging `configure'. | |
1338 | 480 |
442 | 481 MAIL LOCKING |
482 ============ | |
483 | |
845 | 484 For most platforms, configure or the src/s file have the preferred |
485 method for locking mail spool files preconfigured. Otherwise you must | |
486 find out for youself. Do not choose a locking protocol "on the | |
487 objective merits." XEmacs must use the same method as other mail | |
1338 | 488 utilities on your system, or you WILL lose mail. |
845 | 489 |
490 Presently, XEmacs supports lockf, flock, and dot locking. Specify the | |
2648 | 491 locking method via the --with-mail-locking=METHOD option to configure. |
492 Valid values for METHOD are --with-mail-locking are `lockf', `flock', | |
493 and `dot'. | |
442 | 494 |
495 RUNNING CONFIGURE | |
496 ================= | |
497 | |
149 | 498 `configure' doesn't do any compilation or installation itself. It |
499 just creates the files that influence those things: `./src/config.h', | |
1338 | 500 and all the Makefiles in the build tree. |
104 | 501 |
0 | 502 When it is done, `configure' prints a description of what it did and |
503 creates a shell script `config.status' which, when run, recreates the | |
504 same configuration. If `configure' exits with an error after | |
1338 | 505 disturbing the status quo, it removes `config.status'. If `configure' |
506 doesn't work as expected, the file `config.log' contains details of | |
507 the tests run and their results. | |
0 | 508 |
442 | 509 AUXILIARY PATHS |
510 =============== | |
511 | |
512 Look at `./lisp/paths.el'; if some of those values are not right for | |
513 your system, set up the file `./lisp/site-init.el' with XEmacs Lisp | |
514 code to override them; it is not a good idea to edit paths.el itself. | |
515 YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES, rather than | |
516 `defvar', as used by `./lisp/paths.el'. For example, | |
0 | 517 |
518 (setq news-inews-program "/usr/bin/inews") | |
519 | |
520 is how you would override the default value of the variable | |
521 news-inews-program (which is "/usr/local/inews"). | |
522 | |
523 Before you override a variable this way, *look at the value* that the | |
524 variable gets by default! Make sure you know what kind of value the | |
525 variable should have. If you don't pay attention to what you are | |
526 doing, you'll make a mistake. | |
527 | |
392 | 528 Things may malfunction if the variable `directory-abbrev-alist' is not |
529 set up to translate "temporary" automounter mount points into the | |
530 canonical form. XEmacs tries to detect how your automounter is | |
531 configured. If you have an unusual automounter configuration that | |
532 XEmacs cannot detect, you may need to change the value of | |
533 `directory-abbrev-alist'. | |
371 | 534 |
442 | 535 SITE-SPECIFIC STARTUP CODE |
536 ========================== | |
537 | |
538 Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs Lisp | |
539 code you want XEmacs to load before it is dumped out. Use | |
0 | 540 site-load.el for additional libraries if you arrange for their |
541 documentation strings to be in the lib-src/DOC file (see | |
542 src/Makefile.in.in if you wish to figure out how to do that). For all | |
543 else, use site-init.el. | |
544 | |
545 Note that, on some systems, the code you place in site-init.el must | |
546 not use expand-file-name or any other function which may look | |
547 something up in the system's password and user information database. | |
548 See `./PROBLEMS' for more details on which systems this affects. | |
549 | |
550 The `site-*.el' files are nonexistent in the distribution. You do not | |
551 need to create them if you have nothing to put in them. | |
552 | |
442 | 553 TERMCAP CONFIGURATION |
554 ===================== | |
555 | |
556 Refer to the file `./etc/TERMS' for information on fields you may | |
0 | 557 wish to add to various termcap entries. The files `./etc/termcap.ucb' |
558 and `./etc/termcap.dat' may already contain appropriately-modified | |
559 entries. | |
560 | |
442 | 561 RUNNING MAKE |
562 ============ | |
563 | |
564 Run `make' in the top directory of the XEmacs distribution to finish | |
0 | 565 building XEmacs in the standard way. The final executable file is |
1338 | 566 named `src/xemacs'. You can execute this file in place without |
0 | 567 copying it, if you wish; then it automatically uses the sibling |
568 directories ../lisp, ../lib-src, ../info. | |
569 | |
1338 | 570 Or you can install the executable and the other XEmacs into their |
571 permanent locations, with `make install'. By default, XEmacs's files | |
0 | 572 are installed in the following directories: |
573 | |
574 `/usr/local/bin' holds the executable programs users normally run - | |
388 | 575 `xemacs', `etags', `ctags', `b2m', `emacsclient', `ellcc', |
0 | 576 `gnuclient', `gnudoit', `gnuattach', and `rcs-checkin'. |
577 | |
578 `/usr/local/lib/xemacs-VERSION/lisp' holds the Emacs Lisp libraries; | |
579 `VERSION' stands for the number of the XEmacs version | |
580 you are installing, like `18.59' or `19.14'. Since | |
581 the lisp libraries change from one version of XEmacs to | |
582 another, including the version number in the path | |
583 allows you to have several versions of XEmacs installed | |
584 at the same time; this means that you don't have to | |
585 make XEmacs unavailable while installing a new version. | |
586 | |
587 XEmacs searches for its lisp files in these | |
588 directories, and then in | |
589 `/usr/local/lib/xemacs/site-lisp/*'. | |
590 | |
591 `/usr/local/lib/xemacs-VERSION/etc' holds the XEmacs tutorial, the | |
592 `yow' database, and other architecture-independent | |
593 files XEmacs might need while running. VERSION is as | |
594 specified for `.../lisp'. | |
595 | |
596 `/usr/local/lib/xemacs/lock' contains files indicating who is | |
597 editing what, so XEmacs can detect editing clashes | |
598 between users. | |
599 | |
600 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME' contains executable | |
601 programs used by XEmacs that users are not expected to | |
602 run themselves, and the DOC file. `VERSION' is the | |
603 number of the XEmacs version you are installing, and | |
243 | 604 `CONFIGURATION-NAME' is the host type of your system. |
605 Since these files are specific to the version of | |
606 XEmacs, operating system, and architecture in use, | |
607 including the configuration name in the path allows | |
608 you to have several versions of XEmacs for any mix of | |
609 machines and operating systems installed at the same | |
610 time; this is useful for sites at which different | |
611 kinds of machines share the file system XEmacs is | |
612 installed on. | |
0 | 613 |
388 | 614 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME/modules' holds the Emacs |
615 dynamically loadable modules. These are special programs | |
616 typically written in C that can be loaded in much the same | |
617 way that Lisp packages are. Not all systems support | |
618 dynamic modules, so do not be alarmed if this directory | |
619 does not exist or is empty. | |
620 | |
621 XEmacs searches for modules in this directory, or any | |
622 sub-directory of it, and then in | |
623 `/usr/local/lib/xemacs/site-modules/*'. | |
624 | |
0 | 625 `/usr/local/lib/xemacs-VERSION/info' holds the on-line documentation |
626 for XEmacs, known as "info files". | |
627 | |
628 `/usr/local/man/man1' holds the man pages for the programs installed | |
629 in `/usr/local/bin'. | |
630 | |
631 If these directories are not what you want, you can specify where to | |
632 install XEmacs's libraries and data files or where XEmacs should search | |
633 for its lisp files by giving values for `make' variables as part of | |
442 | 634 the command. |
0 | 635 |
636 You can change where the build process installs XEmacs and its data | |
637 files by specifying values for `make' variables as part of the `make' | |
638 command line. For example, if you type | |
639 | |
640 make install bindir=/usr/local/gnubin | |
641 | |
642 the `bindir=/usr/local/gnubin' argument indicates that the XEmacs | |
643 executable files should go in `/usr/local/gnubin', not | |
644 `/usr/local/bin'. | |
645 | |
646 Here is a complete list of the variables you may want to set. | |
647 | |
648 `bindir' indicates where to put executable programs that users can | |
649 run. This defaults to /usr/local/bin. | |
650 | |
651 `datadir' indicates where to put the architecture-independent | |
652 read-only data files that XEmacs refers to while it runs; it | |
653 defaults to /usr/local/lib. We create the following | |
654 subdirectories under `datadir': | |
655 - `xemacs-VERSION/lisp', containing the XEmacs lisp libraries, and | |
656 | |
657 - `xemacs-VERSION/etc', containing the XEmacs tutorial and the | |
658 `yow' database. | |
659 `VERSION' is the number of the XEmacs version you are installing, | |
660 like `18.59' or `19.14'. Since these files vary from one version | |
661 of XEmacs to another, including the version number in the path | |
662 allows you to have several versions of XEmacs installed at the | |
663 same time; this means that you don't have to make XEmacs | |
664 unavailable while installing a new version. | |
665 | |
666 `statedir' indicates where to put architecture-independent data files | |
667 that XEmacs modifies while it runs; it defaults to | |
668 /usr/local/lib as well. We create the following | |
669 subdirectories under `statedir': | |
670 - `xemacs/lock', containing files indicating who is editing | |
671 what, so XEmacs can detect editing clashes between | |
672 users. | |
673 | |
674 `libdir' indicates where to put architecture-specific data files that | |
675 XEmacs refers to as it runs; it too defaults to `/usr/local/lib'. | |
676 We create the following subdirectories under `libdir': | |
677 - `xemacs-VERSION/CONFIGURATION-NAME', containing executable | |
678 programs used by XEmacs that users are not expected to run | |
1338 | 679 themselves, and the DOC file. |
0 | 680 `VERSION' is the number of the XEmacs version you are installing, |
243 | 681 and `CONFIGURATION-NAME' is the host type of your system. |
682 Since these files are specific to the version of XEmacs, | |
683 operating system, and architecture in use, including the | |
684 configuration name in the path allows you to have several | |
685 versions of XEmacs for any mix of machines and operating | |
686 systems installed at the same time; this is useful for sites | |
687 at which different kinds of machines share the file system | |
688 XEmacs is installed on. | |
0 | 689 |
690 `infodir' indicates where to put the info files distributed with | |
691 XEmacs; it defaults to `/usr/local/lib/xemacs-VERSION/info'. | |
692 | |
693 `mandir' indicates where to put the man pages for XEmacs and its | |
694 utilities (like `etags'); it defaults to | |
695 `/usr/local/man/man1'. | |
696 | |
697 `prefix' doesn't give a path for any specific part of XEmacs; instead, | |
698 its value is used to determine the defaults for all the | |
699 architecture-independent path variables - `datadir', | |
700 `statedir', `infodir', and `mandir'. Its default value is | |
701 `/usr/local'; the other variables add on `lib' or `man' to it | |
702 by default. | |
703 | |
704 For example, suppose your site generally places GNU software | |
705 under `/usr/users/software/gnusoft' instead of `/usr/local'. | |
706 By including | |
707 `prefix=/usr/users/software/gnusoft' | |
708 in the arguments to `make', you can instruct the build process | |
709 to place all of the XEmacs data files in the appropriate | |
710 directories under that path. | |
711 | |
712 `exec_prefix' serves the same purpose as `prefix', but instead | |
713 determines the default values for the architecture-dependent | |
714 path variables - `bindir' and `libdir'. | |
715 | |
716 The above variables serve analogous purposes in the makefiles for all | |
717 GNU software; here are some variables specific to XEmacs. | |
718 | |
719 `lispdir' indicates where XEmacs installs and expects its lisp | |
720 libraries. Its default value, based on `datadir' (see above), | |
721 is `/usr/local/lib/xemacs-VERSION/lisp' (where `VERSION' is as | |
722 described above). | |
723 | |
724 `sitelispdir' indicates where XEmacs should search for lisp libraries | |
725 specific to your site. XEmacs checks them in order before | |
726 checking `lispdir'. Its default value, based on `datadir' | |
727 (see above), is `/usr/local/lib/xemacs/site-lisp'. | |
728 | |
729 `etcdir' indicates where XEmacs should install and expect the rest of | |
730 its architecture-independent data, like the tutorial and yow | |
731 database. Its default value, based on `datadir' | |
732 (see above), is `/usr/local/lib/xemacs-VERSION/etc' (where | |
733 `VERSION' is as described above). | |
734 | |
735 `lockdir' indicates the directory where XEmacs keeps track of its | |
736 locking information. Its default value, based on `statedir' | |
737 (see above), is `/usr/local/lib/xemacs/lock'. | |
738 | |
739 `archlibdir' indicates where XEmacs installs and expects the | |
740 executable files and other architecture-dependent data it uses | |
741 while running. Its default value, based on `libdir' (see | |
742 above), is `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME' | |
743 (where VERSION and CONFIGURATION-NAME are as described above). | |
744 | |
420 | 745 `docdir' indicates where to put Lisp documentation strings that XEmacs |
442 | 746 refers to as it runs. It defaults to the value of `archlibdir' |
420 | 747 (see above). |
748 | |
388 | 749 `moduledir' indicates where XEmacs installs and expects to find |
750 any dynamic modules. Its default value, based on | |
751 `archlibdir' (see above) is | |
752 `/usr/local/lib/xemacs-VERSION/CONFIGURATION-NAME/modules' | |
753 (where VERSION and CONFIGURATION-NAME are as described above). | |
754 By their very nature, dynamic loadable modules are architecture- | |
442 | 755 dependent, and care should be taken not to set this directory |
756 to a system- or architecture-independent directory. | |
388 | 757 |
0 | 758 Remember that you must specify any variable values you need each time |
759 you run `make' in the top directory. If you run `make' once to build | |
760 xemacs, test it, and then run `make' again to install the files, you | |
761 must provide the same variable settings each time. To make the | |
762 settings persist, you can edit them into the `Makefile' in the top | |
763 directory, but be aware that running the `configure' program erases | |
764 `Makefile' and rebuilds it from `Makefile.in'. | |
765 | |
766 The top-level Makefile stores the variable settings it used in the | |
767 Makefiles for the subdirectories, so you don't have to specify them | |
768 when running make in the subdirectories. | |
769 | |
442 | 770 Using GNU Make allows for simultaneous builds with and without the |
771 --srcdir option. | |
0 | 772 |
1283 | 773 STRIPPING BINARIES |
774 ================== | |
775 | |
776 This saves nothing but a small (by modern standards) amount of disk | |
777 space; the symbol table is not loaded into memory at execution time. | |
778 If you do encounter a crash or other serious bug, the first thing the | |
779 developers will do is ask you to build an XEmacs with a full symbol | |
780 table, anyway. Don't strip the XEmacs binary. | |
781 | |
442 | 782 MAIL-LOCKING POST-INSTALLATION |
783 ============================== | |
0 | 784 |
442 | 785 If your system uses dot-locking to interlock access to mailer inbox |
786 files, then you might need to make the movemail program setuid or | |
787 setgid to enable it to write the lock files. We believe this is safe. | |
788 The setuid/setgid bits need not be set on any other XEmacs-related | |
789 executables. | |
0 | 790 |
442 | 791 CLEANING UP |
792 ========== | |
0 | 793 |
442 | 794 You are done with the hard part! You can remove executables and |
795 object files from the build directory by typing `make clean'. To also | |
796 remove the files that `configure' created (so you can compile XEmacs | |
797 for a different configuration), type `make distclean'. | |
0 | 798 |
4508
742a23369b74
Improve package documentation.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3179
diff
changeset
|
799 READ THE FAQ |
742a23369b74
Improve package documentation.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3179
diff
changeset
|
800 ============ |
0 | 801 |
442 | 802 Do it! |
0 | 803 |
804 PROBLEMS | |
442 | 805 ======== |
398 | 806 |
1338 | 807 The most common problem is that you forgot to read and follow the |
4508
742a23369b74
Improve package documentation.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3179
diff
changeset
|
808 directions for installing bootstrap packages in the FAQ. You can not |
742a23369b74
Improve package documentation.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
3179
diff
changeset
|
809 have a normal XEmacs without downloading some additional packages. |
424 | 810 |
1036 | 811 See the file PROBLEMS in this directory for a list of various problems |
812 sometimes encountered, and what to do about them. PROBLEMS is also | |
813 the place where platform-specific build notes can be found. | |
3050 | 814 |
815 APPENDIX: CORRESPONDENCE TO OLD CONFIGURE OPTIONS | |
816 ================================================= | |
817 | |
818 Here is a full translation of command line arguments. Note that any | |
819 option starting with "--with" may also be specified with "--enable". | |
820 This list may not be up-to-date. | |
821 | |
822 Old | New | |
823 ------------------------------------------ | |
824 General options: | |
825 ---------------- | |
826 | |
827 --help Unchanged | |
828 --usage Removed | |
829 --verbose Unchanged | |
830 --extra-verbose Removed | |
831 | |
832 Compilation options: | |
833 -------------------- | |
834 | |
835 --compiler --with-compiler | |
836 --xemacs-compiler --with-xemacs-compiler | |
837 --with-gcc Unchanged | |
838 --cflags --with-cflags | |
839 --cflags-warning --with-cflags-warning | |
840 --debug --with-debug | |
841 New --with-cflags-debug | |
842 New --with-optimization | |
843 New --with-cflags-optimization | |
844 --cpp --with-cpp | |
845 --cppflags --with-cppflags | |
846 --libs --with-libs | |
847 --ldflags --with-ldflags | |
848 --site-includes --with-site-includes | |
849 --site-libraries --with-site-libraries | |
850 --site-prefixes --with-site-prefixes | |
851 --site-runtime-libraries --with-site-runtime-libraries | |
852 --dynamic --with-dynamic | |
853 --srcdir Unchanged | |
854 | |
855 Installation options: | |
856 --------------------- | |
857 | |
858 --prefix Unchanged | |
859 --with-prefix Unchanged | |
860 --with-netinstall Unchanged | |
861 --bindir Unchanged | |
862 --datadir Unchanged | |
863 --statedir Unchanged | |
864 --libdir Unchanged | |
865 --infodir Unchanged | |
866 --mandir Unchanged | |
867 --lispdir --with-lispdir | |
868 --sitelispdir Removed | |
869 --etcdir --with-etcdir | |
870 --lockdir Removed | |
871 --archlibdir --with-archlibdir | |
872 --docdir --with-docdir | |
873 --moduledir --with-moduledir | |
874 | |
875 Run-time path-searching options: | |
876 -------------------------------- | |
877 | |
878 --with-site-lisp Unchanged | |
879 --with-site-modules Unchanged | |
880 --package-path --with-package-path | |
881 --infopath --with-infopath | |
882 | |
883 Window-system options: | |
884 ---------------------- | |
885 | |
886 --with-gtk Unchanged | |
887 --with-gnome Unchanged | |
888 --with-x11 Unchanged | |
889 --x-includes Unchanged | |
890 --x-libraries Unchanged | |
891 --with-msw Unchanged | |
892 --with-toolbars Unchanged | |
893 --with-wmcommand Unchanged | |
894 --with-athena Unchanged | |
895 --with-menubars Unchanged | |
896 --with-scrollbars Unchanged | |
897 --with-dialogs Unchanged | |
898 --with-widgets Unchanged | |
899 --with-dragndrop Unchanged | |
900 --with-cde Unchanged | |
901 --with-offix Unchanged | |
902 --with-xmu Unchanged | |
903 --external-widget --with-external-widget | |
904 | |
905 TTY (character terminal) options: | |
906 --------------------------------- | |
907 | |
908 --with-tty Unchanged | |
909 --with-ncurses Unchanged | |
910 --with-gpm Unchanged | |
911 | |
912 Image options: | |
913 -------------- | |
914 | |
915 --with-xpm Unchanged | |
916 --with-png Unchanged | |
917 --with-jpeg Unchanged | |
918 --with-tiff Unchanged | |
919 --with-xface Unchanged | |
920 --with-gif Unchanged | |
921 | |
922 Sound options: | |
923 -------------- | |
924 | |
925 --with-sound Unchanged | |
926 --native-sound-lib=LIB --with-native-sound-lib | |
927 | |
928 Internationalization options: | |
929 ----------------------------- | |
930 | |
931 --with-mule Unchanged | |
932 --with-xim Unchanged | |
933 --with-canna Unchanged | |
934 --with-wnn Unchanged | |
935 --with-wnn6 Unchanged | |
936 --with-xfs Unchanged | |
937 | |
938 File-related options: | |
939 --------------------- | |
940 | |
941 --with-default-eol-detection Unchanged | |
942 --with-clash-detection Unchanged | |
943 | |
944 Database options: | |
945 ----------------- | |
946 | |
947 --with-database Unchanged | |
948 --with-ldap Unchanged | |
949 --with-postgresql Unchanged | |
950 | |
951 Mail options: | |
952 ------------- | |
953 | |
954 --mail-locking=TYPE --with-mail-locking | |
955 --with-pop Unchanged | |
956 --with-kerberos Unchanged | |
957 --with-hesiod Unchanged | |
958 | |
959 Networking options: | |
960 ------------------- | |
961 | |
962 --with-tooltalk Unchanged | |
963 --with-socks Unchanged | |
964 --with-dnet Unchanged | |
965 --with-ipv6-cname Unchanged | |
966 | |
967 Memory allocation options: | |
968 -------------------------- | |
969 | |
970 --rel-alloc --with-rel-alloc | |
971 --with-dlmalloc Unchanged | |
972 --with-system-malloc Unchanged | |
973 --with-debug-malloc Unchanged | |
974 | |
975 Emacs Lisp options: | |
976 ------------------- | |
977 | |
978 --use-number-lib --with-bignum | |
979 | |
980 Debugging options: | |
981 ------------------ | |
982 | |
983 --debug --with-debug | |
984 --error-checking --with-error-checking | |
985 --memory-usage-stats --with-memory-usage-stats | |
986 --quick-build --with-quick-build | |
987 --use-union-type --with-union-type | |
988 --with-quantify Unchanged | |
989 --with-purify Unchanged | |
990 | |
991 Developer options: | |
992 ------------------ | |
993 | |
994 --with-workshop Unchanged | |
995 --pdump --with-pdump | |
996 --use-kkcc --with-kkcc | |
997 --with-modules Unchanged | |
998 | |
999 The output files produced by this new configure should be almost | |
1000 identical to those produced by the old. This can be tested with the | |
1001 provided regression test script. This script runs the two versions of | |
1002 configure with the supplied list of command line arguments and reports | |
1003 any differences. Please add your favorite configuration command lines | |
1004 to the list before running the test. The script is run as: | |
1005 | |
1006 $ tests/autoconf/regressiontest.pl /absolute/path/to/2.13/configure \ | |
1007 /absolute/path/to/2.59/configure >diffs.txt | |
1008 | |
1009 The only differences should be: | |
1010 - those related to changes in the command line arguments | |
1011 - the change of SYS_SIGLIST_DECLARED to HAVE_DECL_SYS_SIGLIST (because the old | |
1012 form has been removed), and | |
1013 - The removal of trailing comments in src/config.h. | |
1014 |