[comp.unix.wizards] cpp gone in 4.0

urban@cbnewsl.att.com (john.urban) (05/06/91)

In article <May.3.17.53.56.1991.10927@romulus.rutgers.edu> plona@romulus.rutgers.edu (Lawrence Plona) writes:
>Although this has nothing to do with which is the better pre-processor,
>the 3.2 man page for cpp says not to use it because cpp is part of cc
>and is subject to change without notice. The cpp man page does not
>appear in the 4.0 documentation.

This is because cpp is completely gone for UNIX System V Release 4.0.  The
C Pre Processor is now built into cc - no longer a separate command.  Run cc -P
to run just the preprocessor part of cc.


Sincerely,
John Urban

ekrell@ulysses.att.com (Eduardo Krell) (05/07/91)

In article <1991May6.162351.1521@cbnewsl.att.com> urban@cbnewsl.att.com (john.urban) writes:

>This is because cpp is completely gone for UNIX System V Release 4.0.

Not really:

$ uname -a
quail quail 4.0 2.1 i386 386/AT
$ ls -l /lib/cpp
lrwxrwxrwx   1 root     other         16 Mar  5 14:24 /lib/cpp -> /usr/ccs/lib/c
pp
$ ls -l /usr/ccs/lib/cpp
-r-xr-xr-x   1 bin      bin        24084 Mar  5 14:22 /usr/ccs/lib/cpp

    
Eduardo Krell                   AT&T Bell Laboratories, Murray Hill, NJ

UUCP: {att,decvax,ucbvax}!ulysses!ekrell  Internet: ekrell@ulysses.att.com

urban@cbnewsl.att.com (john.urban) (05/09/91)

In article <14717@ulysses.att.com> ekrell@ulysses.att.com (Eduardo Krell) writes:
>In article <1991May6.162351.1521@cbnewsl.att.com> urban@cbnewsl.att.com (john.urban) writes:
>
>>This is because cpp is completely gone for UNIX System V Release 4.0.
>
>Not really:
>
>$ uname -a
>quail quail 4.0 2.1 i386 386/AT
>$ ls -l /lib/cpp
>lrwxrwxrwx   1 root     other         16 Mar  5 14:24 /lib/cpp -> /usr/ccs/lib/c
>pp
>$ ls -l /usr/ccs/lib/cpp
>-r-xr-xr-x   1 bin      bin        24084 Mar  5 14:22 /usr/ccs/lib/cpp

Well I guess I was mistaken.  It isn't physically gone.  I guess it's still their
for backwards compatibility or something - extra baggage.  However, it's not
a supported way of using the pre-processor.  You should use cc -E or cc -P.
If you type in: truss -o /tmp/CPP -f cc -E file.c
and then examine /tmp/CPP, you'll see that cpp is never called.

Sincerely,

John Ben Urban