comparison etc/PACKAGES @ 296:5a79be0ef6a8 r21-0b46

Import from CVS: tag r21-0b46
author cvs
date Mon, 13 Aug 2007 10:38:46 +0200
parents 6330739388db
children 4f79e16b1112
comparison
equal deleted inserted replaced
295:9d5da8baa111 296:5a79be0ef6a8
1 -*- mode:outline -*-
2 * Introduction to XEmacs Packages
3 =================================
4
5 As of XEmacs 21.0, XEmacs is no longer distributed in a large
6 monolithic distribution. The distribution has been broken up into
7 separate units called packages. In the general case, one may install
8 and uninstall various packages freely without having to modify the
9 XEmacs binary. This gives an installer the ability to tailor an
10 XEmacs installation for local needs with safe removal of unnecessary
11 code.
12
13 There are two main flavors of packages.
14
15 ** Regular Packages
16 ===================
17
18 A regular package is one in which multiple files are involved and one
19 may not in general safely remove any of them.
20
21 ** Single-File Packages
22 =======================
23
24 A single-file package is an aggregate collection of thematically
25 related but otherwise independent lisp files. These files are bundled
26 together for download convenience and individual files may deleted at
27 will without any loss of functionality.
28
29 * Package mechanics
30 ===================
31
32 This section describes how package hierarchy directories are put
33 together and how they may be configured into XEmacs.
34
35 ** Package Path
36 ===============
37
38 For backwards compatibility and for ease of transition to XEmacs 21, it
39 is possible to use previous XEmacs installations as package directories.
40 Specify something like
41 --package-path="~/.xemacs::/somewhere-newpackages::/usr/local/lib/xemacs-20.4"
42 to configure when building. You will have extra messages at dump
43 time relating to lisp shadows which you may ignore. The first
44 magical null directory `::' is a marker indicating what packages
45 should only be searched at run-time. The second magical null
46 directory is used to indicate where Lisp bundled with the running
47 XEmacs gets put at the back of load path. By specifing the older
48 directories after the current one, the newer lisp overrides the
49 older lisp.
50
51 ** The anatomy of an XEmacs Package hierarchy
52 =============================================
53
54 An XEmacs package is laid out just like a normal installed XEmacs lisp
55 directory. It may have lisp, etc, info, and lib-src subdirectories.
56 These directories get added at XEmacs startup to whatever directories
57 it was already using.
58
59 There may be any number of Package hierarchy directories.
60
61 * Package Distributions
62 =======================
63
64 XEmacs lisp packages are distributed in two ways depending on the
65 intended use. Binary Packages are for installers and end-users and
66 may be installed directly into an XEmacs package directory. Source
67 Packages are for developers and include all files necessary for
68 rebuilding bytecompiled lisp and creating tarballs for distribution.
69
70 ** Binary Packages
71 ==================
72
73 Binary packages may be installed directly into an XEmacs package
74 directory. XEmacs package directories are determined at the time
75 XEmacs is configured for building. The default is
76 ${prefix}/lib/xemacs/packages. `prefix' defaults to /usr/local unless
77 changed by the XEmacs configurer. This may be changed by specifying a
78 path of the form --package-path=directory:directory:directory... (all
79 directories separated by colons). There is no restriction on the
80 number of directories. There may be no package directories, but
81 XEmacs won't be very useful.
82
83 ** Source Packages
84 ==================
85
86 Source packages contain all of the Package author's (where appropriate
87 in regular packages) source code plus all of the files necessary to
88 build distribution tarballs (Unix Tar format files and gzipped for
89 space savings).
90
91 *** Prerequisites for building Source Packages
92
93 You must have GNU cp, GNU ginstall (or a BSD compatible install
94 program) GNU make (3.75 or later preferred), makeinfo (1.68 from
95 texinfo-3.11 or later required), GNU tar and XEmacs 21.0 :-). The
96 source packages will untar into a correct directory structure. At
97 the top level you must have XEmacs.rules and package-compile.el.
98 These files are available from the XEmacs FTP site from the same
99 place you obtained your source package distributions.
100
101 *** What you can do with Source Packages
102
103 NB: A global build operation doesn't exist yet as of 13 January 1998.
104
105 Source packages are most useful for creating XEmacs package tarballs
106 for installation into your own XEmacs installations or for
107 distributing to others.
108
109 Supported operations from Make are:
110
111 **** clean
112
113 Remove all built files except auto-autoloads.el and custom-load.el.
114
115 **** distclean
116
117 Remove XEmacs backups as well as the files deleted by `make clean'.
118
119 **** all
120
121 Byte compile all files, build and bytecompile byproduct files like
122 auto-autoloads.el and custom-load.el. Create info version of TeXinfo
123 documentation if present.
124
125 **** srckit
126
127 Usually aliased to `make srckit-std'. This does a `make distclean'
128 and creates a Package source tarball in the staging directory. This
129 is generally only of use for package maintainers.
130
131 **** binkit
132
133 May be aliased to binkit-sourceonly, binkit-sourceinfo,
134 binkit-sourcedata, or binkit-sourcedatainfo. `sourceonly' indicates
135 there is nothing to install in a data directory or info directory.
136 `sourceinfo' indicates that source and info files are to be
137 installed. `sourcedata' indicates that source and etc (data) files
138 are to be installed. `sourcedatainfo' indicates source, etc (data),
139 and info files are to be installed. A few packages have needs beyond
140 the basic templates so this is not yet complete.
141
142 **** dist
143
144 Runs the rules `srckit' followed by `binkit'. This is primarily of
145 use by XEmacs maintainers producing files for distribution.
146
147 * Description of available packages by category 1 * Description of available packages by category
148 =============================================== 2 ===============================================
149 3
150 This data is up-to-date as of 13 January 1998. 4 This data is up-to-date as of 13 January 1998.
151 5
167 21
168 *** edebug 22 *** edebug
169 23
170 A Lisp debugger. 24 A Lisp debugger.
171 25
26 *** dired
27
28 The DIRectory EDitor is for manipulating, and running commands on
29 files in a directory.
30
172 *** efs 31 *** efs
173 32
174 Treat files on remote systems the same as local files. Also contains 33 Treat files on remote systems the same as local files.
175 dired.
176 34
177 *** mail-lib 35 *** mail-lib
178 36
179 Fundamental lisp files for providing email support. 37 Fundamental lisp files for providing email support.
180 38