home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / CLIPPER / MISC / CLPMK.ZIP / CLPMK.DOC next >
Encoding:
Text File  |  1988-05-11  |  9.7 KB  |  297 lines

  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.                                    CLPMK.EXE
  30.  
  31.                                        a
  32.  
  33.                     C L I P P E R   M A K E   U T I L I T Y
  34.  
  35.                                  Version 1.1
  36.  
  37.             Copyright (c) 1988 by Bill Tansill: ALL RIGHTS RESERVED
  38.  
  39.  
  40.         This file describes the utility file CLPMK.EXE, version 1.0
  41.         created by Bill Tansill on May 9,1988.
  42.  
  43.         This utility is distributed on an "AS-IS" basis.  The author
  44.         may not be held liable for any special, consequential,
  45.         incidental or other damages or loss of income.  No warrenty
  46.         of merchantability or fitness for use is made, either express
  47.         or implied.
  48.  
  49.         CLPMK is the copyrighted property of Bill Tansill.  You are    
  50.         granted a limited license to use CLPMK, and to copy and
  51.         distribute it, provided that you agree to the following terms:
  52.  
  53.         1)  No fee may be charged for such copying and distribution.
  54.         2)  CLPMK may be distributed ONLY in its original, unmodified
  55.             form.
  56.         3)  This documentation file must accompany CLPMK.
  57.         4)  This documentation file may not be altered. 
  58.  
  59.         Any voluntary contributions for the use of this program will
  60.         be appreciated, and should be sent to:
  61.  
  62.             Bill Tansill
  63.             P.O. Box 3196
  64.             Falls Church, Va. 22043
  65.  
  66.         A contribution of $15.00 is suggested.  
  67.  
  68.         You may NOT use CLPMK in a Commercial or Governmental 
  69.         environment without making a contribution.  An invoice is
  70.         provided at the end of this document for your convenience.
  71.  
  72.         Those of you who are conscientious enough to make a contribution
  73.         and to send your name and address will be recorded in a database
  74.         and will be first in line for updates.
  75.     
  76.         To be honest, the number of people supporting this effort by
  77.         registering will determine to a large extent the frequency of
  78.         updates.  If I can supplement my salary through the
  79.         distribution of utility software such as CLPMK, then I can
  80.         and will devote time to improving this product and developing
  81.         others.  If I get little or no support from those of you using
  82.         CLPMK, then I will have to go get a part-time job somewhere.
  83.         As you might expect, this will severly limit the amount of
  84.         time I have left for this or any other projects.  'nuff said.
  85.  
  86.  
  87.     How to use CLPMK
  88.  
  89.         The CLPMK syntax is very simple: type "CLPMK" and any valid
  90.         CLIPPER switches (-m -l -q etc.) from the DOS command line.
  91.         Be sure to separate each switche with a space.
  92.  
  93.         CLPMK will scan your subdirectory, and will call Clipper
  94.         to compile any .PRG files with a later time/date
  95.         stamp than the corresponding .OBJ file.  In the case of .CLP
  96.         files, each program listed in the .CLP file is tested against
  97.         the time/date stamp of the .OBJ file created when the .CLP
  98.         file was originally compiled.  If any programs whose names 
  99.         appear in the .CLP file have a later time/date stamp, the 
  100.         contents of the .CLP file are recompiled.
  101.  
  102.         When Clipper is run from within CLPMK, no error messages will
  103.         appear on the screen.  Error messages, should there be any, 
  104.         are redirected to a file named "CLP.TXT".  If CLPMK signals
  105.         that a compile-time error has occurred, use your editor to
  106.         read the "CLP.TXT" file.  This file will contain all CLIPPER
  107.         generated error listings.
  108.  
  109.         Some assumptions apply.  First, CLPMK assumes that the
  110.         CLIPPER directory is in your PATH list.  The second
  111.         assumption is that you are calling CLPMK from the directory
  112.         containing the files that you wish to compile.  Finally, 
  113.         CLPMK.EXE must be in a directory which is accessible from 
  114.         your PATH statement so that DOS can find it.
  115.  
  116.     Error Codes            
  117.  
  118.         The DOS ERRORLEVEL is used to indicate errors detected by 
  119.         CLPMK.  The meaning of the error codes is as follows:
  120.  
  121.         ERRORLEVEL == 1 Indicates that there are no files which need
  122.         to be compiled.
  123.  
  124.         ERRORLEVEL == 2 Indicates that no source files were found.
  125.     
  126.         ERRORLEVEL == 3 Indicates that one or more errors occurred  
  127.         during compilation.
  128.  
  129.         ERRORLEVEL == 4 Indicates that the arguments in the CLIPPER
  130.         argument list were run together (-s-q) and need to be 
  131.         respecified (-s -q).
  132.  
  133.         ERRORLEVEL == 5 Indicates that there were one or more
  134.         unrecognized arguments specified (-z).
  135.  
  136.     CLPMK Limits
  137.  
  138.         CLPMK will work properly with either .CLP files, or stand 
  139.         alone programs.  You may NOT have a mixture.  That is, 
  140.         CLPMK will NOT work properly if you have some files in a
  141.         .CLP file, and some which you wish to compile separately
  142.         intermixed in the same subdirectory.  See example 1 - 3
  143.         for clarification.
  144.  
  145.         Except for generating error codes 4 and 5, CLPMK performs NO
  146.         ERROR CHECKING.  If you use CLPMK -cC:\FOO, CLIPPER will fail
  147.         if the subdirectory FOO does not exist, but CLPMK will not
  148.         warn you in advance.  This was a conscious decision.  Since
  149.         CLIPPER provides error checking of its command line arguments,
  150.         I felt that error checking on my part was redundant.
  151.  
  152.         CLPMK will only COMPILE files.  It does NOT call the linker.
  153.         It is best used in a batch file environment, where the batch
  154.         file will call PLINK if all files were successfully compiled.
  155.         See example 4 for details.
  156.  
  157.  
  158.         Example 1  && wrong way to compile a .clp file
  159.  
  160.             file1.prg   \
  161.             file2.prg   |
  162.             file3.prg   |
  163.             file4.prg    > individual files in c:\develop
  164.             file5.prg   |
  165.             file6.prg   |
  166.             project.clp /
  167.  
  168.             the contents of project.clp are:
  169.  
  170.             file1.prg
  171.             file2.prg
  172.             file3.prg
  173.             file4.prg
  174.             file5.prg
  175.  
  176.             In this case, file6.prg will not be compiled, since the
  177.             utility assumes that when it finds one or more .CLP files
  178.             in a subdirectory that all .PRG files will be contained
  179.             in the .CLP files.  An object file (project.obj) will be 
  180.             produced, but it will NOT contain file6.prg.
  181.  
  182.          Example 2  && right way
  183.  
  184.             file1.prg   \
  185.             file2.prg   |
  186.             file3.prg   |
  187.             file4.prg    > individual files in c:\develop
  188.             file5.prg   |
  189.             file6.prg   |
  190.             project.clp /
  191.  
  192.             the contents of project.clp are:
  193.  
  194.             file1.prg
  195.             file2.prg
  196.             file3.prg
  197.             file4.prg
  198.             file5.prg
  199.             file6.prg
  200.  
  201.             In this case, all files will be compiled, since each
  202.             .PRG file is contained within a .CLP file.  An object file
  203.             (project.obj) will be produced containing the compilation
  204.             of all .prg files.
  205.                                   
  206.          Example 3  && right way
  207.  
  208.             file1.prg   \
  209.             file2.prg   |
  210.             file3.prg    > individual files in c:\develop
  211.             file4.prg   |
  212.             file5.prg   /
  213.  
  214.             no .CLP file exists
  215.  
  216.             In this case, all files will be compiled, since each
  217.             .PRG file is a standalone file, and there are no .CLP
  218.             files in the subdirectory.  Five .obj files will be
  219.             produced, one for each .prg file.
  220.  
  221.         Example 4   && Suggested batch file configuration
  222.     
  223.             echo off
  224.             cls
  225.             clpmk %1 %2 %3 %4 %5 %6 %7
  226.             if ERRORLEVEL == 5 goto WRONG_ARGS  
  227.             if ERRORLEVEL == 4 goto BAD_ARGS
  228.             if ERRORLEVEL == 3 goto BAD_FILES
  229.             if ERRORLEVEL == 2 goto NO_SOURCE
  230.             if ERRORLEVEL == 1 goto NO_NEW
  231.             for %%1 in (*.lnk) do PLINK86 @%%1
  232.             goto QUIT
  233.             :NO_NEW
  234.             echo There were no .PRG or .CLP files needing to be compiled.
  235.             goto QUIT
  236.             :NO_SOURCE
  237.             echo There are no .PRG or .CLP file in this directory.
  238.             goto QUIT
  239.             :BAD_FILES
  240.             echo There were one or more compilation errors.  Examine
  241.             echo CLP.TXT for details.
  242.             goto QUIT
  243.             :BAD_ARGS
  244.             echo One or more arguments are run together.  
  245.             goto QUIT
  246.             :WRONG_ARGS
  247.             echo One or more arguments are unrecognized.
  248.             :QUIT
  249.             pause
  250.             cls
  251.  
  252.  
  253.     Known Incompatibilities
  254.  
  255.         This software depends on the DOS ERRORLEVEL.  Any
  256.         software that intercepts or resets ERRORLEVEL will conflict
  257.         with CLPMK.  At this time I am aware that FOXNET behaves in
  258.         this manner.  Consequently, you must NOT run FOXNET while 
  259.         using CLPMK.
  260.  
  261.         If anyone discovers any other problems, please mail me a
  262.         description of the problem at the P.O. box number listed
  263.         above.
  264.  
  265.     Trademarks
  266.  
  267.         Clipper is a trademark of Nantucket Corp.
  268.  
  269.                               CLPMK.EXE
  270.  
  271.  
  272.         INVOICE
  273.  
  274.         Make checks payable to:
  275.  
  276.         Bill Tansill                            Date:    /    /
  277.         P.O. Box 3196       
  278.         Falls Church, Va. 22043
  279.  
  280.  
  281.  
  282.         Name, address, phone (Please type or print): 
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.         Product                   Quantity   Price Each     Total
  290.  
  291.         CLPMK License Fee         ________    @ $15.00     _______
  292.  
  293.  
  294.         Total:                                             _______
  295.  
  296.  
  297.