From patchwork Fri Jun 26 09:28:46 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robert Mader X-Patchwork-Id: 27044 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 57886C3264 for ; Fri, 26 Jun 2026 09:29:23 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id E96BF658E8; Fri, 26 Jun 2026 11:29:22 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=collabora.com header.i=robert.mader@collabora.com header.b="d7WmNu7I"; dkim-atps=neutral Received: from sender4-pp-f112.zoho.com (sender4-pp-f112.zoho.com [136.143.188.112]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 6900B658D4 for ; Fri, 26 Jun 2026 11:29:18 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; t=1782466155; cv=none; d=zohomail.com; s=zohoarc; b=aGBiJRS3LrdATmVDamCng9IwGzPH4f+/24qMXVW3L2EBFwTYzZw2ILf/NyqaB3HouhgnhJ9SgguQ4d0zvC7Cqv/ZSRPaRri/BETwlucf7pn34LTZXE2ObRmNaRNdwiJ3B9AXrGi11KZ83uoXEZrPGdCLvyz7oA1nl1RTYYzzC8w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1782466155; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=0KyvNufTBQY1gRY4szs7oV6kY1J+8EDmn71U3s1oDPc=; b=XKx7AadpPpVqkxUd25eM+KdcesJNwC1S+IZVRjvMrlkaWRETCM7wiDt9nNIQu+FVWJdzcwLj5G4eLDmJeMuiT1HhQRU7AVwCbFsf8J75FMz0v/3SrT9y18C0Qt3Vq6YmL9MuC69JBzsHdvJlCfM34fIi9jzWGrQZ1qCEGNhbmZk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=robert.mader@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1782466155; s=zohomail; d=collabora.com; i=robert.mader@collabora.com; h=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-ID:In-Reply-To:References:MIME-Version:Content-Transfer-Encoding:Message-Id:Reply-To; bh=0KyvNufTBQY1gRY4szs7oV6kY1J+8EDmn71U3s1oDPc=; b=d7WmNu7IclquUcoRPuVW2JBiQgfasoSbZqZ5EihtaA1OES8q+JSLmAxOopJmFUoA cLKXmw6UGowkAm/Iy8DXTx6L1rnhm0V+G+biUS4DFQ1G04qNZt9PrQcIsv66ZJmEGfB QRpqHPUd7qWQroSl8NS4YIrS7muXPFHbJhDanbDA= Received: by mx.zohomail.com with SMTPS id 178246615329283.0356375782984; Fri, 26 Jun 2026 02:29:13 -0700 (PDT) From: Robert Mader To: libcamera-devel@lists.libcamera.org Cc: Robert Mader Subject: [PATCH v2 1/2] pipeline: virtual: Move libjpeg requirement to libyuv subproject Date: Fri, 26 Jun 2026 11:28:46 +0200 Message-ID: <20260626092847.289764-2-robert.mader@collabora.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260626092847.289764-1-robert.mader@collabora.com> References: <20260626092847.289764-1-robert.mader@collabora.com> MIME-Version: 1.0 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" libyuv already depends on libjpeg. The requirement for the later is only needed if libyuv is build from the subproject fallback, thus move the requirement accordingly. This allows the virtual pipeline to be build with only libyuv development files installed - and without libjpeg ones. Signed-off-by: Robert Mader Reviewed-by: Kieran Bingham Reviewed-by: Laurent Pinchart --- src/libcamera/pipeline/virtual/meson.build | 3 --- src/meson.build | 4 +++- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/libcamera/pipeline/virtual/meson.build b/src/libcamera/pipeline/virtual/meson.build index c84345936..19fde9cf8 100644 --- a/src/libcamera/pipeline/virtual/meson.build +++ b/src/libcamera/pipeline/virtual/meson.build @@ -7,9 +7,6 @@ libcamera_internal_sources += files([ 'virtual.cpp', ]) -libjpeg = dependency('libjpeg', required : true) - libcamera_deps += [libyuv_dep] -libcamera_deps += [libjpeg] subdir('data') diff --git a/src/meson.build b/src/meson.build index 9b63c8e84..8e23d40c3 100644 --- a/src/meson.build +++ b/src/meson.build @@ -46,6 +46,8 @@ if (pipelines.contains('virtual') or get_option('android').allowed()) and \ not libyuv_dep.found() cmake = import('cmake') + libjpeg = dependency('libjpeg', required : true) + libyuv_vars = cmake.subproject_options() libyuv_vars.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON'}) libyuv_vars.set_override_option('cpp_std', 'c++17') @@ -64,7 +66,7 @@ if (pipelines.contains('virtual') or get_option('android').allowed()) and \ # Work around the issue by wrapping the libyuv static library into another # static library with 'pic' set to true. libyuv_static = static_library('libyuv-static', - dependencies : libyuv.dependency('yuv'), + dependencies : [libyuv.dependency('yuv'), libjpeg], pic : true, install : false) libyuv_include = libyuv.include_directories('yuv') From patchwork Fri Jun 26 09:28:47 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Robert Mader X-Patchwork-Id: 27045 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 1B2ACC3261 for ; Fri, 26 Jun 2026 09:29:25 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id CFB69658EA; Fri, 26 Jun 2026 11:29:23 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=collabora.com header.i=robert.mader@collabora.com header.b="C1dVz3u2"; dkim-atps=neutral Received: from sender4-pp-f112.zoho.com (sender4-pp-f112.zoho.com [136.143.188.112]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 40DAD658E5 for ; Fri, 26 Jun 2026 11:29:20 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; t=1782466157; cv=none; d=zohomail.com; s=zohoarc; b=KbF36iO9HJWM24Ffh7zfHkssb7AdOs93P3uODbT4SUIbKSy8gSIIykLEvdbjTAfDA+9xoS+YZw+WNLe5Lk3dvsR2hpUrGWpFcvh1Z5Ag+UybWjNehRErzuL2KUCJkWYGqeZpwgU/caGOkb4sjQ/+AXHj076VqStGMjdcKcr76HI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1782466157; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=GQc4+qL7PHvyke0w+e0CxwL8Q2kInlpBwo3Ixhy3Qjc=; b=F/6YLGh/2ArOupTtyIZPMgycLjwQ3gMUQ/FgPRIxX9RBsG882i2BHPOgRrbQHf7nPL8tNhahuAHSuQ99wcikKAShTvg5BdRRHjlRCaUPtOxvUMxPkvg5fIIxcHmCr+8a3lP82flwhjRFyWt0i5SpcIfjq411rNBHf0Ir6D404g8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=robert.mader@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1782466157; s=zohomail; d=collabora.com; i=robert.mader@collabora.com; h=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-ID:In-Reply-To:References:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=GQc4+qL7PHvyke0w+e0CxwL8Q2kInlpBwo3Ixhy3Qjc=; b=C1dVz3u2iJKRbFZT/PtGHsR7luF1H0s90zzEXkSXhUJkRQZibiPTdBoVlt7KaPtY m0jPGGZPR8F3vsI4pMBnK5MnY1mG4U6Ft7fxh/NvAUbqCZHzQHWbtR9Ccd/OKfAkzFM 0ScFMNXmELhnQQ9GgtgUrkUmBAu+PTjYQFTwxsmg= Received: by mx.zohomail.com with SMTPS id 1782466155551524.0614950095598; Fri, 26 Jun 2026 02:29:15 -0700 (PDT) From: Robert Mader To: libcamera-devel@lists.libcamera.org Cc: Robert Mader , =?utf-8?q?Barnab=C3=A1s_P?= =?utf-8?b?xZFjemU=?= , Kieran Bingham Subject: [PATCH v2 2/2] meson: Build virtual pipeline by default Date: Fri, 26 Jun 2026 11:28:47 +0200 Message-ID: <20260626092847.289764-3-robert.mader@collabora.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260626092847.289764-1-robert.mader@collabora.com> References: <20260626092847.289764-1-robert.mader@collabora.com> MIME-Version: 1.0 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" The virtual pipeline is very helpful for debugging purposes and very small. One big reason to not build it by default in the past was likely the libyuv dependency, which many distros did not ship by default. By now big distros like Debian, Fedora, and others ship libyuv and already use it when building libcamera. Fedora even enables both test pipelines by default. Thus let's build the virtual pipeline by default, facilitating libcamera adoption. Signed-off-by: Robert Mader Reviewed-by: Barnabás Pőcze Acked-by: Kieran Bingham --- meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meson.build b/meson.build index 9cd73462f..3b8d54a65 100644 --- a/meson.build +++ b/meson.build @@ -224,7 +224,7 @@ pipelines_support = { 'simple': ['any'], 'uvcvideo': ['any'], 'vimc': ['test'], - 'virtual': ['test'], + 'virtual': ['any'], } if wanted_pipelines.contains('all')