public inbox for libc-help@sourceware.org
 help / color / mirror / Atom feed
* glibc2.32 build error for powerpc64-unknown-linux-gnu
@ 2020-08-30 10:40 Chris Packham
  2020-09-01 19:40 ` Adhemerval Zanella
  0 siblings, 1 reply; 12+ messages in thread
From: Chris Packham @ 2020-08-30 10:40 UTC (permalink / raw)
  To: libc-help

Hi,

crosstool-ng was recently updated to add glibc-2.32. We're seeing the 
following error building for powerpc64

[ALL  ]      In file included from 
../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
[ALL  ]                       from 
../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
[ALL  ]      ../string/wordcopy.c: In function '_wordcopy_fwd_aligned':
[ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used 
uninitialized in this function [-Werror=maybe-uninitialized]
[ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
[ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~

Looking at the code in question I think it's a spurious warning. There 
even appears to be an attempt to turn off the warning in 
sysdeps/generic/Makefile but the file is #included for powerpc so the 
flags applied.

Bug report with full logs 
https://github.com/crosstool-ng/crosstool-ng/issues/1380

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-08-30 10:40 glibc2.32 build error for powerpc64-unknown-linux-gnu Chris Packham
@ 2020-09-01 19:40 ` Adhemerval Zanella
  2020-09-02  8:05   ` Chris Packham
  0 siblings, 1 reply; 12+ messages in thread
From: Adhemerval Zanella @ 2020-09-01 19:40 UTC (permalink / raw)
  To: Chris Packham, libc-help



On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
> Hi,
> 
> crosstool-ng was recently updated to add glibc-2.32. We're seeing the 
> following error building for powerpc64
> 
> [ALL  ]      In file included from 
> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
> [ALL  ]                       from 
> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
> [ALL  ]      ../string/wordcopy.c: In function '_wordcopy_fwd_aligned':
> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used 
> uninitialized in this function [-Werror=maybe-uninitialized]
> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
> 
> Looking at the code in question I think it's a spurious warning. There 
> even appears to be an attempt to turn off the warning in 
> sysdeps/generic/Makefile but the file is #included for powerpc so the 
> flags applied.
> 
> Bug report with full logs 
> https://github.com/crosstool-ng/crosstool-ng/issues/1380
> 

I haven't see it with gcc version 9.3.1, so it might be something related
to gcc 10 or newer.  I will build a gcc 10 and check if I can reproduce it.

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-01 19:40 ` Adhemerval Zanella
@ 2020-09-02  8:05   ` Chris Packham
  2020-09-02 14:20     ` Adhemerval Zanella
  0 siblings, 1 reply; 12+ messages in thread
From: Chris Packham @ 2020-09-02  8:05 UTC (permalink / raw)
  To: Adhemerval Zanella, libc-help


On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>
> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>> Hi,
>>
>> crosstool-ng was recently updated to add glibc-2.32. We're seeing the
>> following error building for powerpc64
>>
>> [ALL  ]      In file included from
>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
>> [ALL  ]                       from
>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>> [ALL  ]      ../string/wordcopy.c: In function '_wordcopy_fwd_aligned':
>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used
>> uninitialized in this function [-Werror=maybe-uninitialized]
>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
>>
>> Looking at the code in question I think it's a spurious warning. There
>> even appears to be an attempt to turn off the warning in
>> sysdeps/generic/Makefile but the file is #included for powerpc so the
>> flags applied.
>>
>> Bug report with full logs
>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>
> I haven't see it with gcc version 9.3.1, so it might be something related
> to gcc 10 or newer.  I will build a gcc 10 and check if I can reproduce it.
I just tried a crosstool-ng config selecting gcc 9.3.0 and I still see 
the same error.

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-02  8:05   ` Chris Packham
@ 2020-09-02 14:20     ` Adhemerval Zanella
  2020-09-02 21:14       ` Chris Packham
  0 siblings, 1 reply; 12+ messages in thread
From: Adhemerval Zanella @ 2020-09-02 14:20 UTC (permalink / raw)
  To: Chris Packham, libc-help



On 02/09/2020 05:05, Chris Packham wrote:
> 
> On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>>
>> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>>> Hi,
>>>
>>> crosstool-ng was recently updated to add glibc-2.32. We're seeing the
>>> following error building for powerpc64
>>>
>>> [ALL  ]      In file included from
>>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
>>> [ALL  ]                       from
>>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>>> [ALL  ]      ../string/wordcopy.c: In function '_wordcopy_fwd_aligned':
>>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used
>>> uninitialized in this function [-Werror=maybe-uninitialized]
>>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>>> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
>>>
>>> Looking at the code in question I think it's a spurious warning. There
>>> even appears to be an attempt to turn off the warning in
>>> sysdeps/generic/Makefile but the file is #included for powerpc so the
>>> flags applied.
>>>
>>> Bug report with full logs
>>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>>
>> I haven't see it with gcc version 9.3.1, so it might be something related
>> to gcc 10 or newer.  I will build a gcc 10 and check if I can reproduce it.
> I just tried a crosstool-ng config selecting gcc 9.3.0 and I still see 
> the same error.
> 

I just tried to reproduce it building powerpc64-linux-gnu, powerpc-linux-gnu
and powerpc-linux-gnu-power4 (with --with-cpu-power4) with both gcc 9.3.1
and 10, but without success. Are you using any special flags or patch for gcc?

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-02 14:20     ` Adhemerval Zanella
@ 2020-09-02 21:14       ` Chris Packham
  2020-09-03  2:39         ` Chris Packham
  0 siblings, 1 reply; 12+ messages in thread
From: Chris Packham @ 2020-09-02 21:14 UTC (permalink / raw)
  To: Adhemerval Zanella, libc-help


