All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH: for-master 1/3] package/uclibc: remove UCLIBC_LARGEFILE_CONFIG
@ 2019-08-17 11:26 Romain Naour
  2019-08-17 11:26 ` [Buildroot] [PATCH: for-master 2/3] package/gcc: gcc 9.x for ork1 needs binutils >= 2.32 Romain Naour
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Romain Naour @ 2019-08-17 11:26 UTC (permalink / raw)
  To: buildroot

UCLIBC_LARGEFILE_CONFIG was removed with the bump to uClibc-ng
1.0.20 (commit a44d7f2dbb19a54a8f2beb5c0f0adb0680999319)

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
---
 package/uclibc/uclibc.mk | 1 -
 1 file changed, 1 deletion(-)

diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk
index afc4872b65..b9ed8b9290 100644
--- a/package/uclibc/uclibc.mk
+++ b/package/uclibc/uclibc.mk
@@ -388,7 +388,6 @@ define UCLIBC_KCONFIG_FIXUP_CMDS
 	$(UCLIBC_X86_TYPE_CONFIG)
 	$(UCLIBC_DEBUG_CONFIG)
 	$(UCLIBC_ENDIAN_CONFIG)
-	$(UCLIBC_LARGEFILE_CONFIG)
 	$(UCLIBC_IPV6_CONFIG)
 	$(UCLIBC_FLOAT_CONFIG)
 	$(UCLIBC_SSP_CONFIG)
-- 
2.21.0

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

* [Buildroot] [PATCH: for-master 2/3] package/gcc: gcc 9.x for ork1 needs binutils >= 2.32
  2019-08-17 11:26 [Buildroot] [PATCH: for-master 1/3] package/uclibc: remove UCLIBC_LARGEFILE_CONFIG Romain Naour
@ 2019-08-17 11:26 ` Romain Naour
  2019-08-21 21:47   ` Arnout Vandecappelle
  2019-08-17 11:26 ` [Buildroot] [PATCH: for-master 3/3] package/gcc: allow uclibc only for gcc or1k (5.x) Romain Naour
  2019-08-21 21:40 ` [Buildroot] [PATCH: for-master 1/3] package/uclibc: remove UCLIBC_LARGEFILE_CONFIG Arnout Vandecappelle
  2 siblings, 1 reply; 6+ messages in thread
From: Romain Naour @ 2019-08-17 11:26 UTC (permalink / raw)
  To: buildroot

With binutils 2.30.x or 2.31.x, the assembler doesn't
support the code generated by gcc 9.1:

Error: junk at end of line `l.movhi r17,gotoffha(.LC0)'

gotoffha is supported by binutils since version 2.32 [1].
It was added by the ork1 gcc port merged into gcc 9.x [2].

So, for or1k we can select gcc 9.x only if binutils 2.32
(or latter) is selected.

Tested using qemu_or1k_defconfig and selecting musl libc,
binutils 2.32 and gcc 9.1.

