Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: a separate build of libc
Hello David,
On Tue, Oct 14, 2014 at 05:33:58AM +0000, David Holland wrote:
> On Mon, Sep 22, 2014 at 10:05:47PM +0200, u-6hol%aetey.se@localhost wrote:
> > > If what you are trying to do is port NetBSD's libc to a different OS,
> > > please say so, because that has been done before and we can give you a
> > > much better idea what it entails.
> >
> > No, this is not the case.
> > (I guess you mean Minix or was there another effort?)
>
> I personally have used NetBSD's libc in two different research OSes,
> and I'm not the only person to have done that. The Minix thing
> happened much later.
I see. Nice to know that a quest harder than mine has been done,
more than once.
> > > If what you are trying to do is reorganize the NetBSD sources so that
> > > libc is a clearly defined component instead of being casually mixed
> > > with the kernel, please say so, because that has been done before and
> > > we can give you a much better idea what it entails.
> >
> > This looks much nearer to what I do.
> I still don't really understand what you're trying to accomplish, but
> here goes:
>
> - the libc sources are in src/lib/libc
> - some additional sources are in src/common/lib/libc
> - you will also need the base includes (src/include) and the main
> kernel includes (src/sys/sys, src/arch/*/include)
> - you may need other kernel includes (e.g. src/sys/ufs/*/*.h or
> src/sys/uvm/*/*.h)
>
> Some of the material in src/include is not actually libc (e.g. util.h
> is for libutil) but you will need to sort this out on a file-by-file
> basis. Similarly, much of the material in the kernel headers is
> actually just kernel internals but you will also need to sort this out
> on a file-by-file basis. A good starting point is to take the header
> files that are installed by "make includes" (you can safely ignore
> those that aren't) and strip out all the parts that are #ifdef _KERNEL.
I see. Thanks, this summary is helpful (also where it states that
it is me who is to sort out what is necessary and what is not :)
> You'll need a fairly thorough understanding of Unix and Unix library
> interfaces (both historical and as reflected in various standards) to
> get this right. It's not a small undertaking, and it's not something a
> newbie can reasonably expect to be able to do.
I am a newbie to NetBSD internals but otherwise feel pretty confident
with the task - it is the avalable time which is now the constraint.
Regards,
Rune
Home |
Main Index |
Thread Index |
Old Index