From marcus@shumai.marcuscom.com  Thu Nov 24 18:15:14 2005
Return-Path: <marcus@shumai.marcuscom.com>
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id F1BCB16A41F
	for <FreeBSD-gnats-submit@freebsd.org>; Thu, 24 Nov 2005 18:15:14 +0000 (GMT)
	(envelope-from marcus@shumai.marcuscom.com)
Received: from shumai.marcuscom.com (creme-brulee.marcuscom.com [24.172.16.118])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 0DE4C43D9F
	for <FreeBSD-gnats-submit@freebsd.org>; Thu, 24 Nov 2005 18:15:03 +0000 (GMT)
	(envelope-from marcus@shumai.marcuscom.com)
Received: from shumai.marcuscom.com (localhost.marcuscom.com [127.0.0.1])
	by shumai.marcuscom.com (8.13.4/8.13.4) with ESMTP id jAOIF0oQ069526
	for <FreeBSD-gnats-submit@freebsd.org>; Thu, 24 Nov 2005 13:15:00 -0500 (EST)
	(envelope-from marcus@shumai.marcuscom.com)
Received: (from marcus@localhost)
	by shumai.marcuscom.com (8.13.4/8.13.4/Submit) id jAOIF0n5069525;
	Thu, 24 Nov 2005 13:15:00 -0500 (EST)
	(envelope-from marcus)
Message-Id: <200511241815.jAOIF0n5069525@shumai.marcuscom.com>
Date: Thu, 24 Nov 2005 13:15:00 -0500 (EST)
From: Joe Marcus Clarke <marcus@freebsd.org>
Reply-To: Joe Marcus Clarke <marcus@freebsd.org>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: [PATCH] Fix FAM support in bsd.port.mk; make gamin default
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         89498
>Category:       ports
>Synopsis:       [PATCH] Fix FAM support in bsd.port.mk; make gamin default
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    portmgr
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Nov 24 18:20:02 GMT 2005
>Closed-Date:    Sat Jan 21 19:50:39 GMT 2006
>Last-Modified:  Sat Jan 21 19:50:39 GMT 2006
>Originator:     Joe Marcus Clarke
>Release:        FreeBSD 6.0-STABLE i386
>Organization:
>Environment:
System: FreeBSD shumai.marcuscom.com 6.0-STABLE FreeBSD 6.0-STABLE #19: Sun Nov 20 20:23:35 EST 2005 marcus@shumai.marcuscom.com:/usr/obj/usr/src/sys/SHUMAI i386


	
>Description:
I did a stupid thing with my initial pass at FAM support.  I exposed
WANT_FAM_SYSTEM to users when it is clearly only meant for porters.
This patch corrects that problem by using WITH_FAM_SYSTEM as a user
tunable.  It also (finally) makes gamin the default FAM system.
>How-To-Repeat:
	
>Fix:

	

--- bsd.port.mk.diff begins here ---
--- bsd.port.mk.orig	Thu Nov 24 13:12:26 2005
+++ bsd.port.mk	Thu Nov 24 13:11:48 2005
@@ -373,7 +373,7 @@ FreeBSD_MAINTAINER=	portmgr@FreeBSD.org
 # USE_FAM		- If set, this port uses the File Alteration Monitor.
 #
 # WANT_FAM_SYSTEM
-# 				- Legal values are: fam (default), gamin
+# 				- Legal values are: gamin (default),fam
 # 				  If set to an unknown value, the port is marked BROKEN.
 ##
 # USE_AUTOTOOLS	- If set, this port uses various GNU autotools
@@ -1377,8 +1377,6 @@ CD_MOUNTPTS?=	/cdrom ${CD_MOUNTPT}
 
 WANT_OPENLDAP_VER?=	22
 
-WANT_FAM_SYSTEM?=	fam
-
 # Owner and group of the WWW user
 WWWOWN?=	www
 WWWGRP?=	www
@@ -1495,14 +1493,28 @@ BROKEN=				"unknown OpenLDAP version: ${
 .endif
 
 .if defined(USE_FAM)
