Date: Fri, 15 Jan 1999 16:03:34 +0100 From: Dirk Froemberg <dirk@FreeBSD.ORG> To: Satoshi Asami <asami@FreeBSD.ORG> Cc: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: Re: cvs commit: ports/www/apache12-php3/scripts configure.php ports/www/apache13-php3/scripts configure.php ports/databases/gmysql Makefile ports/databases/p5-Mysql Makefile ports/databases/xmysql Makefile ports/databases/xmysqladmin Makefile Message-ID: <19990115160333.A4815@physik.TU-Berlin.DE> In-Reply-To: <199901150320.TAA20843@silvia.hip.berkeley.edu>; from Satoshi Asami on Thu, Jan 14, 1999 at 07:20:31PM -0800 References: <199901142122.NAA17271@freefall.freebsd.org> <199901150320.TAA20843@silvia.hip.berkeley.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi Satoshi! I knew you wouldn't like it. ;-) There is another reason for trying to detect, which mysql version is installed: You can't have mysql321 and mysql322 installed both. They share almost the same files. So if mysql321 is installed on a system and someone installs e. g. gmysql having a simple library dependency to mysql322 only, the installation of mysql321 will be overwritten. If the old mysql321 is deleted then mysql322 will be blewed up, since the PLISTs are nearly the same. So the if-construct tries to ensure that only one version of mysql is or will be installed. I was going to commit a patch which sets NO_PACKAGE for mysql321 to address the package side of the problem. I am not really happy with the patches I committed yesterday, but I think it doesn't introduce anything really awful. IMHO it is better to have this kind of "autodetection" in there than just a simple library dependency to mysql322. bsd.port.mk is lacking some CONFLICTS-system which take care of such situtions in which different ports/packages install the same files. We have about 390 ports (about 20%) installing files being used by one or more other ports. So you are the one to decide whether it can stay as it is or if I should change it to a simple LIB_DEPENDS on mysql322. 8-) Best regards Dirk On Thu, Jan 14, 1999 at 07:20:31PM -0800, Satoshi Asami wrote: > * The default is mysql322 now, but take mysql321 if it is installed. > * > * (mysql321 installs a static libmysqlclient.a only, mysql322 installs a > * static and shared version of the library. Note that the build dependency > * to mysql321 is a no op actually. It is in there to improve understanding(?).) > > === > LIB_DEPENDS= gtk11.1:${PORTSDIR}/x11-toolkits/gtk11 > .if !exists(${PREFIX}/lib/mysql/libmysqlclient.a) || exists(${PREFIX}/lib/mysql/libmysqlclient.so) > LIB_DEPENDS+= mysqlclient.5:${PORTSDIR}/databases/mysql322 > .else > BUILD_DEPENDS= ${PREFIX}/lib/mysql/libmysqlclient.a:${PORTSDIR}/databases/mysql321 > .endif > === > > Eek. > > You really don't have to go this far. It could screw up package and > INDEX building, and we can't guarantee that we'll ship packages with > correct dependency information if you use variable dependency lists > like this. > > I recommend you to change it to a simple LIB_DEPENDS on mysql322. -- e-mail: dirk@FreeBSD.ORG To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990115160333.A4815>