summaryrefslogtreecommitdiff
path: root/ANON-CVS
blob: 1cdba49ed0fd8b16f48b7c09f1f6efe29b0a35f9 (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
Anonymous CVS access to Guile ========================================

We make the current Guile sources available via anonymous CVS.  Please
keep in mind that these sources are strictly experimental; they will
usually not be well-tested, and may not even compile on some systems.
They may contain interfaces which will change.  They will usually not
be of sufficient quality for use by people not comfortable hacking the
innards of Guile.  Caveat!

However, we're providing them anyway for several reasons.  We'd like
to encourage people to get involved in developing Guile.  People
willing to use the bleeding edge of development can get earlier access
to new, experimental features.  Patches submitted relative to recent
sources will be easier for us to evaluate and install, since the
patch's original sources will be closer to what we're working with.
And it allows us to start testing features earlier.

Since the CVS tree is arranged for the convenience of the developers,
it requires GCC and GNU Make, which together support automatic
dependency management.  You will also need to install autoconf,
automake, and libtool; the recommended versions are listed in README.

To check out a CVS working directory:

1) Install CVS version 1.9 or later on your system.
2) Log into the CVS server:
     $ cvs -d :pserver:anoncvs@anoncvs.cygnus.com:/cvs/guile login
   At the prompt for `CVS password:', type `anoncvs'.
   Once you have logged in, your password is saved in ~/.cvspass, and you
   will not need to enter it again.
3) Check out a module:
     $ cvs -z 9 -d :pserver:anoncvs@anoncvs.cygnus.com:/cvs/guile checkout guile-core
   This should create a new directory `guile-core' in your current
   directory, and populate it with the current Guile sources.
4) In the top directory of the source tree, run the command `./autogen.sh'.
   This builds the configure script, Makefile.in, and other derived files
   used by the build system.

The modules available for checkout are:
  guile-core --- The scheme interpreter itself.
  guile-doc --- Guile documentation-in-progress.
  guile-oops --- GOOPS Guile Object Oriented Programming System.
  guile-tcltk --- An interface between Guile and Tcl/Tk.
  guile-scsh --- An incomplete port of SCSH 0.4.4 to Guile.
  guile-rgx-ctax --- This has been discontinued; use Andrew Archibald's
	  distribution instead:
    ftp://ftp.red-bean.com/pub/guile/contrib/misc/guile-lang-allover-0.1.tar.gz

Once you have a working directory, you can bring it up to date easily
and efficiently:

1) Go to the top directory of the source tree.  That is, your current
   directory should be the one containing `configure.in', `README',
   and so on.
2) Do the update:
     $ cvs update

This will incorporate any changes the developers have made to Guile
since your last update into your source tree.

The EGCS Project is kindly lending us space, time, and bandwidth on
their CVS server.  Thanks, folks!


Change Notification ==================================================

If you would like to receive mail when people commit changes to the
Guile CVS repository, you can subscribe to guile-cvs@egcs.cygnus.com
by sending a message to guile-cvs-subscribe@egcs.cygnus.com.  Even
better, you can get daily digests of these commit messages by sending
a message to guile-cvs-digest-subscribe@egcs.cygnus.com.

If you want to subscribe an e-mail address other than the one that
appears in your From: header, say foo@bar.com, send a mail note to
guile-cvs-subscribe-foo=bar.com@egcs.cygnus.com.


Questions ============================================================

(I don't know if they'll be "frequently asked" or not yet!)

- It takes forever to do an update; what can I do to speed it up?

  CVS tries to be smart about what it sends; it will transmit and
  install only those files that have changed, and will sometimes
  transmit and apply patches instead, to save transmission time.

  It is also possible to have CVS compress transmitted data, using zlib.
  Put the following line in your ~/.cvsrc file:

  cvs -z 9

  See the CVS documentation for more details.


- What happens if I've changed files in my working directory, and then
  I do an update?

  If you have made local changes to your sources, the `cvs update'
  command will not overwrite them; instead, CVS will try to merge its
  changes with your changes, as if you had applied a patch.  Rejects are
  marked in the sources.

- Why does the build process try to run autoconf, aclocal, or automake?

  It shouldn't; if it does, that's a bug, I think.  Those are the
  tools we use to generate `configure', `aclocal.m4', and the
  `Makefile.in' files from their respective sources.  Ideally, you
  shouldn't need to have them installed, if you don't want to change
  those sources.  If you do, see the section in `README' called
  `Hacking It Yourself'.