Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Oct 2001 22:46:26 -0500
From:      Mike Meyer <mwm@mired.org>
To:        Doug Poland <doug@polands.org>
Cc:        Annelise Anderson <andrsn@andrsn.stanford.edu>, questions@freebsd.org
Subject:   Re: Help, I've broken ports and I can't get up
Message-ID:  <15312.62354.783497.428177@guru.mired.org>
In-Reply-To: <20011019223042.A6284@polands.org>
References:  <69198808@toto.iv> <15312.57890.10061.906384@guru.mired.org> <20011019223042.A6284@polands.org> <20011019223324.B6284@polands.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Doug Poland <doug@polands.org> types:
> On Fri, Oct 19, 2001 at 09:32:02PM -0500, Mike Meyer wrote:
> > Annelise Anderson <andrsn@andrsn.stanford.edu> types:
> > > On Fri, 19 Oct 2001, Doug Poland wrote:
> > > > I recently moved my ports hierarchies with the following command:
> > > > 
> > > > 	# tar -cf - -C ports . | tar xpf - -C /data/usr/ports
> > > I had better luck with what I think was the DISTDIR variable,
> > > which might help if you're concerned with space on a file system,
> > > as distfiles can take quite a lot of space.
> > If that's the problem, WRKDIRPREFIX can help as well, as it lets you
> > unpack the tarballs and do the builds on a file system with more
> > space.
> > If you export /usr/ports via NFS so you can build on other systems,
> > WRKDIRPREFIX is pretty much required.
> > 
> That's what I have done.  I moved ports on to a drive to take advantage
> of vinum and dirpref.  What was /usr/ports is now /data/usr/ports and
> exported via NFS.
> 
> I'm not sure I understand the importance of WRKDIRPREFIX, especially 
> on the machine mounting the nfs export.

It's very important on that case. If you don't want to share work
dirs, then you should specify WRKDIRPREFIX as different locations on
the server and clients. Well, it could be the same location on
different machines, but it can't be shared.

If you want to share it, you run into the same issues as you do with
/usr/src. The ports tree needs to be in the same place on both
systems, as the path - without symlinks - is used inside of
WRKDIRPREFIX.

Personally, I export /usr/ports ro from my primary build system, and
that's the only system that updates it. DISTDIR is pointed at a shared
rw partition on all systems, so that no matter what system I build on,
the tarballs will be available everywhere. WRKDIRPREFIX is on local,
non-exported disk on all systems, as I build ports for -current,
-stable and -release, and don't want the builds to interfere with each
other. To share builds across systems, I point PACKAGES at the shared
file system that DISTDIR is on, and just make packages on the
appropriate build platform.

> Is there a FAQ or published guidance on this technique.  How does one
> find out all the variables involved?  

The make.conf and ports man pages, along with /etc/defaults/make.conf.

Doug Poland <doug@polands.org> types:
> BTW, I created a symbolic link in /usr pointing to the new location of
> ports.  Is that a bad thing?

I don't think so. It may case problems if you want to share WRKDIR's
across systems.

	<mike
--
Mike Meyer <mwm@mired.org>			http://www.mired.org/home/mwm/
Q: How do you make the gods laugh?		A: Tell them your plans.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15312.62354.783497.428177>