Subject: pkg/23273: PKGNAME_REQD quoting breakage
To: None <gnats-bugs@gnats.netbsd.org>
From: None <kristerw@netbsd.org>
List: netbsd-bugs
Date: 10/26/2003 01:16:13
>Number:         23273
>Category:       pkg
>Synopsis:       PKGNAME_REQD quoting breakage
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Oct 26 01:17:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Krister Walfridsson
>Release:        NetBSD 1.6.1
>Organization:
	
>Environment:
	
	
System: NetBSD homeworld.netbsd.org 1.6.1 NetBSD 1.6.1 (HOMEWORLD) #2: Fri Jul 25 09:05:09 CDT 2003 root@aurora.ait.iastate.edu:/usr/NetBSD/kernels/compile/HOMEWORLD i386
Architecture: i386
Machine: i386
>Description:
There are quoting problems with PKGNAME_REQD usage.  This can be
seen from the output when building packages:

  [...]
   ===> [Automatic  shared object handling]
   dc: stack empty
   dc: stack empty
   ===> Registering installation for x11-links-0.18
  [...]

The +SIZE* files in /var/db/pkg/*/ are empty, and the build leaves
files of the type

   -rw-r--r--  1 root  wheel     0 Oct 26 02:52 =0.17

in pkgsrc/*/*/.

>How-To-Repeat:
This can probably be seen when building most packages, but I
noticed it first when building chat/quirc without having
pkgtools/x11-links installed.
>Fix:
A workaround is to just remove the PKGNAME_REQD functionality:

Index: bsd.pkg.mk
===================================================================
RCS file: /cvsroot/pkgsrc/mk/bsd.pkg.mk,v
retrieving revision 1.1297
diff -u -r1.1297 bsd.pkg.mk
--- bsd.pkg.mk	18 Oct 2003 12:29:26 -0000	1.1297
+++ bsd.pkg.mk	26 Oct 2003 01:13:40 -0000
@@ -4026,7 +4026,7 @@
 			${ECHO_MSG} "=> No directory for $$dir.  Skipping.."; \
 		else							\
 			cd $$dir ;					\
-			${MAKE} ${MAKEFLAGS} $$target _PKGSRC_DEPS=", ${PKGNAME}${_PKGSRC_DEPS}" PKGNAME_REQD=\""$$pkg"\"; \
+			${MAKE} ${MAKEFLAGS} $$target _PKGSRC_DEPS=", ${PKGNAME}${_PKGSRC_DEPS}"; \
 			${ECHO_MSG} "${_PKGSRC_IN}> Returning to build of ${PKGNAME}"; \
 		fi;							\
 	fi

>Release-Note:
>Audit-Trail:
>Unformatted:
 	pkgsrc as of Oct 26 2003