On 3/09/20 2:20 am, Adhemerval Zanella wrote:
>
> On 02/09/2020 05:05, Chris Packham wrote:
>> On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>>> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>>>> Hi,
>>>>
>>>> crosstool-ng was recently updated to add glibc-2.32. We're seeing the
>>>> following error building for powerpc64
>>>>
>>>> [ALL  ]      In file included from
>>>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
>>>> [ALL  ]                       from
>>>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>>>> [ALL  ]      ../string/wordcopy.c: In function '_wordcopy_fwd_aligned':
>>>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used
>>>> uninitialized in this function [-Werror=maybe-uninitialized]
>>>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>>>> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
>>>>
>>>> Looking at the code in question I think it's a spurious warning. There
>>>> even appears to be an attempt to turn off the warning in
>>>> sysdeps/generic/Makefile but the file is #included for powerpc so the
>>>> flags applied.
>>>>
>>>> Bug report with full logs
>>>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>>>
>>> I haven't see it with gcc version 9.3.1, so it might be something related
>>> to gcc 10 or newer.  I will build a gcc 10 and check if I can reproduce it.
>> I just tried a crosstool-ng config selecting gcc 9.3.0 and I still see
>> the same error.
>>
> I just tried to reproduce it building powerpc64-linux-gnu, powerpc-linux-gnu
> and powerpc-linux-gnu-power4 (with --with-cpu-power4) with both gcc 9.3.1
> and 10, but without success. Are you using any special flags or patch for gcc?
There are a collection of patches 
https://github.com/crosstool-ng/crosstool-ng/tree/master/packages/gcc/10.2.0 
mostly just brought forward from older gcc versions. I'll try disabling 
them.

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-02 21:14       ` Chris Packham
@ 2020-09-03  2:39         ` Chris Packham
  2020-09-03  9:09           ` Chris Packham
  0 siblings, 1 reply; 12+ messages in thread
From: Chris Packham @ 2020-09-03  2:39 UTC (permalink / raw)
  To: Adhemerval Zanella, libc-help


On 3/09/20 9:14 am, Chris Packham wrote:
>
> On 3/09/20 2:20 am, Adhemerval Zanella wrote:
>>
>> On 02/09/2020 05:05, Chris Packham wrote:
>>> On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>>>> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>>>>> Hi,
>>>>>
>>>>> crosstool-ng was recently updated to add glibc-2.32. We're seeing the
>>>>> following error building for powerpc64
>>>>>
>>>>> [ALL  ]      In file included from
>>>>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
>>>>> [ALL  ]                       from
>>>>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>>>>> [ALL  ]      ../string/wordcopy.c: In function 
>>>>> '_wordcopy_fwd_aligned':
>>>>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used
>>>>> uninitialized in this function [-Werror=maybe-uninitialized]
>>>>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>>>>> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
>>>>>
>>>>> Looking at the code in question I think it's a spurious warning. 
>>>>> There
>>>>> even appears to be an attempt to turn off the warning in
>>>>> sysdeps/generic/Makefile but the file is #included for powerpc so the
>>>>> flags applied.
>>>>>
>>>>> Bug report with full logs
>>>>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>>>>
>>>> I haven't see it with gcc version 9.3.1, so it might be something 
>>>> related
>>>> to gcc 10 or newer.  I will build a gcc 10 and check if I can 
>>>> reproduce it.
>>> I just tried a crosstool-ng config selecting gcc 9.3.0 and I still see
>>> the same error.
>>>
>> I just tried to reproduce it building powerpc64-linux-gnu, 
>> powerpc-linux-gnu
>> and powerpc-linux-gnu-power4 (with --with-cpu-power4) with both gcc 
>> 9.3.1
>> and 10, but without success. Are you using any special flags or patch 
>> for gcc?
> There are a collection of patches 
> https://github.com/crosstool-ng/crosstool-ng/tree/master/packages/gcc/10.2.0 
> mostly just brought forward from older gcc versions. I'll try 
> disabling them.

Even without any of the glibc or gcc patches and I still see the same error.

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-03  2:39         ` Chris Packham
@ 2020-09-03  9:09           ` Chris Packham
  2020-09-03 10:53             ` Adhemerval Zanella
  0 siblings, 1 reply; 12+ messages in thread
From: Chris Packham @ 2020-09-03  9:09 UTC (permalink / raw)
  To: Adhemerval Zanella, libc-help


On 3/09/20 2:39 pm, Chris Packham wrote:
>
> On 3/09/20 9:14 am, Chris Packham wrote:
>>
>> On 3/09/20 2:20 am, Adhemerval Zanella wrote:
>>>
>>> On 02/09/2020 05:05, Chris Packham wrote:
>>>> On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>>>>> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>>>>>> Hi,
>>>>>>
>>>>>> crosstool-ng was recently updated to add glibc-2.32. We're seeing 
>>>>>> the
>>>>>> following error building for powerpc64
>>>>>>
>>>>>> [ALL  ]      In file included from
>>>>>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
>>>>>> [ALL  ]                       from
>>>>>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>>>>>> [ALL  ]      ../string/wordcopy.c: In function 
>>>>>> '_wordcopy_fwd_aligned':
>>>>>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used
>>>>>> uninitialized in this function [-Werror=maybe-uninitialized]
>>>>>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>>>>>> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
>>>>>>
>>>>>> Looking at the code in question I think it's a spurious warning. 
>>>>>> There
>>>>>> even appears to be an attempt to turn off the warning in
>>>>>> sysdeps/generic/Makefile but the file is #included for powerpc so 
>>>>>> the
>>>>>> flags applied.
>>>>>>
>>>>>> Bug report with full logs
>>>>>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>>>>>
>>>>> I haven't see it with gcc version 9.3.1, so it might be something 
>>>>> related
>>>>> to gcc 10 or newer.  I will build a gcc 10 and check if I can 
>>>>> reproduce it.
>>>> I just tried a crosstool-ng config selecting gcc 9.3.0 and I still see
>>>> the same error.
>>>>
>>> I just tried to reproduce it building powerpc64-linux-gnu, 
>>> powerpc-linux-gnu
>>> and powerpc-linux-gnu-power4 (with --with-cpu-power4) with both gcc 
>>> 9.3.1
>>> and 10, but without success. Are you using any special flags or 
>>> patch for gcc?
>> There are a collection of patches 
>> https://github.com/crosstool-ng/crosstool-ng/tree/master/packages/gcc/10.2.0 
>> mostly just brought forward from older gcc versions. I'll try 
>> disabling them.
>
> Even without any of the glibc or gcc patches and I still see the same 
> error.

