[Openmcl-devel] How about Git?

Gary Byers gb at clozure.com
Mon Nov 30 10:45:40 PST 2015


in 1993, my boss was excited to get a shiny new Solaris box and asked me 
to try to get gcc
running on it.  gcc sources were freely available, but (unlike earlier 
SunOS versions Solaris
did not bundle a C compiler, rendering those sources less useful than 
they would otherwise
have been.

CCL is mostly written in CCL, and you need a recent version of CCL to 
bootstrap a new version.

whether one does

git clone-or-whatever some-url       to get sources
git something different                    to get platform-specific 
binaries into the the same place

doesn't seem very difficult, but neither did using a vcs and tar files.  
I was wrong about that.



On 11/30/2015 09:47 AM, Dmitry Igrishin wrote:
>
>
> 2015-11-30 19:20 GMT+03:00 Gary Byers <gb at clozure.com 
> <mailto:gb at clozure.com>>:
>
>
>
>     On 11/30/2015 08:29 AM, Stelian Ionescu wrote:
>>     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: http://www.subgit.com/remote-book.html chapter 9.
>>     If you want to keep the master copy in git and access it through
>>     SVN, Github supports that:
>>     https://help.github.com/articles/support-for-subversion-clients/.
>>     Again, mapping submodules to externals is not supported.
>>     That said, as far as I understand it, there are two reasons why
>>     binaries are bundles with the sources:
>>     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.
>>     2) for easy bootstrap because of compiler and/or ABI(such as fasl
>>     format) changes within a release.
>
>     Several years ago this was essentially how CCL was distributed -
>     one checked out sources from CVS and a
>     a matching tarball via FTP or equivalent, and that was it.  At the
>     time, there were two possible choice of
>     tarballs., one for 32-bit PPC Linux and another for 32-bit PPC Darwin.
>
>
>     Some of the smartest people that I've ever known were very
>     confused by this, and I think that having
>     a single way for users to obtain a consistent set of sources and
>     binaries is very important.  SVN offers
>     this via "external properties", which are otherwise a mess.  If
>     Git does as well, I have not seen anyone
>     describe the mechanism.
>
>
>     I don't otherwise care whether one uses "svn co something" or "git
>     clone something", but I would
>     not want to expect users to have to revert back to what didn't
>     work well long ago.
>
> I don't know about CCL, but the GCC source distribution comes with a 
> simple
> download_prerequisites shell script which downloads via wget MPFR, 
> GMP, MPC libraries
> before building GCC. This works fine for many years. So, why not use 
> this approach with CCL?
> There are "hooks" system in the Git, which are event-based. It's 
> possible to
> run the script for download actual binary files after git clone or git 
> merge or git pull
> operations (post-checkout and post-merge hooks).

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20151130/6baa7c9c/attachment.htm>


More information about the Openmcl-devel mailing list