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
|
RCS: @(#) $Id: README,v 1.1.1.1 2004/01/12 22:02:08 joye Exp $
Welcome to the tcllib, the Tcl Standard Library. This package is
intended to be a collection of Tcl packages that provide utility
functions useful to a large collection of Tcl programmers.
The home web site for this code is http://tcllib.sourceforge.net/ .
At this web site, you will find mailing lists, web forums, databases
for bug reports and feature requests, the CVS repository (browsable on
the web, or read-only accessible via CVS ), and more.
The structure of the tcllib source hierarchy is:
tcllib
+- modules
+- <module1>
+- <module2>
+- ...
The install hierarchy is:
.../lib/tcllib
+- <module1>
+- <module2>
+- ...
There are some base requirements that a module must meet before it
will be added to tcllib:
* the module must be a proper Tcl package
* the module must use a namespace for its commands and variables
* the name of the package must be the same as the name of the
namespace
* the module must reside in a subdirectory of the modules directory in
the source hierarchy, and that subdirectory must have the same name
as the package and namespace
* the module must be released under the BSD License, the terms of
which can be found in the toplevel tcllib source directory in the file
license.terms
* the module should have both documentation ([*]) and a test suite
(in the form of a group of *.test files in the module directory).
[*] Possible forms: doctools, TMML/XML, nroff (man), or HTML.
The first format is the most prefered as it can be processed with
tools provided by tcllib itself (See module doctools). The first
two are prefered in general as they are semantic markup and thus
easier to convert into other formats.
* the module must have either documentation or a test suite. It can
not have neither.
* the module should adhere to Tcl coding standards
When adding a module to tcllib, be sure to add it to the Makefile.in
so it will be installed. Add a line like:
MYNEWMODULE=mynewmodule
to the list of modules at the top of the Makefile.in, and then add
$(MYNEWMODULE) to the definition of the MODULES variable. This will
allow users to choose which modules to install by commenting or
uncommenting lines in the Makefile.
Each module source directory should have no subdirectories (other than
the CVS directory), and should contain the following files:
* source code *.tcl
* package index pkgIndex.tcl
* tests *.test
* documentation *.man, *.n, *.xml
If you do not follow this directory structure, the tcllib Makefile
will fail to locate the files from the new module.
|