Modernize the VC# user file exporter
This commit is contained in:
parent
2fdddbee85
commit
058f1a4916
@ -1,52 +1,55 @@
|
|||||||
--
|
--
|
||||||
-- vs2005_csproj_user.lua
|
-- vs2005_csproj_user.lua
|
||||||
-- Generate a Visual Studio 2005/2008 C# .user file.
|
-- Generate a Visual Studio 2005/2008 C# .user file.
|
||||||
-- Copyright (c) 2009-2014 Jason Perkins and the Premake project
|
-- Copyright (c) 2009-2015 Jason Perkins and the Premake project
|
||||||
--
|
--
|
||||||
|
|
||||||
local p = premake
|
local p = premake
|
||||||
local cs2005 = p.vstudio.cs2005
|
local m = p.vstudio.cs2005
|
||||||
local project = p.project
|
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Generate a Visual Studio 200x C# user file, with support for the new platforms API.
|
-- Generate a Visual Studio 200x C# user file.
|
||||||
--
|
--
|
||||||
|
|
||||||
function cs2005.generateUser(prj)
|
function m.generateUser(prj)
|
||||||
p.vstudio.projectElement()
|
p.vstudio.projectElement()
|
||||||
_p(1,'<PropertyGroup>')
|
p.push('<PropertyGroup>')
|
||||||
|
|
||||||
-- Per-configuration reference paths aren't supported (are they?) so just
|
-- Per-configuration reference paths aren't supported (are they?) so just
|
||||||
-- use the first configuration in the project
|
-- use the first configuration in the project
|
||||||
local cfg = project.getfirstconfig(prj)
|
local cfg = p.project.getfirstconfig(prj)
|
||||||
|
|
||||||
local refpaths = path.translate(project.getrelative(prj, cfg.libdirs))
|
local refpaths = path.translate(p.project.getrelative(prj, cfg.libdirs))
|
||||||
_p(2,'<ReferencePath>%s</ReferencePath>', table.concat(refpaths, ";"))
|
p.w('<ReferencePath>%s</ReferencePath>', table.concat(refpaths, ";"))
|
||||||
|
|
||||||
_p(' </PropertyGroup>')
|
p.pop('</PropertyGroup>')
|
||||||
|
|
||||||
for cfg in project.eachconfig(prj) do
|
for cfg in p.project.eachconfig(prj) do
|
||||||
local contents = p.capture(function()
|
local contents = p.capture(function()
|
||||||
cs2005.debugsettings(cfg)
|
p.push()
|
||||||
|
m.debugsettings(cfg)
|
||||||
|
p.pop()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
if #contents > 0 then
|
if #contents > 0 then
|
||||||
_p(1,'<PropertyGroup %s>', cs2005.condition(cfg))
|
p.push('<PropertyGroup %s>', m.condition(cfg))
|
||||||
p.outln(contents)
|
p.outln(contents)
|
||||||
_p(1,'</PropertyGroup>')
|
p.pop('</PropertyGroup>')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
_p('</Project>')
|
p.outln('</Project>')
|
||||||
end
|
end
|
||||||
|
|
||||||
function cs2005.debugsettings(cfg)
|
|
||||||
cs2005.localDebuggerCommandArguments(cfg)
|
|
||||||
|
function m.debugsettings(cfg)
|
||||||
|
m.localDebuggerCommandArguments(cfg)
|
||||||
end
|
end
|
||||||
|
|
||||||
function cs2005.localDebuggerCommandArguments(cfg)
|
function m.localDebuggerCommandArguments(cfg)
|
||||||
if #cfg.debugargs > 0 then
|
if #cfg.debugargs > 0 then
|
||||||
_x(2,'<StartArguments>%s</StartArguments>', table.concat(cfg.debugargs, " "))
|
p.x('<StartArguments>%s</StartArguments>', table.concat(cfg.debugargs, " "))
|
||||||
end
|
end
|
||||||
end
|
end
|
@ -70,7 +70,7 @@
|
|||||||
cs2005.debugsettings(cfg)
|
cs2005.debugsettings(cfg)
|
||||||
|
|
||||||
test.capture [[
|
test.capture [[
|
||||||
<StartArguments>foobar</StartArguments>
|
<StartArguments>foobar</StartArguments>
|
||||||
]]
|
]]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -6,7 +6,6 @@
|
|||||||
|
|
||||||
local suite = test.declare("vstudio_vs200x_user_file")
|
local suite = test.declare("vstudio_vs200x_user_file")
|
||||||
local vc200x = premake.vstudio.vc200x
|
local vc200x = premake.vstudio.vc200x
|
||||||
local project = premake.project
|
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
|
@ -6,7 +6,6 @@
|
|||||||
|
|
||||||
local suite = test.declare("vstudio_vs2010_user_file")
|
local suite = test.declare("vstudio_vs2010_user_file")
|
||||||
local vc2010 = premake.vstudio.vc2010
|
local vc2010 = premake.vstudio.vc2010
|
||||||
local project = premake.project
|
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
|
Reference in New Issue
Block a user