Message ID | 53B2662F.7040300@redhat.com |
---|---|
State | New |
Headers | show |
On 07/01/2014 05:41 PM, Paolo Bonzini wrote: > Il 01/07/2014 09:30, Alexey Kardashevskiy ha scritto: >> The existing test whether "-lm" needs to be included or not is >> insufficient as it reports false negative on Fedora20/ppc64. >> This happens because sin(0.0) is a constant value which compiler >> can safely throw away and therefore there is no need to add "-lm". >> As the result, qemu-nbd/qemu-io/qemu-img tools cannot compile. >> >> This adds a global variable and uses it in the test to prevent >> from optimization. >> >> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> >> >> --- >> Changes: >> v2: >> * previous s/sin/log/ replacement removed, a global variable is >> used instead >> --- >> configure | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/configure b/configure >> index 23ecb37..6dd44a9 100755 >> --- a/configure >> +++ b/configure >> @@ -3453,7 +3453,7 @@ fi >> # Do we need libm >> cat > $TMPC << EOF >> #include <math.h> >> -int main(void) { return isnan(sin(0.0)); } >> +double x; int main(void) {return isnan(sin(x));} >> EOF >> if compile_prog "" "" ; then >> : >> > > Can you please test with this hunk on top: > > diff --git a/Makefile.target b/Makefile.target > index 6089d29..137d0b0 100644 > --- a/Makefile.target > +++ b/Makefile.target > @@ -163,10 +163,6 @@ dummy := $(call unnest-vars,.., \ > all-obj-y += $(common-obj-y) > all-obj-$(CONFIG_SOFTMMU) += $(block-obj-y) > > -ifndef CONFIG_HAIKU > -LIBS+=-lm > -endif > - > # build either PROG or PROGW > $(QEMU_PROG_BUILD): $(all-obj-y) ../libqemuutil.a ../libqemustub.a > $(call LINK,$^) > > It should now be unnecessary. Tried, all good.
Il 01/07/2014 09:47, Alexey Kardashevskiy ha scritto: > On 07/01/2014 05:41 PM, Paolo Bonzini wrote: >> Il 01/07/2014 09:30, Alexey Kardashevskiy ha scritto: >>> The existing test whether "-lm" needs to be included or not is >>> insufficient as it reports false negative on Fedora20/ppc64. >>> This happens because sin(0.0) is a constant value which compiler >>> can safely throw away and therefore there is no need to add "-lm". >>> As the result, qemu-nbd/qemu-io/qemu-img tools cannot compile. >>> >>> This adds a global variable and uses it in the test to prevent >>> from optimization. >>> >>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> >>> >>> --- >>> Changes: >>> v2: >>> * previous s/sin/log/ replacement removed, a global variable is >>> used instead >>> --- >>> configure | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/configure b/configure >>> index 23ecb37..6dd44a9 100755 >>> --- a/configure >>> +++ b/configure >>> @@ -3453,7 +3453,7 @@ fi >>> # Do we need libm >>> cat > $TMPC << EOF >>> #include <math.h> >>> -int main(void) { return isnan(sin(0.0)); } >>> +double x; int main(void) {return isnan(sin(x));} >>> EOF >>> if compile_prog "" "" ; then >>> : >>> >> >> Can you please test with this hunk on top: >> >> diff --git a/Makefile.target b/Makefile.target >> index 6089d29..137d0b0 100644 >> --- a/Makefile.target >> +++ b/Makefile.target >> @@ -163,10 +163,6 @@ dummy := $(call unnest-vars,.., \ >> all-obj-y += $(common-obj-y) >> all-obj-$(CONFIG_SOFTMMU) += $(block-obj-y) >> >> -ifndef CONFIG_HAIKU >> -LIBS+=-lm >> -endif >> - >> # build either PROG or PROGW >> $(QEMU_PROG_BUILD): $(all-obj-y) ../libqemuutil.a ../libqemustub.a >> $(call LINK,$^) >> >> It should now be unnecessary. > > > Tried, all good. Thanks, applied to scsi-next. Paolo
diff --git a/Makefile.target b/Makefile.target index 6089d29..137d0b0 100644 --- a/Makefile.target +++ b/Makefile.target @@ -163,10 +163,6 @@ dummy := $(call unnest-vars,.., \ all-obj-y += $(common-obj-y) all-obj-$(CONFIG_SOFTMMU) += $(block-obj-y) -ifndef CONFIG_HAIKU -LIBS+=-lm -endif - # build either PROG or PROGW $(QEMU_PROG_BUILD): $(all-obj-y) ../libqemuutil.a ../libqemustub.a $(call LINK,$^)