annotate man/beta.texi @ 5753:dbd8305e13cb

Warn about non-string non-integer ARG to #'gensym, bytecomp.el. lisp/ChangeLog addition: 2013-08-21 Aidan Kehoe <kehoea@parhasard.net> * bytecomp.el: * bytecomp.el (gensym): * bytecomp.el (byte-compile-gensym): New. Warn that gensym called in a for-effect context is unlikely to be useful. Warn about non-string non-integer ARGs, this is incorrect. Am not changing the function to error with same, most code that makes the mistake is has no problems, which is why it has survived so long. * window-xemacs.el (save-window-excursion/mapping): * window.el (save-window-excursion): Call #'gensym with a string, not a symbol.
author Aidan Kehoe <kehoea@parhasard.net>
date Wed, 21 Aug 2013 19:02:59 +0100
parents d11efddf3617
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
1 \input texinfo @c -*-texinfo-*-
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
2
2547
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
3 @c This file is in Texinfo format.
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
4 @c If for some reason you do not have the formatted version available,
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
5 @c this file is more or less readable as plain text.
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
6 @c Skip to the line beginning "@node Introduction".
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
7
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
8 @c %**start of header
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
9 @setfilename ../info/beta.info
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
10 @settitle Info on beta versions of XEmacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
11 @direntry
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
12 * Beta: (beta). Info on beta versions of XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
13 @end direntry
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
14 @c footnotestyle separate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
15 @c paragraphindent 2
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
16 @c %**end of header
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
17
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
18 @ifinfo
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
19 This file describes info relevant to beta versions of XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
20
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
21 Copyright @copyright{} 2005 Ben Wing.
2547
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
22 Copyright @copyright{} 2005 Free Software Foundation, Inc.
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
23
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
24 This file is part of XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
25
5402
308d34e9f07d Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents: 4708
diff changeset
26 XEmacs is free software: you can redistribute it and/or modify it
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
27 under the terms of the GNU General Public License as published by the
5402
308d34e9f07d Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents: 4708
diff changeset
28 Free Software Foundation, either version 3 of the License, or (at your
308d34e9f07d Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents: 4708
diff changeset
29 option) any later version.
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
30
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
31 XEmacs is distributed in the hope that it will be useful, but WITHOUT
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
32 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
33 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
34 for more details.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
35
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
36 You should have received a copy of the GNU General Public License
5741
d11efddf3617 Fix texinfo constructs that are rejected by texinfo 5.x. See xemacs-patches
Jerry James <james@xemacs.org>
parents: 5402
diff changeset
37 along with XEmacs. If not, see <http://www.gnu.org/licenses/>.
d11efddf3617 Fix texinfo constructs that are rejected by texinfo 5.x. See xemacs-patches
Jerry James <james@xemacs.org>
parents: 5402
diff changeset
38 @end ifinfo
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
39
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
40 @c Combine indices.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
41 @syncodeindex fn cp
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
42 @syncodeindex vr cp
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
43 @syncodeindex ky cp
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
44 @syncodeindex pg cp
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
45 @syncodeindex tp cp
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
46
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
47 @setchapternewpage odd
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
48 @finalout
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
49
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
50 @titlepage
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
51 @title Info on beta versions of XEmacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
52
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
53 @author XEmacs Development Team
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
54 @page
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
55 @vskip 0pt plus 1fill
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
56
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
57 @noindent
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
58 Copyright @copyright{} 2006 Free Software Foundation. @*
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
59 Copyright @copyright{} 2005 Ben Wing. @*
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
60
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
61 This file is part of XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
62
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
63 XEmacs is free software; you can redistribute it and/or modify it
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
64 under the terms of the GNU General Public License as published by the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
65 Free Software Foundation; either version 2, or (at your option) any
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
66 later version.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
67
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
68 XEmacs is distributed in the hope that it will be useful, but WITHOUT
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
69 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
70 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
71 for more details.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
72
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
73 You should have received a copy of the GNU General Public License
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
74 along with XEmacs; see the file COPYING. If not, write to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
75 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
76 Boston, MA 02111-1307, USA.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
77 @end titlepage
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
78 @page
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
79
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
80 @ifinfo
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
81 @node Top, Introduction, (dir), (dir)
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
82 This Info file describes info relevant to beta versions of XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
83 @menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
84 * Introduction::
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
85 * Building Beta XEmacs::
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
86 * Packages::
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
87 * Reporting Problems::
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
88 * Improving XEmacs::
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
89 * Index::
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
90
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
91 @detailmenu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
92 --- The Detailed Node Listing ---
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
93
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
94 Introduction
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
95
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
96 * Mailing Lists::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
97 * Beta Release Schedule::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
98
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
99 Mailing Lists
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
100
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
101 * XEmacs Beta Mailing List::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
102 * XEmacs Patches Mailing List::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
103 * XEmacs Design Mailing List::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
104 * List Administrivia::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
105 * Managing your subscription via the Web::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
106 * Subscribing by e-mail::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
107 * Unsubscribing by e-mail::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
108
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
109 Building Beta XEmacs
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
110
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
111 * Getting the Source::
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
112 * Building an XEmacs from patches::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
113 * Building XEmacs from a full distribution::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
114
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
115 Packages
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
116
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
117 * Binary package installation::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
118 * Manual procedures for package management::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
119 * Building XEmacs and XEmacs packages from scratch::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
120
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
121 Improving XEmacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
122
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
123 * Creating patches for submission::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
124 * Large contributions::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
125
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
126 Creating patches for submission
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
127
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
128 * Patch discussion etiquette::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
129
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
130 Large contributions
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
131
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
132 * Updates to existing packages::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
133 * New packages::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
134 * Syncing with GNU Emacs::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
135
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
136 @end detailmenu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
137 @end menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
138
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
139 @end ifinfo
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
140
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
141
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
142 @node Introduction, Building Beta XEmacs, Top, Top
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
143 @chapter Introduction
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
144
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
145 You are running a potentially unstable version of XEmacs. Please do
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
146 not report problems with Beta XEmacs to comp.emacs.xemacs. Report
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
147 them to @uref{mailto:xemacs-beta@@xemacs.org}, preferably with
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
148 @kbd{M-x report-xemacs-bug RET}.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
149
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
150 @menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
151 * Mailing Lists::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
152 * Beta Release Schedule::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
153 @end menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
154
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
155
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
156 @node Mailing Lists, Beta Release Schedule, Introduction, Introduction
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
157 @section Mailing Lists
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
158
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
159 @menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
160 * XEmacs Beta Mailing List::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
161 * XEmacs Patches Mailing List::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
162 * XEmacs Design Mailing List::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
163 * List Administrivia::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
164 * Managing your subscription via the Web::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
165 * Subscribing by e-mail::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
166 * Unsubscribing by e-mail::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
167 @end menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
168
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
169
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
170 @node XEmacs Beta Mailing List, XEmacs Patches Mailing List, Mailing Lists, Mailing Lists
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
171 @subsection XEmacs Beta Mailing List
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
172
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
173 If you are not subscribed to the XEmacs beta list you should be.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
174 Currently all discussion of development issues, including bug reports
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
175 and coding discussion, takes place on the XEmacs Beta mailing list.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
176 Only patches and administrative actions regarding patches are sent
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
177 elsewhere (to the XEmacs Patches list).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
178
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
179
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
180 @node XEmacs Patches Mailing List, XEmacs Design Mailing List, XEmacs Beta Mailing List, Mailing Lists
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
181 @subsection XEmacs Patches Mailing List
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
182
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
183 XEmacs Patches records proposed changes to XEmacs, and their
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
184 disposition. It is open subscription, and all patches that are
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
185 seriously proposed for inclusion in XEmacs should be posted here. You
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
186 can follow progress of your patch by subscribing to the mailing list
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
187 or in the archives.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
188
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
189 Besides patches, only actions by members of the XEmacs Review Board
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
190 should be posted to this list. All discussion should be redirected to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
191 XEmacs Beta or XEmacs Design.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
192
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
193
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
194 @node XEmacs Design Mailing List, List Administrivia, XEmacs Patches Mailing List, Mailing Lists
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
195 @subsection XEmacs Design Mailing List
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
196
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
197 XEmacs Design is for design discussions such as adding major features
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
198 or whole modules, or reimplementation of existing functions, to XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
199
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
200 @node List Administrivia, Managing your subscription via the Web, XEmacs Design Mailing List, Mailing Lists
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
201 @subsection List Administrivia
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
202
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
203 In the descriptions below, the word LIST (all uppercase) is a
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
204 variable. Substitute "beta", "design", or "patches" as appropriate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
205 (to get "xemacs-beta" as the mailbox for the XEmacs Beta mailing list,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
206 or @uref{http://www.xemacs.org/Lists/#xemacs-beta} for its URL).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
207
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
208 The XEmacs mailing lists are managed by the Mailman mailing list package,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
209 and the usual Mailman commands work. Do not send mailing list requests to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
210 the main address (@uref{mailto:xemacs-LIST@@xemacs.org}), always send them
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
211 to @uref{mailto:xemacs-LIST-request@@xemacs.org}. If you have problems with
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
212 the list itself, they should be brought to the attention of the XEmacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
213 Mailing List manager @uref{mailto:list-manager@@xemacs.org} (the same
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
214 mailbox, "list-manager", for all lists). All public mailing lists have
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
215 searchable archives. The URL is
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
216
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
217 @uref{http://list-archive.xemacs.org/xemacs-LIST}
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
218
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
219 Note that the xemacs-LIST-admin address is used internally by the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
220 Mailman software; it is NOT a synonym for xemacs-LIST-request.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
221
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
222
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
223 @node Managing your subscription via the Web, Subscribing by e-mail, List Administrivia, Mailing Lists
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
224 @subsection Managing your subscription via the Web
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
225
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
226 Subscription, unsubscription, and options (such as digests and
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
227 temporarily suspending delivery) can be accomplished via the web
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
228 interface at @uref{http://www.xemacs.org/Lists/#xemacs-LIST}.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
229
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
230
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
231 @node Subscribing by e-mail, Unsubscribing by e-mail, Managing your subscription via the Web, Mailing Lists
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
232 @subsection Subscribing by e-mail
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
233
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
234 Send an email message to @uref{mailto:xemacs-LIST-request@@xemacs.org} with
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
235 @samp{subscribe} (without the quotes) as the BODY of the message.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
236
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
237
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
238 @node Unsubscribing by e-mail, , Subscribing by e-mail, Mailing Lists
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
239 @subsection Unsubscribing by e-mail
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
240
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
241 Send an email message to @uref{mailto:xemacs-LIST-request@@xemacs.org} with
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
242 @samp{unsubscribe} (without the quotes) as the BODY of the message.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
243
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
244
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
245 @node Beta Release Schedule, , Mailing Lists, Introduction
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
246 @section Beta Release Schedule
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
247
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
248 We would like to achieve a weekly or fortnightly release cycle (you
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
249 know the Open Source model: release early, release often), and in a
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
250 perfect world that would indeed be the case. There are at least three
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
251 things that often get in the way of that goal: 1) The Release Manager
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
252 has a life outside of XEmacs (hard to believe, I know, but true),
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
253 2) we like to make releases that will build (at least on the Release
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
254 Manager's box), and 3) Murphy likes to throw a spanner in the works
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
255 right when you least expect it (Murphy's Law: Whatever can go wrong,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
256 will go wrong).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
257
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
258 If you'd like to keep right up to date and ride the bleeding edge, use
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
259 CVS (see @uref{http://www.xemacs.org/Develop/cvsaccess.html}). If you
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
260 can't use CVS for some reason and must use FTP, please let us know.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
261 it will make it more likely that we release betas more often.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
262
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
263
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
264 @node Building Beta XEmacs, Packages, Introduction, Top
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
265 @chapter Building Beta XEmacs
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
266
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
267 @menu
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
268 * Getting the Source::
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
269 * Building an XEmacs from patches::
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
270 * Building XEmacs from a full distribution::
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
271 @end menu
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
272
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
273
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
274 @node Getting the Source, Building an XEmacs from patches, Building Beta XEmacs, Building Beta XEmacs
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
275 @section Getting the Source
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
276
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
277 We provide the traditional tarballs and release-to-release patchkits for
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
278 each beta release. @xref{Beta Release Schedule}. These are available
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
279 at
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
280
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
281 @uref{ftp://ftp.xemacs.org/pub/xemacs/beta/}
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
282
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
283 In addition to the normal tar distribution, XEmacs source is now
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
284 available via CVS. Please see
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
285
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
286 @uref{http://www.xemacs.org/Develop/cvsaccess.html}
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
287
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
288 You can also browse the repository via ViewCVS
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
289
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
290 @uref{http://cvs.xemacs.org/}
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
291
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
292
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
293 @node Building an XEmacs from patches, Building XEmacs from a full distribution, Getting the Source, Building Beta XEmacs
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
294 @section Building an XEmacs from patches
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
295
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
296 All beta releases of XEmacs provide patches from the previous version as
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
297 an alternative to keep bandwidth requirements down. These patches are
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
298 actually scripts generated by the @file{makepatch} program, and can be
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
299 run if you have the @file{applypatch} program. Patches may also be
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
300 applied with the GNU patch program in something like the following.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
301 Let's say you're upgrading XEmacs 21.5-beta9 to XEmacs 21.5-beta10 and
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
302 you have a full unmodified XEmacs 21.5-beta9 source tree to work with.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
303 Change to the top level directory and issue the shell command:
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
304
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
305 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
306 $ gunzip -c /tmp/xemacs-21.5.9-21.5.10.patch.gz | patch -p1
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
307 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
308
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
309 After patching, check to see that no patches were missed by doing
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
310
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
311 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
312 $ find . -name \*.rej -print
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
313 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
314
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
315 Any rejections should be treated as serious problems to be resolved
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
316 before building XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
317
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
318 After seeing that there were no rejections, issue the commands
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
319
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
320 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
321 $ ./config.status --recheck
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
322 $ make beta > ./beta.err 2>&1
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
323 $ make check > ./xemacs-make-check.err 2>&1
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
324 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
325
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
326 Redirect the output from make to those files because you'll use them
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
327 later when you send off a build report with @kbd{M-x build-report RET}
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
328
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
329
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
330 @node Building XEmacs from a full distribution, , Building an XEmacs from patches, Building Beta XEmacs
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
331 @section Building XEmacs from a full distribution
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
332
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
333 @enumerate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
334 @item
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
335 Locate a convenient place where you have at least 200MB of free space
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
336 (approximately 100MB for sources and compiled Lisp, and 100MB for
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
337 objects and other generated files) and issue the command
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
338
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
339 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
340 $ gunzip -c /tmp/xemacs-21.5.10.tar.gz | tar xvf -
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
341 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
342
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
343 (or simply @code{tar zxvf /tmp/xemacs-21.5.10.tar.gz} if you use GNU tar).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
344
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
345 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
346 cd to the top level directory and issue an appropriate configure
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
347 command.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
348
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
349 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
350 Run @code{configure}. If you are new, just consider running it with no
4312
1094d6d400fb Spelling fixes.
"Ville Skyttä <scop@xemacs.org>"
parents: 3388
diff changeset
351 options, to see if you can get a successful build. When you are more
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
352 experienced, you should put various flags in. Here is what we suggest:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
353
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
354 @enumerate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
355 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
356 It's a good idea to use
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
357
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
358 @example
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
359 --enable-debug
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
360 --enable-memory-usage-stats
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
361 --enable-error-checking=all
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
362 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
363
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
364 These turn on extra debugging info and checks. The last one in particular
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
365 will add a great deal of extra error-checking -- which will slow your XEmacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
366 down somewhat but is likely to catch bugs much sooner and make your bug
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
367 reports much more useful.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
368
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
369 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
370 You should also strongly consider
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
371
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
372 @example
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
373 --enable-mule
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
374 --enable-kkcc
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
375 --enable-pdump
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
376 --enable-clash-detection
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
377 --with-wmcommand
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
378 --with-xfs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
379 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
380
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
381 These turn on optional features, which can always use testing.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
382
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
383 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
384 If you have gcc, consider using
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
385
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
386 @example
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
387 --with-compiler=gcc
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
388 --with-xemacs-compiler=g++
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
389 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
390
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
391 This will compile XEmacs using g++, which is generally much stricter
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
392 about type-checking than C compilers like gcc.
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
393
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
394 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
395 If your packages are not installed under /usr/local, you should add a
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
396 line like
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
397
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
398 @example
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
399 --with-package-path=~/.xemacs::/xemacs/site-packages:/xemacs/xemacs-packages:/xemacs/mule-packages
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
400 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
401
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
402 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
403 If you want to build multiple configurations from the same source
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
404 tree, make separate build directories for each configuration, run
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
405 @code{configure} from the top level of these (currently empty)
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
406 directories and use an option like
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
407
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
408 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
409 --srcdir=/xemacs/source-tree
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
410 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
411
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
412 (or wherever your source tree is). This will magically create symlinks and
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
413 populate your build directory.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
414
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
415 @item
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
416 Use --with-site-prefixes (or --with-site-includes and
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
417 ---with-site-libraries) if you have some packages that XEmacs can
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
418 compile with that are located in an unusual place. For example:
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
419
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
420 @example
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
421 --with-site-prefixes=/usr/local/pgsql:/usr/local/BerkeleyDB.4.1
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
422 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
423
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
424 @item
4312
1094d6d400fb Spelling fixes.
"Ville Skyttä <scop@xemacs.org>"
parents: 3388
diff changeset
425 Depending on your build environment, consider setting or not setting
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
426 options for menubars, scrollbars, window systems, native sound, etc. If
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
427 you're not sure, leave them out and let configure do the auto-detection.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
428 (If you get bugs compiling GTK, use @code{--with-gtk=no --with-gnome=no}.)
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
429
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
430 Part of the configure output is a summary that looks something
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
431 like the following. (this summary is also available as the file
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
432 'Installation' in the top directory of your build tree, and via
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
433 the command @kbd{M-x describe-installation RET}).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
434
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
435 @example
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
436 uname -a: Darwin laptop.local 7.7.0 Darwin Kernel Version 7.7.0: Sun Nov 7 16:06:51 PST 2004; root:xnu/xnu-517.9.5.obj~1/RELEASE_PPC Power Macintosh powerpc
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
437
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
438 ./configure '--with-site-prefixes=/sw' '--without-ldap' '--with-dynamic=yes' '--with-gtk=no' '--with-gnome=no' '--enable-toolbars' '--with-wmcommand' '--with-athena=3d' '--enable-menubars=lucid' '--enable-scrollbars=athena' '--enable-dialogs=athena' '--enable-widgets=athena' '--with-gif' '--enable-sound=native,noesd' '--with-site-lisp=no' '--with-site-modules' '--enable-pdump' '--enable-mule' '--with-xfs' '--enable-debug' '--enable-error-checking=all' '--enable-memory-usage-stats' '--enable-kkcc' '--enable-clash-detection'
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
439
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
440
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
441 XEmacs 21.5-b19 "chives" (+CVS-20050226) configured for `powerpc-apple-darwin7.7.0'.
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
442
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
443 WARNING: --------------------------------------------------------------
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
444 WARNING: This was produced from a new autoconf-2.5 based configuration.
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
445 WARNING: If this configuration seems buggy then copy etc/configure-2.13
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
446 WARNING: to configure and try again. Also please report the bug.
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
447 WARNING: --------------------------------------------------------------
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
448
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
449 Compilation Environment and Installation Defaults:
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
450 Source code location: /usr/local/src/xemacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
451 Installation prefix: /usr/local
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
452 Additional prefixes: /sw
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
453 Operating system description file: `s/darwin.h'
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
454 Machine description file: `m/powerpc.h'
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
455 Compiler version: gcc (GCC) 3.3 20030304 (Apple Computer, Inc. build 1671)
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
456 - GCC specs file: /usr/libexec/gcc/darwin/ppc/3.3/specs
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
457 - Compiler command: gcc -Wall -Wno-switch -Wundef -Wsign-compare -Wno-char-subscripts -Wpacked -Wpointer-arith -Wunused-parameter -g
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
458 libc version:
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
459 Relocating allocator for buffers: no
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
460 GNU version of malloc: no
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
461 - The GNU allocators don't work with this system configuration.
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
462
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
463 Window System:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
464 Compiling in support for the X window system:
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
465 - X Windows headers location: /usr/X11R6/include
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
466 - X Windows libraries location: /usr/X11R6/lib
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
467 - Handling WM_COMMAND properly.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
468 Compiling in support for the Athena widget set:
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
469 - Athena headers location: X11/Xaw3d
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
470 - Athena library to link: Xaw3d
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
471 Using Lucid menubars.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
472 Using Athena scrollbars.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
473 Using Athena dialog boxes.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
474 Using Athena native widgets.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
475
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
476 TTY:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
477 Compiling in support for ncurses.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
478
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
479 Images:
4708
1cecc3e9f0a0 Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents: 4312
diff changeset
480 Compiling in support for GIF images.
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
481 Compiling in support for XPM images.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
482 Compiling in support for PNG images.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
483 Compiling in support for JPEG images.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
484 Compiling in support for TIFF images.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
485 Compiling in support for X-Face message headers.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
486
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
487 Sound:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
488
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
489 Databases:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
490 Compiling in support for Berkeley database.
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
491 Compiling in support for GNU DBM.
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
492 Compiling in support for PostgreSQL.
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
493 - Using PostgreSQL header file: postgresql/libpq-fe.h
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
494 - Using PostgreSQL V7 bindings.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
495
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
496 Internationalization:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
497 Compiling in support for Mule (multi-lingual Emacs).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
498 Compiling in support for XIM (X11R5+ I18N input method).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
499 - Using raw Xlib to provide XIM support.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
500 - Using XFontSet to provide bilingual menubar.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
501
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
502 Mail:
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
503 Compiling in support for "file" mail spool file locking method.
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
504
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
505 Other Features:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
506 Inhibiting IPv6 canonicalization at startup.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
507 Compiling in support for dynamic shared object modules.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
508 Using the new GC algorithms.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
509 Using the new portable dumper.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
510 Compiling in support for extra debugging code.
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
511 Compiling in support for runtime error checking.
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
512 WARNING: ---------------------------------------------------------
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
513 WARNING: XEmacs will run noticeably more slowly as a result.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
514 WARNING: Error checking is on by default for XEmacs beta releases.
2647
89e2f8e3f660 [xemacs-hg @ 2005-03-10 11:44:17 by malcolmp]
malcolmp
parents: 2547
diff changeset
515 WARNING: ---------------------------------------------------------
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
516 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
517 @end enumerate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
518
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
519
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
520 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
521 Then...
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
522
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
523 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
524 $ make > ./beta.err 2>&1
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
525 $ make check > ./xemacs-make-check.err 2>&1
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
526 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
527
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
528 ...and you should have a working XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
529
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
530 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
531 After you have verified that you have a functional editor, fire up
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
532 your favorite mail program and send a build report to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
533 @uref{mailto:xemacs-buildreports@@xemacs.org}.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
534
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
535 Preferably this is best done from XEmacs, following these simple steps:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
536
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
537 @enumerate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
538 @kbd{M-x customize-group RET build-report RET}
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
539 @kbd{M-x build-report RET}
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
540 @end enumerate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
541
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
542 See also
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
543 @uref{http://www.xemacs.org/Releases/Public-21.2/tester.html#reporting}
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
544
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
545 If you create the report manually by other means, here is what the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
546 build report should include:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
547
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
548 @enumerate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
549 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
550 Your hardware configuration (OS version, etc.)
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
551
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
552 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
553 Version numbers of software in use (X11 version, system library
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
554 versions if appropriate, graphics library versions if appropriate).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
555 If you're on a system like Linux, include all the version numbers
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
556 you can because chances are it makes a difference.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
557
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
558 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
559 The options given to configure
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
560
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
561 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
562 The configuration report illustrated above
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
563
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
564 For convenience all of the above items are placed in a file called
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
565 `Installation' in the top level build directory. They are also
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
566 available by performing @kbd{M-x describe-installation} inside XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
567
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
568 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
569 Any other unusual items you feel should be brought to the attention
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
570 of the developers.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
571 @end enumerate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
572 @end enumerate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
573
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
574
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
575 @node Packages, Reporting Problems, Building Beta XEmacs, Top
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
576 @chapter Packages
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
577
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
578 [Note: these instructions have been partly updated, but not carefully
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
579 reviewed in some time. Caveat tester.]
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
580
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
581 Starting with XEmacs 21.1, much of the functionality of XEmacs has
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
582 been unbundled into "the packages." For more information about the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
583 package system, see the Info nodes on Packages (in the XEmacs User
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
584 Manual) and on Packaging (in the Lisp Reference).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
585
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
586 When bootstrapping XEmacs, you may need to manually install some
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
587 packages (at least xemacs-base and efs). These packages are available
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
588 by FTP at @uref{ftp://ftp.xemacs.org/pub/xemacs/packages/}.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
589
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
590 @menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
591 * Binary package installation::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
592 * Manual procedures for package management::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
593 * Building XEmacs and XEmacs packages from scratch::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
594 @end menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
595
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
596
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
597 @node Binary package installation, Manual procedures for package management, Packages, Packages
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
598 @section Binary package installation
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
599
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
600 Prerequisite: XEmacs 21.0-b1.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
601
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
602 Binary packages are complete entities that can be untarred at the top
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
603 level of an XEmacs package hierarchy and work at runtime. To install files
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
604 in this directory, run the command @kbd{M-x package-admin-add-binary-package}
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
605 and fill in appropriate values to the prompts.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
606
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
607
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
608 @node Manual procedures for package management, Building XEmacs and XEmacs packages from scratch, Binary package installation, Packages
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
609 @section Manual procedures for package management
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
610
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
611 Prerequisite: XEmacs 21.0
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
612
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
613 When adding and deleting files from a lisp directory the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
614 auto-autoloads.el (global symbols) and custom-load.el (Customization
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
615 groups) must be kept in synch. Assuming one is manipulating a
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
616 directory called `lisp-utils', the command to rebuild the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
617 auto-autoloads.el file is:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
618
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
619 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
620 xemacs -vanilla -batch \
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
621 -eval \("setq autoload-package-name \"lisp-utils\""\) \
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
622 -f batch-update-directory lisp-utils
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
623 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
624
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
625 The command to rebuild the custom-load.el file is:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
626
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
627 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
628 xemacs -vanilla -batch -f Custom-make-dependencies lisp-utils
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
629 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
630
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
631 To byte-compile both of these files the command is:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
632
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
633 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
634 xemacs -vanilla -batch -f batch-byte-compile \
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
635 lisp-utils/auto-autoloads.el lisp-utils/custom-load.el
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
636 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
637
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
638 Of course, being a beta tester, you'd be aware that it is much easier
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
639 to manage your XEmacs packages with PUI.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
640
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
641
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
642 @node Building XEmacs and XEmacs packages from scratch, , Manual procedures for package management, Packages
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
643 @section Building XEmacs and XEmacs packages from scratch
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
644
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
645 To build everything completely from scratch isn't hard, just time
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
646 consuming.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
647
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
648 @subheading Step 1 - grab the sources (core and packages)
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
649
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
650 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
651 $ cvs -d :pserver:cvs@@cvs.xemacs.org:/pack/xemacscvs login
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
652 [password: "cvs" (sans quotes)]
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
653
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
654 $ cvs -d :pserver:cvs@@cvs.xemacs.org:/pack/xemacscvs co -d xemacs-21.5 xemacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
655
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
656 $ cvs -d :pserver:cvs@@cvs.xemacs.org:/pack/xemacscvs co packages
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
657 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
658
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
659 @subheading Step 2 - build XEmacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
660
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
661 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
662 $ cd xemacs-21.5
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
663 $ ./configure [options...]
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
664 $ make > ./beta.err 2>&1
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
665 $ make check > ./xemacs-make-check.err 2>&1
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
666 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
667
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
668 And optionally:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
669
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
670 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
671 $ make install > ./xemacs-make-install.err 2>&1
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
672 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
673
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
674 @subheading Step 3 - build and install the packages
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
675
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
676 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
677 $ cd packages
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
678 $ cp Local.rules.template Local.rules
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
679 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
680
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
681 Then edit Local.rules to suit your needs/environment
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
682 (@pxref{Local.rules file,,, xemacs, XEmacs User's Manual}) for details
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
683 about this file.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
684
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
685 And then:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
686
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
687 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
688 $ make install
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
689 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
690
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
691
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
692 @node Reporting Problems, Improving XEmacs, Packages, Top
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
693 @section Reporting Problems
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
694
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
695 The best way to get problems fixed in XEmacs is to submit good problem
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
696 reports, @kbd{M-x report-xemacs-bug RET} will help you do this (assuming
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
697 you have a usable XEmacs). Since this is beta software, problems are
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
698 certain to exist. Please read through all of part II of the XEmacs
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
699 FAQ for an overview of problem reporting.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
700 @xref{Installation, Installation and Troubleshooting, , xemacs-faq}.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
701 The most relevant parts are in section 2.4, General Troubleshooting.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
702 @c #### Why doesn't this link work?
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
703 @c @ref{Q2.4.1, General Troubleshooting, , xemacs-faq}.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
704 Other items which are most important are:
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
705
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
706 @enumerate
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
707 @item
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
708 Do not submit C stack backtraces without line numbers. Since it
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
709 is possible to compile optimized with debug information with GCC
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
710 it is never a good idea to compile XEmacs without the -g flag.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
711 XEmacs runs on a variety of platforms, and often it is not
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
712 possible to recreate problems which afflict a specific platform.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
713 The line numbers in the C stack backtrace help isolate where the
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
714 problem is actually occurring.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
715
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
716 @item
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
717 Attempt to recreate the problem starting with an invocation of
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
718 XEmacs with @code{xemacs -no-autoloads}. Quite often, problems are
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
719 due to package interdependencies, and the like. An actual bug
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
720 in XEmacs should be reproducible in a default configuration
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
721 without loading any special packages (or the one or two specific
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
722 packages that cause the bug to appear). If you have trouble
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
723 getting anything to work at all with the above invocation, use
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
724 @code{xemacs -vanilla} instead. If you need to load your user init
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
725 file or the site file to get the problem to occur, then it has
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
726 something to do with them, and you should try to isolate the
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
727 issue in those files.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
728
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
729 @item
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
730 A picture can be worth a thousand words. When reporting an
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
731 unusual display, it is generally best to capture the problem in a
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
732 screen dump and include that with the problem report. The easiest
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
733 way to get a screen dump is to use the xv program and its grab
4708
1cecc3e9f0a0 Use giflib or libungif to provide GIF support, instead of using internal
Jerry James <james@xemacs.org>
parents: 4312
diff changeset
734 function. Save the image as a PNG to keep bandwidth requirements
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
735 down without loss of information. MIME is the preferred method
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
736 for making the image attachments.
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
737 @end enumerate
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
738
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
739
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
740 @node Improving XEmacs, Index, Reporting Problems, Top
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
741 @chapter Improving XEmacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
742
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
743 @menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
744 * Creating patches for submission::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
745 * Large contributions::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
746 @end menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
747
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
748 @node Creating patches for submission, Large contributions, Improving XEmacs, Improving XEmacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
749 @section Creating patches for submission
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
750
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
751 All patches to XEmacs that are seriously proposed for inclusion (eg,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
752 bug fixes) should be mailed to @uref{mailto:xemacs-patches@@xemacs.org}. Each
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
753 patch will be reviewed by the patches review board, and will be
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
754 acknowledged and added to the distribution, or rejected with an
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
755 explanation. Progress of the patch is tracked on the XEmacs Patches
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
756 mailing list, which is open subscription. (If a patch is simply
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
757 intended to facilitate discussion, "I mean something that works like
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
758 this but this is really rough", a Cc to XEmacs Patches is optional,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
759 but doesn't hurt.)
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
760
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
761 Patches to XEmacs Lisp packages should be sent to the maintainer of
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
762 the package. If the maintainer is listed as `XEmacs Development Team'
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
763 patches should be sent to @uref{mailto:xemacs-patches@@xemacs.org}.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
764
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
765 Emailed patches should preferably be sent in MIME format and quoted
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
766 printable encoding (if necessary).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
767
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
768 The simplest way to create well-formed patches is to use CVS and
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
769 Didier Verna's Patcher library (available as patcher.el in the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
770 xemacs-devel package). Patcher is new and requires some setup, but
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
771 most of the core developers are now using it for their own patches.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
772 Patcher also can be configured to create patches for several projects,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
773 and recognize the project from the directory it is invoked in. This
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
774 makes it a useful general tool (as long as XEmacs-style patches are
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
775 accepted at your other projects, which is likely since they conform to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
776 the GNU standards).
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
777
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
778 When making patches by hand, please use the `-u' option, or if your
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
779 diff doesn't support it, `-c'. Using ordinary (context-free) diffs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
780 are notoriously prone to error, since line numbers tend to change when
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
781 others make changes to the same source file.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
782
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
783 An example of the `diff' usage:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
784
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
785 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
786 $ diff -u OLDFILE NEWFILE
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
787 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
788
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
789 -or-
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
790
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
791 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
792 $ diff -c OLDFILE NEWFILE
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
793 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
794
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
795 Also, it is helpful if you create the patch in the top level of the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
796 XEmacs source directory:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
797
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
798 @example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
799 $ cp -p lwlib/xlwmenu.c lwlib/xlwmenu.c.orig
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
800 hack, hack, hack....
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
801 $ diff -u lwlib/xlwmenu.c.orig lwlib/xlwmenu.c
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
802 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
803
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
804 Also note that if you cut & paste from an xterm to an XEmacs mail
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
805 buffer you will probably lose due to tab expansion. The best thing to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
806 do is to use an XEmacs shell buffer to run the diff commands, or ...
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
807 @kbd{M-x cd} to the appropriate directory, and issue the command
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
808 @kbd{C-u M-!} from within XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
809
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
810 Patches should be as single-minded as possible. Mammoth patches can
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
811 be very difficult to place into the right slot. They are much easier
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
812 to deal with when broken down into functional or conceptual chunks.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
813 The patches submitted by Kyle Jones and Hrvoje Niksic are stellar
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
814 examples of how to "Do The Right Thing".
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
815
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
816 Each patch should be accompanied by an update to the appropriate
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
817 ChangeLog file. Guidelines for writing ChangeLog entries is governed
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
818 by the GNU coding standards. Please see
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
819 @uref{http://www.gnu.org/prep/standards_toc.html} [Change Logs section]
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
820 for details.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
821
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
822 Do not submit context diffs (either -c or -u) of ChangeLogs. Because
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
823 of the "stack" nature of ChangeLogs (new entries are always pushed on
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
824 the top), context diffs will fail to apply more often than they
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
825 succeed. Simply cutting and pasting the entry from an Emacs buffer to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
826 the mail buffer (beware of tab expansion!) is probably easiest. The
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
827 Patcher library also will set up your ChangeLogs for you, and copy
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
828 them to the mail. Context-less unified diffs (-U 0) are also
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
829 acceptable.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
830
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
831 @menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
832 * Patch discussion etiquette::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
833 @end menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
834
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
835 @node Patch discussion etiquette, , Creating patches for submission, Creating patches for submission
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
836 @subsection Patch discussion etiquette
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
837
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
838 If you intend a patch for _application_ to the sources as is, _always_
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
839 post it to xemacs-patches, even if there are minor points you would
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
840 like to have discussed by others. Not doing so will resulting in
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
841 patches getting "lost". If you expect that the patch will not be
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
842 acceptable, but are using it to stimulate discussion, then don't post
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
843 to xemacs-patches. Intermediate cases are up to your judgment;
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
844 unless you're sure you'll follow up with a "real" patch, better to err
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
845 on the side of posting to xemacs-patches.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
846
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
847 Discussion of the _content_ of the patch (ie responses to reviewer
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
848 comments beyond "that's right, ok, I'll do it your way") should _always_
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
849 be posted to xemacs-beta or to xemacs-design. If you're not sure
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
850 which is more appropriate, send it to xemacs-beta. That is the most
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
851 widely read channel.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
852
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
853 If discussion results in a bright idea and you come up with a new
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
854 patch, normally you should post it to both mailing lists. The people
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
855 discussing on XEmacs Beta will want to know the outcome of the thread,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
856 and you need to submit to XEmacs Patches as the "list of record."
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
857
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
858 If the old patch has been applied to CVS, then just submit the new one
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
859 as usual. If it has not been applied, then it is best to submit a new
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
860 patch against CVS. If possible do this as a reply to the original
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
861 patch post, or something following it in the thread. (The point is to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
862 get the original patch post's Message-ID in your References header.)
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
863 In this case, also use the keyword SUPERSEDES in the Subject header to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
864 indicate that the old patch is no longer valid, and that this one
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
865 replaces it.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
866
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
867 These rules will result in a fair number of cross posts, but we don't
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
868 yet have a better way to handle that.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
869
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
870 Note: Developers should never post to xemacs-patches unless there is a
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
871 patch in the post. We plan to enforce this with an automatic filter.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
872
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
873 The exceptions are administrative. If you have commit authorization,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
874 then post a short COMMIT notice to xemacs-patches when you commit to
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
875 CVS. Members of the Review Board will also post short notices of
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
876 administrative action (APPROVE, VETO, QUERY, etc) to xemacs-patches.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
877
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
878 @node Large contributions, , Creating patches for submission, Improving XEmacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
879 @section Large contributions
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
880
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
881 Perhaps you have a whole new mode, or a major synchronization with
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
882 upstream for a neglected package, or a synchronization with GNU Emacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
883 you would like to contribute. We welcome such contributions, but they
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
884 are likely to be relatively controversial, generate more comments and
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
885 requests for revision, and take longer to integrate. Please be
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
886 patient with the process.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
887
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
888 @menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
889 * Updates to existing packages::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
890 * New packages::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
891 * Syncing with GNU Emacs::
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
892 @end menu
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
893
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
894 @node Updates to existing packages, New packages, Large contributions, Large contributions
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
895 @subsection Updates to existing packages
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
896
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
897 If a package has gotten a bit out of date, or even started to bitrot,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
898 we welcome patches to synchronize it with upstream/GNU Emacs versions.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
899 Most packages end up varying somewhat from their GNU origins. See
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
900 "Syncing with GNU Emacs" for hints. Note that if you do a reasonably
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
901 large amount of syncing with GNU Emacs, you should log this in the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
902 file itself as well as in the ChangeLog.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
903
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
904 If the package is important to you, please consider becoming the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
905 maintainer. (See "New packages", below.)
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
906
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
907 @node New packages, Syncing with GNU Emacs, Updates to existing packages, Large contributions
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
908 @subsection New packages
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
909
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
910 If you have a new mode or other large addition that does not require
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
911 changes to the core, please consider submitting it as a package, and
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
912 becoming the maintainer. You get direct commit privileges to the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
913 repository for your package, "approval" privileges for your own
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
914 patches as well as third party patches to your package, and some
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
915 degree of veto power over patches you don't like. In return, you are
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
916 expected to maintain friendly liaison with the upstream developer (if
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
917 you aren't the upstream developer), keep watch on the XEmacs Patches
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
918 list for relevant patches, and be available by email to other
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
919 developers for discussion of changes that impact your package. It's
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
920 also a pretty standard route to the "core" development group, where we
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
921 have plenty of extra work waiting for volunteers.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
922
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
923 You don't have to become the maintainer, but it virtually ensures
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
924 rapid acceptance of the package.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
925
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
926 For help in creating new packages, see the (rather sparse) discussions
2547
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
927 in the XEmacs User's Guide and the Lisp Reference Manual. The
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
928 participants in the XEmacs Beta mailing list
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
929 @uref{mailto:xemacs-beta@@xemacs.org} and the XEmacs Package Release
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
930 Engineer are the most likely sources of advice. See
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
931 @uref{http://www.xemacs.org/Develop/jobs.html#package,jobs.html} for
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
932 current information about package release engineers.
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
933
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
934
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
935 @node Syncing with GNU Emacs, , New packages, Large contributions
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
936 @subsection Syncing with GNU Emacs
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
937
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
938 Syncing with GNU Emacs is an important activity. Although each
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
939 version has its advantages and areas of concentration, it is very
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
940 desirable that common functionality share specifications and APIs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
941 When porting GNU code to XEmacs, the following points should be given
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
942 special attention:
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
943
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
944 @itemize @bullet
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
945 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
946 Recent GNU Emacsen cannot be built without Mule, but XEmacs can.
2547
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
947 Make sure that changes that depend on the presence of Mule are
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
948 appropriately conditionalized, with @samp{#ifdef MULE} in C code and
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
949 with @samp{(featurep 'mule)} in Lisp.
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
950
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
951 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
952 GNU Emacs nomenclature often differs from that of XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
953 Sometimes syncing the names is desirable, other times not.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
954
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
955 @item
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
956 GNU Emacs functionality often differs from that of XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
957 Syncing functionality is often controversial.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
958 @end itemize
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
959
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
960 It is important that you let other developers know that
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
961 synchronization has taken place, to what degree, and when. For this
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
962 purpose, we use comments of the form
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
963
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
964 @example
2547
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
965 /* Synched up with: GNU 21.3 by Stephen Turnbull */
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
966 @end example
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
967
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
968 in the source file itself, as the last element of the prefatory
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
969 material (copyright notice and commentary). Obviously the comment
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
970 marker needs to be changed to leading semicolons for Lisp, but
2547
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
971 otherwise the format is the same. (Older sync comments may have ``FSF''
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
972 in place of ``GNU''. They're equally accurate in our opinion, but
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
973 Richard Stallman and other GNU developers consider the term ``FSF
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
974 Emacs'' ``insulting''. Please use ``GNU'' in new sync comments.)
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
975
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
976 Of course you should note syncing as the purpose in the ChangeLog,
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
977 too. But entries get buried deep in the ChangeLog file, and may even
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
978 get moved to a separate ChangeLog.OLD file for rarely synched files.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
979
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
980 Rather than dates we use the version of GNU Emacs to sync to. If the
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
981 synchronization is partial, add a new comment describing what has
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
982 actually been synched, leaving the description of the last full sync
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
983 in place. At each full sync, remove all previous synchronization
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
984 comments.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
985
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
986 This applies to Lisp that we have broken out into packages, but
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
987 remains in the GNU Emacs core, as well to core Lisp in XEmacs.
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
988
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
989 @c Print the tables of contents
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
990 @contents
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
991 @c That's all
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
992
3388
e7fb0df1caea [xemacs-hg @ 2006-05-09 05:15:15 by stephent]
stephent
parents: 2647
diff changeset
993
2547
a9527fcdf77f [xemacs-hg @ 2005-02-03 06:14:40 by stephent]
stephent
parents: 2537
diff changeset
994 @node Index, , Improving XEmacs, Top
2537
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
995 @unnumbered Index
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
996
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
997 @printindex cp
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
998
b7b90f750a78 [xemacs-hg @ 2005-01-31 20:08:32 by ben]
ben
parents:
diff changeset
999 @bye