Message ID | 20240731135201.2866145-2-dan.scally@ideasonboard.com |
---|---|
State | Superseded |
Headers | show |
Series |
|
Related | show |
Quoting Daniel Scally (2024-07-31 14:51:58) > Meson array variables hold lists of libcamera's source files. To help > facilitate the splitting of Doxygen generated documentation into > distinct public and internal versions, split those arrays to separate > public and internal variables. > > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> > Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com> > --- > Changes in v4: > > - Missing comma > > Changes in v3: > > - Didn't swap span.h to private array > - dropped _publically from array name > > Changes in v2: > > - New patch > > include/libcamera/internal/meson.build | 21 +++++++++++---- > src/libcamera/base/meson.build | 24 +++++++++++------ > src/libcamera/meson.build | 36 ++++++++++++++++---------- > src/libcamera/sensor/meson.build | 5 ++++ > 4 files changed, 59 insertions(+), 27 deletions(-) > > diff --git a/include/libcamera/internal/meson.build b/include/libcamera/internal/meson.build > index 9713ea1c..76c939bf 100644 > --- a/include/libcamera/internal/meson.build > +++ b/include/libcamera/internal/meson.build > @@ -9,13 +9,21 @@ libcamera_tracepoint_header = custom_target( > command : [gen_tracepoints_header, include_build_dir, '@OUTPUT@', '@INPUT@'], > ) > > -libcamera_internal_headers = files([ > +# Where libcamera's public API classes have Extensible::Private counterparts we > +# need to include them in doxygen's public API run or it will complain that the > +# functions defined in the "public" source are undeclared. > +libcamera_internal_headers_documented = files([ > + 'camera.h', > + 'camera_manager.h', > + 'framebuffer.h', > + 'request.h', > +]) > + > +libcamera_internal_headers_undocumented = files([ > 'bayer_format.h', > 'byte_stream_buffer.h', > - 'camera.h', > 'camera_controls.h', > 'camera_lens.h', > - 'camera_manager.h', > 'camera_sensor.h', > 'camera_sensor_properties.h', > 'control_serializer.h', > @@ -27,7 +35,6 @@ libcamera_internal_headers = files([ > 'device_enumerator_udev.h', > 'dma_buf_allocator.h', > 'formats.h', > - 'framebuffer.h', > 'ipa_manager.h', > 'ipa_module.h', > 'ipa_proxy.h', > @@ -38,7 +45,6 @@ libcamera_internal_headers = files([ > 'pipeline_handler.h', > 'process.h', > 'pub_key.h', > - 'request.h', > 'shared_mem_object.h', > 'source_paths.h', > 'sysfs.h', > @@ -49,5 +55,10 @@ libcamera_internal_headers = files([ > 'yaml_parser.h', > ]) > > +libcamera_internal_headers = [ > + libcamera_internal_headers_documented, > + libcamera_internal_headers_undocumented, > +] > + > subdir('converter') > subdir('software_isp') > diff --git a/src/libcamera/base/meson.build b/src/libcamera/base/meson.build > index 7a7fd7e4..523c5885 100644 > --- a/src/libcamera/base/meson.build > +++ b/src/libcamera/base/meson.build > @@ -1,27 +1,35 @@ > # SPDX-License-Identifier: CC0-1.0 > > -libcamera_base_sources = files([ > - 'backtrace.cpp', > - 'class.cpp', > +libcamera_base_public_sources = files([ > 'bound_method.cpp', > + 'class.cpp', > + 'flags.cpp', > + 'object.cpp', > + 'shared_fd.cpp', > + 'signal.cpp', > + 'unique_fd.cpp', > +]) > + > +libcamera_base_internal_sources = files([ > + 'backtrace.cpp', > 'event_dispatcher.cpp', > 'event_dispatcher_poll.cpp', > 'event_notifier.cpp', > 'file.cpp', > - 'flags.cpp', > 'log.cpp', > 'message.cpp', > 'mutex.cpp', > - 'object.cpp', > 'semaphore.cpp', > - 'shared_fd.cpp', > - 'signal.cpp', > 'thread.cpp', > 'timer.cpp', > - 'unique_fd.cpp', > 'utils.cpp', > ]) > > +libcamera_base_sources = [ > + libcamera_base_public_sources, > + libcamera_base_internal_sources > +] > + > libdw = dependency('libdw', required : false) > libunwind = dependency('libunwind', required : false) > > diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build > index 89504cee..9c74241d 100644 > --- a/src/libcamera/meson.build > +++ b/src/libcamera/meson.build > @@ -1,14 +1,26 @@ > # SPDX-License-Identifier: CC0-1.0 > > -libcamera_sources = files([ > - 'bayer_format.cpp', > - 'byte_stream_buffer.cpp', > +libcamera_public_sources = files([ > 'camera.cpp', > - 'camera_controls.cpp', > - 'camera_lens.cpp', > 'camera_manager.cpp', > 'color_space.cpp', > 'controls.cpp', > + 'fence.cpp', > + 'framebuffer.cpp', > + 'framebuffer_allocator.cpp', > + 'geometry.cpp', > + 'orientation.cpp', > + 'pixel_format.cpp', > + 'request.cpp', > + 'stream.cpp', > + 'transform.cpp', > +]) > + > +libcamera_internal_sources = files([ > + 'bayer_format.cpp', > + 'byte_stream_buffer.cpp', > + 'camera_controls.cpp', > + 'camera_lens.cpp', > 'control_serializer.cpp', > 'control_validator.cpp', > 'converter.cpp', > @@ -16,11 +28,7 @@ libcamera_sources = files([ > 'device_enumerator.cpp', > 'device_enumerator_sysfs.cpp', > 'dma_buf_allocator.cpp', > - 'fence.cpp', > 'formats.cpp', > - 'framebuffer.cpp', > - 'framebuffer_allocator.cpp', > - 'geometry.cpp', > 'ipa_controls.cpp', > 'ipa_data_serializer.cpp', > 'ipa_interface.cpp', > @@ -33,17 +41,12 @@ libcamera_sources = files([ > 'mapped_framebuffer.cpp', > 'media_device.cpp', > 'media_object.cpp', > - 'orientation.cpp', > 'pipeline_handler.cpp', > - 'pixel_format.cpp', > 'process.cpp', > 'pub_key.cpp', > - 'request.cpp', > 'shared_mem_object.cpp', > 'source_paths.cpp', > - 'stream.cpp', > 'sysfs.cpp', > - 'transform.cpp', > 'v4l2_device.cpp', > 'v4l2_pixelformat.cpp', > 'v4l2_subdevice.cpp', > @@ -51,6 +54,11 @@ libcamera_sources = files([ > 'yaml_parser.cpp', > ]) > > +libcamera_sources = [ > + libcamera_public_sources, > + libcamera_internal_sources > +] > + > libcamera_sources += libcamera_public_headers > libcamera_sources += libcamera_generated_ipa_headers > libcamera_sources += libcamera_tracepoint_header > diff --git a/src/libcamera/sensor/meson.build b/src/libcamera/sensor/meson.build > index bf4b131a..1c1fc5a4 100644 > --- a/src/libcamera/sensor/meson.build > +++ b/src/libcamera/sensor/meson.build > @@ -1,5 +1,10 @@ > # SPDX-License-Identifier: CC0-1.0 > > +libcamera_internal_sources += files([ > + 'camera_sensor.cpp', > + 'camera_sensor_properties.cpp', > +]) > + > libcamera_sources += files([ > 'camera_sensor.cpp', > 'camera_sensor_properties.cpp', > -- > 2.34.1 >
On Wed, Jul 31, 2024 at 02:51:58PM +0100, Daniel Scally wrote: > Meson array variables hold lists of libcamera's source files. To help > facilitate the splitting of Doxygen generated documentation into > distinct public and internal versions, split those arrays to separate > public and internal variables. > > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com> > --- > Changes in v4: > > - Missing comma > > Changes in v3: > > - Didn't swap span.h to private array > - dropped _publically from array name > > Changes in v2: > > - New patch > > include/libcamera/internal/meson.build | 21 +++++++++++---- > src/libcamera/base/meson.build | 24 +++++++++++------ > src/libcamera/meson.build | 36 ++++++++++++++++---------- > src/libcamera/sensor/meson.build | 5 ++++ > 4 files changed, 59 insertions(+), 27 deletions(-) > > diff --git a/include/libcamera/internal/meson.build b/include/libcamera/internal/meson.build > index 9713ea1c..76c939bf 100644 > --- a/include/libcamera/internal/meson.build > +++ b/include/libcamera/internal/meson.build > @@ -9,13 +9,21 @@ libcamera_tracepoint_header = custom_target( > command : [gen_tracepoints_header, include_build_dir, '@OUTPUT@', '@INPUT@'], > ) > > -libcamera_internal_headers = files([ > +# Where libcamera's public API classes have Extensible::Private counterparts we > +# need to include them in doxygen's public API run or it will complain that the > +# functions defined in the "public" source are undeclared. > +libcamera_internal_headers_documented = files([ > + 'camera.h', > + 'camera_manager.h', > + 'framebuffer.h', > + 'request.h', > +]) > + > +libcamera_internal_headers_undocumented = files([ > 'bayer_format.h', > 'byte_stream_buffer.h', > - 'camera.h', > 'camera_controls.h', > 'camera_lens.h', > - 'camera_manager.h', > 'camera_sensor.h', > 'camera_sensor_properties.h', > 'control_serializer.h', > @@ -27,7 +35,6 @@ libcamera_internal_headers = files([ > 'device_enumerator_udev.h', > 'dma_buf_allocator.h', > 'formats.h', > - 'framebuffer.h', > 'ipa_manager.h', > 'ipa_module.h', > 'ipa_proxy.h', > @@ -38,7 +45,6 @@ libcamera_internal_headers = files([ > 'pipeline_handler.h', > 'process.h', > 'pub_key.h', > - 'request.h', > 'shared_mem_object.h', > 'source_paths.h', > 'sysfs.h', > @@ -49,5 +55,10 @@ libcamera_internal_headers = files([ > 'yaml_parser.h', > ]) > > +libcamera_internal_headers = [ > + libcamera_internal_headers_documented, > + libcamera_internal_headers_undocumented, > +] > + > subdir('converter') > subdir('software_isp') > diff --git a/src/libcamera/base/meson.build b/src/libcamera/base/meson.build > index 7a7fd7e4..523c5885 100644 > --- a/src/libcamera/base/meson.build > +++ b/src/libcamera/base/meson.build > @@ -1,27 +1,35 @@ > # SPDX-License-Identifier: CC0-1.0 > > -libcamera_base_sources = files([ > - 'backtrace.cpp', > - 'class.cpp', > +libcamera_base_public_sources = files([ > 'bound_method.cpp', > + 'class.cpp', > + 'flags.cpp', > + 'object.cpp', > + 'shared_fd.cpp', > + 'signal.cpp', > + 'unique_fd.cpp', > +]) > + > +libcamera_base_internal_sources = files([ > + 'backtrace.cpp', > 'event_dispatcher.cpp', > 'event_dispatcher_poll.cpp', > 'event_notifier.cpp', > 'file.cpp', > - 'flags.cpp', > 'log.cpp', > 'message.cpp', > 'mutex.cpp', > - 'object.cpp', > 'semaphore.cpp', > - 'shared_fd.cpp', > - 'signal.cpp', > 'thread.cpp', > 'timer.cpp', > - 'unique_fd.cpp', > 'utils.cpp', > ]) > > +libcamera_base_sources = [ > + libcamera_base_public_sources, > + libcamera_base_internal_sources Wrong indentation, should be 4 spaces, not a tab. > +] > + > libdw = dependency('libdw', required : false) > libunwind = dependency('libunwind', required : false) > > diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build > index 89504cee..9c74241d 100644 > --- a/src/libcamera/meson.build > +++ b/src/libcamera/meson.build > @@ -1,14 +1,26 @@ > # SPDX-License-Identifier: CC0-1.0 > > -libcamera_sources = files([ > - 'bayer_format.cpp', > - 'byte_stream_buffer.cpp', > +libcamera_public_sources = files([ > 'camera.cpp', > - 'camera_controls.cpp', > - 'camera_lens.cpp', > 'camera_manager.cpp', > 'color_space.cpp', > 'controls.cpp', > + 'fence.cpp', > + 'framebuffer.cpp', > + 'framebuffer_allocator.cpp', > + 'geometry.cpp', > + 'orientation.cpp', > + 'pixel_format.cpp', > + 'request.cpp', > + 'stream.cpp', > + 'transform.cpp', > +]) > + > +libcamera_internal_sources = files([ > + 'bayer_format.cpp', > + 'byte_stream_buffer.cpp', > + 'camera_controls.cpp', > + 'camera_lens.cpp', > 'control_serializer.cpp', > 'control_validator.cpp', > 'converter.cpp', > @@ -16,11 +28,7 @@ libcamera_sources = files([ > 'device_enumerator.cpp', > 'device_enumerator_sysfs.cpp', > 'dma_buf_allocator.cpp', > - 'fence.cpp', > 'formats.cpp', > - 'framebuffer.cpp', > - 'framebuffer_allocator.cpp', > - 'geometry.cpp', > 'ipa_controls.cpp', > 'ipa_data_serializer.cpp', > 'ipa_interface.cpp', > @@ -33,17 +41,12 @@ libcamera_sources = files([ > 'mapped_framebuffer.cpp', > 'media_device.cpp', > 'media_object.cpp', > - 'orientation.cpp', > 'pipeline_handler.cpp', > - 'pixel_format.cpp', > 'process.cpp', > 'pub_key.cpp', > - 'request.cpp', > 'shared_mem_object.cpp', > 'source_paths.cpp', > - 'stream.cpp', > 'sysfs.cpp', > - 'transform.cpp', > 'v4l2_device.cpp', > 'v4l2_pixelformat.cpp', > 'v4l2_subdevice.cpp', > @@ -51,6 +54,11 @@ libcamera_sources = files([ > 'yaml_parser.cpp', > ]) > > +libcamera_sources = [ > + libcamera_public_sources, > + libcamera_internal_sources Same here. > +] > + > libcamera_sources += libcamera_public_headers > libcamera_sources += libcamera_generated_ipa_headers > libcamera_sources += libcamera_tracepoint_header > diff --git a/src/libcamera/sensor/meson.build b/src/libcamera/sensor/meson.build > index bf4b131a..1c1fc5a4 100644 > --- a/src/libcamera/sensor/meson.build > +++ b/src/libcamera/sensor/meson.build > @@ -1,5 +1,10 @@ > # SPDX-License-Identifier: CC0-1.0 > > +libcamera_internal_sources += files([ > + 'camera_sensor.cpp', > + 'camera_sensor_properties.cpp', > +]) > + > libcamera_sources += files([ > 'camera_sensor.cpp', > 'camera_sensor_properties.cpp',
diff --git a/include/libcamera/internal/meson.build b/include/libcamera/internal/meson.build index 9713ea1c..76c939bf 100644 --- a/include/libcamera/internal/meson.build +++ b/include/libcamera/internal/meson.build @@ -9,13 +9,21 @@ libcamera_tracepoint_header = custom_target( command : [gen_tracepoints_header, include_build_dir, '@OUTPUT@', '@INPUT@'], ) -libcamera_internal_headers = files([ +# Where libcamera's public API classes have Extensible::Private counterparts we +# need to include them in doxygen's public API run or it will complain that the +# functions defined in the "public" source are undeclared. +libcamera_internal_headers_documented = files([ + 'camera.h', + 'camera_manager.h', + 'framebuffer.h', + 'request.h', +]) + +libcamera_internal_headers_undocumented = files([ 'bayer_format.h', 'byte_stream_buffer.h', - 'camera.h', 'camera_controls.h', 'camera_lens.h', - 'camera_manager.h', 'camera_sensor.h', 'camera_sensor_properties.h', 'control_serializer.h', @@ -27,7 +35,6 @@ libcamera_internal_headers = files([ 'device_enumerator_udev.h', 'dma_buf_allocator.h', 'formats.h', - 'framebuffer.h', 'ipa_manager.h', 'ipa_module.h', 'ipa_proxy.h', @@ -38,7 +45,6 @@ libcamera_internal_headers = files([ 'pipeline_handler.h', 'process.h', 'pub_key.h', - 'request.h', 'shared_mem_object.h', 'source_paths.h', 'sysfs.h', @@ -49,5 +55,10 @@ libcamera_internal_headers = files([ 'yaml_parser.h', ]) +libcamera_internal_headers = [ + libcamera_internal_headers_documented, + libcamera_internal_headers_undocumented, +] + subdir('converter') subdir('software_isp') diff --git a/src/libcamera/base/meson.build b/src/libcamera/base/meson.build index 7a7fd7e4..523c5885 100644 --- a/src/libcamera/base/meson.build +++ b/src/libcamera/base/meson.build @@ -1,27 +1,35 @@ # SPDX-License-Identifier: CC0-1.0 -libcamera_base_sources = files([ - 'backtrace.cpp', - 'class.cpp', +libcamera_base_public_sources = files([ 'bound_method.cpp', + 'class.cpp', + 'flags.cpp', + 'object.cpp', + 'shared_fd.cpp', + 'signal.cpp', + 'unique_fd.cpp', +]) + +libcamera_base_internal_sources = files([ + 'backtrace.cpp', 'event_dispatcher.cpp', 'event_dispatcher_poll.cpp', 'event_notifier.cpp', 'file.cpp', - 'flags.cpp', 'log.cpp', 'message.cpp', 'mutex.cpp', - 'object.cpp', 'semaphore.cpp', - 'shared_fd.cpp', - 'signal.cpp', 'thread.cpp', 'timer.cpp', - 'unique_fd.cpp', 'utils.cpp', ]) +libcamera_base_sources = [ + libcamera_base_public_sources, + libcamera_base_internal_sources +] + libdw = dependency('libdw', required : false) libunwind = dependency('libunwind', required : false) diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build index 89504cee..9c74241d 100644 --- a/src/libcamera/meson.build +++ b/src/libcamera/meson.build @@ -1,14 +1,26 @@ # SPDX-License-Identifier: CC0-1.0 -libcamera_sources = files([ - 'bayer_format.cpp', - 'byte_stream_buffer.cpp', +libcamera_public_sources = files([ 'camera.cpp', - 'camera_controls.cpp', - 'camera_lens.cpp', 'camera_manager.cpp', 'color_space.cpp', 'controls.cpp', + 'fence.cpp', + 'framebuffer.cpp', + 'framebuffer_allocator.cpp', + 'geometry.cpp', + 'orientation.cpp', + 'pixel_format.cpp', + 'request.cpp', + 'stream.cpp', + 'transform.cpp', +]) + +libcamera_internal_sources = files([ + 'bayer_format.cpp', + 'byte_stream_buffer.cpp', + 'camera_controls.cpp', + 'camera_lens.cpp', 'control_serializer.cpp', 'control_validator.cpp', 'converter.cpp', @@ -16,11 +28,7 @@ libcamera_sources = files([ 'device_enumerator.cpp', 'device_enumerator_sysfs.cpp', 'dma_buf_allocator.cpp', - 'fence.cpp', 'formats.cpp', - 'framebuffer.cpp', - 'framebuffer_allocator.cpp', - 'geometry.cpp', 'ipa_controls.cpp', 'ipa_data_serializer.cpp', 'ipa_interface.cpp', @@ -33,17 +41,12 @@ libcamera_sources = files([ 'mapped_framebuffer.cpp', 'media_device.cpp', 'media_object.cpp', - 'orientation.cpp', 'pipeline_handler.cpp', - 'pixel_format.cpp', 'process.cpp', 'pub_key.cpp', - 'request.cpp', 'shared_mem_object.cpp', 'source_paths.cpp', - 'stream.cpp', 'sysfs.cpp', - 'transform.cpp', 'v4l2_device.cpp', 'v4l2_pixelformat.cpp', 'v4l2_subdevice.cpp', @@ -51,6 +54,11 @@ libcamera_sources = files([ 'yaml_parser.cpp', ]) +libcamera_sources = [ + libcamera_public_sources, + libcamera_internal_sources +] + libcamera_sources += libcamera_public_headers libcamera_sources += libcamera_generated_ipa_headers libcamera_sources += libcamera_tracepoint_header diff --git a/src/libcamera/sensor/meson.build b/src/libcamera/sensor/meson.build index bf4b131a..1c1fc5a4 100644 --- a/src/libcamera/sensor/meson.build +++ b/src/libcamera/sensor/meson.build @@ -1,5 +1,10 @@ # SPDX-License-Identifier: CC0-1.0 +libcamera_internal_sources += files([ + 'camera_sensor.cpp', + 'camera_sensor_properties.cpp', +]) + libcamera_sources += files([ 'camera_sensor.cpp', 'camera_sensor_properties.cpp',