[{"id":3034,"web_url":"https://patchwork.libcamera.org/comment/3034/","msgid":"<20191118002622.GF4853@pendragon.ideasonboard.com>","date":"2019-11-18T00:26:22","subject":"Re: [libcamera-devel] [PATCH 2/2] meson: Define python3 and\n\tpython3-yaml required dependencies","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Ezequiel,\n\nThank you for the patch.\n\nOn Fri, Nov 15, 2019 at 12:23:42PM -0300, Ezequiel Garcia wrote:\n> With this change, meson will complain specifically about missing\n> python3 and missing python3-yaml. As specified by meson\n> documentation: https://mesonbuild.com/Python-module.html,\n> this change requires meson v0.51.\n\nNeither Debian stable nor Ubuntu stable ship meson v0.51 or newer, so I\nthink this is a too strict requirement. There are useful features in\nnewer meson verions, but we want to keep libcamera easily buildable on\ncommon distributions.\n\n> Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>\n> ---\n>  meson.build               | 2 +-\n>  src/libcamera/meson.build | 3 +++\n>  2 files changed, 4 insertions(+), 1 deletion(-)\n> \n> diff --git a/meson.build b/meson.build\n> index 72ad7c8b493b..38c0f1d55b56 100644\n> --- a/meson.build\n> +++ b/meson.build\n> @@ -1,5 +1,5 @@\n>  project('libcamera', 'c', 'cpp',\n> -    meson_version : '>= 0.40',\n> +    meson_version : '>= 0.51',\n>      version : '0.0.0',\n>      default_options : [\n>          'werror=true',\n> diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\n> index afbca76968f9..509499359cdb 100644\n> --- a/src/libcamera/meson.build\n> +++ b/src/libcamera/meson.build\n> @@ -61,6 +61,9 @@ if libudev.found()\n>      ])\n>  endif\n>  \n> +py_mod = import('python')\n> +py_inst = py_mod.find_installation('python3', modules: ['yaml'])\n> +\n>  gen_controls = files('gen-controls.py')\n>  \n>  control_ids_cpp = custom_target('control_ids_cpp',","headers":{"Return-Path":"<laurent.pinchart@ideasonboard.com>","Received":["from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B658D60C33\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 18 Nov 2019 01:26:27 +0100 (CET)","from pendragon.ideasonboard.com (81-175-216-236.bb.dnainternet.fi\n\t[81.175.216.236])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 079BDA04;\n\tMon, 18 Nov 2019 01:26:26 +0100 (CET)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1574036787;\n\tbh=vTfulX6oAbUlbQhh0ltKb5DdKhFrqkjV2pfjbI8I//Y=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=DtaMtHxmFaYaIdu4QSZ/QzbnF4vOIgdoSGsiR++Obf4SReiL1RIM4aA4Of9LDm99b\n\t2vCNyPtwvZ/6kqD+JsuyeFrPRqyaak4pSCS/pCRLTgn7Ie+Kp8U7Lk9s89jMagEjiq\n\txTZXmjq+StESBUVXt+vbJnynWL0U9eaCEh7Hei0M=","Date":"Mon, 18 Nov 2019 02:26:22 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Ezequiel Garcia <ezequiel@collabora.com>","Cc":"libcamera-devel@lists.libcamera.org","Message-ID":"<20191118002622.GF4853@pendragon.ideasonboard.com>","References":"<20191115152342.27723-1-ezequiel@collabora.com>\n\t<20191115152342.27723-2-ezequiel@collabora.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20191115152342.27723-2-ezequiel@collabora.com>","User-Agent":"Mutt/1.10.1 (2018-07-13)","Subject":"Re: [libcamera-devel] [PATCH 2/2] meson: Define python3 and\n\tpython3-yaml required dependencies","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","X-List-Received-Date":"Mon, 18 Nov 2019 00:26:28 -0000"}},{"id":3056,"web_url":"https://patchwork.libcamera.org/comment/3056/","msgid":"<29ccc859c2b37675c13fc4160ea60372c6e937d9.camel@collabora.com>","date":"2019-11-18T12:14:10","subject":"Re: [libcamera-devel] [PATCH 2/2] meson: Define python3 and\n\tpython3-yaml required dependencies","submitter":{"id":28,"url":"https://patchwork.libcamera.org/api/people/28/","name":"Ezequiel Garcia","email":"ezequiel@collabora.com"},"content":"On Mon, 2019-11-18 at 02:26 +0200, Laurent Pinchart wrote:\n> Hi Ezequiel,\n> \n> Thank you for the patch.\n> \n> On Fri, Nov 15, 2019 at 12:23:42PM -0300, Ezequiel Garcia wrote:\n> > With this change, meson will complain specifically about missing\n> > python3 and missing python3-yaml. As specified by meson\n> > documentation: https://mesonbuild.com/Python-module.html,\n> > this change requires meson v0.51.\n> \n\nHow about this\n\n+# meson v0.51 is too new and not distributed\n+# by major distros. Let's take advantage of it\n+# optionally.\n+if meson.version().version_compare('>=0.51')\n+    py_mod = import('python')\n+    py_inst = py_mod.find_installation('python3', modules: ['yaml'])\n+endif\n+\n\n?\n\nJust to get the thing documented, we can drop the ifs\nonce libcamera requires meson 0.51\n\nThanks,\nEze\n\n> Neither Debian stable nor Ubuntu stable ship meson v0.51 or newer, so I\n> think this is a too strict requirement. There are useful features in\n> newer meson verions, but we want to keep libcamera easily buildable on\n> common distributions.\n> \n> > Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>\n> > ---\n> >  meson.build               | 2 +-\n> >  src/libcamera/meson.build | 3 +++\n> >  2 files changed, 4 insertions(+), 1 deletion(-)\n> > \n> > diff --git a/meson.build b/meson.build\n> > index 72ad7c8b493b..38c0f1d55b56 100644\n> > --- a/meson.build\n> > +++ b/meson.build\n> > @@ -1,5 +1,5 @@\n> >  project('libcamera', 'c', 'cpp',\n> > -    meson_version : '>= 0.40',\n> > +    meson_version : '>= 0.51',\n> >      version : '0.0.0',\n> >      default_options : [\n> >          'werror=true',\n> > diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\n> > index afbca76968f9..509499359cdb 100644\n> > --- a/src/libcamera/meson.build\n> > +++ b/src/libcamera/meson.build\n> > @@ -61,6 +61,9 @@ if libudev.found()\n> >      ])\n> >  endif\n> >  \n> > +py_mod = import('python')\n> > +py_inst = py_mod.find_installation('python3', modules: ['yaml'])\n> > +\n> >  gen_controls = files('gen-controls.py')\n> >  \n> >  control_ids_cpp = custom_target('control_ids_cpp',","headers":{"Return-Path":"<ezequiel@collabora.com>","Received":["from bhuna.collabora.co.uk (bhuna.collabora.co.uk\n\t[IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id C251460F1C\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 18 Nov 2019 13:14:16 +0100 (CET)","from [127.0.0.1] (localhost [127.0.0.1])\n\t(Authenticated sender: ezequiel) with ESMTPSA id 5886228E093"],"Message-ID":"<29ccc859c2b37675c13fc4160ea60372c6e937d9.camel@collabora.com>","From":"Ezequiel Garcia <ezequiel@collabora.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Date":"Mon, 18 Nov 2019 09:14:10 -0300","In-Reply-To":"<20191118002622.GF4853@pendragon.ideasonboard.com>","References":"<20191115152342.27723-1-ezequiel@collabora.com>\n\t<20191115152342.27723-2-ezequiel@collabora.com>\n\t<20191118002622.GF4853@pendragon.ideasonboard.com>","Organization":"Collabora","Content-Type":"text/plain; charset=\"UTF-8\"","User-Agent":"Evolution 3.34.1-2 ","MIME-Version":"1.0","Content-Transfer-Encoding":"7bit","Subject":"Re: [libcamera-devel] [PATCH 2/2] meson: Define python3 and\n\tpython3-yaml required dependencies","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","X-List-Received-Date":"Mon, 18 Nov 2019 12:14:17 -0000"}},{"id":3068,"web_url":"https://patchwork.libcamera.org/comment/3068/","msgid":"<20191118185443.GC4888@pendragon.ideasonboard.com>","date":"2019-11-18T18:54:43","subject":"Re: [libcamera-devel] [PATCH 2/2] meson: Define python3 and\n\tpython3-yaml required dependencies","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Ezequiel,\n\nOn Mon, Nov 18, 2019 at 09:14:10AM -0300, Ezequiel Garcia wrote:\n> On Mon, 2019-11-18 at 02:26 +0200, Laurent Pinchart wrote:\n> > On Fri, Nov 15, 2019 at 12:23:42PM -0300, Ezequiel Garcia wrote:\n> > > With this change, meson will complain specifically about missing\n> > > python3 and missing python3-yaml. As specified by meson\n> > > documentation: https://mesonbuild.com/Python-module.html,\n> > > this change requires meson v0.51.\n> \n> How about this\n> \n> +# meson v0.51 is too new and not distributed\n> +# by major distros. Let's take advantage of it\n> +# optionally.\n> +if meson.version().version_compare('>=0.51')\n> +    py_mod = import('python')\n> +    py_inst = py_mod.find_installation('python3', modules: ['yaml'])\n\nDo you need to assign the return value to a variable ?\n\n> +endif\n> +\n> \n> ?\n> \n> Just to get the thing documented, we can drop the ifs\n> once libcamera requires meson 0.51\n\nThat looks better to me, but should be conditioned to the documentation\noption being enabled.\n\n> > Neither Debian stable nor Ubuntu stable ship meson v0.51 or newer, so I\n> > think this is a too strict requirement. There are useful features in\n> > newer meson verions, but we want to keep libcamera easily buildable on\n> > common distributions.\n> > \n> > > Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>\n> > > ---\n> > >  meson.build               | 2 +-\n> > >  src/libcamera/meson.build | 3 +++\n> > >  2 files changed, 4 insertions(+), 1 deletion(-)\n> > > \n> > > diff --git a/meson.build b/meson.build\n> > > index 72ad7c8b493b..38c0f1d55b56 100644\n> > > --- a/meson.build\n> > > +++ b/meson.build\n> > > @@ -1,5 +1,5 @@\n> > >  project('libcamera', 'c', 'cpp',\n> > > -    meson_version : '>= 0.40',\n> > > +    meson_version : '>= 0.51',\n> > >      version : '0.0.0',\n> > >      default_options : [\n> > >          'werror=true',\n> > > diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\n> > > index afbca76968f9..509499359cdb 100644\n> > > --- a/src/libcamera/meson.build\n> > > +++ b/src/libcamera/meson.build\n> > > @@ -61,6 +61,9 @@ if libudev.found()\n> > >      ])\n> > >  endif\n> > >  \n> > > +py_mod = import('python')\n> > > +py_inst = py_mod.find_installation('python3', modules: ['yaml'])\n> > > +\n> > >  gen_controls = files('gen-controls.py')\n> > >  \n> > >  control_ids_cpp = custom_target('control_ids_cpp',","headers":{"Return-Path":"<laurent.pinchart@ideasonboard.com>","Received":["from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 9A47E60F1C\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 18 Nov 2019 19:55:00 +0100 (CET)","from pendragon.ideasonboard.com (unknown [38.98.37.142])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 9A9D4311;\n\tMon, 18 Nov 2019 19:54:57 +0100 (CET)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1574103300;\n\tbh=YVwk2aQiYNft8tH+YxJBPML/eq1Cpp9iUzEq55tUAqo=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=qcqMsUCmMbMT5x1AozClKuJp68ExJyxA22bU0c79G7PHarlFclaDONprK8QTPhI8d\n\tnSJ8klyC/yloq+Kuulxt+/ljxG/WVd6WnspUPCCUUGHLT83+REa0e8R12WM1+0Hozl\n\tv01cowW1GAU1yoDEbAywJK58hdsMG9gsmBJsozxs=","Date":"Mon, 18 Nov 2019 20:54:43 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Ezequiel Garcia <ezequiel@collabora.com>","Cc":"libcamera-devel@lists.libcamera.org","Message-ID":"<20191118185443.GC4888@pendragon.ideasonboard.com>","References":"<20191115152342.27723-1-ezequiel@collabora.com>\n\t<20191115152342.27723-2-ezequiel@collabora.com>\n\t<20191118002622.GF4853@pendragon.ideasonboard.com>\n\t<29ccc859c2b37675c13fc4160ea60372c6e937d9.camel@collabora.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<29ccc859c2b37675c13fc4160ea60372c6e937d9.camel@collabora.com>","User-Agent":"Mutt/1.10.1 (2018-07-13)","Subject":"Re: [libcamera-devel] [PATCH 2/2] meson: Define python3 and\n\tpython3-yaml required dependencies","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","X-List-Received-Date":"Mon, 18 Nov 2019 18:55:00 -0000"}},{"id":3069,"web_url":"https://patchwork.libcamera.org/comment/3069/","msgid":"<20191118190141.GD4888@pendragon.ideasonboard.com>","date":"2019-11-18T19:01:41","subject":"Re: [libcamera-devel] [PATCH 2/2] meson: Define python3 and\n\tpython3-yaml required dependencies","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Ezequiel,\n\nOn Mon, Nov 18, 2019 at 08:54:43PM +0200, Laurent Pinchart wrote:\n> On Mon, Nov 18, 2019 at 09:14:10AM -0300, Ezequiel Garcia wrote:\n> > On Mon, 2019-11-18 at 02:26 +0200, Laurent Pinchart wrote:\n> >> On Fri, Nov 15, 2019 at 12:23:42PM -0300, Ezequiel Garcia wrote:\n> >>> With this change, meson will complain specifically about missing\n> >>> python3 and missing python3-yaml. As specified by meson\n> >>> documentation: https://mesonbuild.com/Python-module.html,\n> >>> this change requires meson v0.51.\n> > \n> > How about this\n> > \n> > +# meson v0.51 is too new and not distributed\n> > +# by major distros. Let's take advantage of it\n> > +# optionally.\n> > +if meson.version().version_compare('>=0.51')\n> > +    py_mod = import('python')\n> > +    py_inst = py_mod.find_installation('python3', modules: ['yaml'])\n> \n> Do you need to assign the return value to a variable ?\n> \n> > +endif\n> > +\n> > \n> > ?\n> > \n> > Just to get the thing documented, we can drop the ifs\n> > once libcamera requires meson 0.51\n> \n> That looks better to me, but should be conditioned to the documentation\n> option being enabled.\n\nScratch this, I got it mixed in my head. This is unrelated to\ndocumentation. Your proposal looks good. We may want to already prepare\nfor additional modules with something along the lines of\n\n/meson.build:\n\n# Towards the beginning\n\npy_modules = []\n\n...\n\n# Towards the end\n\nif meson.version().version_compare('>=0.51')\n    py_mod = import('python')\n    py_mod.find_installation('python3', modules: py_modules)\nendif\n\n/src/libcamera/meson.build:\n\n...\npy_modules += ['yaml']\n...\n\nbut that could also be done later.\n\n> >> Neither Debian stable nor Ubuntu stable ship meson v0.51 or newer, so I\n> >> think this is a too strict requirement. There are useful features in\n> >> newer meson verions, but we want to keep libcamera easily buildable on\n> >> common distributions.\n> >> \n> >>> Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>\n> >>> ---\n> >>>  meson.build               | 2 +-\n> >>>  src/libcamera/meson.build | 3 +++\n> >>>  2 files changed, 4 insertions(+), 1 deletion(-)\n> >>> \n> >>> diff --git a/meson.build b/meson.build\n> >>> index 72ad7c8b493b..38c0f1d55b56 100644\n> >>> --- a/meson.build\n> >>> +++ b/meson.build\n> >>> @@ -1,5 +1,5 @@\n> >>>  project('libcamera', 'c', 'cpp',\n> >>> -    meson_version : '>= 0.40',\n> >>> +    meson_version : '>= 0.51',\n> >>>      version : '0.0.0',\n> >>>      default_options : [\n> >>>          'werror=true',\n> >>> diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\n> >>> index afbca76968f9..509499359cdb 100644\n> >>> --- a/src/libcamera/meson.build\n> >>> +++ b/src/libcamera/meson.build\n> >>> @@ -61,6 +61,9 @@ if libudev.found()\n> >>>      ])\n> >>>  endif\n> >>>  \n> >>> +py_mod = import('python')\n> >>> +py_inst = py_mod.find_installation('python3', modules: ['yaml'])\n> >>> +\n> >>>  gen_controls = files('gen-controls.py')\n> >>>  \n> >>>  control_ids_cpp = custom_target('control_ids_cpp',","headers":{"Return-Path":"<laurent.pinchart@ideasonboard.com>","Received":["from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id D064C60F1C\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 18 Nov 2019 20:02:03 +0100 (CET)","from pendragon.ideasonboard.com (unknown [38.98.37.142])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 82013311;\n\tMon, 18 Nov 2019 20:01:55 +0100 (CET)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1574103723;\n\tbh=kbGaUFsUcstB1G0NGDk/MHoxZ75M1kRafTS/xAQImB8=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=d4kbwhQ4nJbvFu0wsL6MEdUOl3phQt06Np/UK0ONkrPbr0MvHf1Cdrf5qywULPeKI\n\tDZNLILNPaX7a7D4/ovSKn0pFaqPNSR0W3TTkCCrxbTLxBtoLjEJrXt2iaXwQWmwvTU\n\tT4itMpc8An8MOq4ABGN68fB7cnsjtIzUD9lEOnq0=","Date":"Mon, 18 Nov 2019 21:01:41 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Ezequiel Garcia <ezequiel@collabora.com>","Cc":"libcamera-devel@lists.libcamera.org","Message-ID":"<20191118190141.GD4888@pendragon.ideasonboard.com>","References":"<20191115152342.27723-1-ezequiel@collabora.com>\n\t<20191115152342.27723-2-ezequiel@collabora.com>\n\t<20191118002622.GF4853@pendragon.ideasonboard.com>\n\t<29ccc859c2b37675c13fc4160ea60372c6e937d9.camel@collabora.com>\n\t<20191118185443.GC4888@pendragon.ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20191118185443.GC4888@pendragon.ideasonboard.com>","User-Agent":"Mutt/1.10.1 (2018-07-13)","Subject":"Re: [libcamera-devel] [PATCH 2/2] meson: Define python3 and\n\tpython3-yaml required dependencies","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","X-List-Received-Date":"Mon, 18 Nov 2019 19:02:04 -0000"}}]