summaryrefslogtreecommitdiff
path: root/emulators/qemu/patches
diff options
context:
space:
mode:
authorxtraeme <xtraeme@pkgsrc.org>2005-05-03 11:18:47 +0000
committerxtraeme <xtraeme@pkgsrc.org>2005-05-03 11:18:47 +0000
commitdca48935195271b7369a49a61cc0b865d7e8c27b (patch)
treea1a5744c307de6c582fcd9379694f6d4dba52f3d /emulators/qemu/patches
parent6442e50cdb9820832e16b924b73e848f1036589a (diff)
downloadpkgsrc-dca48935195271b7369a49a61cc0b865d7e8c27b.tar.gz
Update to 0.7.0.
Changes: - better BIOS translation and HDD geometry auto-detection - user mode networking bug fix - undocumented FPU ops support - Cirrus VGA: support for 1280x1024x[8,15,16] modes - 'pidfile' option - .dmg disk image format support (Johannes Schindelin) - keymaps support (initial patch by Johannes Schindelin) - big endian ARM support (Lennert Buytenhek) - added generic 64 bit target support - x86_64 target support - initial APIC support - MMX/SSE/SSE2/PNI support - PC parallel port support (Mark Jonckheere) - initial SPARC64 support (Blue Swirl) - SPARC target boots Linux (Blue Swirl) - armv5te user mode support (Paul Brook) - ARM VFP support (Paul Brook) - ARM "Angel" semihosting syscalls (Paul Brook) - user mode gdb stub support (Paul Brook) - Samba 3 support - initial Cocoa support (Pierre d'Herbemont) - generic FPU emulation code - Virtual PC read-only disk image support (Alex Beregszaszi) pkgsrc changes: Applied Hubert Feyrer workaround for the x86_64 target (patch-aw).
Diffstat (limited to 'emulators/qemu/patches')
-rw-r--r--emulators/qemu/patches/patch-ab17
-rw-r--r--emulators/qemu/patches/patch-af31
-rw-r--r--emulators/qemu/patches/patch-aj23
-rw-r--r--emulators/qemu/patches/patch-ak37
-rw-r--r--emulators/qemu/patches/patch-ap12
-rw-r--r--emulators/qemu/patches/patch-ar11
-rw-r--r--emulators/qemu/patches/patch-au76
-rw-r--r--emulators/qemu/patches/patch-av55
-rw-r--r--emulators/qemu/patches/patch-aw19
9 files changed, 192 insertions, 89 deletions
diff --git a/emulators/qemu/patches/patch-ab b/emulators/qemu/patches/patch-ab
deleted file mode 100644
index f09e385ff7a..00000000000
--- a/emulators/qemu/patches/patch-ab
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-ab,v 1.3 2005/03/02 23:22:41 hubertf Exp $
-
-Source: http://lists.gnu.org/archive/html/qemu-devel/2004-09/msg00271.html
-
---- target-i386/exec.h.orig 2004-11-14 21:51:33.000000000 +0100
-+++ target-i386/exec.h
-@@ -315,8 +315,8 @@ static inline void stfl(void *ptr, float
- extern int lrint(CPU86_LDouble x);
- extern int64_t llrint(CPU86_LDouble x);
- #else
--#define lrint(d) ((int)rint(d))
--#define llrint(d) ((int)rint(d))
-+#define lrint(d) ((long)rint(d))
-+#define llrint(d) ((long long)rint(d))
- #endif
- extern CPU86_LDouble fabs(CPU86_LDouble x);
- extern CPU86_LDouble sin(CPU86_LDouble x);
diff --git a/emulators/qemu/patches/patch-af b/emulators/qemu/patches/patch-af
index 1d8644fdbb9..07a798188b7 100644
--- a/emulators/qemu/patches/patch-af
+++ b/emulators/qemu/patches/patch-af
@@ -1,7 +1,7 @@
-$NetBSD: patch-af,v 1.2 2004/12/14 01:02:19 dbj Exp $
+$NetBSD: patch-af,v 1.3 2005/05/03 11:18:47 xtraeme Exp $
---- dyngen-exec.h.orig Sun Nov 14 15:51:33 2004
-+++ dyngen-exec.h
+--- dyngen-exec.h.orig 2005-04-28 22:23:53.000000000 +0200
++++ dyngen-exec.h 2005-04-28 22:25:30.000000000 +0200
@@ -23,7 +23,9 @@
/* NOTE: standard headers should be used with special care at this
point because host CPU registers are used as global variables. Some
@@ -12,34 +12,29 @@ $NetBSD: patch-af,v 1.2 2004/12/14 01:02:19 dbj Exp $
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
-@@ -43,7 +45,7 @@ typedef signed long int64_t;
- #else
+@@ -44,6 +46,7 @@
typedef signed long long int64_t;
#endif
--
+
+/*
#define INT8_MIN (-128)
#define INT16_MIN (-32767-1)
#define INT32_MIN (-2147483647-1)
-@@ -56,8 +58,12 @@ typedef signed long long int64_t;
+@@ -56,12 +59,17 @@
#define UINT16_MAX (65535)
#define UINT32_MAX (4294967295U)
#define UINT64_MAX ((uint64_t)(18446744073709551615))
--
+*/
+
+#ifdef __NetBSD__
-+typedef struct __sFILE FILE;
++typedef struct __sFILE FILE;
+#else
typedef struct FILE FILE;
-+#endif
extern int fprintf(FILE *, const char *, ...);
extern int printf(const char *, ...);
#undef NULL
-@@ -70,6 +76,7 @@ extern int printf(const char *, ...);
- #define FE_UPWARD FP_RP
- #define FE_TOWARDZERO FP_RZ
- #define fesetround(x) fpsetround(x)
-+#define fegetround() fpgetround()
- #else
- #include <fenv.h>
- #endif
+ #define NULL 0
++#endif
+
+ #ifdef __i386__
+ #define AREG0 "ebp"
diff --git a/emulators/qemu/patches/patch-aj b/emulators/qemu/patches/patch-aj
index d972ebf598e..8c0bf81decc 100644
--- a/emulators/qemu/patches/patch-aj
+++ b/emulators/qemu/patches/patch-aj
@@ -1,29 +1,20 @@
-$NetBSD: patch-aj,v 1.2 2004/12/14 01:02:19 dbj Exp $
+$NetBSD: patch-aj,v 1.3 2005/05/03 11:18:47 xtraeme Exp $
---- Makefile.target.orig Sun Nov 14 15:51:33 2004
-+++ Makefile.target
-@@ -7,8 +7,8 @@ ifdef CONFIG_USER_ONLY
+--- Makefile.target.orig 2005-04-28 22:40:38.000000000 +0200
++++ Makefile.target 2005-04-28 22:41:20.000000000 +0200
+@@ -14,9 +14,9 @@
VPATH+=:$(SRC_PATH)/linux-user
DEFINES+=-I$(SRC_PATH)/linux-user -I$(SRC_PATH)/linux-user/$(TARGET_ARCH)
endif
-CFLAGS=-Wall -O2 -g -fno-strict-aliasing
--LDFLAGS=-g
+#CFLAGS=-Wall -O2 -g -fno-strict-aliasing
+ #CFLAGS+=-Werror
+-LDFLAGS=-g
+#LDFLAGS=-g
LIBS=
HELPER_CFLAGS=$(CFLAGS)
DYNGEN=../dyngen$(EXESUF)
-@@ -181,6 +181,9 @@ endif
-
- DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
- LIBS+=-lm
-+ifdef CONFIG_DARWIN
-+LIBS+=-lmx
-+endif
- ifndef CONFIG_USER_ONLY
- LIBS+=-lz
- endif
-@@ -397,7 +400,7 @@ clean:
+@@ -463,7 +463,7 @@
install: all
ifneq ($(PROGS),)
diff --git a/emulators/qemu/patches/patch-ak b/emulators/qemu/patches/patch-ak
index 2a6138bfe97..34fffc993b7 100644
--- a/emulators/qemu/patches/patch-ak
+++ b/emulators/qemu/patches/patch-ak
@@ -1,8 +1,8 @@
-$NetBSD: patch-ak,v 1.2 2004/11/15 11:35:30 xtraeme Exp $
+$NetBSD: patch-ak,v 1.3 2005/05/03 11:18:47 xtraeme Exp $
---- Makefile.orig 2004-11-15 11:54:34.000000000 +0100
-+++ Makefile 2004-11-15 11:56:25.000000000 +0100
-@@ -1,13 +1,13 @@
+--- Makefile.orig 2005-04-28 22:38:00.000000000 +0200
++++ Makefile 2005-04-28 22:39:40.000000000 +0200
+@@ -1,10 +1,10 @@
-include config-host.mak
-CFLAGS=-Wall -O2 -g -fno-strict-aliasing
@@ -10,36 +10,31 @@ $NetBSD: patch-ak,v 1.2 2004/11/15 11:35:30 xtraeme Exp $
ifdef CONFIG_DARWIN
CFLAGS+= -mdynamic-no-pic
endif
- ifdef CONFIG_WIN32
- CFLAGS+=-fpack-struct
- endif
-LDFLAGS=-g
+#LDFLAGS=-g
LIBS=
DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
- TOOLS=qemu-img
-@@ -43,18 +43,18 @@
- done
+ TOOLS=qemu-img$(EXESUF)
+@@ -54,16 +54,16 @@
+ common de-ch es fo fr-ca hu ja mk nl-be pt sl tr
install: all
- mkdir -p "$(bindir)"
-+ $(BSD_INSTALL_PROGRAM_DIR) $(bindir)
- ifndef CONFIG_WIN32
- install -m 755 -s $(TOOLS) "$(bindir)"
- endif
+- install -m 755 -s $(TOOLS) "$(bindir)"
- mkdir -p "$(datadir)"
- install -m 644 pc-bios/bios.bin pc-bios/vgabios.bin \
-+ $(BSD_INSTALL_DATA_DIR) $(datadir)
++ $(BSD_INSTALL_PROGRAM_DIR) "$(bindir)"
++ $(BSD_INSTALL_PROGRAM) $(TOOLS) "$(bindir)"
++ $(BSD_INSTALL_DATA_DIR) "$(datadir)"
+ $(BSD_INSTALL_DATA) pc-bios/bios.bin pc-bios/vgabios.bin \
pc-bios/vgabios-cirrus.bin \
pc-bios/ppc_rom.bin \
- pc-bios/proll.bin \
-- pc-bios/linux_boot.bin "$(datadir)"
+ pc-bios/proll.elf \
+ pc-bios/linux_boot.bin "$(datadir)"
- mkdir -p "$(docdir)"
- install -m 644 qemu-doc.html qemu-tech.html "$(docdir)"
-+ pc-bios/linux_boot.bin $(datadir)
-+ $(BSD_INSTALL_DATA_DIR) $(docdir)
-+ $(BSD_INSTALL_DATA) qemu-doc.html qemu-tech.html $(docdir)
++ $(BSD_INSTALL_DATA_DIR) "$(docdir)"
++ $(BSD_INSTALL_DATA) qemu-doc.html qemu-tech.html "$(docdir)"
ifndef CONFIG_WIN32
mkdir -p "$(mandir)/man1"
- install qemu.1 qemu-mkcow.1 "$(mandir)/man1"
+ install qemu.1 qemu-img.1 "$(mandir)/man1"
diff --git a/emulators/qemu/patches/patch-ap b/emulators/qemu/patches/patch-ap
index c4fe829f41d..c01987f9ea3 100644
--- a/emulators/qemu/patches/patch-ap
+++ b/emulators/qemu/patches/patch-ap
@@ -1,10 +1,10 @@
-$NetBSD: patch-ap,v 1.1 2004/11/15 11:35:30 xtraeme Exp $
+$NetBSD: patch-ap,v 1.2 2005/05/03 11:18:47 xtraeme Exp $
---- target-sparc/cpu.h 9 Oct 2004 18:08:01 -0000 1.8
-+++ target-sparc/cpu.h 15 Nov 2004 09:09:31 -0000
-@@ -145,8 +145,7 @@
- int cpu_sparc_exec(CPUSPARCState *s);
- int cpu_sparc_close(CPUSPARCState *s);
+--- target-sparc/cpu.h.orig 2005-04-27 22:52:05.000000000 +0200
++++ target-sparc/cpu.h 2005-04-29 01:11:35.000000000 +0200
+@@ -194,8 +194,7 @@
+ cpu_set_cwp(env, _tmp & PSR_CWP & (NWINDOWS - 1)); \
+ } while (0)
-struct siginfo;
-int cpu_sparc_signal_handler(int hostsignum, struct siginfo *info, void *puc);
diff --git a/emulators/qemu/patches/patch-ar b/emulators/qemu/patches/patch-ar
deleted file mode 100644
index 51d4f86f41f..00000000000
--- a/emulators/qemu/patches/patch-ar
+++ /dev/null
@@ -1,11 +0,0 @@
-$NetBSD: patch-ar,v 1.1 2004/11/15 11:35:30 xtraeme Exp $
-
---- target-sparc/op_helper.c 10 Oct 2004 17:46:24 -0000 1.3
-+++ target-sparc/op_helper.c 15 Nov 2004 09:09:31 -0000
-@@ -1,5 +1,4 @@
- #include <math.h>
--#include <fenv.h>
- #include "exec.h"
-
- #ifdef USE_INT_TO_FLOAT_HELPERS
-
diff --git a/emulators/qemu/patches/patch-au b/emulators/qemu/patches/patch-au
new file mode 100644
index 00000000000..951e6b2e964
--- /dev/null
+++ b/emulators/qemu/patches/patch-au
@@ -0,0 +1,76 @@
+$NetBSD: patch-au,v 1.1 2005/05/03 11:18:47 xtraeme Exp $
+
+--- fpu/softfloat-native.h.orig 2005-04-27 22:52:05.000000000 +0200
++++ fpu/softfloat-native.h 2005-04-29 01:23:27.000000000 +0200
+@@ -36,9 +36,9 @@
+ #if defined(_BSD) && !defined(__APPLE__)
+ enum {
+ float_round_nearest_even = FP_RN,
+- float_round_down = FE_RM,
+- float_round_up = FE_RP,
+- float_round_to_zero = FE_RZ
++ float_round_down = FP_RM,
++ float_round_up = FP_RP,
++ float_round_to_zero = FP_RZ
+ };
+ #elif defined(__arm__)
+ enum {
+@@ -143,15 +143,15 @@
+ }
+ INLINE char float32_le_quiet( float32 a, float32 b STATUS_PARAM)
+ {
+- return islessequal(a, b);
++ return __builtin_islessequal(a, b);
+ }
+ INLINE char float32_lt_quiet( float32 a, float32 b STATUS_PARAM)
+ {
+- return isless(a, b);
++ return __builtin_isless(a, b);
+ }
+ INLINE char float32_unordered( float32 a, float32 b STATUS_PARAM)
+ {
+- return isunordered(a, b);
++ return __builtin_isunordered(a, b);
+
+ }
+ char float32_compare( float32, float32 STATUS_PARAM );
+@@ -223,16 +223,16 @@
+ }
+ INLINE char float64_le_quiet( float64 a, float64 b STATUS_PARAM)
+ {
+- return islessequal(a, b);
++ return __builtin_islessequal(a, b);
+ }
+ INLINE char float64_lt_quiet( float64 a, float64 b STATUS_PARAM)
+ {
+- return isless(a, b);
++ return __builtin_isless(a, b);
+
+ }
+ INLINE char float64_unordered( float64 a, float64 b STATUS_PARAM)
+ {
+- return isunordered(a, b);
++ return __builtin_isunordered(a, b);
+
+ }
+ char float64_compare( float64, float64 STATUS_PARAM );
+@@ -304,16 +304,16 @@
+ }
+ INLINE char floatx80_le_quiet( floatx80 a, floatx80 b STATUS_PARAM)
+ {
+- return islessequal(a, b);
++ return __builtin_islessequal(a, b);
+ }
+ INLINE char floatx80_lt_quiet( floatx80 a, floatx80 b STATUS_PARAM)
+ {
+- return isless(a, b);
++ return __builtin_isless(a, b);
+
+ }
+ INLINE char floatx80_unordered( floatx80 a, floatx80 b STATUS_PARAM)
+ {
+- return isunordered(a, b);
++ return __builtin_isunordered(a, b);
+
+ }
+ char floatx80_compare( floatx80, floatx80 STATUS_PARAM );
diff --git a/emulators/qemu/patches/patch-av b/emulators/qemu/patches/patch-av
new file mode 100644
index 00000000000..df0770e4720
--- /dev/null
+++ b/emulators/qemu/patches/patch-av
@@ -0,0 +1,55 @@
+$NetBSD: patch-av,v 1.1 2005/05/03 11:18:47 xtraeme Exp $
+
+--- fpu/softfloat-native.c.orig 2005-04-27 22:52:05.000000000 +0200
++++ fpu/softfloat-native.c 2005-05-03 13:08:02.000000000 +0200
+@@ -25,6 +25,8 @@
+ #if defined(_BSD)
+ #define lrint(d) ((int32_t)rint(d))
+ #define llrint(d) ((int64_t)rint(d))
++#define lrintf(d) ((int32_t)rint(d))
++#define llrintf(d) ((int64_t)rint(d))
+ #endif
+
+ #if defined(__powerpc__)
+@@ -143,11 +145,11 @@
+ }
+ char float32_compare_quiet( float32 a, float32 b STATUS_PARAM )
+ {
+- if (isless(a, b)) {
++ if (__builtin_isless(a, b)) {
+ return -1;
+ } else if (a == b) {
+ return 0;
+- } else if (isgreater(a, b)) {
++ } else if (__builtin_isgreater(a, b)) {
+ return 1;
+ } else {
+ return 2;
+@@ -247,11 +249,11 @@
+ }
+ char float64_compare_quiet( float64 a, float64 b STATUS_PARAM )
+ {
+- if (isless(a, b)) {
++ if (__builtin_isless(a, b)) {
+ return -1;
+ } else if (a == b) {
+ return 0;
+- } else if (isgreater(a, b)) {
++ } else if (__builtin_isgreater(a, b)) {
+ return 1;
+ } else {
+ return 2;
+@@ -328,11 +330,11 @@
+ }
+ char floatx80_compare_quiet( floatx80 a, floatx80 b STATUS_PARAM )
+ {
+- if (isless(a, b)) {
++ if (__builtin_isless(a, b)) {
+ return -1;
+ } else if (a == b) {
+ return 0;
+- } else if (isgreater(a, b)) {
++ } else if (__builtin_isgreater(a, b)) {
+ return 1;
+ } else {
+ return 2;
diff --git a/emulators/qemu/patches/patch-aw b/emulators/qemu/patches/patch-aw
new file mode 100644
index 00000000000..8d60e3b6602
--- /dev/null
+++ b/emulators/qemu/patches/patch-aw
@@ -0,0 +1,19 @@
+$NetBSD: patch-aw,v 1.1 2005/05/03 11:18:47 xtraeme Exp $
+
+Workaround for x86_64 target, patch from Hubert Feyrer.
+
+Index: dyngen.c
+===================================================================
+RCS file: /cvsroot/qemu/qemu/dyngen.c,v
+retrieving revision 1.40
+diff -u -r1.40 dyngen.c
+--- dyngen.c 27 Apr 2005 19:55:58 -0000 1.40
++++ dyngen.c 1 May 2005 20:22:09 -0000
+@@ -1587,6 +1587,7 @@
+ if(!sym_name)
+ continue;
+ if (*sym_name &&
++ !strstart(sym_name, "bswap64", NULL) && /* HF hack */
+ !strstart(sym_name, "__op_param", NULL) &&
+ !strstart(sym_name, "__op_jmp", NULL) &&
+ !strstart(sym_name, "__op_gen_label", NULL)) {