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 >
Wrap
Text File
|
1997-09-12
|
6KB
|
158 lines
lclint 2.3h for OS/2
====================
This file is originally part of the binary distribution of lclint for OS/2.
Contents:
---------
Introduction
Differences to the Unix versions
Installation
Bugs and known problems
Where to get
History
Afterword
Introduction:
-------------
This port was originally based on Mike Smith's Win32 port. After having
synchonized our ports for the 2.2a version the OS/2 port has now become
"official" part of the lclint source tree. However the OS/2 version does
differ to the Unix versions in some features.
This second public release of lclint for OS/2 fixes a number of bugs that
were specific to the OS/2 version. As you may have guessed almost all of
these bugs had to do with standard directories, pathnames and file I/O.
Differences to the Unix versions:
---------------------------------
1. The initialisation file has the name "lclint.rc". lclint searches for
it in the current directory and additionally in the directory pointed
to by the environment variable "HOME" if set.
2. For path specifications "\" are used rather than "/". Please, note that
options passed to the C preprocessor used by lclint may still need "/".
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.
3. You need a C preprocessor to run lclint. This should normally be no
problem as most people needing lclint will use a C compiler anyway.
If you do not have a C compiler or your compiler's preprocessor output
does not work together with lclint I suggest installing the emx runtime
package and any version of cpp.exe shipping with the emx development
package.
4. Set the environment variables in setenv.cmd to the values fitting to
your installation. If you do not want to call setenv.cmd before using
lclint put its contents into your config.sys file. I have appended some
examples of preprocessor commands to be used by lclint and additional
comments to the file. If you do not have any of the compilers mentioned
there you may have to try a bit.
5. Edit and place the configuration file lclint.rc 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 lclint.rc in the directory
containing the sources to be checked by lclint. lclint will first
read the global and then the local lclint.rc.
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.
Still unsolved problems I know of are:
- when running the test suite while running the test case "rc" the
preprocessor emits some warnings containing the actual temp file's
name (e.g. ".\ll1945A.c:0: unterminated string or character constant").
The reason for this is the missing capability to nest quote characters
like ' and " under OS/2's cmd.exe, so I see nothing I could do there.
- when running the test suite the call of "lclint -nof -hints sharing4.c
-paramimptemp -expect 11" results in 12 found errors instead of 11.
As my Linux version of lclint does the same I assume this to be no
OS/2 specific problem.
Where to get:
-------------
In any case future versions of lclint for OS/2 will be available from the
lclint homepage at:
- http://larch-www.lcs.mit.edu:8001/larch/lclint/
I will try to upload the file to at least the following sites:
- ftp.cdrom.com
- ftp.hobbes.nmsu.edu
- ftp.leo.org
The file should be located somewhere in the OS2/DEVELOP areas.
History:
--------
The following things specific to the OS/2 version of lclint have changed /
fixed since the first official release:
- Due to my mistake the "HOME" environment variable was ignored even if it
was set.
- 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@wiloyee.shnet.org
Fido: 2:240/5210.18
Have fun!
Martin "Herbert" Dietze