Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CABBv4TZomh9XSaS=SZiiNS-CtxQT7v5hPFcX_BWA+ejEK4puzg@mail.gmail.com>
Date: Sat, 07 Nov 2015 23:24:56 +0000
From: Petr Hosek <phosek@...omium.org>
To: musl@...ts.openwall.com
Subject: Re: [PATCH] don't define SHARED macro in the source

We don't support static pie in our toolchain so I haven't really tested
that scenario but now I see why the SHARED macro is needed here.

One option around this issue would be to avoid building rcrt1.c altogether,
but I'd like to avoid carrying an extra patch for that. The other option
would be to allow inline assembly in this case since it seems to be only
used as a guard.  I'll see if the second option is feasible.

On Sat, Nov 7, 2015 at 5:24 AM Szabolcs Nagy <nsz@...t70.net> wrote:

> * Petr Hosek <phosek@...gle.com> [2015-11-06 23:46:40 +0000]:
> > When building musl with pnacl-clang compiler I found a bug: crt/rcrt1.c
> > defines the SHARED macro which enables the conditional block in
> > src/ldso/dlstart.c, this breaks for us because pnacl-clang doesn't
> support
> > shared libraries nor inline assembly. If my understanding is correct, the
> > SHARED macro should be (and already is) defined only in
> CFLAGS_ALL_SHARED.
> > The attached patch fixes that.
>
> but rcrt1.o is not built with CFLAGS_ALL_SHARED and SHARED is needed
>
> rcrt1.o should be only used for static pie
>
> > From 7b1348fa1a8dd2d02a9087639c6b02ce9585aef2 Mon Sep 17 00:00:00 2001
> > From: Petr Hosek <phosek@...omium.org>
> > Date: Thu, 5 Nov 2015 21:55:20 -0800
> > Subject: [PATCH] don't define SHARED macro in the source
> >
> > the SHARED macro should only be defined in CFLAGS_ALL_SHARED when
> > building musl as shared library.
> > ---
> >  crt/rcrt1.c | 1 -
> >  1 file changed, 1 deletion(-)
> >
> > diff --git a/crt/rcrt1.c b/crt/rcrt1.c
> > index 9be117f..0ba78f8 100644
> > --- a/crt/rcrt1.c
> > +++ b/crt/rcrt1.c
> > @@ -1,4 +1,3 @@
> > -#define SHARED
> >  #define START "_start"
> >  #define _dlstart_c _start_c
> >  #include "../src/ldso/dlstart.c"
> > --
> > 2.6.0.rc2.230.g3dd15c0
> >
>
>

Content of type "text/html" skipped

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.