All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] package/apcupsd: fix missing __exchange_and_add symbol
@ 2020-05-13  7:35 James Hilliard
  2020-05-13  9:22 ` Thomas Petazzoni
  2020-08-08 15:48 ` Thomas Petazzoni
  0 siblings, 2 replies; 8+ messages in thread
From: James Hilliard @ 2020-05-13  7:35 UTC (permalink / raw)
  To: buildroot

It seems libsupc++.a is missing __exchange_and_add for uclibc on some
platforms so link with libstdc++ as well on sparc and arcle.

Fixes:
http://autobuild.buildroot.net/results/bb9/bb96f327d5343a3561ea978f480585b418ce52e1/build-end.log
http://autobuild.buildroot.net/results/5a5/5a513669b0e56f38418e42d9ae733554fe6c73f1/build-end.log

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
 package/apcupsd/apcupsd.mk | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/package/apcupsd/apcupsd.mk b/package/apcupsd/apcupsd.mk
index 410bce9aec..6088a41cc3 100644
--- a/package/apcupsd/apcupsd.mk
+++ b/package/apcupsd/apcupsd.mk
@@ -14,10 +14,18 @@ ifneq ($(BR2_PACKAGE_APCUPSD_MODBUS_USB)$(BR2_PACKAGE_APCUPSD_USB),)
 APCUPSD_CONF_ENV += ac_cv_path_usbcfg=$(STAGING_DIR)/usr/bin/libusb-config
 ifeq ($(BR2_STATIC_LIBS),y)
 APCUPSD_DEPENDENCIES += host-pkgconf
-APCUPSD_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libusb`"
+APCUPSD_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs libusb`
 endif
 endif
 
+ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
+# __exchange_and_add symbol is missing from libsupc++ on these platforms
+ifeq ($(BR2_sparc)$(BR2_arcle),y)
+APCUPSD_LIBS += -lstdc++
+endif
+endif
+APCUPSD_CONF_ENV += LIBS+="$(APCUPSD_LIBS)"
+
 ifeq ($(BR2_PACKAGE_APCUPSD_APCSMART),y)
 APCUPSD_CONF_OPTS += --enable-apcsmart
 else
-- 
2.20.1

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

* [Buildroot] [PATCH 1/1] package/apcupsd: fix missing __exchange_and_add symbol
  2020-05-13  7:35 [Buildroot] [PATCH 1/1] package/apcupsd: fix missing __exchange_and_add symbol James Hilliard
@ 2020-05-13  9:22 ` Thomas Petazzoni
  2020-05-13  9:43   ` James Hilliard
  2020-08-08 15:48 ` Thomas Petazzoni
  1 sibling, 1 reply; 8+ messages in thread
From: Thomas Petazzoni @ 2020-05-13  9:22 UTC (permalink / raw)
  To: buildroot

On Wed, 13 May 2020 01:35:37 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:

> It seems libsupc++.a is missing __exchange_and_add for uclibc on some
> platforms so link with libstdc++ as well on sparc and arcle.
> 
> Fixes:
> http://autobuild.buildroot.net/results/bb9/bb96f327d5343a3561ea978f480585b418ce52e1/build-end.log
> http://autobuild.buildroot.net/results/5a5/5a513669b0e56f38418e42d9ae733554fe6c73f1/build-end.log
> 
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
>  package/apcupsd/apcupsd.mk | 10 +++++++++-
>  1 file changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/package/apcupsd/apcupsd.mk b/package/apcupsd/apcupsd.mk
> index 410bce9aec..6088a41cc3 100644
> --- a/package/apcupsd/apcupsd.mk
> +++ b/package/apcupsd/apcupsd.mk
> @@ -14,10 +14,18 @@ ifneq ($(BR2_PACKAGE_APCUPSD_MODBUS_USB)$(BR2_PACKAGE_APCUPSD_USB),)
>  APCUPSD_CONF_ENV += ac_cv_path_usbcfg=$(STAGING_DIR)/usr/bin/libusb-config
>  ifeq ($(BR2_STATIC_LIBS),y)
>  APCUPSD_DEPENDENCIES += host-pkgconf
> -APCUPSD_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libusb`"
> +APCUPSD_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs libusb`
>  endif
>  endif
>  
> +ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
> +# __exchange_and_add symbol is missing from libsupc++ on these platforms
> +ifeq ($(BR2_sparc)$(BR2_arcle),y)
> +APCUPSD_LIBS += -lstdc++
> +endif
> +endif
> +APCUPSD_CONF_ENV += LIBS+="$(APCUPSD_LIBS)"

Meh. We really want to fix that in uClibc, if it's a uClibc issue.

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/1] package/apcupsd: fix missing __exchange_and_add symbol
  2020-05-13  9:22 ` Thomas Petazzoni
