Subject: Re: Simultaneous builds
To: NetBSD Packages Technical Discussion List <tech-pkg@netbsd.org>
From: None <mcmahill@mtl.mit.edu>
List: tech-pkg
Date: 01/16/2002 16:52:48
> Why?  What exact requirement, in your environment, do you fulfill with
> OBJHOSTNAME that cannot be equally fulfilled with WRKOBJDIR?
> 
> I have shown how WRKOBJDIR is sufficient for all the requirements that
> have been stated to date.  I maintain the existance of any contrary
> requirement is theoretically impossible.  I have asked for concrete
> examples that would prove my theory to be wrong but so far all I've
> gotten back is rhetoric and personal opinions that totally ignore the
> facts.

Maybe I'm missing something obvious here, but what happens when I have 2
machines, 'builder1' and 'builder2' and they both access the same pkgsrc
tree?  In the default setup, they both try to create a 'work' subdirectory
under pkgsrc/foo/bar.  Clearly this is a conflict.

If I set up WRKOBJDIR=/build/`hostname` on each machine (with the
`hostname` part there because /build might actually be a single shared
disk), I now have unique build directories, but each machine tries to set
up links from pkgsrc/foo/bar/work to their own build directories and again
I have a conflict.  I guess I see 2 ways around this.  

1) mount /usr/pkgsrc read only to avoid the links.  I dont' like this
because I may _want_ to be able to write to pkgsrc from either machine.
In fact I often do when I'm testing pkgs on a couple of systems (to try
and root out LP64 and/or endian woes).

2) use unique names for the "work" link.  I never liked the OBJMACHINE
because, especially with the a.out->ELF transition, I might have 2 sparcs
or 2 i386en, etc that want to share pkgsrc.  Thats why I like OBJHOSTNAME.


-Dan