X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=README.CVS;h=4672367dcada6f6fd79df060360a7d35a405a7dd;hb=c257b555225193e54d85daf541d29578b3c93882;hp=e7568ead1ca31985c33708f802e9e21d0c4fbb70;hpb=f658940d02cf2fd893296b6a7825b42502573668;p=crypto.git diff --git a/README.CVS b/README.CVS index e7568ead..4672367d 100644 --- a/README.CVS +++ b/README.CVS @@ -164,18 +164,20 @@ Following directories currently exist in SILC source tree. Howto Compile SILC Source Tree ============================== -After checkout from CVS the SILC source tree must be prepared for -configuration and compilation. To compile the source tree, give, +To be able to prepare the CVS tree for configuration and compilation +Autodist must be installed into the system. You can download the latest +version of Autodist from: - ./prepare + http://silcnet.org/software/download/autodist/ + +To prepare the CVS source tree for configuration and compilation, give: + + autodist ./configure --enable-debug make -The ./prepare script is included in to the source tree and it never -appears in public distribution. The script prepares the source tree -by creating configuration scripts and Makefiles. The prepare must be -run every time you make some changes to configuration scripts (however, -making changes to Makefile.am's does not require running ./prepare). +The autodist must be run every time you make some changes to configuration +scripts. As a developer you should read the ./configure script's help by giving ./configure --help and study all of its different options. Also, @@ -197,31 +199,31 @@ like "*server*,*rng*" to match all functions, and filenames that has can freely define regural expressions as debug string. -Howto Clean SILC Source Tree -============================ - -To entirely clear the source tree to the state after it was checked out -from CVS, give, - - ./prepare-clean - -This calls `make distclean' plus removes automatically generated files -by hand. It also removes *.log files. However, it will not remove -any other files you might have created. - - Makefiles and configuration files ================================= -Developers should never directly write a Makefile. All Makefiles are -always automatically generated by ./prepare and later by ./configure -scripts. Instead, developers must write Makefile.am files. There -are plenty of examples what they should look like. If you change -Makefile.am during development you don't have to run ./prepare, just -run normal make. - -Configuration files are the files that ./prepare automatically generates -and what will be included into public distribution. ./prepare creates -for example the ./configure script that is not commited to the CVS. -`configure.in' is the file that developers must edit to change ./configure -script. After changing one must run ./prepare. +Developers should never directly write a Makefile. All Makefiles are +always automatically generated by autodist and later by ./configure +scripts. Instead, developers must write Makefile.ad files or Makefile.am +files. If the Makefile needs to include any distdefs (SILC_DIST_XXX), +then Makefile.ad (.ad stands for autodist) must be written. If the +Makefile is generic (common to all distributions) then Makefile.am may be +written. Note that distdefs MUST NOT be used in Makefile.am files, as the +autodist will modify them. See the source tree for examples. If you +change Makefile.ad files, the autodist must be rerun. + +The autodist also creates the configure.ac script from which the autoconf +then creates the ./configure script. All changes to configure must +always be done into the configure.ad scripts. All changes made to +configure.ac will be lost. The autodist distdefs may also be used in +configure.ad files. It is also possible to write more than one +configure.ad in the source tree. All configure.ad fragments will be +collected from the source tree by autodist and combined into one +configure.ac scripts. After making changes to configure.ad files the +autodist must be rerun. + +The distdefs are defined in the corresponding distributions. All +distributions live in distdir/ directory. The distdefs can be used in any +file in the source tree, but mainly they are used in Makefile.ad, +configure.ad and source and headers files. See autodist documentation for +more information how to use distdefs.