Skip to content
Jason Perkins edited this page Jul 29, 2015 · 15 revisions

Sets the kind of binary object being created by the project or configuration, such as a console or windowed application, or a shared or static library.

kind ("kind")

Parameters

kind is one of the following string identifiers:

ConsoleApp A console or command-line application.
WindowedApp An application which runs in a desktop window. This distinction does not apply on Linux, but is important on Windows and Mac OS X.
SharedLib A shared library or DLL.
StaticLib A static library.
Makefile A special configuration type which calls out to one or more external commands. The actual type of binary created is unspecified. See Makefile Projects for more information.
Utility A configuration which contains only custom build rules.
None A configuration which is not included in the build. Useful for projects containing only web pages, header files, or support documentation.

Applies To

Project configurations.

Availability

The **Makefile, Utility, ** and None kinds are only available in Premake 5.0 and later, and are currently only supported for Visual Studio.

Examples

Set the project to build a command-line executable.

kind "ConsoleApp"

Set the project to build a shared library (DLL).

kind "SharedLib"

Build either a static or a shared library, depending on the selected build configuration.

workspace "MyWorkspace"
   configurations { "DebugLib", "DebugDLL", "ReleaseLib", "ReleaseDLL" }

project "MyProject"

   filter "*Lib"
      kind "StaticLib"

   filter "*DLL"
      kind "SharedLib"

See Also

Clone this wiki locally