Subject: Re: fortune makefiles incorrect ?
To: None <current-users@netbsd.org>
From: Simon Burge <simonb@netbsd.org>
List: current-users
Date: 09/07/1999 16:34:45
Chris G. Demetriou wrote:

> Jonathan Stone <jonathan@DSG.Stanford.EDU> writes:
> > 1.  Some subset of the tree has to be coded `portably enough' that
> >     it will compile painlesly on non-NetBSD systems: FreBSD, LInux,
> >     Solaris, what-have-you.
> 
> yup.  it might well be OK to have a small portability library that
> copes with some of the more commonplace non-standard functions
> (e.g. err/warn), just as e.g. the toolchain has libiberty.  however,
> it should be fairly obvious how to bootstrap the whole thing, and
> requiring a zoularis-like environment is just Too Much.
> 
> I actually think there are probably plenty of assumptions that you
> could make to make your life easier, too.  (e.g. ANSI C.)

Ok, back to my example of endian support - if we have something in
nice portable ANSI C, does this alleviate the need for things like the
endian-specific macros in <sys/endian.h> - or should they stay because
they're a nice clean interface to do what we want to do?  On a similar
note, is it worthwhile or pointless to do something like:

	#if (defined(__unix__) || defined(unix)) && !defined(USG)
	# include <sys/param.h>
	#endif
	#if defined(__NetBSD_Version__) && (__NetBSD_Version__ > something)
	# include <sys/endian.h>
	#else
	# define HTOBE64(foo) ....
	  ...
	#endif

in tools that are run on the compiling host?

Looking further, it's sortof worse with fortune - it calls the strfile
in the objdir, so this one is going to require further work to allow
cross-compiling...

Simon.