[{"id":27311,"web_url":"https://patchwork.libcamera.org/comment/27311/","msgid":"<20230608144801.GT5058@pendragon.ideasonboard.com>","date":"2023-06-08T14:48:01","subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Jacopo,\n\nThank you for the patch.\n\nOn Thu, Jun 08, 2023 at 03:33:25PM +0200, Jacopo Mondi via libcamera-devel wrote:\n> From: Naushir Patuck <naush@raspberrypi.com>\n> \n> Pipeline handlers can have custom dependencies.\n> \n> Allow each pipeline handler subdir to add them to libcamera_deps[].\n\nI wonder how meson will handle the case where multiple pipeline handlers\nwill add the same dependency. Is this something you've tested ?\n\n> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>\n> Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>\n> ---\n>  src/libcamera/meson.build | 4 +++-\n>  1 file changed, 3 insertions(+), 1 deletion(-)\n> \n> diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\n> index d438504198fe..3cd424779395 100644\n> --- a/src/libcamera/meson.build\n> +++ b/src/libcamera/meson.build\n> @@ -58,6 +58,8 @@ includes = [\n>      libcamera_includes,\n>  ]\n> \n> +libcamera_deps = []\n> +\n>  libatomic = cc.find_library('atomic', required : false)\n>  libthreads = dependency('threads')\n> \n> @@ -154,7 +156,7 @@ if ipa_sign_module\n>      libcamera_sources += ipa_pub_key_cpp\n>  endif\n> \n> -libcamera_deps = [\n> +libcamera_deps += [\n>      libatomic,\n>      libcamera_base,\n>      libcamera_base_private,","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 910D1C31E9\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu,  8 Jun 2023 14:48:07 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id DA17F61E54;\n\tThu,  8 Jun 2023 16:48:06 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id DDD8C61E4F\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu,  8 Jun 2023 16:48:04 +0200 (CEST)","from pendragon.ideasonboard.com (om126033089000.35.openmobile.ne.jp\n\t[126.33.89.0])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 2D23E1AE;\n\tThu,  8 Jun 2023 16:47:36 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1686235686;\n\tbh=lIwcHIi821WlygUOGIOWVRPvnAfd1agBfjwnaCjLrzM=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=YuUqUw7ntSQ62bYQsiNwtCL0B4ifLKbW27WkrbQHJAyxAh4U29dtGqm6fvk/kphmC\n\tdyo8DeHZNXpoqP7+ll9GM2gvgla/Vi+VrIFgpsqkQmqygwIoK0eLCAlKTUXT+Aj0TL\n\tU1DC8Dh8YKCH9TmJAm9LNS+e4AHNT77V0+QKg917P4CprSnyQcxnkTaFLtC5Bo8Gxf\n\tad731qYTOvA/paaG4M7BEyQ5XUDSk0kfLtMSYi/zEaZIKP4yvdwU3J31AORBSzXSWU\n\t9SuAALxo2tWTwdSx61bV7dfJ75H8+gHvzsNYzNNp9Wa8Ck5T2WalUMuS5wWYDLkEYR\n\tOp1Ti2XGFx0TQ==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1686235658;\n\tbh=lIwcHIi821WlygUOGIOWVRPvnAfd1agBfjwnaCjLrzM=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=oia++gsjk51eYB80WI4QBnNhBzPkgccyaez2Y0YuJYvq8oHR7HPofigjNZrdx2B1W\n\tI1r5PXAr6SxEkUWLkeapvBS/5vvF1A4cph3gRGaCu0OPVomUsTkDDUJ5iu3nBepi5+\n\tidZPB3N/tqhpHhtKfQWYwTPDbe/AhkBiN8dh4TLk="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"oia++gsj\"; dkim-atps=neutral","Date":"Thu, 8 Jun 2023 17:48:01 +0300","To":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","Message-ID":"<20230608144801.GT5058@pendragon.ideasonboard.com>","References":"<20230608133325.68591-1-jacopo.mondi@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20230608133325.68591-1-jacopo.mondi@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","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>","From":"Laurent Pinchart via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":27342,"web_url":"https://patchwork.libcamera.org/comment/27342/","msgid":"<zprv72lzesv4uo4a4qmagzj3plcygpfn25zwa22g2tclzkb76j@plw55rakrnze>","date":"2023-06-14T11:45:38","subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","submitter":{"id":143,"url":"https://patchwork.libcamera.org/api/people/143/","name":"Jacopo Mondi","email":"jacopo.mondi@ideasonboard.com"},"content":"Hi Laurent\n\nOn Thu, Jun 08, 2023 at 05:48:01PM +0300, Laurent Pinchart wrote:\n> Hi Jacopo,\n>\n> Thank you for the patch.\n>\n> On Thu, Jun 08, 2023 at 03:33:25PM +0200, Jacopo Mondi via libcamera-devel wrote:\n> > From: Naushir Patuck <naush@raspberrypi.com>\n> >\n> > Pipeline handlers can have custom dependencies.\n> >\n> > Allow each pipeline handler subdir to add them to libcamera_deps[].\n>\n> I wonder how meson will handle the case where multiple pipeline handlers\n> will add the same dependency. Is this something you've tested ?\n>\n\nIt doesn't seem to bother meson at all\n\n--- a/src/libcamera/pipeline/rkisp1/meson.build\n+++ b/src/libcamera/pipeline/rkisp1/meson.build\n@@ -1,5 +1,6 @@\n # SPDX-License-Identifier: CC0-1.0\n\n+libcamera_deps += [ libatomic ]\n libcamera_sources += files([\n     'rkisp1.cpp',\n     'rkisp1_path.cpp',\ndiff --git a/src/libcamera/pipeline/rpi/meson.build b/src/libcamera/pipeline/rpi/meson.build\nindex 2391b6a9729e..b3febd9a90ad 100644\n--- a/src/libcamera/pipeline/rpi/meson.build\n+++ b/src/libcamera/pipeline/rpi/meson.build\n@@ -1,5 +1,7 @@\n # SPDX-License-Identifier: CC0-1.0\n\n+libcamera_deps += [ libatomic ]\n+\n subdir('common')\n\n\n    Enabled pipelines        : rpi/vc4\n                               rkisp1\n\nCompiles fine\n\n> > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>\n> > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>\n> > ---\n> >  src/libcamera/meson.build | 4 +++-\n> >  1 file changed, 3 insertions(+), 1 deletion(-)\n> >\n> > diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\n> > index d438504198fe..3cd424779395 100644\n> > --- a/src/libcamera/meson.build\n> > +++ b/src/libcamera/meson.build\n> > @@ -58,6 +58,8 @@ includes = [\n> >      libcamera_includes,\n> >  ]\n> >\n> > +libcamera_deps = []\n> > +\n> >  libatomic = cc.find_library('atomic', required : false)\n> >  libthreads = dependency('threads')\n> >\n> > @@ -154,7 +156,7 @@ if ipa_sign_module\n> >      libcamera_sources += ipa_pub_key_cpp\n> >  endif\n> >\n> > -libcamera_deps = [\n> > +libcamera_deps += [\n> >      libatomic,\n> >      libcamera_base,\n> >      libcamera_base_private,\n>\n> --\n> Regards,\n>\n> Laurent Pinchart","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 1E050C31E9\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 14 Jun 2023 11:45:44 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 77902628B6;\n\tWed, 14 Jun 2023 13:45:43 +0200 (CEST)","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 3222461E4A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 14 Jun 2023 13:45:42 +0200 (CEST)","from ideasonboard.com (unknown\n\t[IPv6:2001:b07:5d2e:52c9:72c3:346:a663:c82d])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 2734675A;\n\tWed, 14 Jun 2023 13:45:11 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1686743143;\n\tbh=DAM2xJiV9s6wdALQVAkVNFM4/wAiISu3lT48nHZwLfg=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=aT8psLP2nhHeaon9LscLfmXsOBZ16y8Xc+1oHaeocZMFhRPmvzd7satwjO7fqhX8y\n\tK90eDe4HtqwJ9laiLreBcLyQPF3beB/k8xKn0qUyShfas6YISL3xspr29A4+EupmFz\n\tTM5J88O2iCbkzFlfawzbd6tOAOG6b+npxsBrcxNwv2Gm0bFQ/qOaZhdKm2Fjm7WE1z\n\tQpu6nZ43MCRRbc3s0cLWUwJ3nBkINWYyJdLaKSt4Y4XtAVnv/LabPF9SB+t30vtcD8\n\tSsysfMv4auXIYUbIRNajqob1/hmqb1qsS/7aoJxjb+hgemksdA0PIHPVnbyEIJGG5x\n\tro+ro+Iow8Iuw==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1686743111;\n\tbh=DAM2xJiV9s6wdALQVAkVNFM4/wAiISu3lT48nHZwLfg=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=p6F3cjiDcZ3HT/TxEHQ6WwK8Vpw58aZSegT40xFUTRueT5PLPehGLZQjjZP/1+bKc\n\tHMExuEoJcuHovNXhvN4JjeuXmXCG8kspO22Ti8mCOmVpVbRrtP68by4qEjNUiszPoq\n\tx9g9x3FwDv4gZ6KySqXJGUBefG6+UknKq+2yLVHA="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"p6F3cjiD\"; dkim-atps=neutral","Date":"Wed, 14 Jun 2023 13:45:38 +0200","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Message-ID":"<zprv72lzesv4uo4a4qmagzj3plcygpfn25zwa22g2tclzkb76j@plw55rakrnze>","References":"<20230608133325.68591-1-jacopo.mondi@ideasonboard.com>\n\t<20230608144801.GT5058@pendragon.ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20230608144801.GT5058@pendragon.ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","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>","From":"Jacopo Mondi via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","Cc":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":27352,"web_url":"https://patchwork.libcamera.org/comment/27352/","msgid":"<168682736259.3585053.5794024107333331672@Monstersaurus>","date":"2023-06-15T11:09:22","subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Quoting Jacopo Mondi via libcamera-devel (2023-06-14 12:45:38)\n> Hi Laurent\n> \n> On Thu, Jun 08, 2023 at 05:48:01PM +0300, Laurent Pinchart wrote:\n> > Hi Jacopo,\n> >\n> > Thank you for the patch.\n> >\n> > On Thu, Jun 08, 2023 at 03:33:25PM +0200, Jacopo Mondi via libcamera-devel wrote:\n> > > From: Naushir Patuck <naush@raspberrypi.com>\n> > >\n> > > Pipeline handlers can have custom dependencies.\n> > >\n> > > Allow each pipeline handler subdir to add them to libcamera_deps[].\n> >\n> > I wonder how meson will handle the case where multiple pipeline handlers\n> > will add the same dependency. Is this something you've tested ?\n> >\n> \n> It doesn't seem to bother meson at all\n\nSeems reasonable to me:\n\n\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\n> \n> --- a/src/libcamera/pipeline/rkisp1/meson.build\n> +++ b/src/libcamera/pipeline/rkisp1/meson.build\n> @@ -1,5 +1,6 @@\n>  # SPDX-License-Identifier: CC0-1.0\n> \n> +libcamera_deps += [ libatomic ]\n>  libcamera_sources += files([\n>      'rkisp1.cpp',\n>      'rkisp1_path.cpp',\n> diff --git a/src/libcamera/pipeline/rpi/meson.build b/src/libcamera/pipeline/rpi/meson.build\n> index 2391b6a9729e..b3febd9a90ad 100644\n> --- a/src/libcamera/pipeline/rpi/meson.build\n> +++ b/src/libcamera/pipeline/rpi/meson.build\n> @@ -1,5 +1,7 @@\n>  # SPDX-License-Identifier: CC0-1.0\n> \n> +libcamera_deps += [ libatomic ]\n> +\n>  subdir('common')\n> \n> \n>     Enabled pipelines        : rpi/vc4\n>                                rkisp1\n> \n> Compiles fine\n> \n> > > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>\n> > > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>\n> > > ---\n> > >  src/libcamera/meson.build | 4 +++-\n> > >  1 file changed, 3 insertions(+), 1 deletion(-)\n> > >\n> > > diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\n> > > index d438504198fe..3cd424779395 100644\n> > > --- a/src/libcamera/meson.build\n> > > +++ b/src/libcamera/meson.build\n> > > @@ -58,6 +58,8 @@ includes = [\n> > >      libcamera_includes,\n> > >  ]\n> > >\n> > > +libcamera_deps = []\n> > > +\n> > >  libatomic = cc.find_library('atomic', required : false)\n> > >  libthreads = dependency('threads')\n> > >\n> > > @@ -154,7 +156,7 @@ if ipa_sign_module\n> > >      libcamera_sources += ipa_pub_key_cpp\n> > >  endif\n> > >\n> > > -libcamera_deps = [\n> > > +libcamera_deps += [\n> > >      libatomic,\n> > >      libcamera_base,\n> > >      libcamera_base_private,\n> >\n> > --\n> > Regards,\n> >\n> > Laurent Pinchart","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 080DAC322E\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 15 Jun 2023 11:09:28 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 7607B614FE;\n\tThu, 15 Jun 2023 13:09:27 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 39331614FE\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 15 Jun 2023 13:09:26 +0200 (CEST)","from pendragon.ideasonboard.com\n\t(aztw-30-b2-v4wan-166917-cust845.vm26.cable.virginm.net\n\t[82.37.23.78])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 9E454891;\n\tThu, 15 Jun 2023 13:08:54 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1686827367;\n\tbh=TnPxp92eIwW/YNedQRGHBAF2cBYicEQjPVGucj0wLVA=;\n\th=In-Reply-To:References:To:Date:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=FpB+8+gsVfBe2PEb9+U1/tJvOQl50z+FCeTOmAIbcP3OX+0ztfqiJi1NSWlgMrzJ0\n\t9y9eQvmEje8uCBwfN0t1WoYZSxfNLMTPFDIYQ50zsDa49MAgxvwui6CSgCMdOoWgUP\n\tM0TVRVgcIqSXqNJqDd/WnewQCMjKB63e3gybIyigc6NiKmK5R5D7NEwaDc3eVPZNxF\n\tW2/yI6V9L/XfVA9lSEruZPdoVjC4fYZ2wWkYYtMm3/BFmCDNw9ZxAMTTxJHt5zGCcR\n\tO8qnEcruNlIqxgARa1dpKCaf2NvJ1ToJHQRT6nodvPekujx91xN5ZIfYAv4UHasl3G\n\toCW17/l7bETAA==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1686827334;\n\tbh=TnPxp92eIwW/YNedQRGHBAF2cBYicEQjPVGucj0wLVA=;\n\th=In-Reply-To:References:Subject:From:Cc:To:Date:From;\n\tb=nlpfXEF8Vn1XFMR6F0PxyOmHtjAKc2eaLskV0ElqE9jTESlKa5D3AfDJI4L1bBIs4\n\twoNRPwYnJDNZW9QdWBIU2Epir2vT6mHS4kJ5C3J4DGDSvV6W0bu3TrQx8NIqvC09/Z\n\t8I4K/kTwMHKvMUFKxocJUpRvSB7xEtm2PnL5hi6E="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"nlpfXEF8\"; dkim-atps=neutral","Content-Type":"text/plain; charset=\"utf-8\"","MIME-Version":"1.0","Content-Transfer-Encoding":"quoted-printable","In-Reply-To":"<zprv72lzesv4uo4a4qmagzj3plcygpfn25zwa22g2tclzkb76j@plw55rakrnze>","References":"<20230608133325.68591-1-jacopo.mondi@ideasonboard.com>\n\t<20230608144801.GT5058@pendragon.ideasonboard.com>\n\t<zprv72lzesv4uo4a4qmagzj3plcygpfn25zwa22g2tclzkb76j@plw55rakrnze>","To":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>,\n\tJacopo Mondi via libcamera-devel <libcamera-devel@lists.libcamera.org>, \n\tLaurent Pinchart <laurent.pinchart@ideasonboard.com>","Date":"Thu, 15 Jun 2023 12:09:22 +0100","Message-ID":"<168682736259.3585053.5794024107333331672@Monstersaurus>","User-Agent":"alot/0.10","Subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","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>","From":"Kieran Bingham via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Cc":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":27389,"web_url":"https://patchwork.libcamera.org/comment/27389/","msgid":"<20230619094639.GA26993@pendragon.ideasonboard.com>","date":"2023-06-19T09:46:39","subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Jacopo,\n\nOn Wed, Jun 14, 2023 at 01:45:38PM +0200, Jacopo Mondi wrote:\n> On Thu, Jun 08, 2023 at 05:48:01PM +0300, Laurent Pinchart wrote:\n> > On Thu, Jun 08, 2023 at 03:33:25PM +0200, Jacopo Mondi via libcamera-devel wrote:\n> > > From: Naushir Patuck <naush@raspberrypi.com>\n> > >\n> > > Pipeline handlers can have custom dependencies.\n> > >\n> > > Allow each pipeline handler subdir to add them to libcamera_deps[].\n> >\n> > I wonder how meson will handle the case where multiple pipeline handlers\n> > will add the same dependency. Is this something you've tested ?\n> \n> It doesn't seem to bother meson at all\n> \n> --- a/src/libcamera/pipeline/rkisp1/meson.build\n> +++ b/src/libcamera/pipeline/rkisp1/meson.build\n> @@ -1,5 +1,6 @@\n>  # SPDX-License-Identifier: CC0-1.0\n> \n> +libcamera_deps += [ libatomic ]\n>  libcamera_sources += files([\n>      'rkisp1.cpp',\n>      'rkisp1_path.cpp',\n> diff --git a/src/libcamera/pipeline/rpi/meson.build b/src/libcamera/pipeline/rpi/meson.build\n> index 2391b6a9729e..b3febd9a90ad 100644\n> --- a/src/libcamera/pipeline/rpi/meson.build\n> +++ b/src/libcamera/pipeline/rpi/meson.build\n> @@ -1,5 +1,7 @@\n>  # SPDX-License-Identifier: CC0-1.0\n> \n> +libcamera_deps += [ libatomic ]\n> +\n>  subdir('common')\n> \n> \n>     Enabled pipelines        : rpi/vc4\n>                                rkisp1\n> \n> Compiles fine\n\nShould be fine then.\n\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\nI wonder if meson ends up adding -latomic twice on the command line.\n\n> > > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>\n> > > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>\n> > > ---\n> > >  src/libcamera/meson.build | 4 +++-\n> > >  1 file changed, 3 insertions(+), 1 deletion(-)\n> > >\n> > > diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\n> > > index d438504198fe..3cd424779395 100644\n> > > --- a/src/libcamera/meson.build\n> > > +++ b/src/libcamera/meson.build\n> > > @@ -58,6 +58,8 @@ includes = [\n> > >      libcamera_includes,\n> > >  ]\n> > >\n> > > +libcamera_deps = []\n> > > +\n> > >  libatomic = cc.find_library('atomic', required : false)\n> > >  libthreads = dependency('threads')\n> > >\n> > > @@ -154,7 +156,7 @@ if ipa_sign_module\n> > >      libcamera_sources += ipa_pub_key_cpp\n> > >  endif\n> > >\n> > > -libcamera_deps = [\n> > > +libcamera_deps += [\n> > >      libatomic,\n> > >      libcamera_base,\n> > >      libcamera_base_private,","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 4823ABD78E\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 19 Jun 2023 09:46:41 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 4CE31628C3;\n\tMon, 19 Jun 2023 11:46:40 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 7A02B614FD\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 19 Jun 2023 11:46:39 +0200 (CEST)","from pendragon.ideasonboard.com (213-243-189-158.bb.dnainternet.fi\n\t[213.243.189.158])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 4D5E3FB;\n\tMon, 19 Jun 2023 11:46:05 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1687168000;\n\tbh=aJ0HSdN3BDqFPx/NmLFr6va1PLHnVm2pgLuwPL6j5fk=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=Cu6if+MVMePGINTeuLufHX5HCi7+dwUPqULH2nl0CpYnwWJSHAVEh5IHwfmPMpVsA\n\tjU73qe1mC0ZOzahC+v5FIB22vNYV/qG2jiqbTKypDy9EAmDUb8BjG0GWB/o4LLBVI6\n\tCWmdeU3C8nRdyl95FK8UBNvINpNophiwQk4jo3ltbxPwsjbcEORjbqkKzwp5jYvI5C\n\tDIPvGzdQpeInt8KVK7bcasys96vGVA1XB9a4RkqmC8vo4I/fKbk8rt29bskMaWfdPk\n\tT/r8QWA7w6au6aTxCEoCHMSE4hsVhJpGrWsfix5hPv6aFoYLuHD4y6QiViRbfhX96D\n\tsB4vlI2cOo7qA==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1687167965;\n\tbh=aJ0HSdN3BDqFPx/NmLFr6va1PLHnVm2pgLuwPL6j5fk=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=M51+1xwiC49pXyi4TGC6fO2c12fzBMXAr5xrjnQQW89aa1YrlO4C+A9Eb8eQbj+Fo\n\tb6QyPtDgyMAZlODIhqvupVgOEjPC8H4k6pefEXbMf1ZE/zdEBxveYvXJ8hMEov+VIG\n\thaYx1TjClSVnUhlZpry9qSJs6fOWDBZTQ0XgPRTU="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"M51+1xwi\"; dkim-atps=neutral","Date":"Mon, 19 Jun 2023 12:46:39 +0300","To":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","Message-ID":"<20230619094639.GA26993@pendragon.ideasonboard.com>","References":"<20230608133325.68591-1-jacopo.mondi@ideasonboard.com>\n\t<20230608144801.GT5058@pendragon.ideasonboard.com>\n\t<zprv72lzesv4uo4a4qmagzj3plcygpfn25zwa22g2tclzkb76j@plw55rakrnze>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<zprv72lzesv4uo4a4qmagzj3plcygpfn25zwa22g2tclzkb76j@plw55rakrnze>","Subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","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>","From":"Laurent Pinchart via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":27390,"web_url":"https://patchwork.libcamera.org/comment/27390/","msgid":"<zle2fk5dqyhlq2k2wwf4ud7wuzi6kydezujw2h5k7duqfzc6wu@x5witgik6d7v>","date":"2023-06-19T09:54:21","subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","submitter":{"id":143,"url":"https://patchwork.libcamera.org/api/people/143/","name":"Jacopo Mondi","email":"jacopo.mondi@ideasonboard.com"},"content":"Hi Laurent\n\nOn Mon, Jun 19, 2023 at 12:46:39PM +0300, Laurent Pinchart wrote:\n> Hi Jacopo,\n>\n> On Wed, Jun 14, 2023 at 01:45:38PM +0200, Jacopo Mondi wrote:\n> > On Thu, Jun 08, 2023 at 05:48:01PM +0300, Laurent Pinchart wrote:\n> > > On Thu, Jun 08, 2023 at 03:33:25PM +0200, Jacopo Mondi via libcamera-devel wrote:\n> > > > From: Naushir Patuck <naush@raspberrypi.com>\n> > > >\n> > > > Pipeline handlers can have custom dependencies.\n> > > >\n> > > > Allow each pipeline handler subdir to add them to libcamera_deps[].\n> > >\n> > > I wonder how meson will handle the case where multiple pipeline handlers\n> > > will add the same dependency. Is this something you've tested ?\n> >\n> > It doesn't seem to bother meson at all\n> >\n> > --- a/src/libcamera/pipeline/rkisp1/meson.build\n> > +++ b/src/libcamera/pipeline/rkisp1/meson.build\n> > @@ -1,5 +1,6 @@\n> >  # SPDX-License-Identifier: CC0-1.0\n> >\n> > +libcamera_deps += [ libatomic ]\n> >  libcamera_sources += files([\n> >      'rkisp1.cpp',\n> >      'rkisp1_path.cpp',\n> > diff --git a/src/libcamera/pipeline/rpi/meson.build b/src/libcamera/pipeline/rpi/meson.build\n> > index 2391b6a9729e..b3febd9a90ad 100644\n> > --- a/src/libcamera/pipeline/rpi/meson.build\n> > +++ b/src/libcamera/pipeline/rpi/meson.build\n> > @@ -1,5 +1,7 @@\n> >  # SPDX-License-Identifier: CC0-1.0\n> >\n> > +libcamera_deps += [ libatomic ]\n> > +\n> >  subdir('common')\n> >\n> >\n> >     Enabled pipelines        : rpi/vc4\n> >                                rkisp1\n> >\n> > Compiles fine\n>\n> Should be fine then.\n>\n> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n>\n> I wonder if meson ends up adding -latomic twice on the command line.\n\nApparently it does not. I'm surprised as well by meson's smartness in\nthis case\n\n[23/108] c++  -o src/libcamera/base/libcamera-base.so.0.0.5 src/libcamera/base/libcamera-base.so.0.0.5.p/backtrace.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/class.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/bound_method.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/event_dispatcher.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/event_dispatcher_poll.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/event_notifier.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/file.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/flags.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/log.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/message.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/mutex.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/object.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/semaphore.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/shared_fd.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/signal.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/thread.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/timer.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/unique_fd.cpp.o src/libcamera/base/libcamera-base.so.0.0.5.p/utils.cpp.o -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,--start-group -Wl,-soname,libcamera-base.so.0.0.5 -Wno-redundant-move -Wshadow -include /libcamera/libcamera.git/build/config.h -latomic /usr/lib/libdw.so /usr/lib/libelf.so -pthread /usr/lib/libunwind.so -Wl,--end-group\n\n\n>\n> > > > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>\n> > > > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>\n> > > > ---\n> > > >  src/libcamera/meson.build | 4 +++-\n> > > >  1 file changed, 3 insertions(+), 1 deletion(-)\n> > > >\n> > > > diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\n> > > > index d438504198fe..3cd424779395 100644\n> > > > --- a/src/libcamera/meson.build\n> > > > +++ b/src/libcamera/meson.build\n> > > > @@ -58,6 +58,8 @@ includes = [\n> > > >      libcamera_includes,\n> > > >  ]\n> > > >\n> > > > +libcamera_deps = []\n> > > > +\n> > > >  libatomic = cc.find_library('atomic', required : false)\n> > > >  libthreads = dependency('threads')\n> > > >\n> > > > @@ -154,7 +156,7 @@ if ipa_sign_module\n> > > >      libcamera_sources += ipa_pub_key_cpp\n> > > >  endif\n> > > >\n> > > > -libcamera_deps = [\n> > > > +libcamera_deps += [\n> > > >      libatomic,\n> > > >      libcamera_base,\n> > > >      libcamera_base_private,\n>\n> --\n> Regards,\n>\n> Laurent Pinchart","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 471D0C3237\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 19 Jun 2023 09:54:27 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id AC382628C3;\n\tMon, 19 Jun 2023 11:54:26 +0200 (CEST)","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 EF08C614FD\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 19 Jun 2023 11:54:25 +0200 (CEST)","from ideasonboard.com (unknown\n\t[IPv6:2001:b07:5d2e:52c9:72c3:346:a663:c82d])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id B4C87FB;\n\tMon, 19 Jun 2023 11:53:51 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1687168466;\n\tbh=fy97W59kpIeaGQzKZWpShpYWan0NdfeDHtQwIYpbKdM=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=IAvHZMwTARW/V1n25Ul0rYBK6BdmWqg8VL+SfMdNjo3yGVWsaf9q1kqvhC1gRyrK8\n\t76jUfr7+29gMEtl78Ig30IaARH5/o5fbHQHDsZOztOvI+XyvhUrd2uXHP0kTQf69+V\n\tALm1eLzMnPHwckSrtVSGbBQ2Up8XzYq6xgMjjCwvqF9A3F6etDuLfK6EC6MtccS0fk\n\t3IJHlLBTbso73ok+GMok5rqfhpAJPnHag7Tc+o3fh+IlFE2UnF3r78o8FV9xZ78Ei+\n\tVDgXXtiSrVJch0l4IX59QudUHXKNqyN5z/fXg8+7qpcLVKK/D98aWDS+UMRpg5fFae\n\tRXEhZQy+5Mreg==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1687168431;\n\tbh=fy97W59kpIeaGQzKZWpShpYWan0NdfeDHtQwIYpbKdM=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=i7EamdmgdlU9k4i5avSZUZ+oxwHKyLgD+M1sg0dmRlcpG34HXU/Lz2io/DJ7eRRhN\n\tEtDBcfOah0PWY4GGV5czondGPZAoUE7ohuuKnqot0rCUIO6rRaWb+NxH2RcyK8EIvh\n\twuEEqAXwg5IFfg/tZN8GDgREh+DPv/mwBhRtMW2w="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"i7Eamdmg\"; dkim-atps=neutral","Date":"Mon, 19 Jun 2023 11:54:21 +0200","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Message-ID":"<zle2fk5dqyhlq2k2wwf4ud7wuzi6kydezujw2h5k7duqfzc6wu@x5witgik6d7v>","References":"<20230608133325.68591-1-jacopo.mondi@ideasonboard.com>\n\t<20230608144801.GT5058@pendragon.ideasonboard.com>\n\t<zprv72lzesv4uo4a4qmagzj3plcygpfn25zwa22g2tclzkb76j@plw55rakrnze>\n\t<20230619094639.GA26993@pendragon.ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"quoted-printable","In-Reply-To":"<20230619094639.GA26993@pendragon.ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] libcamera: meson: Allow PH to change\n\tlibcamera_deps","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>","From":"Jacopo Mondi via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","Cc":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]