Verwendung von Premake




Premake kann sehr nützlich sein, wenn ein mehrteiliger Quelltext ohne Makefile bzw. ohne Projektfile für eine IDE vorliegt. Im folgenden wird beispielhaft ein einfaches Beispiel für die Verwendung unter Linux beschrieben.

Premake kann von der Seite industriousone.com heruntergeladen werden. Am besten wählt man das fertig compilierte Binary (für Linux). Wo man die ausführbare Datei "premake4" hinpackt, ist egal, es muss nur dafür gesorgt werden, dass man sie von verschiedenen Stellen aus starten kann.

Als nächstes muss das Lua-Skript geschrieben werden. Es ist eine einfache Textdatei und heißt immer "premake4.lua". Sie muss sich im Hauptordner der Quelldateien befinden. Ein völlig unausgereiftes Minimal-Skript könnte so aussehen:

solution "OpenGL"
   configurations { "Debug", "Release" }
    defines {"UNIX_"}
   project "bh"
      kind "ConsoleApp"
      language "C++"
      files { "**.h", "**.cpp" }
      links {"GL", "GLU", "glut"}

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

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

Es Skript ist wirklich minimal, es lässt sich je nach Verwendungszweck relaitv flexibel ausbauen. Mit zwei Befehlen, die im Hauptordner des Quelltextes aufgerufen werden, wird das lauffähige Programm erzeugt.

premake4 gmake // damit wird das Makefile generiert
make // damit wird das Programm compiliert

Eine kleine, aber wichtige Sache noch: Wenn ein unter Windows mit VCC erstellter und debuggter Quelltext verwendet wird, muss der Compiler angewiesen werden, den Text auch als unixkonform zu kompilieren. Dazu dient das Define "UNIX_", entweder in premake4.lua oder im Quelltext.