annotate etc/BETA @ 2529:5f1df1828d81

[xemacs-hg @ 2005-01-28 22:52:28 by viteno] Update src depends
author viteno
date Fri, 28 Jan 2005 22:52:28 +0000
parents ecf1ebac70d8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 -*- mode:outline -*-
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 * Introduction
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 ==============
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
6 You are running a potentially unstable version of XEmacs. Please do
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
7 not report problems with Beta XEmacs to comp.emacs.xemacs. Report
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
8 them to <xemacs-beta@xemacs.org>, preferably with
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
9 'M-x report-xemacs-bug RET'.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
11 ** Mailing Lists
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
12 ================
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
13
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
14 *** XEmacs Beta Mailing List
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
15 ----------------------------
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
17 If you are not subscribed to the XEmacs beta list you should be.
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
18 Currently all discussion of development issues, including bug reports
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
19 and coding discussion, takes place on the XEmacs Beta mailing list.
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
20 Only patches and administrative actions regarding patches are sent
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
21 elsewhere (to the XEmacs Patches list).
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
22
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
23 *** XEmacs Patches Mailing List
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
24 -------------------------------
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
26 XEmacs Patches records proposed changes to XEmacs, and their
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
27 disposition. It is open subscription, and all patches that are
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
28 seriously proposed for inclusion in XEmacs should be posted here. You
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
29 can follow progress of your patch by subscribing to the mailing list
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
30 or in the archives.
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
31
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
32 Besides patches, only actions by members of the XEmacs Review Board
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
33 should be posted to this list. All discussion should be redirected to
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
34 XEmacs Beta or XEmacs Design.
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
35
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
36 *** XEmacs Design Mailing List
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
37 ------------------------------
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
38
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
39 XEmacs Design is for design discussions such as adding major features
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
40 or whole modules, or reimplementation of existing functions, to XEmacs.
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
41
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
42 *** List Administrivia
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
43 ----------------------
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
45 In the descriptions below, the word LIST (all uppercase) is a
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
46 variable. Substitute "beta", "design", or "patches" as appropriate
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
47 (to get "xemacs-beta" as the mailbox for the XEmacs Beta mailing list,
1301
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
48 or <http://www.xemacs.org/Lists/#xemacs-beta> for its URL).
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
50 The XEmacs mailing lists are managed by the Mailman mailing list
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
51 package, and the usual Mailman commands work. Do not send mailing
1301
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
52 list requests to the main address (<xemacs-LIST@xemacs.org>), always
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
53 send them to <xemacs-LIST-request@xemacs.org>. If you have problems
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
54 with the list itself, they should be brought to the attention of the
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
55 XEmacs Mailing List manager <list-manager@xemacs.org> (the same
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
56 mailbox, "list-manager", for all lists). All public mailing lists
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
57 have searchable archives. The URL is
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
58
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
59 http://list-archive.xemacs.org/xemacs-LIST
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
61 Note that the xemacs-LIST-admin address is used internally by the
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
62 Mailman software; it is NOT a synonym for xemacs-LIST-request.
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
63
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
64 *** Managing your subscription via the Web
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
65 ------------------------------------------
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
66
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
67 Subscription, unsubscription, and options (such as digests and
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
68 temporarily suspending delivery) can be accomplished via the web
1301
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
69 interface at <http://www.xemacs.org/Lists/#xemacs-LIST>.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
71 *** Subscribing by e-mail
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
72 -------------------------
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
73
1301
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
74 Send an email message to <xemacs-LIST-request@xemacs.org> with
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
75 `subscribe' (without the quotes) as the BODY of the message.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
77 *** Unsubscribing by e-mail
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
78 ---------------------------
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
79
1301
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
80 Send an email message to <xemacs-LIST-request@xemacs.org> with
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
81 `unsubscribe' (without the quotes) as the BODY of the message.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 ** Beta Release Schedule
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 ========================
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
86 We would like to achieve a weekly or fortnightly release cycle (you
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
87 know the Open Source model: release early, release often), and in a
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
88 perfect world that would indeed be the case. There are at least three
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
89 things that often get in the way of that goal: 1) The Release Manager
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
90 has a life outside of XEmacs (hard to believe, I know, but true),
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
91 2) we like to make releases that will build (at least on the Release
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
92 Manager's box), and 3) Murphy likes to throw a spanner in the works
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
93 right when you least expect it (Murphy's Law: Whatever can go wrong,
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
94 will go wrong).
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
95
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
96 If you'd like to keep right up to date and ride the bleeding edge, use
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
97 CVS (see <http://www.xemacs.org/Develop/cvsaccess.html>). If you
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
98 can't use CVS for some reason and must use FTP, please let us know.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
99 it will make it more likely that we release betas more often.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
100
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 ** Reporting Problems
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103 =====================
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105 The best way to get problems fixed in XEmacs is to submit good problem
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
106 reports, 'M-x report-xemacs-bug RET' will help you do this (assuming
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
107 you have a usable XEmacs). Since this is beta software, problems are
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
108 certain to exist. Please read through all of part II of the XEmacs
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
109 FAQ for an overview of problem reporting. Other items which are most
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
110 important are:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
112 1. Do not submit C stack backtraces without line numbers. Since it
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113 is possible to compile optimized with debug information with GCC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114 it is never a good idea to compile XEmacs without the -g flag.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115 XEmacs runs on a variety of platforms, and often it is not
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116 possible to recreate problems which afflict a specific platform.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117 The line numbers in the C stack backtrace help isolate where the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
118 problem is actually occurring.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120 2. Attempt to recreate the problem starting with an invocation of
1255
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
121 XEmacs with `xemacs -no-autoloads'. Quite often, problems are
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
122 due to package interdependencies, and the like. An actual bug
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
123 in XEmacs should be reproducible in a default configuration
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
124 without loading any special packages (or the one or two specific
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
125 packages that cause the bug to appear). If you have trouble
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
126 getting anything to work at all with the above invocation, use
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
127 `xemacs -vanilla' instead. If you need to load your user init
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
128 file or the site file to get the problem to occur, then it has
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
129 something to do with them, and you should try to isolate the
11941b052501 [xemacs-hg @ 2003-02-03 23:35:53 by youngs]
youngs
parents: 1253
diff changeset
130 issue in those files.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132 3. A picture can be worth a thousand words. When reporting an
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133 unusual display, it is generally best to capture the problem in a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
134 screen dump and include that with the problem report. The easiest
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
135 way to get a screen dump is to use the xv program and its grab
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136 function. Save the image as a GIF to keep bandwidth requirements
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137 down without loss of information. MIME is the preferred method
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
138 for making the image attachments.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
139
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
140 ** Getting the Source
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
141 =====================
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
142
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
143 In addition to the normal tar distribution, XEmacs source is now
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
144 available via CVS. Please see
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
145
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
146 http://www.xemacs.org/Develop/cvsaccess.html
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
147
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
148 * Compiling Beta XEmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
149 =======================
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
150
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
151 ** Building an XEmacs from patches
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
152 ==================================
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
153
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
154 All beta releases of XEmacs are included with patches from the previous
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
155 version in an attempt to keep bandwidth requirements down. Patches
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
156 should be applied with the GNU patch program in something like the
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
157 following. Let's say you're upgrading XEmacs 21.5-beta9 to XEmacs
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
158 21.5-beta10 and you have a full unmodified XEmacs 21.5-beta9 source
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
159 tree to work with. Change to the top level directory and issue the
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
160 shell command:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
161
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
162 $ gunzip -c /tmp/xemacs-21.5.9-21.5.10.patch.gz | patch -p1
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
163
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
164 After patching, check to see that no patches were missed by doing
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
165 $ find . -name \*.rej -print
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
166
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
167 Any rejections should be treated as serious problems to be resolved
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
168 before building XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
169
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
170 After seeing that there were no rejections, issue the commands
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
171
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
172 $ ./config.status --recheck
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
173 $ make beta > ./beta.err 2>&1
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
174 $ make check > ./xemacs-make-check.err 2>&1
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
175
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
176 Redirect the output from make to those files because you'll use them
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
177 later when you send off a build report with 'M-x build-report RET'
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
178
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
179 ** Building XEmacs from a full distribution
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
180 ===========================================
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
181
2367
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
182 [1] Locate a convenient place where you have at least 100MB of free space
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
183 and issue the command
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
184
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
185 $ gunzip -c /tmp/xemacs-21.5.10.tar.gz | tar xvf -
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
186
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
187 (or simply `tar zxvf /tmp/xemacs-21.5.10.tar.gz' if you use GNU tar).
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
188
2367
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
189 [2] cd to the top level directory and issue an appropriate configure
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
190 command.
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
191
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
192 [3] Run `configure'. If you are new, just consider running it with no
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
193 options, to see if you can get a succesful build. When you are more
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
194 experienced, you should put various flags in. Here is what we suggest:
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
195
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
196 [a] It's a good idea to use
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
197
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
198 --extra-verbose
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
199 --debug
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
200 --memory-usage-stats
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
201 --error-checking=all
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
202
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
203 These turn on extra debugging info and checks. The last one in particular
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
204 will add a great deal of extra error-checking -- which will slow your XEmacs
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
205 down somewhat but is likely to catch bugs much sooner and make your bug
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
206 reports much more useful.
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
207
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
208 [b] You should also strongly consider
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
209
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
210 --with-mule
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
211 --use-pkcc
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
212 --pdump
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
213 --with-clash-detection
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
214 --with-wmcommand
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
215 --with-xfs
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
216
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
217 These turn on optional features, which can always use testing.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
218
2367
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
219 [c] If you have gcc, consider using
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
220
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
221 --compiler=gcc
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
222 --xemacs-compiler=g++
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
223
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
224 This will compile XEmacs using g++, which will turn on a lot of additional
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
225 error-checking.
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
226
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
227 [d] If your packages are not installed under /usr/local, you should add a
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
228 line like
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
229
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
230 --package-path=~/.xemacs::/xemacs/site-packages:/xemacs/xemacs-packages:/xemacs/mule-packages
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
231
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
232 [e] If you want to build multiple configurations from the same source tree,
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
233 make separate build directories for each configuration, run `configure' from
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
234 the top level of these (currently empty) directories and use an option like
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
235
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
236 --srcdir=/xemacs/source-tree
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
237
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
238 (or wherever your source tree is). This will magically create symlinks and
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
239 populate your build directory.
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
240
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
241 [f] Use --site-prefixes (or --site-includes and --site-libraries) if you have
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
242 some packages that XEmacs can compile with that are located in an unusual
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
243 place. For example:
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
244
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
245 --site-prefixes=/usr/local/pgsql:/usr/local/BerkeleyDB.4.1
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
246
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
247 [g] Depending on your build environment, consuder setting or not setting
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
248 options for menubars, scrollbars, window systems, native sound, etc. If
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
249 you're not sure, leave them out and let configure do the auto-detection.
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
250 (If you get bugs compiling GTK, use `--with-gtk=no --with-gnome=no'.)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
251
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
252 Part of the configure output is a summary that looks something
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
253 like the following. (this summary is also available as the file
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
254 'Installation' in the top directory of your build tree, and via
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
255 the command 'M-x describe-installation RET').
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
256
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
257 uname -a: Linux eicq 2.4.20 #1 Wed Dec 18 02:14:29 EST 2002 i586 unknown
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
258
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
259 ./configure '--extra-verbose' '--site-prefixes=/usr/local/pgsql:/usr/local/BerkeleyDB.4.1' '--dynamic=yes' '--with-gtk=no' '--with-gnome=no' '--with-toolbars' '--with-wmcommand' '--with-athena=next' '--with-menubars=lucid' '--with-scrollbars=athena' '--with-dialogs=athena' '--with-widgets=athena' '--with-gif' '--with-sound=native,noesd' '--with-site-lisp=no' '--with-site-modules' '--pdump' '--with-mule' '--with-xfs' '--debug' '--error-checking=all' '--memory-usage-stats' '--use-kkcc' '--with-clash-detection'
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
260
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
261
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
262 XEmacs 21.5-b10 "burdock" (+CVS-20030131) configured for `i586-pc-linux'.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
263
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
264
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
265 Compilation / Installation:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
266 Source code location: /usr/local/src/xemacs
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
267 Installation prefix: /usr/local
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
268 Additional prefixes: /usr/local/pgsql /usr/local/BerkeleyDB.4.1
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
269 Operating system description file: `s/linux.h'
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
270 Machine description file: `m/intel386.h'
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
271 Compiler: gcc -Wall -Wno-switch -Winline -Wmissing-prototypes -Wsign-compare -Wundef -Wstrict-prototypes -Wshadow -Wmissing-declarations -O1 -ggdb3 -Wall -Wchar-subscripts -Wunused -Wundef -Wshadow -Wsign-compare -Wmissing-declarations -march=k6
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
272 Relocating allocator for buffers: no
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
273 GNU version of malloc: yes
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
274 - Using Doug Lea's new malloc from the GNU C Library.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
275
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
276 Window System:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
277 Compiling in support for the X window system:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
278 - X Windows headers location: /usr/X11/include
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
279 - X Windows libraries location: /usr/X11/lib
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
280 - Handling WM_COMMAND properly.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
281 Compiling in support for the Athena widget set:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
282 - Athena headers location: X11/neXtaw
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
283 - Athena library to link: neXtaw
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
284 Using Lucid menubars.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
285 Using Athena scrollbars.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
286 Using Athena dialog boxes.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
287 Using Athena native widgets.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
288
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
289 TTY:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
290 Compiling in support for ncurses.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
291 Compiling in support for GPM (General Purpose Mouse).
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
292
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
293 Images:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
294 Compiling in support for GIF images (builtin).
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
295 Compiling in support for XPM images.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
296 Compiling in support for PNG images.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
297 Compiling in support for JPEG images.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
298 Compiling in support for TIFF images.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
299 Compiling in support for X-Face message headers.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
300
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
301 Sound:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
302 Compiling in support for sound (native).
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
303
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
304 Databases:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
305 Compiling in support for Berkeley database.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
306 Compiling in support for PostgreSQL.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
307 - Using PostgreSQL header file: libpq-fe.h
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
308 - Using PostgreSQL V7 bindings.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
309
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
310 Internationalization:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
311 Compiling in support for Mule (multi-lingual Emacs).
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
312 Compiling in support for XIM (X11R5+ I18N input method).
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
313 - Using raw Xlib to provide XIM support.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
314 - Using XFontSet to provide bilingual menubar.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
315
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
316 Mail:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
317 Compiling in support for "dot-locking" mail spool file locking method.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
318
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
319 Other Features:
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
320 Inhibiting IPv6 canonicalization at startup.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
321 Compiling in support for dynamic shared object modules.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
322 Using the new GC algorithms.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
323 Using the new portable dumper.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
324 Compiling in support for extra debugging code.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
325 WARNING: ---------------------------------------------------------
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
326 WARNING: Compiling in support for runtime error checking.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
327 WARNING: XEmacs will run noticeably more slowly as a result.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
328 WARNING: Error checking is on by default for XEmacs beta releases.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
329 WARNING: ---------------------------------------------------------
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
330
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
331
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
332
2367
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
333 [4] Then...
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
334
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
335 $ make > ./beta.err 2>&1
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
336 $ make check > ./xemacs-make-check.err 2>&1
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
337
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
338 ...and you should have a working XEmacs.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
339
2367
ecf1ebac70d8 [xemacs-hg @ 2004-11-04 23:05:23 by ben]
ben
parents: 1335
diff changeset
340 [5] After you have verified that you have a functional editor, fire up
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
341 your favorite mail program and send a build report to
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
342 <xemacs-buildreports@xemacs.org>.
649
37441ddea94d [xemacs-hg @ 2001-08-22 21:03:16 by adrian]
adrian
parents: 440
diff changeset
343
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
344 Preferably this is best done from XEmacs, following these simple steps:
649
37441ddea94d [xemacs-hg @ 2001-08-22 21:03:16 by adrian]
adrian
parents: 440
diff changeset
345
37441ddea94d [xemacs-hg @ 2001-08-22 21:03:16 by adrian]
adrian
parents: 440
diff changeset
346 M-x customize-group RET build-report RET
37441ddea94d [xemacs-hg @ 2001-08-22 21:03:16 by adrian]
adrian
parents: 440
diff changeset
347 M-x build-report RET
37441ddea94d [xemacs-hg @ 2001-08-22 21:03:16 by adrian]
adrian
parents: 440
diff changeset
348
37441ddea94d [xemacs-hg @ 2001-08-22 21:03:16 by adrian]
adrian
parents: 440
diff changeset
349 See also
1253
fa27ca2c798c [xemacs-hg @ 2003-02-03 22:50:06 by youngs]
youngs
parents: 1250
diff changeset
350 <http://www.xemacs.org/Releases/Public-21.2/tester.html#reporting>
649
37441ddea94d [xemacs-hg @ 2001-08-22 21:03:16 by adrian]
adrian
parents: 440
diff changeset
351
37441ddea94d [xemacs-hg @ 2001-08-22 21:03:16 by adrian]
adrian
parents: 440
diff changeset
352 If you create the report manually by other means, here is what the
37441ddea94d [xemacs-hg @ 2001-08-22 21:03:16 by adrian]
adrian
parents: 440
diff changeset
353 build report should include:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
354
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
355 1. Your hardware configuration (OS version, etc.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
356
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
357 2. Version numbers of software in use (X11 version, system library
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
358 versions if appropriate, graphics library versions if appropriate).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
359 If you're on a system like Linux, include all the version numbers
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
360 you can because chances are it makes a difference.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
361
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
362 3. The options given to configure
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
363
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
364 4. The configuration report illustrated above
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
365
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
366 For convenience all of the above items are placed in a file called
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
367 `Installation' in the top level build directory. They are also
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
368 available by performing M-x describe-installation inside XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
369
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
370 5. Any other unusual items you feel should be brought to the attention
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
371 of the developers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
372
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
373
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
374 * Packages
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
375 ==========
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
376
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
377 [Note: these instructions have been partly updated, but not carefully
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
378 reviewed in some time. Caveat tester.]
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
379
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
380 Starting with XEmacs 21.1, much of the functionality of XEmacs has
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
381 been unbundled into "the packages." For more information about the
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
382 package system, see the Info nodes on Packages (in the XEmacs User
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
383 Manual) and on Packaging (in the Lisp Reference).
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
384
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
385 When bootstrapping XEmacs, you may need to manually install some
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
386 packages (at least xemacs-base and efs). These packages are available
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
387 by FTP at <ftp://ftp.xemacs.org/pub/xemacs/packages/>.
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
388
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
389 ** Binary package installation
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
390 ==============================
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
391
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
392 Prerequisite: XEmacs 21.0-b1.
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
393
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
394 Binary packages are complete entities that can be untarred at the top
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
395 level of an XEmacs package hierarchy and work at runtime. To install files
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
396 in this directory, run the command `M-x package-admin-add-binary-package'
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
397 and fill in appropriate values to the prompts.
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
398
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
399 ** Manual procedures for package management
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
400 ===========================================
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
401
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
402 Prerequisite: XEmacs 21.0
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
403
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
404 When adding and deleting files from a lisp directory the
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
405 auto-autoloads.el (global symbols) and custom-load.el (Customization
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
406 groups) must be kept in synch. Assuming one is manipulating a
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
407 directory called `lisp-utils', the command to rebuild the
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
408 auto-autoloads.el file is:
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
409
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
410 xemacs -vanilla -batch \
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
411 -eval \("setq autoload-package-name \"lisp-utils\""\) \
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
412 -f batch-update-directory lisp-utils
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
413
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
414 The command to rebuild the custom-load.el file is:
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
415
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
416 xemacs -vanilla -batch -f Custom-make-dependencies lisp-utils
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
417
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
418 To byte-compile both of these files the command is:
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
419
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
420 xemacs -vanilla -batch -f batch-byte-compile \
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
421 lisp-utils/auto-autoloads.el lisp-utils/custom-load.el
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
422
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
423 Of course, being a beta tester, you'd be aware that it is much easier
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
424 to manage your XEmacs packages with PUI.
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
425
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
426 ** Building XEmacs and XEmacs packages from scratch
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
427 ===================================================
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
428
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
429 To build everything completely from scratch isn't hard, just time
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
430 consuming.
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
431
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
432 *** Step 1 - grab the sources (core and packages)
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
433
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
434 $ cvs -d :pserver:cvs@cvs.xemacs.org:/pack/xemacscvs login
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
435 [password: "cvs" (sans quotes)]
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
436
1301
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
437 $ cvs -d :pserver:cvs@cvs.xemacs.org:/pack/xemacscvs co -d xemacs-21.5 xemacs
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
438
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
439 $ cvs -d :pserver:cvs@cvs.xemacs.org:/pack/xemacscvs co packages
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
440
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
441 *** Step 2 - build XEmacs
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
442
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
443 $ cd xemacs-21.5
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
444 $ ./configure [options...]
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
445 $ make > ./beta.err 2>&1
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
446 $ make check > ./xemacs-make-check.err 2>&1
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
447
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
448 And optionally:
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
449
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
450 $ make install > ./xemacs-make-install.err 2>&1
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
451
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
452 *** Step 3 - build and install the packages
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
453
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
454 $ cd packages
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
455 $ cp Local.rules.template Local.rules
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
456
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
457 Then edit Local.rules to suit your needs/environment
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
458 see: (Info-goto-node "(xemacs)Local.rules file") for details about
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
459 this file.
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
460
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
461 And then:
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
462
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
463 $ make install
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
464
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
465 * Improving XEmacs
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
466 =================
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
467
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
468 ** Creating patches for submission
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
469 ==================================
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
470
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
471 All patches to XEmacs that are seriously proposed for inclusion (eg,
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
472 bug fixes) should be mailed to <xemacs-patches@xemacs.org>. Each
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
473 patch will be reviewed by the patches review board, and will be
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
474 acknowledged and added to the distribution, or rejected with an
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
475 explanation. Progress of the patch is tracked on the XEmacs Patches
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
476 mailing list, which is open subscription. (If a patch is simply
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
477 intended to facilitate discussion, "I mean something that works like
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
478 this but this is really rough", a Cc to XEmacs Patches is optional,
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
479 but doesn't hurt.)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
480
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
481 Patches to XEmacs Lisp packages should be sent to the maintainer of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
482 the package. If the maintainer is listed as `XEmacs Development Team'
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
483 patches should be sent to <xemacs-patches@xemacs.org>.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
484
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
485 Emailed patches should preferably be sent in MIME format and quoted
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
486 printable encoding (if necessary).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
487
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
488 The simplest way to create well-formed patches is to use CVS and
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
489 Didier Verna's Patcher library (available as patcher.el in the
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
490 xemacs-devel package). Patcher is new and requires some setup, but
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
491 most of the core developers are now using it for their own patches.
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
492 Patcher also can be configured to create patches for several projects,
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
493 and recognize the project from the directory it is invoked in. This
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
494 makes it a useful general tool (as long as XEmacs-style patches are
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
495 accepted at your other projects, which is likely since they conform to
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
496 the GNU standards).
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
497
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
498 When making patches by hand, please use the `-u' option, or if your
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
499 diff doesn't support it, `-c'. Using ordinary (context-free) diffs
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
500 are notoriously prone to error, since line numbers tend to change when
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
501 others make changes to the same source file.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
502
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
503 An example of the `diff' usage:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
504
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
505 $ diff -u OLDFILE NEWFILE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
506
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
507 -or-
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
508
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
509 $ diff -c OLDFILE NEWFILE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
510
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
511 Also, it is helpful if you create the patch in the top level of the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
512 XEmacs source directory:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
513
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
514 $ cp -p lwlib/xlwmenu.c lwlib/xlwmenu.c.orig
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
515 hack, hack, hack....
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
516 $ diff -u lwlib/xlwmenu.c.orig lwlib/xlwmenu.c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
517
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
518 Also note that if you cut & paste from an xterm to an XEmacs mail buffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
519 you will probably lose due to tab expansion. The best thing to do is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
520 to use an XEmacs shell buffer to run the diff commands, or ...
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
521 M-x cd to the appropriate directory, and issue the command `C-u M-!' from
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
522 within XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
523
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
524 Patches should be as single-minded as possible. Mammoth patches can
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
525 be very difficult to place into the right slot. They are much easier
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
526 to deal with when broken down into functional or conceptual chunks.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
527 The patches submitted by Kyle Jones and Hrvoje Niksic are stellar
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
528 examples of how to "Do The Right Thing".
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
529
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
530 Each patch should be accompanied by an update to the appropriate
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
531 ChangeLog file. Guidelines for writing ChangeLog entries is governed
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
532 by the GNU coding standards. Please see
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
533 <http://www.gnu.org/prep/standards_toc.html> [Change Logs section]
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
534 for details.
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
535
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
536 Do not submit context diffs (either -c or -u) of ChangeLogs. Because
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
537 of the "stack" nature of ChangeLogs (new entries are always pushed on
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
538 the top), context diffs will fail to apply more often than they
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
539 succeed. Simply cutting and pasting the entry from an Emacs buffer to
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
540 the mail buffer (beware of tab expansion!) is probably easiest. The
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
541 Patcher library also will set up your ChangeLogs for you, and copy
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
542 them to the mail. Context-less unified diffs (-U 0) are also
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
543 acceptable.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
544
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
545 *** Patch discussion etiquette
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
546 -------------------------------
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
547
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
548 If you intend a patch for _application_ to the sources as is, _always_
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
549 post it to xemacs-patches, even if there are minor points you would
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
550 like to have discussed by others. Not doing so will resulting in
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
551 patches getting "lost". If you expect that the patch will not be
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
552 acceptable, but are using it to stimulate discussion, then don't post
1250
f00ca2822f4e [xemacs-hg @ 2003-02-02 23:50:31 by youngs]
youngs
parents: 1044
diff changeset
553 to xemacs-patches. Intermediate cases are up to your judgment;
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
554 unless you're sure you'll follow up with a "real" patch, better to err
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
555 on the side of posting to xemacs-patches.
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
556
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
557 Discussion of the _content_ of the patch (ie responses to reviewer
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
558 comments beyond "that's right, ok, I'll do it your way") should _always_
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
559 be posted to xemacs-beta or to xemacs-design. If you're not sure
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
560 which is more appropriate, send it to xemacs-beta. That is the most
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
561 widely read channel.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
562
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
563 If discussion results in a bright idea and you come up with a new
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
564 patch, normally you should post it to both mailing lists. The people
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
565 discussing on XEmacs Beta will want to know the outcome of the thread,
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
566 and you need to submit to XEmacs Patches as the "list of record."
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
567
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
568 If the old patch has been applied to CVS, then just submit the new one
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
569 as usual. If it has not been applied, then it is best to submit a new
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
570 patch against CVS. If possible do this as a reply to the original
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
571 patch post, or something following it in the thread. (The point is to
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
572 get the original patch post's Message-ID in your References header.)
1044
911faaa82855 [xemacs-hg @ 2002-10-09 12:43:09 by stephent]
stephent
parents: 1024
diff changeset
573 In this case, also use the keyword SUPERSEDES in the Subject header to
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
574 indicate that the old patch is no longer valid, and that this one
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
575 replaces it.
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
576
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
577 These rules will result in a fair number of cross posts, but we don't
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
578 yet have a better way to handle that.
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
579
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
580 Note: Developers should never post to xemacs-patches unless there is a
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
581 patch in the post. We plan to enforce this with an automatic filter.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
582
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
583 The exceptions are administrative. If you have commit authorization,
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
584 then post a short COMMIT notice to xemacs-patches when you commit to
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
585 CVS. Members of the Review Board will also post short notices of
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
586 administrative action (APPROVE, VETO, QUERY, etc) to xemacs-patches.
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
587
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
588 ** Large contributions
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
589 ======================
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
590
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
591 Perhaps you have a whole new mode, or a major synchronization with
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
592 upstream for a neglected package, or a synchronization with GNU Emacs
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
593 you would like to contribute. We welcome such contributions, but they
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
594 are likely to be relatively controversial, generate more comments and
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
595 requests for revision, and take longer to integrate. Please be
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
596 patient with the process.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
597
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
598 *** Updates to existing packages
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
599 --------------------------------
743
968a715e8c6f [xemacs-hg @ 2002-02-04 13:19:13 by stephent]
stephent
parents: 649
diff changeset
600
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
601 If a package has gotten a bit out of date, or even started to bitrot,
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
602 we welcome patches to synchronize it with upstream/GNU Emacs versions.
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
603 Most packages end up varying somewhat from their GNU origins. See
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
604 "Syncing with GNU Emacs" for hints. Note that if you do a reasonably
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
605 large amount of syncing with GNU Emacs, you should log this in the
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
606 file itself as well as in the ChangeLog.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
607
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
608 If the package is important to you, please consider becoming the
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
609 maintainer. (See "New packages", below.)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
610
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
611 *** New packages
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
612 ----------------
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
613
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
614 If you have a new mode or other large addition that does not require
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
615 changes to the core, please consider submitting it as a package, and
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
616 becoming the maintainer. You get direct commit privileges to the
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
617 repository for your package, "approval" privileges for your own
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
618 patches as well as third party patches to your package, and some
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
619 degree of veto power over patches you don't like. In return, you are
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
620 expected to maintain friendly liaison with the upstream developer (if
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
621 you aren't the upstream developer), keep watch on the XEmacs Patches
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
622 list for relevant patches, and be available by email to other
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
623 developers for discussion of changes that impact your package. It's
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
624 also a pretty standard route to the "core" development group, where we
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
625 have plenty of extra work waiting for volunteers.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
626
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
627 You don't have to become the maintainer, but it virtually ensures
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
628 rapid acceptance of the package.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
629
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
630 For help in creating new packages, see the (rather sparse) discussions
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
631 in the XEmacs User's Guide and the Lisp Reference Manual. The XEmacs
1301
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
632 Package Release Engineer (Ville Skyttä <scop@xemacs.org> is currently
1335
860e53b6fdce [xemacs-hg @ 2003-03-03 07:18:07 by scop]
scop
parents: 1301
diff changeset
633 serving with Norbert Koch <viteno@xemacs.org> assisting; Steve
1301
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
634 Youngs <youngs@xemacs.org> and Stephen Turnbull <stephen@xemacs.org>
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
635 also can help) are the most likely sources of advice.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
636
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
637 *** Syncing with GNU Emacs
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
638 --------------------------
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
639
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
640 Syncing with GNU Emacs is an important activity. Although each
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
641 version has its advantages and areas of concentration, it is very
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
642 desirable that common functionality share specifications and APIs.
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
643 When porting GNU code to XEmacs, the following points should be given
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
644 special attention:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
645
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
646 o Recent GNU Emacsen cannot be built without Mule, but XEmacs can.
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
647 Make sure your changes do not assume the presence of Mule.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
648
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
649 o GNU Emacs nomenclature often differs from that of XEmacs.
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
650 Sometimes syncing the names is desirable, other times not.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
651
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
652 o GNU Emacs functionality often differs from that of XEmacs.
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
653 Syncing functionality is often controversial.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
654
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
655 It is important that you let other developers know that
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
656 synchronization has taken place, to what degree, and when. For this
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
657 purpose, we use comments of the form
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
658
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
659 /* Synched up with: FSF 21.3 by Stephen Turnbull */
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
660
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
661 in the source file itself, as the last element of the prefatory
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
662 material (copyright notice and commentary). Obviously the comment
1301
4322bab48cfb [xemacs-hg @ 2003-02-14 23:33:15 by youngs]
youngs
parents: 1255
diff changeset
663 marker needs to be changed to leading semicolons for Lisp, but
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
664 otherwise the format is the same.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
665
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
666 Of course you should note syncing as the purpose in the ChangeLog,
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
667 too. But entries get buried deep in the ChangeLog file, and may even
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
668 get moved to a separate ChangeLog.OLD file for rarely synched files.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
669
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
670 Rather than dates we use the version of GNU Emacs to sync to. If the
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
671 synchronization is partial, add a new comment describing what has
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
672 actually been synched, leaving the description of the last full sync
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
673 in place. At each full sync, remove all previous synchronization
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
674 comments.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
675
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
676 This applies to Lisp that we have broken out into packages, but
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 743
diff changeset
677 remains in the GNU Emacs core, as well to core Lisp in XEmacs.