From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/4469 Path: news.gmane.org!not-for-mail From: Rich Felker Newsgroups: gmane.linux.lib.musl.general Subject: Re: Re: libgcc --disable-shared test case Date: Sat, 11 Jan 2014 17:45:09 -0500 Message-ID: <20140111224509.GX24286@brightrain.aerifal.cx> References: <20131017060913.GA1957@brightrain.aerifal.cx> <1389462032.1176.18@driftwood> <20140111215106.GV24286@brightrain.aerifal.cx> <52D1BFE9.6040703@landley.net> <20140111222354.GW24286@brightrain.aerifal.cx> <52D1C7EC.5090908@landley.net> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1389480314 29352 80.91.229.3 (11 Jan 2014 22:45:14 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 11 Jan 2014 22:45:14 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-4473-gllmg-musl=m.gmane.org@lists.openwall.com Sat Jan 11 23:45:23 2014 Return-path: Envelope-to: gllmg-musl@plane.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1W27Iw-00045D-2y for gllmg-musl@plane.gmane.org; Sat, 11 Jan 2014 23:45:22 +0100 Original-Received: (qmail 16178 invoked by uid 550); 11 Jan 2014 22:45:21 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 16167 invoked from network); 11 Jan 2014 22:45:21 -0000 Content-Disposition: inline In-Reply-To: <52D1C7EC.5090908@landley.net> User-Agent: Mutt/1.5.21 (2010-09-15) Xref: news.gmane.org gmane.linux.lib.musl.general:4469 Archived-At: On Sat, Jan 11, 2014 at 04:38:36PM -0600, Rob Landley wrote: > On 01/11/14 16:23, Rich Felker wrote: > >On Sat, Jan 11, 2014 at 04:04:25PM -0600, Rob Landley wrote: > >If you want to see the issue manifest without replacing uclibc, the > >easiest way would be to check *which* libgcc symbols got pulled into > >libc.so.0, then modify the test code for libfoo.so to use a feature > >that will pull in one of the libgcc symbols not in libc. > > > >Rich > > My goal is to make it work, with a brick if necessary. This includes > making it all work under musl. > > I'm already patching the libgcc.a build to produce libgcc_eh.a at > inappropriate times and shoehorning in symbols that problably > shouldn't go in there. (And then ccwrap is shoehorning in > libgcc_eh.a when it pulls in libgcc.a.) > > My position on the --disable-shared gcc being subtly broken is that > it's a bug in gcc I should fix (at least until replacing one more > FSF project with something better). Generally if I can reproduce a > problem and get enough time to work on it, I can fix it. I just > wanted to make sure that my failure to reproduce this issue wasn't > because I subtly screwed up. :) The way to fix it is to find the conditional logic in the gcc build system (I forget whether it's in configure, the Makefiles, or the headers) that disables use of the visibility attribute when --disable-shared is passed, and simply dummy it out so that visibility is always used. At one point we discussed on IRC how this could be fixed at the GCC level, so I could probably dig something out of IRC logs if you want. Rich