Subject: Re: tweaks for fparseln(3) move from libutil to libc
To: Christopher Richards <richards+netbsd@CS.Princeton.EDU>
From: Bill Studenmund <wrstuden@netbsd.org>
List: tech-toolchain
Date: 12/07/2002 18:04:53
On 6 Dec 2002, Christopher Richards wrote:
> lukem@netbsd.org (Luke Mewburn) writes:
>
> > Please elaborate on what FreeBSD does here.
>
> My FreeBSD is a little rusty, but I believe "buildworld" does an
> UNPRIVED-style build (no metadata are logged, though) -- unprivileged
> users can invoke it if they have write privileges under /usr/obj.
> During the build the system include path is set to /usr/obj/include
> and similary for libraries. Then "installworld", which must be run as
> root, runs "make install" for everything just built. All the
> permissions info is already there in the install target, so there's no
> need for METALOG, even when building as non-root.
Note: that assumes that the build isn't one that changes permissions on a
program, say adding or removing set-id. :-)
> >From the FreeBSD website:
>
> As the names imply, buildworld builds a complete new tree under
> /usr/obj, and installworld installs this tree on the current
> machine.
>
> This is very useful for 2 reasons. First, it allows you to do the
> build safe in the knowledge that no components of your running
> system will be affected. The build is ``self hosted''. Because of
> this, you can safely run buildworld on a machine running in
> multi-user mode with no fear of ill-effects. It is still
> recommended that you run the installworld part in single user
> mode, though.
build.sh can do the buildworld part (and other stuff too..).
So it sounds like you want a make target that will do the install?
Shouldn't be too hard to do.
Take care,
Bill