diff --git a/media-libs/libcamera/Manifest b/media-libs/libcamera/Manifest
index 1cb2c05..d8ac6d2 100644
--- a/media-libs/libcamera/Manifest
+++ b/media-libs/libcamera/Manifest
@@ -1,2 +1 @@
-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
+DIST libcamera-v0.4.0.tar.bz2 1315742 BLAKE2B 284bffbaf9f5e7235c9835717c601d346fbb67c326e4a4f42281a4da2d75cc915166f7fd3267f0dc87eda883ecff684c51338ed5212427a7f24b27ba9c8056f0 SHA512 dd097461cc5bc834cdd6c43e872a32aee55ee7276b850600d705461aa9279144163b6d0374a63b27bec3f866973d4a44a9f89eacf1d40468a33faec1ffbc75b4
diff --git a/media-libs/libcamera/libcamera-0.3.2_p20241219.ebuild b/media-libs/libcamera/libcamera-0.3.2_p20241219.ebuild
deleted file mode 100644
index 84befee..0000000
--- a/media-libs/libcamera/libcamera-0.3.2_p20241219.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# 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/libcamera-0.3.2.ebuild b/media-libs/libcamera/libcamera-0.4.0.ebuild
similarity index 52%
rename from media-libs/libcamera/libcamera-0.3.2.ebuild
rename to media-libs/libcamera/libcamera-0.4.0.ebuild
index d6fc9dd..c209b47 100644
--- a/media-libs/libcamera/libcamera-0.3.2.ebuild
+++ b/media-libs/libcamera/libcamera-0.4.0.ebuild
@@ -16,44 +16,60 @@ LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~amd64"
-IUSE="+app debug doc gstreamer python qt6 test udev"
+IUSE="+app debug gstreamer python qt6 trace udev unwind v4l2"
+#IUSE=+" doc test"
DEPEND="
- $(python_gen_cond_dep '
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/pybind11[${PYTHON_USEDEP}]
- ')
+ dev-libs/libyaml:=
+ || (
+ dev-libs/openssl
+ net-libs/gnutls
+ )
app? (
- dev-libs/libevent
+ dev-libs/libevent:=
+ x11-libs/libdrm:=
+ media-libs/libjpeg-turbo:=
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 )
+ debug? ( dev-libs/elfutils:= )
+ gstreamer? (
+ media-libs/gstreamer:=
+ media-libs/gst-plugins-base )
qt6? (
dev-qt/qtbase[gui,opengl,widgets]
media-libs/tiff
)
+ python? (
+ $(python_gen_cond_dep '
+ dev-python/jinja2[${PYTHON_USEDEP}]
+ dev-python/ply[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/pybind11[${PYTHON_USEDEP}]
+ ')
+ )
+ trace? ( dev-util/lttng-ust:= )
udev? ( virtual/libudev )
+ unwind? ( sys-libs/libunwind:= )
"
-BDEPEND="dev-libs/openssl"
+#BDPEND="
+# doc? (
+# app-text/doxygen[dot]
+# dev-python/sphinx
+# dev-texlive/texlive-latexextra
+# )
+#"
RDEPEND="
${DEPEND}
${PYTHON_DEPS}
+ trace? ( dev-util/lttng-tools )
"
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" \
+ sed -i -e \
+ "/^destdir =/s#=.*#= '$(python_get_sitedir)/libcamera'#g" \
src/py/libcamera/meson.build || die
fi
@@ -64,14 +80,18 @@ src_configure() {
local emesonargs=(
-Dandroid=disabled
$(meson_feature app cam)
- $(meson_feature doc documentation)
+ #$(meson_feature doc documentation)
+ -Ddocumentation=disabled
$(meson_feature gstreamer)
$(meson_feature python pycamera)
$(meson_feature qt6 qcam)
$(meson_feature udev)
- $(meson_use test)
+ # depend on libyuv
+ #$(meson_use test)
+ -Dtest=false
+ -Dpipelines=imx8-isi,ipu3,mali-c55,rkisp1,rpi/vc4,simple,uvcvideo,vimc
-Dbuildtype=$(usex debug debug plain)
- -Dv4l2=true
+ $(meson_use v4l2)
)
meson_src_configure
}
diff --git a/media-libs/libcamera/metadata.xml b/media-libs/libcamera/metadata.xml
index 03b5255..38c2a20 100644
--- a/media-libs/libcamera/metadata.xml
+++ b/media-libs/libcamera/metadata.xml
@@ -7,6 +7,8 @@
camera/libcamera