home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: InfoMgt / InfoMgt.zip / uudbz003.zip / install.doc < prev    next >
Text File  |  1997-08-21  |  9KB  |  204 lines

  1. This is the installation documentation for the Mome Raths BBS package
  2. dbz for UUPC/Extended.  This package is not part of the UUPC
  3. distribution, but is based upon their work.  UUPC/Extended is
  4. copyrighted, trademarked software, and every effort has been made to not
  5. knowingly infringe upon either one.
  6.  
  7. However, the dbz.c and dbz.h that are in this distribution are original
  8. works.  It has been made public domain by myself, the author.
  9.  
  10. The patched expire.exe, however, is a copyrighted program, covered
  11. by the UUPC/Extended copyright.  The diff files contain all of the
  12. necessary entries, should you wish to recompile it yourself (assuming
  13. that you are using emx, at any rate).
  14.  
  15. Please read the README file for a more thorough explanation of what dbz
  16. is, why it is public domain and what it is used for.
  17.  
  18.  
  19. Unpacking:
  20.  
  21. I suggest that you make a copy of your UUPC source files, if you wish to
  22. recompile it, and use the copy rather than the originals.  Unzip this
  23. file into your new source directory (assuming SOURCE for the following
  24. examples and explanations).  Files will be put into the SOURCE\NEWS 
  25. and SOURCE\LIB directories as well as into SOURCE itself.
  26.  
  27. If you do not wish to recompile, you may unzip into a temporary
  28. directory, then move the executables to your OS2BIN directory, or
  29. some other directory in your path.
  30.  
  31. Once you unzip the package, these are the files you should have:
  32.  
  33. README -- explains the prerequisites, what dbz is, what it is used for,
  34. what NoCEM is, why dbz is but isn't public domain and why I wrote it.
  35.  
  36. Install.doc -- this file, tells you how to install and use dbz.  How it
  37. may differ from other dbz programs.  How to recompile it using emx.
  38.  
  39. Change.log -- A list of changes made to the package.
  40.  
  41. Makefile.dbz -- for using dmake to recompile dbz.
  42.  
  43. dbz.exe -- a compiled executable, ready-to-go.
  44.  
  45. expire.exe -- a patched replacement for UUPC's expire program.
  46. The original 1.12s version almost always seemed to crash by
  47. attempting to delete nonexistent files.  Note that if you are
  48. running dbz.exe for NoCEM on spool, you will have deleted files.
  49.  
  50. dbzMake.Cmd -- a REXX script that sets up the correct paths to compile
  51. dbz.
  52.  
  53. dbz_mksetup.cmd -- a supporting REXX script called by dbzMake.Cmd, if
  54. necessary.  If the path has already been setup, then this does not get 
  55. called.
  56.  
  57. patchme.cmd -- a rather brainless batch file that can be used to patch 
  58. the sources.
  59.  
  60. testDBZ.Cmd -- a batch file used to test dbz errorlevel returns.
  61.  
  62. lib/lib.diff -- diff file for library files.
  63.  
  64. news/news.diff -- diff file for news files.
  65.  
  66. news/dbz.c -- source file for dbz executable.
  67.  
  68. news/dbz.h -- header file for dbz.
  69.  
  70.  
  71. Installation:
  72.  
  73. The binaries will come out at the root of the directory where you unzipped
  74. this package.  Move the binary into the \UUPC\OS2BIN directory.  If you
  75. wish to keep the documentation, move them into \UUCP\DOCS.  I suggest 
  76. renaming them to avoid potential naming conflicts.
  77.  
  78. If you have your spool directory in an odd place, check UUPC.RC to make
  79. sure that the spool directory is specified.  However, it is unlikely
  80. that anything would work if it were incorrect.
  81.  
  82. That's basically it.  Now, test to make sure it is working correctly.
  83.  
  84.  
  85. Testing the installation:
  86.  
  87. To test, open an OS/2 window, and type:
  88.     dbz
  89.  
  90. It will give you an error that you typed it without parameters.  Now, try:
  91.     dbz -x "<1234>"
  92.  
  93. Note the quotes!  Without the quotes, it will interpret the '<' and '>'
  94. characters as redirection symbols.
  95.  
  96. The above command should not have given you any output.  Now, try:
  97.     dbz -m "<1234>"
  98.  
  99. It should spit <1234> back out at you.
  100.  
  101. If you have the GNU file utilities installed, try:
  102.     head g:\uucp\news\history.pag {or, wherever you have news installed}
  103.  
  104. You should get some somewhat human-readable stuff on the screen.  Using
  105. the handy OS/2 Warp window functions, find one between the '<' and '>'
  106. characters on one line, then click and hold the left mouse button down
  107. on the '<' character, drag it to the '>' character, and then let go. 
  108. Now, you should have the section you want highlighted on the screen. 
  109. Next, click on the highlighted section with the right mouse button, and
  110. a popup menu appears.  Choose "copy" from the menu, and the highlighting
  111. goes away.  Now, type:
  112.     dbz -x "
  113.  
  114. Next, press and release the [Alt] key, then press the [P] key.  The text
  115. will be pasted into the line.  Lastly, press ["] to finish the quote, so
  116. that the line looks simiar to:
  117.     dbz -x "<A0000009.$cv@penguin.com>"
  118.  
  119. Now, press return.  You should get something like:
  120.     <A0000009.$cv@penguin.com> 869834698 1388 news.software.readers:365
  121.  
  122. If you can see both, then compare to make sure that they are the same. 
  123. If not, something is definitely wrong.  Run expire and then genhist,
  124. then try again.  If the problem continues, do not use this program any
  125. further.  Do copy the entire screen to a file, send it and
  126. \UUPC\SPOOL\DBZ.LOG via email to MarchHare@momeraths.org.
  127.  
  128.  
  129. Differences:
  130.  
  131. I can only guess what the output of dbz on an actual C-News feed looks
  132. like.  However, from what I do know, there are some differences.  The 
  133. quotes being required around the key are the biggest and most important
  134. difference.  This version of dbz has been altered to output the key and 
  135. data, instead of just the data.  This was done to make it easier to work
  136. with NoCEM or NoCEM on spool.  It will also return an errorlevel of 1 if
  137. it could not add/find existing/find missing the database key input.
  138.  
  139. Not all functions are implemented, as I saw very little need.  You can
  140. append a record, extract (see) a record or extract (see) a missing
  141. record.  You cannot delete or modify a record (note that the original
  142. C-News dbz does not delete records either).  Apparently, the UUPC
  143. routines do not modify records, either, so it would have taken a
  144. rather large effort for little return.  In any event NoCEM will only do
  145. those three functions, so they were the only ones implemented.
  146.  
  147. Another difference is that there is no provision for specifying the
  148. filename.  Since this is a narrowly targetted program, again, I did not
  149. see the need.  It also would have required a little more rewriting of
  150. various routines, and I wanted to change the actual UUPC source code as
  151. little as possible.  It could be done easily enough, however, by calling
  152. the functions directly, rather than going through open_history() and
  153. close_history().
  154.  
  155.  
  156. Recompiling:
  157.  
  158. The following instructions assume the emx development environment, and
  159. the prerequisites in the README.  If you are using a different compiler,
  160. follow the appropriate instructions for it.  The diff files are for
  161. emx/gcc.  UUPC is currently compiled with IBM's C-Set (as far as I
  162. know), so very little modification should be necessary (expire being
  163. the obvious example).
  164.  
  165. In general, I tried to make the Makefile as general purpose as possible. 
  166. It should make all of the applicable UUPC libraries, but you will need 
  167. to add files that are specific to another executable. It should save
  168. anyone some work, at least.  To compile the entire UUPC package under
  169. emx/gcc would still take some work.
  170.  
  171. Follow the installation instructions above, unzipping the package into a
  172. copy of the source.
  173.  
  174. Next, you want to patch the source code for compiling under emx, using
  175. GNU's patch program.  The latest one is named "patchos2.exe".  I 
  176. apologize for the size of the diffs, but whenever I tried using -b, it
  177. would fail a lot.  So, I supplied the unified diffs without spacing 
  178. considerations.
  179.  
  180. I put a batch file in the package that can be used to run patchos2, if 
  181. you so desire.  I created it simply because I got tired of typing. 
  182. Otherwise, the following manual procedures will do the exact same thing.
  183.  
  184. Open an OS/2 command window, change into the LIB directory, then type:
  185.     patchos2 <lib.diff
  186.  
  187. Next, change into the NEWS directory, then type:
  188.     patchos2 <news.diff
  189.  
  190. Open an OS/2 command window and change to the directory you setup (if 
  191. you are not already there).  Don't attempt to run it from an editor's
  192. command environment, unless you can specify the REXX program to call
  193. (which would probably require changes to your menu, and probably not
  194. worth it).
  195.  
  196. Now, run:
  197.     dbzmake
  198.  
  199. *Everything* should make and be fine.  Unfortunately, it will build
  200. *everything* *every* time.  If you are adventurous, you can try to
  201. disable the RCS information and recompile.  Sorry, not my code, nothing
  202. I can really do about it except point you in the right direction or
  203. providing very large diff files (and chance breaking something).
  204.