Date: Friday, October 28, 2022 @ 17:59:14
  Author: dvzrv
Revision: 459404

Add libcamera 0.0.1 as new dependency for pipewire.

Added:
  libcamera/
  libcamera/repos/
  libcamera/trunk/
  libcamera/trunk/PKGBUILD

----------+
 PKGBUILD |  112 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 112 insertions(+)

Added: libcamera/trunk/PKGBUILD
===================================================================
--- libcamera/trunk/PKGBUILD                            (rev 0)
+++ libcamera/trunk/PKGBUILD    2022-10-28 17:59:14 UTC (rev 459404)
@@ -0,0 +1,112 @@
+# Maintainer: David Runge <[email protected]>
+
+pkgbase=libcamera
+pkgname=(libcamera libcamera-docs libcamera-tools gst-plugin-libcamera)
+pkgver=0.0.1
+_commit=7219110a121c3904dca3bfb86da27ca5bfb57a76  # refs/tags/v0.0.1
+pkgrel=2
+pkgdesc="A complex camera support library for Linux, Android, and ChromeOS"
+arch=(x86_64)
+url="https://libcamera.org/";
+license=(LGPL2.1 GPL2)
+depends=(glibc)
+makedepends=(doxygen git glib2 graphviz gst-plugins-base gtest libdrm
+libjpeg-turbo libtiff libyaml meson python-jinja python-ply python-sphinx
+python-pyyaml qt5-base qt5-tools sdl2 systemd texlive-core)
+options=(debug)
+source=(git+https://git.libcamera.org/$pkgname/$pkgname.git#tag=$_commit)
+sha256sums=('SKIP')
+
+_pick() {
+  local p="$1" f d; shift
+  for f; do
+    d="$srcdir/$p/${f#$pkgdir/}"
+    mkdir -p "$(dirname "$d")"
+    mv "$f" "$d"
+    rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
+  done
+}
+
+prepare() {
+  cd $pkgname
+}
+
+build() {
+  local meson_options=(
+    -D v4l2=true
+    -D tracing=disabled
+    -D test=true
+  )
+
+  arch-meson $pkgname build "${meson_options[@]}"
+  meson compile -C build
+}
+
+check() {
+  meson test -C build || echo "Tests require CLONE_NEWUSER/ CLONE_NEWNET."
+}
+
+package_libcamera() {
+  meson install -C build --destdir "$pkgdir"
+  depends=(
+    gcc-libs
+    glibc
+    gnutls
+    libdrm
+    libelf
+    libunwind
+    libyaml
+    systemd-libs libudev.so
+  )
+  optdepends=(
+    'gst-plugin-libcamera: GStreamer plugin'
+    'libcamera-docs: for documentation'
+    'libcamera-tools: for applications'
+  )
+  provides=(libcamera.so libcamera-base.so)
+
+  (
+    cd "$pkgdir"
+    _pick $pkgbase-docs usr/share/doc
+    _pick $pkgbase-tools usr/bin/{cam,qcam,lc-compliance}
+    _pick gst-plugin-$pkgbase usr/lib/gstreamer-*
+  )
+}
+
+package_libcamera-docs() {
+  pkgdesc+=" - documentation"
+
+  mv -v $pkgname/* "$pkgdir"
+}
+
+package_libcamera-tools() {
+  pkgdesc+=" - tools"
+  depends=(
+    gcc-libs
+    glibc
+    gtest
+    libcamera libcamera.so libcamera-base.so
+    libevent libevent-2.1.so libevent_pthreads-2.1.so
+    libjpeg-turbo libjpeg.so
+    libtiff libtiff.so
+    libyaml
+    qt5-base
+    sdl2
+  )
+
+  mv -v $pkgname/* "$pkgdir"
+}
+
+package_gst-plugin-libcamera() {
+  pkgdesc="Multimedia graph framework - libcamera plugin"
+  depends=(
+    gcc-libs
+    glibc
+    glib2 libg{lib,object}-2.0.so
+    gstreamer
+    gst-plugins-base-libs
+    libcamera libcamera.so libcamera-base.so
+  )
+
+  mv -v $pkgname/* "$pkgdir"
+}

Reply via email to