Subject: -Dunix predefine, again...two threads merging apparently
To: None <, netbsd-bugs@NetBSD.ORG,,>
From: Ross Harvey <>
List: netbsd-bugs
Date: 06/23/1998 12:16:13
> From: Olaf Seibert <>
> >> From: Alistair Crooks <>
> >> ...
> >> Can we at least start to use __unix__, please? I do not want to have to
> >> try to explain to imake, for example, to try to compile unix.c, rather
> >> than 1.c. imake is borken, you say? Right. But too much depends on it to
> >> change its behaviour. And, just for the record, I loathe imake with a
> >> vengeance.
> >> ...
> >
> >Have you ever actually seen this problem?  Or is this just hypothetical?
> Yes. When I was porting VNC (which uses imake), I put the unix sources
> in a directory called unix (and the windows sources in a directory called
> windows). I was quite puzzled when the generated makefiles used strange
> pathnames with /1/ in the middle. Not funny.
> >Because, if it's hypothetical, I think it's also a "cannot happen".
> >
> >You see, apparently every system except NetBSD predefines unix == 1.
> NetBSD apparently does too. At least in 1.2.*. It took me a long time before
> it dawned what the problem was.

Right, NetBSD/i386 and others have always defined it, I meant, "a couple
of NetBSD platforms like alpha" but that's harder to say.

But you have missed my point. I didn't mean, you "cannot create a situation
where unix gets expanded", obviously you can. The point was that it "cannot
happen importing something already working", because they would have had
to avoid "unix", because every other unix predefines it.

In fact, you have just demonstrated my other point, which was that if we
do _not_ define this symbol, people will be able to do stuff like this and
produce programs or organizations that are not portable and will not work
elsewhere. We won't be doing them any favors at all by leaving this symbol

Anyway, it looks like "the project" has decided not to add it to alpha but
to remove it from the other ports. I don't agree, but at least we will get
all the NetBSD platforms doing the same thing. I may add it to alpha anyway,
but it will be a short term thing until (and if!) it really gets killed