I was thinking of using the exact same variable names as are currently in use.  Currently if I  do this:<br><br>set(CMAKE_C_FLAGS &quot;-foo&quot;)<br>list(APPEND CMAKE_C_FLAGS &quot;-bar&quot;)<br><br>then it will fail as it tries to run the command &quot;/usr/bin/gcc  -foo;-bar ...&quot; but if cmake automatically replaced semicolons with spaces then it would work fine.  Existing scripts that used set(CMAKE_C_FLAGS &quot;${CMAKE_C_FLAGS} -bar&quot;) would be unaffected.  And given that the cmake variables that would be treated this way are passed directly to the compiler/linker it is exceedingly unlikely that they would contain real semicolons, at least on linux.  Is the problem with this idea that real semicolons in flags are necessary on windows or macosx ?<br>
<br>If real semicolons were required they could be escaped with a backslash character, i.e. set(CMAKE_C_FLAGS &quot;-foo\;-bar&quot;) if you didn&#39;t want them to be replaced with a space character.  But that would break the backwards compatibility rule.  Are there any cmake variables where real semicolons need to be passed through to the compiler/linker ?<br>
<br>--<br>Glenn<br><br><div class="gmail_quote">On 15 August 2011 12:56, David Cole <span dir="ltr">&lt;<a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div bgcolor="#FFFFFF"><div class="im"><div>On Aug 13, 2011, at 5:14 AM, Glenn Coombs &lt;<a href="mailto:glenn.coombs@gmail.com" target="_blank">glenn.coombs@gmail.com</a>&gt; wrote:<br><br></div><div></div><blockquote type="cite">
<div>Out of all the suggestions so far I&#39;d like to say that my preferred solution is Michael&#39;s one of:<br><br>    SET(&lt;variable&gt; &lt;value&gt; ... CONCAT [SEP &lt;sep&gt;])<br><br>I haven&#39;t seen any discussion yet of my 2nd alternative of getting cmake to automatically convert lists to space separated strings for certain variables like CMAKE_EXE_LINKER_FLAGS_RELEASE.  If cmake did this then there would be less need for the concat version of set() as one could just use the existing list(APPEND) functionality.  Is this a realistic possibility, or are there implementation issues with this suggestion ?<br>
</div></blockquote><div><br></div></div>No particular implementation issues. Doing any of this stuff is fairly easy to implement.<div><br></div><div>But we won&#39;t be changing the semantics of any existing variables or properties to accommodate a feature like this... That would be a backwards compatibility nightmare.</div>
<div><br></div><div>And that means inventing new variables with the desired semantics, in addition to supporting the existing ones. Which makes it very much less likely for us to want to do it without a very strong consensus from all involved that it really does make things easier, nicer, more maintainable.<br>
</div></div></blockquote></div>