1 This document describes how to compile the SILC source tree after checkout
2 from the CVS. This README.CVS file will appear only in the checkout
3 source tree and not in any public distribution.
5 Howto Checkout Source Tree
6 ==========================
8 Be sure to set the CVSROOT environment variable first or use -d option
9 of CVS. I suggest setting CVSROOT environment variable.
11 export CVSROOT=:pserver:silccvs@silc.pspt.fi:/silc
14 Checkout of SILC source tree, and to bemore specific, SILC trunk, give,
20 cvs -d :pserver:silccvs@silc.pspt.fi:/silc co silc
23 CVS will ask password. The password for anonymous (read access) CVS is
28 CVS currently does not have branches, thus this checkouts the trunk.
31 What SILC Source Tree Includes
32 ==============================
34 SILC Source tree includes a lot more stuff that appears in public
35 distribution. The source tree includes, for example, internal scripts,
36 configuration files, SILC webpages etc. These never appear on a public
39 Following directories currently exist in SILC source tree.
43 Includes all the SILC documentation. Some of the documentation
44 are generated when distribution is generated. The automatically
45 generated files must never be commited to CVS.
49 Includes SILC include files.
53 Includes SILC libraries. There maybe libraries on the CVS that
54 does not appear on public distribution.
58 Includes the official SILC web pages and everything that relates
59 to them. This directory never appears on public distribution.
63 Includes SILC client. There can be some extra files that will
64 never appear in public distribution, such as, configuration files.
68 Includes SILC server. There can be some extra files that will
69 never appear in public distribution, such as, configuration files.
72 Howto Compile SILC Source Tree
73 ==============================
75 After checkout from CVS the SILC source tree must be prepared for
76 configuration and compilation. To compile the source three, give,
79 ./configure --enable-debug
83 The ./prepare script is included in to the source tree and it never
84 appears in public distribution. The script prepares the source tree
85 by creating configuration scripts and Makefiles. The prepare must be
86 run every time you make some changes to configuration scripts.
88 As a developer you should read the ./configure scripts help by
89 giving ./configure --help and study all of its different options. Also,
90 you should configure the script with --enable-debug option as it
91 compiles SILC with -g (debugging) option and it enables the
92 SILC_LOG_DEBUG* scripts. Warning is due here: The debugging produced
93 by both cilent and server is very heavy, thus it is common to test
94 the programs as follows:
96 ./silc -f <config file> 2>silc.log
97 ./silcd -f <config file> 2>silcd.log
100 Howto Clean SILC Source Tree
101 ============================
103 To entirely clear the source tree to the state after it was checkedout
109 This calls `make distclean' plus removes automatically generated files
110 by hand. It also removes *.log files.
113 Makefiles and configuration files
114 =================================
116 Developers should never directly write a Makefile. All Makefiles are
117 always automatically generated by ./prepare and later by ./configure
118 scripts. Instead, developers must write Makefile.am files. There
119 are plenty of examples what they should look like. If you change
120 Makefile.am during development you don't have to run ./prepare, just
123 Configuration files the files that ./prepare automatically generates
124 and what will be included into public distribution. ./prepare creates
125 for example the ./configure script that is not commited to the CVS and
126 must not be commited. `configure.in' is the file that developers must
127 edit to change ./configure script. After changing one must run
131 Creating Distribution
132 =====================
134 The version of the distribution is currently always set in the configure.in
135 file. The actual distribution is created by simply giving,
140 Information About CVS Repository
141 ================================
143 SILC CVS repository resides in silc.pspt.fi (193.166.51.47) in a 2 Gb
144 SCSI harddrive. The repository is backuped every morning at 06:00 EEST.
145 The entire repository is backuped and the backup is distributed to at
146 least two independent machines and the backup is recorded into tapes,
147 as well. There are always week's of backups in hand in case they are
148 needed. Every week the "lastweek's" backups are removed and "this weeks"