Patch Detail
Show a patch.
GET /api/patches/20001/?format=api
{ "id": 20001, "url": "https://patchwork.libcamera.org/api/patches/20001/?format=api", "web_url": "https://patchwork.libcamera.org/patch/20001/", "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": "<20240504140237.19117-1-laurent.pinchart@ideasonboard.com>", "date": "2024-05-04T14:02:37", "name": "test: Don't add current build directory to include path", "commit_ref": "6cd849125888782ed12af87f80a1ee9c43bcf553", "pull_url": null, "state": "accepted", "archived": false, "hash": "6eabd053c9ba051b6426a9dd4bd3573c7be80c23", "submitter": { "id": 2, "url": "https://patchwork.libcamera.org/api/people/2/?format=api", "name": "Laurent Pinchart", "email": "laurent.pinchart@ideasonboard.com" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/20001/mbox/", "series": [ { "id": 4288, "url": "https://patchwork.libcamera.org/api/series/4288/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=4288", "date": "2024-05-04T14:02:37", "name": "test: Don't add current build directory to include path", "version": 1, "mbox": "https://patchwork.libcamera.org/series/4288/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/20001/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/20001/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 D2D80C3220\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSat, 4 May 2024 14:02:48 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id BC2A362E18;\n\tSat, 4 May 2024 16:02:47 +0200 (CEST)", "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 74EAF604C3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 4 May 2024 16:02:45 +0200 (CEST)", "from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi\n\t[81.175.209.231])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 1210033D;\n\tSat, 4 May 2024 16:01:45 +0200 (CEST)" ], "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"Vmxcj9BM\"; dkim-atps=neutral", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1714831306;\n\tbh=XgVnJ/bNXMETKZz8ngKhGSvYPJ6NQKG8hisqGxe9AtI=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=Vmxcj9BM9FTa2NIzBLgZHx6lLKTPsPQjHl8oDNM94rUSlvuc/80N2lZYyaIgyJY7M\n\tIRsQH0o5ymjmV14A/VD77cLeOnBCi/Ll296TpDe2yDW+wpvF/ZVo3+d7OToGCJ9aDE\n\tHbPKpmL0KrdHKR7qPKv/J8eK3d8RvwH+IX0Imt30=", "From": "Laurent Pinchart <laurent.pinchart@ideasonboard.com>", "To": "libcamera-devel@lists.libcamera.org", "Cc": "=?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= <pobrn@protonmail.com>", "Subject": "[PATCH] test: Don't add current build directory to include path", "Date": "Sat, 4 May 2024 17:02:37 +0300", "Message-ID": "<20240504140237.19117-1-laurent.pinchart@ideasonboard.com>", "X-Mailer": "git-send-email 2.43.2", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "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>", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "Meson adds the current source and build directory to the include path by\ndefault. This causes a namespace clash in tests when using C++20, as the\nSpan class test is compiled into a binary named 'span', which then gets\nincluded by source code through indirect '#include <span>' directives.\nUnsurprisingly, the compiler doesn't react happily when fed binary data.\n\nWe could work around the problem by renaming the test executable, but\ndisabling the implicit inclusion of the local directory is a more\ngeneric solution that will avoid similar issues in the future.\n\nSigned-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\nThis patch makes libcamera build with cpp_std=c++20. Once merged, I will\nadd a CI test to avoid introduction C++20 compilation breakages, paving\nthe way to move to the newer language version once the ecosystem will be\nready.\n---\n test/meson.build | 3 +++\n 1 file changed, 3 insertions(+)\n\n\nbase-commit: bf4695266bfca8cc21bcf10a3281e874ebce0d27", "diff": "diff --git a/test/meson.build b/test/meson.build\nindex 8b6057d4e800..5ed052ed62c8 100644\n--- a/test/meson.build\n+++ b/test/meson.build\n@@ -89,6 +89,7 @@ foreach test : public_tests\n \n exe = executable(test['name'], test['sources'],\n dependencies : deps,\n+ implicit_include_directories : false,\n link_with : test_libraries,\n include_directories : test_includes_public)\n \n@@ -103,6 +104,7 @@ foreach test : internal_tests\n \n exe = executable(test['name'], test['sources'],\n dependencies : deps,\n+ implicit_include_directories : false,\n link_with : test_libraries,\n include_directories : test_includes_internal)\n \n@@ -117,6 +119,7 @@ foreach test : internal_non_parallel_tests\n \n exe = executable(test['name'], test['sources'],\n dependencies : deps,\n+ implicit_include_directories : false,\n link_with : test_libraries,\n include_directories : test_includes_internal)\n \n", "prefixes": [] }