Subject: New stuff breaks XFree86 build
To: None <current-users@sun-lamp.cs.berkeley.edu>
From: Michael L. VanLoon -- Iowa State University <michaelv@iastate.edu>
List: current-users
Date: 04/07/1994 23:19:50
I was able to build all the XFree86-2.1 stuff mid-March before the new
stuff hit.  I recently went to rebuild my X libraries from the same
sources, and I can't even get imake to compile anymore.  (Don't worry,
it's not a binary problem. :-)

cc -o ccimake  -O -I../include ccimake.c
cc -c  -O -I../include `./ccimake` imake.c
In file included from /usr/include/machine/cpu.h:47, from /usr/include/machine/param.h:47, from /usr/include/sys/param.h:88, from imake.c:162:
/usr/include/machine/frame.h:103: parse error before `sig_t'

It seems that you can't include machine/frame.h if you're in
_POSIX_SOURCE mode unless you explicitely declare a typedef for sig_t
(which is not the way to do things).  Why does signal.h only define
sig_t in non-POSIX mode, but frame.h declare a sig_t typed var
regardless of POSIX or not?  Further, it looks to me like sig_t is
only used once, and that's for one type in frame.h; and sig_t looks
basically the same as __sighandler_t.  So, why define it seperately
(I assume there's a good reason)?  But I think something needs to be
fixed up with respect to posix compilations and including anything
that indirectly (or directly) references frame.h.  I don't know the
correct answer here, so am going to have to punt it back to you guys.

Also, after hacking around sig_t, I managed to get imake to compile,
but it produces mangled Makefiles.  I'm not sure what the problem is
yet.  And I can't get gdb to cooperate.  I'll let you know if I figure
out what is breaking imake (I assume a type change somewhere).

				--Michael

-----------------------------------------------------------------------------
 Michael L. VanLoon                 Iowa State University Computation Center
    michaelv@iastate.edu                    Project Vincent Systems Staff
  Free your mind and your machine -- NetBSD free Un*x for PC/Mac/Amiga/etc.
-----------------------------------------------------------------------------



------------------------------------------------------------------------------