Ports: make fails, if DESTDIR path has spaces

Joshua Isom jrisom at gmail.com
Mon Apr 1 21:14:34 UTC 2013


On 4/1/2013 11:45 AM, Kimmo Paasiala wrote:
> On Mon, Apr 1, 2013 at 7:30 PM, Chris Rees <crees at freebsd.org> wrote:
>> On 1 April 2013 17:13,  <rank1seeker at gmail.com> wrote:
>>>> Try "DESTDIR='/usr/TZ\ ONE'; export DESTDIR".
>>>>
>>>> You need to escape the space.
>>>
>>> This is '#!/bin/sh' scripting.
>>> Doing so "fixes" *.mk, but breaks sh => dir simply doesn't exist anymore.
>>>
>>> Matthias && Chris => *.mk is at fault here, for not supporting FreeBSD's
>>> full range of chars for dir paths
>>
>> As I explained before, Makefiles and sh have a strange relationship,
>> where escaping is similar but different in weird places.
>>
>> Unless you are an expert, you should not use spaces in pathnames.
>> Stop doing it; the ports system is not designed around them.
>>
>
> You could work around the problem by using an external program to do
> all the expanding and globbing, it would guarantee that the expansions
> are done the same way always and special characters treated in uniform
> way.
>
> -Kimmo

Or use a symbolic link to point to the named directory, probably.



More information about the freebsd-hackers mailing list