Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 1/1] package/ffmpeg: fix fenv build failure on ARCv2 with glibc
@ 2017-11-07 21:11 Bernd Kuhls
  2017-11-07 21:37 ` Thomas Petazzoni
  0 siblings, 1 reply; 4+ messages in thread
From: Bernd Kuhls @ 2017-11-07 21:11 UTC (permalink / raw)
  To: buildroot

https://git.buildroot.net/buildroot/commit/toolchain?id=0633eb58a2912328508a76f8fe9875a0d113a880
added glibc support for ARCv2 which lacks fenv.h.

Fixes
http://autobuild.buildroot.net/results/aec/aec300d7d4472421398a24202d6871c965bd1be5/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
v2: Restricted dependency to BR2_archs38 && BR2_TOOLCHAIN_USES_GLIBC
    (Thomas)

 package/ffmpeg/Config.in | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/package/ffmpeg/Config.in b/package/ffmpeg/Config.in
index ed87ddd492..9890a22deb 100644
--- a/package/ffmpeg/Config.in
+++ b/package/ffmpeg/Config.in
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
 	bool
-	# fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2
+	# fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on archs38
+	# in combination with glibc and nios2
 	# No support for ARMv7-M in the ARM assembly logic
 	# Microblaze build affected by gcc PR71124 (infinite loop)
 	# m68k coldfire causes a build failure, because the check for
@@ -9,7 +10,9 @@ config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
 	# not. See https://patchwork.ozlabs.org/patch/756664/ and
 	# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68467 for more
 	# details.
-	default y if !BR2_nios2 && !BR2_ARM_CPU_ARMV7M && !BR2_microblaze && !BR2_m68k_cf
+	default y if !(BR2_archs38 && BR2_TOOLCHAIN_USES_GLIBC) && \
+		!BR2_nios2 && !BR2_ARM_CPU_ARMV7M && \
+		!BR2_microblaze && !BR2_m68k_cf
 
 menuconfig BR2_PACKAGE_FFMPEG
 	bool "ffmpeg"
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v2 1/1] package/ffmpeg: fix fenv build failure on ARCv2 with glibc
  2017-11-07 21:11 [Buildroot] [PATCH v2 1/1] package/ffmpeg: fix fenv build failure on ARCv2 with glibc Bernd Kuhls
@ 2017-11-07 21:37 ` Thomas Petazzoni
  2017-11-07 23:24   ` Arnout Vandecappelle
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Petazzoni @ 2017-11-07 21:37 UTC (permalink / raw)
  To: buildroot

Hello,

On Tue,  7 Nov 2017 22:11:49 +0100, Bernd Kuhls wrote:
> https://git.buildroot.net/buildroot/commit/toolchain?id=0633eb58a2912328508a76f8fe9875a0d113a880
> added glibc support for ARCv2 which lacks fenv.h.
> 
> Fixes
> http://autobuild.buildroot.net/results/aec/aec300d7d4472421398a24202d6871c965bd1be5/
> 
> Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>

Thanks!

Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

> -	# fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2
> +	# fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on archs38
> +	# in combination with glibc and nios2
>  	# No support for ARMv7-M in the ARM assembly logic
>  	# Microblaze build affected by gcc PR71124 (infinite loop)
>  	# m68k coldfire causes a build failure, because the check for
> @@ -9,7 +10,9 @@ config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
>  	# not. See https://patchwork.ozlabs.org/patch/756664/ and
>  	# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68467 for more
>  	# details.
> -	default y if !BR2_nios2 && !BR2_ARM_CPU_ARMV7M && !BR2_microblaze && !BR2_m68k_cf
> +	default y if !(BR2_archs38 && BR2_TOOLCHAIN_USES_GLIBC) && \
> +		!BR2_nios2 && !BR2_ARM_CPU_ARMV7M && \
> +		!BR2_microblaze && !BR2_m68k_cf

We don't want to fix that now, but this is getting unreadable. Perhaps
we could improve that by doing this:

config BR2_PACKAGE_FFMPEG_ARCH_BROKEN
	bool
	# blabla why
	default y if BR2_archs38 && BR2_TOOLCHAIN_USES_GLIBC
	# blabla why
	default y if BR2_nios2
	# ...
	default y if BR2_ARM_CPU_ARMV7M
	# ...
	default y if BR2_microblaze
	# blabla why
	default y if BR2_m68k_cf

config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
	bool
	default y if !BR2_PACKAGE_FFMPEG_ARCH_BROKEN

It's probably more readable :)

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v2 1/1] package/ffmpeg: fix fenv build failure on ARCv2 with glibc
  2017-11-07 21:37 ` Thomas Petazzoni
