Skip site navigation (1)Skip section navigation (2)
Date:      Tue,  8 Feb 2005 16:56:28 +0900 (JST)
From:      NIIMI Satoshi <sa2c@sa2c.net>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        krion@FreeBSD.org
Subject:   ports/77250: Mk/bsd.port.mk produces variable recursive definition error on RELENG_4 systems
Message-ID:  <20050208075628.9FB145C24@berkeley.l.sa2c.net>
Resent-Message-ID: <200502080800.j1880bFx040403@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         77250
>Category:       ports
>Synopsis:       Mk/bsd.port.mk produces variable recursive definition error on RELENG_4 systems
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Feb 08 08:00:37 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     NIIMI Satoshi
>Release:        FreeBSD 5.3-RELEASE-p4 i386
>Organization:
>Environment:
System: FreeBSD berkeley.l.sa2c.net 5.3-RELEASE-p4 FreeBSD 5.3-RELEASE-p4 #2: Tue Jan 11 17:58:42 JST 2005 root@berkeley.l.sa2c.net:/usr/obj/usr/src/sys/GENERIC i386


	
>Description:
make on RELENG_4 has a variable expansion bug; ${FOO} is not expanded
on FOO:=${FOO} if FOO is not defined.

For example, Makfile 
FOO:=${FOO}
all:
	echo ${FOO}
produces error "Variable FOO is recursive."
	
>How-To-Repeat:
On RELENG_4 system,
cd ports/devel/gettext; make BATCH=yes check-makefile
	
>Fix:
	

--- patch begins here ---
Index: bsd.port.mk
===================================================================
RCS file: /home/ncvs/ports/Mk/bsd.port.mk,v
retrieving revision 1.508
diff -u -d -r1.508 bsd.port.mk
--- bsd.port.mk	7 Feb 2005 11:17:50 -0000	1.508
+++ bsd.port.mk	8 Feb 2005 07:39:51 -0000
@@ -1082,6 +1082,8 @@
 _OPTIONSFILE!=	${ECHO_CMD} "${OPTIONSFILE}"
 .if defined(OPTIONS)
 .	if defined(PACKAGE_BUILDING) || (defined(BATCH) && !exists(${_OPTIONSFILE}))
+WITHOUT:=
+WITH:=
 .	if defined(OPTIONS)
 REALOPTIONS=${OPTIONS:C/".*"//g}
 .	for O in ${REALOPTIONS}
--- patch ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050208075628.9FB145C24>