Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 17 May 2006 09:21:47 +0300
From:      Vasil Dimov <vd@FreeBSD.org>
To:        Edwin Groothuis <edwin@mavetju.org>
Cc:        ports@freebsd.org, Paul Koch <paul.koch@statseeker.com>
Subject:   Re: Is it safe to compile multiple ports at the same time ?
Message-ID:  <20060517062147.GA42089@qlovarnika.bg.datamax>
In-Reply-To: <20060517061302.GR1116@k7.mavetju>
References:  <200605171353.37745.paul.koch@statseeker.com> <20060517045403.GI1113@k7.mavetju> <200605171508.07228.paul.koch@statseeker.com> <20060517060026.GA40653@qlovarnika.bg.datamax> <20060517061302.GR1116@k7.mavetju>

next in thread | previous in thread | raw e-mail | index | archive | help

--3MwIy2ne0vdjdPXF
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Wed, May 17, 2006 at 04:13:02PM +1000, Edwin Groothuis wrote:
> On Wed, May 17, 2006 at 09:00:26AM +0300, Vasil Dimov wrote:
> > Not really, locking will just prevent breakages. Let me illustrate my
> > thought with an example:
> >=20
> > port A depends on X
> > port B depends on X
> >=20
> > You start building A which results in building X via exclusive lock on =
X.
> > During the build of X you decide to build B which results in building X
> > (X is not yet installed) but you block trying to acquire the exclusive
> > lock on X so you wait _idling_ until building of X is done. Furthermore
> > what do you suggest to do when the lock is released?
>=20
> You have to obtain a lock on the X's Makefile before you are doing
> to check if you have this port installed.
>=20
> For example, a dependcy on pkg-config in the directory devel/pkgconfig:
>=20
> - obtain lock on devel/pkgconfig/Makefile
What do you do if that is already locked?

> - check if pkg-config exists, and if not, build and install it.
> - release lock on devel/pkgconfig/Makefile
>=20
>=20
> > Ofcourse if B depends also on Y it can fallback to building Y if it
> > cannot gain exclusive lock on X.
>=20
> Building one port is a serial process, building multiple ports can
> be a parallel process.
>=20
Agreed.

--=20
Vasil Dimov
gro.DSBeerF@dv

Testing can show the presence of bugs, but not their absence.
                -- Edsger W. Dijkstra

--3MwIy2ne0vdjdPXF
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----

iD8DBQFEasD7Fw6SP/bBpCARAjYjAJ98xR8TjxZWvJ+geH3X7/HJka9WsQCgwV7+
RvdPij6NIFlXWPtk+wA+t4s=
=D/p/
-----END PGP SIGNATURE-----

--3MwIy2ne0vdjdPXF--



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