I think I might know why you can't see the error. crosstool-ng sets 
-Werror when building glibc. So it's a warning that gets promoted to an 
error by -Werror.

I'll update crosstool-ng to stop doing that for powerpc64 + glibc-2.32.

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-03  9:09           ` Chris Packham
@ 2020-09-03 10:53             ` Adhemerval Zanella
  2020-09-03 20:58               ` Chris Packham
  0 siblings, 1 reply; 12+ messages in thread
From: Adhemerval Zanella @ 2020-09-03 10:53 UTC (permalink / raw)
  To: Chris Packham, libc-help



On 03/09/2020 06:09, Chris Packham wrote:
> 
> On 3/09/20 2:39 pm, Chris Packham wrote:
>>
>> On 3/09/20 9:14 am, Chris Packham wrote:
>>>
>>> On 3/09/20 2:20 am, Adhemerval Zanella wrote:
>>>>
>>>> On 02/09/2020 05:05, Chris Packham wrote:
>>>>> On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>>>>>> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> crosstool-ng was recently updated to add glibc-2.32. We're seeing 
>>>>>>> the
>>>>>>> following error building for powerpc64
>>>>>>>
>>>>>>> [ALL  ]      In file included from
>>>>>>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
>>>>>>> [ALL  ]                       from
>>>>>>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>>>>>>> [ALL  ]      ../string/wordcopy.c: In function 
>>>>>>> '_wordcopy_fwd_aligned':
>>>>>>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used
>>>>>>> uninitialized in this function [-Werror=maybe-uninitialized]
>>>>>>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>>>>>>> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
>>>>>>>
>>>>>>> Looking at the code in question I think it's a spurious warning. 
>>>>>>> There
>>>>>>> even appears to be an attempt to turn off the warning in
>>>>>>> sysdeps/generic/Makefile but the file is #included for powerpc so 
>>>>>>> the
>>>>>>> flags applied.
>>>>>>>
>>>>>>> Bug report with full logs
>>>>>>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>>>>>>
>>>>>> I haven't see it with gcc version 9.3.1, so it might be something 
>>>>>> related
>>>>>> to gcc 10 or newer.  I will build a gcc 10 and check if I can 
>>>>>> reproduce it.
>>>>> I just tried a crosstool-ng config selecting gcc 9.3.0 and I still see
>>>>> the same error.
>>>>>
>>>> I just tried to reproduce it building powerpc64-linux-gnu, 
>>>> powerpc-linux-gnu
>>>> and powerpc-linux-gnu-power4 (with --with-cpu-power4) with both gcc 
>>>> 9.3.1
>>>> and 10, but without success. Are you using any special flags or 
>>>> patch for gcc?
>>> There are a collection of patches 
>>> https://github.com/crosstool-ng/crosstool-ng/tree/master/packages/gcc/10.2.0 
>>> mostly just brought forward from older gcc versions. I'll try 
>>> disabling them.
>>
>> Even without any of the glibc or gcc patches and I still see the same 
>> error.
> 
> I think I might know why you can't see the error. crosstool-ng sets 
> -Werror when building glibc. So it's a warning that gets promoted to an 
> error by -Werror.
> 
> I'll update crosstool-ng to stop doing that for powerpc64 + glibc-2.32.

We add -Werror by default since 2.21 and have added --disable-werror to 
disable it.  I am trying to understand why you are seeing this error in
your environment because this specific code has not been touched in a long
time and constantly built *all* supported ABI some different gcc versions [1].

And the last report for gcc 9 [1] and gcc 10 has not shown any issue, neither
any testing I did with gcc 8, gcc9, or gcc10.  I will try to build some
powerpc permutations with --with-cpu and/or --disable-multi-arch.


[1] https://sourceware.org/pipermail/libc-testresults/2020q3/thread.html
[2] https://sourceware.org/pipermail/libc-testresults/2020q3/006398.html
[3] https://sourceware.org/pipermail/libc-testresults/2020q3/006397.html

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-03 10:53             ` Adhemerval Zanella
@ 2020-09-03 20:58               ` Chris Packham
  2020-09-04 13:33                 ` Adhemerval Zanella
  0 siblings, 1 reply; 12+ messages in thread
From: Chris Packham @ 2020-09-03 20:58 UTC (permalink / raw)
  To: Adhemerval Zanella, libc-help


On 3/09/20 10:53 pm, Adhemerval Zanella wrote:
>
> On 03/09/2020 06:09, Chris Packham wrote:
>> On 3/09/20 2:39 pm, Chris Packham wrote:
>>> On 3/09/20 9:14 am, Chris Packham wrote:
>>>> On 3/09/20 2:20 am, Adhemerval Zanella wrote:
>>>>> On 02/09/2020 05:05, Chris Packham wrote:
>>>>>> On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>>>>>>> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> crosstool-ng was recently updated to add glibc-2.32. We're seeing
>>>>>>>> the
>>>>>>>> following error building for powerpc64
>>>>>>>>
>>>>>>>> [ALL  ]      In file included from
>>>>>>>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
>>>>>>>> [ALL  ]                       from
>>>>>>>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>>>>>>>> [ALL  ]      ../string/wordcopy.c: In function
>>>>>>>> '_wordcopy_fwd_aligned':
>>>>>>>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used
>>>>>>>> uninitialized in this function [-Werror=maybe-uninitialized]
>>>>>>>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>>>>>>>> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
>>>>>>>>
>>>>>>>> Looking at the code in question I think it's a spurious warning.
>>>>>>>> There
>>>>>>>> even appears to be an attempt to turn off the warning in
>>>>>>>> sysdeps/generic/Makefile but the file is #included for powerpc so
>>>>>>>> the
>>>>>>>> flags applied.
>>>>>>>>
>>>>>>>> Bug report with full logs
>>>>>>>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>>>>>>>
>>>>>>> I haven't see it with gcc version 9.3.1, so it might be something
>>>>>>> related
>>>>>>> to gcc 10 or newer.  I will build a gcc 10 and check if I can
>>>>>>> reproduce it.
>>>>>> I just tried a crosstool-ng config selecting gcc 9.3.0 and I still see
>>>>>> the same error.
>>>>>>
>>>>> I just tried to reproduce it building powerpc64-linux-gnu,
>>>>> powerpc-linux-gnu
>>>>> and powerpc-linux-gnu-power4 (with --with-cpu-power4) with both gcc
>>>>> 9.3.1
>>>>> and 10, but without success. Are you using any special flags or
>>>>> patch for gcc?
>>>> There are a collection of patches
>>>> https://github.com/crosstool-ng/crosstool-ng/tree/master/packages/gcc/10.2.0
>>>> mostly just brought forward from older gcc versions. I'll try
>>>> disabling them.
>>> Even without any of the glibc or gcc patches and I still see the same
>>> error.
>> I think I might know why you can't see the error. crosstool-ng sets
>> -Werror when building glibc. So it's a warning that gets promoted to an
>> error by -Werror.
>>
>> I'll update crosstool-ng to stop doing that for powerpc64 + glibc-2.32.
> We add -Werror by default since 2.21 and have added --disable-werror to
> disable it.  I am trying to understand why you are seeing this error in
> your environment because this specific code has not been touched in a long
> time and constantly built *all* supported ABI some different gcc versions [1].
>
> And the last report for gcc 9 [1] and gcc 10 has not shown any issue, neither
> any testing I did with gcc 8, gcc9, or gcc10.  I will try to build some
> powerpc permutations with --with-cpu and/or --disable-multi-arch.
>
>
> [1] https://sourceware.org/pipermail/libc-testresults/2020q3/thread.html
> [2] https://sourceware.org/pipermail/libc-testresults/2020q3/006398.html
> [3] https://sourceware.org/pipermail/libc-testresults/2020q3/006397.html

Hmm the plot thickens.

If it helps this is the configure line crosstool-ng ends up using

BUILD_CC='x86_64-build_pc-linux-gnu-gcc' 
CC='powerpc64-unknown-linux-gnu-gcc -g -O2 -U_FORTIFY_SOURCE ' CFLAGS='' 
AR='powerpc64-unknown-linux-gnu-ar' 
RANLIB='powerpc64-unknown-linux-gnu-ranlib' '/bin/bash' 
'/home/runner/work/crosstool-ng/crosstool-ng/.build/powerpc64-unknown-linux-gnu/src/glibc/configure' 
'--prefix=/usr' '--build=x86_64-build_pc-linux-gnu' 
'--host=powerpc64-unknown-linux-gnu' 
'--cache-file=/home/runner/work/crosstool-ng/crosstool-ng/.build/powerpc64-unknown-linux-gnu/build/build-libc-final/multilib/config.cache' 
'--without-cvs' '--disable-profile' '--without-gd' 
'--with-headers=/home/runner/work/crosstool-ng/crosstool-ng/x-tools/powerpc64-unknown-linux-gnu/powerpc64-unknown-linux-gnu/sysroot/usr/include' 
'--disable-debug' '--disable-sanity-checks' '--enable-obsolete-rpc' 
'--enable-kernel=5.5.5' '--with-__thread' '--with-tls' '--enable-shared' 
'--enable-add-ons=no' '--with-pkgversion=crosstool-NG UNKNOWN'

