|
Message-ID: <20130805144359.GI221@brightrain.aerifal.cx> Date: Mon, 5 Aug 2013 10:43:59 -0400 From: Rich Felker <dalias@...ifal.cx> To: musl@...ts.openwall.com Subject: Re: iconv Korean and Traditional Chinese research so far On Mon, Aug 05, 2013 at 09:24:37AM +0100, Justin Cormack wrote: > They are not going to be "fixed" just don't build them. It is not hard with > Musl. Just add this into your build script. Indeed. My intent is for it to be fully-functional-as-shipped. If somebody needs to cripple certain interfaces to meet extreme size requirements, that's an ok local modification, and it might even be acceptable as a configure option if enough people legitimately request it. > One of the nice features of Musl is that it appeals to a broader audience > than just "embedded" so it is always going to have stuff you can cut out if > you want absolute minimalism but this means it will get wider usage. Cutting out math/*, complex/*, and most of crypt/* would save at least as much space as iconv, and there are plenty of places these aren't needed either. It's not for me to decide which options you can omit. Thankfully, due to musl's correct handling of static linking, you usually don't have to think about it either. You just static link and get only what you need. > Adding external files has many disadvantages to other people. If you don't > want these conversions external files do not help you. External files also do not make things work "by default". They only work if musl has been installed system-wide according to our directions (which not everbody will follow) or if the user has done the research to figure out how to work around it not being installed system-wide. > Making software for more than one person involves compromises so please > calm down a bit. Use your own embedded build with the parts you don't need > omitted. Exactly. Where musl excels here is by not _forcing_ you to use iconv. I take great care not to force linking of components you might not want to see in your output binary size, and for TLS, which unfortunately was misdesigned in such a way that the linker can't see if TLS is used or not for the purpose of deciding whether to link the TLS init code, I went to great lengths both to minimize the size of __init_tls.o and to make it easy, as a local customization, to omit this module. But as an analogy, I would not have even considered asking musl users who need TLS to add special CFLAGS, libraries, etc. when building programs. That's an unreasonable burden and it's broken because it does not "work by default". 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.