This repository has been archived on 2022-12-23. You can view files and clone it, but cannot push or open issues or pull requests.
fuck-premake-old2/src/actions/vstudio/vs2012.lua

59 lines
1.7 KiB
Lua
Raw Normal View History

--
-- vs2012.lua
-- Baseline support for Visual Studio 2012.
-- Copyright (c) 2013 Jason Perkins and the Premake project
--
premake.vstudio.vc2012 = {}
local vc2012 = premake.vstudio.vc2012
local vstudio = premake.vstudio
---
-- Register a command-line action for Visual Studio 2012.
---
newaction {
-- Metadata for the command line and help system
trigger = "vs2012",
shortname = "Visual Studio 2012",
description = "Generate Visual Studio 2012 project files",
-- Visual Studio always uses Windows path and naming conventions
os = "windows",
-- temporary, until I can phase out the legacy implementations
isnextgen = true,
-- The capabilities of this action
valid_kinds = { "ConsoleApp", "WindowedApp", "StaticLib", "SharedLib", "Makefile" },
valid_languages = { "C", "C++", "C#" },
valid_tools = {
cc = { "msc" },
dotnet = { "msnet" },
},
-- Solution and project generation logic
onsolution = function(sln)
premake.generate(sln, ".sln", vstudio.sln2005.generate_ng)
end,
onproject = function(prj)
if project.isdotnet(prj) then
premake.generate(prj, ".csproj", vstudio.cs2005.generate_ng)
premake.generate(prj, ".csproj.user", vstudio.cs2005.generate_user_ng)
else
premake.generate(prj, ".vcxproj", vstudio.vc2010.generate)
premake.generate(prj, ".vcxproj.user", vstudio.vc2010.generateUser)
premake.generate(prj, ".vcxproj.filters", vstudio.vc2010.generateFilters)
end
end,
oncleansolution = vstudio.cleansolution,
oncleanproject = vstudio.cleanproject,
oncleantarget = vstudio.cleantarget,
-- This stuff is specific to the Visual Studio exporters
vstudioSolutionVersion = 12,
}