* [Buildroot] [PATCH v2] package/libcamera-apps: enable LIBAV only if libdrm is present
@ 2023-02-20 7:18 Marcus Folkesson
2023-02-20 21:17 ` Thomas Petazzoni via buildroot
0 siblings, 1 reply; 3+ messages in thread
From: Marcus Folkesson @ 2023-02-20 7:18 UTC (permalink / raw)
To: buildroot; +Cc: Marcus Folkesson, Yann E . MORIN
Since commit 35266e84043f880d7591e52b71a8c5b8d0e4717d, libcamera-apps
does enable LIBAV by default which depends on libdrm.
Fixes:
- http://autobuild.buildroot.net/results/548f2a3b353ce4693fb60d7fb1e06e02af22991c/
/home/buildroot/autobuild/run/instance-1/output-1/build/libcamera-apps-1.1.1/encoder/libav_encoder.cpp:13:10: fatal error: libdrm/drm_fourcc.h: No such file or directory
13 | #include <libdrm/drm_fourcc.h>
| ^~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
---
Notes:
v2:
-Add dependency to ffmpeg
package/libcamera-apps/Config.in | 1 +
package/libcamera-apps/libcamera-apps.mk | 4 +++-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/package/libcamera-apps/Config.in b/package/libcamera-apps/Config.in
index 711fd6de05..d0cc6a4210 100644
--- a/package/libcamera-apps/Config.in
+++ b/package/libcamera-apps/Config.in
@@ -15,6 +15,7 @@ config BR2_PACKAGE_LIBCAMERA_APPS
select BR2_PACKAGE_TIFF
select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 && (BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL)
select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_XORG7 && (BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL)
+ select BR2_PACKAGE_FFMPEG if BR2_PACKAGE_LIBDRM
select BR2_PACKAGE_LIBEPOXY if BR2_PACKAGE_XORG7 && (BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL)
select BR2_PACKAGE_QT5BASE_GUI if BR2_PACKAGE_QT5
select BR2_PACKAGE_QT5BASE_WIDGETS if BR2_PACKAGE_QT5
diff --git a/package/libcamera-apps/libcamera-apps.mk b/package/libcamera-apps/libcamera-apps.mk
index 290ee9a026..1464875298 100644
--- a/package/libcamera-apps/libcamera-apps.mk
+++ b/package/libcamera-apps/libcamera-apps.mk
@@ -23,10 +23,12 @@ LIBCAMERA_APPS_CONF_OPTS = \
-DENABLE_TFLITE=0
ifeq ($(BR2_PACKAGE_LIBDRM),y)
-LIBCAMERA_APPS_DEPENDENCIES += libdrm
+LIBCAMERA_APPS_DEPENDENCIES += ffmpeg libdrm
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_DRM=1
+LIBCAMERA_APPS_CONF_OPTS += -DENABLE_LIBAV=1
else
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_DRM=0
+LIBCAMERA_APPS_CONF_OPTS += -DENABLE_LIBAV=0
endif
ifeq ($(BR2_PACKAGE_XORG7),y)
--
2.38.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Buildroot] [PATCH v2] package/libcamera-apps: enable LIBAV only if libdrm is present
2023-02-20 7:18 [Buildroot] [PATCH v2] package/libcamera-apps: enable LIBAV only if libdrm is present Marcus Folkesson
@ 2023-02-20 21:17 ` Thomas Petazzoni via buildroot
2023-02-20 21:34 ` Thomas Petazzoni via buildroot
0 siblings, 1 reply; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-20 21:17 UTC (permalink / raw)
To: Marcus Folkesson; +Cc: Yann E . MORIN, buildroot
Hello Marcus,
On Mon, 20 Feb 2023 08:18:46 +0100
Marcus Folkesson <marcus.folkesson@gmail.com> wrote:
> Since commit 35266e84043f880d7591e52b71a8c5b8d0e4717d, libcamera-apps
> does enable LIBAV by default which depends on libdrm.
>
> Fixes:
> - http://autobuild.buildroot.net/results/548f2a3b353ce4693fb60d7fb1e06e02af22991c/
>
> /home/buildroot/autobuild/run/instance-1/output-1/build/libcamera-apps-1.1.1/encoder/libav_encoder.cpp:13:10: fatal error: libdrm/drm_fourcc.h: No such file or directory
> 13 | #include <libdrm/drm_fourcc.h>
> | ^~~~~~~~~~~~~~~~~~~~~
>
> Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
I need to do some test builds, but I believe this patch is not correct.
What the error message seems to say is that when you build libav
support in libcamera-apps, then libdrm support is needed.
But what you're patch is doing is that it's forcing to have libva as
soon as libdrm is available, which I'm not sure is needed.
> diff --git a/package/libcamera-apps/Config.in b/package/libcamera-apps/Config.in
> index 711fd6de05..d0cc6a4210 100644
> --- a/package/libcamera-apps/Config.in
> +++ b/package/libcamera-apps/Config.in
> @@ -15,6 +15,7 @@ config BR2_PACKAGE_LIBCAMERA_APPS
> select BR2_PACKAGE_TIFF
> select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 && (BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL)
> select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_XORG7 && (BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL)
> + select BR2_PACKAGE_FFMPEG if BR2_PACKAGE_LIBDRM
> select BR2_PACKAGE_LIBEPOXY if BR2_PACKAGE_XORG7 && (BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL)
> select BR2_PACKAGE_QT5BASE_GUI if BR2_PACKAGE_QT5
> select BR2_PACKAGE_QT5BASE_WIDGETS if BR2_PACKAGE_QT5
> diff --git a/package/libcamera-apps/libcamera-apps.mk b/package/libcamera-apps/libcamera-apps.mk
> index 290ee9a026..1464875298 100644
> --- a/package/libcamera-apps/libcamera-apps.mk
> +++ b/package/libcamera-apps/libcamera-apps.mk
> @@ -23,10 +23,12 @@ LIBCAMERA_APPS_CONF_OPTS = \
> -DENABLE_TFLITE=0
>
> ifeq ($(BR2_PACKAGE_LIBDRM),y)
> -LIBCAMERA_APPS_DEPENDENCIES += libdrm
> +LIBCAMERA_APPS_DEPENDENCIES += ffmpeg libdrm
> LIBCAMERA_APPS_CONF_OPTS += -DENABLE_DRM=1
> +LIBCAMERA_APPS_CONF_OPTS += -DENABLE_LIBAV=1
> else
> LIBCAMERA_APPS_CONF_OPTS += -DENABLE_DRM=0
> +LIBCAMERA_APPS_CONF_OPTS += -DENABLE_LIBAV=0
> endif
Could you instead try something like this:
ifeq ($(BR2_PACKAGE_FFMPEG)$(BR2_PACKAGE_LIBDRM),yy)
LIBCAMERA_APPS_DEPENDENCIES += ffmpeg libdrm
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_LIBAV=1
else
LIBCAMERA_APPS_CONF_OPTS += -DENABLE_LIBAV=0
endif
To test this, you need to test 4 different cases:
- libcamera-apps enabled, ffmpeg disabled, libdrm disabled
- libcamera-apps enabled, ffmpeg enabled, libdrm disabled
- libcamera-apps enabled, ffmpeg disabled, libdrm enabled
- libcamera-apps enabled, ffmpeg enabled, libdrm enabled
Best regards,
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Buildroot] [PATCH v2] package/libcamera-apps: enable LIBAV only if libdrm is present
2023-02-20 21:17 ` Thomas Petazzoni via buildroot
@ 2023-02-20 21:34 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-20 21:34 UTC (permalink / raw)
To: Marcus Folkesson; +Cc: Yann E . MORIN, buildroot
On Mon, 20 Feb 2023 22:17:21 +0100
Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote:
> I need to do some test builds, but I believe this patch is not correct.
I confirm the patch is not correct: if you have a configuration with
libcamera-apps and libdrm (but ffmpeg disabled), it builds just fine,
and DRM support in camera-apps is enabled.
In this configuration, your patch forces a dependency on ffmpeg, which
is not correct.
Could you have a look at my previous suggestion instead?
Thanks a lot,
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-02-21 2:10 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-20 7:18 [Buildroot] [PATCH v2] package/libcamera-apps: enable LIBAV only if libdrm is present Marcus Folkesson
2023-02-20 21:17 ` Thomas Petazzoni via buildroot
2023-02-20 21:34 ` Thomas Petazzoni via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox