Added missing extension targets section for custom rules
This commit is contained in:
parent
bd49556345
commit
725e433929
@ -41,7 +41,7 @@
|
|||||||
m.assemblyReferences,
|
m.assemblyReferences,
|
||||||
m.files,
|
m.files,
|
||||||
m.projectReferences,
|
m.projectReferences,
|
||||||
m.import,
|
m.importExtensionTargets,
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -1037,10 +1037,15 @@
|
|||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
function m.import(prj)
|
function m.importExtensionTargets(prj)
|
||||||
_p(1,'<Import Project="$(VCTargetsPath)\\Microsoft.Cpp.targets" />')
|
p.w('<Import Project="$(VCTargetsPath)\\Microsoft.Cpp.targets" />')
|
||||||
_p(1,'<ImportGroup Label="ExtensionTargets">')
|
p.push('<ImportGroup Label="ExtensionTargets">')
|
||||||
_p(1,'</ImportGroup>')
|
table.foreachi(prj.customRules, function(value)
|
||||||
|
value = path.translate(project.getrelative(prj, value))
|
||||||
|
value = path.appendExtension(value, ".targets")
|
||||||
|
p.x('<Import Project="%s" />', value)
|
||||||
|
end)
|
||||||
|
p.pop('</ImportGroup>')
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
--
|
--
|
||||||
-- tests/actions/vstudio/vc2010/test_import_extensions.lua
|
-- tests/actions/vstudio/vc2010/test_extension_settings.lua
|
||||||
-- Check the import extension settings block of a VS 2010 project.
|
-- Check the import extension settings block of a VS 2010 project.
|
||||||
-- Copyright (c) 2014 Jason Perkins and the Premake project
|
-- Copyright (c) 2014 Jason Perkins and the Premake project
|
||||||
--
|
--
|
||||||
|
|
||||||
local suite = test.declare("vs2010_import_extensions")
|
local suite = test.declare("vs2010_import_settings")
|
||||||
local vc2010 = premake.vstudio.vc2010
|
local vc2010 = premake.vstudio.vc2010
|
||||||
local project = premake.project
|
local project = premake.project
|
||||||
|
|
75
tests/actions/vstudio/vc2010/test_extension_targets.lua
Normal file
75
tests/actions/vstudio/vc2010/test_extension_targets.lua
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
--
|
||||||
|
-- tests/actions/vstudio/vc2010/test_extension_targets.lua
|
||||||
|
-- Check the import extension targets block of a VS 2010 project.
|
||||||
|
-- Copyright (c) 2014 Jason Perkins and the Premake project
|
||||||
|
--
|
||||||
|
|
||||||
|
local suite = test.declare("vs2010_import_targets")
|
||||||
|
local vc2010 = premake.vstudio.vc2010
|
||||||
|
local project = premake.project
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Setup
|
||||||
|
--
|
||||||
|
|
||||||
|
local sln
|
||||||
|
|
||||||
|
function suite.setup()
|
||||||
|
sln = test.createsolution()
|
||||||
|
end
|
||||||
|
|
||||||
|
local function prepare()
|
||||||
|
local prj = test.getproject(sln)
|
||||||
|
vc2010.importExtensionTargets(prj)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Writes an empty element when no custom rules are specified.
|
||||||
|
--
|
||||||
|
|
||||||
|
function suite.structureIsCorrect_onDefaultValues()
|
||||||
|
prepare()
|
||||||
|
test.capture [[
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
]]
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Writes entries for each project scoped custom rules path.
|
||||||
|
--
|
||||||
|
|
||||||
|
function suite.addsImport_onEachRulesFile()
|
||||||
|
customRules "MyRules"
|
||||||
|
customRules "MyOtherRules"
|
||||||
|
prepare()
|
||||||
|
test.capture [[
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
<Import Project="MyRules.targets" />
|
||||||
|
<Import Project="MyOtherRules.targets" />
|
||||||
|
</ImportGroup>
|
||||||
|
]]
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Rule files use a project relative path.
|
||||||
|
--
|
||||||
|
|
||||||
|
function suite.usesProjectRelativePaths()
|
||||||
|
customRules "path/to/MyRules"
|
||||||
|
location "build"
|
||||||
|
prepare()
|
||||||
|
test.capture [[
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
<Import Project="..\path\to\MyRules.targets" />
|
||||||
|
</ImportGroup>
|
||||||
|
]]
|
||||||
|
end
|
@ -168,12 +168,13 @@
|
|||||||
dofile("actions/vstudio/vc2010/test_config_props.lua")
|
dofile("actions/vstudio/vc2010/test_config_props.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_debug_settings.lua")
|
dofile("actions/vstudio/vc2010/test_debug_settings.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_excluded_configs.lua")
|
dofile("actions/vstudio/vc2010/test_excluded_configs.lua")
|
||||||
|
dofile("actions/vstudio/vc2010/test_extension_settings.lua")
|
||||||
|
dofile("actions/vstudio/vc2010/test_extension_targets.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_globals.lua")
|
dofile("actions/vstudio/vc2010/test_globals.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_header.lua")
|
dofile("actions/vstudio/vc2010/test_header.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_files.lua")
|
dofile("actions/vstudio/vc2010/test_files.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_filter_ids.lua")
|
dofile("actions/vstudio/vc2010/test_filter_ids.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_filters.lua")
|
dofile("actions/vstudio/vc2010/test_filters.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_import_extensions.lua")
|
|
||||||
dofile("actions/vstudio/vc2010/test_item_def_group.lua")
|
dofile("actions/vstudio/vc2010/test_item_def_group.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_link.lua")
|
dofile("actions/vstudio/vc2010/test_link.lua")
|
||||||
dofile("actions/vstudio/vc2010/test_manifest.lua")
|
dofile("actions/vstudio/vc2010/test_manifest.lua")
|
||||||
|
Loading…
Reference in New Issue
Block a user