Patch Detail
Show a patch.
GET /api/patches/17478/?format=api
{ "id": 17478, "url": "https://patchwork.libcamera.org/api/patches/17478/?format=api", "web_url": "https://patchwork.libcamera.org/patch/17478/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/projects/1/?format=api", "name": "libcamera", "link_name": "libcamera", "list_id": "libcamera_core", "list_email": "libcamera-devel@lists.libcamera.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20220930232826.82753-3-kieran.bingham@ideasonboard.com>", "date": "2022-09-30T23:28:23", "name": "[libcamera-devel,v2,2/5] meson: Shared Object version handling", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "d03ed0e29688e72d1954284a47b379ffa3bca3ad", "submitter": { "id": 4, "url": "https://patchwork.libcamera.org/api/people/4/?format=api", "name": "Kieran Bingham", "email": "kieran.bingham@ideasonboard.com" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/17478/mbox/", "series": [ { "id": 3521, "url": "https://patchwork.libcamera.org/api/series/3521/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=3521", "date": "2022-09-30T23:28:21", "name": "Add release infrastructure", "version": 2, "mbox": "https://patchwork.libcamera.org/series/3521/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/17478/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/17478/checks/", "tags": {}, "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 B4586BD16B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 30 Sep 2022 23:28:39 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 57D2362855;\n\tSat, 1 Oct 2022 01:28:37 +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 7BFA862854\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 1 Oct 2022 01:28:35 +0200 (CEST)", "from Monstersaurus.local\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id E7E6AD97;\n\tSat, 1 Oct 2022 01:28:34 +0200 (CEST)" ], "DKIM-Signature": [ "v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1664580517;\n\tbh=dTWMzveiXxXcBtahVhGqUKVibadgQsVcDDKnP4WUY1w=;\n\th=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:\n\tFrom;\n\tb=2wwir/bH7l5wSLx3kqbSyo5HvmCrobAiS3i063pT0+ZAUhkp6iwFVKxctqLKSJx8T\n\t1WKZndVS9g1IxHPusAPyEtqIvyxCH2oddRo3feKwNf8a2Rsh9rP4gXY8chqWTmLJNu\n\tAlXFcioHY8LvIMtzzvQVzPGSBaFMO1YjcdlUNx9LZqTKFc765zp4OVX/SsrWg7LKDR\n\theXkY2z6gHkZMV63c9u5yt3WfJASExSiFrQI4CMeoYuDSyZouizCRppEb3dMIFppQ0\n\t3kImPl1cmHVoyVJCWzkpA8H7OSGMRRAYdo/u/7PtYZmkg4MhMXW4yVA/xODY0IfV4D\n\tt8MLRTaG1zIZw==", "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1664580515;\n\tbh=dTWMzveiXxXcBtahVhGqUKVibadgQsVcDDKnP4WUY1w=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=hugm8HJzdVW7IwpQPDVBlhgbUKtb9DMYuw09F5gRsgXqnlMwfjccV2b9RzhGvdt+H\n\tQwVIlIMiMQNO5q8YYtnt2mtnglCenmo8cDppaE54X9hW0GLjWQGgUZd4J8wnmKw8Tx\n\tMPwnuJEAZfDqYK0nlZmW4L67HVhS1OdqgPm1QQXo=" ], "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"hugm8HJz\"; dkim-atps=neutral", "To": "libcamera devel <libcamera-devel@lists.libcamera.org>", "Date": "Sat, 1 Oct 2022 00:28:23 +0100", "Message-Id": "<20220930232826.82753-3-kieran.bingham@ideasonboard.com>", "X-Mailer": "git-send-email 2.34.1", "In-Reply-To": "<20220930232826.82753-1-kieran.bingham@ideasonboard.com>", "References": "<20220930232826.82753-1-kieran.bingham@ideasonboard.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Subject": "[libcamera-devel] [PATCH v2 2/5] meson: Shared Object version\n\thandling", "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>", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "The libcamera project is not yet ready to declare ABI nor API stability,\nbut it will benefit the community to be able to provide more regular\nrelease cycles to determine 'versioned' points of history.\n\nIdeally, these releases will be made at any ABI breakage, but can be\nmade at arbitary time based points along the way.\n\nTo support releases which may not be ABI stable, declare the soversion\nof both the libcamera and libcamera-base library to be dependant upon\nboth the major and minor component of the project version.\n\nAs part of this, introduce a new 'Versions' summary section to highlight\nthe different version components that may become apparent within any\ngiven build.\n\nReviewed-by: Jacopo Mondi <jacopo@jmondi.org>\nSigned-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n---\n Documentation/Doxyfile.in | 4 +++-\n meson.build | 15 +++++++++++++++\n src/libcamera/base/meson.build | 1 +\n src/libcamera/meson.build | 1 +\n 4 files changed, 20 insertions(+), 1 deletion(-)", "diff": "diff --git a/Documentation/Doxyfile.in b/Documentation/Doxyfile.in\nindex 88dfcddaebf6..761807005294 100644\n--- a/Documentation/Doxyfile.in\n+++ b/Documentation/Doxyfile.in\n@@ -46,7 +46,9 @@ EXCLUDE = @TOP_SRCDIR@/include/libcamera/base/span.h \\\n @TOP_BUILDDIR@/include/libcamera/internal/tracepoints.h \\\n @TOP_BUILDDIR@/src/libcamera/proxy/\n \n-EXCLUDE_PATTERNS = @TOP_BUILDDIR@/include/libcamera/ipa/*_serializer.h \\\n+EXCLUDE_PATTERNS = @TOP_BUILDDIR@/src/libcamera/libcamera.so* \\\n+ @TOP_BUILDDIR@/src/libcamera/base/libcamera-base.so* \\\n+ @TOP_BUILDDIR@/include/libcamera/ipa/*_serializer.h \\\n @TOP_BUILDDIR@/include/libcamera/ipa/*_proxy.h \\\n @TOP_BUILDDIR@/include/libcamera/ipa/ipu3_*.h \\\n @TOP_BUILDDIR@/include/libcamera/ipa/raspberrypi_*.h \\\ndiff --git a/meson.build b/meson.build\nindex 2c6173b4f97e..2a7b90133bbd 100644\n--- a/meson.build\n+++ b/meson.build\n@@ -26,6 +26,21 @@ endif\n \n libcamera_version = libcamera_git_version.split('+')[0]\n \n+# Enforce Major and Minor as part of the soversion. Until we make a first major\n+# release and remain on version 0.x, each release may denote ABI instabilty.\n+# We can continue to consider that a patch level increment should be\n+# compatible.\n+project_version = meson.project_version().split('.')\n+libcamera_soversion = project_version[0] + '.' + project_version[1]\n+\n+summary({\n+ 'Project': meson.project_version(),\n+ 'Sources': libcamera_git_version,\n+ 'libcamera': libcamera_version,\n+ 'soname': libcamera_soversion,\n+ },\n+ section : 'Versions')\n+\n # This script generates the .tarball-version file on a 'meson dist' command.\n meson.add_dist_script('utils/run-dist.sh')\n \ndiff --git a/src/libcamera/base/meson.build b/src/libcamera/base/meson.build\nindex 3b9d74efe935..65933905a5df 100644\n--- a/src/libcamera/base/meson.build\n+++ b/src/libcamera/base/meson.build\n@@ -51,6 +51,7 @@ libcamera_base_args = [ '-DLIBCAMERA_BASE_PRIVATE' ]\n libcamera_base_lib = shared_library('libcamera-base',\n [libcamera_base_sources, libcamera_base_headers],\n version : libcamera_version,\n+ soversion : libcamera_soversion,\n name_prefix : '',\n install : true,\n cpp_args : libcamera_base_args,\ndiff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\nindex 63b47b177fd2..f905c15ece85 100644\n--- a/src/libcamera/meson.build\n+++ b/src/libcamera/meson.build\n@@ -160,6 +160,7 @@ libcamera_deps = [\n libcamera = shared_library('libcamera',\n libcamera_sources,\n version : libcamera_version,\n+ soversion : libcamera_soversion,\n name_prefix : '',\n install : true,\n include_directories : includes,\n", "prefixes": [ "libcamera-devel", "v2", "2/5" ] }