home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / lclint.zip / lclint-2_3h-os2-bin.zip / README.OS2 < prev    next >
Text File  |  1997-09-12  |  6KB  |  158 lines

  1. lclint 2.3h for OS/2
  2. ====================
  3.  
  4. This file is originally part of the binary distribution of lclint for OS/2.
  5.  
  6. Contents:
  7. ---------
  8.  
  9.  Introduction
  10.  Differences to the Unix versions
  11.  Installation
  12.  Bugs and known problems
  13.  Where to get
  14.  History
  15.  Afterword
  16.  
  17.  
  18. Introduction:
  19. -------------
  20.  
  21. This port was originally based on Mike Smith's Win32 port. After having
  22. synchonized our ports for the 2.2a version the OS/2 port has now become
  23. "official" part of the lclint source tree. However the OS/2 version does
  24. differ to the Unix versions in some features.
  25.  
  26. This second public release of lclint for OS/2 fixes a number of bugs that
  27. were specific to the OS/2 version. As you may have guessed almost all of
  28. these bugs had to do with standard directories, pathnames and file I/O.
  29.  
  30.  
  31. Differences to the Unix versions:
  32. ---------------------------------
  33.  
  34. 1. The initialisation file has the name "lclint.rc". lclint searches for
  35.    it in the current directory and additionally in the directory pointed 
  36.    to by the environment variable "HOME" if set. 
  37.  
  38. 2. For path specifications "\" are used rather than "/". Please, note that
  39.    options passed to the C preprocessor used by lclint may still need "/".
  40.  
  41. 3. lclint/2 will use the value of the environment variable TMP (if not set
  42.    TEMP) for creating and reading temporary files if possible. Else the
  43.    current directory is used.
  44.  
  45.  
  46. Installation:
  47. -------------
  48.  
  49. For installing lclint there are four steps necessary:
  50.  
  51. 1. Place the executable file lclint.exe in some directory in your PATH.
  52. 2. Install all that's in the "imports" and "lib" subdirectories somewhere
  53.    you like it.
  54. 3. You need a C preprocessor to run lclint. This should normally be no
  55.    problem as most people needing lclint will use a C compiler anyway. 
  56.    If you do not have a C compiler or your compiler's preprocessor output
  57.    does not work together with lclint I suggest installing the emx runtime
  58.    package and any version of cpp.exe shipping with the emx development
  59.    package.
  60. 4. Set the environment variables in setenv.cmd to the values fitting to
  61.    your installation. If you do not want to call setenv.cmd before using
  62.    lclint put its contents into your config.sys file. I have appended some
  63.    examples of preprocessor commands to be used by lclint and additional
  64.    comments to the file. If you do not have any of the compilers mentioned
  65.    there you may have to try a bit.
  66. 5. Edit and place the configuration file lclint.rc somewhere lclint can
  67.    find it. This is the directory pointed to by the HOME environment
  68.    variable if set or else the directory containing the executable file.
  69.    It seems a good idea to put all global stuff into that file and all
  70.    project dependent information into another lclint.rc in the directory
  71.    containing the sources to be checked by lclint. lclint will first
  72.    read the global and then the local lclint.rc.
  73.  
  74. For building lclint you will need the complete sources package. Untar that
  75. file. You need HPFS to compile the package because there are plenty of 
  76. files with long filenames. Refer to the file BUILD.OS2 for further 
  77. instructions.
  78.  
  79.  
  80. Bugs and known problems:
  81. ------------------------
  82.  
  83. There are a few things that still do not work properly. As lclint was
  84. originally developed on and for Unix systems e.g. path names differ.
  85. Currently all paths specified in the command line have to contain
  86. backslashes rather than slashes which will be quite normal for people
  87. with no Unix background anyway.
  88.  
  89. Still unsolved problems I know of are:
  90.  
  91.  - when running the test suite while running the test case "rc" the 
  92.    preprocessor emits some warnings containing the actual temp file's 
  93.    name (e.g. ".\ll1945A.c:0: unterminated string or character constant").
  94.    The reason for this is the missing capability to nest quote characters
  95.    like ' and " under OS/2's cmd.exe, so I see nothing I could do there.
  96.  - when running the test suite the call of "lclint -nof -hints sharing4.c
  97.    -paramimptemp -expect 11" results in 12 found errors instead of 11.
  98.    As my Linux version of lclint does the same I assume this to be no
  99.    OS/2 specific problem.
  100.  
  101.  
  102. Where to get:
  103. -------------
  104.  
  105. In any case future versions of lclint for OS/2 will be available from the
  106. lclint homepage at:
  107.  - http://larch-www.lcs.mit.edu:8001/larch/lclint/
  108. I will try to upload the file to at least the following sites:
  109.  - ftp.cdrom.com
  110.  - ftp.hobbes.nmsu.edu
  111.  - ftp.leo.org
  112. The file should be located somewhere in the OS2/DEVELOP areas.
  113.  
  114.  
  115. History:
  116. --------
  117.  
  118. The following things specific to the OS/2 version of lclint have changed / 
  119. fixed since the first official release:
  120.  
  121. - Due to my mistake the "HOME" environment variable was ignored even if it 
  122.   was set.
  123. - IBM's CSet++ is now used as default compiler instead of emx/gcc.
  124. - lclint compiled as a.out binary using emx/gcc now runs fine under DOS.
  125. - In the previous release some temporary files did not get removed properly.
  126. - Sometimes lclint delivered the names of temporary files rather than the
  127.   original source files when reporting errors.
  128. - Sometimes include files were not found.
  129.  
  130. Due to the differences between Unix and OS/2 (file-I/O, standard directory
  131. structures etc.) there are still some more to expect!
  132.  
  133.  
  134. Afterword:
  135. ----------
  136.  
  137. I have not yet fully ported Makfiles / scripts for a full-featured test
  138. suite. The simple Makefile.os2 in the test/ directory allows checking
  139. the C sources belonging to the suite and looking at the output (or 
  140. directing it to a file using "make -f Makefile.os2 >test.log 2>1" or
  141. something similar. 
  142.  
  143. After having used lclint/2 on a few projects now I may say it has got 
  144. more reliable. Still I do not know enough about it yet to be able to do  
  145. more sophisticated testing than just using it for my sources or running
  146. the (simplified) test suite. If you run across any OS/2-specific problems 
  147. write me an email -- I will *try* to fix it. But, please, do not forget 
  148. that I am *not* the author of lclint!
  149.  
  150. You can reach me via Email or fido-netmail:
  151.  
  152. Email: herbert@wiloyee.shnet.org
  153. Fido:  2:240/5210.18
  154.  
  155. Have fun!
  156.  
  157. Martin "Herbert" Dietze
  158.