{"id":18304,"url":"https://patchwork.libcamera.org/api/1.1/patches/18304/?format=json","web_url":"https://patchwork.libcamera.org/patch/18304/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/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":"<20230223171708.83117-1-filbertfebrianto14@gmail.com>","date":"2023-02-23T17:17:08","name":"[libcamera-devel] utils: Added a helper script to manage dependencies","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"402da0acc52adc424583f06da521503d6382ebb1","submitter":{"id":150,"url":"https://patchwork.libcamera.org/api/1.1/people/150/?format=json","name":"sfilbertf","email":"filbertfebrianto14@gmail.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/18304/mbox/","series":[{"id":3765,"url":"https://patchwork.libcamera.org/api/1.1/series/3765/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=3765","date":"2023-02-23T17:17:08","name":"[libcamera-devel] utils: Added a helper script to manage dependencies","version":1,"mbox":"https://patchwork.libcamera.org/series/3765/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/18304/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/18304/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 024FEBE080\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 23 Feb 2023 17:17:31 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 5C5A76261A;\n\tThu, 23 Feb 2023 18:17:31 +0100 (CET)","from mail-ed1-x534.google.com (mail-ed1-x534.google.com\n\t[IPv6:2a00:1450:4864:20::534])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id D4F7B603B4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 23 Feb 2023 18:17:29 +0100 (CET)","by mail-ed1-x534.google.com with SMTP id d30so3527458eda.4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 23 Feb 2023 09:17:29 -0800 (PST)","from workstation.. ([134.101.0.201])\n\tby smtp.gmail.com with ESMTPSA id\n\tq22-20020a50cc96000000b004acbdf23cd2sm5471466edi.29.2023.02.23.09.17.27\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tThu, 23 Feb 2023 09:17:28 -0800 (PST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1677172651;\n\tbh=abmBn65/spT3rSL3EtfqECch3jYrDJVI1QXwsOuZumw=;\n\th=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:Cc:From;\n\tb=RIAfi9YDkWDpWiUyQMz+AUkZeZeUrr3V5Hslk27ZygaY8SZjc92CH1DoTUaHMSZUR\n\t3A1vuEyQaS86CjlbjmqRvIBtExsmcVzCnoqGiec8o4UqUwC8RpqMNOcTQ4WEQ72qPc\n\tzGdmc24SSdT2N55Rk4oUTzrsX1R5/6QelqroUfcp6Gvuql3fhQIiULjtMouf3DGD7L\n\t6ttMFdGg0xvoBw4U25i/kBORgeVG0Z4o2OdhZTF68b7+p3hmN6FYfT8d0VhiQuYY/b\n\tQXUFeSgCtGo5XBCHrfliH2nlcR2r7Vasub0t7V6SmcIYCWuucgZzPPjsmLmERq0roq\n\ttDnqJj4LSVfMA==","v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;\n\th=content-transfer-encoding:mime-version:message-id:date:subject:cc\n\t:to:from:from:to:cc:subject:date:message-id:reply-to;\n\tbh=/ZlcxG4WCtNiZIIuSYOdnyyooaRiXwA+++TrA5ftAro=;\n\tb=nT8H232H0tRRPs23be6z1OJKu/zlrUNVzd6V2A/yNKNgaT5+LfuR1aLs2zez4KjGFO\n\t3T9EZDqs3CNK5A8z0AdZZ+y1BukbDMCcPeLkF98Bj+Ht1lr2ksiek7pkKwprPgIJrtbB\n\tVJ5iUWWl12k//CLEIP0yqiDRegjQ94Ip0ked6pOpxKV51MPPTTIReb1wRAeG0orXKQaN\n\tMkss/4M3C+rTBnJIHbZxIU4+uBDD3omE0VMRPBL1Ff6pFijrmw2FNrOSqoSvqLQdxlm5\n\tDx7i5TmIR+aOeFgiI+Me63/TQSvCtEPQzcc3elrUPItoqaAtJ1laMfnFXrg5gCD9SCxa\n\tGqlA=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"nT8H232H\"; dkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=content-transfer-encoding:mime-version:message-id:date:subject:cc\n\t:to:from:x-gm-message-state:from:to:cc:subject:date:message-id\n\t:reply-to;\n\tbh=/ZlcxG4WCtNiZIIuSYOdnyyooaRiXwA+++TrA5ftAro=;\n\tb=5wHuxBRQPOaS7AaZRWylA9guGjtIewz607mXPHE+vmCM1cRl4efvMC0CW3WagMN/cm\n\tMlR69npoLfmAioU1oCeOi7JlWLF+ezUkysCExmUttcd4mNRcGyani2N4rYAFU10xLm4V\n\tS7C+Xi3cQBdbrlaC2gGR84rxAghGWy6gaL9SYwYkZAb3qIWfEIyKgrye2RiRqHgH5WXI\n\tqdMzCgjRPukigCV2x4QNhA+QWuV68c856UbyS7E9eAuBbhEXD9lQo5di0thFJHcRWIrU\n\tE+KVqpRCVJlnp0BjuISfLVUC9MWTFzIkvRuplJxJ1lzG/NmYrEsmgC8Z7GSECtc5vA+J\n\thXeg==","X-Gm-Message-State":"AO0yUKVklci6hohfmM2cOg1ii1Y0UqkDlyP+0hmeyF2tE5IoaGBSWe/h\n\tS1dztHhw3AsJ1XNbUAm5+03RNcUyGLGk0A==","X-Google-Smtp-Source":"AK7set+y3JyUY66jOJHKPqKeZ8BR64zY1Ko2PaXptl5xItqJiTWR4P5x1aCW1JOUtEuQ3zxUlqoSqQ==","X-Received":"by 2002:a17:907:971a:b0:8de:920d:a4bb with SMTP id\n\tjg26-20020a170907971a00b008de920da4bbmr14346783ejc.26.1677172648908; \n\tThu, 23 Feb 2023 09:17:28 -0800 (PST)","To":"libcamera-devel@lists.libcamera.org","Date":"Thu, 23 Feb 2023 18:17:08 +0100","Message-Id":"<20230223171708.83117-1-filbertfebrianto14@gmail.com>","X-Mailer":"git-send-email 2.34.1","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH] utils: Added a helper script to manage\n\tdependencies","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":"sfilbertf via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"sfilbertf <filbertfebrianto14@gmail.com>","Cc":"sfilbertf <filbertfebrianto14@gmail.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"---\n utils/bootstrap-deps.sh | 102 ++++++++++++++++++++++++++++++++++++++++\n 1 file changed, 102 insertions(+)\n create mode 100755 utils/bootstrap-deps.sh","diff":"diff --git a/utils/bootstrap-deps.sh b/utils/bootstrap-deps.sh\nnew file mode 100755\nindex 00000000..95e7e66c\n--- /dev/null\n+++ b/utils/bootstrap-deps.sh\n@@ -0,0 +1,102 @@\n+#!/usr/bin/env bash\n+\n+# Currently only for ubuntu and debian based distros\n+apt_get_ext=$(command -v apt-get)\n+if [ -z ${apt_get_ext} ]; then\n+\texit\n+fi\n+\n+# Help message\n+function help {\n+\techo \"Usage:\"\n+\techo \"./bootstrap-deps.sh [arg1] [arg2] . . .\"\n+\techo \"\"\n+\techo \"Where argi can be:\"\n+\techo \"-all       for all dependencies\"\n+\techo \"-cam       for cam\"\n+\techo \"-qcam      for qcam\"\n+\techo \"-tracing   for tracing with lttng\"\n+\techo \"-gstreamer for gstreamer\"\n+\techo \"-hotplug   for device hotplug enumeration\"\n+\techo \"-docs      for documentation\"\n+\techo \"-ipams     for IPA module signing\"\n+\techo \"-debug     for improved debugging\"\n+\techo \"-android   for android\"\n+\techo \"-lcc       for lc-compliance\"\n+}\n+\n+if [ $# == 1 ] && [ $1 == \"-h\" ] || [ $1 == \"-help\" ]; then\n+\thelp\n+\texit\n+fi\n+\n+# Dependencies\n+CORE=\"libyaml-dev python3-yaml python3-ply python3-jinja2\"\n+IPAMS=\"libgnutls28-dev\"\n+DEBUG=\"libdw-dev libunwind-dev\"\n+HOTPLUG=\"libudev-dev\"\n+DOCS=\"python3-sphinx doxygen graphviz texlive-latex-extra\"\n+GSTREAMER=\"libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev\"\n+CAM=\"libevent-dev libdrm-dev libjpeg-dev libsdl2-dev\"\n+QCAM=\"qtbase5-dev libqt5core5a libqt5gui5 libqt5widgets5 qttools5-dev-tools libtiff-dev\"\n+TRACING=\"liblttng-ust-dev python3-jinja2 lttng-tools\"\n+ANDROID=\"libexif-dev libjpeg-dev\"\n+LCCOMP=\"libevent-dev\"\n+\n+# Meson build system\n+pip3 install --user meson\n+pip3 install --user --upgrade meson\n+\n+# libcamera core\n+sudo apt-get install -y ${CORE}\n+\n+# Optional dependencies\n+for arg in \"$@\"\n+do\n+\tcase ${arg} in \n+\t\t# For all dependencies\n+\t\t\"-all\")\n+\t\t\tsudo apt-get install -y ${IPAMS} ${DEBUG} ${HOTPLUG} ${DOCS} ${GSTREAMER} ${CAM} ${QCAM} ${TRACING} ${ANDROID} ${LCCOMP}\t\n+\t\t;;\n+\t\t# For cam\n+\t\t\"-cam\")\n+\t\t\tsudo apt-get install -y ${CAM}\n+\t\t;;\n+\t\t# For qcam\n+\t\t\"-qcam\")\n+\t\t\tsudo apt-get install -y ${QCAM}\n+\t\t;;\t\n+\t\t# For tracing \n+\t\t\"-tracing\")\n+\t\t\tsudo apt-get install -y ${TRACING}\n+\t\t;;\n+\t\t# For gstreamer\n+\t\t\"-gstreamer\")\n+\t\t\tsudo apt-get install -y ${GSTREAMER}\n+\t\t;;\n+\t\t# For hotplug \n+\t\t\"-hotplug\")\n+\t\t\tsudo apt-get install -y ${HOTPLUG}\n+\t\t;;\n+\t\t# For documentation\n+\t\t\"-docs\")\n+\t\t\tsudo apt-get install -y ${DOCS}\n+\t\t;;\n+\t\t# For IPA module signing\n+\t\t\"-ipams\")\n+\t\t\tsudo apt-get install -y ${IPAMS}\n+\t\t;;\n+\t\t# For improved debugging\n+\t\t\"-debug\")\n+\t\t\tsudo apt-get install -y ${DEBUG}\n+\t\t;;\n+\t\t# For android\n+\t\t\"-android\")\n+\t\t\tsudo apt-get install -y ${ANDROID}\n+\t\t;;\n+\t\t# For lc-compliance\n+\t\t\"-lcc\")\n+\t\t\tsudo apt-get install -y ${LCCOMP}\n+\t\t;;\n+\tesac\t\n+done\n","prefixes":["libcamera-devel"]}