This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Split parts of linux.h into gnu-user.h


Hallo!

On Fri, Dec 31, 2010 at 09:11:42PM +0000, Joseph S. Myers wrote:
> This patch begins the process of fixing the problem that
> config/linux.h mixes things relevant to systems with the Linux kernel
> and things relevant to systems with GNU userspace (and because of the
> latter is used by various configs not using the Linux kernel at all)
> by splitting the GNU userspace parts into a separate header
> gnu-user.h.
> 
> Four LINUX_* macros moved to the new header are renamed to GNU_USER_*,
> but apart from that no changes are made in this patch to which macro
> definitions are used for which target; every configuration using
> linux.h, and only those configurations, now uses gnu-user.h as well.
> 
> Subsequent patches are intended to stop non-Linux targets from using
> linux.h, adding any macros required from there to one of gnu.h,
> knetbsd-gnu.h, kfreebsd-gnu.h and kopensolaris-gnu.h as applicable
> (taking care to make sure not to break things for those targets that
> currently use gnu.h but not linux.h; the other headers are only used
> in conjunction with linux.h at present), to make similar fixes for
> <arch>/linux.h headers used by non-Linux targets, and to rename
> LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS since
> a LINUX_* macro clearly should not be defined in gnu.h, knetbsd-gnu.h,
> kfreebsd-gnu.h and kopensolaris-gnu.h as it is at present.

Thanks for this; I fully support this effort with my GNU/Hurd hat on.
Always feel free to CC me if you want something tested on / for GNU/Hurd,
or want me to comment -- I currently can't read gcc-patches regularely.


> I'll also look at the other anomalies in this area: Linux kernel
> targets not using linux.h (alpha*-*-linux* arm*-*-uclinux*
> m68k-*-uclinuxoldabi* powerpc-*-linux* powerpc64-*-linux*), GNU
> userspace targets not using gnu-user.h (after this patch, the targets
> mentioned as not using linux.h, plus alpha*-*-gnu* powerpc64-*-gnu*
> powerpc-*-gnu-gnualtivec* powerpc-*-gnu*).

If it simplifies life for you, we can quickly remove any GNU/Hurd
configurations apart from x86 -- these aren't usable, aren't maintained,
and will need substantial work before ever being usable.  (Thus, their
GCC support can later be re-introduced by people working on that.)


I'm about to leave right now, but will look at your ``Add GNU -bsd option
from specs to new gnu.opt'' email / patch later today.


Grüße,
 Thomas

Attachment: signature.asc
Description: Digital signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]