<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2015-11-30 19:20 GMT+03:00 Gary Byers <span dir="ltr"><<a href="mailto:gb@clozure.com" target="_blank">gb@clozure.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"><span class="">
<br>
<br>
<div>On 11/30/2015 08:29 AM, Stelian Ionescu
wrote:<br>
</div>
<blockquote type="cite">
<div>If you want to keep the master copy in SNV and mirror to git,
SubGit can do that but mapping externals to submodules is not
supported: <a href="http://www.subgit.com/remote-book.html" target="_blank">http://www.subgit.com/remote-book.html</a> chapter
9.<br>
</div>
<div>If you want to keep the master copy in git and access it
through SVN, Github supports that: <a href="https://help.github.com/articles/support-for-subversion-clients/" target="_blank">https://help.github.com/articles/support-for-subversion-clients/</a>.
Again, mapping submodules to externals is not supported.<br>
</div>
<div> </div>
<div>That said, as far as I understand it, there are two reasons
why binaries are bundles with the sources:<br>
</div>
<div>1) for easy distribution of released binaries together with
the code so that those who only use releases can also M-. (or
equivalent) without hassles.<br>
</div>
<div>2) for easy bootstrap because of compiler and/or ABI(such as
fasl format) changes within a release.</div>
</blockquote>
<br></span>
Several years ago this was essentially how CCL was distributed - one
checked out sources from CVS and a<br>
a matching tarball via FTP or equivalent, and that was it. At the
time, there were two possible choice of<br>
tarballs., one for 32-bit PPC Linux and another for 32-bit PPC
Darwin.</div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">
<br>
Some of the smartest people that I've ever known were very confused
by this, and I think that having<br>
a single way for users to obtain a consistent set of sources and
binaries is very important. SVN offers<br>
this via "external properties", which are otherwise a mess. If Git
does as well, I have not seen anyone<br>
describe the mechanism. </div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">
<br>
I don't otherwise care whether one uses "svn co something" or "git
clone something", but I would<br>
not want to expect users to have to revert back to what didn't work
well long ago.</div></blockquote><div>I don't know about CCL, but the GCC source distribution comes with a simple</div><div>download_prerequisites shell script which downloads via wget MPFR, GMP, MPC libraries</div><div>before building GCC. This works fine for many years. So, why not use this approach with CCL?</div><div>There are "hooks" system in the Git, which are event-based. It's possible to</div><div>run the script for download actual binary files after git clone or git merge or git pull</div><div>operations (post-checkout and post-merge hooks).</div></div></div></div>