[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=1c4f3780f7d939402cfe555007ebff45c8e38951
[2] https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=d61fdfe71cfd42aa6454f2267a48c97820918fe3

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
---
 package/gcc/Config.in.host | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index 990b7964c6..9b0fbf7d11 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -59,6 +59,8 @@ config BR2_GCC_VERSION_8_X
 
 config BR2_GCC_VERSION_9_X
 	bool "gcc 9.x"
+	# or1k needs binutils >= 2.32
+	depends on !BR2_or1k || (BR2_or1k && !BR2_BINUTILS_VERSION_2_30_X && !BR2_BINUTILS_VERSION_2_31_X)
 	# powerpc spe support has been deprecated since gcc 8.x.
 	# https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
 	depends on !BR2_powerpc_SPE
-- 
2.21.0

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

* [Buildroot] [PATCH: for-master 3/3] package/gcc: allow uclibc only for gcc or1k (5.x)
  2019-08-17 11:26 [Buildroot] [PATCH: for-master 1/3] package/uclibc: remove UCLIBC_LARGEFILE_CONFIG Romain Naour
  2019-08-17 11:26 ` [Buildroot] [PATCH: for-master 2/3] package/gcc: gcc 9.x for ork1 needs binutils >= 2.32 Romain Naour
@ 2019-08-17 11:26 ` Romain Naour
  2019-08-21 21:54   ` Arnout Vandecappelle
  2019-08-21 21:40 ` [Buildroot] [PATCH: for-master 1/3] package/uclibc: remove UCLIBC_LARGEFILE_CONFIG Arnout Vandecappelle
  2 siblings, 1 reply; 6+ messages in thread
From: Romain Naour @ 2019-08-17 11:26 UTC (permalink / raw)
  To: buildroot

uClibc doesn't build with the upstream binutils and gcc or1k
port due to the following error:

LD libuClibc-1.0.31.so
/opt/openrisc--uclibc--bleeding-edge-1/lib/gcc/or1k-buildroot-linux-uclibc/9.2.0/../../../../or1k-buildroot-linux-uclibc/bin/ld:
libc/libc_so.a(or1k_clone.os): pc-relative relocation against dynamic symbol
__syscall_error

See:
https://gitlab.com/kubu93/toolchains-builder/-/jobs/270854456

This error message come from a new check in binutils 2.32.x:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=f2c1801f6255a3f9f483ae2f07c7d7da0ddae4af

This issue has been reported on the uClibc-ng mailing list:
https://mailman.uclibc-ng.org/pipermail/devel/2019-August/001885.html

For now, disable uClibc if gcc 9.1 is used for or1k.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
---
 package/gcc/Config.in.host | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index 9b0fbf7d11..4bd0fc6d7c 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -61,6 +61,9 @@ config BR2_GCC_VERSION_9_X
 	bool "gcc 9.x"
 	# or1k needs binutils >= 2.32
 	depends on !BR2_or1k || (BR2_or1k && !BR2_BINUTILS_VERSION_2_30_X && !BR2_BINUTILS_VERSION_2_31_X)
+	# uClibc doesn't build with upstream or1k gcc
+	# https://mailman.uclibc-ng.org/pipermail/devel/2019-August/001885.html
+	depends on !BR2_or1k || (BR2_or1k && !BR2_TOOLCHAIN_USES_UCLIBC)
 	# powerpc spe support has been deprecated since gcc 8.x.
 	# https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
 	depends on !BR2_powerpc_SPE
-- 
2.21.0

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

* [Buildroot] [PATCH: for-master 1/3] package/uclibc: remove UCLIBC_LARGEFILE_CONFIG
  2019-08-17 11:26 [Buildroot] [PATCH: for-master 1/3] package/uclibc: remove UCLIBC_LARGEFILE_CONFIG Romain Naour
  2019-08-17 11:26 ` [Buildroot] [PATCH: for-master 2/3] package/gcc: gcc 9.x for ork1 needs binutils >= 2.32 Romain Naour
  2019-08-17 11:26 ` [Buildroot] [PATCH: for-master 3/3] package/gcc: allow uclibc only for gcc or1k (5.x) Romain Naour
@ 2019-08-21 21:40 ` Arnout Vandecappelle
  2 siblings, 0 replies; 6+ messages in thread
From: Arnout Vandecappelle @ 2019-08-21 21:40 UTC (permalink / raw)
  To: buildroot



On 17/08/2019 13:26, Romain Naour wrote:
> UCLIBC_LARGEFILE_CONFIG was removed with the bump to uClibc-ng
> 1.0.20 (commit a44d7f2dbb19a54a8f2beb5c0f0adb0680999319)
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>
> Cc: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
> ---
>  package/uclibc/uclibc.mk | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk
> index afc4872b65..b9ed8b9290 100644
> --- a/package/uclibc/uclibc.mk
> +++ b/package/uclibc/uclibc.mk
> @@ -388,7 +388,6 @@ define UCLIBC_KCONFIG_FIXUP_CMDS
>  	$(UCLIBC_X86_TYPE_CONFIG)
>  	$(UCLIBC_DEBUG_CONFIG)
>  	$(UCLIBC_ENDIAN_CONFIG)
> -	$(UCLIBC_LARGEFILE_CONFIG)

 Since it's not defined, this is pretty harmless, so I've applied to next instead.

 Regards,
 Arnout

>  	$(UCLIBC_IPV6_CONFIG)
>  	$(UCLIBC_FLOAT_CONFIG)
>  	$(UCLIBC_SSP_CONFIG)
> 

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

* [Buildroot] [PATCH: for-master 2/3] package/gcc: gcc 9.x for ork1 needs binutils >= 2.32
  2019-08-17 11:26 ` [Buildroot] [PATCH: for-master 2/3] package/gcc: gcc 9.x for ork1 needs binutils >= 2.32 Romain Naour
@ 2019-08-21 21:47   ` Arnout Vandecappelle
  0 siblings, 0 replies; 6+ messages in thread
From: Arnout Vandecappelle @ 2019-08-21 21:47 UTC (permalink / raw)
  To: buildroot



On 17/08/2019 13:26, Romain Naour wrote:
> With binutils 2.30.x or 2.31.x, the assembler doesn't
> support the code generated by gcc 9.1:
> 
> Error: junk at end of line `l.movhi r17,gotoffha(.LC0)'
> 
> gotoffha is supported by binutils since version 2.32 [1].
> It was added by the ork1 gcc port merged into gcc 9.x [2].
> 
> So, for or1k we can select gcc 9.x only if binutils 2.32
> (or latter) is selected.
> 
> Tested using qemu_or1k_defconfig and selecting musl libc,
> binutils 2.32 and gcc 9.1.
> 
> [1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=1c4f3780f7d939402cfe555007ebff45c8e38951
> [2] https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=d61fdfe71cfd42aa6454f2267a48c97820918fe3
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>
> Cc: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
> ---
>  package/gcc/Config.in.host | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
> index 990b7964c6..9b0fbf7d11 100644
> --- a/package/gcc/Config.in.host
> +++ b/package/gcc/Config.in.host
> @@ -59,6 +59,8 @@ config BR2_GCC_VERSION_8_X
>  
>  config BR2_GCC_VERSION_9_X
>  	bool "gcc 9.x"
> +	# or1k needs binutils >= 2.32
> +	depends on !BR2_or1k || (BR2_or1k && !BR2_BINUTILS_VERSION_2_30_X && !BR2_BINUTILS_VERSION_2_31_X)

 I've inverted the logic here, like was done a bit higher. Also split over two
lines:

	depends on !(BR2_or1k && \
		(BR2_BINUTILS_VERSION_2_30_X || BR2_BINUTILS_VERSION_2_31_X))

 Applied to master with that change, plus some spelling fixes in the commit
message, thanks.

 Regards,
 Arnout

>  	# powerpc spe support has been deprecated since gcc 8.x.
>  	# https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
>  	depends on !BR2_powerpc_SPE
> 

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

* [Buildroot] [PATCH: for-master 3/3] package/gcc: allow uclibc only for gcc or1k (5.x)
  2019-08-17 11:26 ` [Buildroot] [PATCH: for-master 3/3] package/gcc: allow uclibc only for gcc or1k (5.x) Romain Naour
@ 2019-08-21 21:54   ` Arnout Vandecappelle
  0 siblings, 0 replies; 6+ messages in thread
From: Arnout Vandecappelle @ 2019-08-21 21:54 UTC (permalink / raw)
  To: buildroot



On 17/08/2019 13:26, Romain Naour wrote:
> uClibc doesn't build with the upstream binutils and gcc or1k
> port due to the following error:
> 
> LD libuClibc-1.0.31.so
> /opt/openrisc--uclibc--bleeding-edge-1/lib/gcc/or1k-buildroot-linux-uclibc/9.2.0/../../../../or1k-buildroot-linux-uclibc/bin/ld:
> libc/libc_so.a(or1k_clone.os): pc-relative relocation against dynamic symbol
> __syscall_error
> 
> See:
> https://gitlab.com/kubu93/toolchains-builder/-/jobs/270854456
> 
> This error message come from a new check in binutils 2.32.x:
> 
> https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=f2c1801f6255a3f9f483ae2f07c7d7da0ddae4af
> 
> This issue has been reported on the uClibc-ng mailing list:
> https://mailman.uclibc-ng.org/pipermail/devel/2019-August/001885.html
> 
> For now, disable uClibc if gcc 9.1 is used for or1k.
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>
> Cc: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
> ---
>  package/gcc/Config.in.host | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
> index 9b0fbf7d11..4bd0fc6d7c 100644
> --- a/package/gcc/Config.in.host
> +++ b/package/gcc/Config.in.host
> @@ -61,6 +61,9 @@ config BR2_GCC_VERSION_9_X
>  	bool "gcc 9.x"
>  	# or1k needs binutils >= 2.32
>  	depends on !BR2_or1k || (BR2_or1k && !BR2_BINUTILS_VERSION_2_30_X && !BR2_BINUTILS_VERSION_2_31_X)
> +	# uClibc doesn't build with upstream or1k gcc
> +	# https://mailman.uclibc-ng.org/pipermail/devel/2019-August/001885.html
> +	depends on !BR2_or1k || (BR2_or1k && !BR2_TOOLCHAIN_USES_UCLIBC)

 I've inverted the logic here as well, and applied to master, thanks.

 Regards,
 Arnout

>  	# powerpc spe support has been deprecated since gcc 8.x.
>  	# https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
>  	depends on !BR2_powerpc_SPE
> 

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

end of thread, other threads:[~2019-08-21 21:54 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-17 11:26 [Buildroot] [PATCH: for-master 1/3] package/uclibc: remove UCLIBC_LARGEFILE_CONFIG Romain Naour
2019-08-17 11:26 ` [Buildroot] [PATCH: for-master 2/3] package/gcc: gcc 9.x for ork1 needs binutils >= 2.32 Romain Naour
2019-08-21 21:47   ` Arnout Vandecappelle
2019-08-17 11:26 ` [Buildroot] [PATCH: for-master 3/3] package/gcc: allow uclibc only for gcc or1k (5.x) Romain Naour
2019-08-21 21:54   ` Arnout Vandecappelle
2019-08-21 21:40 ` [Buildroot] [PATCH: for-master 1/3] package/uclibc: remove UCLIBC_LARGEFILE_CONFIG Arnout Vandecappelle

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.