Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2] binutils: Allow upstream 2.29 to be chosen for ARC
@ 2017-11-10 16:37 Alexey Brodkin
  2017-11-29 22:37 ` Thomas Petazzoni
  0 siblings, 1 reply; 4+ messages in thread
From: Alexey Brodkin @ 2017-11-10 16:37 UTC (permalink / raw)
  To: buildroot

As of today quite a lot of ARC stuff got merged in upsream
such that we may finally use upstream realease for building
and even running Linux kernel and rootfs built with vanilla
binutils.

Essentially upstream release is still a bit behind our
GitHub-based releases but let's try to use vanilla version
and if we're lucky enough with just a small set of back-ported patches
we'll be able to use vanilla release(s) for everything in Buildroot.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
---

Changes v1->v2:

 * Use positive logic on selection of ARC tools in binutils.mk (Arnout)

 package/binutils/Config.in.host | 11 ++++++++---
 package/binutils/binutils.mk    |  2 +-
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host
index 95144c8..4a2992a 100644
--- a/package/binutils/Config.in.host
+++ b/package/binutils/Config.in.host
@@ -2,8 +2,8 @@ comment "Binutils Options"
 
 choice
 	prompt "Binutils Version"
-	default BR2_BINUTILS_VERSION_2_28_X
-	depends on !BR2_arc
+	default BR2_BINUTILS_VERSION_2_28_X if !BR2_arc
+	default BR2_BINUTILS_VERSION_ARC if BR2_arc
 	help
 	  Select the version of binutils you wish to use.
 
@@ -11,18 +11,23 @@ config BR2_BINUTILS_VERSION_2_27_X
 	bool "binutils 2.27"
 	# binutils 2.27 triggers a bug in elf2flt on ARM/noMMU
 	depends on !(BR2_arm && !BR2_USE_MMU)
+	depends on !BR2_arc
 
 config BR2_BINUTILS_VERSION_2_28_X
 	bool "binutils 2.28.1"
+	depends on !BR2_arc
 
 config BR2_BINUTILS_VERSION_2_29_X
 	bool "binutils 2.29.1"
 
+config BR2_BINUTILS_VERSION_ARC
+	bool "binutils arc (2.29)"
+	depends on BR2_arc
 endchoice
 
 config BR2_BINUTILS_VERSION
 	string
-	default "arc-2017.09-release"	if BR2_arc
+	default "arc-2017.09-release"	if BR2_BINUTILS_VERSION_ARC
 	default "2.27"		if BR2_BINUTILS_VERSION_2_27_X
 	default "2.28.1"	if BR2_BINUTILS_VERSION_2_28_X
 	default "2.29.1"	if BR2_BINUTILS_VERSION_2_29_X
diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk
index d2bf5b9..e802952 100644
--- a/package/binutils/binutils.mk
+++ b/package/binutils/binutils.mk
@@ -15,7 +15,7 @@ BINUTILS_VERSION = 2.28.1
 endif
 endif # BINUTILS_VERSION
 
-ifeq ($(BR2_arc),y)
+ifeq ($(BR2_BINUTILS_VERSION_ARC),y)
 BINUTILS_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,binutils-gdb,$(BINUTILS_VERSION))
 BINUTILS_SOURCE = binutils-$(BINUTILS_VERSION).tar.gz
 BINUTILS_FROM_GIT = y
-- 
2.10.2

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

* [Buildroot] [PATCH v2] binutils: Allow upstream 2.29 to be chosen for ARC
  2017-11-10 16:37 [Buildroot] [PATCH v2] binutils: Allow upstream 2.29 to be chosen for ARC Alexey Brodkin
@ 2017-11-29 22:37 ` Thomas Petazzoni
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Petazzoni @ 2017-11-29 22:37 UTC (permalink / raw)
  To: buildroot

Hello,

On Fri, 10 Nov 2017 19:37:26 +0300, Alexey Brodkin wrote:
> As of today quite a lot of ARC stuff got merged in upsream
> such that we may finally use upstream realease for building
> and even running Linux kernel and rootfs built with vanilla
> binutils.
> 
> Essentially upstream release is still a bit behind our
> GitHub-based releases but let's try to use vanilla version
> and if we're lucky enough with just a small set of back-ported patches
> we'll be able to use vanilla release(s) for everything in Buildroot.
> 
> Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Cc: Peter Korsgaard <peter@korsgaard.com>

Thanks, I've applied to next, but I had to do a change to avoid a build
failure. See below.


> diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk
> index d2bf5b9..e802952 100644
> --- a/package/binutils/binutils.mk
> +++ b/package/binutils/binutils.mk
> @@ -15,7 +15,7 @@ BINUTILS_VERSION = 2.28.1
>  endif
>  endif # BINUTILS_VERSION
>  
> -ifeq ($(BR2_arc),y)
> +ifeq ($(BR2_BINUTILS_VERSION_ARC),y)

The symbol BR2_BINUTILS_VERSION_ARC doesn't exist when you're using an
external toolchain. Still, the target variant of binutils can be built,
and in this case, on ARC, the Synopsys version is used. From
binutils.mk:

ifeq ($(BINUTILS_VERSION),)
ifeq ($(BR2_arc),y)
BINUTILS_VERSION = arc-2017.09-release
else
BINUTILS_VERSION = 2.28.1
endif
endif # BINUTILS_VERSION

So, instead of testing BR2_BINUTILS_VERSION_ARC, I've changed to:

