Skip to main content


Specifies the set of build configurations, such as "Debug" and "Release", for a workspace or project.

configurations { "names" }

A configuration encapsulates a collection of build settings, allowing the developer to easily switch between them. "Debug" and "Release" are the most common configuration names.

For more information, see Configurations and Platforms.


names is a list of configuration names. Spaces are allowed, but may make using certain Premake features, such as a command-line configuration selection, more difficult.

Applies To

Workspaces and projects.


Premake 4.0 or later. Per-project configuration lists were introduced in Premake 5.0.


Specify debug and release configurations for a workspace.

workspace "MyWorkspace"
configurations { "Debug", "Release" }

Add additional configurations for a dynamic link library version.

configurations { "Debug", "Release", "DebugDLL", "ReleaseDLL" }

See Also