Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140422223811.GM26358@brightrain.aerifal.cx>
Date: Tue, 22 Apr 2014 18:38:11 -0400
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: Re: musl-llvm and crtbegin/crtend

On Tue, Apr 22, 2014 at 05:53:14PM -0400, writeonce@...ipix.org wrote:
> Greetings,
> 
> First issue, and probably an easy fix, is the link to crtbegin.S and
> crtend.S on the musl wiki page entitled BuildingLLVM.  The current
> links are broken, and should (probably) point to
> http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/csu/ (the actual files
> are under arch/{$ARCH}
> 
> More importantly, though: from very recent communication on the
> clang developer list, it is my understanding that the NetBSD
> crtbegin/crtend are the _de facto_ standard for self-hosting clang
> toolchains.  If that is the case, does anyone know of a special
> license exception pertaining to these files?  If I read the license
> correctly, then every binary containing the resulting crtbegin.o and
> crtend.o would have to include a copy of the license with its
> documentation.  If there is such exception, then I'd suggest that
> the wiki page includes a link to it.

I'm not aware of this, but you might want to check and see if this
junk is even needed. My understanding is that these files do nothing
useful whatsoever unless you're using the old _init/_fini based
ctor/dtor system. GCC at least has switched to generating __init_array
and __fini_array which are much saner and I would guess clang has too.

Note that these files aren't needed at all for pure C code anyway,
only for C++, GNU C, or other langs with static ctors/dtors.

Rich

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.