domingo, 7 de novembro de 2010

premake é uma mão na roda

Pra você que desenvolve código multiplataforma ou quer manter seu projeto compatível com diferentes compiladores e IDEs, o premake pode poupar algumas horas de trabalho. Com ele, não é preciso manter arquivos make sincronizados ou ter que ter todos os ambientes configurados no seu computador para poder testá-los.

O Premake é uma ferramenta de configuração de build compatível com as linguagens C, C++ e C# que gera o arquivo de projeto para MS Visual Studio (2002, 2003, 2006, 2008 e Express), GNU Make, Cygwin, MinGW, Apple XCode, CodeBlocks, CodeLite, SharpDevelop e MonoDevelop. Na versão experimental 4.1, permite builds para 32 e 64 bits em Windows, GNU/Linux, Mac OS X, Playstation 3 e Xbox 360.

image

O Premake também possui um ambiente para scripts Lua, linguagem na qual ele foi escrito e interpreta. Por exemplo, o seguinte script poderia ser usado para gerar um projeto C++ para modo console, com as configurações de build para debug e release:


-- Uma solução contém projetos e define as configurações disponíveis para eles
solution "MyApplication"
configurations { "Debug", "Release" }

-- Um projeto configura o build e define os parâmetros para as configurações
project "MyApplication"
kind "ConsoleApp"
language "C++"
files { "**.h", "**.cpp" }

configuration "Debug"
defines { "DEBUG" }
flags { "Symbols" }

configuration "Release"
defines { "NDEBUG" }
flags { "Optimize" }


Veja o User Guide para mais informações.


Outro uso útil é quando temos um projeto opensource interessante que não possui o arquivo de projeto para um determinado IDE. Assim, podemos dar uma olhada em como está o arquivo make do projeto e criar um script Lua para que o Premake crie o arquivo de projeto. Muito mais simples que passar horas criando o arquivo de projeto na mão…

Nenhum comentário: