[v5,10/18] libcamera: Consolidate all IPA headers in libcamera_ipa_headers
diff mbox series

Message ID 20240805143654.20870-11-laurent.pinchart@ideasonboard.com
State Accepted
Headers show
Series
  • Split libcamera documentation in public and internal APIs
Related show

Commit Message

Laurent Pinchart Aug. 5, 2024, 2:36 p.m. UTC
The IPA headers are listed in two different meson variables, one for
generated headers, and one for the other headers. There's no real reason
for this split, consolidate all of them in the libcamera_ipa_headers
variable.

While at it, don't add the IPA headers to the libcamera_internal_sources
variable, but list libcamera_ipa_headers in the sources for the shared
library. This moves the libcamera_internal_sources variable towards
holding source files, not header files, to improve clarity of the build
system.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 include/libcamera/ipa/meson.build | 8 +++-----
 src/libcamera/meson.build         | 3 +--
 2 files changed, 4 insertions(+), 7 deletions(-)

Comments

Dan Scally Aug. 7, 2024, 8:37 a.m. UTC | #1
Hi Laurent

On 05/08/2024 15:36, Laurent Pinchart wrote:
> The IPA headers are listed in two different meson variables, one for
> generated headers, and one for the other headers. There's no real reason
> for this split, consolidate all of them in the libcamera_ipa_headers
> variable.
>
> While at it, don't add the IPA headers to the libcamera_internal_sources
> variable, but list libcamera_ipa_headers in the sources for the shared
> library. This moves the libcamera_internal_sources variable towards
> holding source files, not header files, to improve clarity of the build
> system.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
>   include/libcamera/ipa/meson.build | 8 +++-----
>   src/libcamera/meson.build         | 3 +--
>   2 files changed, 4 insertions(+), 7 deletions(-)
>
> diff --git a/include/libcamera/ipa/meson.build b/include/libcamera/ipa/meson.build
> index 3352d08fbd98..96fca42cc0b8 100644
> --- a/include/libcamera/ipa/meson.build
> +++ b/include/libcamera/ipa/meson.build
> @@ -11,8 +11,6 @@ libcamera_ipa_headers = files([
>   install_headers(libcamera_ipa_headers,
>                   subdir : libcamera_ipa_include_dir)
>   
> -libcamera_generated_ipa_headers = []
> -
>   ipa_headers_install_dir = get_option('includedir') / libcamera_ipa_include_dir
>   
>   #
> @@ -31,7 +29,7 @@ ipa_mojom_core = custom_target(core_mojom_file.split('.')[0] + '_mojom_module',
>                                  ])
>   
>   # core_ipa_interface.h
> -libcamera_generated_ipa_headers += custom_target('core_ipa_interface_h',
> +libcamera_ipa_headers += custom_target('core_ipa_interface_h',
>                     input : ipa_mojom_core,
>                     output : 'core_ipa_interface.h',
>                     depends : mojom_templates,
> @@ -47,7 +45,7 @@ libcamera_generated_ipa_headers += custom_target('core_ipa_interface_h',
>                     ])
>   
>   # core_ipa_serializer.h
> -libcamera_generated_ipa_headers += custom_target('core_ipa_serializer_h',
> +libcamera_ipa_headers += custom_target('core_ipa_serializer_h',
>                     input : ipa_mojom_core,
>                     output : 'core_ipa_serializer.h',
>                     depends : mojom_templates,
> @@ -152,7 +150,7 @@ foreach pipeline, file : pipeline_ipa_mojom_mapping
>           'mojom': mojom,
>       }
>   
> -    libcamera_generated_ipa_headers += [header, serializer, proxy_header]
> +    libcamera_ipa_headers += [header, serializer, proxy_header]
>   endforeach
>   
>   ipa_mojom_files = []
> diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build
> index 61a97c738ae8..86e8b88cc1b2 100644
> --- a/src/libcamera/meson.build
> +++ b/src/libcamera/meson.build
> @@ -55,7 +55,6 @@ libcamera_internal_sources = files([
>   ])
>   
>   libcamera_public_sources += libcamera_public_headers
> -libcamera_internal_sources += libcamera_generated_ipa_headers
>   libcamera_internal_sources += libcamera_tracepoint_header
>   
>   includes = [
> @@ -196,6 +195,7 @@ libcamera_deps += [
>   libcamera = shared_library('libcamera',
>                              [
>                                  libcamera_public_sources,
> +                               libcamera_ipa_headers,
>                                  libcamera_internal_sources,
>                              ],
>                              version : libcamera_version,
> @@ -216,7 +216,6 @@ libcamera_public = declare_dependency(sources : [
>   # Internal dependency for components and plugins which can use private APIs
>   libcamera_private = declare_dependency(sources : [
>                                              libcamera_ipa_headers,
> -                                           libcamera_generated_ipa_headers,
>                                          ],
>                                          dependencies : [
>                                              libcamera_public,
Kieran Bingham Aug. 7, 2024, 11:14 a.m. UTC | #2
Quoting Laurent Pinchart (2024-08-05 15:36:46)
> The IPA headers are listed in two different meson variables, one for
> generated headers, and one for the other headers. There's no real reason
> for this split, consolidate all of them in the libcamera_ipa_headers
> variable.
> 
> While at it, don't add the IPA headers to the libcamera_internal_sources
> variable, but list libcamera_ipa_headers in the sources for the shared
> library. This moves the libcamera_internal_sources variable towards
> holding source files, not header files, to improve clarity of the build
> system.

Looks reasonable indeed! One less variable to track.


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

> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
>  include/libcamera/ipa/meson.build | 8 +++-----
>  src/libcamera/meson.build         | 3 +--
>  2 files changed, 4 insertions(+), 7 deletions(-)
> 
> diff --git a/include/libcamera/ipa/meson.build b/include/libcamera/ipa/meson.build
> index 3352d08fbd98..96fca42cc0b8 100644
> --- a/include/libcamera/ipa/meson.build
> +++ b/include/libcamera/ipa/meson.build
> @@ -11,8 +11,6 @@ libcamera_ipa_headers = files([
>  install_headers(libcamera_ipa_headers,
>                  subdir : libcamera_ipa_include_dir)
>  
> -libcamera_generated_ipa_headers = []
> -
>  ipa_headers_install_dir = get_option('includedir') / libcamera_ipa_include_dir
>  
>  #
> @@ -31,7 +29,7 @@ ipa_mojom_core = custom_target(core_mojom_file.split('.')[0] + '_mojom_module',
>                                 ])
>  
>  # core_ipa_interface.h
> -libcamera_generated_ipa_headers += custom_target('core_ipa_interface_h',
> +libcamera_ipa_headers += custom_target('core_ipa_interface_h',
>                    input : ipa_mojom_core,
>                    output : 'core_ipa_interface.h',
>                    depends : mojom_templates,
> @@ -47,7 +45,7 @@ libcamera_generated_ipa_headers += custom_target('core_ipa_interface_h',
>                    ])
>  
>  # core_ipa_serializer.h
> -libcamera_generated_ipa_headers += custom_target('core_ipa_serializer_h',
> +libcamera_ipa_headers += custom_target('core_ipa_serializer_h',
>                    input : ipa_mojom_core,
>                    output : 'core_ipa_serializer.h',
>                    depends : mojom_templates,
> @@ -152,7 +150,7 @@ foreach pipeline, file : pipeline_ipa_mojom_mapping
>          'mojom': mojom,
>      }
>  
> -    libcamera_generated_ipa_headers += [header, serializer, proxy_header]
> +    libcamera_ipa_headers += [header, serializer, proxy_header]
>  endforeach
>  
>  ipa_mojom_files = []
> diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build
> index 61a97c738ae8..86e8b88cc1b2 100644
> --- a/src/libcamera/meson.build
> +++ b/src/libcamera/meson.build
> @@ -55,7 +55,6 @@ libcamera_internal_sources = files([
>  ])
>  
>  libcamera_public_sources += libcamera_public_headers
> -libcamera_internal_sources += libcamera_generated_ipa_headers
>  libcamera_internal_sources += libcamera_tracepoint_header
>  
>  includes = [
> @@ -196,6 +195,7 @@ libcamera_deps += [
>  libcamera = shared_library('libcamera',
>                             [
>                                 libcamera_public_sources,
> +                               libcamera_ipa_headers,
>                                 libcamera_internal_sources,
>                             ],
>                             version : libcamera_version,
> @@ -216,7 +216,6 @@ libcamera_public = declare_dependency(sources : [
>  # Internal dependency for components and plugins which can use private APIs
>  libcamera_private = declare_dependency(sources : [
>                                             libcamera_ipa_headers,
> -                                           libcamera_generated_ipa_headers,
>                                         ],
>                                         dependencies : [
>                                             libcamera_public,
> -- 
> Regards,
> 
> Laurent Pinchart
>

Patch
diff mbox series

diff --git a/include/libcamera/ipa/meson.build b/include/libcamera/ipa/meson.build
index 3352d08fbd98..96fca42cc0b8 100644
--- a/include/libcamera/ipa/meson.build
+++ b/include/libcamera/ipa/meson.build
@@ -11,8 +11,6 @@  libcamera_ipa_headers = files([
 install_headers(libcamera_ipa_headers,
                 subdir : libcamera_ipa_include_dir)
 
-libcamera_generated_ipa_headers = []
-
 ipa_headers_install_dir = get_option('includedir') / libcamera_ipa_include_dir
 
 #
@@ -31,7 +29,7 @@  ipa_mojom_core = custom_target(core_mojom_file.split('.')[0] + '_mojom_module',
                                ])
 
 # core_ipa_interface.h
-libcamera_generated_ipa_headers += custom_target('core_ipa_interface_h',
+libcamera_ipa_headers += custom_target('core_ipa_interface_h',
                   input : ipa_mojom_core,
                   output : 'core_ipa_interface.h',
                   depends : mojom_templates,
@@ -47,7 +45,7 @@  libcamera_generated_ipa_headers += custom_target('core_ipa_interface_h',
                   ])
 
 # core_ipa_serializer.h
-libcamera_generated_ipa_headers += custom_target('core_ipa_serializer_h',
+libcamera_ipa_headers += custom_target('core_ipa_serializer_h',
                   input : ipa_mojom_core,
                   output : 'core_ipa_serializer.h',
                   depends : mojom_templates,
@@ -152,7 +150,7 @@  foreach pipeline, file : pipeline_ipa_mojom_mapping
         'mojom': mojom,
     }
 
-    libcamera_generated_ipa_headers += [header, serializer, proxy_header]
+    libcamera_ipa_headers += [header, serializer, proxy_header]
 endforeach
 
 ipa_mojom_files = []
diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build
index 61a97c738ae8..86e8b88cc1b2 100644
--- a/src/libcamera/meson.build
+++ b/src/libcamera/meson.build
@@ -55,7 +55,6 @@  libcamera_internal_sources = files([
 ])
 
 libcamera_public_sources += libcamera_public_headers
-libcamera_internal_sources += libcamera_generated_ipa_headers
 libcamera_internal_sources += libcamera_tracepoint_header
 
 includes = [
@@ -196,6 +195,7 @@  libcamera_deps += [
 libcamera = shared_library('libcamera',
                            [
                                libcamera_public_sources,
+                               libcamera_ipa_headers,
                                libcamera_internal_sources,
                            ],
                            version : libcamera_version,
@@ -216,7 +216,6 @@  libcamera_public = declare_dependency(sources : [
 # Internal dependency for components and plugins which can use private APIs
 libcamera_private = declare_dependency(sources : [
                                            libcamera_ipa_headers,
-                                           libcamera_generated_ipa_headers,
                                        ],
                                        dependencies : [
                                            libcamera_public,