[libcamera-devel] [PATCH] package metadata

Christian Rauch Rauch.Christian at gmx.de
Sat Aug 13 01:29:57 CEST 2022


Hi Jacopo,

Am 12.08.22 um 09:28 schrieb Jacopo Mondi:
> Hi
>
> On Fri, Aug 12, 2022 at 01:34:07AM +0300, Laurent Pinchart via libcamera-devel wrote:
>> Hi Christian,
>>
>> Thank you for the patch.
>>
>> On Thu, Aug 11, 2022 at 09:52:30PM +0200, Christian Rauch via libcamera-devel wrote:
>>> This metadata file provides information, amongst others, about the version,
>>> licence, maintainers and build dependencies. This file is used by build
>>> systems (catkin, colcon) to manage a dependency graph and resolve those
>>> dependencies automatically.
>>>
>>> The file structure is defined at: https://www.ros.org/reps/rep-0149.html
>>>
>>> Signed-off-by: Christian Rauch <Rauch.Christian at gmx.de>
>>> ---
>>>  package.xml | 32 ++++++++++++++++++++++++++++++++
>
> I would also move this to package/ros/package.xml

I think this has to be on the same hierarchical level as the
'meson.build', i.e. in the root of this project.

>
>>>  1 file changed, 32 insertions(+)
>>>  create mode 100644 package.xml
>>>
>>> diff --git a/package.xml b/package.xml
>>> new file mode 100644
>>> index 00000000..8b06f507
>>> --- /dev/null
>>> +++ b/package.xml
>>> @@ -0,0 +1,32 @@
>>> +<?xml version="1.0"?>
>>> +<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
>>> +<package format="3">
>>> +  <name>libcamera</name>
>>> +
>>> +  <version>0.0.0</version>
>>> +
>>> +  <description>An open source camera stack and framework for Linux, Android, and ChromeOS</description>
>>> +
>>> +  <maintainer email="libcamera-devel at lists.libcamera.org">libcamera project</maintainer>
>>> +
>>> +  <license>LGPL-2.1</license>
>>> +
>>> +  <url>https://libcamera.org</url>
>>> +
>>> +  <buildtool_depend>python3-meson-pip</buildtool_depend>
>>> +  <buildtool_depend>ninja-build</buildtool_depend>
>>> +
>>> +  <build_depend>python3-yaml</build_depend>
>>> +  <build_depend>python3-ply</build_depend>
>>> +  <build_depend>python3-jinja2</build_depend>
>>> +
>>> +  <depend>libgnutls28-dev</depend>
>>> +  <depend>openssl</depend>
>>
>> openssl is a build dependency. Since a few days ago, it can also
>> optionally be a runtime dependency to replace gnutls.
>>
>>> +  <depend>boost</depend>
>>
>> We don't depend on boost anymore.
>>
>>> +  <depend>libudev-dev</depend>
>>> +  <depend>libunwind-dev</depend>
>>
>> These two dependencies are optional. I'm curious, how are optional
>> dependencies supposed to be handled ? package.xml seems specific to ROS,
>> does it need to pick a set of options that will be enabled in the
>> context of ROS, and then list the corresponding dependencies here ? If
>> so, how would libcamera be built on ROS, how are the meson configuration
>> option set ?
>>
>>> +
>>> +  <export>
>>> +    <build_type>meson</build_type>
>>> +  </export>
>>> +</package>
>>
>> --
>> Regards,
>>
>> Laurent Pinchart


More information about the libcamera-devel mailing list