[net.unix-wizards] Help -- pic will not compile

phil@RICE.ARPA (07/20/84)

From:  William LeFebvre <phil@RICE.ARPA>

I just started playing with pic a little and I discovered what I
thought was a bug in "pltroff.c".  But, when I made a change and tried
to remake pic, the c compiler told me that there was a missing endif.
Upon closer examination, I noticed that indeed there is a 
"#ifdef OLDTROFF" right before put1 that has no matching #endif.  
"Gee, I must have goofed at some earlier time", I say to myself,
but the file hasn't been modified (if I can believe the last modified
time).  But I didn't think that object files came on the distribution.
I thought I rememberd compiling everything when I first got the stuff
off tape.  

This is the Berkeley Unix version of the ditroff distribution.  I don't
know if they have separate distributions for 4.1 and 4.2, but if they
do, it is the 4.1 version.  Has anyone else experienced this problem?
Go look at pic/pltroff.c in your ditroff distribution and tell me if it
has one too few #endif-s.  And if it doesn't, tell me where the last
one is supposed to go.  Looking at the code, it is obvious to me that
it is the last of three #endif-s that is missing.  

All help will be greatly appreciated.

                                William LeFebvre
				Department of Computer Science
				Rice University
                                <phil@Rice.arpa>

creon@ames-nas-gw.arpa (07/21/84)

From:  Creon Levit <creon@ames-nas-gw.arpa>

Please let me know if you get pltroff to work.  I really want it badly,
and I couldnt ever get it going (we got rid of ditroff etc. when we
went to 4.2bsd, and we are buying the "official" version from AT&T now,
but it has not arrived.  I will let you know if and when we get any of
it working).  I didn't know berkeley *had* a ditroff distribution? who
can I get it from.

Creon Levit
NASA Ames
creon@ames-nas-gw.arpa

----------

phil@RICE.ARPA (07/21/84)

From:  William LeFebvre <phil@RICE.ARPA>

Oh no!  Don't misunderstand me.  This is not a distribution from
Berkeley!  I'm sorry if I implied that.  This is Bell's ditroff, but it
is not a System V distribution.  I tell Bell (I guess we have to say
"AT&T" now) that I want the ditroff distribution for machines running
Berkeley Unix and they send me the appropriate tape.  I am of the
understanding that it is a different ditroff than what one would get
for Sys V.  The Sys V one has compiled macros and fancy things like
that.  The version we have has had all that stuff stripped out (or
never put in).  Or am I completely off base here?

Let me make it "perfectly clear":  we are running (or trying to run)
the vanilla ditroff stuff with pic and ideal on a Vax 11-750 under
Berkeley 4.2.  It was running 4.1 when we originally installed the
distribution.  Okay?

Here is some more info on the problem.  I took a good look at pltroff.c
and empirically determined (in other words, guessed) that the missing
endif needed to go at the very end of the program.  I did that and it
compiled okay.  Someone please tell me it was the right thing to do!

I have also found one strange bug and one stupid mistake in pltroff.c,
but I want to get this ifdef ... endif stuff straightened out before I
say anything more.

                                William LeFebvre
				Department of Computer Science
				Rice University
                                <phil@Rice.arpa>

salkind@NYU.ARPA (07/27/84)

From:  Lou Salkind <salkind@NYU.ARPA>

We run pltroff here under 4.2 bsd.  That missing #endif should be the
last line of the file.

Note that cpp in 4.1 bsd did not complain about unmatching #ifdef's, while
the 4.2 bsd cpp (correctly) does.

	Lou