Bug 31110

Summary: Doesn't build with spaces in its path
Product: pkg-config Reporter: Martin Häcker <spamfaenger>
Component: srcAssignee: Tollef Fog Heen <tfheen>
Status: RESOLVED NOTOURBUG QA Contact:
Severity: normal    
Priority: medium CC: ohnobinki
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Martin Häcker 2010-10-25 14:26:23 UTC
This seems to be because the parameters to mkinstalldirs are not correctly quoted in the makefile (as far as I can see).

I've stopped investigating here as I originally wanted to make the build process of another open source project space-in-path-safe to ease the experience of new contributors.

I'm fairly fit in shell, but I give up here as I don't want to investigate the autohell that somehow seems to cause this.

This behaviour was seen in the version downloaded from http://pkgconfig.freedesktop.org/releases/pkg-config-0.23.tar.gz
Comment 1 Dan Nicholson 2012-05-14 17:51:14 UTC
Unfortunately, this is a common autotools bug and there's not an easy way to workaround it at the pkg-config level. In current pkg-config, this fails with libtool failing to quote the args correctly.

  /bin/sh ./libtool   --mode=install /usr/bin/install -c pkg-config '/home/dan/scm/pkg-config/build/dest/p a t h/bin'
libtool: install: /usr/bin/install -c pkg-config /home/dan/scm/pkg-config/build/dest/p a t h/bin/pkg-config
/usr/bin/install: target `h/bin/pkg-config' is not a directory
make[2]: *** [install-binPROGRAMS] Error 1
make[2]: Leaving directory `/home/dan/scm/pkg-config/build'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/dan/scm/pkg-config/build'
make: *** [install-recursive] Error 1

This is automake-1.11.1 and libtool-2.4. Possibly this is fixed in newer versions, but I suspect it won't happen based on the libtool developer's stance:

http://lists.gnu.org/archive/html/bug-automake/2007-10/msg00005.html

I did actually find the spot to fix this in libtool, but I see lots of other areas where this would need work. grep for func_show_eval and see that the args are almost never properly quoted.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.