134
|
1 -*- mode:outline; minor-mode:outl-mouse -*-
|
|
2
|
|
3 * Introduction
|
|
4 ==============
|
|
5
|
|
6 You are running an experimental version of XEmacs. Please do not
|
|
7 report problems with Beta XEmacs to comp.emacs.xemacs. Report them to
|
|
8 xemacs-beta@xemacs.org.
|
|
9
|
|
10 ** XEmacs Beta Mailing List
|
|
11 ===========================
|
|
12
|
|
13 *** Subscribing
|
|
14 ---------------
|
|
15
|
|
16 If you are not subscribed to the XEmacs beta list you should be. Send
|
|
17 an email message with a subject of `subscribe' (without the quotes) to
|
|
18 xemacs-beta-request@xemacs.org and follow the directions. You do not
|
|
19 have to fill out the survey if you don't want to.
|
|
20
|
|
21 *** Unsubscribing
|
|
22 -----------------
|
|
23
|
|
24 To unsubscribe from the list send an email message with a subject of
|
|
25 `unsubscribe' (without the quotes) to xemacs-beta-request@xemacs.org.
|
|
26
|
|
27 *** Administrivia
|
|
28 -----------------
|
|
29
|
|
30 The XEmacs beta list is managed by the SmartList mailing list package,
|
|
31 and the usual SmartList commands work. Do not send mailing list
|
|
32 requests to the main address (xemacs-beta@xemacs.org), always send
|
|
33 them to xemacs-beta-request@xemacs.org. If you have problems with the
|
|
34 list itself, they should be brought to the attention of the Mailing
|
|
35 List manager Chuck Thompson <cthomp@xemacs.org>.
|
|
36
|
|
37
|
|
38 ** Beta Release Schedule
|
|
39 ========================
|
|
40
|
|
41 The URL ftp://ftp.xemacs.org/pub/beta/README always contains the best
|
|
42 estimate of when the next beta XEmacs will be released. For weekend
|
|
43 betas the release time is generally in the vicinity of 2PM to 5PM US
|
|
44 Pacific Time (Universal Time minus 8 hours). For weekday betas, the
|
|
45 release time is generally in the vicinity of 8PM to Midnight US
|
|
46 Pacific Time on the listed day.
|
|
47
|
|
48 While 19.15 and 20.x are in parallel development, a simultaneous
|
|
49 release day implies a release of 20.x first, followed a few hours
|
|
50 later by 19.15.
|
|
51
|
|
52 Betas are nominally a week apart, scheduled on every Saturday.
|
|
53 Midweek releases are made when a serious enough problem warrants it.
|
|
54
|
|
55
|
|
56 ** Reporting Problems
|
|
57 =====================
|
|
58
|
|
59 The best way to get problems fixed in XEmacs is to submit good problem
|
|
60 reports. Since this is beta software problems are certain to exist.
|
|
61 Please read through all of part II of the XEmacs FAQ for an overview
|
|
62 of problem reporting. Other items which are most important are:
|
|
63
|
|
64 1. Do not submit C stack backtraces without line numbers. Since it
|
|
65 is possible to compile optimized with debug information with GCC
|
|
66 it is never a good idea to compile XEmacs without the -g flag.
|
|
67 XEmacs runs on a variety of platforms, and often it is not
|
|
68 possible to recreate problems which afflict a specific platform.
|
|
69 The line numbers in the C stack backtrace help isolate where the
|
|
70 problem is actually occurring.
|
|
71
|
|
72 2. Attempt to recreate the problem starting with an invocation of
|
|
73 XEmacs with `xemacs -q -no-site-file'. Quite often problems are
|
|
74 due to package interdependencies, and the like. An actual bug in
|
|
75 XEmacs should be reproducible in a default configuration without
|
|
76 loading any special packages (or the one or two specific packages
|
|
77 that cause the bug to appear).
|
|
78
|
|
79 3. A picture can be worth a thousand words. When reporting an
|
|
80 unusual display, it is generally best to capture the problem in a
|
|
81 screen dump and include that with the problem report. The easiest
|
|
82 way to get a screen dump is to use the xv program and its grab
|
|
83 function. Save the image as a GIF to keep bandwidth requirements
|
|
84 down without loss of information. MIME is the preferred method
|
|
85 for making the image attachments.
|
|
86
|
|
87 * Compiling Beta XEmacs
|
|
88 =======================
|
|
89
|
|
90 ** Building an XEmacs from patches
|
|
91 ==================================
|
|
92
|
|
93 All beta releases of XEmacs are included with patches from the
|
|
94 previous version in an attempt to keep bandwidth requirements down.
|
|
95 Patches should be applied with the GNU patch program in something like
|
|
96 the following. Let's say you're upgrading XEmacs 20.4-beta10 to
|
|
97 XEmacs 20.4-beta11 and you have a full unmodified XEmacs 20.4-beta10
|
|
98 source tree to work with. Cd to the top level directory and issue the
|
|
99 shell command:
|
|
100
|
|
101 $ gunzip -c /tmp/xemacs-20.4-b10-20.4-b11.patch.gz | patch -p1
|
|
102
|
|
103 After patching check to see that no patches were missed by doing
|
|
104 $ find . -name \*.rej -print
|
|
105
|
|
106 Any rejections should be treated as serious problems to be resolved
|
|
107 before starting compilation.
|
|
108
|
179
|
109 After seeing that there were no rejections, issue the commands
|
134
|
110
|
179
|
111 $ ./config.status --recheck
|
|
112 $ make beta
|
134
|
113
|
|
114 and go play minesweep for awhile on an older XEmacs while the binary
|
|
115 is rebuilt.
|
|
116
|
|
117 ** Building an XEmacs from a full distribution
|
|
118 ==============================================
|
|
119
|
|
120 Locate a convenient place where you have at least 100MB of free space
|
|
121 and issue the command
|
|
122
|
|
123 $ gunzip -c /tmp/xemacs-20.4-b11.tar.gz | tar xvf -
|
|
124
|
|
125 (or the simpler `tar zxvf /tmp/xemacs-20.4-b11.tar.gz' if you use GNU
|
|
126 tar).
|
|
127
|
|
128 cd to the top level directory and issue an appropriate configure
|
|
129 command. The maintainer uses the following at the time of this
|
|
130 writing:
|
|
131
|
|
132 ./configure --with-offix --with-mule=yes --with-dialogs=athena3d \
|
|
133 --cflags="-m486 -g -O4 -fno-strength-reduce -malign-loops=2 \
|
|
134 -malign-jumps=2 -malign-functions=2" --with-sound=no \
|
|
135 --with-xface=yes --error-checking=all --debug=yes \
|
|
136 --with-scrollbars=athena3d \
|
|
137 --with-canna=yes --with-wnn=yes --wnn-includes=/usr/X11R6/include/wnn
|
|
138
|
|
139 Save the output from configure that looks something like:
|
|
140 Configured for `i586-unknown-linux2.0.28'.
|
|
141
|
|
142 Where should the build process find the source code? /usr/src/xemacs-20.0
|
|
143 What installation prefix should install use? /usr/local
|
|
144 What operating system and machine description files should XEmacs use?
|
|
145 `s/linux.h' and `m/intel386.h'
|
|
146 What compiler should XEmacs be built with? gcc -m486 -g -O4 -fno-strength-reduce -malign-loops=2 -malign-jumps=2 -malign-functions=2
|
|
147 Should XEmacs use the GNU version of malloc? yes
|
|
148 Should XEmacs use the relocating allocator for buffers? yes
|
|
149 What window system should XEmacs use? x11
|
|
150 Where do we find X Windows header files? /usr/X11R6/include
|
|
151 Where do we find X Windows libraries? /usr/X11R6/lib
|
|
152 Compiling in support for XAUTH.
|
|
153 Compiling in support for XPM.
|
|
154 Compiling in support for X-Face headers.
|
|
155 Compiling in support for GIF image conversion.
|
|
156 Compiling in support for JPEG image conversion.
|
|
157 Compiling in support for PNG image conversion.
|
|
158 Compiling in support for Berkeley DB.
|
|
159 Compiling in support for GNU DBM.
|
|
160 Compiling in Mule (multi-lingual) support.
|
|
161 Compiling in support for OffiX.
|
|
162 Using the Lucid menubar.
|
|
163 Using the Athena-3d scrollbar.
|
|
164 Using the Athena-3d dialog boxes.
|
|
165
|
|
166 Then type make and you should have a working XEmacs.
|
|
167
|
|
168 After you have verified that you have a functional editor, fire up
|
|
169 your favorite mail program and send a build report to
|
|
170 xemacs-beta@xemacs.org. The build report should include
|
|
171
|
|
172 1. Your hardware configuration (OS version, etc.)
|
|
173
|
|
174 2. Version numbers of software in use (X11 version, system library
|
|
175 versions if appropriate, graphics library versions if appropriate).
|
|
176 If you're on a system like Linux, include all the version numbers
|
|
177 you can because chances are it makes a difference.
|
|
178
|
|
179 3. The options given to configure
|
|
180
|
|
181 4. The configuration report illustrated above
|
|
182
|
|
183 5. Any other unusual items you feel should be brought to the attention
|
|
184 of the developers.
|
136
|
185
|
|
186 ** Creating patches for submission
|
|
187 ==================================
|
|
188
|
|
189 When making patches you should use the `-c', or preferably if your
|
|
190 diff supports it, `-u'. Using ordinary diffs like this are
|
|
191 notoriously prone to error (and this one won't in fact work, since
|
|
192 I've already applied a patch to this file so the line numbers probably
|
|
193 don't match up any more).
|
|
194
|
|
195 $ diff -u old-file.c new-file.c
|
|
196
|
|
197 -or-
|
|
198
|
|
199 $ diff -c old-file.c new-file.c
|
|
200
|
|
201 Also, it is helpful for me if you create the patch in the top level of
|
|
202 the XEmacs source directory:
|
|
203
|
|
204 $ diff -u lwlib/xlwmenu.c~ lwlib/xlwmenu.c
|
|
205
|
|
206 I prefer patches to be accompanied by an update (either a raw entry or
|
|
207 a patch) to the appropriate ChangeLog file, but it is not required.
|
|
208
|
|
209 Also note that if you cut & paste from an xterm to an XEmacs mail buffer
|
|
210 you will probably lose due to tab expansion. The best thing to do is to
|
|
211 M-x cd to the appropriate directory, and issue the command `C-u M-!' from
|
|
212 within XEmacs.
|
195
|
213
|
|
214 * XEmacs 20.3 packages
|
|
215
|
|
216 XEmacs 20.3 has added the concept of installable packages searched prior
|
|
217 to dump time when building.
|
|
218
|
|
219 Packages are searched by default under /usr/local/lib/xemacs/packages/.
|
|
220 The summary message in configure will tell you where XEmacs is looking
|
|
221 for them. The packages hierarchy differs from site-lisp in that you
|
|
222 do not have install XEmacs to use it, indeed, the package path is
|
|
223 searched prior to dump time so that installed packages have the same
|
|
224 status as lisp distributed in the xemacs base tarball.
|
|
225
|
|
226 The structure of each directory in the package search path should look
|
|
227 like the base installed directory (ie. have etc/, info/, and lisp/,).
|
|
228 Lisp is searched recursively. It and all subdirectories are added to
|
|
229 the `load-path'. Each etc directory is added to `data-directory-list',
|
|
230 and each info directory is added to `Info-default-directory-list'.
|
|
231
|
|
232 A `find . -type d -print' in my top-level package directory reveals:
|
|
233 ./etc
|
|
234 ./etc/auctex
|
|
235 ./etc/auctex/style
|
|
236 ./etc/gnus
|
|
237 ./etc/skk
|
|
238 ./etc/gnusrefcard
|
|
239 ./etc/smilies
|
|
240 ./etc/message
|
|
241 ./info
|
|
242 ./lisp
|
|
243 ./lisp/gnus
|
|
244 ./lisp/auctex
|
|
245 ./lisp/auctex/man
|
|
246 ./lisp/footnote
|
|
247 ./lisp/skk
|
|
248
|
|
249
|
|
250 AUCTeX and Gnus have package tarballs in
|
|
251 ftp://ftp.xemacs.org/pub/beta/packages-20.3/
|
|
252 that you can simply untar in a package directory to install.
|
|
253
|
|
254 Karl Hegbloom has a set of packages in
|
|
255 [I lost the reference]
|
|
256 that work the same way.
|
|
257
|
|
258 This is not how package installation will work in released 20.3.
|