#578996 libtool: LT_LIBM doesn't work properly on AIX

#578996#5
Date:
2010-04-24 07:19:54 UTC
From:
To:
ClamAV uses LT_LIB_M to find the math library.
It failed on AIX, see https://wwws.clamav.net/bugzilla/show_bug.cgi?id=1989

configure:12861: checking for cos in -lm
configure:12886: gcc -o conftest -DSYSV -D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_AIX51 -D_AIX52        -D_ALL_SOURCE -DFUNCPROTO=15 -O -I/opt/freeware/include  -L/opt/freeware/lib -Wl,-blibpath:/opt/freeware/lib:/usr/lib:/lib conftest.c -lm   >&5
conftest.c:53: warning: conflicting types for built-in function 'cos'
collect2: library libm not found
configure:12895: result: no

Looks like the macro looks for cos in -lm, and if it does't find it there,
it assumes that no library is needed for it.
But that is not the case here (the user didn't have libm
installed).

I think this macro should fail at configure time, and tell the user to install
libm, if it can't find the cos() function at all.

#578996#10
Date:
2010-04-25 10:27:35 UTC
From:
To:
tags +upstream
thanks

Hello Török,

this is clearly an upstream, and not a Debian packaging bug.  Adding
bug-libtool.

* Török Edwin wrote on Sat, Apr 24, 2010 at 09:19:54AM CEST:

OK, that's a bug.  For the Libtool testsuite (which I have so far
thought to be the primary user of LT_LIB_M) the right fix would be
to allow another failure action however, so we could skip the test.

If you need such a macro, then you should write one yourself, and use
a math function that you are going to need.  It's essentially a one-liner:
  AC_SEARCH_LIBS([cos], [m], [], [AC_MSG_ERROR([need math library])])

Cheers,
Ralf

#578996#15
Date:
2010-04-25 12:59:36 UTC
From:
To:
Right.

Ok, I don't know why we used LT_LIB_M in the first place, but you are
right we can certainly change it to that instead.

Best regards,
--Edwin