Open System Services Porting Guide (G06.29+, H06.06+, J06.03+)
general), and for maintainability. Further, there are rule files that check for good programming
techniques and format: consistent braces, proper indentation, and ordering of file elements.
You make your checking selections from the optional parameters and the library of rule profiles.
CodeCheck’s options are available at the command line. You can do the following:
• Show progress of code checking
• Identify the dialect of C to be assumed for the source files, such as Common C, ISO/ANSI C,
or C++
• Define macros and list macro expansions
• Count tokens, lines, operators, and operands
• Create prototypes for all functions defined in a project
• Enable embedded SQL statements
CodeCheck works with many variations of C and C++ source code, including source code for HP,
Microsoft, Borland, Microtec, Green Hills, MetaWare, Watcom, AT&T, GNU, and Zortech
compilers. It supports the Windows, OS/2 2.1, HP-UX, SunOS, Solaris, and VAX/VMS operating
systems, and many other UNIX variants. Its capabilities and features are comprehensive, and it is
easy to use.
Open Systems Portability Checker (OSPC) Tool
Open Systems Portability Checker (OSPC) is a programming tool developed by Knowledge Software.
A powerful program for the UNIX workstation, OSPC checks source code for strict ISO/ANSI C
compliance, more extensively than C compilers or lint programs.
This checking tool processes both U.S. Government and European C validation suites. OSPC is
particularly valuable in high-integrity, security-critical applications. The OSPC set of checking
profiles covers the most important and popular standards: ISO/ANSI C, POSIX.1, POSIX.2,
POSIX.4, XPG3, OSF/1 NFS, and more.
This tool is easy to adopt into your current development environment. By adding a few lines of
code to an existing make file, you enable standards checking to take place whenever the application
is built. With OSPC’s configurability, you can create and add new platform profiles and modify
existing ones to comply with future development requirements.
You can configure OSPC to check the portability of a program being moved from one platform to
another. You identify on which platform the application already runs and the target platform. It
can use two rule bases at once: a from and a to. This capability allows OSPC to identify the
exact delta between two specific environments.
OSPC accesses a database of platform profiles to remove warnings that do not relate to the target
platform. It also uses information about characteristics of the source platform to filter out warnings
on constructs that might be considered a problem on the target platform.
Conformance checking by OSPC is done in three stages:
1. OSPC performs a thorough check of the application’s source code for standards compliance.
The degree of checking is configurable, made possible with over 100 command-line options
relating to various processors, compilers, and operating systems.
2. OSPC performs cross-unit checks for consistent interfaces between application and system
services. Here, object-type consistency, function parameters, and macro definitions are checked.
3. OSPC performs dynamic checking, during which all calls to system services are monitored
with regard to portability standards.
OSPC has two main checkers, packaged separately: static and dynamic. The static checker uses
configuration files, which provide information on each standard. The checking can be quite
thorough, or you can choose less-stringent checking.
50 Useful Porting Tools