[libcamera-devel] [PATCH 7/8] utils: ipc: generate.py: Disable attributes checker

Laurent Pinchart laurent.pinchart at ideasonboard.com
Thu Jan 4 16:15:47 CET 2024


The attributes checker ensures that .mojom files don't contain unknown
attributes. These check fail with the custom 'skipSerdes' and 'async'
libcamera attributes. Ideally the list of supported attributes should be
extended, but that can't easily be done without modifying the mojo
sources that we try to keep identical to the upstream version to make
updates easier. Disable the attributes checker completely for now to fix
this issue.

While at it, fix an indentation issue reported by checkstyle.py.

Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
 utils/ipc/generate.py | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/utils/ipc/generate.py b/utils/ipc/generate.py
index afaf018b49d1..71bdee3b7545 100755
--- a/utils/ipc/generate.py
+++ b/utils/ipc/generate.py
@@ -17,7 +17,15 @@ sys.path.insert(0, f'{os.path.dirname(__file__)}/mojo/public/tools/bindings')
 import mojo.public.tools.bindings.mojom_bindings_generator as generator
 
 def _GetModulePath(path, output_dir):
-  return os.path.join(output_dir, path.relative_path())
+    return os.path.join(output_dir, path.relative_path())
+
+
+# Disable the attribute checker to support our custom attributes. Ideally we
+# should add the attributes to the list of allowed attributes in
+# utils/ipc/mojo/public/tools/bindings/checks/mojom_attributes_check.py, but
+# we're trying hard to use the upstream mojom as-is.
+if hasattr(generator, '_BUILTIN_CHECKS'):
+    del generator._BUILTIN_CHECKS['attributes']
 
 # Override the mojo code generator's generator list to only contain our
 # libcamera generator
-- 
Regards,

Laurent Pinchart



More information about the libcamera-devel mailing list