mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-23 19:50:11 +01:00
freedreno/registers: allow skipping the validation
We don't need to run the validation of the XML files if we are just compiling the kernel. Skip the validation unless the user enables corresponding Kconfig option. This removes a warning from gen_header.py about lxml being not installed. Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28780>
This commit is contained in:
parent
9540139f43
commit
84e93daa26
1 changed files with 9 additions and 4 deletions
|
|
@ -550,6 +550,9 @@ class Parser(object):
|
|||
self.variants.add(reg.domain)
|
||||
|
||||
def do_validate(self, schemafile):
|
||||
if self.validate == False:
|
||||
return
|
||||
|
||||
try:
|
||||
from lxml import etree
|
||||
|
||||
|
|
@ -579,7 +582,7 @@ class Parser(object):
|
|||
if not xmlschema.validate(xml_doc):
|
||||
error_str = str(xmlschema.error_log.filter_from_errors()[0])
|
||||
raise self.error("Schema validation failed for: " + filename + "\n" + error_str)
|
||||
except ImportError:
|
||||
except ImportError as e:
|
||||
print("lxml not found, skipping validation", file=sys.stderr)
|
||||
|
||||
def do_parse(self, filename):
|
||||
|
|
@ -598,9 +601,10 @@ class Parser(object):
|
|||
self.stack.pop()
|
||||
file.close()
|
||||
|
||||
def parse(self, rnn_path, filename):
|
||||
def parse(self, rnn_path, filename, validate):
|
||||
self.path = rnn_path
|
||||
self.stack = []
|
||||
self.validate = validate
|
||||
self.do_parse(filename)
|
||||
|
||||
def parse_reg(self, attrs, bit_size):
|
||||
|
|
@ -868,7 +872,7 @@ def dump_c(args, guard, func):
|
|||
p = Parser()
|
||||
|
||||
try:
|
||||
p.parse(args.rnn, args.xml)
|
||||
p.parse(args.rnn, args.xml, args.validate)
|
||||
except Error as e:
|
||||
print(e, file=sys.stderr)
|
||||
exit(1)
|
||||
|
|
@ -937,7 +941,7 @@ def dump_py_defines(args):
|
|||
p = Parser()
|
||||
|
||||
try:
|
||||
p.parse(args.rnn, args.xml)
|
||||
p.parse(args.rnn, args.xml, args.validate)
|
||||
except Error as e:
|
||||
print(e, file=sys.stderr)
|
||||
exit(1)
|
||||
|
|
@ -956,6 +960,7 @@ def main():
|
|||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--rnn', type=str, required=True)
|
||||
parser.add_argument('--xml', type=str, required=True)
|
||||
parser.add_argument('--validate', action=argparse.BooleanOptionalAction)
|
||||
|
||||
subparsers = parser.add_subparsers(required=True)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue