initial commit
imported from https://salsa.debian.org/kernel-team/linux.git commit 9d5cc9d9d6501d7f1dd7e194d4b245bd0b6c6a22 version 6.11.4-1
This commit is contained in:
39
debian/bin/kconfig.py
vendored
Executable file
39
debian/bin/kconfig.py
vendored
Executable file
@@ -0,0 +1,39 @@
|
||||
#!/usr/bin/python3
|
||||
|
||||
import optparse
|
||||
import re
|
||||
|
||||
from debian_linux.kconfig import KconfigFile
|
||||
|
||||
|
||||
def merge(output, configs, overrides):
|
||||
kconfig = KconfigFile()
|
||||
for c in configs:
|
||||
kconfig.read(open(c))
|
||||
for key, value in overrides.items():
|
||||
kconfig.set(key, value)
|
||||
open(output, "w").write(str(kconfig))
|
||||
|
||||
|
||||
def opt_callback_dict(option, opt, value, parser):
|
||||
match = re.match(r'^\s*(\S+)=(\S+)\s*$', value)
|
||||
if not match:
|
||||
raise optparse.OptionValueError('not key=value')
|
||||
dest = option.dest
|
||||
data = getattr(parser.values, dest)
|
||||
data[match.group(1)] = match.group(2)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
parser = optparse.OptionParser(usage="%prog [OPTION]... FILE...")
|
||||
parser.add_option(
|
||||
'-o', '--override',
|
||||
action='callback',
|
||||
callback=opt_callback_dict,
|
||||
default={},
|
||||
dest='overrides',
|
||||
help="Override option",
|
||||
type='string')
|
||||
options, args = parser.parse_args()
|
||||
|
||||
merge(args[0], args[1:], options.overrides)
|
Reference in New Issue
Block a user