Re: [PATCH] include/linux/coda.h

Ryan Cumming
2001-05-22T16:41:04Z

On Tue, 22 May 2001, Alan Cox wrote:

> If __linux__ is not defined by the cross compiler, then the cross compiler
> is broken. A cross compiler has the same environment as the native compiler
> for the target. The only stuff that should break (well should as in might) is
> tools native built
>
> Or am I misunderstanding the report ?

It is not a cross compiler, it is the FreeBSD native gcc. As I understood
it, Linux is a self contained project and should be targetting the
native platform, not Linux on that platform. A cross compiler should
not be needed unless one is building for another CPU.

The coda.h file was doing something along the lines of:

#ifdef __linux__
#ifdef __KERNEL__
/* Define things */
#endif
#endif

When compiling the kernel under FreeBSD, __KERNEL__ is defined, but
__linux__ is not. I think this is an error on the part of the header file,
because on non-Linux build environments, which would otherwise compile the
Linux kernel correctly, do not have __linux__ defined.

However, not many people will probably find much use in compiling the
kernel on other platforms, so if you think this isn't worth inclusion, I
totally understand. I'm in the process of porting UML to FreeBSD, and
having this patch in the tree would make my job slightly easier.

-Ryan