diff --git a/media-libs/libcamera/Manifest b/media-libs/libcamera/Manifest new file mode 100644 index 0000000..1cb2c05 --- /dev/null +++ b/media-libs/libcamera/Manifest @@ -0,0 +1,2 @@ +DIST libcamera-0.3.2_p20241219.tar.bz2 1313867 BLAKE2B 119075d37464e236bb1cfb94f9703b3f912e3df533e5bee55a0b169bbb3fb371fd0fbd95db39728fc51c5f4e99ad68723bf6c59db76200052e44740364f16202 SHA512 f54c140ea63b0c29b6d6a81b6b308dd7a22cebe908527607309b28f579f9e1b476e185956f1f5ebbaf0f229ad91d0f6fcf6bb78606517cb85d3a805be1fcb373 +DIST libcamera-v0.3.2.tar.bz2 1257110 BLAKE2B 5f825c76abf1030c88756036f8510dcc553db34c013ebd8a38b3c7837579edf678bde564380af8c43f8d5b032523b96980d7bc4e7882dca29a9542d44130525c SHA512 7f2af3e8e18be215506a9302a5c882da34dd1b40ff1effe90438f8bb53c7b73a9e8ccb1d2fcc3ab551e0dfce72582a49d8db8da19de7128a20b36ff60c3bba75 diff --git a/media-libs/libcamera/libcamera-0.3.2.ebuild b/media-libs/libcamera/libcamera-0.3.2.ebuild new file mode 100644 index 0000000..d6fc9dd --- /dev/null +++ b/media-libs/libcamera/libcamera-0.3.2.ebuild @@ -0,0 +1,82 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..13} ) + +inherit meson python-single-r1 + +DESCRIPTION="An open source camera stack and framework for Linux, Android, and ChromeOS" +HOMEPAGE="https://libcamera.org/" +SRC_URI="https://gitlab.freedesktop.org/camera/libcamera/-/archive/v${PV}/${PN}-v${PV}.tar.bz2" +S="${WORKDIR}/${PN}-v${PV}" + +LICENSE="LGPL-2.1+" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="+app debug doc gstreamer python qt6 test udev" + +DEPEND=" + $(python_gen_cond_dep ' + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/pybind11[${PYTHON_USEDEP}] + ') + app? ( + dev-libs/libevent + media-libs/libsdl2 + media-libs/libjpeg-turbo + x11-libs/libdrm + ) + doc? ( + app-text/doxygen + dev-python/sphinx + dev-texlive/texlive-latexextra + media-gfx/graphviz + ) + gstreamer? ( media-libs/gst-plugins-base ) + qt6? ( + dev-qt/qtbase[gui,opengl,widgets] + media-libs/tiff + ) + udev? ( virtual/libudev ) +" +BDEPEND="dev-libs/openssl" +RDEPEND=" + ${DEPEND} + ${PYTHON_DEPS} +" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +src_prepare() { + if use python; then + sed -i -e "/destdir =/s#destdir =.*#destdir = '"$(python_get_sitedir)"/libcamera'#g" \ + src/py/libcamera/meson.build || die + fi + + default +} + +src_configure() { + local emesonargs=( + -Dandroid=disabled + $(meson_feature app cam) + $(meson_feature doc documentation) + $(meson_feature gstreamer) + $(meson_feature python pycamera) + $(meson_feature qt6 qcam) + $(meson_feature udev) + $(meson_use test) + -Dbuildtype=$(usex debug debug plain) + -Dv4l2=true + ) + meson_src_configure +} + +src_install() { + meson_src_install + python_optimize "${D}/$(python_get_sitedir)/libcamera" +} diff --git a/media-libs/libcamera/libcamera-0.3.2_p20241219.ebuild b/media-libs/libcamera/libcamera-0.3.2_p20241219.ebuild new file mode 100644 index 0000000..84befee --- /dev/null +++ b/media-libs/libcamera/libcamera-0.3.2_p20241219.ebuild @@ -0,0 +1,87 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..13} ) + +inherit meson python-single-r1 + +COMMIT_ID="e37830925130afd541449ed22df0bc952c19a94a" + +DESCRIPTION="An open source camera stack and framework for Linux, Android, and ChromeOS" +HOMEPAGE="https://libcamera.org/" +SRC_URI=" + https://gitlab.freedesktop.org/camera/libcamera/-/archive/${COMMIT_ID}.tar.bz2 + -> ${P}.tar.bz2 +" +S="${WORKDIR}/${PN}-${COMMIT_ID}" + +LICENSE="LGPL-2.1+" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="+app debug doc gstreamer python qt6 test udev" + +DEPEND=" + $(python_gen_cond_dep ' + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/pybind11[${PYTHON_USEDEP}] + ') + app? ( + dev-libs/libevent + media-libs/libsdl2 + media-libs/libjpeg-turbo + x11-libs/libdrm + ) + doc? ( + app-text/doxygen + dev-python/sphinx + dev-texlive/texlive-latexextra + media-gfx/graphviz + ) + gstreamer? ( media-libs/gst-plugins-base ) + qt6? ( + dev-qt/qtbase[gui,opengl,widgets] + media-libs/tiff + ) + udev? ( virtual/libudev ) +" +BDEPEND="dev-libs/openssl" +RDEPEND=" + ${DEPEND} + ${PYTHON_DEPS} +" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +src_prepare() { + if use python; then + sed -i -e "/destdir =/s#destdir =.*#destdir = '"$(python_get_sitedir)"/libcamera'#g" \ + src/py/libcamera/meson.build || die + fi + + default +} + +src_configure() { + local emesonargs=( + -Dandroid=disabled + $(meson_feature app cam) + $(meson_feature doc documentation) + $(meson_feature gstreamer) + $(meson_feature python pycamera) + $(meson_feature qt6 qcam) + $(meson_feature udev) + $(meson_use test) + -Dbuildtype=$(usex debug debug plain) + -Dv4l2=true + ) + meson_src_configure +} + +src_install() { + meson_src_install + python_optimize "${D}/$(python_get_sitedir)/libcamera" +} diff --git a/media-libs/libcamera/metadata.xml b/media-libs/libcamera/metadata.xml new file mode 100644 index 0000000..03b5255 --- /dev/null +++ b/media-libs/libcamera/metadata.xml @@ -0,0 +1,14 @@ + + + + + david.guglielmi@gmail.com + David GUGLIELMI + + + Build cam cli utility + + + camera/libcamera + +