<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Oct 20, 2015 at 6:45 AM, Manuel Klimek <span dir="ltr"><<a href="mailto:klimek@google.com" target="_blank">klimek@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><span class=""><div dir="ltr">On Tue, Oct 20, 2015 at 3:38 PM Brad King <<a href="mailto:brad.king@kitware.com" target="_blank">brad.king@kitware.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 10/20/2015 04:38 AM, Manuel Klimek wrote:<br>
> On Tue, Oct 20, 2015 at 5:52 AM Sean Silva wrote:<br>
>> get cmake to generate clang module map files and add explicit module build steps?<br>
><br>
> I have some experience hacking on cmake, and from my experience I think<br>
> this shouldn't be too hard to get working (mainly work ;)<br>
<br>
I agree this shouldn't be too hard on the CMake side.  Manuel, please<br>
come over to the cmake dev list to raise the design discussion.  Then<br>
we can guide your implementation work.</blockquote><div><br></div></span><div>I think Sean volunteered :) (but please keep me cc'ed if you start discussing this on cmake-dev)</div><span class=""><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">  The main design challenges<br>
I foresee are:<br>
<br>
1. Deciding how this behavior should be activated for a project by<br>
   its code and/or by the user.<br>
<br>
2. Selection of the proper set of headers if it is not exactly the set<br>
   listed in the target for some reason.  Might this ever by more<br>
   granular than a whole library target?<br></blockquote><div><br></div></span><div>I don't think so.</div><div>Main concerns are:</div><div>1. we need to be able to say something is a "textual" header; those are still needed; we can do that by calling them .inc, or by putting something into cmake to specify textual headers (that's what we do in our build system)</div><div>2. for the "slow rollout" case we use per-header submodules; but that's more an implementation detail than anything else, I think</div></div></div></blockquote><div><br></div><div>What is the "slow rollout" case?</div><div><br></div><div>-- Sean Silva</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><span class=""><div> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
3. Finding the right place during the CMake generation process to add<br>
   the rules for this.<br>
<br>
We already detect the Clang compiler version so deciding if it is<br>
new enough to support the feature should not be hard.<br>
<br>
Thanks,<br>
-Brad<br>
<br>
</blockquote></span></div></div>
</blockquote></div><br></div></div>