glenda.party
term% ls -F
term% cat index.txt
PCC(1)                      General Commands Manual                     PCC(1)

NAME
       pcc - APE C compiler driver

SYNOPSIS
       pcc [ option ...  ] [ name ...  ]

DESCRIPTION
       Pcc  compiles  and  loads  C programs, using APE (ANSI C/POSIX) include
       files and libraries.  Named files ending with .c are preprocessed  with
       cpp(1),  then compiled with one of the compilers described in 2c(1), as
       specified by the environment variable $objtype.  The object  files  are
       then  loaded  using one of the loaders described in 2l(1).  The options
       are:

       -o out      Place loader output in file  out  instead  of  the  default
                   2.out, v.out, etc.

       -P          Omit  the  compilation and loading phases; leave the result
                   of preprocessing name.c in name.i.

       -c          Omit the loading phase.

       -p          Insert profiling code into the executable output.

       -w          Print compiler warning messages.

       -B          Don't complain about functions used without  ANSI  function
                   prototypes.

       -v          Echo the preprocessing, compiling, and loading commands be‐
                   fore they are executed.

       -Dname=def
       -Dname      Define the name to the preprocessor, as if by If no defini‐
                   tion is given, the name is defined as

       -Uname      Undefine the name to the preprocessor, as if by

       -Idir       files whose names do not begin with are always sought first
                   in  the directory of the file argument, then in directories
                   named in -I options, then in /$objtype/include/ape.

       -N          Don't optimize compiled code.

       -S          Print an assembly language version of the  object  code  on
                   standard output.

       -a          Instead  of  compiling, print on standard output acid func‐
                   tions (see acid(1)) for examining  structures  declared  in
                   the source files.

       -aa         Like  -a  except  that functions for structures declared in
                   included header files are omitted.

       The APE environment contains all of the include files and library  rou‐
       tines  specified in the ANSI C standard (X3.159-1989), as well as those
       specified in the IEEE  Portable  Operating  System  Interface  standard
       (POSIX,  1003.1-1990,  ISO  9945-1).  In order to access the POSIX rou‐
       tines,  source  programs  should  define  the   preprocessor   constant
       _POSIX_SOURCE.

FILES
       /sys/include/ape
              directory for machine-independent #include files.

       /$objtype/include/ape
              directory for machine-dependent #include files.

       /$objtype/lib/ape/libap.a
              ANSI C/POSIX library.

SEE ALSO
       cpp(1), 2c(1), 2a(1), 2l(1), mk(1), nm(1), acid(1), db(1), prof(1)

       Howard Trickey, ‘‘APE — The ANSI/POSIX Environment''

SOURCE
       /sys/src/cmd/pcc.c

BUGS
       The  locale  manipulation  functions are minimal.  Signal functions and
       terminal characteristic handlers are only minimally implemented.   Link
       always  fails, because Plan 9 doesn't support multiple links to a file.
       The functions related to setting effective user and group ids cannot be
       implemented because the concept doesn't exist in Plan 9.

                                                                        PCC(1)