diff options
author | Oliver Schneider <oliver@assarbad.net> | 2014-01-19 00:49:51 +0400 |
---|---|---|
committer | Oliver Schneider <oliver@assarbad.net> | 2014-01-19 00:49:51 +0400 |
commit | a9c681b3ef33e6a8634a653e7c444d355fb9f4a7 (patch) | |
tree | d74eef1652be8123d6ad933a1b0ae3139295f532 /premake4.lua | |
parent | f350b57a602a4bde3ba7f2707664828ffd29dd8a (diff) |
More generic method
Diffstat (limited to 'premake4.lua')
-rw-r--r-- | premake4.lua | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/premake4.lua b/premake4.lua index 6feed81..9101411 100644 --- a/premake4.lua +++ b/premake4.lua @@ -42,14 +42,24 @@ do -- Override the project creation to suppress unnecessary configurations
-- these get invoked by sln2005.generate per project ...
-- ... they depend on the values in the sln.vstudio_configs table
+ local mprj = {["wdsr%x*"] = {["Release|Win32"] = 0}}
local function prjgen_override_factory(orig_prjgen)
return function(prj)
- if prj.name:find('wdsr') and type(prj.solution.vstudio_configs) == "table" then
+ local function prjmap()
+ for k,v in pairs(mprj) do
+ if prj.name:find(k) or prj.name:match(k) then
+ return v
+ end
+ end
+ return nil
+ end
+ if prjmap() and type(prj.solution.vstudio_configs) == "table" then
local cfgs = prj.solution.vstudio_configs
local faked_cfgs = {}
+ local prjmap = prjmap()
for k,v in pairs(cfgs) do
- if v['name'] == "Release|Win32" then
- faked_cfgs[1] = v
+ if prjmap[v['name']] then
+ faked_cfgs[#faked_cfgs+1] = v
end
end
prj.solution.vstudio_configs = faked_cfgs
|