Patch Detail
Show a patch.
GET /api/patches/17901/?format=api
{ "id": 17901, "url": "https://patchwork.libcamera.org/api/patches/17901/?format=api", "web_url": "https://patchwork.libcamera.org/patch/17901/", "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": "<20221127230110.192298-1-Rauch.Christian@gmx.de>", "date": "2022-11-27T23:01:10", "name": "[libcamera-devel] meson: Use library() in order to let user chose the library type", "commit_ref": null, "pull_url": null, "state": "changes-requested", "archived": false, "hash": "2ecd71b48dc8a4e627af53894429978088769320", "submitter": { "id": 111, "url": "https://patchwork.libcamera.org/api/people/111/?format=api", "name": "Christian Rauch", "email": "Rauch.Christian@gmx.de" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/17901/mbox/", "series": [ { "id": 3644, "url": "https://patchwork.libcamera.org/api/series/3644/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=3644", "date": "2022-11-27T23:01:10", "name": "[libcamera-devel] meson: Use library() in order to let user chose the library type", "version": 1, "mbox": "https://patchwork.libcamera.org/series/3644/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/17901/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/17901/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 54804BE08B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSun, 27 Nov 2022 23:01:16 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 9A7C863335;\n\tMon, 28 Nov 2022 00:01:15 +0100 (CET)", "from mout.gmx.net (mout.gmx.net [212.227.15.19])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 6A7C661F26\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 28 Nov 2022 00:01:13 +0100 (CET)", "from voyager ([88.152.184.103]) by mail.gmx.net (mrgmx005\n\t[212.227.17.190]) with ESMTPSA (Nemesis) id 1Mo6qv-1oee4h3zad-00pZYk;\n\tMon, 28 Nov 2022 00:01:13 +0100" ], "DKIM-Signature": [ "v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1669590075;\n\tbh=xXAGUgTENEYxwdjvgYHrAuTjkEI/9XLuA/kiMh6okmQ=;\n\th=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:From;\n\tb=dstdzU+wNPc7N8Op6e1fmt40HvOMwaQX2LmJ0dLhLXBQgO/vZwoOzIABZOv6cW0RK\n\trZBuGlFgcc8x28yNv4OYCLGYxn7ye0TcpmtKNCacqVrXJoa6G1J0GiQ5M0QiA1etZi\n\tty2Zy1/2slVQsA59WrWeTSRkvw5Pm1E2dI1uUQBO5bnv3jsnde1bIW7FBcy37RtQxz\n\tWgdANkQsOZmDOXYeXYuZvoERkQ4CsKlGcqykELS3aKvgpqfX8VHW9mrudYhp3Uz6RL\n\tVnYQBb1UQEoScUUaL8Mf9vyKaw3/qKhCPQF/MqNw2Z34Yx1G/kFMwvhDdzZOvDPvPE\n\tEiXbrqCPk8PsA==", "v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; \n\tt=1669590073; bh=xXAGUgTENEYxwdjvgYHrAuTjkEI/9XLuA/kiMh6okmQ=;\n\th=X-UI-Sender-Class:From:To:Cc:Subject:Date;\n\tb=gV3qiJXa+vJ0DUrGLtSR0sa2cyCwEgrmxoyViA0WqCYZY7zGLBQt2a4a8Ygflzv/S\n\tZfqFm1ENvp/TFnBspwsKHimOu8NoZ1sIm8sD0POo7ZRmmhSnhjiUlR1W0Edn/w2X71\n\tPKyrNSBm5HPjmdTK39e4WzomqDdZXhFlUgDzH3oNXXmZV70cf5r3eueuoW9oU1oDZA\n\tI3rFCTCjX5FozdBZMG2Z6vkZInHIjW2uKQBvEPL/CklgiTVNeAP6I5kDwzu81Cg0tP\n\tQErnZAIyt6mnQZLX2B1BJPtejA/X9StkQFhIZsPVN/1+gqoM9vJip1N5uR8wrb34pI\n\tq5Z5atK8EXr9w==" ], "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=gmx.de header.i=@gmx.de\n\theader.b=\"gV3qiJXa\"; dkim-atps=neutral", "X-UI-Sender-Class": "724b4f7f-cbec-4199-ad4e-598c01a50d3a", "To": "libcamera-devel@lists.libcamera.org", "Date": "Mon, 28 Nov 2022 00:01:10 +0100", "Message-Id": "<20221127230110.192298-1-Rauch.Christian@gmx.de>", "X-Mailer": "git-send-email 2.34.1", "MIME-Version": "1.0", "Content-Transfer-Encoding": "quoted-printable", "X-Provags-ID": "V03:K1:X0xGvLDGf48bQAKB2KUIsXrWMiDTTQmPAIWz5wp4lgro3IoT3ZT\n\tkJnEz7scT4Ls/ccll8vdVmUASJCg1uzYrMWUNXnGWAGi4LCzjPO2wV7TxN5/1UnZGPHgYSt\n\t3R7qzX3ArsVK6ugqHtv/3yUZ8eaB8hX7FMErf2v4zE50/8KklpePrB6kxspDAHlUboMm2wR\n\tVo1ZXpGN/p5EIKVxR5oTQ==", "X-Spam-Flag": "NO", "UI-OutboundReport": "notjunk:1; M01:P0:llp1jIw+CWE=;\n\tfG6W9q68HdeDJ+U7B/YlJF9FWqB\n\t5sJi9M4GV9tkysAU9b3PeatErQOjRVxGIz6WCQTgf3mGuga9INow/GFu6SAMfBbzWLNCBlhmb\n\tjtAnQF3TYkA8LD8MqJLsoMvm3YukSimIBX2Th1Ovh/xgINxKGrxEhIzHkD+vy4zdDwd6IZHys\n\tMQeotxWxYePhoBwpYt97GH5fo9tr+5ujuhuKOYiqt+n0ua/Pa90IetrqUcKuTSpQ65f23XK1C\n\t6M0BNwcpDaEbXX/fSe+Nz6uQkratV1udJkr15KUClKM2vOBA4ZJ/U/w010P3CCl9yYPn2tHUx\n\tSf3nRRU4AcaDJ4U9dYCNUC2kOBFC0jAOwM61cRhEwImZk5YMiYA05fZ/v2BMWR6Nl6VL55PRi\n\tW4wpyGca02SKepKRH5p2DWl08Z8SoUWPfLfoR7mVE/eGE+w6+3LW/t3Mj1cLw4Szenk+r65Vn\n\to/Gqef+2PWMvA6YQOkshP7UuH6hy+pjmaewAmG6C/q5QjcnadjLG3LoUSuwrfPEzwefN3bjat\n\tkueoW4Kbunr0zSfAIclMjp4QJ8IyfPXacikSlgpQr5DZxwhvlLFWKE+OgDVxU/0g+qjSlO+GV\n\teJscCGF8cAQIA2n5+X37SvGJsR0yNcpgNYj1bP4hqj7AQD2aMhLKZUv3GUgZ/alKD70Oi5GzG\n\tCAwFrs5z13BJtNJu+oJES4mBWFtF75AuPFsdWWJCsZV0O07uLzPTlSXepqUFboU6r+IqjVnA5\n\ttiibYWCBa2BqQiXWfYsrlE5LEjDUttNf/InBCHPUDUbhc87XhT0l5Ir+GVbDiebH86E6SiIHo\n\t0JwMw8P9sKeuMhobXZ/cQMt4o9tymYfFG340/Ca+dyq/1U3lSVoUhAVtnJV+4GcmqO5ZTkylL\n\tPXEoSNwnGlQo5rbr55hktxrKeflwG0Pc9fbAfimPIQk+YKe5COwRNqT/hLgo2GACcIzaR+Fjp\n\tqZgy4GcdRDw4rXtnpYELrfSz9ko=", "Subject": "[libcamera-devel] [PATCH] meson: Use library() in order to let user\n\tchose the library type", "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": "Christian Rauch via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>", "Reply-To": "Christian Rauch <Rauch.Christian@gmx.de>", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "Defining libraries via shared_library() prevents compiling libcamera as\nstatic library. The meson project recommends using library() instead of\nshared_library(), static_library() or both_libraries():\nhttps://mesonbuild.com/Reference-manual_functions.html#library\n\nSigned-off-by: Christian Rauch <Rauch.Christian@gmx.de>\n---\n src/android/meson.build | 16 ++++++++--------\n src/gstreamer/meson.build | 2 +-\n src/libcamera/base/meson.build | 18 +++++++++---------\n src/libcamera/meson.build | 18 +++++++++---------\n src/v4l2/meson.build | 12 ++++++------\n 5 files changed, 33 insertions(+), 33 deletions(-)\n\n--\n2.34.1", "diff": "diff --git a/src/android/meson.build b/src/android/meson.build\nindex 1bba54de..51b365e3 100644\n--- a/src/android/meson.build\n+++ b/src/android/meson.build\n@@ -67,11 +67,11 @@ android_camera_metadata = static_library('camera_metadata',\n c_args : '-Wno-shadow',\n include_directories : android_includes)\n\n-libcamera_hal = shared_library('libcamera-hal',\n- android_hal_sources,\n- name_prefix : '',\n- link_with : android_camera_metadata,\n- install : true,\n- cpp_args : android_cpp_args,\n- include_directories : android_includes,\n- dependencies : android_deps)\n+libcamera_hal = library('libcamera-hal',\n+ android_hal_sources,\n+ name_prefix : '',\n+ link_with : android_camera_metadata,\n+ install : true,\n+ cpp_args : android_cpp_args,\n+ include_directories : android_includes,\n+ dependencies : android_deps)\ndiff --git a/src/gstreamer/meson.build b/src/gstreamer/meson.build\nindex eda246d7..b364837d 100644\n--- a/src/gstreamer/meson.build\n+++ b/src/gstreamer/meson.build\n@@ -39,7 +39,7 @@ if cc.get_id() == 'clang' and glib_dep.version().version_compare('<2.63.0')\n libcamera_gst_cpp_args += ['-Wno-unused-function']\n endif\n\n-libcamera_gst = shared_library('gstlibcamera',\n+libcamera_gst = library('gstlibcamera',\n libcamera_gst_sources,\n cpp_args : libcamera_gst_cpp_args,\n dependencies : [libcamera_private, gstvideo_dep, gstallocator_dep],\ndiff --git a/src/libcamera/base/meson.build b/src/libcamera/base/meson.build\nindex 7a7fd7e4..91dc1e71 100644\n--- a/src/libcamera/base/meson.build\n+++ b/src/libcamera/base/meson.build\n@@ -48,15 +48,15 @@ libcamera_base_deps = [\n # the use of headers which must not be exposed to the libcamera public api.\n libcamera_base_args = [ '-DLIBCAMERA_BASE_PRIVATE' ]\n\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,\n- include_directories : libcamera_includes,\n- dependencies : libcamera_base_deps)\n+libcamera_base_lib = 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,\n+ include_directories : libcamera_includes,\n+ dependencies : libcamera_base_deps)\n\n libcamera_base = declare_dependency(sources : [\n libcamera_base_headers,\ndiff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\nindex 0494e808..cd1bf4ed 100644\n--- a/src/libcamera/meson.build\n+++ b/src/libcamera/meson.build\n@@ -163,15 +163,15 @@ libcamera_deps = [\n # runtime if the library is running from an installed location by checking\n # for the presence or abscence of the dynamic tag.\n\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- build_rpath : '/',\n- dependencies : libcamera_deps)\n+libcamera = library('libcamera',\n+ libcamera_sources,\n+ version : libcamera_version,\n+ soversion : libcamera_soversion,\n+ name_prefix : '',\n+ install : true,\n+ include_directories : includes,\n+ build_rpath : '/',\n+ dependencies : libcamera_deps)\n\n libcamera_public = declare_dependency(sources : [\n libcamera_ipa_headers,\ndiff --git a/src/v4l2/meson.build b/src/v4l2/meson.build\nindex f132103c..46dab168 100644\n--- a/src/v4l2/meson.build\n+++ b/src/v4l2/meson.build\n@@ -27,12 +27,12 @@ v4l2_compat_cpp_args = [\n '-fvisibility=hidden',\n ]\n\n-v4l2_compat = shared_library('v4l2-compat',\n- v4l2_compat_sources,\n- name_prefix : '',\n- install : true,\n- dependencies : [libcamera_private, libdl],\n- cpp_args : v4l2_compat_cpp_args)\n+v4l2_compat = library('v4l2-compat',\n+ v4l2_compat_sources,\n+ name_prefix : '',\n+ install : true,\n+ dependencies : [libcamera_private, libdl],\n+ cpp_args : v4l2_compat_cpp_args)\n\n # Provide a wrapper script to support easily loading applications with the V4L2\n # adaptation layer.\n", "prefixes": [ "libcamera-devel" ] }