From 4a0af9912e49c8e5f81af763046cd61e3b06c313 Mon Sep 17 00:00:00 2001 From: Benjamin Mugnier Date: Thu, 18 Sep 2025 15:35:18 +0200 Subject: [PATCH 1/2] Import raspberry pi debian folder from package source Follow official raspi distro github: https://github.com/RPi-Distro/libcamera We do not use it directly, as this repository import the libcamera tarball from, therefore loosing all git information on the source code. We'd rather keep it for our development needs, and get a bit of headache with the packaging instead. You don't need to say thank you. Signed-off-by: Benjamin Mugnier --- debian/changelog | 613 ++++++++++ debian/control | 161 +++ debian/copyright | 1131 +++++++++++++++++++ debian/copyright_hints | 1170 ++++++++++++++++++++ debian/gbp.conf | 11 + debian/gstreamer1.0-libcamera.install | 1 + debian/libcamera-dev.install | 3 + debian/libcamera-dev.lintian-overrides | 1 + debian/libcamera-doc.doc-base | 10 + debian/libcamera-doc.install | 1 + debian/libcamera-doc.links | 6 + debian/libcamera-ipa.install | 3 + debian/libcamera-tools.install | 1 + debian/libcamera-v4l2.install | 1 + debian/libcamera0.7.install | 1 + debian/patches/ppc64el-fix-ftbfs-gcc.patch | 29 + debian/patches/series | 2 + debian/patches/skip_failing_tests.patch | 85 ++ debian/python3-libcamera.install | 1 + debian/rules | 97 ++ debian/salsa-ci.yml | 13 + debian/source/format | 1 + debian/tests/check-IPA-modules-signatures | 9 + debian/tests/control | 19 + debian/tests/gstreamer1.0-libcamera | 11 + debian/tests/python3-libcamera | 7 + debian/tests/run-tools | 7 + debian/upstream/metadata | 5 + debian/watch | 5 + 29 files changed, 3405 insertions(+) create mode 100644 debian/changelog create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/copyright_hints create mode 100644 debian/gbp.conf create mode 100644 debian/gstreamer1.0-libcamera.install create mode 100644 debian/libcamera-dev.install create mode 100644 debian/libcamera-dev.lintian-overrides create mode 100644 debian/libcamera-doc.doc-base create mode 100644 debian/libcamera-doc.install create mode 100644 debian/libcamera-doc.links create mode 100644 debian/libcamera-ipa.install create mode 100644 debian/libcamera-tools.install create mode 100644 debian/libcamera-v4l2.install create mode 100644 debian/libcamera0.7.install create mode 100644 debian/patches/ppc64el-fix-ftbfs-gcc.patch create mode 100644 debian/patches/series create mode 100644 debian/patches/skip_failing_tests.patch create mode 100644 debian/python3-libcamera.install create mode 100755 debian/rules create mode 100644 debian/salsa-ci.yml create mode 100644 debian/source/format create mode 100755 debian/tests/check-IPA-modules-signatures create mode 100644 debian/tests/control create mode 100755 debian/tests/gstreamer1.0-libcamera create mode 100755 debian/tests/python3-libcamera create mode 100755 debian/tests/run-tools create mode 100644 debian/upstream/metadata create mode 100644 debian/watch diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 000000000..1af54104d --- /dev/null +++ b/debian/changelog @@ -0,0 +1,613 @@ +libcamera (0.7.2+rpt20260817-1) trixie; urgency=medium + + * New upstream version 0.7.2+rpt20260817 + + -- Serge Schneider Tue, 18 Aug 2026 11:35:23 +0100 + +libcamera (0.7.2+rpt20260807-1) trixie; urgency=medium + + * New upstream version 0.7.2+rpt20260807 + + -- Serge Schneider Fri, 07 Aug 2026 10:25:35 +0100 + +libcamera (0.7.1+rpt20260609-1) trixie; urgency=medium + + * New upstream version 0.7.1+rpt20260609 + + -- Serge Schneider Tue, 09 Jun 2026 10:15:34 +0100 + +libcamera (0.7.1+rpt20260429-1) trixie; urgency=medium + + * New upstream version 0.7.1+rpt20260429 + * Refresh patches + + -- Serge Schneider Fri, 01 May 2026 20:09:28 +0100 + +libcamera (0.7.0+rpt20260205-1) trixie; urgency=medium + + * New upstream version 0.7.0+rpt20260205 + + -- Serge Schneider Thu, 05 Feb 2026 16:51:11 +0000 + +libcamera (0.7.0+rpt20260202-2) trixie; urgency=medium + + * Enable rpi-awb-nn + + -- Serge Schneider Thu, 05 Feb 2026 06:58:35 +0000 + +libcamera (0.7.0+rpt20260202-1) trixie; urgency=medium + + * New upstream version 0.7.0+rpt20260202 + * Bump SONAME to libcamera0.7 + * d/c: Add awb-nn to libcamera-ipa recommends + + -- Serge Schneider Mon, 02 Feb 2026 17:47:52 +0000 + +libcamera (0.6.0+rpt20251202-1) trixie; urgency=medium + + * New upstream version 0.6.0+rpt20251202 + + -- Serge Schneider Tue, 02 Dec 2025 12:17:03 +0000 + +libcamera (0.6.0+rpt20251201-1) trixie; urgency=medium + + * New upstream version 0.6.0+rpt20251201 + * d/patches: drop upstream Disable_libunwind_integration.patch + * Bump SONAME to libcamera0.6 + * d/: Update for documentation build option change + * d/gbp.conf: add debian-tag + + -- Serge Schneider Mon, 01 Dec 2025 16:57:51 +0000 + +libcamera (0.5.2+rpt20250903-1) trixie; urgency=medium + + * New upstream version 0.5.2+rpt20250903 + * Only enable rpi pipelines on arm + * d/c: Move libcamera-ipa to Depends + * d/salsa-cy.yml: Use internal salsa-ci instance + * d/python3-libcamera.install: fix python module source location + + -- Serge Schneider Fri, 05 Sep 2025 14:50:41 +0100 + +libcamera (0.5.2-2) unstable; urgency=medium + + * Adjust VCS fields in d/control and d/gbp.conf for unstable. + * Upload to unstable. + + -- Dylan Aïssi Sun, 17 Aug 2025 22:47:35 +0200 + +libcamera (0.5.2-1) experimental; urgency=medium + + * New upstream version 0.5.2 + * Add python3-sphinxcontrib.doxylink in Build-Depends-Indep + * Refresh debian/copyright + + -- Dylan Aïssi Thu, 07 Aug 2025 17:16:21 +0200 + +libcamera (0.5.1-1) experimental; urgency=medium + + * New upstream version 0.5.1 + * Refresh patches + * Install IPA modules in usr/lib/*/libcamera/ipa + * Adjust VCS field in d/control for experimental + + -- Dylan Aïssi Tue, 03 Jun 2025 21:16:11 +0200 + +libcamera (0.5.0-1) experimental; urgency=medium + + * New upstream version 0.5.0 + - Fix FTBFS with GCC-15 (Closes: #1097167) + * Bump SONAME to libcamera0.5 + * Add new Build-Deps for ARM required to support RPi5: libpisp-dev + * debian/gbp.conf: Set debian-branch to debian/experimental + * Refresh patches and drop those included in upstream release + + -- Dylan Aïssi Tue, 08 Apr 2025 13:30:03 +0200 + +libcamera (0.4.0-7) unstable; urgency=medium + + * Add superficial test for gstreamer1.0-libcamera + * Add superficial test for python3-libcamera + * Standards-Version: 4.7.2 (no changes needed) + + -- Dylan Aïssi Sun, 23 Mar 2025 12:06:04 +0100 + +libcamera (0.4.0-6) unstable; urgency=medium + + * Make libcamera-tools depends on libcamera-ipa because libcamerify + requires v4l2-compat.so to work. + * Use libexec/${DEB_HOST_MULTIARCH} to override --libexecdir, + otherwise v4l2-compat.so ends up in the same folder as IPA modules + and IPA manager tries to parse it leading to errors. + + -- Dylan Aïssi Tue, 25 Feb 2025 11:48:40 +0100 + +libcamera (0.4.0-5) unstable; urgency=medium + + * Cherry-pick upstream patches demoting error messages (Closes: #1091966) + + -- Dylan Aïssi Thu, 30 Jan 2025 12:07:44 +0100 + +libcamera (0.4.0-4) unstable; urgency=medium + + * Add patch disabling libunwind integration (Closes: #1093688) + * Add Forwarded field for fix_detection_libyuv.patch + + -- Dylan Aïssi Mon, 27 Jan 2025 10:42:24 +0100 + +libcamera (0.4.0-3) unstable; urgency=medium + + * Fix install location of the python module + * Drop "Multi-Arch: same" for python3-libcamera + + -- Dylan Aïssi Thu, 09 Jan 2025 12:45:19 +0100 + +libcamera (0.4.0-2) unstable; urgency=medium + + * Upload to unstable + + -- Dylan Aïssi Tue, 31 Dec 2024 17:12:58 +0100 + +libcamera (0.4.0-1) experimental; urgency=medium + + * New upstream version 0.4.0 + * Bump SONAME to libcamera0.4 + * Add new Build-Deps: libyuv-dev + * Add patch fixing detection of system libyuv + * Skip memory_lifetime_test, it fails now when it was just skipped before. + * Drop workaround for doxygen-latex on sh4, no longer required since all + these build-deps moved to Build-Depends-Indep. + * Allow reprotest and blhc to fail in salsa-ci + + -- Dylan Aïssi Fri, 27 Dec 2024 12:52:33 +0100 + +libcamera (0.3.2-2) unstable; urgency=medium + + [ Helmut Grohne ] + * Move documentation Build-Depends to Build-Depends-Indep. (Closes: #1083173) + + -- Dylan Aïssi Mon, 21 Oct 2024 14:19:51 +0200 + +libcamera (0.3.2-1) unstable; urgency=medium + + * New upstream version 0.3.2 + * Drop patch included in upstream release + * Update debian/copyright + + -- Dylan Aïssi Tue, 24 Sep 2024 21:35:43 +0200 + +libcamera (0.3.1-2) unstable; urgency=medium + + [ Dylan Aïssi ] + * Refer to the i386 FTBFS bug + + [ Jeremy Bícha ] + * Don't require qt6 on i386 + + [ Joel Stanley ] + * Enable simple pipeline on all arches + + -- Dylan Aïssi Fri, 16 Aug 2024 14:46:49 +0200 + +libcamera (0.3.1-1) unstable; urgency=medium + + * New upstream version 0.3.1 + * Switch from qtbase5-dev to qt6-base-dev in Build-Depends + * Bump minimum meson to 0.63 + * Disable qcam on i386 for now because it fails to build with errors + due to missing SSE2. + + -- Dylan Aïssi Fri, 26 Jul 2024 10:55:50 +0200 + +libcamera (0.3.0-2) unstable; urgency=medium + + * Upload to unstable + + -- Dylan Aïssi Wed, 22 May 2024 10:11:30 +0200 + +libcamera (0.3.0-1) experimental; urgency=medium + + * New upstream version 0.3.0 + * Bump SONAME to libcamera0.3 + * Set architecture to linux-any + * Promote libcamera-ipa in Recommends of libcamera0.3 and ensure the + binary version matches + * Update debian/watch to use upstream recommended tarball + * Standards-Version: 4.7.0 (no changes needed) + * Drop obsolete pkg-config from Build-Deps + * Refresh patches + + -- Dylan Aïssi Mon, 20 May 2024 10:53:34 +0200 + +libcamera (0.2.0-3) unstable; urgency=medium + + [ Jeremy Bícha ] + * Update debian/gbp.conf + * Don't use liblltng-ust-dev on i386 + * Disable v4l2 on non-Linux + * autopkgtest: Run the upstream tests + + [ Steve Langasek ] + * Add patch for 64-bit time_t compatibility (Closes: #1066836) + + [ Dylan Aïssi ] + * Refresh patches + * Drop 'Multi-Arch: same' for libcamera-dev due to file conflict + + -- Dylan Aïssi Thu, 14 Mar 2024 11:58:17 +0100 + +libcamera (0.2.0-2) unstable; urgency=medium + + * Upload to unstable + * Bump minimum meson to 0.60 + + -- Dylan Aïssi Mon, 22 Jan 2024 10:14:34 +0100 + +libcamera (0.2.0-1) experimental; urgency=medium + + * New upstream version 0.2.0 + * Bump SONAME to libcamera0.2 + * Don't move doc during dh_install if the nodoc profile is set + (Closes: #1051195) + * Drop patch included in upstream release + * Mark python3-libcamera as Multi-Arch: same + * Update debian/copyright + * Add libdrm-dev in Build-Deps, it was already pulled by dependencies + + -- Dylan Aïssi Wed, 10 Jan 2024 10:41:31 +0100 + +libcamera (0.1.0-3) unstable; urgency=medium + + * Cherry-pick upstream patch fixing build with sphinx 7 (Closes: #1042634) + * Disable again doxygen-latex in Build-Deps for sh4 to help apt choose + the alternative. + + -- Dylan Aïssi Tue, 01 Aug 2023 12:14:41 +0200 + +libcamera (0.1.0-2) unstable; urgency=medium + + * Only make the tests fail for key architectures: amd64 arm64 armhf + * Add texlive-latex-extra as alternative to doxygen-latex in Build-deps + * Upload to unstable + + -- Dylan Aïssi Sat, 22 Jul 2023 11:11:04 +0200 + +libcamera (0.1.0-1) experimental; urgency=medium + + * New upstream version 0.1.0 + * Bump SONAME to libcamera0.1 + * Build python bindings: + - New binary package: python3-libcamera + - New Build-Deps: libpython3-dev and python3-pybind11 + * Move v4l2-compat.so from usr/lib/*/ to usr/lib/*/libcamera/ + * Install ipa_verify and use it to check IPA signatures + * Verify modules signatures after resigning + * Add new test verifying the signature of IPA modules + * Disable doxygen-latex in Build-Deps for sh4 + * Disable scan of git HEAD in the watch file to avoid confusing + tracker.debian.org + * Refresh debian/patches/ppc64el-fix-ftbfs-gcc.patch + * Drop debian/libcamera-v4l2.lintian-overrides, no longer required + * Disable reprotest on salsa-ci + * Refresh debian/copyright + + -- Dylan Aïssi Mon, 17 Jul 2023 14:49:07 +0200 + +libcamera (0.0.5-2) unstable; urgency=medium + + * Upload to unstable + + -- Dylan Aïssi Fri, 16 Jun 2023 15:52:08 +0200 + +libcamera (0.0.5-1) experimental; urgency=medium + + * New upstream version 0.0.5 + * Bump SONAME to libcamera0.0.5 + + -- Dylan Aïssi Thu, 04 May 2023 17:40:02 +0200 + +libcamera (0.0.4-3) experimental; urgency=medium + + [ George Kiagiadakis ] + * Add rule to re-sign the IPA modules after dh_strip + + [ Andrej Shadura ] + * Use the DEB_HOST_GNU_TYPE for the build directory + + -- Dylan Aïssi Mon, 06 Mar 2023 17:45:53 +0100 + +libcamera (0.0.4-2) experimental; urgency=medium + + * Skip more tests + + -- Dylan Aïssi Tue, 14 Feb 2023 12:56:16 +0100 + +libcamera (0.0.4-1) experimental; urgency=medium + + * New upstream version 0.0.4 + * Bump SONAME to libcamera0.0.4 + * Add superficial tests + * Don't ignore tests failures at build time (Closes: #1024782) + * Upload to experimental because of the current Bookworm freeze + + -- Dylan Aïssi Wed, 01 Feb 2023 22:02:03 +0100 + +libcamera (0.0.3-6) unstable; urgency=medium + + * Use the DEB_HOST_GNU_TYPE for the build directory. + + -- Andrej Shadura Mon, 06 Mar 2023 10:40:47 +0100 + +libcamera (0.0.3-5) unstable; urgency=medium + + [ Dylan Aïssi ] + * Add superficial tests. + * Add allow-stderr for tests. + + [ George Kiagiadakis ] + * Add rule to re-sign the IPA modules after dh_strip. + + -- Andrej Shadura Mon, 06 Mar 2023 09:45:00 +0100 + +libcamera (0.0.3-4) unstable; urgency=medium + + * Add doxygen-latex in Build-Deps + * Add libgstreamer1.0-dev in Build-Deps + * Drop libboost-dev from Build-Deps, not needed anymore + * libcamera0.0.3: add libcamera-ipa in Suggests + + -- Dylan Aïssi Tue, 24 Jan 2023 21:36:29 +0100 + +libcamera (0.0.3-3) unstable; urgency=medium + + * Upload to unstable. + + -- Dylan Aïssi Sat, 31 Dec 2022 15:09:27 +0100 + +libcamera (0.0.3-2) experimental; urgency=medium + + * Drop symbols file, not very useful because symbols are changing too + quickly. And because of the very active development, upstream bumps + SONAME for each release. Let's wait until upstream has stabilized + the libcamera API before reintroducing this symbols file. + * Standards-Version: 4.6.2 (no changes needed) + + -- Dylan Aïssi Mon, 26 Dec 2022 22:18:01 +0100 + +libcamera (0.0.3-1) experimental; urgency=medium + + * New upstream version 0.0.3 + * Bump SONAME to libcamera0.0.3 + * Move the GStreamer plugin into its own package + * Move the v4l2 module into its own package + * Move the IPA modules into their own package + * Install *.so.sign files with libraries + * Add myself in Uploaders + * Update copyright file + + -- Dylan Aïssi Fri, 23 Dec 2022 23:56:04 +0100 + +libcamera (0.0.2-2) unstable; urgency=medium + + * Update symbols file for x32 + + -- Dylan Aïssi Wed, 14 Dec 2022 17:54:17 +0100 + +libcamera (0.0.2-1) unstable; urgency=medium + + * Team upload. + + [ Dylan Aïssi ] + * New upstream version 0.0.2 + * Update symbols file + * Update lintian-overrides + * Standards-Version: 4.6.1 (no changes needed) + * Update debian/copyright + * Ignore failures in dh_auto_test for now + + [ Sebastien Bacher ] + * Improve lintian-overrides (Closes: #1024803) + * Refresh debian/copyright + * debian/rules: enable the upstream tests as part of the build + + [ Debian Janitor ] + * Remove constraints unnecessary since buster (oldstable) + + -- Dylan Aïssi Fri, 09 Dec 2022 10:59:05 +0100 + +libcamera (0.0.1-4) unstable; urgency=medium + + * Mark liblttng-ust-dev and libudev-dev as linux-only, add more optional + dependencies. + * Don’t install documentation with libcamera0 (Closes: #1022572). + + -- Andrej Shadura Wed, 26 Oct 2022 18:44:01 +0200 + +libcamera (0.0.1-3) unstable; urgency=medium + + * Use wildcards and arch-specific symbols. + * Fix the syntax of the symbols file. + + -- Andrej Shadura Wed, 19 Oct 2022 22:58:29 +0100 + +libcamera (0.0.1-2) unstable; urgency=medium + + * Add the missing build dependency on libyaml-dev. + * Bump meson dependency. + + -- Andrej Shadura Wed, 19 Oct 2022 14:14:02 +0100 + +libcamera (0.0.1-1) unstable; urgency=medium + + * New upstream release (Closes: #962650). + * Update debian/copyright. + * Update the patch. + * Update debian/watch. + * Rename the doc directory manually instead of using dh-exec, drop + dh-exec build dependency. + * Bring back and refresh the symbols file. + * Disable verbose build logs by default. + + -- Andrej Shadura Wed, 19 Oct 2022 14:00:31 +0100 + +libcamera (0~git20211108+1b30992b623e-5) unstable; urgency=medium + + * Team upload. + + [ Olivier Gayot ] + * Add patch that fixes FTBFS on ppc64el + GCC (Closes: #1021544, LP: #1992331) + + -- Benjamin Drung Wed, 12 Oct 2022 11:43:40 +0200 + +libcamera (0~git20211108+1b30992b623e-4) unstable; urgency=medium + + [ Christopher Obbard ] + * Don't treat compilation warnings as errors (Closes: #1012786). + + -- Andrej Shadura Tue, 14 Jun 2022 14:07:18 +0200 + +libcamera (0~git20211108+1b30992b623e-3) unstable; urgency=medium + + [ Andrej Shadura ] + * Add upstream metadata. + + [ Dorota Czaplejewicz ] + * Remove soname patch as the upstream already sets it. + + -- Andrej Shadura Wed, 10 Nov 2021 12:55:10 +0100 + +libcamera (0~git20211108+1b30992b623e-2) unstable; urgency=medium + + * Add missing Python build dependencies. + + -- Andrej Shadura Wed, 10 Nov 2021 12:34:27 +0100 + +libcamera (0~git20211108+1b30992b623e-1) unstable; urgency=medium + + * New upstream snapshot. + * Drop patch applied upstream, refresh the remaining one. + * Update copyrights. + * Update build dependencies. + * Update install lists for the new ipa_proxy binary name. + * Install v4l2-compat.so into the non-dev package. + * Update standards version to 4.6.0, no changes needed. + + -- Andrej Shadura Tue, 09 Nov 2021 18:17:51 +0100 + +libcamera (0~git20200629+e7aa92a-8) unstable; urgency=medium + + * Explicitly not install *.so.sign — or maybe we should? + * Support nodoc build profile. + * Add the missing doxygen dependency. + * Add openssl as an explicit dependency. + + -- Andrej Shadura Sun, 21 Feb 2021 15:51:17 +0100 + +libcamera (0~git20200629+e7aa92a-7) unstable; urgency=medium + + [ You-Sheng Yang ] + * debian: build with v4l2. + * debian: build gstlibcamera. + * debian: move documentation into libcamera-doc. + * debian: lintian: fix embedded-javascript-library. + * lintian: override repeated-path-segment warnings. + * debian: fix spelling error. + + [ IOhannes m zmölnig (Debian/GNU) ] + * Bump dh-compat to 13. + + -- Andrej Shadura Mon, 19 Oct 2020 15:32:04 +0200 + +libcamera (0~git20200629+e7aa92a-6) unstable; urgency=medium + + * Stop shipping this symbols file, the symbols change all the time + depending on the architecture and the compiler version. + + -- Andrej Shadura Sun, 12 Jul 2020 12:09:02 +0200 + +libcamera (0~git20200629+e7aa92a-5) unstable; urgency=medium + + * Fix the symbol file syntax. + + -- Andrej Shadura Sun, 12 Jul 2020 11:26:33 +0200 + +libcamera (0~git20200629+e7aa92a-4) unstable; urgency=medium + + * Add wildcards for std::* and boost::* to the symbols file. + * Install ipa_proxy_linux into a multiarch directory. + + -- Andrej Shadura Sun, 12 Jul 2020 11:13:16 +0200 + +libcamera (0~git20200629+e7aa92a-3) unstable; urgency=medium + + * Allow actual pkg-config to be used as, well, pkg-config. + * Add libcamera0.symbols, probably not very useful right now. + * Install more files for libcamera0. + + -- Andrej Shadura Tue, 30 Jun 2020 18:12:32 +0200 + +libcamera (0~git20200629+e7aa92a-2) unstable; urgency=medium + + * Depend on a pkg-config implementation (Really closes: #959853). + + -- Andrej Shadura Tue, 30 Jun 2020 16:20:56 +0200 + +libcamera (0~git20200629+e7aa92a-1) unstable; urgency=medium + + * New upstream snapshot (Closes: #962274). + * Update patches. + * Update debian/copyright. + * Update build dependencies enabling qcam to be built (Closes: #959853). + + -- Andrej Shadura Tue, 30 Jun 2020 15:41:29 +0200 + +libcamera (0~git20200513+924778e-1.1) unstable; urgency=medium + + * Non-maintainer upload. + * debian/control: added libboost-dev to Build-Depends field to avoid a FTBFS. + Thanks to Logan Rosen . (Closes: #960758) + + -- Luis Paulo Linares Tue, 09 Jun 2020 13:08:13 -0300 + +libcamera (0~git20200513+924778e-1) unstable; urgency=medium + + * New upstream snapshot. + * Update copyrights. + + -- Andrej Shadura Fri, 15 May 2020 16:24:53 +0200 + +libcamera (0~git20200417+35269f0-2) unstable; urgency=medium + + * Update d/copyright + * Add GPL-2 license + * Use "Comment" for note about where to find licenses on "Debian systems" + * Regenerate d/copyright_hints + + -- IOhannes m zmölnig (Debian/GNU) Sun, 19 Apr 2020 16:22:23 +0200 + +libcamera (0~git20200417+35269f0-1) unstable; urgency=medium + + * New upstream version 0~git20200417+35269f0 + * Refresh patches + * B-D un gnutls-dev + * Add patch take return value of write() into account + * Add patch to fix spelling errors + * Enable hardening + * Move "libcamera-tools" into section "video" (Closes: 956720) + * Make build reproducible. + Thanks to Chris Lamb (Closes: #956304) + * Declare that building this package does not require 'root' powers. + * Update d/copyright + * Rearrange d/copyright paragraphs + * Add 'licensecheck' target + * Generate d/copyright_hints + * Add myself to copyright holders + * Bump standards version to 4.5.0 + + -- IOhannes m zmölnig (Debian/GNU) Sat, 18 Apr 2020 23:28:05 +0200 + +libcamera (0~git20200116+30f9624-1) unstable; urgency=medium + + * Initial release (Closes: #930456). + + -- Emmanuel Arias Sat, 22 Feb 2020 19:57:58 +0200 diff --git a/debian/control b/debian/control new file mode 100644 index 000000000..0f09f3c63 --- /dev/null +++ b/debian/control @@ -0,0 +1,161 @@ +Source: libcamera +Maintainer: Serge Schneider +Section: libs +Priority: optional +Build-Depends: debhelper-compat (= 13), + dh-sequence-python3, + libdrm-dev , + libdw-dev , + libevent-dev, + libgnutls28-dev | gnutls-dev, + libgstreamer-plugins-base1.0-dev, + libgstreamer1.0-dev, + libgtest-dev , + libjpeg-dev , + liblttng-ust-dev [!hurd-any !i386], + libpisp-dev [arm64 armel armhf], + libpython3-dev , + libsdl2-dev , + libtensorflow-lite-dev, + libtiff-dev, + libudev-dev [linux-any], + libyaml-dev, + libyuv-dev, + meson (>= 0.63), + openssl, + pkgconf, + python3-jinja2, + python3-ply, + python3-pybind11 , + python3-yaml, + qt6-base-dev [!i386] +Build-Depends-Indep: doxygen , + doxygen-latex , + graphviz , + libjs-jquery , + libjs-sphinxdoc , + libjs-underscore , + python3-sphinx , + python3-sphinx-book-theme , + python3-sphinxcontrib.doxylink +Standards-Version: 4.7.2 +Vcs-Browser: https://github.com/RPi-Distro/libcamera +Vcs-Git: https://github.com/RPi-Distro/libcamera.git +Homepage: https://libcamera.org/ +Rules-Requires-Root: no + +Package: libcamera-dev +Architecture: linux-any +Section: libdevel +Depends: libcamera0.7 (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Description: complex camera support library (development files) + libcamera is a complex camera support library which handles low-level + control of the camera devices, providing a unified higher-level + programming interface to the applications. + . + This package provides the necessary files needed for development + +Package: libcamera-doc +Architecture: all +Multi-Arch: foreign +Section: doc +Depends: libjs-jquery, + libjs-sphinxdoc, + libjs-underscore, + ${misc:Depends}, + ${shlibs:Depends} +Recommends: libcamera-dev +Description: complex camera support library (documentation) + libcamera is a complex camera support library which handles low-level + control of the camera devices, providing a unified higher-level + programming interface to the applications. + . + This package contains the documentation developing with libcamera. +Build-Profiles: + +Package: libcamera0.7 +Architecture: linux-any +Multi-Arch: same +Depends: ${misc:Depends}, + ${shlibs:Depends}, + libcamera-ipa (= ${binary:Version}) +Pre-Depends: ${misc:Pre-Depends} +Breaks: libcamera0 +Replaces: libcamera0 +Description: complex camera support library + libcamera is a complex camera support library which handles low-level + control of the camera devices, providing a unified higher-level + programming interface to the applications. + +Package: libcamera-ipa +Architecture: linux-any +Multi-Arch: same +Depends: ${misc:Depends}, + ${shlibs:Depends} +Recommends: awb-nn +Breaks: libcamera0 +Replaces: libcamera0 +Description: complex camera support library (IPA modules) + libcamera is a complex camera support library which handles low-level + control of the camera devices, providing a unified higher-level + programming interface to the applications. + . + This package contains the libcamera IPA (Image Processing Algorithms) modules. + +Package: libcamera-tools +Architecture: linux-any +Multi-Arch: foreign +Section: video +Depends: ${misc:Depends}, + ${shlibs:Depends}, + libcamera-v4l2 (= ${binary:Version}) +Pre-Depends: ${misc:Pre-Depends} +Description: complex camera support library (tools) + libcamera is a complex camera support library which handles low-level + control of the camera devices, providing a unified higher-level + programming interface to the applications. + . + This package provides cam and qcam, libcamera "Swiss army knife" tools. + +Package: libcamera-v4l2 +Architecture: linux-any +Multi-Arch: same +Depends: ${misc:Depends}, + ${shlibs:Depends} +Breaks: libcamera0 +Replaces: libcamera0 +Description: complex camera support library (V4L2 module) + libcamera is a complex camera support library which handles low-level + control of the camera devices, providing a unified higher-level + programming interface to the applications. + . + This package contains the libcamera V4L2 module. + +Package: gstreamer1.0-libcamera +Architecture: linux-any +Multi-Arch: same +Depends: ${misc:Depends}, + ${shlibs:Depends} +Breaks: libcamera0 +Replaces: libcamera0 +Description: complex camera support library (GStreamer plugin) + libcamera is a complex camera support library which handles low-level + control of the camera devices, providing a unified higher-level + programming interface to the applications. + . + This package contains the libcamera GStreamer plugin. + +Package: python3-libcamera +Architecture: linux-any +Section: python +Depends: ${misc:Depends}, + ${python3:Depends}, + ${shlibs:Depends} +Description: complex camera support library (Python bindings) + libcamera is a complex camera support library which handles low-level + control of the camera devices, providing a unified higher-level + programming interface to the applications. + . + This package contains the libcamera Python bindings. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 000000000..191d0b613 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,1131 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: libcamera +Upstream-Contact: Laurent Pinchart +Source: https://libcamera.org/ + +Files: * +Copyright: + 2018—2025 Libcamera contributors + 2019 Giulio Benetti + 2018—2019 Jacopo Mondi + 2018—2025 Kieran Bingham + 2018—2025 Laurent Pinchart + 2019 Mickael Guene + 2018—2019 Niklas Söderlund + 2019—2024 Paul Elder + 2018—2024 Google Inc. + 2021—2025 Ideas on Board Oy +License: GPL-2+ + +Files: + */*/meson.build +Copyright: + 2018—2025 Libcamera contributors +License: CC0-1.0 + +Files: + src/android/camera3_hal.cpp + src/libcamera/* + src/ipa/libipa/* + src/apps/common/dng_writer.* + include/libcamera/* +Copyright: + 2018—2025 Libcamera contributors + 2019 Giulio Benetti + 2018—2019 Jacopo Mondi + 2018—2019 Kieran Bingham + 2018—2019 Laurent Pinchart + 2019 Mickael Guene + 2018—2019 Niklas Söderlund + 2019 Paul Elder + 2018—2022 Google Inc. + 2019—2025 Raspberry Pi Ltd. + 2021—2025 Ideas on Board Oy + 2023 Linaro Ltd + 2023—2025 Red Hat Inc. +License: LGPL-2.1+ + +Files: + src/apps/qcam/assets/feathericons/*.svg +Copyright: + 2019 Cole Bemis (and other Feather icons contributors) +License: Expat +Comment: https://feathericons.com/ + +Files: + utils/codegen/ipc/mojo/* + utils/codegen/ipc/tools/* +Copyright: + 2013-2023 The Chromium Authors. All rights reserved. +License: BSD-3-Clause +Comment: Source: https://chromium.googlesource.com/chromium/src.git/ + +Files: src/gstreamer/* +Copyright: + 2019—2021 Collabora Ltd. +License: LGPL-2.1+ + +Files: + include/android/hardware/* + include/android/metadata/* + include/android/system/* + src/android/metadata/* +Copyright: 2008—2018 The Android Open Source Project +License: Apache-2.0 + +Files: + include/linux/v4l2-common.h + include/linux/v4l2-controls.h + include/linux/videodev2.h +Copyright: + 2012 Nokia Corporation + 1999-2012 V4L2 contributors +License: BSD-3-Clause or GPL-2+ + +Files: + include/linux/drm_fourcc.h +Copyright: + 2011 Intel Corporation + 1999 Precision Insight, Inc., Cedar Park, Texas + 2000 VA Linux Systems, Inc., Sunnyvale, California +License: Expat + +Files: include/linux/bcm2835-isp.h +Copyright: 2019—2025 Raspberry Pi Ltd +License: GPL-2+ with Linux-syscall-note exception or BSD-3-Clause + +Files: + include/linux/media-bus-format.h + include/linux/v4l2-mediabus.h +Copyright: 2009, Guennadi Liakhovetski +License: GPL-2 + +Files: + src/ipa/rpi/* + src/libcamera/pipeline/rpi/* + utils/raspberrypi/ctt/* +Copyright: + 2019—2025 Raspberry Pi Ltd +License: BSD-2-Clause + +Files: include/linux/rkisp1-config.h +Copyright: 2017, Rockchip Electronics Co., Ltd. +License: GPL-2+ + +Files: Documentation/* +Copyright: 2020—2025 Libcamera contributors +License: CC-BY-SA-4.0 + +Files: Documentation/theme/static/search.png +Copyright: 2022 Fonticons, Inc. +License: CC-BY-4.0 + +Files: Documentation/theme/search.html +Copyright: + 2007—2018 Sphinx team +License: BSD-2-Clause + +Files: debian/* +Copyright: + 2019 Emmanuel Arias + 2019—2022 Andrej Shadura + 2020 IOhannes m zmölnig + 2022-2025 Collabora Ltd. +License: GPL-2+ + +License: GPL-2+ + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2.0 of the License, or (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + . + You should have received a copy of the GNU General Public + License along with this library; if not, see https://www.gnu.org/licenses/ +Comment: + On Debian systems, the complete text of the GNU General Public + License, can be found in "/usr/share/common-licenses/GPL-2". + +License: GPL-2+ with Linux-syscall-note exception + NOTE! This copyright does *not* cover user programs that use kernel services + by normal system calls - this is merely considered normal use of the kernel, + and does *not* fall under the heading of "derived work". Also note that the + GPL below is copyrighted by the Free Software Foundation, but the instance of + code that it refers to (the Linux kernel) is copyrighted by me and others who + actually wrote it. + . + Also note that the only valid version of the GPL as far as the kernel is + concerned is _this_ particular version of the license (ie v2, not v2.2 or v3.x + or whatever), unless explicitly otherwise stated. + . + Linus Torvalds + . + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2.0 of the License, or (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + . + You should have received a copy of the GNU General Public + License along with this library; if not, see https://www.gnu.org/licenses/ +Comment: + On Debian systems, the complete text of the GNU General Public + License, can be found in "/usr/share/common-licenses/GPL-2". + +License: GPL-2 + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2.0 of the License. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + . + You should have received a copy of the GNU General Public + License along with this library; if not, see https://www.gnu.org/licenses/ +Comment: + On Debian systems, the complete text of the GNU General Public + License, can be found in "/usr/share/common-licenses/GPL-2". + +License: LGPL-2.1+ + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, see https://www.gnu.org/licenses/ +Comment: + On Debian systems, the complete text of the GNU Lesser General Public + License, can be found in "/usr/share/common-licenses/LGPL-2.1". + +License: BSD-2-Clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + . + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: BSD-3-Clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + . + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + 3. The names of its contributors may not be used to endorse or promote + products derived from this software without specific prior written + permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: Expat + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice (including the next + paragraph) shall be included in all copies or substantial portions of the + Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + VA LINUX SYSTEMS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR + OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + +License: Apache-2.0 + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + . + http://www.apache.org/licenses/LICENSE-2.0 + . + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +Comment: + On Debian systems, the complete text of the Apache License, + version 2.0 can be found in ‘/usr/share/common-licenses/Apache-2.0’. + +License: CC0-1.0 + On Debian systems, the complete text of the CC0 1.0 Universal + license can be found in ‘/usr/share/common-licenses/CC0-1.0’. + +License: CC-BY-SA-4.0 + Attribution-ShareAlike 4.0 International + . + ======================================================================= + . + Creative Commons Corporation ("Creative Commons") is not a law firm and + does not provide legal services or legal advice. Distribution of + Creative Commons public licenses does not create a lawyer-client or + other relationship. Creative Commons makes its licenses and related + information available on an "as-is" basis. Creative Commons gives no + warranties regarding its licenses, any material licensed under their + terms and conditions, or any related information. Creative Commons + disclaims all liability for damages resulting from their use to the + fullest extent possible. + . + Using Creative Commons Public Licenses + . + Creative Commons public licenses provide a standard set of terms and + conditions that creators and other rights holders may use to share + original works of authorship and other material subject to copyright + and certain other rights specified in the public license below. The + following considerations are for informational purposes only, are not + exhaustive, and do not form part of our licenses. + . + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + https://wiki.creativecommons.org/Considerations_for_licensors + . + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More considerations + for the public: + https://wiki.creativecommons.org/Considerations_for_licensees + . + ======================================================================= + . + Creative Commons Attribution-ShareAlike 4.0 International Public + License + . + By exercising the Licensed Rights (defined below), You accept and agree + to be bound by the terms and conditions of this Creative Commons + Attribution-ShareAlike 4.0 International Public License ("Public + License"). To the extent this Public License may be interpreted as a + contract, You are granted the Licensed Rights in consideration of Your + acceptance of these terms and conditions, and the Licensor grants You + such rights in consideration of benefits the Licensor receives from + making the Licensed Material available under these terms and + conditions. + . + . + Section 1 -- Definitions. + . + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + . + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + . + c. BY-SA Compatible License means a license listed at + creativecommons.org/compatiblelicenses, approved by Creative + Commons as essentially the equivalent of this Public License. + . + d. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + . + e. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + . + f. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + . + g. License Elements means the license attributes listed in the name + of a Creative Commons Public License. The License Elements of this + Public License are Attribution and ShareAlike. + . + h. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + . + i. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + . + j. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + . + k. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + . + l. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + . + m. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + . + . + Section 2 -- Scope. + . + a. License grant. + . + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + . + a. reproduce and Share the Licensed Material, in whole or + in part; and + . + b. produce, reproduce, and Share Adapted Material. + . + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + . + 3. Term. The term of this Public License is specified in Section + 6(a). + . + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + . + 5. Downstream recipients. + . + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + . + b. Additional offer from the Licensor -- Adapted Material. + Every recipient of Adapted Material from You + automatically receives an offer from the Licensor to + exercise the Licensed Rights in the Adapted Material + under the conditions of the Adapter's License You apply. + . + c. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + . + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + . + b. Other rights. + . + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + . + 2. Patent and trademark rights are not licensed under this + Public License. + . + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties. + . + . + Section 3 -- License Conditions. + . + Your exercise of the Licensed Rights is expressly made subject to the + following conditions. + . + a. Attribution. + . + 1. If You Share the Licensed Material (including in modified + form), You must: + . + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + . + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + . + ii. a copyright notice; + . + iii. a notice that refers to this Public License; + . + iv. a notice that refers to the disclaimer of + warranties; + . + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + . + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + . + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + . + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + . + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + . + b. ShareAlike. + . + In addition to the conditions in Section 3(a), if You Share + Adapted Material You produce, the following conditions also apply. + . + 1. The Adapter's License You apply must be a Creative Commons + license with the same License Elements, this version or + later, or a BY-SA Compatible License. + . + 2. You must include the text of, or the URI or hyperlink to, the + Adapter's License You apply. You may satisfy this condition + in any reasonable manner based on the medium, means, and + context in which You Share Adapted Material. + . + 3. You may not offer or impose any additional or different terms + or conditions on, or apply any Effective Technological + Measures to, Adapted Material that restrict exercise of the + rights granted under the Adapter's License You apply. + . + . + Section 4 -- Sui Generis Database Rights. + . + Where the Licensed Rights include Sui Generis Database Rights that + apply to Your use of the Licensed Material: + . + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database; + . + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material, + . + including for purposes of Section 3(b); and + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + . + For the avoidance of doubt, this Section 4 supplements and does not + replace Your obligations under this Public License where the Licensed + Rights include other Copyright and Similar Rights. + . + . + Section 5 -- Disclaimer of Warranties and Limitation of Liability. + . + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + . + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + . + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + . + . + Section 6 -- Term and Termination. + . + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + . + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + . + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + . + 2. upon express reinstatement by the Licensor. + . + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + . + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + . + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + . + . + Section 7 -- Other Terms and Conditions. + . + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + . + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + . + . + Section 8 -- Interpretation. + . + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + . + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + . + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + . + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + . + . + ======================================================================= + . + Creative Commons is not a party to its public + licenses. Notwithstanding, Creative Commons may elect to apply one of + its public licenses to material it publishes and in those instances + will be considered the “Licensor.” The text of the Creative Commons + public licenses is dedicated to the public domain under the CC0 Public + Domain Dedication. Except for the limited purpose of indicating that + material is shared under a Creative Commons public license or as + otherwise permitted by the Creative Commons policies published at + creativecommons.org/policies, Creative Commons does not authorize the + use of the trademark "Creative Commons" or any other trademark or logo + of Creative Commons without its prior written consent including, + without limitation, in connection with any unauthorized modifications + to any of its public licenses or any other arrangements, + understandings, or agreements concerning use of licensed material. For + the avoidance of doubt, this paragraph does not form part of the + public licenses. + . + Creative Commons may be contacted at creativecommons.org. + +License: CC-BY-4.0 + Attribution 4.0 International + . + ======================================================================= + . + Creative Commons Corporation ("Creative Commons") is not a law firm and + does not provide legal services or legal advice. Distribution of + Creative Commons public licenses does not create a lawyer-client or + other relationship. Creative Commons makes its licenses and related + information available on an "as-is" basis. Creative Commons gives no + warranties regarding its licenses, any material licensed under their + terms and conditions, or any related information. Creative Commons + disclaims all liability for damages resulting from their use to the + fullest extent possible. + . + Using Creative Commons Public Licenses + . + Creative Commons public licenses provide a standard set of terms and + conditions that creators and other rights holders may use to share + original works of authorship and other material subject to copyright + and certain other rights specified in the public license below. The + following considerations are for informational purposes only, are not + exhaustive, and do not form part of our licenses. + . + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + wiki.creativecommons.org/Considerations_for_licensors + . + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More_considerations + for the public: + wiki.creativecommons.org/Considerations_for_licensees + . + ======================================================================= + . + Creative Commons Attribution 4.0 International Public License + . + By exercising the Licensed Rights (defined below), You accept and agree + to be bound by the terms and conditions of this Creative Commons + Attribution 4.0 International Public License ("Public License"). To the + extent this Public License may be interpreted as a contract, You are + granted the Licensed Rights in consideration of Your acceptance of + these terms and conditions, and the Licensor grants You such rights in + consideration of benefits the Licensor receives from making the + Licensed Material available under these terms and conditions. + . + . + Section 1 -- Definitions. + . + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + . + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + . + c. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + . + d. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + . + e. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + . + f. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + . + g. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + . + h. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + . + i. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + . + j. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + . + k. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + . + . + Section 2 -- Scope. + . + a. License grant. + . + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + . + a. reproduce and Share the Licensed Material, in whole or + in part; and + . + b. produce, reproduce, and Share Adapted Material. + . + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + . + 3. Term. The term of this Public License is specified in Section + 6(a). + . + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + . + 5. Downstream recipients. + . + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + . + b. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + . + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + . + b. Other rights. + . + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + . + 2. Patent and trademark rights are not licensed under this + Public License. + . + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties. + . + . + Section 3 -- License Conditions. + . + Your exercise of the Licensed Rights is expressly made subject to the + following conditions. + . + a. Attribution. + . + 1. If You Share the Licensed Material (including in modified + form), You must: + . + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + . + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + . + ii. a copyright notice; + . + iii. a notice that refers to this Public License; + . + iv. a notice that refers to the disclaimer of + warranties; + . + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + . + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + . + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + . + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + . + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + . + 4. If You Share Adapted Material You produce, the Adapter's + License You apply must not prevent recipients of the Adapted + Material from complying with this Public License. + . + . + Section 4 -- Sui Generis Database Rights. + . + Where the Licensed Rights include Sui Generis Database Rights that + apply to Your use of the Licensed Material: + . + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database; + . + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material; and + . + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + . + For the avoidance of doubt, this Section 4 supplements and does not + replace Your obligations under this Public License where the Licensed + Rights include other Copyright and Similar Rights. + . + . + Section 5 -- Disclaimer of Warranties and Limitation of Liability. + . + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + . + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + . + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + . + . + Section 6 -- Term and Termination. + . + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + . + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + . + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + . + 2. upon express reinstatement by the Licensor. + . + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + . + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + . + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + . + . + Section 7 -- Other Terms and Conditions. + . + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + . + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + . + . + Section 8 -- Interpretation. + . + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + . + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + . + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + . + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + . + . + ======================================================================= + . + Creative Commons is not a party to its public + licenses. Notwithstanding, Creative Commons may elect to apply one of + its public licenses to material it publishes and in those instances + will be considered the “Licensor.” The text of the Creative Commons + public licenses is dedicated to the public domain under the CC0 Public + Domain Dedication. Except for the limited purpose of indicating that + material is shared under a Creative Commons public license or as + otherwise permitted by the Creative Commons policies published at + creativecommons.org/policies, Creative Commons does not authorize the + use of the trademark "Creative Commons" or any other trademark or logo + of Creative Commons without its prior written consent including, + without limitation, in connection with any unauthorized modifications + to any of its public licenses or any other arrangements, + understandings, or agreements concerning use of licensed material. For + the avoidance of doubt, this paragraph does not form part of the + public licenses. + . + Creative Commons may be contacted at creativecommons.org. diff --git a/debian/copyright_hints b/debian/copyright_hints new file mode 100644 index 000000000..38ca4dde8 --- /dev/null +++ b/debian/copyright_hints @@ -0,0 +1,1170 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: FIXME +Upstream-Contact: FIXME +Source: FIXME +Disclaimer: Autogenerated by licensecheck + +Files: include/libcamera/base/bound_method.h + include/libcamera/base/class.h + include/libcamera/base/compiler.h + include/libcamera/base/event_dispatcher.h + include/libcamera/base/event_dispatcher_poll.h + include/libcamera/base/event_notifier.h + include/libcamera/base/file.h + include/libcamera/base/flags.h + include/libcamera/base/log.h + include/libcamera/base/message.h + include/libcamera/base/mutex.h + include/libcamera/base/object.h + include/libcamera/base/private.h + include/libcamera/base/semaphore.h + include/libcamera/base/shared_fd.h + include/libcamera/base/signal.h + include/libcamera/base/span.h + include/libcamera/base/thread.h + include/libcamera/base/thread_annotations.h + include/libcamera/base/timer.h + include/libcamera/base/unique_fd.h + include/libcamera/base/utils.h + include/libcamera/camera.h + include/libcamera/camera_manager.h + include/libcamera/controls.h + include/libcamera/fence.h + include/libcamera/framebuffer.h + include/libcamera/framebuffer_allocator.h + include/libcamera/geometry.h + include/libcamera/internal/byte_stream_buffer.h + include/libcamera/internal/camera.h + include/libcamera/internal/camera_controls.h + include/libcamera/internal/camera_lens.h + include/libcamera/internal/camera_sensor.h + include/libcamera/internal/camera_sensor_properties.h + include/libcamera/internal/control_serializer.h + include/libcamera/internal/control_validator.h + include/libcamera/internal/device_enumerator.h + include/libcamera/internal/device_enumerator_sysfs.h + include/libcamera/internal/device_enumerator_udev.h + include/libcamera/internal/formats.h + include/libcamera/internal/framebuffer.h + include/libcamera/internal/ipa_data_serializer.h + include/libcamera/internal/ipa_manager.h + include/libcamera/internal/ipa_module.h + include/libcamera/internal/ipa_proxy.h + include/libcamera/internal/ipc_pipe.h + include/libcamera/internal/ipc_pipe_unixsocket.h + include/libcamera/internal/ipc_unixsocket.h + include/libcamera/internal/mapped_framebuffer.h + include/libcamera/internal/media_device.h + include/libcamera/internal/media_object.h + include/libcamera/internal/pipeline_handler.h + include/libcamera/internal/process.h + include/libcamera/internal/pub_key.h + include/libcamera/internal/request.h + include/libcamera/internal/source_paths.h + include/libcamera/internal/sysfs.h + include/libcamera/internal/v4l2_device.h + include/libcamera/internal/v4l2_subdevice.h + include/libcamera/internal/v4l2_videodevice.h + include/libcamera/internal/yaml_parser.h + include/libcamera/ipa/ipa_controls.h + include/libcamera/ipa/ipa_interface.h + include/libcamera/ipa/ipa_module_info.h + include/libcamera/logging.h + include/libcamera/pixel_format.h + include/libcamera/request.h + include/libcamera/stream.h + src/android/camera3_hal.cpp + src/android/camera_buffer.h + src/android/camera_capabilities.cpp + src/android/camera_capabilities.h + src/android/camera_device.cpp + src/android/camera_device.h + src/android/camera_hal_config.cpp + src/android/camera_hal_config.h + src/android/camera_hal_manager.cpp + src/android/camera_hal_manager.h + src/android/camera_metadata.cpp + src/android/camera_metadata.h + src/android/camera_ops.cpp + src/android/camera_ops.h + src/android/camera_request.cpp + src/android/camera_request.h + src/android/camera_stream.cpp + src/android/camera_stream.h + src/android/cros/camera3_hal.cpp + src/android/cros_mojo_token.h + src/android/frame_buffer_allocator.h + src/android/hal_framebuffer.cpp + src/android/hal_framebuffer.h + src/android/jpeg/encoder.h + src/android/jpeg/encoder_jea.cpp + src/android/jpeg/encoder_jea.h + src/android/jpeg/encoder_libjpeg.cpp + src/android/jpeg/encoder_libjpeg.h + src/android/jpeg/exif.cpp + src/android/jpeg/exif.h + src/android/jpeg/post_processor_jpeg.cpp + src/android/jpeg/post_processor_jpeg.h + src/android/jpeg/thumbnailer.cpp + src/android/jpeg/thumbnailer.h + src/android/mm/cros_camera_buffer.cpp + src/android/mm/cros_frame_buffer_allocator.cpp + src/android/mm/generic_camera_buffer.cpp + src/android/mm/generic_frame_buffer_allocator.cpp + src/android/post_processor.h + src/android/yuv/post_processor_yuv.cpp + src/android/yuv/post_processor_yuv.h + src/ipa/ipu3/ipa_context.cpp + src/ipa/ipu3/ipa_context.h + src/ipa/ipu3/ipu3.cpp + src/ipa/libipa/camera_sensor_helper.cpp + src/ipa/libipa/camera_sensor_helper.h + src/ipa/libipa/fc_queue.cpp + src/ipa/libipa/fc_queue.h + src/ipa/rkisp1/rkisp1.cpp + src/ipa/vimc/vimc.cpp + src/libcamera/base/bound_method.cpp + src/libcamera/base/class.cpp + src/libcamera/base/event_dispatcher.cpp + src/libcamera/base/event_dispatcher_poll.cpp + src/libcamera/base/event_notifier.cpp + src/libcamera/base/file.cpp + src/libcamera/base/flags.cpp + src/libcamera/base/log.cpp + src/libcamera/base/message.cpp + src/libcamera/base/mutex.cpp + src/libcamera/base/object.cpp + src/libcamera/base/semaphore.cpp + src/libcamera/base/shared_fd.cpp + src/libcamera/base/signal.cpp + src/libcamera/base/thread.cpp + src/libcamera/base/timer.cpp + src/libcamera/base/unique_fd.cpp + src/libcamera/base/utils.cpp + src/libcamera/byte_stream_buffer.cpp + src/libcamera/camera.cpp + src/libcamera/camera_controls.cpp + src/libcamera/camera_lens.cpp + src/libcamera/camera_manager.cpp + src/libcamera/control_serializer.cpp + src/libcamera/control_validator.cpp + src/libcamera/controls.cpp + src/libcamera/device_enumerator.cpp + src/libcamera/device_enumerator_sysfs.cpp + src/libcamera/device_enumerator_udev.cpp + src/libcamera/fence.cpp + src/libcamera/formats.cpp + src/libcamera/framebuffer.cpp + src/libcamera/framebuffer_allocator.cpp + src/libcamera/geometry.cpp + src/libcamera/ipa_controls.cpp + src/libcamera/ipa_data_serializer.cpp + src/libcamera/ipa_interface.cpp + src/libcamera/ipa_manager.cpp + src/libcamera/ipa_module.cpp + src/libcamera/ipa_proxy.cpp + src/libcamera/ipc_pipe.cpp + src/libcamera/ipc_pipe_unixsocket.cpp + src/libcamera/ipc_unixsocket.cpp + src/libcamera/mapped_framebuffer.cpp + src/libcamera/media_device.cpp + src/libcamera/media_object.cpp + src/libcamera/pipeline/ipu3/cio2.cpp + src/libcamera/pipeline/ipu3/cio2.h + src/libcamera/pipeline/ipu3/frames.cpp + src/libcamera/pipeline/ipu3/frames.h + src/libcamera/pipeline/ipu3/imgu.cpp + src/libcamera/pipeline/ipu3/imgu.h + src/libcamera/pipeline/ipu3/ipu3.cpp + src/libcamera/pipeline/rkisp1/rkisp1.cpp + src/libcamera/pipeline/rkisp1/rkisp1_path.cpp + src/libcamera/pipeline/rkisp1/rkisp1_path.h + src/libcamera/pipeline/uvcvideo/uvcvideo.cpp + src/libcamera/pipeline/vimc/vimc.cpp + src/libcamera/pipeline_handler.cpp + src/libcamera/pixel_format.cpp + src/libcamera/process.cpp + src/libcamera/pub_key.cpp + src/libcamera/request.cpp + src/libcamera/sensor/camera_sensor.cpp + src/libcamera/sensor/camera_sensor_properties.cpp + src/libcamera/source_paths.cpp + src/libcamera/stream.cpp + src/libcamera/sysfs.cpp + src/libcamera/tracepoints.cpp + src/libcamera/v4l2_device.cpp + src/libcamera/v4l2_subdevice.cpp + src/libcamera/v4l2_videodevice.cpp + src/libcamera/yaml_parser.cpp + src/v4l2/v4l2_camera.cpp + src/v4l2/v4l2_camera.h + src/v4l2/v4l2_camera_file.cpp + src/v4l2/v4l2_camera_file.h + src/v4l2/v4l2_camera_proxy.cpp + src/v4l2/v4l2_camera_proxy.h + src/v4l2/v4l2_compat.cpp + src/v4l2/v4l2_compat_manager.cpp + src/v4l2/v4l2_compat_manager.h + utils/codegen/gen-header.sh +Copyright: 2018, Google Inc. + 2018-2019, Google Inc. + 2019, Google Inc. + 2019-2021, Google Inc. + 2020, Google Inc. + 2021, Google Inc. + 2022, Google Inc. +License: LGPL-2.1 + FIXME + +Files: src/ipa/libipa/histogram.cpp + src/ipa/libipa/histogram.h + src/ipa/libipa/pwl.h + src/ipa/rpi/cam_helper/cam_helper.cpp + src/ipa/rpi/cam_helper/cam_helper.h + src/ipa/rpi/cam_helper/cam_helper_imx219.cpp + src/ipa/rpi/cam_helper/cam_helper_imx283.cpp + src/ipa/rpi/cam_helper/cam_helper_imx290.cpp + src/ipa/rpi/cam_helper/cam_helper_imx296.cpp + src/ipa/rpi/cam_helper/cam_helper_imx477.cpp + src/ipa/rpi/cam_helper/cam_helper_imx708.cpp + src/ipa/rpi/cam_helper/cam_helper_ov5647.cpp + src/ipa/rpi/cam_helper/cam_helper_ov9281.cpp + src/ipa/rpi/cam_helper/md_parser.h + src/ipa/rpi/cam_helper/md_parser_smia.cpp + src/ipa/rpi/common/ipa_base.cpp + src/ipa/rpi/common/ipa_base.h + src/ipa/rpi/controller/af_algorithm.h + src/ipa/rpi/controller/af_status.h + src/ipa/rpi/controller/agc_algorithm.h + src/ipa/rpi/controller/agc_status.h + src/ipa/rpi/controller/algorithm.cpp + src/ipa/rpi/controller/algorithm.h + src/ipa/rpi/controller/alsc_status.h + src/ipa/rpi/controller/awb_algorithm.h + src/ipa/rpi/controller/awb_status.h + src/ipa/rpi/controller/black_level_algorithm.h + src/ipa/rpi/controller/black_level_status.h + src/ipa/rpi/controller/cac_status.h + src/ipa/rpi/controller/camera_mode.h + src/ipa/rpi/controller/ccm_algorithm.h + src/ipa/rpi/controller/ccm_status.h + src/ipa/rpi/controller/contrast_algorithm.h + src/ipa/rpi/controller/contrast_status.h + src/ipa/rpi/controller/controller.cpp + src/ipa/rpi/controller/controller.h + src/ipa/rpi/controller/denoise_algorithm.h + src/ipa/rpi/controller/denoise_status.h + src/ipa/rpi/controller/device_status.cpp + src/ipa/rpi/controller/device_status.h + src/ipa/rpi/controller/dpc_status.h + src/ipa/rpi/controller/geq_status.h + src/ipa/rpi/controller/hdr_algorithm.h + src/ipa/rpi/controller/hdr_status.h + src/ipa/rpi/controller/histogram.cpp + src/ipa/rpi/controller/histogram.h + src/ipa/rpi/controller/lux_status.h + src/ipa/rpi/controller/metadata.h + src/ipa/rpi/controller/noise_status.h + src/ipa/rpi/controller/pdaf_data.h + src/ipa/rpi/controller/region_stats.h + src/ipa/rpi/controller/rpi/af.cpp + src/ipa/rpi/controller/rpi/af.h + src/ipa/rpi/controller/rpi/agc.cpp + src/ipa/rpi/controller/rpi/agc.h + src/ipa/rpi/controller/rpi/agc_channel.cpp + src/ipa/rpi/controller/rpi/agc_channel.h + src/ipa/rpi/controller/rpi/alsc.cpp + src/ipa/rpi/controller/rpi/alsc.h + src/ipa/rpi/controller/rpi/awb.cpp + src/ipa/rpi/controller/rpi/awb.h + src/ipa/rpi/controller/rpi/black_level.cpp + src/ipa/rpi/controller/rpi/black_level.h + src/ipa/rpi/controller/rpi/cac.cpp + src/ipa/rpi/controller/rpi/cac.h + src/ipa/rpi/controller/rpi/ccm.cpp + src/ipa/rpi/controller/rpi/ccm.h + src/ipa/rpi/controller/rpi/contrast.cpp + src/ipa/rpi/controller/rpi/contrast.h + src/ipa/rpi/controller/rpi/denoise.cpp + src/ipa/rpi/controller/rpi/denoise.h + src/ipa/rpi/controller/rpi/dpc.cpp + src/ipa/rpi/controller/rpi/dpc.h + src/ipa/rpi/controller/rpi/focus.h + src/ipa/rpi/controller/rpi/geq.cpp + src/ipa/rpi/controller/rpi/geq.h + src/ipa/rpi/controller/rpi/hdr.cpp + src/ipa/rpi/controller/rpi/hdr.h + src/ipa/rpi/controller/rpi/lux.cpp + src/ipa/rpi/controller/rpi/lux.h + src/ipa/rpi/controller/rpi/noise.cpp + src/ipa/rpi/controller/rpi/noise.h + src/ipa/rpi/controller/rpi/saturation.cpp + src/ipa/rpi/controller/rpi/saturation.h + src/ipa/rpi/controller/rpi/sdn.cpp + src/ipa/rpi/controller/rpi/sdn.h + src/ipa/rpi/controller/rpi/sharpen.cpp + src/ipa/rpi/controller/rpi/sharpen.h + src/ipa/rpi/controller/rpi/tonemap.cpp + src/ipa/rpi/controller/rpi/tonemap.h + src/ipa/rpi/controller/saturation_status.h + src/ipa/rpi/controller/sharpen_algorithm.h + src/ipa/rpi/controller/sharpen_status.h + src/ipa/rpi/controller/statistics.h + src/ipa/rpi/controller/stitch_status.h + src/ipa/rpi/controller/tonemap_status.h + src/ipa/rpi/vc4/vc4.cpp + utils/raspberrypi/ctt/alsc_only.py + utils/raspberrypi/ctt/convert_tuning.py + utils/raspberrypi/ctt/ctt.py + utils/raspberrypi/ctt/ctt_alsc.py + utils/raspberrypi/ctt/ctt_awb.py + utils/raspberrypi/ctt/ctt_cac.py + utils/raspberrypi/ctt/ctt_ccm.py + utils/raspberrypi/ctt/ctt_dots_locator.py + utils/raspberrypi/ctt/ctt_geq.py + utils/raspberrypi/ctt/ctt_image_load.py + utils/raspberrypi/ctt/ctt_lux.py + utils/raspberrypi/ctt/ctt_macbeth_locator.py + utils/raspberrypi/ctt/ctt_noise.py + utils/raspberrypi/ctt/ctt_pisp.py + utils/raspberrypi/ctt/ctt_pretty_print_json.py + utils/raspberrypi/ctt/ctt_ransac.py + utils/raspberrypi/ctt/ctt_tools.py + utils/raspberrypi/ctt/ctt_vc4.py + utils/tuning/libtuning/ctt_awb.py + utils/tuning/libtuning/ctt_ccm.py + utils/tuning/libtuning/ctt_ransac.py + utils/tuning/libtuning/generators/raspberrypi_output.py + utils/tuning/libtuning/image.py +Copyright: 2019, Raspberry Pi Ltd + 2019-2020, Raspberry Pi Ltd + 2019-2021, Raspberry Pi Ltd + 2019-2023, Raspberry Pi Ltd + 2020, Raspberry Pi Ltd + 2021, Raspberry Pi Ltd + 2022, Raspberry Pi Ltd + 2022-2023, Raspberry Pi Ltd + 2023, Raspberry Pi Ltd + 2024, Raspberry Pi Ltd +License: BSD-2-clause + FIXME + +Files: Documentation/gen-doxyfile.py + src/apps/cam/camera_session.cpp + src/apps/cam/camera_session.h + src/apps/cam/file_sink.cpp + src/apps/cam/file_sink.h + src/apps/cam/main.cpp + src/apps/cam/main.h + src/apps/common/event_loop.cpp + src/apps/common/event_loop.h + src/apps/common/options.cpp + src/apps/common/options.h + src/apps/lc-compliance/helpers/capture.cpp + src/apps/lc-compliance/helpers/capture.h + src/apps/qcam/format_converter.cpp + src/apps/qcam/format_converter.h + src/apps/qcam/main.cpp + src/apps/qcam/main_window.cpp + src/apps/qcam/main_window.h + src/apps/qcam/viewfinder.h + src/apps/qcam/viewfinder_qt.cpp + src/apps/qcam/viewfinder_qt.h + src/ipa/ipa-sign-install.sh + src/ipa/ipa-sign.sh + test/byte-stream-buffer.cpp + test/camera-sensor.cpp + test/camera/buffer_import.cpp + test/camera/camera_reconfigure.cpp + test/camera/capture.cpp + test/camera/configuration_default.cpp + test/camera/configuration_set.cpp + test/camera/statemachine.cpp + test/controls/control_info.cpp + test/controls/control_info_map.cpp + test/controls/control_list.cpp + test/controls/control_value.cpp + test/delayed_controls.cpp + test/event-dispatcher.cpp + test/event-thread.cpp + test/event.cpp + test/fence.cpp + test/file.cpp + test/flags.cpp + test/geometry.cpp + test/ipa/ipa_interface_test.cpp + test/ipa/ipa_module_test.cpp + test/ipc/unixsocket.cpp + test/ipc/unixsocket_ipc.cpp + test/libtest/buffer_source.cpp + test/libtest/buffer_source.h + test/libtest/camera_test.cpp + test/libtest/camera_test.h + test/libtest/test.cpp + test/libtest/test.h + test/log/log_api.cpp + test/log/log_process.cpp + test/mapped-buffer.cpp + test/media_device/media_device_acquire.cpp + test/media_device/media_device_link_test.cpp + test/media_device/media_device_print_test.cpp + test/media_device/media_device_test.cpp + test/media_device/media_device_test.h + test/message.cpp + test/object-delete.cpp + test/object-invoke.cpp + test/object.cpp + test/process/process_test.cpp + test/public-api.cpp + test/serialization/control_serialization.cpp + test/serialization/generated_serializer/generated_serializer_test.cpp + test/serialization/ipa_data_serializer_test.cpp + test/serialization/serialization_test.cpp + test/serialization/serialization_test.h + test/shared-fd.cpp + test/signal-threads.cpp + test/signal.cpp + test/span.cpp + test/stream/stream_formats.cpp + test/threads.cpp + test/timer-thread.cpp + test/timer.cpp + test/unique-fd.cpp + test/utils.cpp + test/v4l2_compat/v4l2_compat_test.py + test/v4l2_subdevice/list_formats.cpp + test/v4l2_subdevice/test_formats.cpp + test/v4l2_subdevice/v4l2_subdevice_test.cpp + test/v4l2_subdevice/v4l2_subdevice_test.h + test/v4l2_videodevice/buffer_cache.cpp + test/v4l2_videodevice/buffer_sharing.cpp + test/v4l2_videodevice/capture_async.cpp + test/v4l2_videodevice/controls.cpp + test/v4l2_videodevice/double_open.cpp + test/v4l2_videodevice/formats.cpp + test/v4l2_videodevice/request_buffers.cpp + test/v4l2_videodevice/stream_on_off.cpp + test/v4l2_videodevice/v4l2_m2mdevice.cpp + test/v4l2_videodevice/v4l2_videodevice_test.cpp + test/v4l2_videodevice/v4l2_videodevice_test.h + test/yaml-parser.cpp + utils/checkstyle.py + utils/codegen/controls.py + utils/codegen/gen-controls.py + utils/codegen/gen-formats.py + utils/codegen/gen-ipa-pub-key.py + utils/codegen/gen-tp-header.py + utils/codegen/ipc/extract-docs.py + utils/codegen/ipc/generators/mojom_libcamera_generator.py + utils/gen-ipa-priv-key.sh + utils/ipu3/ipu3-capture.sh + utils/ipu3/ipu3-process.sh + utils/rkisp1/rkisp1-capture.sh + utils/tracepoints/analyze-ipa-trace.py +Copyright: 2018, Google Inc. + 2018-2019, Google Inc. + 2019, Google Inc. + 2020, Google Inc. + 2020-2021, Google Inc. + 2021, Google Inc. + 2022, Google Inc. + 2024, Google Inc. +License: GPL-2 + FIXME + +Files: utils/codegen/ipc/mojo/public/tools/bindings/checks/mojom_attributes_check.py + utils/codegen/ipc/mojo/public/tools/bindings/checks/mojom_attributes_check_unittest.py + utils/codegen/ipc/mojo/public/tools/bindings/checks/mojom_definitions_check.py + utils/codegen/ipc/mojo/public/tools/bindings/checks/mojom_interface_feature_check.py + utils/codegen/ipc/mojo/public/tools/bindings/checks/mojom_interface_feature_check_unittest.py + utils/codegen/ipc/mojo/public/tools/bindings/checks/mojom_restrictions_check.py + utils/codegen/ipc/mojo/public/tools/bindings/checks/mojom_restrictions_checks_unittest.py + utils/codegen/ipc/mojo/public/tools/bindings/concatenate-files.py + utils/codegen/ipc/mojo/public/tools/bindings/concatenate_and_replace_closure_exports.py + utils/codegen/ipc/mojo/public/tools/bindings/gen_data_files_list.py + utils/codegen/ipc/mojo/public/tools/bindings/generate_type_mappings.py + utils/codegen/ipc/mojo/public/tools/bindings/minify_with_terser.py + utils/codegen/ipc/mojo/public/tools/bindings/mojom_bindings_generator.py + utils/codegen/ipc/mojo/public/tools/bindings/mojom_bindings_generator_unittest.py + utils/codegen/ipc/mojo/public/tools/bindings/validate_typemap_config.py + utils/codegen/ipc/mojo/public/tools/mojom/check_stable_mojom_compatibility.py + utils/codegen/ipc/mojo/public/tools/mojom/check_stable_mojom_compatibility_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/const_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/enum_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/feature_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/error.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/fileutil.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/fileutil_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/check.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/generator.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/generator_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/module.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/module_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/pack.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/pack_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/template_expander.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/translate.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/translate_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/parse/ast.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/parse/ast_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/parse/conditional_features.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/parse/conditional_features_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/parse/lexer.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/parse/lexer_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/parse/parser.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom/parse/parser_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom_parser.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom_parser_test_case.py + utils/codegen/ipc/mojo/public/tools/mojom/mojom_parser_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/stable_attribute_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/union_unittest.py + utils/codegen/ipc/mojo/public/tools/mojom/version_compatibility_unittest.py + utils/codegen/ipc/mojo/public/tools/run_all_python_unittests.py + utils/codegen/ipc/tools/diagnosis/crbug_1001171.py +Copyright: 2013, The Chromium Authors + 2014, The Chromium Authors + 2015, The Chromium Authors + 2016, The Chromium Authors + 2017, The Chromium Authors + 2018, The Chromium Authors + 2019, The Chromium Authors + 2020, The Chromium Authors + 2022, The Chromium Authors + 2023, The Chromium Authors +License: UNKNOWN + FIXME + +Files: src/ipa/ipu3/algorithms/agc.cpp + src/ipa/ipu3/algorithms/agc.h + src/ipa/ipu3/algorithms/algorithm.h + src/ipa/ipu3/algorithms/awb.cpp + src/ipa/ipu3/algorithms/awb.h + src/ipa/ipu3/module.h + src/ipa/libipa/algorithm.cpp + src/ipa/libipa/algorithm.h + src/ipa/libipa/lsc_polynomial.cpp + src/ipa/libipa/lsc_polynomial.h + src/ipa/libipa/module.cpp + src/ipa/libipa/module.h + src/ipa/rkisp1/algorithms/agc.cpp + src/ipa/rkisp1/algorithms/agc.h + src/ipa/rkisp1/algorithms/algorithm.h + src/ipa/rkisp1/algorithms/awb.cpp + src/ipa/rkisp1/algorithms/awb.h + src/ipa/rkisp1/algorithms/blc.cpp + src/ipa/rkisp1/algorithms/blc.h + src/ipa/rkisp1/algorithms/ccm.cpp + src/ipa/rkisp1/algorithms/ccm.h + src/ipa/rkisp1/algorithms/cproc.cpp + src/ipa/rkisp1/algorithms/cproc.h + src/ipa/rkisp1/algorithms/dpcc.cpp + src/ipa/rkisp1/algorithms/dpcc.h + src/ipa/rkisp1/algorithms/dpf.cpp + src/ipa/rkisp1/algorithms/dpf.h + src/ipa/rkisp1/algorithms/filter.cpp + src/ipa/rkisp1/algorithms/filter.h + src/ipa/rkisp1/algorithms/goc.cpp + src/ipa/rkisp1/algorithms/goc.h + src/ipa/rkisp1/algorithms/gsl.cpp + src/ipa/rkisp1/algorithms/gsl.h + src/ipa/rkisp1/algorithms/lsc.cpp + src/ipa/rkisp1/algorithms/lsc.h + src/ipa/rkisp1/ipa_context.cpp + src/ipa/rkisp1/ipa_context.h + src/ipa/rkisp1/module.h + src/ipa/rkisp1/params.cpp + src/ipa/rkisp1/params.h +Copyright: 2021, Ideas On Board + 2021-2022, Ideas On Board + 2022, Ideas On Board + 2024, Ideas On Board +License: LGPL-2.1 + FIXME + +Files: test/ipa/rkisp1/rkisp1-utils.cpp + utils/tuning/libtuning/__init__.py + utils/tuning/libtuning/average.py + utils/tuning/libtuning/generators/__init__.py + utils/tuning/libtuning/generators/generator.py + utils/tuning/libtuning/generators/yaml_output.py + utils/tuning/libtuning/gradient.py + utils/tuning/libtuning/libtuning.py + utils/tuning/libtuning/modules/__init__.py + utils/tuning/libtuning/modules/agc/__init__.py + utils/tuning/libtuning/modules/ccm/__init__.py + utils/tuning/libtuning/modules/lsc/__init__.py + utils/tuning/libtuning/modules/module.py + utils/tuning/libtuning/parsers/__init__.py + utils/tuning/libtuning/parsers/parser.py + utils/tuning/libtuning/parsers/raspberrypi_parser.py + utils/tuning/libtuning/parsers/yaml_parser.py + utils/tuning/libtuning/smoothing.py + utils/tuning/raspberrypi/__init__.py + utils/tuning/raspberrypi/alsc.py + utils/tuning/raspberrypi_alsc_only.py + utils/tuning/rkisp1.py +Copyright: 2022, Paul Elder + 2024, Paul Elder +License: GPL-2 + FIXME + +Files: src/apps/cam/capture_script.cpp + src/apps/cam/capture_script.h + src/apps/cam/drm.cpp + src/apps/cam/drm.h + src/apps/cam/frame_sink.cpp + src/apps/cam/frame_sink.h + src/apps/cam/kms_sink.cpp + src/apps/cam/kms_sink.h + src/apps/cam/sdl_sink.cpp + src/apps/cam/sdl_sink.h + src/apps/cam/sdl_texture.cpp + src/apps/cam/sdl_texture.h + src/apps/cam/sdl_texture_mjpg.cpp + src/apps/cam/sdl_texture_mjpg.h + src/apps/cam/sdl_texture_yuv.cpp + src/apps/cam/sdl_texture_yuv.h + src/apps/ipa-verify/main.cpp + test/ipa/libipa/interpolator.cpp + test/timer-fail.cpp + utils/rkisp1/gen-csc-table.py +Copyright: 2021, Ideas on Board Oy + 2022, Ideas on Board Oy + 2023, Ideas on Board Oy + 2024, Ideas on Board Oy +License: GPL-2 + FIXME + +Files: include/libcamera/color_space.h + include/libcamera/internal/bayer_format.h + include/libcamera/internal/delayed_controls.h + include/libcamera/internal/dma_buf_allocator.h + include/libcamera/transform.h + src/apps/common/dng_writer.cpp + src/apps/common/dng_writer.h + src/libcamera/bayer_format.cpp + src/libcamera/color_space.cpp + src/libcamera/delayed_controls.cpp + src/libcamera/pipeline/rpi/common/delayed_controls.cpp + src/libcamera/pipeline/rpi/common/delayed_controls.h + src/libcamera/pipeline/rpi/common/pipeline_base.cpp + src/libcamera/pipeline/rpi/common/pipeline_base.h + src/libcamera/pipeline/rpi/common/rpi_stream.cpp + src/libcamera/pipeline/rpi/common/rpi_stream.h + src/libcamera/pipeline/rpi/vc4/vc4.cpp + src/libcamera/transform.cpp +Copyright: 2019-2023, Raspberry Pi Ltd + 2020, Raspberry Pi Ltd + 2021, Raspberry Pi Ltd +License: LGPL-2.1 + FIXME + +Files: include/android/hardware/libhardware/include/hardware/camera3.h + include/android/hardware/libhardware/include/hardware/camera_common.h + include/android/hardware/libhardware/include/hardware/fb.h + include/android/hardware/libhardware/include/hardware/gralloc.h + include/android/hardware/libhardware/include/hardware/hardware.h + include/android/metadata/camera_metadata_hidden.h + include/android/metadata/system/camera_metadata.h + include/android/metadata/system/camera_metadata_tags.h + include/android/metadata/system/camera_vendor_tags.h + include/android/system/core/include/android/log.h + include/android/system/core/include/cutils/compiler.h + include/android/system/core/include/cutils/native_handle.h + include/android/system/core/include/system/camera.h + include/android/system/core/include/system/graphics.h + src/android/metadata/camera_metadata.c + src/android/metadata/camera_metadata_tag_info.c +Copyright: 2008, The Android Open Source Project + 2009, The Android Open Source Project + 2011, The Android Open Source Project + 2012, The Android Open Source Project + 2013-2018, The Android Open Source Project + 2014, The Android Open Source Project +License: Apache-2.0 + FIXME + +Files: debian/control + debian/patches/series + debian/rules + debian/source/format + debian/tests/check-IPA-modules-signatures + debian/tests/control + debian/tests/run-tools + debian/upstream/metadata + debian/watch + utils/codegen/ipc/mojo/public/tools/bindings/README.md + utils/codegen/ipc/mojo/public/tools/mojom/README.md + utils/raspberrypi/ctt/colors.py + utils/raspberrypi/ctt/ctt_visualise.py + utils/tuning/libtuning/ctt_colors.py +Copyright: NONE +License: UNKNOWN + FIXME + +Files: src/gstreamer/gstlibcamera-utils.cpp + src/gstreamer/gstlibcamera-utils.h + src/gstreamer/gstlibcamera.cpp + src/gstreamer/gstlibcameraallocator.cpp + src/gstreamer/gstlibcameraallocator.h + src/gstreamer/gstlibcamerapad.cpp + src/gstreamer/gstlibcamerapad.h + src/gstreamer/gstlibcamerapool.cpp + src/gstreamer/gstlibcamerapool.h + src/gstreamer/gstlibcameraprovider.cpp + src/gstreamer/gstlibcameraprovider.h + src/gstreamer/gstlibcamerasrc.cpp + src/gstreamer/gstlibcamerasrc.h +Copyright: 2019, Collabora Ltd. + 2020, Collabora Ltd. +License: LGPL-2.1 + FIXME + +Files: src/py/libcamera/__init__.py + src/py/libcamera/py_camera_manager.cpp + src/py/libcamera/py_camera_manager.h + src/py/libcamera/py_color_space.cpp + src/py/libcamera/py_enums.cpp + src/py/libcamera/py_geometry.cpp + src/py/libcamera/py_helpers.cpp + src/py/libcamera/py_helpers.h + src/py/libcamera/py_main.cpp + src/py/libcamera/py_main.h + src/py/libcamera/py_transform.cpp + src/py/libcamera/utils/MappedFrameBuffer.py + src/py/libcamera/utils/__init__.py +Copyright: 2022, Tomi Valkeinen +License: LGPL-2.1 + FIXME + +Files: include/linux/udmabuf.h + src/py/libcamera/gen-py-controls.py + src/py/libcamera/gen-py-formats.py + utils/abi-compat.sh + utils/gen-version.sh + utils/hooks/post-commit + utils/hooks/pre-commit + utils/hooks/pre-push + utils/release.sh + utils/run-dist.sh + utils/update-kernel-headers.sh + utils/update-mojo.sh +Copyright: NONE +License: GPL-2 + FIXME + +Files: src/ipa/libipa/exposure_mode_helper.cpp + src/ipa/libipa/exposure_mode_helper.h + src/ipa/libipa/interpolator.cpp + src/ipa/libipa/interpolator.h + src/ipa/libipa/matrix.cpp + src/ipa/libipa/matrix.h + src/ipa/libipa/vector.cpp + src/ipa/libipa/vector.h + src/ipa/rkisp1/utils.cpp + src/ipa/rkisp1/utils.h +Copyright: 2024, Paul Elder +License: LGPL-2.1 + FIXME + +Files: include/libcamera/base/backtrace.h + include/libcamera/base/memfd.h + src/apps/common/image.cpp + src/apps/common/image.h + src/ipa/libipa/agc_mean_luminance.cpp + src/ipa/libipa/agc_mean_luminance.h + src/libcamera/base/backtrace.cpp + src/libcamera/base/memfd.cpp + src/libcamera/pipeline/mali-c55/mali-c55.cpp +Copyright: 2021, Ideas on Board Oy + 2024, Ideas on Board Oy +License: LGPL-2.1 + FIXME + +Files: src/py/cam/cam.py + src/py/cam/cam_kms.py + src/py/cam/cam_null.py + src/py/cam/cam_qt.py + src/py/cam/cam_qtgl.py + src/py/cam/gl_helpers.py + src/py/cam/helpers.py + test/py/unittests.py +Copyright: 2022, Tomi Valkeinen +License: GPL-2 + FIXME + +Files: utils/tuning/libtuning/modules/agc/agc.py + utils/tuning/libtuning/modules/agc/rkisp1.py + utils/tuning/libtuning/modules/lsc/lsc.py + utils/tuning/libtuning/modules/lsc/raspberrypi.py + utils/tuning/libtuning/modules/lsc/rkisp1.py + utils/tuning/libtuning/utils.py +Copyright: 2019, Raspberry Pi Ltd + 2022, Paul Elder + 2024, Paul Elder +License: BSD-2-clause + FIXME + +Files: src/libcamera/software_isp/debayer.cpp + src/libcamera/software_isp/debayer.h + src/libcamera/software_isp/debayer_cpu.cpp + src/libcamera/software_isp/debayer_cpu.h + src/libcamera/software_isp/swstats_cpu.cpp + src/libcamera/software_isp/swstats_cpu.h +Copyright: 2023, Linaro Ltd + 2023, Red Hat Inc. + 2023-2024, Red Hat Inc. +License: LGPL-2.1 + FIXME + +Files: include/android/system/core/include/system/graphics-base-v1.0.h + include/android/system/core/include/system/graphics-base-v1.1.h + include/android/system/core/include/system/graphics-base.h + include/android/system/core/include/system/graphics-sw.h + utils/semver +Copyright: NONE +License: Apache-2.0 + FIXME + +Files: src/apps/qcam/message_handler.cpp + src/apps/qcam/message_handler.h + test/color-space.cpp + utils/ipu3/ipu3-unpack.c +Copyright: 2018, Laurent Pinchart + 2020, Laurent Pinchart + 2022, Laurent Pinchart +License: GPL-2 + FIXME + +Files: test/gstreamer/gstreamer_multi_stream_test.cpp + test/gstreamer/gstreamer_single_stream_test.cpp + test/gstreamer/gstreamer_test.cpp + test/gstreamer/gstreamer_test.h +Copyright: 2021, Vedant Paranjape +License: GPL-2 + FIXME + +Files: src/ipa/ipu3/algorithms/blc.cpp + src/ipa/ipu3/algorithms/blc.h + src/ipa/ipu3/algorithms/tone_mapping.cpp + src/ipa/ipu3/algorithms/tone_mapping.h +Copyright: 2021, Google inc. +License: LGPL-2.1 + FIXME + +Files: include/libcamera/internal/software_isp/software_isp.h + include/libcamera/internal/software_isp/swisp_stats.h + src/ipa/simple/soft_simple.cpp + src/libcamera/software_isp/software_isp.cpp +Copyright: 2023, Linaro Ltd +License: LGPL-2.1 + FIXME + +Files: src/py/examples/simple-cam.py + src/py/examples/simple-capture.py + src/py/examples/simple-continuous-capture.py +Copyright: 2022, Tomi Valkeinen +License: BSD-3-clause + FIXME + +Files: include/linux/README + utils/codegen/ipc/mojo/README + utils/codegen/ipc/tools/README +Copyright: NONE +License: CC0-1.0 + FIXME + +Files: include/libcamera/internal/converter.h + include/libcamera/internal/converter/converter_v4l2_m2m.h + src/libcamera/converter/converter_v4l2_m2m.cpp +Copyright: 2020, Laurent Pinchart + 2022, NXP +License: LGPL-2.1 + FIXME + +Files: include/libcamera/internal/software_isp/debayer_params.h + src/ipa/simple/black_level.cpp + src/ipa/simple/black_level.h +Copyright: 2023-2024, Red Hat Inc. + 2024, Red Hat Inc. +License: LGPL-2.1 + FIXME + +Files: src/ipa/rpi/README.md + utils/raspberrypi/delayedctrls_parse.py +Copyright: NONE +License: BSD-2-clause + FIXME + +Files: src/ipa/libipa/pwl.cpp + utils/tuning/libtuning/macbeth.py +Copyright: 2019, Raspberry Pi Ltd + 2024, Ideas on Board Oy +License: BSD-2-clause + FIXME + +Files: utils/codegen/ipc/generate.py + utils/codegen/ipc/parser.py +Copyright: 2020, Google Inc. +License: BSD-3-clause + FIXME + +Files: Documentation/conf.py + Documentation/theme/static/css/theme.css +Copyright: NONE +License: CC-BY-SA-4.0 + FIXME + +Files: src/apps/lc-compliance/environment.cpp + src/apps/lc-compliance/environment.h +Copyright: 2021, Collabora Ltd. +License: GPL-2 + FIXME + +Files: src/apps/lc-compliance/main.cpp + src/apps/lc-compliance/tests/capture_test.cpp +Copyright: 2020, Google Inc. + 2021, Collabora Ltd. +License: GPL-2 + FIXME + +Files: include/linux/media-bus-format.h + include/linux/v4l2-mediabus.h +Copyright: 2009, Guennadi Liakhovetski +License: GPL-2 + FIXME + +Files: utils/tuning/libtuning/modules/ccm/ccm.py + utils/tuning/libtuning/modules/ccm/rkisp1.py +Copyright: 2024, Ideas on Board + 2024, Paul Elder +License: GPL-2 + FIXME + +Files: test/stream/stream_colorspace.cpp + test/v4l2_videodevice/dequeue_watchdog.cpp +Copyright: 2022, Ideas on Board Oy. +License: GPL-2 + FIXME + +Files: include/linux/media.h + include/linux/v4l2-subdev.h +Copyright: 2010, Nokia Corporation +License: GPL-2 + FIXME + +Files: src/apps/common/stream_options.cpp + src/apps/common/stream_options.h +Copyright: 2020, Raspberry Pi Ltd +License: GPL-2 + FIXME + +Files: test/gstreamer/gstreamer_device_provider_test.cpp + utils/ipu3/ipu3-pack.c +Copyright: 2022, Umang Jain + 2023, Umang Jain +License: GPL-2 + FIXME + +Files: src/apps/qcam/cam_select_dialog.cpp + src/apps/qcam/cam_select_dialog.h +Copyright: 2022, Utkarsh Tiwari +License: GPL-2 + FIXME + +Files: include/libcamera/internal/v4l2_pixelformat.h + src/libcamera/v4l2_pixelformat.cpp +Copyright: 2019, Google Inc. + 2020, Raspberry Pi Ltd +License: LGPL-2.1 + FIXME + +Files: include/libcamera/orientation.h + src/libcamera/orientation.cpp +Copyright: 2023, Ideas On Board Oy +License: LGPL-2.1 + FIXME + +Files: src/apps/qcam/viewfinder_gl.cpp + src/apps/qcam/viewfinder_gl.h +Copyright: 2020, Linaro +License: LGPL-2.1 + FIXME + +Files: src/ipa/ipu3/algorithms/af.cpp + src/ipa/ipu3/algorithms/af.h +Copyright: 2021, Red Hat +License: LGPL-2.1 + FIXME + +Files: src/apps/common/ppm_writer.cpp + src/apps/common/ppm_writer.h +Copyright: 2024, Red Hat, Inc. +License: LGPL-2.1 + FIXME + +Files: src/android/mm/libhardware_stub.c +Copyright: 2023, Ideas on Board +License: Apache-2.0 + FIXME + +Files: debian/copyright_hints +Copyright: 2020, Raspberry Pi (Trading) Limited +License: Apache-2.0 and/or BSD-2-clause and/or BSD-3-clause and/or CC-BY-SA-4.0 and/or CC0-1.0 and/or GPL-2 and/or LGPL-2.1 + FIXME + +Files: src/ipa/rpi/cam_helper/cam_helper_imx519.cpp +Copyright: 2020, Raspberry Pi Ltd + 2021, Arducam Technology co., Ltd. +License: BSD-2-clause + FIXME + +Files: src/ipa/rpi/cam_helper/cam_helper_ov64a40.cpp +Copyright: 2021, Raspberry Pi Ltd + 2023, Ideas on Board Oy. +License: BSD-2-clause + FIXME + +Files: utils/raspberrypi/ctt/cac_only.py +Copyright: 2023, Raspberry Pi (Trading) Ltd. +License: BSD-2-clause + FIXME + +Files: utils/codegen/ipc/mojo/public/LICENSE +Copyright: 2014, The Chromium Authors +License: BSD-3-clause + FIXME + +Files: debian/copyright +Copyright: 2018-2024, Libcamera contributors +License: BSD-3-clause and/or CC0-1.0 and/or Expat and/or GPL-2 and/or LGPL-2.1 + FIXME + +Files: include/linux/videodev2.h +Copyright: 1999-2012, the contributors +License: BSD-3-clause and/or GPL-2+ + FIXME + +Files: include/linux/dma-heap.h +Copyright: 2011, Google, Inc. + 2019, Linaro Ltd. +License: GPL-2 + FIXME + +Files: test/transform.cpp +Copyright: 2023, Ideas On Board Oy +License: GPL-2 + FIXME + +Files: utils/tuning/libtuning/modules/static.py +Copyright: 2024, Ideas on Board +License: GPL-2 + FIXME + +Files: include/linux/intel-ipu3.h +Copyright: 2017-2018, Intel Corporation +License: GPL-2 + FIXME + +Files: include/linux/dma-buf.h +Copyright: 2015, Intel Ltd +License: GPL-2 + FIXME + +Files: test/pixel-format.cpp +Copyright: 2020, Kaaira Gupta +License: GPL-2 + FIXME + +Files: test/gstreamer/gstreamer_memory_lifetime_test.cpp +Copyright: 2024, Nicolas Dufresne +License: GPL-2 + FIXME + +Files: test/bayer-format.cpp +Copyright: 2020, Sebastian Fricke +License: GPL-2 + FIXME + +Files: test/hotplug-cameras.cpp +Copyright: 2020, Umang Jain +License: GPL-2 + FIXME + +Files: src/libcamera/software_isp/TODO +Copyright: NONE +License: LGPL-2.1 + FIXME + +Files: src/libcamera/shared_mem_object.cpp +Copyright: 2023, Raspberry Pi Ltd + 2024, Andrei Konovalov + 2024, Dennis Bonke + 2024, Ideas on Board Oy +License: LGPL-2.1 + FIXME + +Files: include/libcamera/internal/shared_mem_object.h +Copyright: 2023, Raspberry Pi Ltd + 2024, Andrei Konovalov + 2024, Dennis Bonke +License: LGPL-2.1 + FIXME + +Files: include/libcamera/internal/camera_manager.h +Copyright: 2023, Ideas on Board Oy. +License: LGPL-2.1 + FIXME + +Files: src/libcamera/pipeline/imx8-isi/imx8-isi.cpp +Copyright: 2022, Jacopo Mondi +License: LGPL-2.1 + FIXME + +Files: src/libcamera/pipeline/simple/simple.cpp +Copyright: 2019, Martijn Braam + 2020, Laurent Pinchart +License: LGPL-2.1 + FIXME + +Files: src/libcamera/converter.cpp +Copyright: 2022, NXP +License: LGPL-2.1 + FIXME + +Files: src/libcamera/dma_buf_allocator.cpp +Copyright: 2020, Raspberry Pi Ltd + 2024, Red Hat Inc. +License: LGPL-2.1 + FIXME + +Files: include/linux/drm_fourcc.h +Copyright: 2011, Intel Corporation +License: UNKNOWN + FIXME + +Files: include/linux/v4l2-common.h +Copyright: 2012, Nokia Corporation +License: UNKNOWN + FIXME + +Files: include/linux/bcm2835-isp.h +Copyright: 2019-2020, Raspberry Pi Ltd +License: UNKNOWN + FIXME + +Files: include/linux/rkisp1-config.h +Copyright: 2017, Rockchip Electronics Co., Ltd. +License: UNKNOWN + FIXME + +Files: debian/changelog +Copyright: paragraphs +License: UNKNOWN + FIXME + +Files: include/linux/v4l2-controls.h +Copyright: 1999-2012, the contributors +License: UNKNOWN + FIXME + diff --git a/debian/gbp.conf b/debian/gbp.conf new file mode 100644 index 000000000..374ef1bda --- /dev/null +++ b/debian/gbp.conf @@ -0,0 +1,11 @@ +[DEFAULT] +debian-branch=pios/trixie +upstream-branch=upstream-raspi/latest +debian-tag = pios/%(version)s +pristine-tar = True + +[dch] +multimaint-merge = True + +[pq] +patch-numbers = False diff --git a/debian/gstreamer1.0-libcamera.install b/debian/gstreamer1.0-libcamera.install new file mode 100644 index 000000000..7b1992adc --- /dev/null +++ b/debian/gstreamer1.0-libcamera.install @@ -0,0 +1 @@ +/usr/lib/*/gstreamer-1.0/ diff --git a/debian/libcamera-dev.install b/debian/libcamera-dev.install new file mode 100644 index 000000000..25e9244f6 --- /dev/null +++ b/debian/libcamera-dev.install @@ -0,0 +1,3 @@ +usr/include +usr/lib/*/l*.so +usr/lib/*/pkgconfig/*.pc diff --git a/debian/libcamera-dev.lintian-overrides b/debian/libcamera-dev.lintian-overrides new file mode 100644 index 000000000..e826f11a4 --- /dev/null +++ b/debian/libcamera-dev.lintian-overrides @@ -0,0 +1 @@ +libcamera-dev: repeated-path-segment libcamera [usr/include/libcamera/libcamera/] diff --git a/debian/libcamera-doc.doc-base b/debian/libcamera-doc.doc-base new file mode 100644 index 000000000..47446ccdd --- /dev/null +++ b/debian/libcamera-doc.doc-base @@ -0,0 +1,10 @@ +Document: libcamera +Title: libcamera -- complex camera support library (documentation) +Abstract: libcamera is a complex camera support library which handles low-level + control of the camera devices, providing a unified higher-level programming + interface to the applications. +Section: Programming + +Format: HTML +Index: /usr/share/doc/libcamera-doc/html/index.html +Files: /usr/share/doc/libcamera-doc/html/*.html diff --git a/debian/libcamera-doc.install b/debian/libcamera-doc.install new file mode 100644 index 000000000..ceb585a1e --- /dev/null +++ b/debian/libcamera-doc.install @@ -0,0 +1 @@ +usr/share/doc/libcamera-doc diff --git a/debian/libcamera-doc.links b/debian/libcamera-doc.links new file mode 100644 index 000000000..ec74e531c --- /dev/null +++ b/debian/libcamera-doc.links @@ -0,0 +1,6 @@ +/usr/share/javascript/jquery/jquery.js /usr/share/doc/libcamera-doc/api-html/jquery.js +/usr/share/javascript/jquery/jquery.js /usr/share/doc/libcamera-doc/html/_static/jquery.js +/usr/share/javascript/sphinxdoc/1.0/doctools.js /usr/share/doc/libcamera-doc/html/_static/doctools.js +/usr/share/javascript/sphinxdoc/1.0/language_data.js /usr/share/doc/libcamera-doc/html/_static/language_data.js +/usr/share/javascript/sphinxdoc/1.0/searchtools.js /usr/share/doc/libcamera-doc/html/_static/searchtools.js +/usr/share/javascript/underscore/underscore.js /usr/share/doc/libcamera-doc/html/_static/underscore.js diff --git a/debian/libcamera-ipa.install b/debian/libcamera-ipa.install new file mode 100644 index 000000000..e25860b6b --- /dev/null +++ b/debian/libcamera-ipa.install @@ -0,0 +1,3 @@ +usr/lib/*/libcamera/ipa +usr/libexec/*/libcamera/*_ipa_proxy +usr/share/libcamera diff --git a/debian/libcamera-tools.install b/debian/libcamera-tools.install new file mode 100644 index 000000000..e77248175 --- /dev/null +++ b/debian/libcamera-tools.install @@ -0,0 +1 @@ +usr/bin diff --git a/debian/libcamera-v4l2.install b/debian/libcamera-v4l2.install new file mode 100644 index 000000000..c2a484f63 --- /dev/null +++ b/debian/libcamera-v4l2.install @@ -0,0 +1 @@ +usr/libexec/*/libcamera/v4l2-compat.so diff --git a/debian/libcamera0.7.install b/debian/libcamera0.7.install new file mode 100644 index 000000000..e83368fab --- /dev/null +++ b/debian/libcamera0.7.install @@ -0,0 +1 @@ +usr/lib/*/libcamera*.so.* diff --git a/debian/patches/ppc64el-fix-ftbfs-gcc.patch b/debian/patches/ppc64el-fix-ftbfs-gcc.patch new file mode 100644 index 000000000..9b8230a81 --- /dev/null +++ b/debian/patches/ppc64el-fix-ftbfs-gcc.patch @@ -0,0 +1,29 @@ +From: Olivier Gayot +Date: Tue, 18 Oct 2022 16:48:14 +0100 +Subject: fix expressions not considered constant on ppc64el with GCC + +On ppc64el, GCC seems to be unable to determine the result of some long double +expressions at compile time. This makes libcamera fail to build from source on +ppc64el. +Make sure we only use constexpr on expressions that are considered constant on +all architectures. + +Bug-Ubuntu: https://launchpad.net/bugs/1992331 +Bug-Debian: https://bugs.debian.org/1021544 +Forwarded: https://lists.libcamera.org/pipermail/libcamera-devel/2022-October/034764.html +Last-Update: 2026-05-01 +--- + src/ipa/rpi/common/ipa_base.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/src/ipa/rpi/common/ipa_base.cpp ++++ b/src/ipa/rpi/common/ipa_base.cpp +@@ -45,7 +45,7 @@ constexpr unsigned int FrameLengthsQueue + /* Configure the sensor with these values initially. */ + constexpr double defaultAnalogueGain = 1.0; + constexpr Duration defaultExposureTime = 20.0ms; +-constexpr Duration defaultMinFrameDuration = 1.0s / 30.0; ++constexpr Duration defaultMinFrameDuration = 1s / 30.0; + constexpr Duration defaultMaxFrameDuration = 250.0s; + + /* List of controls handled by the Raspberry Pi IPA */ diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 000000000..4bcb5acde --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,2 @@ +ppc64el-fix-ftbfs-gcc.patch +skip_failing_tests.patch diff --git a/debian/patches/skip_failing_tests.patch b/debian/patches/skip_failing_tests.patch new file mode 100644 index 000000000..9a0f45cff --- /dev/null +++ b/debian/patches/skip_failing_tests.patch @@ -0,0 +1,85 @@ +Description: These tests have never succeeded, so not a regression. + But would require a proper fix. +Author: Dylan Aïssi +Forwarded: not-needed + +--- a/test/ipc/meson.build ++++ b/test/ipc/meson.build +@@ -1,8 +1,8 @@ + # SPDX-License-Identifier: CC0-1.0 + + ipc_tests = [ +- {'name': 'unixsocket_ipc', 'sources': ['unixsocket_ipc.cpp']}, +- {'name': 'unixsocket', 'sources': ['unixsocket.cpp']}, ++# {'name': 'unixsocket_ipc', 'sources': ['unixsocket_ipc.cpp']}, ++# {'name': 'unixsocket', 'sources': ['unixsocket.cpp']}, + ] + + foreach test : ipc_tests +--- a/test/log/meson.build ++++ b/test/log/meson.build +@@ -1,8 +1,8 @@ + # SPDX-License-Identifier: CC0-1.0 + + log_test = [ +- {'name': 'log_api', 'sources': ['log_api.cpp']}, +- {'name': 'log_process', 'sources': ['log_process.cpp']}, ++# {'name': 'log_api', 'sources': ['log_api.cpp']}, ++# {'name': 'log_process', 'sources': ['log_process.cpp']}, + ] + + foreach test : log_test +--- a/test/process/meson.build ++++ b/test/process/meson.build +@@ -1,7 +1,7 @@ + # SPDX-License-Identifier: CC0-1.0 + + process_tests = [ +- {'name': 'process_test', 'sources': ['process_test.cpp']}, ++# {'name': 'process_test', 'sources': ['process_test.cpp']}, + ] + + foreach test : process_tests +--- a/test/meson.build ++++ b/test/meson.build +@@ -57,7 +57,7 @@ internal_tests = [ + {'name': 'event', 'sources': ['event.cpp']}, + {'name': 'event-dispatcher', 'sources': ['event-dispatcher.cpp']}, + {'name': 'event-thread', 'sources': ['event-thread.cpp']}, +- {'name': 'file', 'sources': ['file.cpp']}, ++# {'name': 'file', 'sources': ['file.cpp']}, + {'name': 'flags', 'sources': ['flags.cpp']}, + {'name': 'hotplug-cameras', 'sources': ['hotplug-cameras.cpp']}, + {'name': 'matrix', 'sources': ['matrix.cpp']}, +@@ -66,13 +66,13 @@ internal_tests = [ + {'name': 'object-delete', 'sources': ['object-delete.cpp']}, + {'name': 'object-invoke', 'sources': ['object-invoke.cpp']}, + {'name': 'pixel-format', 'sources': ['pixel-format.cpp']}, +- {'name': 'shared-fd', 'sources': ['shared-fd.cpp']}, ++# {'name': 'shared-fd', 'sources': ['shared-fd.cpp']}, + {'name': 'signal-threads', 'sources': ['signal-threads.cpp']}, + {'name': 'threads', 'sources': 'threads.cpp', 'dependencies': [libthreads]}, + {'name': 'timer', 'sources': ['timer.cpp']}, + {'name': 'timer-fail', 'sources': ['timer-fail.cpp'], 'should_fail': true}, + {'name': 'timer-thread', 'sources': ['timer-thread.cpp']}, +- {'name': 'unique-fd', 'sources': ['unique-fd.cpp']}, ++# {'name': 'unique-fd', 'sources': ['unique-fd.cpp']}, + {'name': 'utils', 'sources': ['utils.cpp']}, + {'name': 'value-node', 'sources': ['value-node.cpp']}, + {'name': 'vector', 'sources': ['vector.cpp']}, +--- a/test/gstreamer/meson.build ++++ b/test/gstreamer/meson.build +@@ -5,10 +5,10 @@ if not gst_enabled + endif + + gstreamer_tests = [ +- {'name': 'single_stream_test', 'sources': ['gstreamer_single_stream_test.cpp']}, +- {'name': 'multi_stream_test', 'sources': ['gstreamer_multi_stream_test.cpp']}, ++# {'name': 'single_stream_test', 'sources': ['gstreamer_single_stream_test.cpp']}, ++# {'name': 'multi_stream_test', 'sources': ['gstreamer_multi_stream_test.cpp']}, + {'name': 'device_provider_test', 'sources': ['gstreamer_device_provider_test.cpp']}, +- {'name': 'memory_lifetime_test', 'sources': ['gstreamer_memory_lifetime_test.cpp']}, ++# {'name': 'memory_lifetime_test', 'sources': ['gstreamer_memory_lifetime_test.cpp']}, + ] + gstreamer_dep = dependency('gstreamer-1.0', required : true) + gstapp_dep = dependency('gstreamer-app-1.0', required : true) diff --git a/debian/python3-libcamera.install b/debian/python3-libcamera.install new file mode 100644 index 000000000..71a406f5a --- /dev/null +++ b/debian/python3-libcamera.install @@ -0,0 +1 @@ +usr/lib/python* /usr/lib/ diff --git a/debian/rules b/debian/rules new file mode 100755 index 000000000..1415212cf --- /dev/null +++ b/debian/rules @@ -0,0 +1,97 @@ +#!/usr/bin/make -f + +# export DH_VERBOSE = 1 +export DEB_BUILD_MAINT_OPTIONS = hardening=+all +export DEB_CXXFLAGS_MAINT_APPEND = -Wno-error + +include /usr/share/dpkg/architecture.mk + +ifeq ($(DEB_HOST_ARCH_OS),linux) +CONFFLAGS += \ + -Dv4l2=true +endif + +ifeq ($(filter nodoc,$(DEB_BUILD_PROFILES)),) + DOCUMENTATION=enabled +else + DOCUMENTATION=disabled +endif + +ifneq (,$(filter i386,$(DEB_HOST_ARCH))) +QCAM=disabled +# See https://bugs.debian.org/1076986 +else +QCAM=enabled +endif + +# Only enable rpi pipelines on arm +ifneq (,$(filter $(DEB_HOST_ARCH), arm64 armhf)) + PIPELINES=rpi/vc4,rpi/pisp,uvcvideo +else + PIPELINES=uvcvideo +endif + +CONFFLAGS += \ + --libexecdir=libexec/${DEB_HOST_MULTIARCH} \ + -Dgstreamer=enabled \ + -Dlibunwind=disabled \ + -Dpycamera=enabled \ + -Dpipelines=${PIPELINES} \ + -Dqcam=$(QCAM) \ + -Dtest=true \ + -Dv4l2=true \ + -Drpi-awb-nn=enabled + +%: + dh $@ + +override_dh_auto_configure-arch: + dh_auto_configure -- \ + -Ddocumentation=disabled \ + $(CONFFLAGS) \ + $(empty) + +override_dh_auto_configure-indep: + dh_auto_configure -- \ + -Ddocumentation=${DOCUMENTATION} \ + $(CONFFLAGS) \ + $(empty) + +# Only make the tests fail for key architectures +override_dh_auto_test: +ifneq (,$(filter $(DEB_HOST_ARCH), amd64 arm64 armhf)) + dh_auto_test +else + -dh_auto_test +endif + +override_dh_install-indep: +ifeq ($(filter nodoc,$(DEB_BUILD_PROFILES)),) + mv debian/tmp/usr/share/doc/libcamera-0.* debian/tmp/usr/share/doc/libcamera-doc +endif + dh_install -X/.doctrees/ + +execute_before_dh_install-arch: + cp ./obj-${DEB_HOST_GNU_TYPE}/src/apps/ipa-verify/ipa_verify \ + debian/tmp/usr/bin/ + +override_dh_strip: + dh_strip -a + MESON_INSTALL_DESTDIR_PREFIX=. ./src/ipa/ipa-sign-install.sh \ + ./obj-${DEB_HOST_GNU_TYPE}/src/ipa-priv-key.pem \ + debian/libcamera-ipa/usr/lib/${DEB_HOST_MULTIARCH}/libcamera/ipa/ipa_*.so + for IPA_MOD in debian/libcamera-ipa/usr/lib/*/libcamera/ipa/ipa_*.so; \ + do \ + echo "Verifying signature of $${IPA_MOD}"; \ + ./obj-${DEB_HOST_GNU_TYPE}/src/apps/ipa-verify/ipa_verify $${IPA_MOD}; \ + done + +execute_after_dh_fixperms: + find debian/ -name 'v4l2-compat.so' -exec chmod -x '{}' \; + +.PHONY: licensecheck +licensecheck: + licensecheck --deb-machine -r * \ + > debian/copyright_newhints + cmp debian/copyright_hints debian/copyright_newhints \ + && rm debian/copyright_newhints diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml new file mode 100644 index 000000000..3fbe9b088 --- /dev/null +++ b/debian/salsa-ci.yml @@ -0,0 +1,13 @@ +--- +include: + - $CI_SERVER_URL/apt/salsa-ci/raw/pios/recipes/pios.yml + +variables: + SALSA_CI_DISABLE_BUILD_PACKAGE_ARM64: 0 + +reprotest: + allow_failure: true + +# See https://bugs.debian.org/1088099 +blhc: + allow_failure: true diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 000000000..163aaf8d8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/tests/check-IPA-modules-signatures b/debian/tests/check-IPA-modules-signatures new file mode 100755 index 000000000..95e2998d0 --- /dev/null +++ b/debian/tests/check-IPA-modules-signatures @@ -0,0 +1,9 @@ +#!/bin/sh -e +# autopkgtest check: Verify signatures of installed IPA modules. + +for IPA_MOD in /usr/lib/*/libcamera/ipa/ipa_*.so +do + echo "Verifying signature of ${IPA_MOD}" + ipa_verify "${IPA_MOD}" +done + diff --git a/debian/tests/control b/debian/tests/control new file mode 100644 index 000000000..9c416e41c --- /dev/null +++ b/debian/tests/control @@ -0,0 +1,19 @@ +Tests: run-tools +Depends: @ +Restrictions: superficial, allow-stderr + +Tests: check-IPA-modules-signatures +Depends: @ +Restrictions: superficial + +Test-Command: echo "ok" +Depends: @builddeps@ +Restrictions: build-needed + +Tests: gstreamer1.0-libcamera +Restrictions: allow-stderr, superficial +Depends: gstreamer1.0-libcamera, gstreamer1.0-tools + +Tests: python3-libcamera +Restrictions: superficial +Depends: python3-libcamera diff --git a/debian/tests/gstreamer1.0-libcamera b/debian/tests/gstreamer1.0-libcamera new file mode 100755 index 000000000..7ccde42d0 --- /dev/null +++ b/debian/tests/gstreamer1.0-libcamera @@ -0,0 +1,11 @@ +#!/bin/sh +# Copyright 2025 Collabora Ltd. +# SPDX-License-Identifier: MIT + +set -eux + +export GST_INSPECT_NO_COLORS=1 +export PAGER=cat + +gst-inspect-1.0 libcamera +gst-inspect-1.0 libcamerasrc diff --git a/debian/tests/python3-libcamera b/debian/tests/python3-libcamera new file mode 100755 index 000000000..b80cf65dc --- /dev/null +++ b/debian/tests/python3-libcamera @@ -0,0 +1,7 @@ +#!/usr/bin/python3 + +import libcamera + +print(f'libcamera {libcamera.CameraManager.version} imported') + +print('Test OK') diff --git a/debian/tests/run-tools b/debian/tests/run-tools new file mode 100755 index 000000000..22b4de6d9 --- /dev/null +++ b/debian/tests/run-tools @@ -0,0 +1,7 @@ +#!/bin/sh -e +# autopkgtest check: Run cam and lc-compliance both with the --list option. + +cam --list + +lc-compliance --list + diff --git a/debian/upstream/metadata b/debian/upstream/metadata new file mode 100644 index 000000000..b5d179dd6 --- /dev/null +++ b/debian/upstream/metadata @@ -0,0 +1,5 @@ +--- +Bug-Database: https://bugs.libcamera.org/ +Bug-Submit: https://bugs.libcamera.org/enter_bug.cgi +Repository: https://git.libcamera.org/libcamera/libcamera.git +Repository-Browse: https://git.libcamera.org/libcamera/libcamera.git diff --git a/debian/watch b/debian/watch new file mode 100644 index 000000000..0e8909f35 --- /dev/null +++ b/debian/watch @@ -0,0 +1,5 @@ +version=4 +opts="searchmode=plain,\ +uversionmangle=s/%2B/+/g" \ +https://api.github.com/repos/raspberrypi/@PACKAGE@/releases?per_page=50 \ +https://github\.com/[^/]+/[^/]+/releases/download/[^/]+/@PACKAGE@-([^"]+)\.tar\.xz From f4d74f0e3b41b8e84ec49235b75c0d7e4dd3776a Mon Sep 17 00:00:00 2001 From: Benjamin Mugnier Date: Tue, 8 Sep 2026 14:52:25 +0200 Subject: [PATCH 2/2] Update debian changelog for 0.7.2+rpt20260817+st20260908 Signed-off-by: Benjamin Mugnier --- debian/changelog | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/debian/changelog b/debian/changelog index 1af54104d..0c87877de 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +libcamera (0.7.2+rpt20260817+st20260908-1) trixie; urgency=medium + + * New upstream version 0.7.2+rpt20260817+st20260908 + + -- Benjamin Mugnier Tue, 08 Sep 2026 14:51:44 +0200 + libcamera (0.7.2+rpt20260817-1) trixie; urgency=medium * New upstream version 0.7.2+rpt20260817