Commit | Line | Data |
---|---|---|
a88b0ab2 JB |
1 | Anonymous CVS access to Guile ======================================== |
2 | ||
3 | We make the current Guile sources available via anonymous CVS. Please | |
4 | keep in mind that these sources are strictly experimental; they will | |
5 | usually not be well-tested, and may not even compile on some systems. | |
6 | They may contain interfaces which will change. They will usually not | |
7 | be of sufficient quality for use by people not comfortable hacking the | |
8 | innards of Guile. Caveat! | |
9 | ||
10 | However, we're providing them anyway for several reasons. We'd like | |
11 | to encourage people to get involved in developing Guile. People | |
12 | willing to use the bleeding edge of development can get earlier access | |
13 | to new, experimental features. Patches submitted relative to recent | |
14 | sources will be easier for us to evaluate and install, since the | |
15 | patch's original sources will be closer to what we're working with. | |
16 | And it allows us to start testing features earlier. | |
17 | ||
5469b4a1 JB |
18 | Since the CVS tree is arranged for the convenience of the developers, |
19 | it requires GCC and GNU Make, which together support automatic | |
20 | dependency management. | |
21 | ||
a88b0ab2 JB |
22 | To check out a CVS working directory: |
23 | ||
24 | 1) Install CVS version 1.9 or later on your system. | |
25 | 2) Log into the CVS server: | |
26 | $ cvs -d :pserver:anoncvs@egcs.cygnus.com:/egcs/carton/cvsfiles login | |
324a8d98 JB |
27 | At the prompt for `CVS password:', type `anoncvs'. |
28 | Once you have logged in, your password is saved in ~/.cvspass, and you | |
29 | will not need to enter it again. | |
a88b0ab2 JB |
30 | 3) Check out a module: |
31 | $ cvs -z 9 -d :pserver:anoncvs@egcs.cygnus.com:/egcs/carton/cvsfiles checkout guile-core | |
32 | This should create a new directory `guile-core' in your current | |
33 | directory, and populate it with the current Guile sources. | |
34 | ||
487f379f JB |
35 | The modules available for checkout are: |
36 | guile-core --- The scheme interpreter itself. | |
37 | guile-doc --- Guile documentation-in-progress. | |
38 | guile-tcltk --- An interface between Guile and Tcl/Tk. | |
39 | guile-scsh --- An incomplete port of SCSH 0.4.4 to Guile. | |
40 | guile-rgx-ctax --- This has been discontinued; use Andrew Archibald's | |
41 | distribution instead: | |
42 | ftp://ftp.red-bean.com/pub/guile/contrib/misc/guile-lang-allover-0.1.tar.gz | |
43 | ||
a88b0ab2 JB |
44 | Once you have a working directory, you can bring it up to date easily |
45 | and efficiently: | |
46 | ||
47 | 1) Go to the top directory of the source tree. That is, your current | |
48 | directory should be the one containing `configure.in', `README', | |
49 | and so on. | |
50 | 2) Do the update: | |
51 | $ cvs update | |
52 | ||
53 | This will incorporate any changes the developers have made to Guile | |
54 | since your last update into your source tree. | |
55 | ||
56 | The EGCS Project is kindly lending us space, time, and bandwidth on | |
57 | their CVS server. Thanks, folks! | |
58 | ||
59 | ||
60 | Questions ============================================================ | |
61 | ||
62 | (I don't know if they'll be "frequently asked" or not yet!) | |
63 | ||
64 | - It takes forever to do an update; what can I do to speed it up? | |
65 | ||
66 | CVS tries to be smart about what it sends; it will transmit and | |
67 | install only those files that have changed, and will sometimes | |
68 | transmit and apply patches instead, to save transmission time. | |
69 | ||
70 | It is also possible to have CVS compress transmitted data, using zlib. | |
71 | Put the following line in your ~/.cvsrc file: | |
72 | ||
73 | cvs -z 9 | |
74 | ||
75 | See the CVS documentation for more details. | |
76 | ||
77 | ||
78 | - What happens if I've changed files in my working directory, and then | |
79 | I do an update? | |
80 | ||
81 | If you have made local changes to your sources, the `cvs update' | |
82 | command will not overwrite them; instead, CVS will try to merge its | |
83 | changes with your changes, as if you had applied a patch. Rejects are | |
84 | marked in the sources. | |
85 | ||
86 | - Why does the build process try to run autoconf, aclocal, or automake? | |
87 | ||
88 | It shouldn't; if it does, that's a bug, I think. Those are the | |
89 | tools we use to generate `configure', `aclocal.m4', and the | |
90 | `Makefile.in' files from their respective sources. Ideally, you | |
91 | shouldn't need to have them installed, if you don't want to change | |
92 | those sources. If you do, see the section in `README' called | |
93 | `Hacking It Yourself'. |