This repository contains a ninja & clang based toolchain that allows you to easily manage both native and arm-raw or arm-linux executables.
The most recent build uses the current versions: xz - 5.2.3 (windows only) ninja - 1.8.2 (windows only) clang - 5.0.1 protoc - 3.5.1
Every so often we may update the clang version, c libraries, etc. The process to do so is as follows:
- Update the arm built libraries
- Update the linux, osx, and windows host packages
- Upload new tgz to online storage
- Enable public URL
- Update installer to use new URLs
For linux and osx updating the host packages includes the following:
- Download binaries:
- clang from http://releases.llvm.org/download.html
- protoc from https://github.com/google/protobuf/releases
- Unpack to local directory
- Rename bin/ld.lld to bin/ld.lld.exe
- Add build date date --utc --iso-8601=seconds > build-date.txt
- Rename unpacked directory to host
- Repack tar -cJ --options='compression-level=9' -f host-linux-2018-02-14.txz host
For linux use the most recent x86_64 ubuntu install.
For Windows:
- Download latest executables:
- protoc from https://github.com/google/protobuf/releases
- xz from https://tukaani.org/xz/
- clang (64 bit) from http://releases.llvm.org/download.html
- ninja from https://github.com/ninja-build/ninja/releases
- Unpack all to a local directory named host
- Clean up files into bin & include correctly
- e.g. protoc.exe should be in host\bin\protoc.exe
- Install clang. It is distributed upstream as a setup exe
- Copy C:\Program Files\LLVM* to host*
- Add built date date --utc --iso-8601=seconds > build-date.txt
- Use 7zip to compress the host folder to host-win64-.txz
- Add to tar archive first and then compress the tar file