<div dir="ltr">On Wed, Apr 3, 2013 at 1:51 PM, David Chisnall <span dir="ltr"><<a href="mailto:David.Chisnall@cl.cam.ac.uk" target="_blank">David.Chisnall@cl.cam.ac.uk</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 3 Apr 2013, at 18:42, Sean Silva <<a href="mailto:silvas@purdue.edu">silvas@purdue.edu</a>> wrote:<br>

<br>
> I'm not sure how difficult it actually is to follow ToT compared to one huge pain when upgrading for our full releases. I think it would be valuable to obtain feedback from projects that rely on LLVM as to how they go about integrating LLVM into their project and how our releases (and potentially dot-releases) would integrate into their development process.<br>

<br>
</div>In FreeBSD, we ship the release with our release builds and periodically pull in head snapshots from time to time into head.  We occasionally cherry-pick fixes if they address problems that have been encountered by us, and we have some out-of-tree changes (although we're trying to minimise that).<br>

<br>
In another project, we end up with big tangles of #ifdefs to work around API changes (some of which are for useful improvements, many of which are just gratuitous churn, but that's another story) and try to track ToT where possible, because it minimises the headaches when a new release is branched.  In theory, we have working code for the new release, and we can just delete #ifdef branches when we drop support for another branch.<br>
</blockquote><div><br></div><div style>Thanks, this is useful to know. I have been wanting to write some documentation about various "established patterns" of effectively integrating LLVM into long-lived projects, as guidance for prospective users. Would you say that these patterns effectively cope with LLVM's idiosyncrasies? Or do you feel that they are inadequate and are actively looking for a "better way"?</div>
<div style><br></div><div style>So my impression from your description is that dot-releases would not be of much immediate use to your development process?</div><div style><br></div><div style>-- Sean Silva </div></div></div>
</div>