###############################################################################
# #
# Copyright © 1989-1991 by Artificial Horizons®, Inc. All rights reserved. #
# #
# This material constitutes the trade secrets and confidential, #
# proprietary information of Bruce Factor and Curtis Priem, and is #
# under license to Artificial Horizons, Inc. The material is not #
# to be disclosed, reproduced, copied, or used in any manner not #
# permitted under license from Artificial Horizons, Inc. For more #
# information email "ahi-interest@ahi.com". #
# #
###############################################################################
AGIPP(1G) AVIATOR GRAPHICS USER COMMANDS AGIPP(1G)
NAME
agipp - Aviator Graphics Interface preprocessor
SYNOPSIS
agipp frame-buffer window-system [ -BCHMpRT ] [ -undef ] [ -Dname ]
[ -Dname=def ] [ -Idirectory ] [ -Uname ] [ -Ydirectory ]
[ input-file [ output-file ] ]
DESCRIPTION
agipp is the Aviator Graphics Interface preprocessor. It is invoked
as the first pass of any C compilation of AGI routines before being
compiled by cc(1V) command, agipp can also be used instead of the
preprocessor cpp(1) or as a first-pass preprocessor for other Sun
compilers.
Although agipp can be used as a macro processor, this is not normally
recommended, as its output is geared toward that which would be
acceptable as input to a compiler's second pass. Thus, the preferred
way to invoke cc(1V) command, or some other compilation command. For
general-purpose macro-processing, see m4(1V), and the chapter on m4
in Programming Utilities and Libraries.
agipp is much more restrictive than cpp(1) and should only be used
on files containing routines that use Aviator Graphics Interface
instructions.
agipp produces code that runs with frame-buffer. The legal values for
frame-buffer are:
CG6 produces code for the cg6 (GX,GXplus) frame buffers
agipp produces code that connects to window-system for sychronization
and window clip lists. The legal values for window-system are:
OPENWIN produces code to run with Open Windows.
SUNVIEW produces code to run with Sunview.
NONE produces code that will run without a windowing system.
agipp optionally accepts two filenames as arguments. input-file and
output-file are the input and output files for the preprocessor,
respectively. They default to the standard input and the standard
output.
OPTIONS
-B Support the C++ comment indicator '//'. With this indicator
everything on the line after the // is treated as a comment.
-C Pass all comments (except those that appear on agipp directive
lines) through the preprocessor. By default, agipp strips out
C-style comments.
-H Print the pathnames of included files, one per line on the
standard error.
-M Generate a list of makefile dependencies and write them to the
standard output. This list indicates that the object file
which would be generated from the input file depends on the
input file as well as the include files referenced.
-p Use only the first eight characters to distinguish
preprocessor symbols, and issue a warning if extra tokens
appear at the end of a line containing a directive.
-R Allow recursive macros.
-T Use only the first eight characters for distinguishing
different preprocessor names. This option is included for
backward compatibility with systems which always use only the
first eight characters.
-undef Remove initial definitions for all predefined symbols.
-D Define name as 1. This is the same as if a -Dname=1 option
appeared on the cpp command line.
-Dname=def
Define name as if by a #define directive. This is the same as
if a
#define name def
line appeared in the source file that agipp is processing.
The -D option has lower precedence than the -U option. That
is, if the same name is used in both a -U option and a -D
option, the name will be undefined regardless of the order of
the options.
-Idirectory
Insert directory into the search path for #include files with
names not beginning with '/'. directory is inserted ahead of
the standard list of "include" directories. Thus, #include
files with names enclosed in double-quotes (") are searched
for first in the directory of the file with the #include line,
then in directories named with -I options, and lastly, in
directories from the standard list. For #include files with
names enclosed in angle-brackets (<>), the directory of the
file with the #include line is not searched.
-Uname Remove any initial definition of name, where name is a symbol
that is predefined by a particular preprocessor.
-Ydirectory
Use directory directory in place of the standard list of
directories when searching for #include files.
USAGE
agipp usage is the same as cpp(1).
EXAMPLES
agipp CG6 OPENWIN -I../include strip_xview.c /tmp/strip_xview.c
agipp CG6 NONE -I../include hello_world.c
cat hello_sunview.c | agipp CG6 SUNVIEW -I../include > /tmp/tmp.c
SEE ALSO
cc(1V), cpp(1), m4(1V)
Programming Utilities and Libraries
WARNING
The -P option can not be used with agipp.
AGI Release 1.8 Last change: 25 December 1991