Date: Thu, 23 May 2002 21:11:47 -0700 From: Kris Kennaway <kris@obsecurity.org> To: Roger Hardiman <roger@telepresence.dmem.strath.ac.uk> Cc: ports@freebsd.org Subject: Re: possible bento inconsistency Message-ID: <20020523211147.E7527@xor.obsecurity.org> In-Reply-To: <008601c2025e$63eea200$0100a8c0@Win2K>; from roger@telepresence.dmem.strath.ac.uk on Thu, May 23, 2002 at 02:33:13PM %2B0100 References: <008601c2025e$63eea200$0100a8c0@Win2K>
next in thread | previous in thread | raw e-mail | index | archive | help
--GpGaEY17fSl8rd50 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, May 23, 2002 at 02:33:13PM +0100, Roger Hardiman wrote: > Hi there >=20 > I am looking at bento errors for openam and openmcu from earlier today. > openmcu failed with a BISON dependency failure which is not correct. > There is a bug in the bento cluster. >=20 > openam and openmcu both need the source of the openh323 port to compile > They have > BUILD_DEPENDS=3D ${NONEXISTENT}:${PORTSDIR}/net/openh323:build >=20 > The openh323 makefile needs bison and openh323 has > USE_BISON=3Dyes >=20 >=20 > When openam compiled, it built openh323 which installed bison. > When openmcu compiled, it built openh323 but FAILED to install bison and = so openh323 fell over > and then openmcu fell over. The problem is that <bsd.port.mk> does not obtain full dependency information when you use a "FOO_DEPENDS=3D...:target" construction; in this case the BUILD_DEPENDS in openmcu should include the BUILD_DEPENDS from openh323 (by virtue of the :build target) and thereby include a dependency on bison. I had added the following note to my copy of <bsd.port.mk>: Index: bsd.port.mk =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /home/ncvs/ports/Mk/bsd.port.mk,v retrieving revision 1.411 diff -u -r1.411 bsd.port.mk --- bsd.port.mk 27 Apr 2002 11:22:59 -0000 1.411 +++ bsd.port.mk 18 May 2002 02:03:20 -0000 @@ -3191,6 +3191,12 @@ # distribution-name|port-path|installation-prefix|comment| \ # description-file|maintainer|categories|build deps|run deps|www site +# XXX Bug: if a port has BUILD_DEPENDS=3D...:build +# then we should recurse into that port and add its BUILD_DEPENDS to ours +# as well, otherwise we aren't recording all the dependencies needed to +# get this port built. Similar thing probably goes for other :targets +# which have a <target>_DEPENDS + .if !target(describe) describe: @${ECHO_CMD} "`perl -e ' \ In the meantime, the workaround is to add an explicit USE_BISON to openmcu. Bento is deliberately set up so that it will fail if all required build dependencies are not already installed when the port starts building. This is done to ensure that the full dependency information is being recorded in the port makefiles, and it's why you get this: > =3D=3D=3D> openh323-1.8.8 depends on executable: bison - not found > =3D=3D=3D> Verifying install for bison in /usr/ports/devel/bison > =3D=3D=3D> Returning to build of openh323-1.8.8 i.e. it doesn't actually compile and install bison at compile-time, because it should already have been pkg_added before the build started. Kris --GpGaEY17fSl8rd50 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (FreeBSD) iD8DBQE87b2DWry0BWjoQKURAtwLAJ0ZApqIQvZLNGJd+OrHvgwr4Te0CgCgsdqA A57+cE9f2csxlr3/cwiYZEI= =SSaY -----END PGP SIGNATURE----- --GpGaEY17fSl8rd50-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020523211147.E7527>