[Buildroot] [PATCHv3 02/15] directfb: mark as available only for gcc >= 4.5

Vicente Olivert Riera Vincent.Riera at imgtec.com
Fri Sep 4 14:49:09 UTC 2015


Dear Thomas Petazzoni,

On 09/01/2015 11:01 PM, Thomas Petazzoni wrote:
> The new DirectFB version does not build with gcc 4.3 from the Blackfin
> toolchain. One of the reason is that va_copy has some issues, which
> were fixed in gcc 4.4.0
> (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36799). There are also
> some other issues, which were fixed by a patch proposed by Peter
> Seiderer at
> http://lists.busybox.net/pipermail/buildroot/2015-February/120281.html.
> 
> However, it probably doesn't make a lot of sense to carry patches that
> are not upstream for such old compilers. Instead, this commit takes
> the action of making DirectFB available only on toolchains using gcc
>> = 4.5, which was tested with the Arago toolchain. gcc 4.4 could
> potentially work, but wasn't tested (it is no longer supported by the
> internal toolchain backend, and we don't have any toolchain based on
> gcc 4.4), so we take the safe decision of requiring at least gcc 4.5.
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
> ---
> This commit could be squashed into the DirectFB bump itself for
> bisectability, but was kept separate to ease the review.
> ---
>  package/directfb/Config.in                    | 5 +++--
>  package/gstreamer/gst-plugins-bad/Config.in   | 4 ++++
>  package/gstreamer1/gst1-plugins-bad/Config.in | 4 ++++
>  package/qt5/qt5base/Config.in                 | 4 ++++
>  4 files changed, 15 insertions(+), 2 deletions(-)
> 
> diff --git a/package/directfb/Config.in b/package/directfb/Config.in
> index 2b0d5c7..3ab40f9 100644
> --- a/package/directfb/Config.in
> +++ b/package/directfb/Config.in
> @@ -2,6 +2,7 @@ config BR2_PACKAGE_DIRECTFB
>  	bool "directfb"
>  	depends on BR2_TOOLCHAIN_HAS_THREADS
>  	depends on BR2_INSTALL_LIBSTDCPP
> +	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
>  	select BR2_PACKAGE_FREETYPE
>  	select BR2_PACKAGE_ZLIB
>  	help
> @@ -157,5 +158,5 @@ config BR2_PACKAGE_DIRECTFB_TESTS
>  
>  endif # BR2_PACKAGE_DIRECTFB
>  
> -comment "directfb needs a toolchain w/ C++, threads"
> -	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP
> +comment "directfb needs a toolchain w/ C++, threads, gcc >= 4.5"
> +	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
> diff --git a/package/gstreamer/gst-plugins-bad/Config.in b/package/gstreamer/gst-plugins-bad/Config.in
> index 1b465b2..43f0554 100644
> --- a/package/gstreamer/gst-plugins-bad/Config.in
> +++ b/package/gstreamer/gst-plugins-bad/Config.in
> @@ -263,6 +263,10 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_DIRECTFB
>  	select BR2_PACKAGE_DIRECTFB
>  	depends on BR2_TOOLCHAIN_HAS_THREADS
>  	depends on BR2_INSTALL_LIBSTDCPP
> +	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5

worth adding " #directfb" at the end of that line to see why it's
needed, or is it too obvious?

> +
> +comment "directfb needs a toolchain w/ C++, threads, gcc >= 4.5"
> +	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
>  
>  config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_DVB
>  	bool "dvb"
> diff --git a/package/gstreamer1/gst1-plugins-bad/Config.in b/package/gstreamer1/gst1-plugins-bad/Config.in
> index d268fc6..d5294c3 100644
> --- a/package/gstreamer1/gst1-plugins-bad/Config.in
> +++ b/package/gstreamer1/gst1-plugins-bad/Config.in
> @@ -495,6 +495,10 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DIRECTFB
>  	select BR2_PACKAGE_DIRECTFB
>  	depends on BR2_TOOLCHAIN_HAS_THREADS
>  	depends on BR2_INSTALL_LIBSTDCPP
> +	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5

Same as above.

> +
> +comment "directfb needs a toolchain w/ C++, threads, gcc >= 4.5"
> +	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
>  
>  config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WAYLAND
>  	bool "wayland"
> diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
> index 106517f..6e76e90 100644
> --- a/package/qt5/qt5base/Config.in
> +++ b/package/qt5/qt5base/Config.in
> @@ -179,6 +179,10 @@ config BR2_PACKAGE_QT5BASE_LINUXFB
>  config BR2_PACKAGE_QT5BASE_DIRECTFB
>  	bool "directfb support"
>  	select BR2_PACKAGE_DIRECTFB
> +	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5

Same as above.

> +
> +comment "directfb needs a toolchain w/ gcc >= 4.5"
> +	depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
>  
>  config BR2_PACKAGE_QT5BASE_XCB
>  	bool "X.org XCB support"
> 

Anyway,

Reviewed-by: Vicente Olivert Riera <Vincent.Riera at imgtec.com>

Regards,

Vincent.



More information about the buildroot mailing list