ifeq ($(BINUTILS_VERSION),arc-2017.09-release)

BINUTILS_VERSION is either defined by BR2_BINUTILS_VERSION from
package/binutils/Config.in.host (when a cross-binutils is built for an
internal toolchain) *or* it is defined from binutils.mk when building a
target binutils in an external toolchain context.

Thanks!

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] binutils: Allow upstream 2.29 to be chosen for ARC
@ 2018-01-17  8:25 Alexey Brodkin
  2018-01-17  9:16 ` Alexey Brodkin
  0 siblings, 1 reply; 4+ messages in thread
From: Alexey Brodkin @ 2018-01-17  8:25 UTC (permalink / raw)
  To: buildroot

From: Alexey Brodkin <Alexey.Brodkin@synopsys.com>

As of today quite a lot of ARC stuff got merged in upsream
such that we may finally use upstream realease for building
and even running Linux kernel and rootfs built with vanilla
binutils.

Essentially upstream release is still a bit behind our
GitHub-based releases but let's try to use vanilla version
and if we're lucky enough with just a small set of back-ported patches
we'll be able to use vanilla release(s) for everything in Buildroot.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
---

Changes v1 -> v2:
 * Use positive logic in binutils.mk for checking if BR2_BINUTILS_VERSION_ARC
   set as suggested by Arnout

 package/binutils/Config.in.host | 11 ++++++++---
 package/binutils/binutils.mk    |  2 +-
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host
index 95144c84c9..4a2992a79b 100644
--- a/package/binutils/Config.in.host
+++ b/package/binutils/Config.in.host
@@ -2,8 +2,8 @@ comment "Binutils Options"
 
 choice
 	prompt "Binutils Version"
-	default BR2_BINUTILS_VERSION_2_28_X
-	depends on !BR2_arc
+	default BR2_BINUTILS_VERSION_2_28_X if !BR2_arc
+	default BR2_BINUTILS_VERSION_ARC if BR2_arc
 	help
 	  Select the version of binutils you wish to use.
 
@@ -11,18 +11,23 @@ config BR2_BINUTILS_VERSION_2_27_X
 	bool "binutils 2.27"
 	# binutils 2.27 triggers a bug in elf2flt on ARM/noMMU
 	depends on !(BR2_arm && !BR2_USE_MMU)
+	depends on !BR2_arc
 
 config BR2_BINUTILS_VERSION_2_28_X
 	bool "binutils 2.28.1"
+	depends on !BR2_arc
 
 config BR2_BINUTILS_VERSION_2_29_X
 	bool "binutils 2.29.1"
 
+config BR2_BINUTILS_VERSION_ARC
+	bool "binutils arc (2.29)"
+	depends on BR2_arc
 endchoice
 
 config BR2_BINUTILS_VERSION
 	string
-	default "arc-2017.09-release"	if BR2_arc
+	default "arc-2017.09-release"	if BR2_BINUTILS_VERSION_ARC
 	default "2.27"		if BR2_BINUTILS_VERSION_2_27_X
 	default "2.28.1"	if BR2_BINUTILS_VERSION_2_28_X
 	default "2.29.1"	if BR2_BINUTILS_VERSION_2_29_X
diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk
index d2bf5b9755..e8029521c2 100644
--- a/package/binutils/binutils.mk
+++ b/package/binutils/binutils.mk
@@ -15,7 +15,7 @@ BINUTILS_VERSION = 2.28.1
 endif
 endif # BINUTILS_VERSION
 
-ifeq ($(BR2_arc),y)
+ifeq ($(BR2_BINUTILS_VERSION_ARC),y)
 BINUTILS_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,binutils-gdb,$(BINUTILS_VERSION))
 BINUTILS_SOURCE = binutils-$(BINUTILS_VERSION).tar.gz
 BINUTILS_FROM_GIT = y
-- 
2.11.0

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

* [Buildroot] [PATCH v2] binutils: Allow upstream 2.29 to be chosen for ARC
  2018-01-17  8:25 Alexey Brodkin
@ 2018-01-17  9:16 ` Alexey Brodkin
  0 siblings, 0 replies; 4+ messages in thread
From: Alexey Brodkin @ 2018-01-17  9:16 UTC (permalink / raw)
  To: buildroot

Hi gents,

Please disregard this one.
Looks like I need more morning coffee as this was already applied
a couple of months ago but I was looking at a local tree with 2017.11.x checked-out.

So really sorry for the noise!

-Alexey 

On Wed, 2018-01-17 at 11:25 +0300, Alexey Brodkin wrote:
> From: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
> 
> As of today quite a lot of ARC stuff got merged in upsream
> such that we may finally use upstream realease for building
> and even running Linux kernel and rootfs built with vanilla
> binutils.
> 
> Essentially upstream release is still a bit behind our
> GitHub-based releases but let's try to use vanilla version
> and if we're lucky enough with just a small set of back-ported patches
> we'll be able to use vanilla release(s) for everything in Buildroot.
> 
> Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Cc: Peter Korsgaard <peter@korsgaard.com>

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

end of thread, other threads:[~2018-01-17  9:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-10 16:37 [Buildroot] [PATCH v2] binutils: Allow upstream 2.29 to be chosen for ARC Alexey Brodkin
2017-11-29 22:37 ` Thomas Petazzoni
  -- strict thread matches above, loose matches on Subject: below --
2018-01-17  8:25 Alexey Brodkin
2018-01-17  9:16 ` Alexey Brodkin

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