-.if ${WANT_FAM_SYSTEM} == fam
-LIB_DEPENDS+=	fam.0:${PORTSDIR}/devel/fam
-.elif ${WANT_FAM_SYSTEM} == gamin
-LIB_DEPENDS+=	fam.0:${PORTSDIR}/devel/gamin
-.else
-BROKEN=			"unknown FAM system: ${WANT_FAM_SYSTEM}"
+DEFAULT_FAM_SYSTEM=	gamin
+# Currently supported FAM systems
+FAM_SYSTEM_FAM=		fam.0:${PORTSDIR}/devel/fam
+FAM_SYSTEM_GAMIN=	fam.0:${PORTSDIR}/devel/gamin
+
+.if defined(WANT_FAM_SYSTEM)
+.if defined(WITH_FAM_SYSTEM) && ${WITH_FAM_SYSTEM}!=${WANT_FAM_SYSTEM}
+BROKEN=	"The port wants to use ${WANT_FAM_SYSTEM} as its FAM system and you wish to use ${WITH_FAM_SYSTEM}"
 .endif
+FAM_SYSTEM=	${WANT_FAM_SYSTEM}
+.elif defined(WITH_FAM_SYSTEM)
+FAM_SYSTEM=	${WITH_FAM_SYSTEM}
+.else
+FAM_SYSTEM=	${DEFAULT_FAM_SYSTEM}
+.endif # WANT_FAM_SYSTEM
+
+.if defined(FAM_SYSTEM_${FAM_SYSTEM:U})
+LIB_DEPENDS+=	${FAM_SYSTEM_${FAM_SYSTEM:U}}
+.else
+BROKEN=			"unknown FAM system: ${FAM_SYSTEM}"
 .endif
+.endif # USE_FAM
 
 .if defined(USE_GETOPT_LONG)
 .if ${OSVERSION} < 500041
--- bsd.port.mk.diff ends here ---


>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-ports-bugs->portmgr 
Responsible-Changed-By: marcus 
Responsible-Changed-When: Thu Nov 24 18:22:34 GMT 2005 
Responsible-Changed-Why:  
Over to the keepers of the flame. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=89498 
State-Changed-From-To: open->analyzed 
State-Changed-By: linimon 
State-Changed-When: Mon Dec 19 13:49:37 UTC 2005 
State-Changed-Why:  
Accepted for testing on the cluster. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=89498 

From: Aron Stansvik <elvstone@gmail.com>
To: bug-followup@FreeBSD.org
Cc: marcus@freebsd.org
Subject: Re: ports/89498: [PATCH] Fix FAM support in bsd.port.mk; make gamin default
Date: Wed, 4 Jan 2006 13:18:25 +0100

 Consider the following scenario:
 
 A port defines WANT_FAM_SYSTEM=3Dfam. A user without WITH_FAM_SYSTEM
 explicitly set in his make.conf, and with devel/gamin installed since
 before then installs this port. I think the dependency on fam.0 will
 then be satisfied, eventhough what he really has is Gamin. Would
 anyone mind the following? (patch against HEAD):
 
 --- bsd.port.mk.orig  Wed Jan  4 12:07:38 2006
 +++ bsd.port.mk Wed Jan  4 12:08:29 2006
 @@ -1498,7 +1498,7 @@
  .if ${WANT_FAM_SYSTEM} =3D=3D fam
  LIB_DEPENDS+=3D  fam.0:${PORTSDIR}/devel/fam
  .elif ${WANT_FAM_SYSTEM} =3D=3D gamin
 -LIB_DEPENDS+=3D  fam.0:${PORTSDIR}/devel/gamin
 +LIB_DEPENDS+=3D  gamin-1.1:${PORTSDIR}/devel/gamin
  .else
  BROKEN=3D      "unknown FAM system: ${WANT_FAM_SYSTEM}"
  .endif
 
 Best regards,
 Aron Stansvik
 
 PS. I'm not subscribed, so Cc would be nice. DS.

From: Aron Stansvik <elvstone@gmail.com>
To: bug-followup@freebsd.org
Cc: marcus@freebsd.org
Subject: Re: ports/89498: [PATCH] Fix FAM support in bsd.port.mk; make gamin default
Date: Wed, 4 Jan 2006 13:36:33 +0100

 My e-mail client did something bad to the equal signs in the patch.
 Sorry about that, but you get what I mean, just change
 fam.0:${PORTSDIR}/devel/gamin to gamin-1.1:${PORTSDIR}/devel/gamin.
 
 Aron
State-Changed-From-To: analyzed->closed 
State-Changed-By: linimon 
State-Changed-When: Sat Jan 21 19:50:29 UTC 2006 
State-Changed-Why:  
Committed, thanks. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=89498 
>Unformatted:
