https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88238
--- Comment #7 from Iain Buclaw <ibuclaw at gdcproject dot org> --- On Thu, 9 May 2019 at 20:11, ro at gcc dot gnu.org <gcc-bugzi...@gcc.gnu.org> wrote: > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88238 > > Rainer Orth <ro at gcc dot gnu.org> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > Attachment #46309|0 |1 > is obsolete| | > > --- Comment #6 from Rainer Orth <ro at gcc dot gnu.org> --- > Created attachment 46331 > --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46331&action=edit > Fix libphobos compilation on Solaris 10 (PR d/88238) > > Apart from a few cleanups and minor bug fixes, this patch adds to the previous > version a workaround for the lack of dl_iterate_phdr in 64-bit Solaris > 10/SPARC > libdl. The function is missing simply due to a packaging mistake: it actually > lives in ld.so.1, libdl.so.1 only being a filter on that. Since one cannot > link > to ld.so.1 directly and getting at dl_iterate_phdr using dlsym fails due to > another > bug, I'm again using a libgdc_s.so.1 helper library which implements that > filter. > > Since it uses a Solaris ld-specific linker map file, it can only be built with > ld directly, not the linker gcc was configured with, and thus not with > libtool. > The patch consists primarily of additions to > DRUNTIME_LIBRARIES_DL_ITERATE_PHDR > to detect the situation, the mapfile and libdruntime/Makefile.am code to > create > the helper lib. > Is a helper library really needed? I think I'd prefer it to go in any of the existing libraries already built instead of adding more things to link in. > It was tested on sparc-sun-solaris2.10 and sparc-sun-solaris2.11 and as in the > x86 case, testsuite results between the two are now almost identical. > Nice.