A fork of ClojureCLR maintained by Flybot to backport fixes from ClojureCLR 1.12 onto the 1.11.0 line. See readme.txt for the original project description.
MAGIC, Flybot's custom Clojure-to-CIL AOT compiler for Unity, currently targets Clojure 1.10. We base this fork on 1.11.0 rather than 1.10 because 1.11.0 already carries fixes we need, and it is the version MAGIC is being brought up to parity with.
See CHANGES_FLYBOT.md. Upstream's own changelog, changes.md, is unchanged.
Pushing a clojure-<version> tag runs
.github/workflows/release.yml, which builds and
tests net462, then publishes a GitHub Release whose notes are the matching
CHANGES_FLYBOT.md section. See
docs/Preparing-a-release.md for the steps it needs
beforehand, and for the zips and the NuGet push it does not cover. Each release
carries:
Clojure.dll: the net462ILMerge-d assembly. The runtime, compiler and 39 standard-library namespaces are AOT-compiled into this. Use this in Unity.Clojure.Source.dll: the standard library as embedded.cljresources, used byClojure.Compileto produce the AOT assemblies merged intoClojure.dllabove.clojure.spec.alpha.dll,clojure.core.specs.alpha.dll,Microsoft.Dynamic.dll,Microsoft.Scripting.dllandMicrosoft.Scripting.Metadata.dll: NuGet dependencies, not merged intoClojure.dll. Place the DLLs side-by-side:clojure.coreloads specs at startup, and the DLR assemblies back CLR interop.Clojure.<version>.nupkg: the NuGet package, which resolves those dependencies itself.Clojure.Main.<version>.nupkg: theClojure.Main.NET tool. Install it withdotnet tool install clojure.main --version <version> --add-source <dir>to put this fork's runtime on PATH, which is how dmiller'scljrCLI picks the runtime it invokes.
Branch, issue, PR, commit and changelog conventions are in CONTRIBUTING.md.
For the build process, see the ClojureCLR wiki.
Copyright (c) Rich Hickey. All rights reserved. The use and
distribution terms for this software are covered by the Eclipse
Public License 1.0 (https://opensource.org/license/epl-1-0/)
which can be found in the file epl-v10.html at the root of this
distribution. By using this software in any fashion, you are
agreeing to be bound by the terms of this license. You must
not remove this notice, or any other, from this software.