On Wed, 30 Sept 2026 at 14:43, Jonathan Wakely <[email protected]> wrote:
>
> This should be CC'd to the gcc-patches list.
>
> I've also CC'd the AIX maintainer. The GCC installation docs do say
> "The native as and ld are recommended for bootstrapping on AIX." I
> don't know if this limitation of the GNU linker is something that
> matters here.

I should have read your commit msg more carefully, I don't think the
docs say anything about using IBM 'ar' or GNU 'ar'.

I'd still prefer to wait for David to look at this.

>
> On Wed, 30 Sept 2026 at 14:21, <[email protected]> wrote:
> >
> > From: Hugo Beauzée-Luyssen <[email protected]>
> >
> > GNU binutils' ar cannot build AIX dual 32/64-bit archives, so the
> > 32/64 combine in the top-level MULTIBUILDTOP recipe corrupts the
> > default-arch libstdc++ for a single-arch cross build with GNU binutils.
> >
> > libstdc++-v3/ChangeLog:
> >
> >         * config/os/aix/t-aix: Skip the 32/64 fat-archive repackage
> >         when MULTIDIRS is empty.
> >
> > Assisted-by: Claude (claude-sonnet-5)
> > Signed-off-by: Hugo Beauzée-Luyssen <[email protected]>
> > ---
> >  libstdc++-v3/config/os/aix/t-aix | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/libstdc++-v3/config/os/aix/t-aix 
> > b/libstdc++-v3/config/os/aix/t-aix
> > index 6676620a7e9..ae1f36c3121 100644
> > --- a/libstdc++-v3/config/os/aix/t-aix
> > +++ b/libstdc++-v3/config/os/aix/t-aix
> > @@ -1,11 +1,14 @@
> >  ifeq ($(MULTIBUILDTOP),)
> > +ifneq ($(MULTIDIRS),)
> >  BITS=$(shell if test -z "`$(CC) -x c -E /dev/null -g3 -o - | grep 64BIT`" 
> > ; then \
> >      echo '64'; else echo '32'; fi)
> >  MAJOR=$(firstword $(subst :, ,$(libtool_VERSION)))
> >  ARX=$(shell echo $(AR) | sed -e 's/-X[^ ]*//g')
> >  SUPOBJS=$(shell $(ARX) -X$(BITS) t 
> > ../ppc$(BITS)/$(PACKAGE)-v3/libsupc++/.libs/libsupc++.a)
> >  FSOBJS=$(shell $(ARX) -X$(BITS) t 
> > ../ppc$(BITS)/$(PACKAGE)-v3/src/filesystem/.libs/libstdc++fs.a 2>/dev/null)
> > +endif
> >  all-local:
> > +ifneq ($(MULTIDIRS),)
> >         $(ARX) -X$(BITS) rc src/.libs/$(PACKAGE).a 
> > ../ppc$(BITS)/$(PACKAGE)-v3/src/.libs/$(PACKAGE).so.$(MAJOR)
> >         $(ARX) -X$(BITS) rc ../pthread/$(PACKAGE)-v3/src/.libs/$(PACKAGE).a 
> > ../pthread/ppc$(BITS)/$(PACKAGE)-v3/src/.libs/$(PACKAGE).so.$(MAJOR)
> >         $(ARX) -X$(BITS) rc libsupc++/.libs/libsupc++.a ${addprefix 
> > ../ppc$(BITS)/$(PACKAGE)-v3/libsupc++/,$(SUPOBJS)}
> > @@ -15,3 +18,4 @@ all-local:
> >                 $(ARX) -X$(BITS) rc 
> > ../pthread/$(PACKAGE)-v3/src/filesystem/.libs/libstdc++fs.a ${addprefix 
> > ../pthread/ppc$(BITS)/$(PACKAGE)-v3/src/filesystem/,$(FSOBJS)}; \
> >         fi
> >  endif
> > +endif
> > --
> > 2.43.0
> >
> >

Reply via email to