build: target_config_check: make check more lenient
Always allow options set to builtin (=y) when modular setting (=m) is
expected. This can happen when a package is added explicitly (in a
target defintion or site.mk) that is also pulled in as a dependency of
another builtin package.
Fixes: 9e23534ec3
("build: rework config generation")
Fixes: #2046
This commit is contained in:
parent
45b518df11
commit
8b64517f1b
@ -9,18 +9,26 @@ local function fail(msg)
|
|||||||
io.stderr:write(' * ', msg, '\n')
|
io.stderr:write(' * ', msg, '\n')
|
||||||
end
|
end
|
||||||
|
|
||||||
local function match_config(f)
|
local function match_config(expected, actual)
|
||||||
for line in io.lines('openwrt/.config') do
|
if expected == actual then
|
||||||
if f(line) then
|
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if expected:gsub('=m$', '=y') == actual then
|
||||||
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
local function check_config(config)
|
local function check_config(config)
|
||||||
return match_config(function(line) return line == config end)
|
for line in io.lines('openwrt/.config') do
|
||||||
|
if match_config(config, line) then
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user