[Buildroot] [PATCH 1/1] Add option to the gst1-plugins-bad package to enable/disable the qt plugin.

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Wed Aug 23 12:32:47 UTC 2017


Hello,

On Mon, 24 Jul 2017 14:19:04 +0800, Glenn Coombs wrote:
> I think the code needs Qt5 rather than Qt4 as it uses the scene graph
> rendering model that only exists in Qt5.  The code in the
> output/build/gst1-plugins-bad-1.12.1/ext/qt/ directory needs the following
> Qt header files in order to compile:

Correct, it uses Qt5.

> I've changed the gst1-plugins-bad/Config.in file like this:
> 
> config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_QT
>     bool "qt"
>         depends on BR2_PACKAGE_QT5

It probably needs a bunch more options here:

	depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE
	select BR2_PACKAGE_QT5BASE
	select BR2_PACKAGE_QT5BASE_GUI
	select BR2_PACKAGE_QT5BASE_XML
	select BR2_PACKAGE_QT5DECLARATIVE_QUICK

> which only allows the gst-plugins-bad/qt option to be selected if the Qt5
> package has already been selected.  I'm not sure how to handle the
> dependencies in the gst1-plugins-bad.mk file.  I think you're right that if
> I add a dependency on Qt5 then it will introduce a circular dependency as
> the qt5base.mk file has this section:
> 
> ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y)
>     # gstreamer 0.10 support is broken in qt5multimedia
>     ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y)
>         QT5BASE_CONFIGURE_OPTS += -gstreamer 1.0
>         QT5BASE_DEPENDENCIES   += gst1-plugins-base
>     else
>         QT5BASE_CONFIGURE_OPTS += -no-gstreamer
>     endif
> endif
> 
> Any thoughts on how best to break that circular dependency ?

In fact there is no circular dependency I believe:

qt5base (for Qt 5.6) or qt5multimedia (for Qt 5.9) depend on
gst1-plugins-base. But the dependency you're adding is in
gst1-plugins-bad.

Therefore, the following build order is perfectly fine, and has no
circular dependency:

gstreamer1
gst1-plugins-base
qt5base / qt5multimedia / qt5declarative
gst1-plugins-bad

Could you cook a patch adding the appropriate logic in
gst1-plugins-bad ?

Thanks a lot!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com


More information about the buildroot mailing list