Ninja (logiciel)

From Wikipedia, the free encyclopedia

Ninja
Description de l'image Compiling dav1d screenshot.png.
Informations
Développé par Evan Martin (d)Voir et modifier les données sur Wikidata
Première version
Dernière version 1.12.1 ()[1]Voir et modifier les données sur Wikidata
Dépôt github.com/ninja-build/ninjaVoir et modifier les données sur Wikidata
Écrit en C++ et PythonVoir et modifier les données sur Wikidata
Système d'exploitation Type Unix et Microsoft WindowsVoir et modifier les données sur Wikidata
Environnement Multiplateforme (en)Voir et modifier les données sur Wikidata
Type Build system (d)
Logiciel utilitaireVoir et modifier les données sur Wikidata
Licence Licence Apache 2.0Voir et modifier les données sur Wikidata
Site web ninja-build.orgVoir et modifier les données sur Wikidata

Ninja est un outil de construction axé sur la rapidité. Il gère un ensemble de règles de construction interdépendantes, et les exécute parallèlement en veillant au bon respect des dépendances. Les règles de construction ont vocation à être écrite par un logiciel de configuration tel que Meson ou CMake.

Ninja est similaire à Make, dont il se veut être une alternative plus moderne. Il en diffère par une approche essentiellement descriptive du processus de construction, là où GNU Make présente certaines caractéristiques d'un langage de programmation.

Ninja a été développé par Evan Martin à partir de 2010 comme outil de compilation pour Chrome lors de son portage vers linux, avant d'être rapidement rendu public sous licence ouverte[2]. Chrome utilise GYP[3] comme outil de configuration. À la manière de CMake, celui-ci génère des fichiers de configuration pour l'outil de compilation spécifique à la plateforme. Le développement de Ninja a commencé après que les deux tentatives d'utilisation de SCons puis Make se soient montrées trop lentes lors des recompilations partielles de Chrome.

Dès 2011, CMake adopte Ninja[4],[5] en complément de make comme outil de compilation sous linux.

Ninja a ensuite été choisi par Meson en 2012[6] comme unique outil de compilation sur les plateforme linux, formant ainsi une nouvelle chaîne de compilation.

Plusieurs projets notables de la communauté open source, utilisant auparavant la chaîne de compilation autoconf/automake/make, ont depuis migré vers cette nouvelle chaîne, tel que GStreamer (2016)[7], ou GNOME (2017)[8],[9]

Caractéristiques

Liens externes

Références

Related Articles

Wikiwand AI