summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/genie/src/base/bake.lua
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/genie/src/base/bake.lua')
-rw-r--r--3rdparty/genie/src/base/bake.lua13
1 files changed, 9 insertions, 4 deletions
diff --git a/3rdparty/genie/src/base/bake.lua b/3rdparty/genie/src/base/bake.lua
index ab50612671d..90e7909809d 100644
--- a/3rdparty/genie/src/base/bake.lua
+++ b/3rdparty/genie/src/base/bake.lua
@@ -728,11 +728,16 @@
-- step of building it later?
cfg.__fileconfigs = { }
for _, fname in ipairs(cfg.files) do
- cfg.terms.required = fname:lower()
local fcfg = {}
- for _, blk in ipairs(cfg.project.blocks) do
- if (premake.iskeywordsmatch(blk.keywords, cfg.terms)) then
- mergeobject(fcfg, blk)
+
+ -- Only do this if the script has called enablefilelevelconfig()
+ if premake._filelevelconfig then
+ cfg.terms.required = fname:lower()
+ for _, blk in ipairs(cfg.project.blocks) do
+ -- BK - `iskeywordsmatch` call is super slow for large projects...
+ if (premake.iskeywordsmatch(blk.keywords, cfg.terms)) then
+ mergeobject(fcfg, blk)
+ end
end
end