[PATCH 1/4] utils: checkstyle.py: Refactor IncludeChecker
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Fri May 31 14:18:35 CEST 2024
The IncludeCheck warns when code uses C++ standard library headers where
corresponding C compatibility headers are preferred. We have an
exception to that rule for math.h, where cmath is prefered. In order to
prepare for extending checkstyle.py to enforce that rule, refactor the
way the IncludeChecker identifies headers. No functional change is
intended.
Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
utils/checkstyle.py | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/utils/checkstyle.py b/utils/checkstyle.py
index 4e287b2e0053..518be0897db5 100755
--- a/utils/checkstyle.py
+++ b/utils/checkstyle.py
@@ -565,11 +565,11 @@ class StyleIssue(object):
class IncludeChecker(StyleChecker):
patterns = ('*.cpp', '*.h')
- headers = ('assert', 'ctype', 'errno', 'fenv', 'float', 'inttypes',
- 'limits', 'locale', 'setjmp', 'signal', 'stdarg', 'stddef',
- 'stdint', 'stdio', 'stdlib', 'string', 'time', 'uchar', 'wchar',
- 'wctype')
- include_regex = re.compile(r'^#include <c([a-z]*)>')
+ headers = ('cassert', 'cctype', 'cerrno', 'cfenv', 'cfloat', 'cinttypes',
+ 'climits', 'clocale', 'csetjmp', 'csignal', 'cstdarg', 'cstddef',
+ 'cstdint', 'cstdio', 'cstdlib', 'cstring', 'ctime', 'cuchar',
+ 'cwchar', 'cwctype')
+ include_regex = re.compile(r'^#include <([a-z.]*)>')
def __init__(self, content):
super().__init__()
@@ -588,8 +588,9 @@ class IncludeChecker(StyleChecker):
if header not in IncludeChecker.headers:
continue
+ header = header[1:] + '.h'
issues.append(StyleIssue(line_number, line,
- 'C compatibility header <%s.h> is preferred' % header))
+ 'C compatibility header <%s> is preferred' % header))
return issues
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list