>Alternatively, consider using a configured header file that gets included in the places that need those definitions. They're much easier to deal with than trying to wrap your head around escapings and multiple platforms and compilers.
This is what I do. Much, much easier than dealing with 'nested' escape sequences. mm From: cmake-boun...@cmake.org [mailto:cmake-boun...@cmake.org] On Behalf Of David Cole Sent: Friday, December 17, 2010 5:59 PM To: Clifford Yapp Cc: CMake List Subject: Re: [CMake] Ensuring spaces in CFLAGS reach Visual Studio project files Have you tried add_definitions for -D flags? I'm not sure what's required for getting spaces-in-the-value across, but I think it's possible. Maybe somebody who's done it more recently than me can speak up here? Alternatively, consider using a configured header file that gets included in the places that need those definitions. They're much easier to deal with than trying to wrap your head around escapings and multiple platforms and compilers. HTH, David On Fri, Dec 17, 2010 at 5:54 PM, Clifford Yapp <cliffy...@gmail.com> wrote: I have a situation where I need to pass strings with spaces in them as definitions in CFLAGS, e.g. SET(CMAKE_C_CFLAGS -DINPUT_STRING=\\\"first\\ second\\\"") This is NOT working for Visual Studio, which is apparently quite picky about this - it apparently needs to end up with something like: INPUT_STRING="\"first second\"" I can duplicate the "\" quote structure part (VERY ugly - \\\"\\\\\\\") but I'm getting stopped cold by the space between first and second. I've tried quoting variations, and while I can preserve the space as far as CMake's definition in the cache, the results that get written into the Visual Studio file ALWAYS seem to break on the space, quoted or not. e.g. I get: INPUT_STRING="\"first or INPUT_STRING="\"first\ etc. For variable definitions I might be able to live with not using a space, but some of the arguments I have to pass in are pathnames with spaces. That's user controlled - I HAVE to be able to handle it, or in the worst case impose the limitation of no spaces in pathnames on Windows (ouch). Can someone tell me how to quote a space such that it ends up included in the preprocessor definition line in a Visual Studio project? Cheers, CY _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake