From owner-freebsd-ports@FreeBSD.ORG Thu Jun 19 13:06:18 2014 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0E339199 for ; Thu, 19 Jun 2014 13:06:18 +0000 (UTC) Received: from mail.moehre.org (mail.moehre.org [195.96.35.7]) by mx1.freebsd.org (Postfix) with ESMTP id C32B82E11 for ; Thu, 19 Jun 2014 13:06:16 +0000 (UTC) Received: from mail.moehre.org (unknown [195.96.35.7]) by mail.moehre.org (Postfix) with ESMTP id 67D218B143C for ; Thu, 19 Jun 2014 15:06:09 +0200 (CEST) X-Spam-Flag: NO X-Spam-Score: -100.967 X-Spam-Level: X-Spam-Status: No, score=-100.967 tagged_above=-999 required=5 tests=[ALL_TRUSTED=-1, AWL=0.033, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mail.moehre.org ([195.96.35.7]) by mail.moehre.org (mail.moehre.org [195.96.35.7]) (amavisd-new, port 10024) with ESMTP id McoraBA5PU+5 for ; Thu, 19 Jun 2014 15:06:04 +0200 (CEST) Received: from [192.168.100.30] (p54B0B2A7.dip0.t-ipconnect.de [84.176.178.167]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: coco@executive-computing.de) by mail.moehre.org (Postfix) with ESMTPSA id 9D1D68B141C for ; Thu, 19 Jun 2014 15:06:04 +0200 (CEST) Message-ID: <53A2DFDD.3050307@executive-computing.de> Date: Thu, 19 Jun 2014 15:04:29 +0200 From: Marco Steinbach User-Agent: Thunderbird 2.0.0.12 (Windows/20080213) MIME-Version: 1.0 To: freebsd-ports@freebsd.org Subject: USE_MYSQL / USE_PGSQL buildtime dependency differences Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Jun 2014 13:06:18 -0000 Hi. Mk/bsd.database.mk seems to handle dependencies resulting from the use of USE_PGSQL and USE_MYSQL flags differently. USE_PGSQL pulls in PostgreSQL at buildtime, for both, the client and the server component. USE_MYSQL seems to only pull anything in at buildtime, if the flag is set to 'client'. Thus, with USE_MYSQL=server the build of my port breaks by not installing anything at buildtime, neither the server nor (more importantly) its client slaveport, while USE_MYSQL=client does not install the server. Can I have my cake and eat it by using the USE_MYSQL flags, or do I need to revert to using explicit BUILD_DEPENDS / RUN_DEPENDS combinations to get the MySQL client in at buildtime in any case ? Here's an example: [Makefile ...] PGSQL_USE= pgsql=server PGSQLC_USE= pgsql=client MYSQL_USE= mysql=server MYSQLC_USE= mysql=client [...] With option MYSQL=On and MYSQLC=Off: $ ( make showconfig && make build-depends-list ) | egrep -i 'mysql|postgres' ====> Depend on PostgreSQL: you can only select none or one of them PGSQL=on: PostgreSQL database support PGSQLC=off: PostgreSQL database support (client only) ====> Depend on MySQL: you can only select none or one of them MYSQL=on: MySQL database support MYSQLC=off: MySQL database support (client only) /usr/ports/databases/postgresql92-client /usr/ports/databases/postgresql92-server $ As opposed to (note the changed MYSQLC / MYSQL options): $ ( make showconfig && make build-depends-list ) | egrep -i 'mysql|postgres' ====> Depend on PostgreSQL: you can only select none or one of them PGSQL=on: PostgreSQL database support PGSQLC=off: PostgreSQL database support (client only) ====> Depend on MySQL: you can only select none or one of them MYSQL=off: MySQL database support MYSQLC=on: MySQL database support (client only) /usr/ports/databases/mysql55-client /usr/ports/databases/postgresql92-client /usr/ports/databases/postgresql92-server $ I've also tried renaming my MYSQL / PGSQL options to preclude possible collisions, but that didn't change behaviour. I'm trying to create a port of Icinga2 (https://www.icinga.org/icinga2/), FWIW. MfG CoCo