From owner-freebsd-ports@FreeBSD.ORG Fri Dec 21 21:24:27 2007 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3C25516A417 for ; Fri, 21 Dec 2007 21:24:27 +0000 (UTC) (envelope-from josh@tcbug.org) Received: from conn-smtp.mc.mpls.visi.com (conn.mc.mpls.visi.com [208.42.156.2]) by mx1.freebsd.org (Postfix) with ESMTP id EF37D13C447 for ; Fri, 21 Dec 2007 21:24:26 +0000 (UTC) (envelope-from josh@tcbug.org) Received: from mail.tcbug.org (mail.tcbug.org [208.42.70.163]) by conn-smtp.mc.mpls.visi.com (Postfix) with ESMTP id 28B56780F for ; Fri, 21 Dec 2007 15:24:26 -0600 (CST) Received: from build64.tcbug.org (unknown [208.42.70.167]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.tcbug.org (Postfix) with ESMTP id 8197E214A2E4 for ; Fri, 21 Dec 2007 15:24:28 -0600 (CST) From: Josh Paetzel To: freebsd-ports@freebsd.org Date: Fri, 21 Dec 2007 15:24:20 -0600 User-Agent: KMail/1.9.7 MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart2288238.0iqif3Pdg9"; protocol="application/pgp-signature"; micalg=pgp-sha1 Content-Transfer-Encoding: 7bit Message-Id: <200712211524.25454.josh@tcbug.org> Subject: Opinion on cross-port OPTIONS CONFLICTS X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Dec 2007 21:24:27 -0000 --nextPart2288238.0iqif3Pdg9 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline I've recently run across some brokeness in ports that would be relatively=20 trivial to deal with if one port had a way to know about the OPTIONS anothe= r=20 port was compiled with. My initial thought was to register the state of OPTIONS in to /var/db/pkg. = =20 This solves all of the problems that I know of (not that I know all of them= ,=20 but it fixes what I've found that's broken) but also involves quite a bit o= f=20 work to the pkg_* tools. It was suggested to me that one could set up something such that=20 CONFLICT_FILE=3Dblah which would cover the case of an OPTION in another por= t=20 causing it to install files that it wouldn't otherwise. This is far far=20 easier to impliment, but does not solve all of the problems I've found. Another suggestion was to list the state of OPTIONS in the package name. I= =20 haven't really chewed on this one much. Here are two examples of situations where things are broken and it's tough = to=20 fix under the existing infrastructure: 1) random-example-app has ruby support but breaks with a threaded ruby=20 installation. (CONFLICT_FILE wouldn't help here) 2) subversion and apache22 can overwrite each other's apr if you don't tell= =20 them about each other. Here's an example of how to duplicate this: install subversion without -DWITH_APACHE2_APR so it installs it's own ap= r. install apache22 and don't select use apr from ports from the menu. deinstall subversion. It will complain that md5s are wrong on apr becau= se apache installed it's own there. Obviously this is doing it wrong, but in my opinion ports shouldn't be able= to=20 overwrite each other. Anyways, suggestions/feedback welcome. =2D-=20 Thanks, Josh Paetzel PGP: 8A48 EF36 5E9F 4EDA 5A8C 11B4 26F9 01F1 27AF AECB --nextPart2288238.0iqif3Pdg9 Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) iD8DBQBHbC8JJvkB8SevrssRArarAJ0X1puhONDaiSqRePuCE8wICEYqbgCgmVpO vUb663gKhUFBt5G08ZfWytg= =ZCfE -----END PGP SIGNATURE----- --nextPart2288238.0iqif3Pdg9--