summaryrefslogtreecommitdiff
path: root/xc/programs/Xserver/hw/xfree86/doc/sgml/README.sgml
blob: 1c3a3becf446d0711b52b02ff5c30d887419afa5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
<!DOCTYPE linuxdoc PUBLIC "-//XFree86//DTD linuxdoc//EN" [
<!ENTITY % defs SYSTEM "defs.ent"> %defs;
<!ENTITY % onediff 'IGNORE'>	 <!-- patch is a single diff file -->
<!ENTITY % twodiffs 'IGNORE'>	 <!-- patch is split into two diff files -->
<!ENTITY % threediffs 'IGNORE'> <!-- patch is split into three diff files -->
<!ENTITY % fourdiffs 'INCLUDE'> <!-- patch is split into four diff files -->
<!ENTITY % difftar 'INCLUDE'> <!-- patch also contains a tarball -->
<!ENTITY % removefiles 'INCLUDE'> <!-- patching requires removing some files -->
]>


<article>

<title>README for XFree86&tm; &relvers;
<author>The XFree86 Project, Inc
<date>16 January 2002

<ident>
$XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/README.sgml,v 3.120 2002/09/09 16:04:22 dawes Exp $
</ident>

<abstract>

XFree86 is the Open Source port of X.Org's X11R6.6 release that supports
several UNIX(R) and UNIX-like (such as Linux, the BSDs and Solaris x86)
operating systems on Intel and other platforms.

</abstract>

<toc>

<sect>What is XFree86 &relvers;?
<p>

<![ %updaterel [
XFree86 &relvers; is the &whichupdaterel; update to &fullrelvers;,
the &whichfullrel; full release in the
<![ %earlyrel; [new]]>
XFree86 4 series.

Update releases are taken from a stable/maintenance branch.  They are
designed to be installed on top of the full release that they are
updating.  They contain fixes for serious problems, most commonly
fixes for security issues, fixes for driver bugs, and fixes that improve
stability.
]]>

<![ %fullrel [
XFree86 &relvers; is the &whichfullrel; full release in the
<![ %earlyrel; [new]]>
XFree86 4 series.
]]>

<p>
XFree86 release 4 is a major re-design of the basic architectural
underpinnings of XFree86's implementation of the original X Consortium's
X Server.  This re-design allows for a modular interaction between the
hardware drivers and the XFree86 core X server.  With 4.x, upgrades to
the X server with new and unsupported hardware can be easily done and
installed without undergoing the previous process of rebuilding an X
server.  All that is required is installing the new driver module and
updating the configuration file.

The road to XFree86 release 4 began as an architectural concept in mid
1997, with the serious framework being implemented in code the beginning
of 1998.  There were several snapshots on the road to 4.0 which are now
part of the 4.0 base release.
<![ %fullrel [The &relvers; version is an upgrade to
&prevrelvers;, which include more hardware ports, code enhancements and
bug fixes.]]>

Release 4 also included the long-awaited integration of the DRI (Direct
Rendering Infrastructure).  This upgrade into the code base  gives
XFree86 the abilities of accelerated direct 3-D graphics rendering, used
widely in games and other visualization programs.

While some driver available in the old 3.3.x release series have not
been converted over to the 4.x series, those required for most modern
video hardware are available.  Please check the <htmlurl name="Driver
Status document" url="Status.html"> first to see whether your hardware
is supported before upgrading to the 4.x series.

<![ %haverelnotes [
Specific release enhancements can be viewed in the
<htmlurl name="Release Notes" url="RELNOTES.html">.
]]>

The XFree86 version numbering system has had some changes as of the
4.0.2 release.  Information about this can be found in the
<htmlurl name="Versions Document" url="Versions.html">.

Information about binary distributions and the attendant installation
instructions can be found in the <htmlurl name="Installation Document"
url="Install.html">.

Copyright and Licensing information for this release and all XFree86
releases can be found in the <htmlurl name="License Document"
url="LICENSE.html">.

<![ %snapshot [
<sect>Redistribution of the Snapshots
<p>

While the XFree86 <htmlurl name="License" url="LICENSE.html"> doesn't
prohibit vendors and others redistributing binaries of this release, we
don't recommend it.  We ask that if you do distribute such binaries,
you make it clear that people using then should contact you for support
and not XFree86.
]]>

<sect>Joining The Team
<sect1> Development
<p>

If you would like to work on the development of XFree86 4, either by
helping with the conversion of our older drivers to the new 4.x design,
or assisting in the addition of new drivers or platforms to the code base
then send a request to <url name="join the XFree86 development team"
url="http://www.xfree86.org/developer.html">.  This will give you direct
access to the latest XFree86 related development topics and discussions.
Include in your note, your name, email address, reason for joining (what
you will work on) and, level of expertise (coder, DRI, core, specific
driver) and area of interest.

</sect1>


