configure: properly check if -lrt and -lm is needed
Fixes build against uClibc. uClibc provides 2 versions of clock_gettime(), one with realtime support and one without (this is so you can avoid linking in -lrt unless actually needed). This means that the clock_gettime() don't need -lrt. We still need it for timer_create() so we check for this function in addition. We also need check if -lm is needed for isnan(). Both -lm and -lrt are needed for libs_qga. Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
parent
3cebc3f11d
commit
8bacde8d86
31
configure
vendored
31
configure
vendored
@ -2670,18 +2670,45 @@ EOF
|
||||
fi
|
||||
|
||||
|
||||
##########################################
|
||||
# Do we need libm
|
||||
cat > $TMPC << EOF
|
||||
#include <math.h>
|
||||
int main(void) { return isnan(sin(0.0)); }
|
||||
EOF
|
||||
if compile_prog "" "" ; then
|
||||
:
|
||||
elif compile_prog "" "-lm" ; then
|
||||
LIBS="-lm $LIBS"
|
||||
libs_qga="-lm $libs_qga"
|
||||
else
|
||||
echo
|
||||
echo "Error: libm check failed"
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
|
||||
##########################################
|
||||
# Do we need librt
|
||||
# uClibc provides 2 versions of clock_gettime(), one with realtime
|
||||
# support and one without. This means that the clock_gettime() don't
|
||||
# need -lrt. We still need it for timer_create() so we check for this
|
||||
# function in addition.
|
||||
cat > $TMPC <<EOF
|
||||
#include <signal.h>
|
||||
#include <time.h>
|
||||
int main(void) { return clock_gettime(CLOCK_REALTIME, NULL); }
|
||||
int main(void) {
|
||||
timer_create(CLOCK_REALTIME, NULL, NULL);
|
||||
return clock_gettime(CLOCK_REALTIME, NULL);
|
||||
}
|
||||
EOF
|
||||
|
||||
if compile_prog "" "" ; then
|
||||
:
|
||||
elif compile_prog "" "-lrt" ; then
|
||||
# we need pthread for static linking. use previous pthread test result
|
||||
elif compile_prog "" "-lrt $pthread_lib" ; then
|
||||
LIBS="-lrt $LIBS"
|
||||
libs_qga="-lrt $libs_qga"
|
||||
fi
|
||||
|
||||
if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \
|
||||
|
Loading…
Reference in New Issue
Block a user