X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=docs%2FREADME.developers;fp=docs%2FREADME.developers;h=7cb5eecfe359a33eea5a863bc926391cc6710270;hp=e1456fff36bb2d52b2b090d721d6fb4c4a3aa6ed;hb=28208133c250bf189331314c955ab957639fc112;hpb=b33ba7a7953d06a123ee59811903f0eb7f69e120 diff --git a/docs/README.developers b/docs/README.developers index e1456ff..7cb5eec 100644 --- a/docs/README.developers +++ b/docs/README.developers @@ -15,15 +15,15 @@ directory structure ------------------- Following is a list of mmh's directories along with a brief description -of the purpose of each one. Meanings are given for the abbreviations, +of the purpose of each one. Meanings are given for the abbreviations, but note that these meanings are just informed guesses as to what the MH developers were thinking. ./ - The top-level directory. Contains files like README and INSTALL. + The top-level directory. Contains files like README and INSTALL. config/ - Contains utility files for the `configure' process. Ordinarily + Contains utility files for the `configure' process. Ordinarily nothing in here needs to be messed with, but config/config.c is very interesting to have a look at. @@ -45,15 +45,15 @@ man/ manual pages. sbr/ - "sbr" stands for "subroutine(s)". For the most part, each source + "sbr" stands for "subroutine(s)". For the most part, each source file in this directory contains a single function with the same - name as the source file. These functions are of general use and + name as the source file. These functions are of general use and are called from throughout mmh. uip/ - "uip" stands for "User Interface Programs". Most mmh commands have a + "uip" stands for "User Interface Programs". Most mmh commands have a file in this directory named .c containing the code for that - command (e.g. repl.c). In some cases there is also an auxiliary file + command (e.g. repl.c). In some cases there is also an auxiliary file called sbr.c which contains additional subroutines called from .c. @@ -85,34 +85,19 @@ using a minimum of autoconf 2.61. Most of the configure-related files are automatically generated. The only files you should need to manually edit are `acconfig.h' and -`configure.ac'. Don't, for instance, edit `config.h.in'. Though it is +`configure.ac'. Don't, for instance, edit `config.h.in'. Though it is an input file from the point of view of the users (and the configure script) it is an output file from the point of view of the developers (and the autoconf script). Note that the automatically generated autoconf files (such as `config.h.in', `stamp-h.in', and `configure'), are NOT kept in the -version control system. Thus, when you check out the source tree, +version control system. Thus, when you check out the source tree, you need to run the `autogen.sh' script before you can build anything: % ./autogen.sh -------------------------------------------------------- -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. 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() - - ------------- releasing mmh ------------- @@ -130,7 +115,7 @@ here): 4. % make mmhdist - 5. Untar mmh-1.0.tar.gz and `diff -r' it vs. your workspace. Make + 5. Untar mmh-1.0.tar.gz and `diff -r' it vs. your workspace. Make sure no files got left out of the distribution that should be in it (due to someone forgetting to update the DIST variables in the Makefiles). @@ -139,8 +124,7 @@ here): to do: % chown -R 0:0 nmh-1.0 - % tar cvf nmh-1.0.tar nmh-1.0 - % gzip nmh-1.0.tar + % tar cvf - nmh-1.0 | gzip -c > nmh-1.0.tar If you leave the files in the archive as being owned by yourself, your UID may coincide with one of a user on a machine where mmh is @@ -157,21 +141,21 @@ here): 9. % git commit VERSION; git push -10. Generate an MD5 hash and a PGP signature of the tarball. +10. Generate an MD5 hash and a PGP signature of the tarball: - % md5sum mmh-1.0.tar.gz >mmh-1.0.tar.gz.md5sum - % gpg --output mmh-1.0.tar.gz.sig --detach-sig mmh-1.0.tar.gz + % md5sum mmh-1.0.tar.gz > mmh-1.0.tar.gz.md5sum + % gpg -ab mmh-1.0.tar.gz You can verify the hash and signature with: % md5sum -c mmh-1.0.tar.gz.md5sum - % gpg --verify mmh-1.0.tar.gz.sig mmh-1.0.tar.gz + % gpg --verify mmh-1.0.tar.gz.asc 11. Upload the files to the web space: - % scp -p mmh-1.0.tar.gz* marmaro.de:.../mmh/ + % scp -p mmh-1.0.tar.gz* marmaro.de:.../prog/mmh/ -12. Update the http://marmaro.de/prog/mmh/ homepage. +12. Update the homepage. 13. Add a news item to relevant pages, e.g. freshmeat.net. @@ -184,8 +168,8 @@ here): announcement to bugtraq@securityfocus.com. Preferably, the announcement should contain: - - the MD5 hash - the URL for the tarball + - the MD5 hash - the URL of the website - a brief summary of visible changes - the URL of the git diff page that shows a detailed list of