{"id":11113,"url":"https://patchwork.libcamera.org/api/patches/11113/?format=json","web_url":"https://patchwork.libcamera.org/patch/11113/","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":"<20210203065128.1738003-2-hiroh@chromium.org>","date":"2021-02-03T06:51:27","name":"[libcamera-devel,v3,1/2] subprojects: Add libyuv and built if -Dandroid=enabled","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"2b31d901e8dc3e83d2b7559b4ca23429d3bb4960","submitter":{"id":63,"url":"https://patchwork.libcamera.org/api/people/63/?format=json","name":"Hirokazu Honda","email":"hiroh@chromium.org"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/11113/mbox/","series":[{"id":1642,"url":"https://patchwork.libcamera.org/api/series/1642/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=1642","date":"2021-02-03T06:51:26","name":"Add libyuv to subprojects and download_subprojects option","version":3,"mbox":"https://patchwork.libcamera.org/series/1642/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/11113/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/11113/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 8256DBD162\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  3 Feb 2021 06:51:44 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 48CA66843E;\n\tWed,  3 Feb 2021 07:51:44 +0100 (CET)","from mail-pg1-x529.google.com (mail-pg1-x529.google.com\n\t[IPv6:2607:f8b0:4864:20::529])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id E565168439\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  3 Feb 2021 07:51:42 +0100 (CET)","by mail-pg1-x529.google.com with SMTP id o63so16629064pgo.6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 02 Feb 2021 22:51:42 -0800 (PST)","from hiroh.c.googlers.com.com\n\t(128.141.236.35.bc.googleusercontent.com. [35.236.141.128])\n\tby smtp.gmail.com with ESMTPSA id\n\ti62sm978301pfe.84.2021.02.02.22.51.39\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tTue, 02 Feb 2021 22:51:40 -0800 (PST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=chromium.org header.i=@chromium.org\n\theader.b=\"cgoHrWv+\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org;\n\ts=google; \n\th=from:to:cc:subject:date:message-id:in-reply-to:references\n\t:mime-version:content-transfer-encoding;\n\tbh=U0d0DtwGlOR352mRu+Zs7NWaRFQs4XMCsxNRlgUogmk=;\n\tb=cgoHrWv+Yr2wkl6K40LsuG8Ue9sBEVqWAJSASBSwRvLNAirLHxpjOh78UuyhiGcKiV\n\tDWjY5RWm3ivU+CQ1kkk1iBWpuvlsL2cMH1mC7i8lrlP8NY8uYJuKzkfu+49bGyqMPWeU\n\t9HkSgyFFP/Knc8vQcczVFTIIsrAaUXRy5MyQw=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references:mime-version:content-transfer-encoding;\n\tbh=U0d0DtwGlOR352mRu+Zs7NWaRFQs4XMCsxNRlgUogmk=;\n\tb=XkixvelMmqo6t9PYqCjqH5yrJP70bsg+QHhQDEUhiVCCnaAPd/4axkrD1Cw2NIkdDP\n\tHFNiQOJTgUZjpruObTk/YppKtPAT1J0NlVp7Lh+zZkbyUqBEA9AycxNJQbHiUzI8Ljcx\n\teLVD3ULtT3NZ6ZsmuVL9wOyQOpOPZMehVw1diOt9jWGAbB09McmIy0Yudh5KPcS3ft9T\n\tNyALknFl9BkHcPD+NG3AkSo7tINaKzvGpNBK/f6vUG6JGgr2Zu3p8XP3KRPT1XGvcMQQ\n\tSo8L9FCYJHQIoVG4/lNIGSIYyHVxUOeC/MvF+5ehLDjex8rNO+fpHRg98wZrAroEjrNO\n\tE0Ag==","X-Gm-Message-State":"AOAM531Ib+x5pB9wBEZcnuvrylmaT/gij2DwsAu4XQ9JiRFyJASGH7YF\n\tXxBQ0Ag+Y3+orTiPEV0vKWIMuaSFTHFCXXc6","X-Google-Smtp-Source":"ABdhPJxkqxriynD5+B+rphqBlqtf2IBeO2p+365wGGGGK+CU2UnDepKMTykLb61EwZn4WIz4XqLcDA==","X-Received":"by 2002:aa7:94a2:0:b029:1b8:eba7:773e with SMTP id\n\ta2-20020aa794a20000b02901b8eba7773emr1769936pfl.51.1612335100798; \n\tTue, 02 Feb 2021 22:51:40 -0800 (PST)","From":"Hirokazu Honda <hiroh@chromium.org>","To":"libcamera-devel@lists.libcamera.org","Date":"Wed,  3 Feb 2021 06:51:27 +0000","Message-Id":"<20210203065128.1738003-2-hiroh@chromium.org>","X-Mailer":"git-send-email 2.30.0.365.g02bc693789-goog","In-Reply-To":"<20210203065128.1738003-1-hiroh@chromium.org>","References":"<20210203065128.1738003-1-hiroh@chromium.org>","MIME-Version":"1.0","Subject":"[libcamera-devel] [PATCH v3 1/2] subprojects: Add libyuv and built\n\tif -Dandroid=enabled","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>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Android HAL adaptation layer may need image processing, for\nexample, scaling and format conversion. Libyuv is a general image\nprocessing. This adds libyuv to subprojects, so that it is forked\nlocally and can be used with Android HAL implementation code.\n\nSigned-off-by: Hirokazu Honda <hiroh@chromium.org>\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\n README.rst              |  2 +-\n meson.build             |  2 +-\n src/android/meson.build | 17 +++++++++++++++++\n subprojects/.gitignore  |  1 +\n subprojects/libyuv.wrap |  4 ++++\n 5 files changed, 24 insertions(+), 2 deletions(-)\n create mode 100644 subprojects/.gitignore\n create mode 100644 subprojects/libyuv.wrap\n\n--\n2.30.0.365.g02bc693789-goog","diff":"diff --git a/README.rst b/README.rst\nindex 251291b7..08bfd5ad 100644\n--- a/README.rst\n+++ b/README.rst\n@@ -47,7 +47,7 @@ A C++ toolchain: [required]\n \tEither {g++, clang}\n\n Meson Build system: [required]\n-        meson (>= 0.51) ninja-build pkg-config\n+        meson (>= 0.55) ninja-build pkg-config\n\n         If your distribution doesn't provide a recent enough version of meson,\n         you can install or upgrade it using pip3.\ndiff --git a/meson.build b/meson.build\nindex 743cb1d2..be77191d 100644\n--- a/meson.build\n+++ b/meson.build\n@@ -1,7 +1,7 @@\n # SPDX-License-Identifier: CC0-1.0\n\n project('libcamera', 'c', 'cpp',\n-    meson_version : '>= 0.53',\n+    meson_version : '>= 0.55',\n     version : '0.0.0',\n     default_options : [\n         'werror=true',\ndiff --git a/src/android/meson.build b/src/android/meson.build\nindex 3d4d3be4..7619517a 100644\n--- a/src/android/meson.build\n+++ b/src/android/meson.build\n@@ -14,6 +14,23 @@ foreach dep : android_deps\n     endif\n endforeach\n\n+if android_enabled\n+    cmake = import('cmake')\n+\n+    libyuv_vars = cmake.subproject_options()\n+    libyuv_vars.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON'})\n+    libyuv_vars.set_override_option('cpp_std', 'c++17')\n+    libyuv_vars.append_compile_args('cpp',\n+         '-Wno-sign-compare',\n+         '-Wno-unused-variable',\n+         '-Wno-unused-parameter')\n+    libyuv_vars.append_link_args('-ljpeg')\n+    libyuv = cmake.subproject('libyuv', options : libyuv_vars)\n+    libyuv_dep = libyuv.dependency('yuv')\n+\n+    android_deps += [ libyuv_dep, ]\n+endif\n+\n android_hal_sources = files([\n     'camera3_hal.cpp',\n     'camera_hal_manager.cpp',\ndiff --git a/subprojects/.gitignore b/subprojects/.gitignore\nnew file mode 100644\nindex 00000000..410b8bd6\n--- /dev/null\n+++ b/subprojects/.gitignore\n@@ -0,0 +1 @@\n+/libyuv\n\\ No newline at end of file\ndiff --git a/subprojects/libyuv.wrap b/subprojects/libyuv.wrap\nnew file mode 100644\nindex 00000000..8ba51fa0\n--- /dev/null\n+++ b/subprojects/libyuv.wrap\n@@ -0,0 +1,4 @@\n+[wrap-git]\n+directory = libyuv\n+url = https://chromium.googlesource.com/libyuv/libyuv.git\n+revision = 93b1b332cd60b56ab90aea14182755e379c28a80\n","prefixes":["libcamera-devel","v3","1/2"]}