All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/3] Microblaze cleanup 3
@ 2019-12-17 14:37 Giulio Benetti
  2019-12-17 14:37 ` [Buildroot] [PATCH 1/3] package/sqlite: remove workaround when building with gcc version <= 4.9 Giulio Benetti
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Giulio Benetti @ 2019-12-17 14:37 UTC (permalink / raw)
  To: buildroot

Drop some workaround since binutils and gcc fixed previous bugs

Giulio Benetti (3):
  package/sqlite: remove workaround when building with gcc version <=
    4.9
  package/libnss: remove ld segfault workaround
  package/kmod: remove ld segfault workaround

 package/kmod/kmod.mk     |  6 ------
 package/libnss/libnss.mk | 10 ----------
 package/sqlite/sqlite.mk |  6 ------
 3 files changed, 22 deletions(-)

-- 
2.20.1

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

* [Buildroot] [PATCH 1/3] package/sqlite: remove workaround when building with gcc version <= 4.9
  2019-12-17 14:37 [Buildroot] [PATCH 0/3] Microblaze cleanup 3 Giulio Benetti
@ 2019-12-17 14:37 ` Giulio Benetti
  2019-12-17 16:50   ` Thomas Petazzoni
  2019-12-17 14:37 ` [Buildroot] [PATCH 2/3] package/libnss: remove ld segfault workaround Giulio Benetti
  2019-12-17 14:37 ` [Buildroot] [PATCH 3/3] package/kmod: " Giulio Benetti
  2 siblings, 1 reply; 8+ messages in thread
From: Giulio Benetti @ 2019-12-17 14:37 UTC (permalink / raw)
  To: buildroot

Gcc version 4.9 is not supported anymore by Buildroot so let's remove
the check for using a work-around.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
---
 package/sqlite/sqlite.mk | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk
index ba5b5c5d00..673d91ccd9 100644
--- a/package/sqlite/sqlite.mk
+++ b/package/sqlite/sqlite.mk
@@ -39,14 +39,8 @@ ifeq ($(BR2_PACKAGE_SQLITE_NO_SYNC),y)
 SQLITE_CFLAGS += -DSQLITE_NO_SYNC
 endif
 
-# Building with Microblaze Gcc 4.9 makes compiling to hang.
-# Work around using -O0
-ifeq ($(BR2_microblaze):$(BR2_TOOLCHAIN_GCC_AT_LEAST_5),y:)
-SQLITE_CFLAGS += $(TARGET_CFLAGS) -O0
-else
 # fallback to standard -O3 when -Ofast is present to avoid -ffast-math
 SQLITE_CFLAGS += $(subst -Ofast,-O3,$(TARGET_CFLAGS))
-endif
 
 SQLITE_CONF_ENV = CFLAGS="$(SQLITE_CFLAGS)"
 
-- 
2.20.1

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

* [Buildroot] [PATCH 2/3] package/libnss: remove ld segfault workaround
  2019-12-17 14:37 [Buildroot] [PATCH 0/3] Microblaze cleanup 3 Giulio Benetti
  2019-12-17 14:37 ` [Buildroot] [PATCH 1/3] package/sqlite: remove workaround when building with gcc version <= 4.9 Giulio Benetti
@ 2019-12-17 14:37 ` Giulio Benetti
  2019-12-31 16:18   ` Yann E. MORIN
  2019-12-17 14:37 ` [Buildroot] [PATCH 3/3] package/kmod: " Giulio Benetti
  2 siblings, 1 reply; 8+ messages in thread
From: Giulio Benetti @ 2019-12-17 14:37 UTC (permalink / raw)
  To: buildroot

This ld bug has been fixed with binutils version 2.27 and Buildroot at
the moment provides binutils > 2.27, so let's remove the workaround.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
---
This patch must be applied after patch:
https://patchwork.ozlabs.org/patch/1210535/
---
 package/libnss/libnss.mk | 10 ----------
 1 file changed, 10 deletions(-)

diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
index 9349276a90..7c49ac1b25 100644
--- a/package/libnss/libnss.mk
+++ b/package/libnss/libnss.mk
@@ -27,16 +27,6 @@ endef
 
 LIBNSS_PRE_CONFIGURE_HOOKS += LIBNSS_FIXUP_LINUX_MK
 
-# --gc-sections triggers binutils ld segfault
-# https://sourceware.org/bugzilla/show_bug.cgi?id=21180
-ifeq ($(BR2_microblaze),y)
-define LIBNSS_DROP_GC_SECTIONS
-	sed -i 's:-Wl,--gc-sections::g' $(@D)/nss/coreconf/Linux.mk
-endef
-
-LIBNSS_PRE_CONFIGURE_HOOKS += LIBNSS_DROP_GC_SECTIONS
-endif
-
 ifeq ($(BR2_aarch64_be),y)
 LIBNSS_ARCH = aarch64
 else
-- 
2.20.1

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

* [Buildroot] [PATCH 3/3] package/kmod: remove ld segfault workaround
  2019-12-17 14:37 [Buildroot] [PATCH 0/3] Microblaze cleanup 3 Giulio Benetti
  2019-12-17 14:37 ` [Buildroot] [PATCH 1/3] package/sqlite: remove workaround when building with gcc version <= 4.9 Giulio Benetti
  2019-12-17 14:37 ` [Buildroot] [PATCH 2/3] package/libnss: remove ld segfault workaround Giulio Benetti
@ 2019-12-17 14:37 ` Giulio Benetti
  2 siblings, 0 replies; 8+ messages in thread
From: Giulio Benetti @ 2019-12-17 14:37 UTC (permalink / raw)
  To: buildroot

This ld bug has been fixed with binutils version 2.27 and Buildroot
at the moment provides binutils > 2.27, so let's remove the workaround.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
---
 package/kmod/kmod.mk | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/package/kmod/kmod.mk b/package/kmod/kmod.mk
index e21f40a845..6d94e833ac 100644
--- a/package/kmod/kmod.mk
+++ b/package/kmod/kmod.mk
@@ -17,12 +17,6 @@ HOST_KMOD_DEPENDENCIES = host-pkgconf
 KMOD_LICENSE = LGPL-2.1+ (library)
 KMOD_LICENSE_FILES = libkmod/COPYING
 
-# --gc-sections triggers binutils ld segfault
-# https://sourceware.org/bugzilla/show_bug.cgi?id=21180
-ifeq ($(BR2_microblaze),y)
-KMOD_CONF_ENV += cc_cv_LDFLAGS__Wl___gc_sections=false
-endif
-
 # static linking not supported, see
 # https://git.kernel.org/cgit/utils/kernel/kmod/kmod.git/commit/?id=b7016153ec8
 KMOD_CONF_OPTS = --disable-static --enable-shared
-- 
2.20.1

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

* [Buildroot] [PATCH 1/3] package/sqlite: remove workaround when building with gcc version <= 4.9
  2019-12-17 14:37 ` [Buildroot] [PATCH 1/3] package/sqlite: remove workaround when building with gcc version <= 4.9 Giulio Benetti
@ 2019-12-17 16:50   ` Thomas Petazzoni
  2019-12-17 18:00     ` Giulio Benetti
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Petazzoni @ 2019-12-17 16:50 UTC (permalink / raw)
  To: buildroot

On Tue, 17 Dec 2019 15:37:02 +0100
Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:

> Gcc version 4.9 is not supported anymore by Buildroot so let's remove
> the check for using a work-around.

This is not quite true: we no longer support building a toolchain with
gcc 4.9, but we do support external toolchains that use gcc 4.9 or
older. For example, the br-arm-full.config toolchain fragment is
testing a gcc 4.9 based toolchain in the autobuilders.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH 1/3] package/sqlite: remove workaround when building with gcc version <= 4.9
  2019-12-17 16:50   ` Thomas Petazzoni
@ 2019-12-17 18:00     ` Giulio Benetti
  0 siblings, 0 replies; 8+ messages in thread
From: Giulio Benetti @ 2019-12-17 18:00 UTC (permalink / raw)
  To: buildroot

On 12/17/19 5:50 PM, Thomas Petazzoni wrote:
> On Tue, 17 Dec 2019 15:37:02 +0100
> Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
> 
>> Gcc version 4.9 is not supported anymore by Buildroot so let's remove
>> the check for using a work-around.
> 
> This is not quite true: we no longer support building a toolchain with
> gcc 4.9, but we do support external toolchains that use gcc 4.9 or
> older. For example, the br-arm-full.config toolchain fragment is
> testing a gcc 4.9 based toolchain in the autobuilders.

Oops, I've just check now in toolchain/Config.in that it's supported gcc 
version >= 4.3

So let's drop this patch, sorry for the noise.

Best regards
-- 
Giulio Benetti
Benetti Engineering sas

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

* [Buildroot] [PATCH 2/3] package/libnss: remove ld segfault workaround
  2019-12-17 14:37 ` [Buildroot] [PATCH 2/3] package/libnss: remove ld segfault workaround Giulio Benetti
@ 2019-12-31 16:18   ` Yann E. MORIN
  2019-12-31 19:47     ` Giulio Benetti
  0 siblings, 1 reply; 8+ messages in thread
From: Yann E. MORIN @ 2019-12-31 16:18 UTC (permalink / raw)
  To: buildroot

Giulio, All,

On 2019-12-17 15:37 +0100, Giulio Benetti spake thusly:
> This ld bug has been fixed with binutils version 2.27 and Buildroot at
> the moment provides binutils > 2.27, so let's remove the workaround.

Even though Buildroot only has binutils > 2.27, there might still exist
pre-built, external toolchains that use a version older than 2.27.

Since we support gcc back to at least 4.3, I believe we must still
support binutils versions that were contemporary to that.

gcc-4.3 was releaswed in 2008, so the current binutils at the time was
2.18

However, for microblaze, in practice, I'm not sure what the oldest
binutils version makes sense... :-/

Unless another maintainer is happy to take those two patches, I'll
reject then next year (woot, you have a one year delay! ;-] ).

Regards,
Yann E. MORIN.

> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
> ---
> This patch must be applied after patch:
> https://patchwork.ozlabs.org/patch/1210535/
> ---
>  package/libnss/libnss.mk | 10 ----------
>  1 file changed, 10 deletions(-)
> 
> diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
> index 9349276a90..7c49ac1b25 100644
> --- a/package/libnss/libnss.mk
> +++ b/package/libnss/libnss.mk
> @@ -27,16 +27,6 @@ endef
>  
>  LIBNSS_PRE_CONFIGURE_HOOKS += LIBNSS_FIXUP_LINUX_MK
>  
> -# --gc-sections triggers binutils ld segfault
> -# https://sourceware.org/bugzilla/show_bug.cgi?id=21180
> -ifeq ($(BR2_microblaze),y)
> -define LIBNSS_DROP_GC_SECTIONS
> -	sed -i 's:-Wl,--gc-sections::g' $(@D)/nss/coreconf/Linux.mk
> -endef
> -
> -LIBNSS_PRE_CONFIGURE_HOOKS += LIBNSS_DROP_GC_SECTIONS
> -endif
> -
>  ifeq ($(BR2_aarch64_be),y)
>  LIBNSS_ARCH = aarch64
>  else
> -- 
> 2.20.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH 2/3] package/libnss: remove ld segfault workaround
  2019-12-31 16:18   ` Yann E. MORIN
@ 2019-12-31 19:47     ` Giulio Benetti
  0 siblings, 0 replies; 8+ messages in thread
From: Giulio Benetti @ 2019-12-31 19:47 UTC (permalink / raw)
  To: buildroot

Hi Yann,

On 12/31/19 5:18 PM, Yann E. MORIN wrote:
> Giulio, All,
> 
> On 2019-12-17 15:37 +0100, Giulio Benetti spake thusly:
>> This ld bug has been fixed with binutils version 2.27 and Buildroot at
>> the moment provides binutils > 2.27, so let's remove the workaround.
> 
> Even though Buildroot only has binutils > 2.27, there might still exist
> pre-built, external toolchains that use a version older than 2.27.
> 
> Since we support gcc back to at least 4.3, I believe we must still
> support binutils versions that were contemporary to that.
> 
> gcc-4.3 was releaswed in 2008, so the current binutils at the time was
> 2.18
> 
> However, for microblaze, in practice, I'm not sure what the oldest
> binutils version makes sense... :-/
> 
> Unless another maintainer is happy to take those two patches, I'll
> reject then next year (woot, you have a one year delay! ;-] ).

Yes :-) But it wouldn't make sense since we have to garantuee up to 
binutils 2.18 and bug is fixed on 2.27 only.

I'm going to set this and kmod patch as Rejected.

Best regards
-- 
Giulio Benetti
Benetti Engineering sas

> Regards,
> Yann E. MORIN.
> 
>> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
>> ---
>> This patch must be applied after patch:
>> https://patchwork.ozlabs.org/patch/1210535/
>> ---
>>   package/libnss/libnss.mk | 10 ----------
>>   1 file changed, 10 deletions(-)
>>
>> diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
>> index 9349276a90..7c49ac1b25 100644
>> --- a/package/libnss/libnss.mk
>> +++ b/package/libnss/libnss.mk
>> @@ -27,16 +27,6 @@ endef
>>   
>>   LIBNSS_PRE_CONFIGURE_HOOKS += LIBNSS_FIXUP_LINUX_MK
>>   
>> -# --gc-sections triggers binutils ld segfault
>> -# https://sourceware.org/bugzilla/show_bug.cgi?id=21180
>> -ifeq ($(BR2_microblaze),y)
>> -define LIBNSS_DROP_GC_SECTIONS
>> -	sed -i 's:-Wl,--gc-sections::g' $(@D)/nss/coreconf/Linux.mk
>> -endef
>> -
>> -LIBNSS_PRE_CONFIGURE_HOOKS += LIBNSS_DROP_GC_SECTIONS
>> -endif
>> -
>>   ifeq ($(BR2_aarch64_be),y)
>>   LIBNSS_ARCH = aarch64
>>   else
>> -- 
>> 2.20.1
>>
>> _______________________________________________
>> buildroot mailing list
>> buildroot at busybox.net
>> http://lists.busybox.net/mailman/listinfo/buildroot
> 

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

end of thread, other threads:[~2019-12-31 19:47 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-17 14:37 [Buildroot] [PATCH 0/3] Microblaze cleanup 3 Giulio Benetti
2019-12-17 14:37 ` [Buildroot] [PATCH 1/3] package/sqlite: remove workaround when building with gcc version <= 4.9 Giulio Benetti
2019-12-17 16:50   ` Thomas Petazzoni
2019-12-17 18:00     ` Giulio Benetti
2019-12-17 14:37 ` [Buildroot] [PATCH 2/3] package/libnss: remove ld segfault workaround Giulio Benetti
2019-12-31 16:18   ` Yann E. MORIN
2019-12-31 19:47     ` Giulio Benetti
2019-12-17 14:37 ` [Buildroot] [PATCH 3/3] package/kmod: " Giulio Benetti

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.