[{"id":27456,"web_url":"https://patchwork.libcamera.org/comment/27456/","msgid":"<20230704091139.GB16250@pendragon.ideasonboard.com>","date":"2023-07-04T09:11:39","subject":"Re: [libcamera-devel] [PATCH v2 2/2] meson: Use x.y soname\n\tversioning","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Kieran,\n\nThank you for the patch.\n\nOn Mon, May 15, 2023 at 10:58:12AM +0100, Kieran Bingham via libcamera-devel wrote:\n> Now that we identify ABI breakages, provide incremental releases which\n> can support backwards compatible linkage across release points that have\n> a compatible ABI.\n> \n> Introduction of this commit does not convey that libcamera now has a\n> stable API, but that patch releases with a common minor number\n> (0.minor.patch) may potentially be used by applications without\n> recompilation and linkage against new releases.\n> \n> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\n> ---\n>  meson.build | 10 ++++------\n>  1 file changed, 4 insertions(+), 6 deletions(-)\n> \n> diff --git a/meson.build b/meson.build\n> index e1fd924307f7..9c1e708131eb 100644\n> --- a/meson.build\n> +++ b/meson.build\n> @@ -56,15 +56,13 @@ if libcamera_version != project_version\n>      libcamera_git_version += '-nvm'\n>  endif\n>  \n> -# Until we make ABI compatible releases, the full libcamera version is used as\n> -# the soname. No ABI/API compatibility is guaranteed between releases (x.y.z).\n> -#\n> -# When automatic ABI based detection is used to increment the version, this\n> -# will bump the minor number (x.y).\n> +# The major and minor libcamera version components are used as the soname.\n> +# No ABI/API compatibility is guaranteed between releases (x.y).\n>  #\n>  # When we declare a stable ABI/API we will provide a 1.0 release and the\n>  # soversion at that point will be the 'major' release value (x).\n> -libcamera_soversion = libcamera_version\n> +semver = libcamera_version.split('.')\n> +libcamera_soversion = semver[0] + '.' + semver[1]\n>  \n>  summary({ 'Sources': libcamera_git_version, }, section : 'Versions')\n>","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 CF89FBE175\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue,  4 Jul 2023 09:11:41 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 37B05628BD;\n\tTue,  4 Jul 2023 11:11:41 +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 3455E61E36\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  4 Jul 2023 11:11:39 +0200 (CEST)","from pendragon.ideasonboard.com (85-160-42-71.reb.o2.cz\n\t[85.160.42.71])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 02A7BD4A;\n\tTue,  4 Jul 2023 11:10:54 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1688461901;\n\tbh=MD6uqbWEjll6Oh9y77UJv+Xhv+TpT8vzDdAXgPLbB14=;\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=LsYhwJPRj7xiOXvCgOYPCjqnd+sBmajxErtuIQjRG4Ewoj6pQ+H0hDaIJE23OI00k\n\tMtEGKWnxwl7h/qSdgHNCxx3TROn3GPfdqMAwq257NrCNlCL1Z7EmGLG+A5GVw/1dwc\n\t1aOXx6/m2uW+a3DrYw4oDhj59Z4oi4RnPTDci6PMhPmnhW7rdfaybGkvoNVK+OJRgS\n\tuVRODdXZR7nIOtVcsPySCFm5EuOINiULwasyo4HfTaG3ysZc8Sz30DaptOm/6+7I9s\n\tedrgsPVgbd59BlF4CtMjG2jIUmJciEcpZST1hpPZd5+s/MFTS6cRRIH2nHKde4VFYW\n\thtQVq8hzujMAg==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1688461855;\n\tbh=MD6uqbWEjll6Oh9y77UJv+Xhv+TpT8vzDdAXgPLbB14=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=XvHS3QsW+nF/er9Y+EiS6JZdvUo/UD2rLXey2WMZ+V8H6Ft909/2Dy0i6IERf5LGn\n\tTz7fZvxDKK4ycwURklRkeMjkLKI2B6j6+MIFrUpXCUlbSn2J1W8IuYHfyMlxKKBMmJ\n\tRnv179YxP7fDzAl9ZY8UyjEiHJVTEbjpVMnlWfyg="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"XvHS3QsW\"; dkim-atps=neutral","Date":"Tue, 4 Jul 2023 12:11:39 +0300","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Message-ID":"<20230704091139.GB16250@pendragon.ideasonboard.com>","References":"<20230515095812.3409747-1-kieran.bingham@ideasonboard.com>\n\t<20230515095812.3409747-3-kieran.bingham@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20230515095812.3409747-3-kieran.bingham@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH v2 2/2] meson: Use x.y soname\n\tversioning","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 <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]