[Openmcl-devel] making a git mirror of ccl

R. Matthew Emerson rme at clozure.com
Fri Dec 18 10:25:43 PST 2015

> On Dec 17, 2015, at 5:15 PM, R. Matthew Emerson <rme at clozure.com> wrote:
> I'm willing to work a bit on creating a git mirror of ccl on GitHub, but I'd appreciate advice from any people good at git on how such a mirror would work.

OK, I took some time last night and used SubGit to translate ^/trunk/source into master, and ^/release/*/source into branches named 1.11, 1.10, and so forth, and mirrored that repository to GitHub.

SubGit translates svn commits via a commit hook to a git repository, which then will be mirrored to GitHub via a cron job.

The mirror is at https://github.com/Clozure/ccl

It's about 45 MB, which could be worse, I guess.

Using this repository to get a working ccl is a little bit complicated.  This is the problem we tried to solve with our somewhat unconventional use of Subversion externals.  Here are the steps:

git clone https://github.com/Clozure/ccl.git ccl
cd ccl
# Use script to download heap images and interface databases
scripts/get-binaries darwinx86 # or linuxx86|freebsdx86|solarisx86|windows|linuxarm
# Compile the lisp kernel.  You need to have m4 installed.  Xcode users, be sure
# to get command-line tools with xcode-select --install if you haven't already.
cd lisp-kernel/darwinx8664  # or lisp-kernel/darwinx8632
make clean && make
# try it, and it should work
./dx86cl64   # or lx86cl64 or whatever

The get-binaries script is simple-minded, and only gets binaries from ^/trunk.  If you wanted release binaries, the URL used by the svn export commands in the script would need to be edited appropriately.

The next thing I'll try when I get around to it is to create a "release" on GitHub, and see if that makes the process of getting a working ccl a bit easier.

Anyway, consider this experimental.  If I messed something up, I might need to delete and recreate the GitHub repository.

More information about the Openmcl-devel mailing list