Premake
Premake est un outil logiciel de génération de scripts de gestion de projet (makefile).
Développé par | Jason Perkins |
---|---|
Dernière version | 4.3 () |
Version avancée | 5.0.0-alpha14[1] () |
DĂ©pĂ´t | github.com/premake/premake-core |
Assurance qualité | Intégration continue |
Écrit en | Lua et C |
Environnement | Multi-Plateforme |
Type | script |
Licence | BSD 3-clauses |
Site web | premake.github.io |
Ce projet existe depuis début 2003. il est développé par Jason Perkins sous licence BSD-3-clauses avec la contribution de quelques collaborateurs.
Principe
Premake ou : le supermake
Premake est un outil disponible sous Linux, MacOS et Windows.
Pour créer des scripts de configuration de projets ("makefile-like") spécifiques à un environnement de développement afin de distribuer un projet existant à des développeurs utilisant des IDEs différents.
Ă€ qui il s'adresse
Ce logiciel s'adresse principalement Ă :
- Un chef de projet menant un projet de taille avec de nombreux développeurs.
- Un développeur souhaitant pouvoir changer d'IDE facilement.
Fonctionnement
RĂ´le de Premake
Premake génère à partir d'un script de configuration un autre script.
En entrée : script de configuration Premake
Ă€ la sortie : script de compilation GNU Make, Microsoft Visual Studio ou autre.
- Microsoft Visual Studio 6, 2002,/03/05 ou 2008
- GNU make (incluant Cygwin et MinGW)
- SharpDevelop
- MonoDevelop
- Code::Blocks
- CodeLite
- Xcode
et d'autres Ă venir.
Installation
L'installation est simple. Le programme se présente comme un exécutable compressé d'une centaine de kilooctets.
Utilisation
L'utilisation se fait en utilisant la commande
$ premake --target toolset
oĂą toolset
fait partie de la liste : vs2008,vs2005,vs2003,vs2002,vs6,gnu, sharpdev,monodev,cb-gcc,cb-ow,cl-gcc
Le dossier doit contenir un makefile spécial pour premake; il est généralement appelé premake.lua (par convention). C'est un fichier codé en langage Lua.
Exemple d'utilisation :
$ premake --help $ premake --dotnet mono2 --target gnu $ premake --clean
Concepts de base (paquetage, projet)
Avantages - Inconvénients
- Pour
- Facile et rapide Ă mettre en Ĺ“uvre.
- Bénéficie de la puissance de Lua.
- Lua est facile Ă apprendre.
- Contre
- Projet relativement jeune ne bénéficiant pas d'une large communauté d'utilisateurs.
- Certaines plateformes non supportées (dommage pour ce genre de produit cherchant l'unification).
- Nécessite une bonne maîtrise de la gestion de projet.