Date: Sun, 18 Sep 2005 17:59:05 +0200 From: Juergen Lock <nox@jelal.kn-bremen.de> To: freebsd-ports@freebsd.org, freebsd-emulation@freebsd.org Subject: fixing emulators/qemu on 4.x Message-ID: <20050918155905.GA31500@saturn.kn-bremen.de>
next in thread | raw e-mail | index | archive | help
Can someone who runs 4.x please test the following patch to fix the
emulators/qemu port? And while you're at it, it would be nice if
you could test kqemu as well... (WITH_KQEMU)
Thanx,
Juergen
Index: files/patch-libmath4
@@ -0,0 +1,45 @@
+Index: qemu/bsd/i386/s_ldexpl.c
+@@ -2,6 +2,30 @@
+ #include <errno.h>
+ #include <sysdep.h>
+
++/* 4.x doesnt have isfinite */
++#ifndef isfinite
++#define isfinite __isfinitel
++
++union IEEEl2bits {
++ long double e;
++ struct {
++ unsigned int manl :32;
++ unsigned int manh :32;
++ unsigned int exp :15;
++ unsigned int sign :1;
++ unsigned int junk :16;
++ } bits;
++};
++
++static int __isfinitel(long double x)
++{
++ union IEEEl2bits u;
++
++ u.e = x;
++ return (u.bits.exp != 32767);
++}
++#endif
++
+ long double __ldexpl(long double x, int expn)
+ {
+ long double res;
+Index: qemu/bsd/i386/s_round.c
+@@ -29,6 +29,11 @@
+
+ #include <math.h>
+
++/* 4.x doesnt have isfinite */
++#ifndef isfinite
++#define isfinite(x) (!isnan(x) && !isinf(x))
++#endif
++
+ double
+ round(double x)
+ {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050918155905.GA31500>
