imgui-sfml-premake/premake5/ninja/README.md

1.8 KiB

premake-ninja

Premake module to support Ninja, because it's awesome. Note recent version of premake handles ninja natively

Usage (little reminder)

  1. Put these files in a "premake-ninja" subdirectory of Premake search paths.

  2. Adapt your premake5.lua script, or better: create/adapt your premake-system.lua

require "premake-ninja/ninja"
  1. Generate ninja files
premake5 premake-ninja

On msys2 (mingw)

premake5 ninja --cc=gcc --shell=posix
  1. Run ninja

For each project - configuration pair, we create separate .ninja file. For solution we create build.ninja file which imports other .ninja files with subninja command.

Build.ninja file sets phony targets for configuration names so you can build them from command line. And default target is the first configuration name in your project (usually default).

General from:

ninja $(YourProjectName)_$(ConfigName)

as example:

ninja myapp_Release

Tested on ubuntu-badge windows-badge macos-badge

Extra Tests

Part of integration tests of several generators in https://github.com/Jarod42/premake-sample-projects Premake5 ubuntu ninja badgePremake5 window ninja badge