<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jul 20, 2016 at 5:56 PM, Renato Golin via llvm-dev <span dir="ltr"><<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 21 July 2016 at 01:39, Justin Lebar <<a href="mailto:jlebar@google.com">jlebar@google.com</a>> wrote:<br>
> This is true if you s/checkout/clone/.  With a single repo, you must<br>
> clone (download) everything (*), but after you've done so you can use<br>
> sparse checkouts to check out (create a working copy of) only llvm and<br>
> clang.  So you should only notice the fact that there exist things<br>
> other than llvm and clang when you first clone (download) llvm.<br>
<br>
</span>So, we use that to a certain extent.<br>
<br>
Linaro's GCC validation uses the full checkout, then do a shallow<br>
checkout that only has the updates.<br>
<br>
Our LLVM scripts, OTOH, clone all repos and use worktree for *all*<br>
branches, and we only branch on the repos that we choose, for each<br>
"working dir".<br>
<br>
Our scripts probably would need certain modifications... but it should be fine.<br>
<br>
But I'm not, by far, the most problematic user.<br>
<br>
The real problem, and why people accepted sub-modules, is that a lot<br>
of downstream people only use one or another projects. Mostly LLVM or<br>
Clang or libc++.<br>
<br>
Checking out all of it is bad, </blockquote><div><br></div><div>Define bad?</div><div>Time?</div><div>Disk space?</div><div>Bandwidth?<br><br></div><div>I mean, we already assume you have a lot of each anyway?<br><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">but having them officially interlinked,<br>
it seems, is worse. </blockquote><div><br></div><div>Why?<br>Below it sounds like you want to do this as a way of enforcing projects to stay independent of each other.<br></div><div> </div><div>I would posit that this is not the best way to do this?</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">IIUC, the problem is that the projects are now<br>
built independently on their projects, but more and more CMake changes<br>
are creeping in, making it harder and harder to separate their<br>
projects from the rest of LLVM. This means they'll now depend on a<br>
much larger body of sources that will need to be compiled together,<br>
and will probably mean they'll abandon LLVM in favour of something<br>
lighter.<br>
<br>
I honestly don't know how big is that problem, I don't have it myself,<br>
but I "can imagine" compiling LLVM and Clang without need would be<br>
pretty bad.<br>
<div class="HOEnZb"><div class="h5"><br>
cheers,<br>
--renato<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</div></div></blockquote></div><br></div></div>