Premake provides an ever-growing list of build settings that you can tweak; the following table lists some of the most common configuration tasks with a link to the corresponding functions. For a comprehensive list of available settings and functions, see the Project API and Lua Library Additions.
If you think something should be possible and you can't figure out how to do it, see Support.
Specify the binary type (executable, library) | kind |
Specify source code files | files, removefiles |
Define compiler or preprocessor symbols | defines |
Locate include files | includedirs |
Set up precompiled headers | pchheader, pchsource |
Link libraries, frameworks, or other projects | links, libdirs |
Enable debugging information | symbols |
Optimize for size or speed | optimize |
Add arbitrary build flags | buildoptions, linkoptions |
Set the name or location of compiled targets | targetname, targetdir |