summaryrefslogtreecommitdiffstats
path: root/main/xen/qemu_uclibc_configure.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/xen/qemu_uclibc_configure.patch')
-rw-r--r--main/xen/qemu_uclibc_configure.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/main/xen/qemu_uclibc_configure.patch b/main/xen/qemu_uclibc_configure.patch
new file mode 100644
index 000000000..bef93c14d
--- /dev/null
+++ b/main/xen/qemu_uclibc_configure.patch
@@ -0,0 +1,48 @@
+--- a/tools/qemu-xen-dir/configure
++++ b/tools/qemu-xen-dir/configure
+@@ -2457,19 +2457,44 @@ EOF
+ fi
+ 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) { clockid_t id; return clock_gettime(id, 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
+ LIBS="-lrt $LIBS"
++ libs_qga="-lrt $libs_qga"
+ fi
+
+ if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \