Updated README.developers with the fact that zotnet/tws is going away.
[mmh] / docs / README.developers
index b2c2efa..74c3c07 100644 (file)
@@ -41,12 +41,23 @@ end-users who don't have any interest in changing the configure-related files
 and don't have autoconf installed.  They'll be unable to make without playing
 around with `touch'.
 
-The correct order to commit the configure-related files is:
+The correct procedure to commit the configure-related files is:
 
-% cvs commit acconfig.h aclocal.m4 config.h.in configure.in configure stamp-h.in
+    % cvs commit acconfig.h aclocal.m4 configure.in
+    % autoheader; autoconf; date > stamp-h.in
+    % cvs commit config.h.in configure stamp-h.in
 
-If you haven't changed all of those files, just commit the rest in the
-stated order (e.g. cvs commit acconfig.h config.h.in stamp-h.in).
+The reason for the three-step commit is that configure.in contains the RCS $Id
+keyword, so when you commit it, a new version is written locally.  Therefore,
+the autoconf regeneration should be held off until after the commit, or your
+local stamp-h.in will become out-of-sync with the CVS version (granted, not that
+big a deal).  For the second step, you're doing the same commands as a 
+`make reset' would do, but using that command would require extra configure runs
+to make Makefile be up-to-date.
+
+If you haven't changed all the files noted above, just commit the ones you have
+changed, in the stated order (for instance, configure.in, then configure and
+stamp-h.in).
 
 
 -------------------
@@ -126,8 +137,26 @@ zotnet/mts/
     MTS code not specific to any single MTS apparently goes here.
 
 zotnet/tws/
-    No idea what "tws" stands for, other than 't' almost certainly standing for
-    "time".  Date and time manipulation routines go here.
+    "tws" apparently stands for "time with structure", a rather odd phrase.
+    This directory used to be the place for date and time manipulation code, but
+    currently nothing in here is compiled.  There are new, more portable
+    versions of the key files in h/ and sbr/, and this directory will soon go
+    away completely.
+
+
+-------------------------------------------------------
+nmh-local functions to use in preference to OS versions
+-------------------------------------------------------
+
+For some system functions whose availability or behavior varies from OS to OS,
+nmh conditionally uses a local definition with the same name as the OS function
+(e.g. snprintf()).  For other functions, developers need to avoid the OS
+versions and always use the nmh-supplied function.  Here is a list of such
+functions: 
+
+OS function  nmh-local version to use instead
+===========  ================================
+getpass()    nmh_getpass()
 
 
 -------------