[CMake] [PATCH] SEPARATE_ARGUMENTS: don't replace escaped spaces

Brandon J. Van Every bvanevery at gmail.com
Mon Jul 17 00:26:38 EDT 2006


William A. Hoffman wrote:
> At 06:01 PM 7/16/2006, Brandon J. Van Every wrote:
>
>   
>> MACRO(MAKE_WINDOWS_PATH pathname)
>>  # An extra \\ escape is necessary to get a \ through CMake's processing.
>>  STRING(REPLACE "/" "\\" ${pathname} "${${pathname}}")
>>  # Enclose with UNESCAPED quotes.  This means we need to escape our
>>  # quotes once here, i.e. with \"
>>  SET(${pathname} \"${${pathname}}\")
>> ENDMACRO(MAKE_WINDOWS_PATH)
>>
>> SET(MYPATH "C:/Program Files/Chicken")
>> MESSAGE("${MYPATH}")
>> MAKE_WINDOWS_PATH(MYPATH)
>> MESSAGE("${MYPATH}")
>> SEPARATE_ARGUMENTS(MYPATH)
>> MESSAGE("${MYPATH}")
>>
>>
>> Brandon J. Van Every at KAHLO ~
>> $ cmake -P windowspath.cmake
>> C:/Program Files/Chicken
>> "C:\Program Files\Chicken"
>> "C:\Program;Files\Chicken"
>>     
>
> Why not use TO_NATIVE_PATH for that:
>   

Because last I tried, it was broken.  Precise definition of "broken" 
later.  I'm in the middle of a huge refactoring right now, driven by 
these pathing and quoting and escaped whitespace problems.


Cheers,
Brandon Van Every

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://public.kitware.com/pipermail/cmake/attachments/20060716/18093e7b/attachment.htm


More information about the CMake mailing list