lclint 3.0.0.16 for OS/2
========================

This file is originally part of the binary distribution of lclint for OS/2.

Contents:
---------

 Differences to the Unix versions
 Installation
 Bugs and known problems
 Where to get
 History
 Afterword


Differences to the Unix versions:
---------------------------------

1. lclint searches for the initialization file in the current directory 
   and additionally in the directory pointed to by the environment 
   variable "HOME" if set. 

2. For path specifications "\" can be used instead of "/". In most
   cases any of both, even in combination are fine.

3. lclint/2 will use the value of the environment variable TMP (if not set
   TEMP) for creating and reading temporary files if possible. Else the
   current directory is used.


Installation:
-------------

For installing lclint there are four steps necessary:

1. Place the executable file lclint.exe in some directory in your PATH.
2. Install all that's in the "imports" and "lib" subdirectories somewhere
   you like it. You will need a HPFS drive to install these files.
3. Set the environment variable LARCH_PATH to the `lib' subdir in the 
   main LCLint directory, like:
     set LARCH_PATH=d:\software\lclint-3.0.0.16\lib
   Then set LCLIMPORTDIR to the `imports' subdir in the main LCLint
   directory, like:
     set LCLIMPORTDIR=d:\software\lclint-3.0.0.16\imports
   You may want to add these statements to your your config.sys file 
   as soon as you've got the software working. 
4. If you want to use some standard settings different from what's built
   in edit and place the configuration file `.lclintrc' somewhere lclint 
   can find it. This is the directory pointed to by the HOME environment
   variable if set or else the directory containing the executable file.
   It seems a good idea to put all global stuff into that file and all
   project dependent information into another `.lclintrc' in the directory
   containing the sources to be checked by lclint. lclint will first
   read the global and then the local `.lclintrc'.

For building lclint you will need the complete sources package. Untar that
file. You need HPFS to compile the package because there are plenty of 
files with long filenames. Refer to the file BUILD.OS2 for further 
instructions. 


Bugs and known problems:
------------------------

There are a few things that still do not work properly. As lclint was
originally developed on and for Unix systems e.g. path names differ.
Currently all paths specified in the command line have to contain
backslashes rather than slashes which will be quite normal for people
with no Unix background anyway. Also not all tests work well yet, at
the moment only the "quicktest" with a few changes is available.


Where to get:
-------------

In any case future versions of lclint for OS/2 will be available from the
lclint homepage at:
 - http://lclint.cs.virginia.edu/

I will try to upload the file to at least the following sites (the file 
should be located somewhere in the OS2/DEVELOP areas):
 - ftp.cdrom.com
 - ftp.hobbes.nmsu.edu
 - ftp.leo.org
I always put any fixes (even unofficial ones) to my private ftp directory
at:
 - ftp.fh-wedel.de/pub/fh-wedel/staff/herbert/lclint


History:
--------

The following things specific to the OS/2 version of lclint have changed / 
fixed since the first official release:

version 3.0.0.16:
- Finally fully united the OS/2 port with the main source tree.
- Bugfixes.

version 3.0.0.14:
- first OS/2 version of the current alpha.
- changed the name of the initialization file to `.lclintrc'.

version 2.5m:
- only some fixes mostly derived from the Win32 port.

version 2.4b:
- First official OS/2 release.
- Switched from IBM's CSet++ 2.01 to VisualAge C++ 3.0.

version 2.3i:
- Due to my mistake the "HOME" environment variable was ignored even if it 
  was set.

version 2.3h:
- IBM's CSet++ is now used as default compiler instead of emx/gcc.
- lclint compiled as a.out binary using emx/gcc now runs fine under DOS.
- In the previous release some temporary files did not get removed properly.
- Sometimes lclint delivered the names of temporary files rather than the
  original source files when reporting errors.
- Sometimes include files were not found.


Due to the differences between Unix and OS/2 (file-I/O, standard directory
structures etc.) there are still some more to expect!


Afterword:
----------

I have not yet fully ported Makfiles / scripts for a full-featured test
suite. The simple Makefile.os2 in the test/ directory allows checking
the C sources belonging to the suite and looking at the output (or 
directing it to a file using "make -f Makefile.os2 >test.log 2>&1" or
something similar. 

After having used lclint/2 on a few projects now I may say it has got 
more reliable. Still I do not know enough about it yet to be able to do  
more sophisticated testing than just using it for my sources or running
the (simplified) test suite. If you run across any OS/2-specific problems 
write me an email -- I will *try* to fix it. But, please, do not forget 
that I am *not* the author of lclint!

You can reach me via Email or fido-netmail:

Email: herbert@paulina.shnet.org (at home)
       herbert@fh-wedel.de (at work)
Fido:  2:240/5216.18

Have fun!

Martin "Herbert" Dietze
