-def perform_check(opt, parsed_options, kernel_version):
- if hasattr(opt, 'opts'):
- # prepare ComplexOptCheck
+def populate_simple_opt_with_data(opt, data, data_type):
+ if opt.type == 'complex':
+ sys.exit('[!] ERROR: unexpected ComplexOptCheck {}: {}'.format(opt.name, vars(opt)))
+ if opt.type not in SIMPLE_OPTION_TYPES:
+ sys.exit('[!] ERROR: invalid opt type "{}" for {}'.format(opt.type, opt.name))
+ if data_type not in SIMPLE_OPTION_TYPES:
+ sys.exit('[!] ERROR: invalid data type "{}"'.format(data_type))
+
+ if data_type != opt.type:
+ return
+
+ if data_type in ('kconfig', 'cmdline'):
+ opt.state = data.get(opt.name, None)
+ elif data_type == 'version':
+ opt.ver = data
+ else:
+ sys.exit('[!] ERROR: unexpected data type "{}"'.format(data_type))
+
+
+def populate_opt_with_data(opt, data, data_type):
+ if opt.type == 'complex':