[libcamera-devel] [PATCH 2/3] utils: checkstyle: Ensure "..." include style for internal headers

paul.elder at ideasonboard.com paul.elder at ideasonboard.com
Tue May 31 07:40:07 CEST 2022


Hi Laurent,

On Thu, May 26, 2022 at 02:00:08PM +0300, Laurent Pinchart via libcamera-devel wrote:
> libcamera uses the "..." include style for internal headers. Enforce it.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>

Reviewed-by: Paul Elder <paul.elder at ideasonboard.com>

> ---
>  utils/checkstyle.py | 18 ++++++++++++++++--
>  1 file changed, 16 insertions(+), 2 deletions(-)
> 
> diff --git a/utils/checkstyle.py b/utils/checkstyle.py
> index 66af96abd402..61783165bef2 100755
> --- a/utils/checkstyle.py
> +++ b/utils/checkstyle.py
> @@ -643,7 +643,7 @@ class DPointerFormatter(Formatter):
>  class IncludeOrderFormatter(Formatter):
>      patterns = ('*.cpp', '*.h')
>  
> -    include_regex = re.compile('^#include ["<]([^">]*)[">]')
> +    include_regex = re.compile('^#include (["<])([^">]*)([">])')
>  
>      @classmethod
>      def format(cls, filename, data):
> @@ -657,7 +657,21 @@ class IncludeOrderFormatter(Formatter):
>              if match:
>                  # If the current line is an #include statement, add it to the
>                  # includes group and continue to the next line.
> -                includes.append((line, match.group(1)))
> +                open_token = match.group(1)
> +                file_name = match.group(2)
> +                close_token = match.group(3)
> +
> +                # Ensure the "..." include style for internal headers and the
> +                # <...> style for all other libcamera headers.
> +                if (file_name.startswith('libcamera/internal')):
> +                    open_token = '"'
> +                    close_token = '"'
> +                elif (file_name.startswith('libcamera/')):
> +                    open_token = '<'
> +                    close_token = '>'
> +
> +                line = f'#include {open_token}{file_name}{close_token}'
> +                includes.append((line, file_name))
>                  continue
>  
>              # The current line is not an #include statement, output the sorted


More information about the libcamera-devel mailing list