<sect1> Documentation
<p>
If instead your interests are on the Documentation side of the Project,
or you want to contribute and are not ready for plunging into the code,
you can join the Documentation Team (those hardy souls responsible for
the content you are reading :-).  Amongst the Doc Team's activities are
converting our SGML based documentation into an XML based one and updating
and creating technical documentation used by staff and public.  If this
sounds interesting then please send a request to <url name="join the
XFree86 documentation team" url="mailto:signup@xfree86.org">.
Include in your note, you name, email address, reason for joining (what
you will work on) and level of expertise and whether you are interested
in the tools or content side of the group.

</sect1>
</sect> 

<sect> The Public Mailing Lists
<sect1>  Newbie
<p> 
For those who are new to XFree86  and want to learn more about our
Project we recommend that you join our Newbie list, located at <url name
= "Public Mailing Lists" url = "http://www.xfree86.org/mailman/listinfo">,
where this and other discussions occur with our senior all-volunteer
staff.  This is great forum to get introduced to XFree86 and ask for
help on how to set up the XServer or whether your hardware is supported,
and why not?,  and make suggestions for future releases of XFree86.
This list is supported by our volunteer staff who needs to know how you
are using and interacting with XFree86 and what is wrong and could be
better.  Tell them, they want to know!

</sect1>

<sect1> Announce
<p>
For those who just want to know  the release schedule 
this is a good list  to join.

<sect1> CVS Commit
<p>
For those who want to see what has been committed recently to our CVS
repository this is the list that will show you those updates.  This list
is updated dynamically every time the repository is updated after the
the commit happens.

<!--
<p>
A followup to the commit list is the soon to be public, patch archives.
This archive will be available on our web-site and will show what patches
have been submitted and will soon be committed.  This is helpful for
people who are interested in a specific area and want to know what work
is happening there.  When this goes public we will announce it
on our web site and our Announce mailing list, so keep watching.
-->


<sect1>  Xpert
<p>
If instead you are the lone developer who is improving XFree86 on an
ad hoc basis for your particular environment (I want to get my mouse or
video card to work), and need a specific question asked then you should
go over to our Xpert list where such questions are raised and answered
by our technical development staff.  Remember you do not have to be a
member to write fixes to our code base and if your changes are discrete
and self-contained the volume of developer mail may just be too noisy.


Once your work is finished (coded, debugged and documented) please send
your fix to <email>fixes@XFree86.org</email>.  This will ensure that
they are included in future releases. And thanks!  You make this truly
an Open group.

</sect1>
</sect>

<sect>How to get XFree86 &relvers;
<p>
<![ %snapshot; [
XFree86 &relvers; can be found at the <url name="XFree86 ftp server"
url="ftp://ftp.xfree86.org/pub/XFree86/snapshots/&relvers;/">, and at
mirrors of this server.  This snapshot is available primarily in source
form.  Binaries for some platforms may be made available at a later
time.
]]>

<![ %release; [
XFree86 &relvers; can be found at the <url name="XFree86 ftp server"
url="ftp://ftp.xfree86.org/pub/XFree86/&relvers;/">,
and at mirrors of this server.  Information about obtaining and installing
binary distributions of this release can be found in the
<htmlurl name="Installation Document" url="Install.html">.  Information about
obtaining the release in source form is given below.
]]>

<![ %updaterel; [
The source for version &relvers; is available as a patch relative to
&prevrelvers;.
The patch file is <tt>&prevrelvers;-&relvers;.diff.gz</tt>.

The patch
should be applied to a clean &prevrelvers; source tree, working from
the directory containing the <tt>xc/</tt> directory.  The patch should
be applied by running:

<tscreen><verb>
gzip -d &lt; &prevrelvers;-&relvers;.diff.gz | patch -p0 -E
</verb></tscreen>

Information about getting the source for &prevrelvers can be found in the
README file for that version, which can be found on the
<url name="XFree86 web site" url="http://www.xfree86.org/pub/XFree86/&prevrelvers;/README.html">.
]]>

