From owner-freebsd-ports@FreeBSD.ORG Wed May 28 15:15:30 2003 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0D2A437B401 for ; Wed, 28 May 2003 15:15:30 -0700 (PDT) Received: from mail.westbend.net (ns1.westbend.net [216.47.253.3]) by mx1.FreeBSD.org (Postfix) with ESMTP id 56EBD43F85 for ; Wed, 28 May 2003 15:15:29 -0700 (PDT) (envelope-from hetzels@westbend.net) Received: from Admin02 (admin02.westbend.net [216.47.253.19]) by mail.westbend.net (8.12.9/8.12.9) with SMTP id h4SMFSV4047449; Wed, 28 May 2003 17:15:28 -0500 (CDT) (envelope-from hetzels@westbend.net) Message-ID: <06d501c32566$a62d89c0$13fd2fd8@Admin02> From: "Scot W. Hetzel" To: "Guy Fraser" , References: <3ED5200D.2010908@incentre.net> Date: Wed, 28 May 2003 17:15:29 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 X-Virus-Scanned: by amavisd-milter (http://amavis.org/) Subject: Re: how do I modify pkg-plist for opional modules X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 May 2003 22:15:30 -0000 From: "Guy Fraser" > The FreeRadius port is marked as broken due to a "bad" pkg-plist. > > If MySQL and X99-Token software are both installed the list is > correct. The Makefile installs modules if the required software is > installed before "make". > > The pkg-plist can never be correct unless all files for all optional > modules are included but not required to be available for install or > removal. Alternatively a wild card could be used since the optional > modules are all in the "lib" subdirectory and start with "rlm_", so > "lib/rlm_*" could match. > > Let me know how to do this and I will try to fix the problem. > You need to change PLIST_SUB so that it contains a variable that is either set to " or "@comment depending on whether the module is installed or not installed. You'll need to add something like the following to the Makefile: .if defined(WITH_MYSQL) .if exists(${LOCALBASE}/lib/mysql/libmysqlclient.so.10) LIB_DEPENDS+= mysqlclient.10:${PORTSDIR}/databases/mysql323-client .else .if exists(${LOCALBASE}/lib/mysql/libmysqlclient.so.14) LIB_DEPENDS+= mysqlclient.14:${PORTSDIR}/databases/mysql41-client .else LIB_DEPENDS+= mysqlclient.12:${PORTSDIR}/databases/mysql40-client .endif .endif CONFIGURE_ARGS+=--with-mysql=${LOCALBASE} PLIST_SUB+= MYSQL="" .else CONFIGURE_ARGS+= --without-mysql PLIST_SUB+= MYSQL="@comment " .endif Then in pkg-plist change lib/rlm_sql_mysql.* to %%MYSQL%%lib/rlm_sql_mysql.* Take a look at net/openldap2, or security/cyrus-sasl2 (Makefile and pkg-plist) for an example. Scot