/[3dldf]/3dldf/Group/README
ViewVC logotype

Annotation of /3dldf/Group/README

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.7 - (hide annotations) (download)
Wed Sep 19 11:47:01 2007 UTC (17 years, 5 months ago) by lfinsto1
Branch: MAIN
Changes since 1.6: +30 -30 lines
Changed the version number from "1.2.0.0" to "1.2.0".  Both numbers were used in
different places before.

Working on |Focuses|.

1 lfinsto1 1.2 README
2     Created by Laurence D. Finston (LDF)
3    
4 lfinsto1 1.5 * (1) Copyright and License.
5 lfinsto1 1.2
6 lfinsto1 1.5 This file is part of GNU 3DLDF, a package for three-dimensional drawing.
7     Copyright (C) 2003, 2004, 2005, 2006, 2007 The Free Software Foundation
8 lfinsto1 1.2
9     GNU 3DLDF is free software; you can redistribute it and/or modify
10     it under the terms of the GNU General Public License as published by
11 lfinsto1 1.6 the Free Software Foundation; either version 3 of the License, or
12 lfinsto1 1.5 (at your option) any later version.
13 lfinsto1 1.2
14     GNU 3DLDF is distributed in the hope that it will be useful,
15     but WITHOUT ANY WARRANTY; without even the implied warranty of
16     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 lfinsto1 1.5 GNU General Public License for more details.
18 lfinsto1 1.2
19     You should have received a copy of the GNU General Public License
20     along with GNU 3DLDF; if not, write to the Free Software
21 lfinsto1 1.5 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22 lfinsto1 1.2
23     GNU 3DLDF is a GNU package.
24     It is part of the GNU Project of the
25     Free Software Foundation
26     and is published under the GNU General Public License.
27     See the website http://www.gnu.org
28     for more information.
29     GNU 3DLDF is available for downloading from
30 lfinsto1 1.5 http://www.gnu.org/software/3dldf/LDF.html.
31 lfinsto1 1.2 It is also available from
32     http://www.dante.de/software/ctan/, the Dante www-server
33 lfinsto1 1.5 and from http://wwwuser.gwdg.de/~lfinsto1,
34 lfinsto1 1.2 the author's website.
35    
36 lfinsto1 1.5 Please send bug reports to lfinsto1@gwdg.de
37 lfinsto1 1.2 The mailing list help-3dldf@gnu.org is available for people to
38     ask other users for help.
39     The mailing list info-3dldf@gnu.org is for sending
40     announcements to users. To subscribe to these mailing lists, send an
41     email with ``subscribe <email-address>'' as the subject.
42 lfinsto1 1.5
43 lfinsto1 1.2 The author can be contacted at:
44    
45 lfinsto1 1.6 Laurence D. Finston
46     c/o Free Software Foundation, Inc.
47     51 Franklin St, Fifth Floor
48     Boston, MA 02110-1301
49     USA
50 lfinsto1 1.2
51 lfinsto1 1.5 lfinsto1@gwdg.de
52 lfinsto1 1.2 s246794@stud.uni-goettingen.de
53    
54    
55 lfinsto1 1.7 $Id: README,v 1.5 2007/09/19 10:59:40 lfinsto1 Exp $
56 lfinsto1 1.2
57 lfinsto1 1.3 * IMPORTANT! LDF 2004.09.09.
58 lfinsto1 1.2
59     I am currently in the process of preparing an alpha release,
60 lfinsto1 1.7 to be called "GNU 3DLDF 1.2.0.1". I will be using the number "1.2.0"
61 lfinsto1 1.2 to identify preliminary versions, so this number does not identify
62     a particular release.
63    
64     I am also working on updating this file. Some of the
65     information in it _no longer applies_. Please contact
66     `help-3dldf@gnu.org' if you have questions.
67    
68 lfinsto1 1.3 For more information specifically about the preliminary versions,
69     see the files `00README' and `00NEWS'.
70    
71 lfinsto1 1.2 * Downloading
72    
73     GNU 3DLDF is available for downloading from the following servers using
74     the protocols indicated (i.e., `ftp', `http', and `rsync'):
75    
76     Free Software Foundation/GNU Project server:
77    
78     ftp://ftp.gnu.org/gnu/3dldf
79     http://ftp.gnu.org/gnu/3dldf
80    
81     GWDG (Gesellschaft fuer wissenschaftliche Datenverarbeitung) server:
82    
83     http://ftp.gwdg.de/pub/gnu2/3dldf/
84     ftp://ftp.gwdg.de/pub/gnu2/3dldf/
85     rsync://ftp.gwdg.de/pub/gnu2/3dldf/
86    
87     DANTE's CTAN server (DANTE = Deutschsprachige Anwendervereinigung TeX e.V.,
88     CTAN = Comprehensive TeX Archive Network)
89    
90     http://dante.ctan.org/CTAN/graphics/3DLDF/
91    
92     and from the author's website:
93     http://wwwuser.gwgd.de/~lfinsto1
94    
95     * Mailing lists
96    
97     The following mailing lists are now available:
98     bug-3dldf@gnu.org --- For bug reports.
99     help-3dldf@gnu.org --- For users to ask one another for help.
100     info-3dldf@gnu.org --- For the maintainer of GNU 3DLDF to send
101     announcements to users.
102    
103     To subscribe to these mailing lists, please send an
104     email with ``subscribe'' as the subject.
105    
106    
107     * Web sites
108     The official GNU 3DLDF website is
109     http://www.gnu.org/software/3dldf.
110    
111     * Description of GNU 3DLDF
112    
113     GNU 3DLDF is a package for three-dimensional drawing with MetaPost output.
114    
115     * Documentation
116    
117 lfinsto1 1.7 The files /3DLDF-1.2.0/CWEB/3DLDFprg.ps and
118     /3DLDF-1.2.0/DOC/TEXINFO/3DLDF.ps contain respectively the documents
119 lfinsto1 1.2 _3DLDF: The Program_ and the _3DLDF User and Reference Manual_
120     in PostScript format. In addition,
121 lfinsto1 1.7 /3DLDF-1.2.0/CWEB/3DLDFprg.dvi contains _3DLDF: The Program_ in DVI
122 lfinsto1 1.2 format. If you need to
123     regenerate the documentation for some reason, type `make ps' at the
124 lfinsto1 1.7 command line from the directory /3DLDF-1.2.0/.
125 lfinsto1 1.2 Please note, that if you decide to run cweave on 3DLDFprg.web by hand,
126     be sure to use the version of the file cwebmacs.tex
127 lfinsto1 1.7 in /3DLDF-1.2.0/CWEB/, since I've made a number of additions and changes
128 lfinsto1 1.2 to the original. Ordinarily, it will be used automatically, so most
129     users won't need to worry about this.
130    
131     The file 3DLDF.info contains the _User and Reference Manual_ in
132     Info format. It's generated by `make install'. It can also be
133     generated by `make info'. To make an HTML version, call
134     `makeinfo --html 3DLDF.texi'.
135    
136     I apologize for the number of typos and other errors in the
137     documentation. I hope they don't detract from their usefulness.
138     Please see the section ``Errata and Addenda'' on my website:
139     http://wwwuser.gwdg.de/~lfinsto1/index.html
140    
141     * Installing
142    
143     See the file INSTALL for instructions on installing GNU 3DLDF.
144    
145    
146     * Patch instructions
147    
148     The following instructions explain how to use
149 lfinsto1 1.7 `3DLDF-1.1.5.1-1.2.0.diff.gz' to update 3DLDF 1.1.5.1.
150 lfinsto1 1.2
151 lfinsto1 1.7 The best way to apply the patch `3DLDF-1.1.5.1-1.2.0.diff.gz' is to
152 lfinsto1 1.2 put the distribution of GNU 3DLDF 1.1.5.1 in a new directory, e.g.,
153     `3DLDF-1.1.5.1'.
154     You may want you create a distribution by calling `make dist' from a
155     shell in the working directory `3DLDF-1.1.5.1/'.
156     Then you will have to uncompress and expand `3DLDF-1.1.5.1.tar.gz':
157    
158     gunzip 3DLDF-1.1.5.1.tar.gz
159     tar pxvf 3DLDF-1.1.5.1.tar
160    
161     If you choose to use your existing `3DLDF-1.1.5.1' directory instead,
162     you should save any files you don't want changed in a safe place.
163    
164     Please note that the HTML version of the Texinfo manual is not part of
165     the distribution. It is, however, downloadable separately from
166     my website and the GWDG server, so there should be no need to
167     generate it yourself. See `* Downloading', above, for the
168     URLs (Uniform Resource Locators).
169    
170 lfinsto1 1.7 Rename `3DLDF-1.1.5.1' `3DLDF-1.2.0'
171 lfinsto1 1.2
172 lfinsto1 1.7 mv 3DLDF-1.1.5.1 3DLDF-1.2.0
173 lfinsto1 1.2
174 lfinsto1 1.7 Now, put `3DLDF-1.1.5.1-1.2.0.diff.gz' in `3DLDF-1.2.0'.
175     Change the working directory to `3DLDF-1.2.0' and unpack
176     `3DLDF-1.1.5.1-1.2.0.diff.gz':
177 lfinsto1 1.2
178 lfinsto1 1.7 mv 3DLDF-1.1.5.1-1.2.0.diff.gz 3DLDF-1.2.0/
179     cd 3DLDF-1.2.0
180     gunzip 3DLDF-1.1.5.1-1.2.0.diff.gz
181 lfinsto1 1.2
182     Apply the patch:
183    
184 lfinsto1 1.7 patch -p1 -i 3DLDF-1.1.5.1-1.2.0.diff
185 lfinsto1 1.2
186     * Running GNU 3DLDF
187    
188     Once GNU 3DLDF is installed, put the code for your drawings in
189 lfinsto1 1.7 /3DLDF-1.2.0/main.web, and call `make run' from the command
190     line in the directory /3DLDF-1.2.0/ to run 3dldf (the executable
191 lfinsto1 1.2 program), MetaPost, TeX, and dvips, to generate a PostScript file
192     containing your drawings.
193    
194 lfinsto1 1.7 As a convenience, 3DLDF-1.2.0/ and 3DLDF-1.2.0/CWEB/ both contain an
195 lfinsto1 1.2 identical shell script called `ldfr', which simply calls 'make run',
196     so that GNU 3DLDF can be used conveniently from either directory.
197    
198     * make Targets
199    
200     BUG FIX: I've added `touch 3DLDFmp.mp' to the `3DLDFmp.mp' target in
201 lfinsto1 1.7 3DLDF-1.2.0/CWEB/Makefile.am. This ensures that
202 lfinsto1 1.2 TeX and dvips will be run if MetaPost is run on `3DLDFmp.mp'. This
203     happens if `3DLDFput.mp' is newer than `3DLDFmp.mp', but the latter
204     isn't changed, so TeX and dvips weren't being run. I'm surprized
205     nobody's complained about this. Not yet documented in the
206     _3DLDF User and Reference Manual_.
207    
208 lfinsto1 1.7 3DLDF-1.2.0/CWEB/Makefile.am contains several
209 lfinsto1 1.2 `PHONY' targets as synonyms for several targets.
210    
211     These are targets that users may want to call often:
212    
213     `cpl' for `3dldf': For compiling and linking `3dldf'.
214    
215     `mp' for `3DLDFmp.mp': For running MetaPost on `3DLDFmp.mp'.
216    
217     `ldf' for `3DLDFput.mp': For running `3dldf'.
218    
219     Most users should never need to call `make ps' or `make pdf',
220     unless they are making changes to GNU 3DLDF.
221    
222     `ps' for generating `3DLDFprg.ps'.
223    
224     `pdf' for generating `3DLDFprg.pdf'. It uses `ps2pdf'. Automake
225 lfinsto1 1.7 doesn't generate a `pdf' target in 3DLDF-1.2.0/CWEB/ automatically,
226     but it does in 3DLDF-1.2.0/DOC/TEXINFO/. However, it requires
227 lfinsto1 1.2 `pdftex', which is not installed on the computer I'm using. It may be
228     on yours, however, so I didn't want to override the default `pdf' target.
229    
230     If you want to generate `3DLDF.pdf' for some reason, and `make pdf'
231     doesn't work on your computer either, try `ps2pdf 3DLDF.ps'. However,
232     please note that `3DLDF.pdf' is included in the distribution and
233     available separately from my website and other download sites (see
234     "Downloading" above), along with `3DLDF.ps'.
235     The HTML version is also available from my website,
236     http://ftp.gwdg.de/pub/gnu2/3dldf/
237     ftp://ftp.gwdg.de/pub/gnu2/3dldf/
238     and
239     rsync://ftp.gwdg.de/pub/gnu2/3dldf/
240    
241 lfinsto1 1.7 These targets are new in GNU 3DLDF 1.2.0, and are not yet documented in
242     the _3DLDF User and Reference Manual_ (/3DLDF-1.2.0/DOC/TEXINFO/3DLDF.ps).
243 lfinsto1 1.2
244     To get rid of the files that GNU 3DLDF generates, without deleting any
245     important ones, call `make purge'.
246    
247     For further information, see the _3DLDF User and
248 lfinsto1 1.7 Reference Manual_ (/3DLDF-1.2.0/DOC/TEXINFO/3DLDF.ps).
249 lfinsto1 1.2
250     Users should avoid the use of the following extensions in
251 lfinsto1 1.7 /3DLDF-1.2.0/CWEB/: .rpo, .h, .hbk, .tim, and .tmw.
252 lfinsto1 1.2 Each CWEB file has corresponding files with the same name and
253     these extensions.
254    
255     * Information on building:
256    
257     If only TeX text, comments, or whitespace in the CWEB file are
258     changed, then no recompilation or relinking takes place, and the CWEB
259     file isn't retangled the next time `make 3dldf' is called.
260     Unfortunately, whitespace in literal strings that are part of the C++
261     code are also ignored, contrary to what I wrote in
262 lfinsto1 1.7 3DLDF-1.2.0/CWEB/ChangeLog. It's not likely that this will cause any
263 lfinsto1 1.2 problems in actual use, though.
264    
265     If only the C++ code has changed, the .cxx file is recompiled, and 3dldf is
266     relinked.
267    
268     If the header file has changed, all of the C++ files that depend on it are
269     recompiled, and 3dldf is relinked.
270    
271     Two ``timer'' files are used for keeping track of whether
272     <filename>.h and/or <filename>.cxx has changed.
273    
274     The procedure seems to work when multiple files are changed in various
275     ways. However, one unpleasant consequence is that the CWEB file must
276     be touched to give it an earlier timestamp in the case that neither
277     the C++ file nor the header file
278     has changed (but only in this case!). This means that the file has
279     changed on disk, so that
280     the buffer must be reverted, if the user is currently working on it,
281     which is likely. The shell script `tsthdweb' prints a message to this
282     effect to standard output. It's annoying to have to revert the
283     buffer, but I haven't thought of a way
284     around this problem. It's a consequence of using the timestamps of
285     files to decide whether they need to be reprocessed. The best solution
286     may be to return to using an auxilliary program for controlling
287     recompilation. However, this will mean maintaining two different
288     methods of rebuilding, because Automake requires valid build rules.
289    
290     ** Reverting buffers
291    
292     If you're using Emacs, you can set a key to revert the buffer without
293     querying by putting the following sexp (s-expression, but I don't know
294     what ``s'' stands for) into your `.emacs' file:
295    
296     (global-set-key [f5] '(lambda () (interactive) (revert-buffer t t)))
297    
298     Or, if you're using, for example, foo mode, you can put the following
299     sexp into your foo-mode-hook declaration:
300    
301     (local-set-key foo-mode-map [f5] '(lambda () (interactive)
302     (revert-buffer t t)))
303     For example,
304     (setq lisp-mode-hook
305     '(lambda ()
306     (local-set-key [f5] '(lambda () (interactive)
307     (revert-buffer t t)))))
308    
309     Or, if you've defined a foo mode yourself, you can put the key
310     assignment into foo-mode-map:
311    
312     (if foo-mode-map ()
313     (setq foo-mode-map (nconc (make-sparse-keymap) c-mode-map))
314     (define-key foo-mode-map [f5] '(lambda () (interactive)
315     (revert-buffer t t))))
316    
317    
318     *Information about Changes
319    
320     For information about changes to GNU 3DLDF, see
321     NEWS, ChangeLog, ./CWEB/ChangeLog,
322     ./DOC/ChangeLog, ./DOC/TEXINFO/ChangeLog,
323     ./RCSFREEZE.log
324     ./CWEB/RCSFREEZE.log, ./DOC/RCSFREEZE.log, and ./DOC/TEXINFO/RCSFREEZE.log.
325     The latter files
326     contain information about frozen configurations, referring to general
327     changes affecting multiple files.
328    
329    
330    
331     %% Local Variables:
332     %% mode:TeX
333     %% outline-minor-mode:t
334     %% outline-regexp:"^\\*+"
335     %% End:
336    

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26