From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 93757 invoked by alias); 14 Apr 2019 15:24:35 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 93727 invoked by uid 89); 14 Apr 2019 15:24:34 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-6.1 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KAM_NUMSUBJECT,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=no version=3.3.1 spammy=illegal, notable, tonight X-HELO: mail-qk1-f193.google.com Received: from mail-qk1-f193.google.com (HELO mail-qk1-f193.google.com) (209.85.222.193) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sun, 14 Apr 2019 15:24:32 +0000 Received: by mail-qk1-f193.google.com with SMTP id b74so8431378qkg.9 for ; Sun, 14 Apr 2019 08:24:32 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Iain Buclaw Date: Sun, 14 Apr 2019 16:41:00 -0000 Message-ID: Subject: Re: [libphobos, build] Enable libphobos on Solaris 11/x86 To: Rainer Orth Cc: gcc-patches Content-Type: text/plain; charset="UTF-8" X-IsSubscribed: yes X-SW-Source: 2019-04/txt/msg00556.txt.bz2 On Tue, 19 Feb 2019 at 13:58, Rainer Orth wrote: > > Hi Iain, > > >> Thanks. This will have to wait for > >> > >> [libphobos] Use sections_elf_shared.d on Solaris 11.5 (PR d/88150) > >> https://gcc.gnu.org/ml/gcc-patches/2019-01/msg01661.html > > > > I'll make a fork of sections support tonight, as that seems to be the > > right way forwards. > > > > Other parts will need upstreaming, I can do that as well. > > that would be great, thanks. > > >> and > >> [libphobos] Work around lack of dlpi_tls_modid before Solaris 11.5 > >> https://gcc.gnu.org/ml/gcc-patches/2019-01/msg01664.html > >> > > > > Johannes has already commented there, and he is right about needing a > > way to get tls data from DSOs. > > Understood. Maybe I can find a way to generalize the hack derived from > sections_ldc.d to TLS segments outside the executable. > > >> of course. Maybe even > >> > >> [libphobos] Work around Solaris ld bug linking __tls_get_addr on > >> 64-bit x86 > >> https://gcc.gnu.org/ml/gcc-patches/2019-01/msg01663.html > >> > >> will be needed depending on whether a proper ld fix makes it into > >> Solaris 11.5 or not. > > > > I'm not sure about this, but haven't looked at it properly just yet. > > I don't think you need concern yourself with this very much: it's just a > hack around a Solaris ld bug, suggested by the Solaris linker engineers > for the moment. Once the dlpi_tls_modid patch lands in Solaris 11.5 > (this week or next), I'll ask if they see a chance to have that bug > fixed in time for the Solaris 11.5 release. If so, nobody besides > myself will ever be exposed to this issue. > I've just given building gcc a try in an OpenIndiana VM, and get the following: ld: fatal: option -z has illegal argument 'relax=transtls' ld: fatal: flags processing errors collect2: error: ld returned 1 exit status $ ld --version ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1756 (illumos) My fatal mistake of course was not configuring with --with-ld=/usr/gnu/bin/ld, however it is notable that not all Solaris linkers support this relax=transtls option. -- Iain