Subject: pkg/29963: buildlink problem with escaped whitespace args
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <jschauma@netmeister.org>
List: pkgsrc-bugs
Date: 04/13/2005 18:27:00
>Number:         29963
>Category:       pkg
>Synopsis:       buildlink problem with escaped whitespace args
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Apr 13 18:27:00 +0000 2005
>Originator:     Jan Schaumann
>Release:        NetBSD 2.0_STABLE
>Organization:
	
>Environment:
	
	
System: NetBSD dogfish-head.cs.stevens.edu 2.0_STABLE NetBSD 2.0_STABLE (BOCK) #3: Mon Apr 11 12:45:06 EDT 2005 jschauma@doppelbock.hpcf.cs.stevens-tech.edu:/usr/2.0/src/sys/arch/i386/compile/obj/BOCK i386
Architecture: i386
Machine: i386
>Description:
It seems that buildlink is not dealing properly with arguments that
contain escaped whitespace.  For example, if your CFLAGS contains

-DTCL_WIDE_INT_TYPE=long\ long

then buildlink will turn this into

-DTCL_WIDE_INT_TYPE=long

and

long

thus messing up the compiler.

I think this happens in wrapper/arg-source...

>How-To-Repeat:
	install x11/tk
	try to build a package that sources /usr/pkg/lib/tkConfig.sh to
	determine various tcl/tk configuration flags.
	
	Note how the compiler will bail out.

	Note how work.log contains

	    (arg-source) push: -DTCL_WIDE_INT_TYPE=long\
	    (arg-source) push: long

>Fix:
	This probably involves some nasty quoting in buildlink3's complex
	interiors.

>Unformatted: