{"id":21449,"url":"https://patchwork.libcamera.org/api/patches/21449/?format=json","web_url":"https://patchwork.libcamera.org/patch/21449/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20241001102810.479285-3-mzamazal@redhat.com>","date":"2024-10-01T10:27:54","name":"[v5,02/15] yaml: Move yaml_parser.cpp to base","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"88ddf1a44efc4dacdaf574b97247871a9cce9a21","submitter":{"id":177,"url":"https://patchwork.libcamera.org/api/people/177/?format=json","name":"Milan Zamazal","email":"mzamazal@redhat.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/21449/mbox/","series":[{"id":4644,"url":"https://patchwork.libcamera.org/api/series/4644/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4644","date":"2024-10-01T10:27:52","name":"Add global configuration file","version":5,"mbox":"https://patchwork.libcamera.org/series/4644/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/21449/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/21449/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 B714EBD80A\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue,  1 Oct 2024 10:28:31 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 84DEF6351F;\n\tTue,  1 Oct 2024 12:28:30 +0200 (CEST)","from us-smtp-delivery-124.mimecast.com\n\t(us-smtp-delivery-124.mimecast.com [170.10.133.124])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id C2F98618D7\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  1 Oct 2024 12:28:24 +0200 (CEST)","from mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com\n\t(ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63])\n\tby relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3,\n\tcipher=TLS_AES_256_GCM_SHA384) id us-mta-692-Ml8BIKgCNU6Qt84wvjbTfg-1;\n\tTue, 01 Oct 2024 06:28:22 -0400","from mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com (unknown\n\t[10.30.177.40])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\tkey-exchange X25519 server-signature RSA-PSS (2048 bits)\n\tserver-digest SHA256) (No client certificate requested)\n\tby mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix)\n\twith ESMTPS id B302B1954AF8; Tue,  1 Oct 2024 10:28:21 +0000 (UTC)","from nuthatch.brq.redhat.com (unknown [10.43.17.37])\n\tby mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix)\n\twith ESMTP id E8D581956054; Tue,  1 Oct 2024 10:28:19 +0000 (UTC)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=redhat.com header.i=@redhat.com\n\theader.b=\"NJtVGZTH\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n\ts=mimecast20190719; t=1727778503;\n\th=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n\tto:to:cc:cc:mime-version:mime-version:content-type:content-type:\n\tcontent-transfer-encoding:content-transfer-encoding:\n\tin-reply-to:in-reply-to:references:references;\n\tbh=XNzb9v/qECsaG/aaAagaZAF4uMHIqVihK3cLILqqNHQ=;\n\tb=NJtVGZTHUX508D2c1IhqudIBOLyX8Q0/zVJiqq9NW+WdXw0NtdcL7/LwGwPbz5NIjEACC3\n\thBypjOJro8nMobp9L0vNRv+B/pzIje5lhsuZV06guk0Bck3wIHS8rI5QdZvJ6cfiNBjArj\n\trfTH9Y/J3f2dO8mrdbRsu6TzaT09Bik=","X-MC-Unique":"Ml8BIKgCNU6Qt84wvjbTfg-1","From":"Milan Zamazal <mzamazal@redhat.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"Milan Zamazal <mzamazal@redhat.com>,\n\tKieran Bingham <kieran.bingham@ideasonboard.com>,\n\tNaushir Patuck <naush@raspberrypi.com>","Subject":"[PATCH v5 02/15] yaml: Move yaml_parser.cpp to base","Date":"Tue,  1 Oct 2024 12:27:54 +0200","Message-ID":"<20241001102810.479285-3-mzamazal@redhat.com>","In-Reply-To":"<20241001102810.479285-1-mzamazal@redhat.com>","References":"<20241001102810.479285-1-mzamazal@redhat.com>","MIME-Version":"1.0","X-Scanned-By":"MIMEDefang 3.0 on 10.30.177.40","X-Mimecast-Spam-Score":"0","X-Mimecast-Originator":"redhat.com","Content-Transfer-Encoding":"8bit","Content-Type":"text/plain; charset=\"US-ASCII\"; x-default=true","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":"Global configuration, which uses the YAML parser, will be in base.  Thus\nYAML parser must be moved to base too.\n\nSigned-off-by: Milan Zamazal <mzamazal@redhat.com>\n---\n src/libcamera/base/meson.build           | 14 ++++++++++++++\n src/libcamera/{ => base}/yaml_parser.cpp |  0\n src/libcamera/meson.build                | 14 --------------\n 3 files changed, 14 insertions(+), 14 deletions(-)\n rename src/libcamera/{ => base}/yaml_parser.cpp (100%)","diff":"diff --git a/src/libcamera/base/meson.build b/src/libcamera/base/meson.build\nindex a742dfdfe..94843eb95 100644\n--- a/src/libcamera/base/meson.build\n+++ b/src/libcamera/base/meson.build\n@@ -24,10 +24,12 @@ libcamera_base_internal_sources = files([\n     'thread.cpp',\n     'timer.cpp',\n     'utils.cpp',\n+    'yaml_parser.cpp',\n ])\n \n libdw = dependency('libdw', required : false)\n libunwind = dependency('libunwind', required : false)\n+libyaml = dependency('yaml-0.1', required : false)\n \n if cc.has_header_symbol('execinfo.h', 'backtrace')\n     config_h.set('HAVE_BACKTRACE', 1)\n@@ -41,11 +43,23 @@ if libunwind.found()\n     config_h.set('HAVE_UNWIND', 1)\n endif\n \n+# Fallback to a subproject if libyaml isn't found, as it's not packaged in AOSP.\n+if not libyaml.found()\n+    cmake = import('cmake')\n+\n+    libyaml_vars = cmake.subproject_options()\n+    libyaml_vars.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON'})\n+    libyaml_vars.append_compile_args('c', '-Wno-unused-value')\n+    libyaml_wrap = cmake.subproject('libyaml', options : libyaml_vars)\n+    libyaml = libyaml_wrap.dependency('yaml')\n+endif\n+\n libcamera_base_deps = [\n     libatomic,\n     libdw,\n     libthreads,\n     libunwind,\n+    libyaml,\n ]\n \n # Internal components must use the libcamera_base_private dependency to enable\ndiff --git a/src/libcamera/yaml_parser.cpp b/src/libcamera/base/yaml_parser.cpp\nsimilarity index 100%\nrename from src/libcamera/yaml_parser.cpp\nrename to src/libcamera/base/yaml_parser.cpp\ndiff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\nindex aa9ab0291..736cc496f 100644\n--- a/src/libcamera/meson.build\n+++ b/src/libcamera/meson.build\n@@ -51,7 +51,6 @@ libcamera_internal_sources = files([\n     'v4l2_pixelformat.cpp',\n     'v4l2_subdevice.cpp',\n     'v4l2_videodevice.cpp',\n-    'yaml_parser.cpp',\n ])\n \n includes = [\n@@ -79,7 +78,6 @@ if not cc.has_function('dlopen')\n     libdl = cc.find_library('dl')\n endif\n libudev = dependency('libudev', required : get_option('udev'))\n-libyaml = dependency('yaml-0.1', required : false)\n \n # Use one of gnutls or libcrypto (provided by OpenSSL), trying gnutls first.\n libcrypto = dependency('gnutls', required : false)\n@@ -115,17 +113,6 @@ if libudev.found()\n     ])\n endif\n \n-# Fallback to a subproject if libyaml isn't found, as it's not packaged in AOSP.\n-if not libyaml.found()\n-    cmake = import('cmake')\n-\n-    libyaml_vars = cmake.subproject_options()\n-    libyaml_vars.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON'})\n-    libyaml_vars.append_compile_args('c', '-Wno-unused-value')\n-    libyaml_wrap = cmake.subproject('libyaml', options : libyaml_vars)\n-    libyaml = libyaml_wrap.dependency('yaml')\n-endif\n-\n control_sources = []\n \n controls_mode_files = {\n@@ -185,7 +172,6 @@ libcamera_deps += [\n     libdl,\n     liblttng,\n     libudev,\n-    libyaml,\n ]\n \n # We add '/' to the build_rpath as a 'safe' path to act as a boolean flag.\n","prefixes":["v5","02/15"]}