summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2012-06-15 08:21:58 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2012-06-15 08:22:35 +0000
commitcfe93befa1f0680f648e8a90085da374932225cd (patch)
treed8ea6666662f8999051bfda3f21bc4c3253c93df
parent501044087f94424be053b20f65b8cb267a2c88d1 (diff)
downloadaports-cfe93befa1f0680f648e8a90085da374932225cd.tar.bz2
aports-cfe93befa1f0680f648e8a90085da374932225cd.tar.xz
main/qemu: build fix. add missing patch
-rw-r--r--main/qemu/0001-configure-properly-check-if-lrt-and-lm-is-needed.patch129
1 files changed, 129 insertions, 0 deletions
diff --git a/main/qemu/0001-configure-properly-check-if-lrt-and-lm-is-needed.patch b/main/qemu/0001-configure-properly-check-if-lrt-and-lm-is-needed.patch
new file mode 100644
index 000000000..22c26acec
--- /dev/null
+++ b/main/qemu/0001-configure-properly-check-if-lrt-and-lm-is-needed.patch
@@ -0,0 +1,129 @@
+From 50b76c5a19f53d42e1b564068692c042a6b00c52 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Thu, 14 Jun 2012 11:03:25 +0000
+Subject: [PATCH] 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().
+
+Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
+---
+ Makefile | 4 ++--
+ Makefile.target | 4 +---
+ configure | 33 +++++++++++++++++++++++++++++++--
+ 3 files changed, 34 insertions(+), 7 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 32550cb..9dfa01a 100644
+--- a/Makefile
++++ b/Makefile
+@@ -35,7 +35,7 @@ configure: ;
+
+ $(call set-vpath, $(SRC_PATH))
+
+-LIBS+=-lz $(LIBS_TOOLS)
++LIBS+=-lz $(LIBS_TOOLS) $(LIBM) $(LIBRT)
+
+ HELPERS-$(CONFIG_LINUX) = qemu-bridge-helper$(EXESUF)
+
+@@ -172,7 +172,7 @@ qemu-img-cmds.h: $(SRC_PATH)/qemu-img-cmds.hx
+ $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -h < $< > $@," GEN $@")
+
+ qapi-dir := $(BUILD_DIR)/qapi-generated
+-qemu-ga$(EXESUF): LIBS = $(LIBS_QGA)
++qemu-ga$(EXESUF): LIBS = $(LIBS_QGA) $(LIBRT) $(LIBM)
+ qemu-ga$(EXESUF): QEMU_CFLAGS += -I $(qapi-dir)
+
+ gen-out-type = $(subst .,-,$(suffix $@))
+diff --git a/Makefile.target b/Makefile.target
+index 2907aad..d214d2c 100644
+--- a/Makefile.target
++++ b/Makefile.target
+@@ -34,9 +34,7 @@ PROGS+=$(QEMU_PROGW)
+ endif
+ STPFILES=
+
+-ifndef CONFIG_HAIKU
+-LIBS+=-lm
+-endif
++LIBS+=$(LIBM) $(LIBRT)
+
+ config-target.h: config-target.h-timestamp
+ config-target.h-timestamp: config-target.mak
+diff --git a/configure b/configure
+index c2366ee..f925973 100755
+--- a/configure
++++ b/configure
+@@ -102,6 +102,8 @@ audio_win_int=""
+ cc_i386=i386-pc-linux-gnu-gcc
+ libs_qga=""
+ debug_info="yes"
++libm=""
++librt=""
+
+ target_list=""
+
+@@ -2568,17 +2570,42 @@ fi
+
+
+ ##########################################
++# Do we need libm
++cat > $TMPC << EOF
++#include <math.h>
++int main(void) { return isnan(0.0); }
++EOF
++if compile_prog "" "" ; then
++ libm=
++elif compile_prog "" "-lm" ; then
++ libm="-lm"
++else
++ echo
++ echo "Error: libm check failed"
++ echo
++ exit 1
++fi
++
++##########################################
+ # Do we need librt
+ 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
+- LIBS="-lrt $LIBS"
++ librt="-lrt"
++else
++ echo
++ echo "Error: librt check failed"
++ echo
++ exit 1
+ fi
+
+ if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \
+@@ -3442,6 +3469,8 @@ echo "LIBS_TOOLS+=$libs_tools" >> $config_host_mak
+ echo "EXESUF=$EXESUF" >> $config_host_mak
+ echo "LIBS_QGA+=$libs_qga" >> $config_host_mak
+ echo "POD2MAN=$POD2MAN" >> $config_host_mak
++echo "LIBM=$libm" >> $config_host_mak
++echo "LIBRT=$librt" >> $config_host_mak
+
+ # generate list of library paths for linker script
+
+--
+1.7.10.4
+