It's the same between a glibc-2.31 build and a glibc-2.32 build.

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-03 20:58               ` Chris Packham
@ 2020-09-04 13:33                 ` Adhemerval Zanella
  2020-09-06  9:35                   ` Chris Packham
  0 siblings, 1 reply; 12+ messages in thread
From: Adhemerval Zanella @ 2020-09-04 13:33 UTC (permalink / raw)
  To: Chris Packham, libc-help



On 03/09/2020 17:58, Chris Packham wrote:
> 
> On 3/09/20 10:53 pm, Adhemerval Zanella wrote:
>>
>> On 03/09/2020 06:09, Chris Packham wrote:
>>> On 3/09/20 2:39 pm, Chris Packham wrote:
>>>> On 3/09/20 9:14 am, Chris Packham wrote:
>>>>> On 3/09/20 2:20 am, Adhemerval Zanella wrote:
>>>>>> On 02/09/2020 05:05, Chris Packham wrote:
>>>>>>> On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>>>>>>>> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> crosstool-ng was recently updated to add glibc-2.32. We're seeing
>>>>>>>>> the
>>>>>>>>> following error building for powerpc64
>>>>>>>>>
>>>>>>>>> [ALL  ]      In file included from
>>>>>>>>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
>>>>>>>>> [ALL  ]                       from
>>>>>>>>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>>>>>>>>> [ALL  ]      ../string/wordcopy.c: In function
>>>>>>>>> '_wordcopy_fwd_aligned':
>>>>>>>>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used
>>>>>>>>> uninitialized in this function [-Werror=maybe-uninitialized]
>>>>>>>>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>>>>>>>>> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
>>>>>>>>>
>>>>>>>>> Looking at the code in question I think it's a spurious warning.
>>>>>>>>> There
>>>>>>>>> even appears to be an attempt to turn off the warning in
>>>>>>>>> sysdeps/generic/Makefile but the file is #included for powerpc so
>>>>>>>>> the
>>>>>>>>> flags applied.
>>>>>>>>>
>>>>>>>>> Bug report with full logs
>>>>>>>>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>>>>>>>>
>>>>>>>> I haven't see it with gcc version 9.3.1, so it might be something
>>>>>>>> related
>>>>>>>> to gcc 10 or newer.  I will build a gcc 10 and check if I can
>>>>>>>> reproduce it.
>>>>>>> I just tried a crosstool-ng config selecting gcc 9.3.0 and I still see
>>>>>>> the same error.
>>>>>>>
>>>>>> I just tried to reproduce it building powerpc64-linux-gnu,
>>>>>> powerpc-linux-gnu
>>>>>> and powerpc-linux-gnu-power4 (with --with-cpu-power4) with both gcc
>>>>>> 9.3.1
>>>>>> and 10, but without success. Are you using any special flags or
>>>>>> patch for gcc?
>>>>> There are a collection of patches
>>>>> https://github.com/crosstool-ng/crosstool-ng/tree/master/packages/gcc/10.2.0
>>>>> mostly just brought forward from older gcc versions. I'll try
>>>>> disabling them.
>>>> Even without any of the glibc or gcc patches and I still see the same
>>>> error.
>>> I think I might know why you can't see the error. crosstool-ng sets
>>> -Werror when building glibc. So it's a warning that gets promoted to an
>>> error by -Werror.
>>>
>>> I'll update crosstool-ng to stop doing that for powerpc64 + glibc-2.32.
>> We add -Werror by default since 2.21 and have added --disable-werror to
>> disable it.  I am trying to understand why you are seeing this error in
>> your environment because this specific code has not been touched in a long
>> time and constantly built *all* supported ABI some different gcc versions [1].
>>
>> And the last report for gcc 9 [1] and gcc 10 has not shown any issue, neither
>> any testing I did with gcc 8, gcc9, or gcc10.  I will try to build some
>> powerpc permutations with --with-cpu and/or --disable-multi-arch.
>>
>>
>> [1] https://sourceware.org/pipermail/libc-testresults/2020q3/thread.html
>> [2] https://sourceware.org/pipermail/libc-testresults/2020q3/006398.html
>> [3] https://sourceware.org/pipermail/libc-testresults/2020q3/006397.html
> 
> Hmm the plot thickens.
> 
> If it helps this is the configure line crosstool-ng ends up using
> 
> BUILD_CC='x86_64-build_pc-linux-gnu-gcc' 
> CC='powerpc64-unknown-linux-gnu-gcc -g -O2 -U_FORTIFY_SOURCE ' CFLAGS='' 
> AR='powerpc64-unknown-linux-gnu-ar' 
> RANLIB='powerpc64-unknown-linux-gnu-ranlib' '/bin/bash' 
> '/home/runner/work/crosstool-ng/crosstool-ng/.build/powerpc64-unknown-linux-gnu/src/glibc/configure' 
> '--prefix=/usr' '--build=x86_64-build_pc-linux-gnu' 
> '--host=powerpc64-unknown-linux-gnu' 
> '--cache-file=/home/runner/work/crosstool-ng/crosstool-ng/.build/powerpc64-unknown-linux-gnu/build/build-libc-final/multilib/config.cache' 
> '--without-cvs' '--disable-profile' '--without-gd' 
> '--with-headers=/home/runner/work/crosstool-ng/crosstool-ng/x-tools/powerpc64-unknown-linux-gnu/powerpc64-unknown-linux-gnu/sysroot/usr/include' 
> '--disable-debug' '--disable-sanity-checks' '--enable-obsolete-rpc' 
> '--enable-kernel=5.5.5' '--with-__thread' '--with-tls' '--enable-shared' 
> '--enable-add-ons=no' '--with-pkgversion=crosstool-NG UNKNOWN'

Some notes you might consider to add on crosstool-ng:

  --without-cvs            - this is a long time removed option.
  --disable-profile        - it is the default option, no need to add it.
  --disable-debug          - there is no such option.
  --disable-sanity-checks  - this is only useful to disable the warning that
                             using the default --prefix value (/usr/local) is not
                             valid.  Since it is already setting to the expected
                             value this is a superfluous option.
  --enable-obsolete-rpc    - This option was removed on 2.32.  The NEWS contains
                             more information.
  --with-__thread          - this is another deprecated/remove option, glibc now
                             requires TLS support.
  --with-tls               - Ditto.
  --enable-shared          - This is the default.
  --enable-add-ons         - Another deprecated/remove option.
  
> 
> It's the same between a glibc-2.31 build and a glibc-2.32 build.
> 

I check multiple build permutation with gcc-9 and gcc-10 native (building
on a powerpc64):

  powerpc64-linux-gnu-power4
  powerpc64-linux-gnu-power5
  powerpc64-linux-gnu-power5+
  powerpc64-linux-gnu-power6
  powerpc64-linux-gnu-power6x
  powerpc64-linux-gnu-power7
  powerpc64-linux-gnu-power8
  powerpc64-linux-gnu-power8-disable-multi-arch
  powerpc64-linux-gnu
  powerpc64-linux-gnu-disable-multi-arch
  powerpc64-linux-gnu-power4-disable-multi-arch
  powerpc64-linux-gnu-power5+-disable-multi-arch
  powerpc64-linux-gnu-power5-disable-multi-arch
  powerpc64-linux-gnu-power6-disable-multi-arch
  powerpc64-linux-gnu-power6x-disable-multi-arch
  powerpc64-linux-gnu-power7-disable-multi-arch

The "-powerN" means using "--with-cpu=powerN" which "-disable-multi-arch" means
using "-disable-multi-arch".

I also checked on a cross build using both gcc-9 and gcc-10 on a x86_64 host
to powerpc64-linux-gnu.

I really think this is environment issue on your side.  Maybe I can fix it by
disabling with pragmas, but it would be hard to get any reviews without
actually reproducing it :/

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-04 13:33                 ` Adhemerval Zanella
@ 2020-09-06  9:35                   ` Chris Packham
  2020-09-07  0:04                     ` Chris Packham
  0 siblings, 1 reply; 12+ messages in thread
From: Chris Packham @ 2020-09-06  9:35 UTC (permalink / raw)
  To: Adhemerval Zanella, libc-help


