[1/4] Use --disable-default-pie for sparc in build-many-glibcs.py

Message ID 20240118160228.741832-2-adhemerval.zanella@linaro.org
State Committed
Commit 3bffe5aa2dad3492fd68230ed28387cf9d453cea
Headers
Series Multiple sparc fixes |

Checks

Context Check Description
redhat-pt-bot/TryBot-apply_patch success Patch applied to master at the time it was sent
linaro-tcwg-bot/tcwg_glibc_build--master-aarch64 success Testing passed
linaro-tcwg-bot/tcwg_glibc_check--master-aarch64 success Testing passed
linaro-tcwg-bot/tcwg_glibc_build--master-arm success Testing passed
linaro-tcwg-bot/tcwg_glibc_check--master-arm success Testing passed

Commit Message

Adhemerval Zanella Netto Jan. 18, 2024, 4:02 p.m. UTC
  The staticcally built binaries fails without this option [1].

Checked on sparc64-linux-gnu and sparcv9-linux-gnu.

[1] https://sourceware.org/bugzilla/show_bug.cgi?id=29575
---
 scripts/build-many-glibcs.py | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)
  

Comments

Andreas K. Huettel Jan. 18, 2024, 8:57 p.m. UTC | #1
Am Donnerstag, 18. Januar 2024, 17:02:25 CET schrieb Adhemerval Zanella:
> The staticcally built binaries fails without this option [1].
> 
> Checked on sparc64-linux-gnu and sparcv9-linux-gnu.
> 
> [1] https://sourceware.org/bugzilla/show_bug.cgi?id=29575
> ---

WFM, but how about making this switch then default later 
at least in the release branch?
 
(i.e. what use is configuring something that doesnt work)
  
Adhemerval Zanella Netto Jan. 19, 2024, 2:01 p.m. UTC | #2
On 18/01/24 17:57, Andreas K. Huettel wrote:
> Am Donnerstag, 18. Januar 2024, 17:02:25 CET schrieb Adhemerval Zanella:
>> The staticcally built binaries fails without this option [1].
>>
>> Checked on sparc64-linux-gnu and sparcv9-linux-gnu.
>>
>> [1] https://sourceware.org/bugzilla/show_bug.cgi?id=29575
>> ---
> 
> WFM, but how about making this switch then default later 
> at least in the release branch?
>  
> (i.e. what use is configuring something that doesnt work)
> 

Hum, are you suggesting to disable --enable-default-pie for sparc? If so,
this is on my plan, I think there is other architectures that might be
affected by it. I spend some time trying to fix BZ#29575, but I got lost
on the internal machinery and flags required.

Besides this, I would also like to install the other sparc patches.
They fixes some regression that I have been seeing over the releases.
  
Andreas K. Huettel Jan. 19, 2024, 7:43 p.m. UTC | #3
> > Am Donnerstag, 18. Januar 2024, 17:02:25 CET schrieb Adhemerval Zanella:
> >> The staticcally built binaries fails without this option [1].
> >>
> >> Checked on sparc64-linux-gnu and sparcv9-linux-gnu.
> >>
> >> [1] https://sourceware.org/bugzilla/show_bug.cgi?id=29575
> >> ---
> > 
> > WFM, but how about making this switch then default later 
> > at least in the release branch?
> >  
> > (i.e. what use is configuring something that doesnt work)
> 
> Hum, are you suggesting to disable --enable-default-pie for sparc? If so,
> this is on my plan, I think there is other architectures that might be
> affected by it.

Yes, that's what I meant.

> I spend some time trying to fix BZ#29575, but I got lost
> on the internal machinery and flags required.
> 
> Besides this, I would also like to install the other sparc patches.
> They fixes some regression that I have been seeing over the releases.

Makes sense.

Best -A
  

Patch

diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
index 9cdf3e682f..1967615df7 100755
--- a/scripts/build-many-glibcs.py
+++ b/scripts/build-many-glibcs.py
@@ -436,18 +436,20 @@  class Context(object):
                         gcc_cfg=['--without-fp'])
         self.add_config(arch='sparc64',
                         os_name='linux-gnu',
-                        glibcs=[{},
-                                {'arch': 'sparcv9',
+                        glibcs=[{'cfg' : ['--disable-default-pie']},
+                                {'cfg' : ['--disable-default-pie'],
+                                 'arch': 'sparcv9',
                                  'ccopts': '-m32 -mlong-double-128 -mcpu=v9'}],
                         extra_glibcs=[{'variant': 'leon3',
+                                       'cfg' : ['--disable-default-pie'],
                                        'arch' : 'sparcv8',
                                        'ccopts' : '-m32 -mlong-double-128 -mcpu=leon3'},
                                       {'variant': 'disable-multi-arch',
-                                       'cfg': ['--disable-multi-arch']},
+                                       'cfg': ['--disable-multi-arch', '--disable-default-pie']},
                                       {'variant': 'disable-multi-arch',
                                        'arch': 'sparcv9',
                                        'ccopts': '-m32 -mlong-double-128 -mcpu=v9',
-                                       'cfg': ['--disable-multi-arch']}])
+                                       'cfg': ['--disable-multi-arch', '--disable-default-pie']}])
         self.add_config(arch='x86_64',
                         os_name='linux-gnu',
                         gcc_cfg=['--with-multilib-list=m64,m32,mx32'],