[darwinbuild] Building root/header packages

Kevin Van Vechten kevin at opendarwin.org
Fri Jun 24 14:00:22 PDT 2005


I agree, this is not as clear as it should be.  I'll try to put  
together some documentation on this "bootstrapping" phase of  
DarwinBuild.

The circular dependency (bsm requires bsm) arises because bsm  
installs both the libbsm.dylib and the auditreduce, prselect binaries  
which rely on the libbsm.dylib.  This is common issue that affects  
many Apple projects.

Luckily the changes between bsm-2.10 and bsm-2.11 are very small.   
Faking it by renaming bsm-2.10 to 2.11 and building will most likely  
succeed.  This approach will succeed in general as long as there are  
no API changes in the headers.

Alternatively, could try to build outside a chroot, but that might  
require installing private xnu headers on your base system which is  
understandably undesirable.

- Kevin

On Jun 24, 2005, at 6:53 AM, Michael Franz wrote:

> Using darwinbuild, how do I create a root package?  When I build I get
> a directory that I think I think is root.  And it might be that
> simple, but where are the headers if there are header packages a
> project?  - O.K. might be as clear as it could be, but I am not near
> my system to actually look.
>
> What I want to do is build the bsm-2.11 root package, which seems to
> depend on bsm-2.11 .  Is it valid to build this in a non-chroot
> environment to create the root package?  Can I just fake the bsm-2.11
> requirement by renaming bsm-2.10 to bsm-2.11?



More information about the darwinbuild-dev mailing list