On 5/09/20 1:33 am, Adhemerval Zanella wrote:
>
> On 03/09/2020 17:58, Chris Packham wrote:
>> On 3/09/20 10:53 pm, Adhemerval Zanella wrote:
>>> On 03/09/2020 06:09, Chris Packham wrote:
>>>> On 3/09/20 2:39 pm, Chris Packham wrote:
>>>>> On 3/09/20 9:14 am, Chris Packham wrote:
>>>>>> On 3/09/20 2:20 am, Adhemerval Zanella wrote:
>>>>>>> On 02/09/2020 05:05, Chris Packham wrote:
>>>>>>>> On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>>>>>>>>> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>>>>>>>>>> Hi,
>>>>>>>>>>
>>>>>>>>>> crosstool-ng was recently updated to add glibc-2.32. We're seeing
>>>>>>>>>> the
>>>>>>>>>> following error building for powerpc64
>>>>>>>>>>
>>>>>>>>>> [ALL  ]      In file included from
>>>>>>>>>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26,
>>>>>>>>>> [ALL  ]                       from
>>>>>>>>>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>>>>>>>>>> [ALL  ]      ../string/wordcopy.c: In function
>>>>>>>>>> '_wordcopy_fwd_aligned':
>>>>>>>>>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be used
>>>>>>>>>> uninitialized in this function [-Werror=maybe-uninitialized]
>>>>>>>>>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>>>>>>>>>> [ALL  ]            |       ~~~~~~~~~~~~~~~~~~~^~~~
>>>>>>>>>>
>>>>>>>>>> Looking at the code in question I think it's a spurious warning.
>>>>>>>>>> There
>>>>>>>>>> even appears to be an attempt to turn off the warning in
>>>>>>>>>> sysdeps/generic/Makefile but the file is #included for powerpc so
>>>>>>>>>> the
>>>>>>>>>> flags applied.
>>>>>>>>>>
>>>>>>>>>> Bug report with full logs
>>>>>>>>>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>>>>>>>>>
>>>>>>>>> I haven't see it with gcc version 9.3.1, so it might be something
>>>>>>>>> related
>>>>>>>>> to gcc 10 or newer.  I will build a gcc 10 and check if I can
>>>>>>>>> reproduce it.
>>>>>>>> I just tried a crosstool-ng config selecting gcc 9.3.0 and I still see
>>>>>>>> the same error.
>>>>>>>>
>>>>>>> I just tried to reproduce it building powerpc64-linux-gnu,
>>>>>>> powerpc-linux-gnu
>>>>>>> and powerpc-linux-gnu-power4 (with --with-cpu-power4) with both gcc
>>>>>>> 9.3.1
>>>>>>> and 10, but without success. Are you using any special flags or
>>>>>>> patch for gcc?
>>>>>> There are a collection of patches
>>>>>> https://github.com/crosstool-ng/crosstool-ng/tree/master/packages/gcc/10.2.0
>>>>>> mostly just brought forward from older gcc versions. I'll try
>>>>>> disabling them.
>>>>> Even without any of the glibc or gcc patches and I still see the same
>>>>> error.
>>>> I think I might know why you can't see the error. crosstool-ng sets
>>>> -Werror when building glibc. So it's a warning that gets promoted to an
>>>> error by -Werror.
>>>>
>>>> I'll update crosstool-ng to stop doing that for powerpc64 + glibc-2.32.
>>> We add -Werror by default since 2.21 and have added --disable-werror to
>>> disable it.  I am trying to understand why you are seeing this error in
>>> your environment because this specific code has not been touched in a long
>>> time and constantly built *all* supported ABI some different gcc versions [1].
>>>
>>> And the last report for gcc 9 [1] and gcc 10 has not shown any issue, neither
>>> any testing I did with gcc 8, gcc9, or gcc10.  I will try to build some
>>> powerpc permutations with --with-cpu and/or --disable-multi-arch.
>>>
>>>
>>> [1] https://sourceware.org/pipermail/libc-testresults/2020q3/thread.html
>>> [2] https://sourceware.org/pipermail/libc-testresults/2020q3/006398.html
>>> [3] https://sourceware.org/pipermail/libc-testresults/2020q3/006397.html
>> Hmm the plot thickens.
>>
>> If it helps this is the configure line crosstool-ng ends up using
>>
>> BUILD_CC='x86_64-build_pc-linux-gnu-gcc'
>> CC='powerpc64-unknown-linux-gnu-gcc -g -O2 -U_FORTIFY_SOURCE ' CFLAGS=''
>> AR='powerpc64-unknown-linux-gnu-ar'
>> RANLIB='powerpc64-unknown-linux-gnu-ranlib' '/bin/bash'
>> '/home/runner/work/crosstool-ng/crosstool-ng/.build/powerpc64-unknown-linux-gnu/src/glibc/configure'
>> '--prefix=/usr' '--build=x86_64-build_pc-linux-gnu'
>> '--host=powerpc64-unknown-linux-gnu'
>> '--cache-file=/home/runner/work/crosstool-ng/crosstool-ng/.build/powerpc64-unknown-linux-gnu/build/build-libc-final/multilib/config.cache'
>> '--without-cvs' '--disable-profile' '--without-gd'
>> '--with-headers=/home/runner/work/crosstool-ng/crosstool-ng/x-tools/powerpc64-unknown-linux-gnu/powerpc64-unknown-linux-gnu/sysroot/usr/include'
>> '--disable-debug' '--disable-sanity-checks' '--enable-obsolete-rpc'
>> '--enable-kernel=5.5.5' '--with-__thread' '--with-tls' '--enable-shared'
>> '--enable-add-ons=no' '--with-pkgversion=crosstool-NG UNKNOWN'
> Some notes you might consider to add on crosstool-ng:
>
>    --without-cvs            - this is a long time removed option.
>    --disable-profile        - it is the default option, no need to add it.
>    --disable-debug          - there is no such option.
>    --disable-sanity-checks  - this is only useful to disable the warning that
>                               using the default --prefix value (/usr/local) is not
>                               valid.  Since it is already setting to the expected
>                               value this is a superfluous option.
>    --enable-obsolete-rpc    - This option was removed on 2.32.  The NEWS contains
>                               more information.
>    --with-__thread          - this is another deprecated/remove option, glibc now
>                               requires TLS support.
>    --with-tls               - Ditto.
>    --enable-shared          - This is the default.
>    --enable-add-ons         - Another deprecated/remove option.
>    
Thanks for the pointers. Some of these are hangovers from older libc 
versions. We support down to 2.12.1 so might need to be retained for 
some of these but they can be made conditional where needed.
>> It's the same between a glibc-2.31 build and a glibc-2.32 build.
>>
> I check multiple build permutation with gcc-9 and gcc-10 native (building
> on a powerpc64):
>
>    powerpc64-linux-gnu-power4
>    powerpc64-linux-gnu-power5
>    powerpc64-linux-gnu-power5+
>    powerpc64-linux-gnu-power6
>    powerpc64-linux-gnu-power6x
>    powerpc64-linux-gnu-power7
>    powerpc64-linux-gnu-power8
>    powerpc64-linux-gnu-power8-disable-multi-arch
>    powerpc64-linux-gnu
>    powerpc64-linux-gnu-disable-multi-arch
>    powerpc64-linux-gnu-power4-disable-multi-arch
>    powerpc64-linux-gnu-power5+-disable-multi-arch
>    powerpc64-linux-gnu-power5-disable-multi-arch
>    powerpc64-linux-gnu-power6-disable-multi-arch
>    powerpc64-linux-gnu-power6x-disable-multi-arch
>    powerpc64-linux-gnu-power7-disable-multi-arch
>
> The "-powerN" means using "--with-cpu=powerN" which "-disable-multi-arch" means
> using "-disable-multi-arch".
>
> I also checked on a cross build using both gcc-9 and gcc-10 on a x86_64 host
> to powerpc64-linux-gnu.
>
> I really think this is environment issue on your side.  Maybe I can fix it by
> disabling with pragmas, but it would be hard to get any reviews without
> actually reproducing it :/

