build/msvc: Fix preprocessor parsing

Preprocessor directives on the first line of the file were not being parsed.
This commit is contained in:
b-r-o-c-k
2018-02-28 19:14:27 -06:00
parent 611351677d
commit 69da692b0a

View File

@@ -224,23 +224,15 @@ local static = header
local filepattern = '^#%a* (%d+) "([^"]-)/?([^"/]+)"'
local curfile
local init = 0
local init = 1
local curfile = nil
local neededfile = fname:match('[^/]+$')
local declline = 0
local declendpos = 0
local curdir = nil
local is_needed_file = false
local init_is_nl = true
while init ~= nil do
init = text:find('[\n;}]', init)
if init == nil then
break
end
local init_is_nl = text:sub(init, init) == '\n'
init = init + 1
if init_is_nl and is_needed_file then
declline = declline + 1
end
if init_is_nl and text:sub(init, init) == '#' then
local line, dir, file = text:match(filepattern, init)
if file ~= nil then
@@ -293,6 +285,15 @@ while init ~= nil do
declendpos = e
end
end
init = text:find('[\n;}]', init)
if init == nil then
break
end
init_is_nl = text:sub(init, init) == '\n'
init = init + 1
if init_is_nl and is_needed_file then
declline = declline + 1
end
end
non_static = non_static .. footer