@ 2020-05-13  9:43   ` James Hilliard
  2020-08-17  7:28     ` Yann E. MORIN
  0 siblings, 1 reply; 8+ messages in thread
From: James Hilliard @ 2020-05-13  9:43 UTC (permalink / raw)
  To: buildroot

On Wed, May 13, 2020 at 3:22 AM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:
>
> On Wed, 13 May 2020 01:35:37 -0600
> James Hilliard <james.hilliard1@gmail.com> wrote:
>
> > It seems libsupc++.a is missing __exchange_and_add for uclibc on some
> > platforms so link with libstdc++ as well on sparc and arcle.
> >
> > Fixes:
> > http://autobuild.buildroot.net/results/bb9/bb96f327d5343a3561ea978f480585b418ce52e1/build-end.log
> > http://autobuild.buildroot.net/results/5a5/5a513669b0e56f38418e42d9ae733554fe6c73f1/build-end.log
> >
> > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > ---
> >  package/apcupsd/apcupsd.mk | 10 +++++++++-
> >  1 file changed, 9 insertions(+), 1 deletion(-)
> >
> > diff --git a/package/apcupsd/apcupsd.mk b/package/apcupsd/apcupsd.mk
> > index 410bce9aec..6088a41cc3 100644
> > --- a/package/apcupsd/apcupsd.mk
> > +++ b/package/apcupsd/apcupsd.mk
> > @@ -14,10 +14,18 @@ ifneq ($(BR2_PACKAGE_APCUPSD_MODBUS_USB)$(BR2_PACKAGE_APCUPSD_USB),)
> >  APCUPSD_CONF_ENV += ac_cv_path_usbcfg=$(STAGING_DIR)/usr/bin/libusb-config
> >  ifeq ($(BR2_STATIC_LIBS),y)
> >  APCUPSD_DEPENDENCIES += host-pkgconf
> > -APCUPSD_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libusb`"
> > +APCUPSD_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs libusb`
> >  endif
> >  endif
> >
> > +ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
> > +# __exchange_and_add symbol is missing from libsupc++ on these platforms
> > +ifeq ($(BR2_sparc)$(BR2_arcle),y)
> > +APCUPSD_LIBS += -lstdc++
> > +endif
> > +endif
> > +APCUPSD_CONF_ENV += LIBS+="$(APCUPSD_LIBS)"
>
> Meh. We really want to fix that in uClibc, if it's a uClibc issue.
Well no idea if it's a bug in uClibc but the failures seem to be
limited to builds
using uClibc. The libsupc++.a library appears to be originating from
gcc, I don't
really know why this issues seems to be specific to uClibc and those 2 archs.
>
> 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/1] package/apcupsd: fix missing __exchange_and_add symbol
  2020-05-13  7:35 [Buildroot] [PATCH 1/1] package/apcupsd: fix missing __exchange_and_add symbol James Hilliard
  2020-05-13  9:22 ` Thomas Petazzoni
@ 2020-08-08 15:48 ` Thomas Petazzoni
  1 sibling, 0 replies; 8+ messages in thread
From: Thomas Petazzoni @ 2020-08-08 15:48 UTC (permalink / raw)
  To: buildroot

Dear ARC maintainers,

Could you have a look at the below issue ? It seems really odd that
just ARC and Sparc have this issue. I'd like to understand better
before linking manually with libstdc++. I'm sure your toolchain experts
will be able to shed some useful light on this weird issue.

Thanks a lot for your help,

Thomas

On Wed, 13 May 2020 01:35:37 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:

> It seems libsupc++.a is missing __exchange_and_add for uclibc on some
> platforms so link with libstdc++ as well on sparc and arcle.
> 
> Fixes:
> http://autobuild.buildroot.net/results/bb9/bb96f327d5343a3561ea978f480585b418ce52e1/build-end.log
> http://autobuild.buildroot.net/results/5a5/5a513669b0e56f38418e42d9ae733554fe6c73f1/build-end.log
> 
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
>  package/apcupsd/apcupsd.mk | 10 +++++++++-
>  1 file changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/package/apcupsd/apcupsd.mk b/package/apcupsd/apcupsd.mk
> index 410bce9aec..6088a41cc3 100644
> --- a/package/apcupsd/apcupsd.mk
> +++ b/package/apcupsd/apcupsd.mk
> @@ -14,10 +14,18 @@ ifneq ($(BR2_PACKAGE_APCUPSD_MODBUS_USB)$(BR2_PACKAGE_APCUPSD_USB),)
>  APCUPSD_CONF_ENV += ac_cv_path_usbcfg=$(STAGING_DIR)/usr/bin/libusb-config
>  ifeq ($(BR2_STATIC_LIBS),y)
>  APCUPSD_DEPENDENCIES += host-pkgconf
> -APCUPSD_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libusb`"
> +APCUPSD_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs libusb`
>  endif
>  endif
>  
> +ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
> +# __exchange_and_add symbol is missing from libsupc++ on these platforms
> +ifeq ($(BR2_sparc)$(BR2_arcle),y)
> +APCUPSD_LIBS += -lstdc++
> +endif
> +endif
> +APCUPSD_CONF_ENV += LIBS+="$(APCUPSD_LIBS)"
> +
>  ifeq ($(BR2_PACKAGE_APCUPSD_APCSMART),y)
>  APCUPSD_CONF_OPTS += --enable-apcsmart
>  else



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

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