I'd tend to agree with you. Things might be working for glibc-2.31 by 
accident. I've looked over the differences between 2.31 and 2.32 and I 
agree there's nothing remotely related that could be causing this.

I've seen failures in my local environment (Docker container using 
Debian buster) and in the github runners (Ubuntu 18.04). When I get a 
chance I'll try manually building glibc-2.32.

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

* Re: glibc2.32 build error for powerpc64-unknown-linux-gnu
  2020-09-06  9:35                   ` Chris Packham
@ 2020-09-07  0:04                     ` Chris Packham
  0 siblings, 0 replies; 12+ messages in thread
From: Chris Packham @ 2020-09-07  0:04 UTC (permalink / raw)
  To: Adhemerval Zanella, libc-help


On 6/09/20 9:35 pm, Chris Packham wrote:
>
> On 5/09/20 1:33 am, Adhemerval Zanella wrote:
>>
>> On 03/09/2020 17:58, Chris Packham wrote:
>>> On 3/09/20 10:53 pm, Adhemerval Zanella wrote:
>>>> On 03/09/2020 06:09, Chris Packham wrote:
>>>>> On 3/09/20 2:39 pm, Chris Packham wrote:
>>>>>> On 3/09/20 9:14 am, Chris Packham wrote:
>>>>>>> On 3/09/20 2:20 am, Adhemerval Zanella wrote:
>>>>>>>> On 02/09/2020 05:05, Chris Packham wrote:
>>>>>>>>> On 2/09/20 7:40 am, Adhemerval Zanella wrote:
>>>>>>>>>> On 30/08/2020 07:40, Chris Packham via Libc-help wrote:
>>>>>>>>>>> Hi,
>>>>>>>>>>>
>>>>>>>>>>> crosstool-ng was recently updated to add glibc-2.32. We're 
>>>>>>>>>>> seeing
>>>>>>>>>>> the
>>>>>>>>>>> following error building for powerpc64
>>>>>>>>>>>
>>>>>>>>>>> [ALL  ]      In file included from
>>>>>>>>>>> ../sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c:26, 
>>>>>>>>>>>
>>>>>>>>>>> [ALL  ]                       from
>>>>>>>>>>> ../sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c:18:
>>>>>>>>>>> [ALL  ]      ../string/wordcopy.c: In function
>>>>>>>>>>> '_wordcopy_fwd_aligned':
>>>>>>>>>>> [ERROR]      ../string/wordcopy.c:98:26: error: 'a1' may be 
>>>>>>>>>>> used
>>>>>>>>>>> uninitialized in this function [-Werror=maybe-uninitialized]
>>>>>>>>>>> [ALL  ]         98 |       ((op_t *) dstp)[0] = a1;
>>>>>>>>>>> [ALL  ]            | ~~~~~~~~~~~~~~~~~~~^~~~
>>>>>>>>>>>
>>>>>>>>>>> Looking at the code in question I think it's a spurious 
>>>>>>>>>>> warning.
>>>>>>>>>>> There
>>>>>>>>>>> even appears to be an attempt to turn off the warning in
>>>>>>>>>>> sysdeps/generic/Makefile but the file is #included for 
>>>>>>>>>>> powerpc so
>>>>>>>>>>> the
>>>>>>>>>>> flags applied.
>>>>>>>>>>>
>>>>>>>>>>> Bug report with full logs
>>>>>>>>>>> https://github.com/crosstool-ng/crosstool-ng/issues/1380
>>>>>>>>>>>
>>>>>>>>>> I haven't see it with gcc version 9.3.1, so it might be 
>>>>>>>>>> something
>>>>>>>>>> related
>>>>>>>>>> to gcc 10 or newer.  I will build a gcc 10 and check if I can
>>>>>>>>>> reproduce it.
>>>>>>>>> I just tried a crosstool-ng config selecting gcc 9.3.0 and I 
>>>>>>>>> still see
>>>>>>>>> the same error.
>>>>>>>>>
>>>>>>>> I just tried to reproduce it building powerpc64-linux-gnu,
>>>>>>>> powerpc-linux-gnu
>>>>>>>> and powerpc-linux-gnu-power4 (with --with-cpu-power4) with both 
>>>>>>>> gcc
>>>>>>>> 9.3.1
>>>>>>>> and 10, but without success. Are you using any special flags or
>>>>>>>> patch for gcc?
>>>>>>> There are a collection of patches
>>>>>>> https://github.com/crosstool-ng/crosstool-ng/tree/master/packages/gcc/10.2.0 
>>>>>>>
>>>>>>> mostly just brought forward from older gcc versions. I'll try
>>>>>>> disabling them.
>>>>>> Even without any of the glibc or gcc patches and I still see the 
>>>>>> same
>>>>>> error.
>>>>> I think I might know why you can't see the error. crosstool-ng sets
>>>>> -Werror when building glibc. So it's a warning that gets promoted 
>>>>> to an
>>>>> error by -Werror.
>>>>>
>>>>> I'll update crosstool-ng to stop doing that for powerpc64 + 
>>>>> glibc-2.32.
>>>> We add -Werror by default since 2.21 and have added 
>>>> --disable-werror to
>>>> disable it.  I am trying to understand why you are seeing this 
>>>> error in
>>>> your environment because this specific code has not been touched in 
>>>> a long
>>>> time and constantly built *all* supported ABI some different gcc 
>>>> versions [1].
>>>>
>>>> And the last report for gcc 9 [1] and gcc 10 has not shown any 
>>>> issue, neither
>>>> any testing I did with gcc 8, gcc9, or gcc10.  I will try to build 
>>>> some
>>>> powerpc permutations with --with-cpu and/or --disable-multi-arch.
>>>>
>>>>
>>>> [1] 
>>>> https://sourceware.org/pipermail/libc-testresults/2020q3/thread.html
>>>> [2] 
>>>> https://sourceware.org/pipermail/libc-testresults/2020q3/006398.html
>>>> [3] 
>>>> https://sourceware.org/pipermail/libc-testresults/2020q3/006397.html
>>> Hmm the plot thickens.
>>>
>>> If it helps this is the configure line crosstool-ng ends up using
>>>
>>> BUILD_CC='x86_64-build_pc-linux-gnu-gcc'
>>> CC='powerpc64-unknown-linux-gnu-gcc -g -O2 -U_FORTIFY_SOURCE ' 
>>> CFLAGS=''
>>> AR='powerpc64-unknown-linux-gnu-ar'
>>> RANLIB='powerpc64-unknown-linux-gnu-ranlib' '/bin/bash'
>>> '/home/runner/work/crosstool-ng/crosstool-ng/.build/powerpc64-unknown-linux-gnu/src/glibc/configure' 
>>>
>>> '--prefix=/usr' '--build=x86_64-build_pc-linux-gnu'
>>> '--host=powerpc64-unknown-linux-gnu'
>>> '--cache-file=/home/runner/work/crosstool-ng/crosstool-ng/.build/powerpc64-unknown-linux-gnu/build/build-libc-final/multilib/config.cache' 
>>>
>>> '--without-cvs' '--disable-profile' '--without-gd'
>>> '--with-headers=/home/runner/work/crosstool-ng/crosstool-ng/x-tools/powerpc64-unknown-linux-gnu/powerpc64-unknown-linux-gnu/sysroot/usr/include' 
>>>
>>> '--disable-debug' '--disable-sanity-checks' '--enable-obsolete-rpc'
>>> '--enable-kernel=5.5.5' '--with-__thread' '--with-tls' 
>>> '--enable-shared'
>>> '--enable-add-ons=no' '--with-pkgversion=crosstool-NG UNKNOWN'
>> Some notes you might consider to add on crosstool-ng:
>>
>>    --without-cvs            - this is a long time removed option.
>>    --disable-profile        - it is the default option, no need to 
>> add it.
>>    --disable-debug          - there is no such option.
>>    --disable-sanity-checks  - this is only useful to disable the 
>> warning that
>>                               using the default --prefix value 
>> (/usr/local) is not
>>                               valid.  Since it is already setting to 
>> the expected
>>                               value this is a superfluous option.
>>    --enable-obsolete-rpc    - This option was removed on 2.32. The 
>> NEWS contains
>>                               more information.
>>    --with-__thread          - this is another deprecated/remove 
>> option, glibc now
>>                               requires TLS support.
>>    --with-tls               - Ditto.
>>    --enable-shared          - This is the default.
>>    --enable-add-ons         - Another deprecated/remove option.
> Thanks for the pointers. Some of these are hangovers from older libc 
> versions. We support down to 2.12.1 so might need to be retained for 
> some of these but they can be made conditional where needed.
>>> It's the same between a glibc-2.31 build and a glibc-2.32 build.
>>>
>> I check multiple build permutation with gcc-9 and gcc-10 native 
>> (building
>> on a powerpc64):
>>
>>    powerpc64-linux-gnu-power4
>>    powerpc64-linux-gnu-power5
>>    powerpc64-linux-gnu-power5+
>>    powerpc64-linux-gnu-power6
>>    powerpc64-linux-gnu-power6x
>>    powerpc64-linux-gnu-power7
>>    powerpc64-linux-gnu-power8
>>    powerpc64-linux-gnu-power8-disable-multi-arch
>>    powerpc64-linux-gnu
>>    powerpc64-linux-gnu-disable-multi-arch
>>    powerpc64-linux-gnu-power4-disable-multi-arch
>>    powerpc64-linux-gnu-power5+-disable-multi-arch
>>    powerpc64-linux-gnu-power5-disable-multi-arch
>>    powerpc64-linux-gnu-power6-disable-multi-arch
>>    powerpc64-linux-gnu-power6x-disable-multi-arch
>>    powerpc64-linux-gnu-power7-disable-multi-arch
>>
>> The "-powerN" means using "--with-cpu=powerN" which 
>> "-disable-multi-arch" means
>> using "-disable-multi-arch".
>>
>> I also checked on a cross build using both gcc-9 and gcc-10 on a 
>> x86_64 host
>> to powerpc64-linux-gnu.
>>
>> I really think this is environment issue on your side.  Maybe I can 
>> fix it by
>> disabling with pragmas, but it would be hard to get any reviews without
>> actually reproducing it :/
>
> I'd tend to agree with you. Things might be working for glibc-2.31 by 
> accident. I've looked over the differences between 2.31 and 2.32 and I 
> agree there's nothing remotely related that could be causing this.
>
> I've seen failures in my local environment (Docker container using 
> Debian buster) and in the github runners (Ubuntu 18.04). When I get a 
> chance I'll try manually building glibc-2.32.
Just an update. I see the same error when building for sparc

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

end of thread, other threads:[~2020-09-07  0:05 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-30 10:40 glibc2.32 build error for powerpc64-unknown-linux-gnu Chris Packham
2020-09-01 19:40 ` Adhemerval Zanella
2020-09-02  8:05   ` Chris Packham
2020-09-02 14:20     ` Adhemerval Zanella
2020-09-02 21:14       ` Chris Packham
2020-09-03  2:39         ` Chris Packham
2020-09-03  9:09           ` Chris Packham
2020-09-03 10:53             ` Adhemerval Zanella
2020-09-03 20:58               ` Chris Packham
2020-09-04 13:33                 ` Adhemerval Zanella
2020-09-06  9:35                   ` Chris Packham
2020-09-07  0:04                     ` Chris Packham

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).