2017-06-19 19:50:34 +00:00
|
|
|
--
|
|
|
|
-- _preload.lua
|
|
|
|
-- Define the makefile action(s).
|
2017-08-30 18:35:42 +00:00
|
|
|
-- Copyright (c) Jason Perkins and the Premake project
|
2017-06-19 19:50:34 +00:00
|
|
|
--
|
|
|
|
|
|
|
|
local p = premake
|
|
|
|
local project = p.project
|
|
|
|
|
|
|
|
-- initialize module.
|
|
|
|
p.modules.vstudio = p.modules.vstudio or {}
|
|
|
|
p.modules.vstudio._VERSION = p._VERSION
|
|
|
|
p.vstudio = p.modules.vstudio
|
|
|
|
|
|
|
|
-- load actions.
|
|
|
|
include("vs2005.lua")
|
|
|
|
include("vs2008.lua")
|
|
|
|
include("vs2010.lua")
|
|
|
|
include("vs2012.lua")
|
|
|
|
include("vs2013.lua")
|
|
|
|
include("vs2015.lua")
|
|
|
|
include("vs2017.lua")
|
2019-03-17 16:03:17 +00:00
|
|
|
include("vs2019.lua")
|
2017-06-19 19:50:34 +00:00
|
|
|
|
2018-04-07 17:15:45 +00:00
|
|
|
-- Initialize Specific API
|
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "shaderoptions",
|
|
|
|
scope = "config",
|
|
|
|
kind = "list:string",
|
|
|
|
tokens = true,
|
|
|
|
pathVars = true,
|
|
|
|
}
|
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "shaderdefines",
|
|
|
|
scope = "config",
|
|
|
|
kind = "list:string",
|
|
|
|
tokens = true,
|
|
|
|
}
|
|
|
|
|
2019-03-20 19:44:18 +00:00
|
|
|
p.api.register {
|
|
|
|
name = "shaderincludedirs",
|
|
|
|
scope = "config",
|
|
|
|
kind = "list:directory",
|
|
|
|
tokens = true,
|
|
|
|
pathVars = true,
|
|
|
|
}
|
|
|
|
|
2018-04-07 17:15:45 +00:00
|
|
|
p.api.register {
|
|
|
|
name = "shadertype",
|
|
|
|
scope = "config",
|
|
|
|
kind = "string",
|
|
|
|
allowed = {
|
|
|
|
"Effect",
|
|
|
|
"Vertex",
|
|
|
|
"Pixel",
|
|
|
|
"Geometry",
|
|
|
|
"Hull",
|
|
|
|
"Domain",
|
|
|
|
"Compute",
|
|
|
|
"Texture",
|
|
|
|
"RootSignature",
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "shadermodel",
|
|
|
|
scope = "config",
|
|
|
|
kind = "string",
|
|
|
|
allowed = {
|
|
|
|
"2.0",
|
|
|
|
"3.0",
|
|
|
|
"4.0_level_9_1",
|
|
|
|
"4.0_level_9_3",
|
|
|
|
"4.0",
|
|
|
|
"4.1",
|
|
|
|
"5.0",
|
2019-02-01 06:02:46 +00:00
|
|
|
"rootsig_1.0",
|
|
|
|
"rootsig_1.1",
|
|
|
|
"6.0",
|
|
|
|
"6.1",
|
|
|
|
"6.2",
|
|
|
|
"6.3"
|
2018-04-07 17:15:45 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "shaderentry",
|
|
|
|
scope = "config",
|
|
|
|
kind = "string",
|
|
|
|
tokens = true,
|
|
|
|
}
|
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "shadervariablename",
|
|
|
|
scope = "config",
|
|
|
|
kind = "string",
|
|
|
|
tokens = true,
|
|
|
|
}
|
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "shaderheaderfileoutput",
|
|
|
|
scope = "config",
|
|
|
|
kind = "string",
|
|
|
|
tokens = true,
|
|
|
|
}
|
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "shaderobjectfileoutput",
|
|
|
|
scope = "config",
|
|
|
|
kind = "string",
|
|
|
|
tokens = true,
|
|
|
|
}
|
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "shaderassembler",
|
|
|
|
scope = "config",
|
|
|
|
kind = "string",
|
|
|
|
allowed = {
|
|
|
|
"NoListing",
|
|
|
|
"AssemblyCode",
|
|
|
|
"AssemblyCodeAndHex",
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "shaderassembleroutput",
|
|
|
|
scope = "config",
|
|
|
|
kind = "string",
|
|
|
|
tokens = true,
|
|
|
|
}
|
2018-04-09 15:20:38 +00:00
|
|
|
|
|
|
|
p.api.register {
|
|
|
|
name = "debuggerflavor",
|
|
|
|
scope = "config",
|
|
|
|
kind = "string",
|
|
|
|
allowed = {
|
2018-04-10 18:00:41 +00:00
|
|
|
"Local",
|
|
|
|
"Remote",
|
|
|
|
"WebBrowser",
|
|
|
|
"WebService"
|
2018-04-09 15:20:38 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-06-19 19:50:34 +00:00
|
|
|
--
|
|
|
|
-- Decide when the full module should be loaded.
|
|
|
|
--
|
|
|
|
|
|
|
|
return function(cfg)
|
|
|
|
return
|
|
|
|
_ACTION == "vs2005" or
|
|
|
|
_ACTION == "vs2008" or
|
|
|
|
_ACTION == "vs2010" or
|
|
|
|
_ACTION == "vs2012" or
|
|
|
|
_ACTION == "vs2013" or
|
|
|
|
_ACTION == "vs2015" or
|
2019-03-17 16:03:17 +00:00
|
|
|
_ACTION == "vs2017" or
|
|
|
|
_ACTION == "vs2019" or
|
|
|
|
false;
|
2017-06-19 19:50:34 +00:00
|
|
|
end
|