Date: 22 Apr 2003 22:33:09 -0400 From: Joe Marcus Clarke <marcus@marcuscom.com> To: Kris Kennaway <kris@obsecurity.org> Cc: Sergey Matveychuk <sem@ciam.ru> Subject: Re: Recent bsd.port.mk changes Message-ID: <1051065189.68327.9.camel@shumai.marcuscom.com> In-Reply-To: <20030423013231.GA66663@rot13.obsecurity.org> References: <000501c3074c$e5c2be80$0a2da8c0@sem> <3EA48724.3080602@ciam.ru><3EA53B4A.4030700@ciam.ru> <3EA5EA0D.8070500@ciam.ru> <20030423013231.GA66663@rot13.obsecurity.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--=-tXVprENm8H00lXL9i6GI Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Tue, 2003-04-22 at 21:32, Kris Kennaway wrote: > On Wed, Apr 23, 2003 at 05:19:09AM +0400, Sergey Matveychuk wrote: > > Kris Kennaway wrote: > > >features enabled ("foo-1.2.3" vs "foo-esound-1.2.3" etc.) This is why > > >I suggested that comparing the installation prefix and pkg-plist for > > >overlap with ports that have the same origin may be the only way to do > > >this reliably. > >=20 > > I don't know how to compare pkg-plist files? How to make decision a por= t=20 > > is older version and not variant of current one? It must be some=20 > > evristic method. Some files can be moved in other place, some files can= =20 > > be new, some files can be moved away in new version. > > In port's variant case path can be changed or file name can be changed=20 > > (libsome.so and libsome_r.so). >=20 > You can extract the prefix from the installed package by grepping for > @cwd in +CONTENTS. Or you can use pkg_info -p -q ${PKGNAME} which is what the patch I sent you uses. > Similarly you can extract the list of installed > files by doing grep -v ^@ +CONTENTS. =20 pkg_info -f -q ${PKGNAME} should provide this. > For each package that has our > origin (or a previous origin as looked up in the MOVED file), do the > following: if the installed prefix =3D=3D $PREFIX and one or more of the > installed files matches a file in pkg-plist (checked using > e.g. comm(1)), then we are going to conflict and we should not > install. I can't immediately think of how to implement the installed > plist extraction without using a temporary file, but it should be > possible with some thought. I can try to modify the patch I sent you to do this check as well. It already does the ${PREFIX} check. Joe >=20 > Kris --=20 PGP Key : http://www.marcuscom.com/pgp.asc --=-tXVprENm8H00lXL9i6GI Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (FreeBSD) iD8DBQA+pftlb2iPiv4Uz4cRAr1TAJ4z4LDTlB+Jg01DQrS/ebjBXhKoJQCeN/hR ngWP8egXWHbDpPxVFTyrtLg= =MctH -----END PGP SIGNATURE----- --=-tXVprENm8H00lXL9i6GI--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1051065189.68327.9.camel>