Premake
Appearance
Original author(s) | Jason Perkins |
---|---|
Stable release | 4.3[1]
/ November 16, 2010 |
Preview release | 5.0-beta2[2]
/ September 4, 2022 |
Repository | |
Written in | C, Lua |
Type | build automation tool |
License | New BSD License |
Website | premake |
Premake is a software development tool for generating build configuration files for platform specific build tools based on configuration files that are platform agnostic. The tool is open-source.
Features
[edit]Notable features include:[3]
- Supports building a codebase written in C, C++, and C#
- Support for generating build configuration files for Visual Studio, GNU Make, Xcode, Code::Blocks, CodeLite, SharpDevelop, and MonoDevelop
- Can build on different environments using the same premake configuration files[clarification needed]
Examples
[edit]The following is an example premake configuration file.
solution "MySolution"
configurations { "Debug", "Release" }
project "MyProject"
kind "ConsoleApp"
language "C++"
includedirs { "include" }
files { "src/**.h", "src/**.cpp" }
configuration "Debug"
symbols "On"
defines { "_DEBUG" }
configuration "Release"
flags { "Optimize" }
defines { "NDEBUG" }
Notable uses
[edit]Projects that use Premake include: 0 A.D., Box2D, Bullet, GpuCV, Open Dynamics Engine, OpenJAUS, VDrift.[4][5][6][7][8]
See also
[edit]References
[edit]- ^ "Releases". GitHub.
- ^ "Release Premake 5.0-beta2 · premake/Premake-core". GitHub.
- ^ Premake Freecode entry
- ^ "Who Uses Premake". GitHub.
- ^ Bullet 2.79 release
- ^ Building project
- ^ "Building with Premake". Archived from the original on 2011-11-02. Retrieved 2011-07-04.
- ^ Building OpenJAUS
External links
[edit]