Ninja

Status

  • Ninja for windows on arm can be compiled and executed successfully.

  • No pre-built binaries are yet available for native windows on arm but can be built from source.

  • Emulated Ninja(x64) also works well.

Getting Ninja on Windows Arm64

Mode

 

Known Limiations

Mode

 

Known Limiations

Native

https://linaro.atlassian.net/wiki/spaces/WOAR/pages/28697624600/Ninja#Build-from-source

None

Emulated

https://linaro.atlassian.net/wiki/spaces/WOAR/pages/28697624600/Ninja#Emulated-Binaries

None

Python package

https://linaro.atlassian.net/wiki/spaces/WOAR/pages/28697624600/Ninja#Python-distribution

None

Emulated Binaries

64-bit ninja binaries (x86_64) for windows can be downloaded Releases · ninja-build/ninja

In more, we wrote a recipe for it linaro / WindowsOnArm / packages / ninja · GitLab and you can download a native arm64 ninja binary here.

Build from source

Source code: GitHub - ninja-build/ninja: a small build system with a focus on speed

Build tutorial: https://github.com/ninja-build/ninja/wiki#windows

"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsx86_arm64.bat" ./configure.py --bootstrap

Python distribution

This project provides a setup.py script that build Ninja Python wheels. It relies on setuptools.

PyPi page: ninja

Source code: GitHub - scikit-build/ninja-python-distributions: This project provides the infrastructure to build Ninja Python wheels.

Dependencies

  • scikit-build

  • CMake

For Windows, by default it downloads the Windows source code and builds it locally.

CI

Ninja uses GitHub Actions.