<![ %fullrel [
The source for version &fullrelvers; is split into three tarballs:
<tt>X&fullsrcvers;src-1.tgz</tt>, <tt>X&fullsrcvers;src-2.tgz</tt>,
<tt>X&fullsrcvers;src-3.tgz</tt>.  The first contains everything except the
fonts and general X11 documentation.  It is sufficient for building
XFree86 if you already have a set of fonts.  The second contains the
fonts and the source for the general X11 documentation.  The third
contains the general X11 documentation in hardcopy format.

<![ %onediff; [
A source patch relative to version &prevfullrelvers; is also available.
The patch file is <tt>&prevfullrelvers;-&fullrelvers;.diff.gz</tt>.
<![ %difftar; [
There is also a tarball that contains some files that have components that
can't be included in a diff.  It is <tt>&fullrelvers;.tgz</tt>.
]]>
The patch
should be applied to a clean &prevfullrelvers; source tree, working from
the directory containing the <tt>xc/</tt> directory.  The patch should
be applied by running:

<tscreen><verb>
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff.gz | patch -p0 -E
</verb></tscreen>
<![ %difftar; [
<tscreen><verb>
gzip -d &lt; &fullrelvers;.tgz | tar vxf -
</verb></tscreen>
]]>
]]>

<![ %twodiffs; [
A source patch relative to version &prevfullrelvers; is also available.
Because of its size, it is split into two parts.
The patch files are <tt>&prevfullrelvers;-&fullrelvers;.diff1.gz</tt> and
<tt>&prevfullrelvers;-&fullrelvers;.diff2.gz</tt>.
<![ %difftar; [
There is also a tarball that contains some files that have components that
can't be included in a diff.  It is <tt>&fullrelvers;.tgz</tt>.
]]>
These patches should
be applied to a clean &prevfullrelvers; source tree, working from the directory
containing the <tt>xc/</tt> directory.  The patches should be applied by
running:

<tscreen><verb>
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff1.gz | patch -p0 -E
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff2.gz | patch -p0 -E
</verb></tscreen>
<![ %difftar; [
<tscreen><verb>
gzip -d &lt; &fullrelvers;.tgz | tar vxf -
</verb></tscreen>
]]>
]]>

<![ %threediffs; [
A source patch relative to version &prevfullrelvers; is also available.
Because of its size, it is split into three parts.
The patch files are <tt>&prevfullrelvers;-&fullrelvers;.diff1.gz</tt>,
<tt>&prevfullrelvers;-&fullrelvers;.diff2.gz</tt> and
<tt>&prevfullrelvers;-&fullrelvers;.diff3.gz</tt>.
<![ %difftar; [
There is also a tarball that contains some files that have components that
can't be included in a diff.  It is <tt>&fullrelvers;.tgz</tt>.
]]>
These patches should
be applied to a clean &prevfullrelvers; source tree, working from the directory
containing the <tt>xc/</tt> directory.  The patches should be applied by
running:

<tscreen><verb>
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff1.gz | patch -p0 -E
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff2.gz | patch -p0 -E
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff3.gz | patch -p0 -E
</verb></tscreen>
<![ %difftar; [
<tscreen><verb>
gzip -d &lt; &fullrelvers;.tgz | tar vxf -
</verb></tscreen>
]]>
]]>

<![ %fourdiffs; [
A source patch relative to version &prevfullrelvers; is also available.
Because of its size, it is split into four parts.
The patch files are <tt>&prevfullrelvers;-&fullrelvers;.diff1.gz</tt>,
<tt>&prevfullrelvers;-&fullrelvers;.diff2.gz</tt>,
<tt>&prevfullrelvers;-&fullrelvers;.diff3.gz</tt> and
<tt>&prevfullrelvers;-&fullrelvers;.diff4.gz</tt>.
<![ %difftar; [
There is also a tarball that contains some files that have components that
can't be included in a diff.  It is <tt>&fullrelvers;.tgz</tt>.
]]>
These patches should
be applied to a clean &prevfullrelvers; source tree, working from the directory
containing the <tt>xc/</tt> directory.  The patches should be applied by
running:

<tscreen><verb>
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff1.gz | patch -p0 -E
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff2.gz | patch -p0 -E
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff3.gz | patch -p0 -E
gzip -d &lt; &prevfullrelvers;-&fullrelvers;.diff4.gz | patch -p0 -E
</verb></tscreen>
<![ %difftar; [
<![ %removefiles; [
<tscreen><verb>
rm -f xc/extras/freetype2/builds/mac/ftlib.prj
rm -fr xc/extras/freetype2/docs/design 
rm -fr xc/extras/freetype2/docs/glyphs
rm -fr xc/extras/freetype2/docs/image
rm -fr xc/extras/freetype2/docs/tutorial
rm -f xc/programs/Xserver/hw/darwin/bundle/English.lproj/MainMenu.nib/objects.nib
rm -f xc/programs/Xserver/hw/darwin/bundle/Japanese.lproj/Localizable.strings
rm -f xc/programs/Xserver/hw/darwin/bundle/Japanese.lproj/MainMenu.nib/objects.nib
</verb></tscreen>
]]>
<tscreen><verb>
gzip -d &lt; &fullrelvers;.tgz | tar vxf -
</verb></tscreen>
]]>
]]>

<![ %prevrelwasupdate; [
Patches might also be available relative to &prevrelvers;.  If so, the
instructions for applying them are the same, except that you should start 
with a clean &prevrelvers; source tree.
]]>

The contrib part of the distribution was folded into the main source
tree a while ago, so a separate contrib tarball is not required.

To format the XFree86 documentation use the latest version of our doctools
package available as <tt>doctools-&doctoolsvers;.tgz</tt>.
]]>  <!-- fullrel -->

The XFree86 source code can also be accessed via the XFree86 CVS repository.
Information about accessing this can be found at the <url name="CVS page"
url="http://www.xfree86.org/cvs/"> on our web site.  It's also possible
to browse the XFree86 CVS repository at our <url name="CVSWeb server"
url="http://cvsweb.xfree86.org/">.

<sect>Reporting Bugs
<p>

Bugs should be reported to <email>XFree86@XFree86.org</email>.  Before
reporting bugs, please check the X server log file, which can be found
at <tt>/var/log/XFree86.0.log</tt> on most platforms.  If you can't
resolve the problem yourself, send the entire log file with your bug
report but not the operating system core dump.  Do not edit  the log
file as our developers use it to reproduce and debug your problem.



</article>