@ 2017-11-07 23:24   ` Arnout Vandecappelle
  2017-11-08  7:38     ` Thomas Petazzoni
  0 siblings, 1 reply; 4+ messages in thread
From: Arnout Vandecappelle @ 2017-11-07 23:24 UTC (permalink / raw)
  To: buildroot



On 07-11-17 22:37, Thomas Petazzoni wrote:
> Hello,
> 
> On Tue,  7 Nov 2017 22:11:49 +0100, Bernd Kuhls wrote:
>> https://git.buildroot.net/buildroot/commit/toolchain?id=0633eb58a2912328508a76f8fe9875a0d113a880
>> added glibc support for ARCv2 which lacks fenv.h.
>>
>> Fixes
>> http://autobuild.buildroot.net/results/aec/aec300d7d4472421398a24202d6871c965bd1be5/
>>
>> Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
> 
> Thanks!
> 
> Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> 
>> -	# fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2
>> +	# fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on archs38
>> +	# in combination with glibc and nios2
>>  	# No support for ARMv7-M in the ARM assembly logic
>>  	# Microblaze build affected by gcc PR71124 (infinite loop)
>>  	# m68k coldfire causes a build failure, because the check for
>> @@ -9,7 +10,9 @@ config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
>>  	# not. See https://patchwork.ozlabs.org/patch/756664/ and
>>  	# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68467 for more
>>  	# details.
>> -	default y if !BR2_nios2 && !BR2_ARM_CPU_ARMV7M && !BR2_microblaze && !BR2_m68k_cf
>> +	default y if !(BR2_archs38 && BR2_TOOLCHAIN_USES_GLIBC) && \
>> +		!BR2_nios2 && !BR2_ARM_CPU_ARMV7M && \
>> +		!BR2_microblaze && !BR2_m68k_cf
> 
> We don't want to fix that now, but this is getting unreadable. Perhaps
> we could improve that by doing this:
> 
> config BR2_PACKAGE_FFMPEG_ARCH_BROKEN
> 	bool
> 	# blabla why
> 	default y if BR2_archs38 && BR2_TOOLCHAIN_USES_GLIBC
> 	# blabla why
> 	default y if BR2_nios2
> 	# ...
> 	default y if BR2_ARM_CPU_ARMV7M
> 	# ...
> 	default y if BR2_microblaze
> 	# blabla why
> 	default y if BR2_m68k_cf
> 
> config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
> 	bool
> 	default y if !BR2_PACKAGE_FFMPEG_ARCH_BROKEN

 Doesn't this work?

config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
	bool
	default y
	# blabla why
	depends on !BR2_archs38 || !BR2_TOOLCHAIN_USES_GLIBC
	# blabla why
	depends on !BR2_nios
	...

 I believe we use that construct elsewhere...

 Regards,
 Arnout

> 
> It's probably more readable :)
> 
> Thomas
> 

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v2 1/1] package/ffmpeg: fix fenv build failure on ARCv2 with glibc
  2017-11-07 23:24   ` Arnout Vandecappelle
@ 2017-11-08  7:38     ` Thomas Petazzoni
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Petazzoni @ 2017-11-08  7:38 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 8 Nov 2017 00:24:50 +0100, Arnout Vandecappelle wrote:

>  Doesn't this work?
> 
> config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
> 	bool
> 	default y
> 	# blabla why
> 	depends on !BR2_archs38 || !BR2_TOOLCHAIN_USES_GLIBC
> 	# blabla why
> 	depends on !BR2_nios
> 	...
> 
>  I believe we use that construct elsewhere...

Absolutely. Not sure why I over-engineered the thing, your solution
should work perfectly fine.

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-11-08  7:38 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-07 21:11 [Buildroot] [PATCH v2 1/1] package/ffmpeg: fix fenv build failure on ARCv2 with glibc Bernd Kuhls
2017-11-07 21:37 ` Thomas Petazzoni
2017-11-07 23:24   ` Arnout Vandecappelle
2017-11-08  7:38     ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox