Vanilla List Maling List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [VANILLA-LIST:2351] Compile problems on FreeBSD



On Mon, 14 Jun 1999, Dave Ahn wrote:
> The code segment above line 193 contains #ifdefs to ensure that the
> sa_restorer define is set only if the machine is linux.  I've test compiled
> these changes on a FreeBSD machine before and ran into no problems.

The last time I compiled before just now was in January/February, and all
went well then.  I checked both of my FreeBSD machines (a laptop with 3.2
release and a desktop tracking STABLE) and they both define struct
sigaction in <sys/signal.h> as:

struct  sigaction {
        __sighandler_t *sa_handler;     /* signal handler */
        sigset_t sa_mask;               /* signal mask to apply */
        int     sa_flags;               /* see signal options below */
};

Similarly, NetBSD 1.4 is missing a sa_sigaction/restorer member.

> To tell you the truth, I'm leaning towards removing it completely since
> RedHat 5.x and above do have SA_NOCLDWAIT.

You wouldn't get any argument from me... I've had all of my Linux boxes
running RedHat 5.x for at least a year now.

> > On my FreeBSD system, and probably most others, the standard BSD 'make' is
> > in /usr/bin/make, and the GNU 'make' is /usr/local/bin/gmake, if
> 
> This problem probably stems from the changes Bob Tanner made to gnumake-ify
> the makefiles.  I did undo some of those changes for it to be compatible
> with make(1), but FreeBSD may have some additional compatibility problems.
> I wonder why I didn't run across them during the test compiles...

The only problem I ran into was rather simple to fix so that it worked
under BSD's make, but after the changes I don't think it will still work
under GNU's make. Most of the makefiles have a line near the end:
	sinclude .depend
According to the gmake docs:
	For compatibility with some other `make' implementations, 
	`sinclude' is another name for `-include'.
Unfortunately, FreeBSD's make chokes on both.  It appears the - notation
will only work for shell commands in BSD, and not make directives.  On the
other hand, BSD's make automatically includes the .depend file if it
exists; you don't need to explicitly tell it to.  Off the top of my head, 
I don't know of a way to get it to work under both systems.

							- Eric