[CI] [PATCH v1 1/2] Add compilation test with C++20

Kieran Bingham kieran.bingham at ideasonboard.com
Tue May 7 22:15:24 CEST 2024


Quoting Laurent Pinchart (2024-05-07 19:17:55)
> libcamera currently uses C++17, but we want to prepare for a switch to
> C++20 in the somehow distant future. Avoid C++20 regressions by adding a
> compilation test with C++20. Do so with g++ 13, which is the most likely
> version of g++ to support this newer language version properly.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
>  gitlab-ci.yml | 15 +++++++++++----
>  1 file changed, 11 insertions(+), 4 deletions(-)
> 
> diff --git a/gitlab-ci.yml b/gitlab-ci.yml
> index 3dcb512525ed..225d929bd2ed 100644
> --- a/gitlab-ci.yml
> +++ b/gitlab-ci.yml
> @@ -185,10 +185,17 @@ build-full:debian:13:
>    needs:
>      - job: container-debian:13
>        artifacts: false
> -  variables:
> -    ARCH: amd64
> -    CC: gcc-13
> -    CXX: g++-13
> +  parallel:
> +    matrix:
> +      - ARCH: amd64
> +        CC: gcc-13
> +        CXX: g++-13
> +      - ARCH: amd64
> +        CC: gcc-13
> +        CXX: g++-13
> +        MESON_OPTIONS: >-
> +          ${MESON_ALL_OPTIONS}
> +          -D cpp_std=c++20

Sounds good to me, but is there really a need to build with gcc-13
twice?

I guess it does still ensure gcc-13 still is valid at C++17, and means
we can update our C++20 builds to later compilers too sooo

Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

>  
>  # Build each commit in the branch individually to detect compilation breakages.
>  build-history:
> -- 
> Regards,
> 
> Laurent Pinchart
>


More information about the libcamera-devel mailing list