annotate man/xemacs/packages.texi @ 296:5a79be0ef6a8 r21-0b46

Import from CVS: tag r21-0b46
author cvs
date Mon, 13 Aug 2007 10:38:46 +0200
parents
children 9ea74add5d37
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
296
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
1 @node Packages, Abbrevs, Running, Top
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
2 @comment node-name, next, previous, up
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
3
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
4 @section Introduction to XEmacs Packages
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
5 @cindex packages
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
6
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
7 The XEmacs 21 distribution comes only with a very basic set of
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
8 built-in modes and packages. Most of the packages that were part of
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
9 the distribution of earlier versions of XEmacs are now separately
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
10 available. The installer as well as the user can choose which
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
11 packages to install; the actual installation process is easy.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
12 This gives an installer the ability to tailor an XEmacs installation for
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
13 local needs with safe removal of unnecessary code.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
14
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
15 @subsection Package Flavors
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
16
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
17 There are two main flavors of packages.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
18
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
19 @itemize @emph
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
20 @item Regular Packages
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
21 A regular package is one in which multiple files are involved and one
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
22 may not in general safely remove any of them.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
23
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
24 @item Single-File Packages
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
25 A single-file package is an aggregate collection of thematically
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
26 related but otherwise independent lisp files. These files are bundled
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
27 together for download convenience and individual files may deleted at
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
28 will without any loss of functionality.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
29 @end itemize
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
30
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
31 @subsection Package Distributions
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
32
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
33 XEmacs Lisp packages are distributed in two ways depending on the
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
34 intended use. Binary Packages are for installers and end-users and may
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
35 be installed directly into an XEmacs package directory. Source Packages
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
36 are for developers and include all files necessary for rebuilding
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
37 bytecompiled lisp and creating tarballs for distribution.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
38
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
39 @subsection Binary Packages
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
40 Binary packages may be installed directly into an XEmacs package
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
41 hierarchy.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
42
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
43 @subsection Source Packages
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
44
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
45 Source packages contain all of the Package author's (where appropriate
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
46 in regular packages) source code plus all of the files necessary to
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
47 build distribution tarballs (Unix Tar format files and gzipped for space
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
48 savings).
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
49
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
50 @subsection Prerequisites for building Source Packages
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
51
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
52 You must have GNU @code{cp}, GNU @code{install} (or a BSD compatible
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
53 @code{install} program) GNU @code{make} (3.75 or later preferred),
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
54 @code{makeinfo} (1.68 from @code{texinfo-3.11} or later required), GNU
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
55 @code{tar} and XEmacs 21.0. The source packages will untar into a
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
56 correct directory structure. At the top level you must have
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
57 @file{XEmacs.rules} and @file{package-compile.el}. These files are
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
58 available from the XEmacs FTP site from the same place you obtained your
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
59 source package distributions.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
60
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
61 @subsection What you can do with Source Packages
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
62
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
63 NB: A global build operation doesn't exist yet as of 13 January 1998.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
64
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
65 Source packages are most useful for creating XEmacs package tarballs
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
66 for installation into your own XEmacs installations or for
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
67 distributing to others.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
68
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
69 Supported operations from Make are:
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
70
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
71 @table @code
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
72 @item clean
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
73 Remove all built files except @file{auto-autoloads.el} and @file{custom-load.el}.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
74
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
75 @item distclean
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
76 Remove XEmacs backups as well as the files deleted by @code{make clean}.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
77
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
78 @item all
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
79 Bytecompile all files, build and bytecompile byproduct files like
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
80 @file{auto-autoloads.el} and @file{custom-load.el}. Create info version
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
81 of TeXinfo documentation if present.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
82
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
83 @item srckit
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
84 Usually aliased to @code{make srckit-std}. This does a @code{make
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
85 distclean} and creates a package source tarball in the staging
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
86 directory. This is generally only of use for package maintainers.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
87
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
88 @item binkit
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
89 May be aliased to @code{binkit-sourceonly}, @code{binkit-sourceinfo},
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
90 @code{binkit-sourcedata}, or
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
91 @code{binkit-sourcedatainfo}. @code{sourceonly} indicates there is
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
92 nothing to install in a data directory or info directory.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
93 @code{sourceinfo} indicates that source and info files are to be
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
94 installed. @code{sourcedata} indicates that source and etc (data) files
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
95 are to be installed. @code{sourcedatainfo} indicates source, etc
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
96 (data), and info files are to be installed. A few packages have needs
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
97 beyond the basic templates so this is not yet complete.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
98
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
99 @item dist
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
100 Runs the rules @code{srckit} followed by @code{binkit}. This is
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
101 primarily of use by XEmacs maintainers producing files for distribution.
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
102
5a79be0ef6a8 Import from CVS: tag r21-0b46
cvs
parents:
diff changeset
103 @end table