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