Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Sat, 13 Oct 2012 19:53:03 -0400
From: Rich Felker <dalias@...ifal.cx>
To: musl@...ts.openwall.com
Subject: Re: feature request: flag to disable math library build

On Sat, Oct 13, 2012 at 04:49:45PM -0700, Isaac Dunham wrote:
> On Sat, 13 Oct 2012 08:26:42 -0400
> Rich Felker <dalias@...ifal.cx> wrote:
> 
> > > And IIRC, src/complex built the last time I tried CVS pcc (but I
> > > could be misremembering!)
> > 
> > Nice to hear - I hope that's true!
> 
> Yes. pcc 20120923 used. 
> The problems I'm running into are -m*:
> 
> echo 'int main(){ return 0; }' |pcc -march=i386 -
> ld: unrecognised emulation mode: arch=i386
> Supported emulations: elf_i386 i386linux elf_x86_64 elf_l1om
> ld terminated with status 1
> (I use -melf_i386, i386linux is not the right mode)

This sounds like a bug. -m* should not be passed thru to the linker.
I suppose the configure checks should be updated to try linking with
-march etc. rather than just compiling, so this bug is caught.

> And a segfaulty loader.

Any idea why? My guess would be generating bad code that needs
relocations before it can run.

> > > However, C11 makes complex numbers optional, and there's currently
> > > no dependance on src/complex/ - would it make sense to allow
> > > /configure --disable-complex 
> > > (via the filter-out rule)?
> 
> > There are plenty of other things in musl that are not required by the
> > base standards, like GNU extensions, all of the XSI option, and
> > various POSIX feature groups like spawn, but they're not made
> > optional, because it increases complexity and has almost no benefits.
> 
> The potential issue is that complex/ requires a compiler capable of
> handling complex numbers, which C11 makes optional. Of course, it
> would be possible to just say that the compiler used to build musl
> must support complex numbers.

If this is ever an issue, we could consider making the complex code
operate on the representation of complex values as double[2], etc.
rather than directly using complex. IMO this is ugly though. I think
most relevant compilers will want to comply to C99 as well as C11.

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.