* [Buildroot] [PATCH 1/1] package/apcupsd: fix missing __exchange_and_add symbol
  2020-05-13  9:43   ` James Hilliard
@ 2020-08-17  7:28     ` Yann E. MORIN
  2020-08-17  9:08       ` James Hilliard
  0 siblings, 1 reply; 8+ messages in thread
From: Yann E. MORIN @ 2020-08-17  7:28 UTC (permalink / raw)
  To: buildroot

James, All,

On 2020-05-13 03:43 -0600, James Hilliard spake thusly:
> On Wed, May 13, 2020 at 3:22 AM Thomas Petazzoni
> <thomas.petazzoni@bootlin.com> wrote:
> > On Wed, 13 May 2020 01:35:37 -0600
> > James Hilliard <james.hilliard1@gmail.com> wrote:
> > > It seems libsupc++.a is missing __exchange_and_add for uclibc on some
> > > platforms so link with libstdc++ as well on sparc and arcle.
[--SNIP--]
> > Meh. We really want to fix that in uClibc, if it's a uClibc issue.
> Well no idea if it's a bug in uClibc but the failures seem to be
> limited to builds
> using uClibc. The libsupc++.a library appears to be originating from
> gcc, I don't
> really know why this issues seems to be specific to uClibc and those 2 archs.

Pleas see the reply I wrote to another similar patch:

    http://lists.busybox.net/pipermail/buildroot/2020-August/289411.html

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  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 1/1] package/apcupsd: fix missing __exchange_and_add symbol
  2020-08-17  7:28     ` Yann E. MORIN
@ 2020-08-17  9:08       ` James Hilliard
  2020-08-17 12:48         ` James Hilliard
  0 siblings, 1 reply; 8+ messages in thread
From: James Hilliard @ 2020-08-17  9:08 UTC (permalink / raw)
  To: buildroot

On Mon, Aug 17, 2020 at 1:28 AM Yann E. MORIN <yann.morin.1998@free.fr> wrote:
>
> James, All,
>
> On 2020-05-13 03:43 -0600, James Hilliard spake thusly:
> > On Wed, May 13, 2020 at 3:22 AM Thomas Petazzoni
> > <thomas.petazzoni@bootlin.com> wrote:
> > > On Wed, 13 May 2020 01:35:37 -0600
> > > James Hilliard <james.hilliard1@gmail.com> wrote:
> > > > It seems libsupc++.a is missing __exchange_and_add for uclibc on some
> > > > platforms so link with libstdc++ as well on sparc and arcle.
> [--SNIP--]
> > > Meh. We really want to fix that in uClibc, if it's a uClibc issue.
> > Well no idea if it's a bug in uClibc but the failures seem to be
> > limited to builds
> > using uClibc. The libsupc++.a library appears to be originating from
> > gcc, I don't
> > really know why this issues seems to be specific to uClibc and those 2 archs.
>
> Pleas see the reply I wrote to another similar patch:
Not sure if that's really getting at the real issue, I found this which seems
likely to be related to the root cause of the failure:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70560
>
>     http://lists.busybox.net/pipermail/buildroot/2020-August/289411.html
>
> Regards,
> Yann E. MORIN.
>
> --
> .-----------------.--------------------.------------------.--------------------.
> |  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 1/1] package/apcupsd: fix missing __exchange_and_add symbol
  2020-08-17  9:08       ` James Hilliard
@ 2020-08-17 12:48         ` James Hilliard
  2021-04-19 11:35           ` James Hilliard
  0 siblings, 1 reply; 8+ messages in thread
From: James Hilliard @ 2020-08-17 12:48 UTC (permalink / raw)
  To: buildroot

On Mon, Aug 17, 2020 at 3:08 AM James Hilliard
<james.hilliard1@gmail.com> wrote:
>
> On Mon, Aug 17, 2020 at 1:28 AM Yann E. MORIN <yann.morin.1998@free.fr> wrote:
> >
> > James, All,
> >
> > On 2020-05-13 03:43 -0600, James Hilliard spake thusly:
> > > On Wed, May 13, 2020 at 3:22 AM Thomas Petazzoni
> > > <thomas.petazzoni@bootlin.com> wrote:
> > > > On Wed, 13 May 2020 01:35:37 -0600
> > > > James Hilliard <james.hilliard1@gmail.com> wrote:
> > > > > It seems libsupc++.a is missing __exchange_and_add for uclibc on some
> > > > > platforms so link with libstdc++ as well on sparc and arcle.
> > [--SNIP--]
> > > > Meh. We really want to fix that in uClibc, if it's a uClibc issue.
> > > Well no idea if it's a bug in uClibc but the failures seem to be
> > > limited to builds
> > > using uClibc. The libsupc++.a library appears to be originating from
> > > gcc, I don't
> > > really know why this issues seems to be specific to uClibc and those 2 archs.
> >
> > Pleas see the reply I wrote to another similar patch:
> Not sure if that's really getting at the real issue, I found this which seems
> likely to be related to the root cause of the failure:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70560
Looks like this is confirmed to be a gcc/libstdc++ bug, see here for details:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96657
> >
> >     http://lists.busybox.net/pipermail/buildroot/2020-August/289411.html
> >
> > Regards,
> > Yann E. MORIN.
> >
> > --
> > .-----------------.--------------------.------------------.--------------------.
> > |  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 1/1] package/apcupsd: fix missing __exchange_and_add symbol
  2020-08-17 12:48         ` James Hilliard
