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
modifierPremake ou : le supermake
modifierPremake 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
modifierCe 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
modifierRôle de Premake
modifierPremake 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
modifierL'installation est simple. Le programme se présente comme un exécutable compressé d'une centaine de kilooctets.
Utilisation
modifierL'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
modifier- 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.
Notes et références
modifier- (en) « Release Premake 5.0 alpha 14 · premake/premake-core », sur GitHub (consulté le ).
Annexes
modifierArticles connexes
modifierD'autres outils similaires existent, parmi lesquels :