<div>Mike,</div>
<div> </div>
<div>After reading some cmake docs, tutorials, and experimenting, here's the best I could come up with.</div>
<div> </div>
<div>There is a set_source_file_properties option, but unfortunately it doesn't seem to let me undo the /Za option set in the macro via set_target_properties, though it does let me add additional options.  Therefore, I have it re-call set_target_properties again, with the /Za option edited out, thus affecting the whole library, which I hope won't be a problem down the road.</div>

<div> </div>
<div>There was a fixme comment about using AddGnuCPlusPlusIncludePaths, but MinGW is not using the same directory structure.  Therefore, I added a helper function specific to MinGW.  The MinGW64 stuff I guessed at, as I don't have it installed, but I'll get it shortly and revise if needed.<br>
</div>
<div>If this is acceptable, should this be my test check-in?  Or should I try something smaller first?</div>
<div> </div>
<div>I'll move to cfe-commits after this.</div>
<div> </div>
<div>-John<br></div>
<div class="gmail_quote">On Fri, Oct 9, 2009 at 2:55 PM, Mike Stump <span dir="ltr"><<a href="mailto:mrs@apple.com">mrs@apple.com</a>></span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div class="im">On Oct 9, 2009, at 1:12 PM, John Thompson wrote:<br></div>
<div class="im">
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">Here's another crack at the windows include paths patch<br></blockquote><br></div>-/// RemoveDuplicates - If there are duplicate directory entries in the specified<br>
-/// search list, remove the later (dead) ones.<br>+/// RemoveDuplicates - If there are duplicate directory entries in the<br>+/// specified search list, remove the later (dead) ones.<br><br>No, this was fine before.  Be sure to set your reflow column to be 80.<br>
<br><br>+bool getSystemRegistryString(const char *keyPath, const char *valueName,<br>+                       char *value, size_t maxLength) {<br>+  (void)keyPath;<br>+  (void)valueName;<br>+  (void)value;<br>+  (void)maxLength;<br>
+  return(false);<br>+}<br><br>No, just omit the parameter name in the definition instead of cast to (void).<br><br><br>About the CMakeLists.txt change, ick.  Too much cut-n-paste programming.  If there is a way to say add this flag for this translation unit, that'd be best, second best would be to say, remove this flag for just this unit.  I was hoping there'd be a way to do that in just a few lines (like two, something like remove_flag(InitHeaderSearch.cpp, /Za)) or some such.  I'h hoping a cmake person can suggest something better.  Barring that, can you set a flag, check that in that flag in add_clang_library, and omit adding the /Za option?<br>
</blockquote></div><br><br clear="all">
<div></div><br>-- <br>John Thompson<br><a href="mailto:John.Thompson.JTSoftware@gmail.com">John.Thompson.JTSoftware@gmail.com</a><br><br>