@ 2021-04-19 11:35           ` James Hilliard
  0 siblings, 0 replies; 8+ messages in thread
From: James Hilliard @ 2021-04-19 11:35 UTC (permalink / raw)
  To: buildroot

Upstream gcc fix: https://gcc.gnu.org/g:6c0c7fc6236470a533675cd3cd1ebb1cc3dd112c

On Mon, Aug 17, 2020 at 6:48 AM James Hilliard
<james.hilliard1@gmail.com> wrote:
>
> On Mon, Aug 17, 2020 at 3:08 AM James Hilliard
> <james.hilliard1@gmail.com> wrote:
> >
> > On Mon, Aug 17, 2020 at 1:28 AM Yann E. MORIN <yann.morin.1998@free.fr> wrote:
> > >
> > > James, All,
> > >
> > > On 2020-05-13 03:43 -0600, James Hilliard spake thusly:
> > > > On Wed, May 13, 2020 at 3:22 AM Thomas Petazzoni
> > > > <thomas.petazzoni@bootlin.com> wrote:
> > > > > On Wed, 13 May 2020 01:35:37 -0600
> > > > > James Hilliard <james.hilliard1@gmail.com> wrote:
> > > > > > It seems libsupc++.a is missing __exchange_and_add for uclibc on some
> > > > > > platforms so link with libstdc++ as well on sparc and arcle.
> > > [--SNIP--]
> > > > > Meh. We really want to fix that in uClibc, if it's a uClibc issue.
> > > > Well no idea if it's a bug in uClibc but the failures seem to be
> > > > limited to builds
> > > > using uClibc. The libsupc++.a library appears to be originating from
> > > > gcc, I don't
> > > > really know why this issues seems to be specific to uClibc and those 2 archs.
> > >
> > > Pleas see the reply I wrote to another similar patch:
> > Not sure if that's really getting at the real issue, I found this which seems
> > likely to be related to the root cause of the failure:
> > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70560
> Looks like this is confirmed to be a gcc/libstdc++ bug, see here for details:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96657
> > >
> > >     http://lists.busybox.net/pipermail/buildroot/2020-August/289411.html
> > >
> > > Regards,
> > > Yann E. MORIN.
> > >
> > > --
> > > .-----------------.--------------------.------------------.--------------------.
> > > |  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

end of thread, other threads:[~2021-04-19 11:35 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-13  7:35 [Buildroot] [PATCH 1/1] package/apcupsd: fix missing __exchange_and_add symbol James Hilliard
2020-05-13  9:22 ` Thomas Petazzoni
2020-05-13  9:43   ` James Hilliard
2020-08-17  7:28     ` Yann E. MORIN
2020-08-17  9:08       ` James Hilliard
2020-08-17 12:48         ` James Hilliard
2021-04-19 11:35           ` James Hilliard
2020-08-08 15:48 ` Thomas Petazzoni

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.