ninja-utils.eclass

Name

ninja-utils.eclass -- common bits to run app-alternatives/ninja builder

Description

This eclass provides a single function -- eninja -- that can be used to run the ninja builder alike emake. It does not define any dependencies, you need to depend on app-alternatives/ninja yourself. Since ninja is rarely used stand-alone, most of the time this eclass will be used indirectly by the eclasses for other build systems (CMake, Meson).

Supported EAPIs

7 8

Functions

get_NINJAOPTS

Get the value of NINJAOPTS, inferring them from MAKEOPTS if unset.

eninja [<args>...]

Call Ninja, passing the NINJAOPTS (or converted MAKEOPTS), followed by the supplied arguments. This function dies if ninja fails. It also supports being called via 'nonfatal'.

Variables

NINJA (SET BEFORE INHERIT)

Specify a compatible ninja implementation to be used by eninja(). Accepts the following values:

  • ninja -- use the "ninja" symlink per app-alternatives/ninja

  • ninja-reference -- use "ninja-reference" for dev-build/ninja

  • samu -- use "samu" for dev-build/samurai

The default is set to "ninja".

NINJA_DEPEND (GENERATED BY ECLASS)

Contains a set of build-time dependencies based on the NINJA setting.

NINJAOPTS

The default set of options to pass to Ninja. Similar to MAKEOPTS, supposed to be set in make.conf. If unset, eninja() will convert MAKEOPTS instead.

NINJA_VERBOSE (USER VARIABLE)

Set to OFF to disable verbose messages during compilation

Authors

Michał Górny <mgorny@gentoo.org>

Mike Gilbert <floppym@gentoo.org>

Reporting Bugs

Please report bugs via https://bugs.gentoo.org/