diff options
Diffstat (limited to 'emulators/qemu-devel/files/patch-fbsd')
-rw-r--r-- | emulators/qemu-devel/files/patch-fbsd | 139 |
1 files changed, 0 insertions, 139 deletions
diff --git a/emulators/qemu-devel/files/patch-fbsd b/emulators/qemu-devel/files/patch-fbsd deleted file mode 100644 index 7195d62837b8..000000000000 --- a/emulators/qemu-devel/files/patch-fbsd +++ /dev/null @@ -1,139 +0,0 @@ -Index: qemu/Makefile -@@ -25,7 +25,10 @@ - DOCS= - endif - --all: $(TOOLS) $(DOCS) recurse-all -+all: bsd/libmath.a $(TOOLS) $(DOCS) recurse-all -+ -+bsd/libmath.a: -+ ( cd bsd ; $(BSD_MAKE) CC=$(CC) ) - - subdir-%: dyngen$(EXESUF) - $(MAKE) -C $(subst subdir-,,$@) all -@@ -40,6 +43,7 @@ - - clean: - # avoid old build problems by removing potentially incorrect old files -+ ( cd bsd ; $(BSD_MAKE) clean ) - rm -f config.mak config.h op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h gen-op-arm.h - rm -f *.o *.a $(TOOLS) dyngen$(EXESUF) TAGS *.pod *~ */*~ - $(MAKE) -C tests clean -Index: qemu/Makefile.target -@@ -391,8 +391,8 @@ - VL_LDFLAGS+=-Wl,-G0 -Wl,-T,$(SRC_PATH)/ia64.ld - endif - --$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a -- $(CC) $(VL_LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS) -+$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a ../bsd/libmath.a -+ $(CC) $(VL_LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS) ../bsd/libmath.a - - cocoa.o: cocoa.m - $(CC) $(CFLAGS) $(DEFINES) -c -o $@ $< -Index: qemu/fpu/softfloat-native.c -@@ -2,11 +2,16 @@ - context is supported */ - #include "softfloat.h" - #include <math.h> -+#if defined(__FreeBSD__) && __FreeBSD_version < 500000 -+#include <ieeefp.h> -+#endif - - void set_float_rounding_mode(int val STATUS_PARAM) - { - STATUS(float_rounding_mode) = val; --#if defined(_BSD) && !defined(__APPLE__) || (defined(HOST_SOLARIS) && HOST_SOLARIS < 10) -+#if defined(_BSD) && !defined(__APPLE__) && !defined(__FreeBSD__) || \ -+ (defined(__FreeBSD__) && __FreeBSD_version < 500000) || \ -+ (defined(HOST_SOLARIS) && HOST_SOLARIS < 10) - fpsetround(val); - #elif defined(__arm__) - /* nothing to do */ -@@ -22,7 +25,7 @@ - } - #endif - --#if defined(_BSD) || (defined(HOST_SOLARIS) && HOST_SOLARIS < 10) -+#if (defined(_BSD) && !defined(__FreeBSD__)) || (defined(HOST_SOLARIS) && HOST_SOLARIS < 10) - #define lrint(d) ((int32_t)rint(d)) - #define llrint(d) ((int64_t)rint(d)) - #define lrintf(f) ((int32_t)rint(f)) -Index: qemu/fpu/softfloat-native.h -@@ -1,8 +1,28 @@ - /* Native implementation of soft float functions */ - #include <math.h> - --#if (defined(_BSD) && !defined(__APPLE__)) || defined(HOST_SOLARIS) -+#ifdef __FreeBSD__ -+#include <osreldate.h> -+long double fabsl(long double x); -+long double remainderl(long double x, long double y); -+long double sqrtl(long double x); -+long double rintl(long double x); -+long lrintl(long double x); -+long long llrintl(long double x); -+#endif -+ -+#if (defined(_BSD) && !defined(__APPLE__) && \ -+ (!defined(__FreeBSD__) || __FreeBSD_version < 500000)) || \ -+ defined(HOST_SOLARIS) - #include <ieeefp.h> -+#if defined(__FreeBSD__) -+#define isgreater(x, y) __builtin_isgreater((x), (y)) -+#define isgreaterequal(x, y) __builtin_isgreaterequal((x), (y)) -+#define isless(x, y) __builtin_isless((x), (y)) -+#define islessequal(x, y) __builtin_islessequal((x), (y)) -+#define islessgreater(x, y) __builtin_islessgreater((x), (y)) -+#define isunordered(x, y) __builtin_isunordered((x), (y)) -+#endif - #define fabsf(f) ((float)fabs(f)) - #else - #include <fenv.h> -@@ -60,7 +80,9 @@ - /*---------------------------------------------------------------------------- - | Software IEC/IEEE floating-point rounding mode. - *----------------------------------------------------------------------------*/ --#if (defined(_BSD) && !defined(__APPLE__)) || defined(HOST_SOLARIS) -+#if (defined(_BSD) && !defined(__APPLE__) && \ -+ (!defined(__FreeBSD__) || __FreeBSD_version < 500000)) || \ -+ defined(HOST_SOLARIS) - enum { - float_round_nearest_even = FP_RN, - float_round_down = FP_RM, -Index: qemu/fpu/softfloat.h -@@ -84,7 +84,8 @@ - #define FLOAT128 - #else - /* native float support */ --#if (defined(__i386__) || defined(__x86_64__)) && !defined(_BSD) -+#if (defined(__i386__) || defined(__x86_64__)) && \ -+ (!defined(_BSD) || defined(__FreeBSD__)) - #define FLOATX80 - #endif - #endif /* !CONFIG_SOFTFLOAT */ -Index: qemu/target-ppc/op_helper.c -@@ -303,6 +303,13 @@ - FT0 = sqrt(FT0); - } - -+#ifndef isnormal -+#define isnormal(x) \ -+ ((sizeof (x) == sizeof (float)) ? __isnormalf(x) \ -+ : (sizeof (x) == sizeof (double)) ? __isnormal(x) \ -+ : __isnormall(x)) -+#endif -+ - void do_fres (void) - { - union { -Index: qemu/x86_64.ld -@@ -2,7 +2,7 @@ - OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") - OUTPUT_ARCH(i386:x86-64) - ENTRY(_start) --SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/local/lib64"); -+SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); SEARCH_DIR("/usr/local/lib"); - SECTIONS - { - /* Read-only sections, merged into text segment: */ |