Subject: pkg/36387: mk/flavor/pkg/install-dependencies, gtk2+ and PKG_BUILD_OPTIONS
To: None <,,>
From: Joachim König <>
List: pkgsrc-bugs
Date: 05/25/2007 09:05:00
>Number:         36387
>Category:       pkg
>Synopsis:       mk/flavor/pkg/install-dependencies, gtk2+ and PKG_BUILD_OPTIONS
>Confidential:   no
>Severity:       critical
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri May 25 09:05:00 +0000 2007
>Originator:     Joachim König
>Release:        NetBSD 4.99.19 i386

System: NetBSD 4.99.19 (JOACHIM_MPACPI) #1: Mon May 14 11:49:26 CEST 2007


x11/gtk2 uses "gtk2+" as package name. Using multiple options
for gtk2, e.g. using the "cups" option and the automatically
added "x11" option leads to the following error when trying to
build depending packages:

# make: don't know how to make x11. Stop

Here an excerpt from a build of www/firefox with the make
command called by install-dependecies echoed to the tty
before executing it:

----------------- cut here --------------

=> Required installed package renderproto>=0.9.1: renderproto-0.9.2 found
=> Required installed package kbproto>=1.0.2: kbproto-1.0.3 found
=> Required installed package xproto>=7.0.9: xproto-7.0.10 found
=> Required installed package libXt>=1.0.0: NOT found
=> Verifying package for ../../x11/libXt
/usr/bin/env PATH=/pkg_comp/obj/pkgsrc/www/firefox/work/.wrapper/bin:/pkg_comp/obj/pkgsrc/www/firefox/work/.buildlink/bin:/pkg_comp/obj/pkgsrc/www/firefox/work/.tools/bin:/pkg_comp/obj/pkgsrc/www/firefox/work/.gcc/bin:/usr/pkg/bin:/usr/pkg/bin:/usr/pkg/sbin:/bin:/usr/bin:/sbin/:/usr/sbin _PKGSRC_DEPS=, firefox- PKGNAME_REQD=libXt>=1.0.0 /usr/pkg/bin/bmake _MAKE=/usr/pkg/bin/bmake OPSYS=NetBSD OS_VERSION=4.99.19 LOWER_OS_VERSION=4.99.19 LOWER_OPSYS=netbsd _PKGSRCDIR=/usr/pkgsrc PKGTOOLS_VERSION=20070308 PKG_BUILD_OPTIONS.gtk2+=cups\ x11 PKG_BUILD_OPTIONS.pango=x11 PKG_BUILD_OPTIONS.cairo=x11 _CC=/usr/bin/cc _PATH_ORIG=/usr/pkg/bin:/usr/pkg/sbin:/bin:/usr/bin:/sbin/:/usr/sbin _AUTOMATIC=yes package
bmake: don't know how to make x11. Stop

bmake: stopped in /usr/pkgsrc/x11/libXt
*** Error code 2

---------------- cut here --------------

obviously, the "PKG_BUILD_OPTIONS.gtk2+=cups\ x11" in the call is
responsible for the problem. Removing e.g. the "cups" option for
gtk2+ (e.g. in mk.conf) allows for continuing the build but is obviously
not a fix.


set PKG_OPTIONS.gtk2+ to "cups" in mk.conf and try to build a
package that depends on gtk2+.


Using a "+" in a package name is obviously not a good idea, as
make variable names are derived from it. In order to use the
"+=" syntax to add a value to the list, one has to add an additional
blank that is not necessary for normal variables. 

Therefore the easiest way would be to disallow "+" in packages. 
The real cause seems to be makes command line parsing of
variable assignments containing a "+" in their name.