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 | |
5d94b2fe JB |
20 | dependency management. You will also need to install autoconf, |
21 | automake, and libtool; the recommended versions are listed in README. | |
5469b4a1 | 22 | |
a88b0ab2 JB |
23 | To check out a CVS working directory: |
24 | ||
25 | 1) Install CVS version 1.9 or later on your system. | |
26 | 2) Log into the CVS server: | |
8afdfa8e | 27 | $ cvs -d :pserver:anoncvs@anoncvs.cygnus.com:/cvs/guile login |
324a8d98 JB |
28 | At the prompt for `CVS password:', type `anoncvs'. |
29 | Once you have logged in, your password is saved in ~/.cvspass, and you | |
30 | will not need to enter it again. | |
a88b0ab2 | 31 | 3) Check out a module: |
8afdfa8e | 32 | $ cvs -z 9 -d :pserver:anoncvs@anoncvs.cygnus.com:/cvs/guile checkout guile-core |
a88b0ab2 JB |
33 | This should create a new directory `guile-core' in your current |
34 | directory, and populate it with the current Guile sources. | |
5d94b2fe JB |
35 | 4) In the top directory of the source tree, run the command `./autogen.sh'. |
36 | This builds the configure script, Makefile.in, and other derived files | |
37 | used by the build system. | |
a88b0ab2 | 38 | |
487f379f JB |
39 | The modules available for checkout are: |
40 | guile-core --- The scheme interpreter itself. | |
41 | guile-doc --- Guile documentation-in-progress. | |
4ebf0b3e | 42 | guile-oops --- GOOPS Guile Object Oriented Programming System. |
487f379f JB |
43 | guile-tcltk --- An interface between Guile and Tcl/Tk. |
44 | guile-scsh --- An incomplete port of SCSH 0.4.4 to Guile. | |
45 | guile-rgx-ctax --- This has been discontinued; use Andrew Archibald's | |
46 | distribution instead: | |
47 | ftp://ftp.red-bean.com/pub/guile/contrib/misc/guile-lang-allover-0.1.tar.gz | |
48 | ||
a88b0ab2 JB |
49 | Once you have a working directory, you can bring it up to date easily |
50 | and efficiently: | |
51 | ||
52 | 1) Go to the top directory of the source tree. That is, your current | |
53 | directory should be the one containing `configure.in', `README', | |
54 | and so on. | |
55 | 2) Do the update: | |
56 | $ cvs update | |
57 | ||
58 | This will incorporate any changes the developers have made to Guile | |
59 | since your last update into your source tree. | |
60 | ||
61 | The EGCS Project is kindly lending us space, time, and bandwidth on | |
62 | their CVS server. Thanks, folks! | |
63 | ||
64 | ||
a588d62c JB |
65 | Change Notification ================================================== |
66 | ||
67 | If you would like to receive mail when people commit changes to the | |
68 | Guile CVS repository, you can subscribe to guile-cvs@egcs.cygnus.com | |
69 | by sending a message to guile-cvs-subscribe@egcs.cygnus.com. Even | |
70 | better, you can get daily digests of these commit messages by sending | |
71 | a message to guile-cvs-digest-subscribe@egcs.cygnus.com. | |
72 | ||
73 | If you want to subscribe an e-mail address other than the one that | |
74 | appears in your From: header, say foo@bar.com, send a mail note to | |
75 | guile-cvs-subscribe-foo=bar.com@egcs.cygnus.com. | |
76 | ||
77 | ||
a88b0ab2 JB |
78 | Questions ============================================================ |
79 | ||
80 | (I don't know if they'll be "frequently asked" or not yet!) | |
81 | ||
82 | - It takes forever to do an update; what can I do to speed it up? | |
83 | ||
84 | CVS tries to be smart about what it sends; it will transmit and | |
85 | install only those files that have changed, and will sometimes | |
86 | transmit and apply patches instead, to save transmission time. | |
87 | ||
88 | It is also possible to have CVS compress transmitted data, using zlib. | |
89 | Put the following line in your ~/.cvsrc file: | |
90 | ||
91 | cvs -z 9 | |
92 | ||
93 | See the CVS documentation for more details. | |
94 | ||
95 | ||
96 | - What happens if I've changed files in my working directory, and then | |
97 | I do an update? | |
98 | ||
99 | If you have made local changes to your sources, the `cvs update' | |
100 | command will not overwrite them; instead, CVS will try to merge its | |
101 | changes with your changes, as if you had applied a patch. Rejects are | |
102 | marked in the sources. | |
103 | ||
104 | - Why does the build process try to run autoconf, aclocal, or automake? | |
105 | ||
106 | It shouldn't; if it does, that's a bug, I think. Those are the | |
107 | tools we use to generate `configure', `aclocal.m4', and the | |
108 | `Makefile.in' files from their respective sources. Ideally, you | |
109 | shouldn't need to have them installed, if you don't want to change | |
110 | those sources. If you do, see the section in `README' called | |
111 | `Hacking It Yourself'. |