diff --git a/src/actions/vstudio/vs2005_solution.lua b/src/actions/vstudio/vs2005_solution.lua index 5f0cde74..f244131d 100644 --- a/src/actions/vstudio/vs2005_solution.lua +++ b/src/actions/vstudio/vs2005_solution.lua @@ -173,7 +173,9 @@ local architecture = vstudio.archFromConfig(prjcfg, true) _p(2,'{%s}.%s.ActiveCfg = %s|%s', prj.uuid, slncfg[cfg], prjplatform, architecture) - _p(2,'{%s}.%s.Build.0 = %s|%s', prj.uuid, slncfg[cfg], prjplatform, architecture) + if prjcfg.kind ~= premake.NONE then + _p(2,'{%s}.%s.Build.0 = %s|%s', prj.uuid, slncfg[cfg], prjplatform, architecture) + end end end) end diff --git a/src/base/api.lua b/src/base/api.lua index eb5933dc..45816b92 100644 --- a/src/base/api.lua +++ b/src/base/api.lua @@ -815,6 +815,7 @@ allowed = { "ConsoleApp", "Makefile", + "None", "SharedLib", "StaticLib", "WindowedApp", diff --git a/src/base/premake.lua b/src/base/premake.lua index 7fa8977a..73a44ad3 100644 --- a/src/base/premake.lua +++ b/src/base/premake.lua @@ -31,6 +31,7 @@ premake.LINUX = "linux" premake.MACOSX = "macosx" premake.MAKEFILE = "Makefile" + premake.NONE = "None" premake.POSIX = "posix" premake.PS3 = "ps3" premake.SHAREDLIB = "SharedLib" diff --git a/tests/actions/vstudio/sln2005/test_platforms.lua b/tests/actions/vstudio/sln2005/test_platforms.lua index 1601e9fa..04fad814 100644 --- a/tests/actions/vstudio/sln2005/test_platforms.lua +++ b/tests/actions/vstudio/sln2005/test_platforms.lua @@ -645,3 +645,24 @@ EndGlobalSection ]] end + + +--- +-- Configurations with a kind of "None" should be excluded from the build. +--- + + function suite.excludesFromBuild_onNone() + project "MyProject" + kind "None" + prepare() + test.capture [[ + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {C9135098-6047-8142-B10E-D27E7F73FCB3}.Debug|Win32.ActiveCfg = Debug|Win32 + {C9135098-6047-8142-B10E-D27E7F73FCB3}.Release|Win32.ActiveCfg = Release|Win32 + EndGlobalSection + ]] + end