This commit is contained in:
parent
ee61be7864
commit
6a29c84d1f
@ -1,5 +1,5 @@
|
|||||||
--- gcc/config/rs6000/darwin-ldouble.c
|
--- gcc/config/rs6000/darwin-ldouble.c
|
||||||
+++ gcc/config/rs6000/darwin-ldouble.c 2006/05/29 14:30:45
|
+++ gcc/config/rs6000/darwin-ldouble.c
|
||||||
@@ -1,4 +1,208 @@
|
@@ -1,4 +1,208 @@
|
||||||
/* 128-bit long double support routines for Darwin.
|
/* 128-bit long double support routines for Darwin.
|
||||||
+ Copyright (C) 1993, 2003, 2004, 2005, 2006
|
+ Copyright (C) 1993, 2003, 2004, 2005, 2006
|
||||||
@ -210,7 +210,7 @@
|
|||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
--- gcc/config/rs6000/t-newas
|
--- gcc/config/rs6000/t-newas
|
||||||
+++ gcc/config/rs6000/t-newas 2006/05/29 14:30:45
|
+++ gcc/config/rs6000/t-newas
|
||||||
@@ -42,6 +42,9 @@
|
@@ -42,6 +42,9 @@
|
||||||
LIBGCC = stmp-multilib
|
LIBGCC = stmp-multilib
|
||||||
INSTALL_LIBGCC = install-multilib
|
INSTALL_LIBGCC = install-multilib
|
||||||
@ -222,7 +222,7 @@
|
|||||||
EXTRA_PARTS = milli.exp
|
EXTRA_PARTS = milli.exp
|
||||||
milli.exp: $(srcdir)/config/rs6000/milli.exp
|
milli.exp: $(srcdir)/config/rs6000/milli.exp
|
||||||
--- gcc/config/rs6000/t-ppccomm
|
--- gcc/config/rs6000/t-ppccomm
|
||||||
+++ gcc/config/rs6000/t-ppccomm 2006/05/29 14:30:45
|
+++ gcc/config/rs6000/t-ppccomm
|
||||||
@@ -1,6 +1,6 @@
|
@@ -1,6 +1,6 @@
|
||||||
# Common support for PowerPC ELF targets (both EABI and SVR4).
|
# Common support for PowerPC ELF targets (both EABI and SVR4).
|
||||||
|
|
||||||
|
@ -1,35 +0,0 @@
|
|||||||
Index: Makefile.target
|
|
||||||
================================================================================
|
|
||||||
--- Makefile.target
|
|
||||||
+++ Makefile.target
|
|
||||||
@@ -17,7 +17,7 @@
|
|
||||||
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
|
|
||||||
+CFLAGS += -Wall -g -fno-strict-aliasing
|
|
||||||
#CFLAGS+=-Werror
|
|
||||||
LDFLAGS=-g
|
|
||||||
LIBS=
|
|
||||||
@@ -150,8 +150,8 @@
|
|
||||||
|
|
||||||
#########################################################
|
|
||||||
|
|
||||||
-DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
|
|
||||||
-LIBS+=-lm
|
|
||||||
+DEFINES+=-D_GNU_SOURCE -D_BSD_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
|
|
||||||
+LIBS+=-lm -lrt
|
|
||||||
ifndef CONFIG_USER_ONLY
|
|
||||||
LIBS+=-lz
|
|
||||||
endif
|
|
||||||
--- linux-user/signal.c
|
|
||||||
+++ linux-user/signal.c
|
|
||||||
@@ -389,6 +394,8 @@
|
|
||||||
{
|
|
||||||
int sig;
|
|
||||||
target_siginfo_t tinfo;
|
|
||||||
+
|
|
||||||
+ //printf("host_signal_handler, signum %d\n",host_signum);
|
|
||||||
|
|
||||||
/* the CPU emulator uses some host signals to detect exceptions,
|
|
||||||
we we forward to it some signals */
|
|
@ -1,141 +0,0 @@
|
|||||||
--- fpu/softfloat-native.c
|
|
||||||
+++ fpu/softfloat-native.c
|
|
||||||
@@ -149,7 +149,7 @@
|
|
||||||
{
|
|
||||||
return sqrtf(a);
|
|
||||||
}
|
|
||||||
-char float32_compare( float32 a, float32 b STATUS_PARAM )
|
|
||||||
+signed char float32_compare( float32 a, float32 b STATUS_PARAM )
|
|
||||||
{
|
|
||||||
if (a < b) {
|
|
||||||
return -1;
|
|
||||||
@@ -161,7 +161,7 @@
|
|
||||||
return 2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
-char float32_compare_quiet( float32 a, float32 b STATUS_PARAM )
|
|
||||||
+signed char float32_compare_quiet( float32 a, float32 b STATUS_PARAM )
|
|
||||||
{
|
|
||||||
if (isless(a, b)) {
|
|
||||||
return -1;
|
|
||||||
@@ -253,7 +253,7 @@
|
|
||||||
{
|
|
||||||
return sqrt(a);
|
|
||||||
}
|
|
||||||
-char float64_compare( float64 a, float64 b STATUS_PARAM )
|
|
||||||
+signed char float64_compare( float64 a, float64 b STATUS_PARAM )
|
|
||||||
{
|
|
||||||
if (a < b) {
|
|
||||||
return -1;
|
|
||||||
@@ -265,7 +265,7 @@
|
|
||||||
return 2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
-char float64_compare_quiet( float64 a, float64 b STATUS_PARAM )
|
|
||||||
+signed char float64_compare_quiet( float64 a, float64 b STATUS_PARAM )
|
|
||||||
{
|
|
||||||
if (isless(a, b)) {
|
|
||||||
return -1;
|
|
||||||
@@ -334,7 +334,7 @@
|
|
||||||
{
|
|
||||||
return sqrtl(a);
|
|
||||||
}
|
|
||||||
-char floatx80_compare( floatx80 a, floatx80 b STATUS_PARAM )
|
|
||||||
+signed char floatx80_compare( floatx80 a, floatx80 b STATUS_PARAM )
|
|
||||||
{
|
|
||||||
if (a < b) {
|
|
||||||
return -1;
|
|
||||||
@@ -346,7 +346,7 @@
|
|
||||||
return 2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
-char floatx80_compare_quiet( floatx80 a, floatx80 b STATUS_PARAM )
|
|
||||||
+signed char floatx80_compare_quiet( floatx80 a, floatx80 b STATUS_PARAM )
|
|
||||||
{
|
|
||||||
if (isless(a, b)) {
|
|
||||||
return -1;
|
|
||||||
--- fpu/softfloat-native.h
|
|
||||||
+++ fpu/softfloat-native.h
|
|
||||||
@@ -181,8 +181,8 @@
|
|
||||||
return isunordered(a, b);
|
|
||||||
|
|
||||||
}
|
|
||||||
-char float32_compare( float32, float32 STATUS_PARAM );
|
|
||||||
-char float32_compare_quiet( float32, float32 STATUS_PARAM );
|
|
||||||
+signed char float32_compare( float32, float32 STATUS_PARAM );
|
|
||||||
+signed char float32_compare_quiet( float32, float32 STATUS_PARAM );
|
|
||||||
char float32_is_signaling_nan( float32 );
|
|
||||||
|
|
||||||
INLINE float32 float32_abs(float32 a)
|
|
||||||
@@ -262,8 +262,8 @@
|
|
||||||
return isunordered(a, b);
|
|
||||||
|
|
||||||
}
|
|
||||||
-char float64_compare( float64, float64 STATUS_PARAM );
|
|
||||||
-char float64_compare_quiet( float64, float64 STATUS_PARAM );
|
|
||||||
+signed char float64_compare( float64, float64 STATUS_PARAM );
|
|
||||||
+signed char float64_compare_quiet( float64, float64 STATUS_PARAM );
|
|
||||||
char float64_is_signaling_nan( float64 );
|
|
||||||
|
|
||||||
INLINE float64 float64_abs(float64 a)
|
|
||||||
@@ -343,8 +343,8 @@
|
|
||||||
return isunordered(a, b);
|
|
||||||
|
|
||||||
}
|
|
||||||
-char floatx80_compare( floatx80, floatx80 STATUS_PARAM );
|
|
||||||
-char floatx80_compare_quiet( floatx80, floatx80 STATUS_PARAM );
|
|
||||||
+signed char floatx80_compare( floatx80, floatx80 STATUS_PARAM );
|
|
||||||
+signed char floatx80_compare_quiet( floatx80, floatx80 STATUS_PARAM );
|
|
||||||
char floatx80_is_signaling_nan( floatx80 );
|
|
||||||
|
|
||||||
INLINE floatx80 floatx80_abs(floatx80 a)
|
|
||||||
--- fpu/softfloat.c
|
|
||||||
+++ fpu/softfloat.c
|
|
||||||
@@ -5272,7 +5272,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
#define COMPARE(s, nan_exp) \
|
|
||||||
-INLINE char float ## s ## _compare_internal( float ## s a, float ## s b, \
|
|
||||||
+INLINE signed char float ## s ## _compare_internal( float ## s a, float ## s b, \
|
|
||||||
int is_quiet STATUS_PARAM ) \
|
|
||||||
{ \
|
|
||||||
flag aSign, bSign; \
|
|
||||||
@@ -5306,12 +5306,12 @@
|
|
||||||
} \
|
|
||||||
} \
|
|
||||||
\
|
|
||||||
-char float ## s ## _compare( float ## s a, float ## s b STATUS_PARAM ) \
|
|
||||||
+signed char float ## s ## _compare( float ## s a, float ## s b STATUS_PARAM ) \
|
|
||||||
{ \
|
|
||||||
return float ## s ## _compare_internal(a, b, 0 STATUS_VAR); \
|
|
||||||
} \
|
|
||||||
\
|
|
||||||
-char float ## s ## _compare_quiet( float ## s a, float ## s b STATUS_PARAM ) \
|
|
||||||
+signed char float ## s ## _compare_quiet( float ## s a, float ## s b STATUS_PARAM ) \
|
|
||||||
{ \
|
|
||||||
return float ## s ## _compare_internal(a, b, 1 STATUS_VAR); \
|
|
||||||
}
|
|
||||||
--- fpu/softfloat.h
|
|
||||||
+++ fpu/softfloat.h
|
|
||||||
@@ -234,8 +234,8 @@
|
|
||||||
char float32_eq_signaling( float32, float32 STATUS_PARAM );
|
|
||||||
char float32_le_quiet( float32, float32 STATUS_PARAM );
|
|
||||||
char float32_lt_quiet( float32, float32 STATUS_PARAM );
|
|
||||||
-char float32_compare( float32, float32 STATUS_PARAM );
|
|
||||||
-char float32_compare_quiet( float32, float32 STATUS_PARAM );
|
|
||||||
+signed char float32_compare( float32, float32 STATUS_PARAM );
|
|
||||||
+signed char float32_compare_quiet( float32, float32 STATUS_PARAM );
|
|
||||||
char float32_is_signaling_nan( float32 );
|
|
||||||
|
|
||||||
INLINE float32 float32_abs(float32 a)
|
|
||||||
@@ -281,8 +281,8 @@
|
|
||||||
char float64_eq_signaling( float64, float64 STATUS_PARAM );
|
|
||||||
char float64_le_quiet( float64, float64 STATUS_PARAM );
|
|
||||||
char float64_lt_quiet( float64, float64 STATUS_PARAM );
|
|
||||||
-char float64_compare( float64, float64 STATUS_PARAM );
|
|
||||||
-char float64_compare_quiet( float64, float64 STATUS_PARAM );
|
|
||||||
+signed char float64_compare( float64, float64 STATUS_PARAM );
|
|
||||||
+signed char float64_compare_quiet( float64, float64 STATUS_PARAM );
|
|
||||||
char float64_is_signaling_nan( float64 );
|
|
||||||
|
|
||||||
INLINE float64 float64_abs(float64 a)
|
|
@ -1,17 +0,0 @@
|
|||||||
--- target-sparc/op_helper.c
|
|
||||||
+++ target-sparc/op_helper.c
|
|
||||||
@@ -12,12 +12,12 @@
|
|
||||||
#ifdef USE_INT_TO_FLOAT_HELPERS
|
|
||||||
void do_fitos(void)
|
|
||||||
{
|
|
||||||
- FT0 = int32_to_float32(*((int32_t *)&FT1));
|
|
||||||
+ FT0 = int32_to_float32(*((int32_t *)&FT1), &env->fp_status);
|
|
||||||
}
|
|
||||||
|
|
||||||
void do_fitod(void)
|
|
||||||
{
|
|
||||||
- DT0 = int32_to_float64(*((int32_t *)&FT1));
|
|
||||||
+ DT0 = int32_to_float64(*((int32_t *)&FT1), &env->fp_status);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:3b1b28006bcd95412904fe9b09dcdc7d3fb3eb17d071f249229eb04c4938930b
|
|
||||||
size 1567414
|
|
@ -1,26 +1,6 @@
|
|||||||
--- usb-linux.c 2006-07-22 19:23:34.000000000 +0200
|
--- usb-linux.c 2006-07-22 19:23:34.000000000 +0200
|
||||||
+++ usb-linux.c 2007-02-03 09:26:48.000000000 +0100
|
+++ usb-linux.c 2007-02-03 09:26:48.000000000 +0100
|
||||||
@@ -26,9 +26,16 @@
|
@@ -50,7 +50,7 @@
|
||||||
#if defined(__linux__)
|
|
||||||
#include <dirent.h>
|
|
||||||
#include <sys/ioctl.h>
|
|
||||||
-#include <linux/compiler.h>
|
|
||||||
-#include <linux/usbdevice_fs.h>
|
|
||||||
-#include <linux/version.h>
|
|
||||||
+struct usbdevfs_bulktransfer {
|
|
||||||
+ unsigned int ep;
|
|
||||||
+ unsigned int len;
|
|
||||||
+ unsigned int timeout; /* in milliseconds */
|
|
||||||
+ void *data;
|
|
||||||
+};
|
|
||||||
+struct usbdevfs_connectinfo {
|
|
||||||
+ unsigned int devnum;
|
|
||||||
+ unsigned char slow;
|
|
||||||
+};
|
|
||||||
|
|
||||||
/* We redefine it to avoid version problems */
|
|
||||||
struct usb_ctrltransfer {
|
|
||||||
@@ -50,7 +57,7 @@
|
|
||||||
|
|
||||||
//#define DEBUG
|
//#define DEBUG
|
||||||
|
|
||||||
@ -29,47 +9,7 @@
|
|||||||
#define PRODUCT_NAME_SZ 32
|
#define PRODUCT_NAME_SZ 32
|
||||||
|
|
||||||
typedef struct USBHostDevice {
|
typedef struct USBHostDevice {
|
||||||
@@ -100,7 +107,8 @@
|
@@ -257,102 +257,96 @@
|
||||||
ct.wLength = length;
|
|
||||||
ct.timeout = 50;
|
|
||||||
ct.data = data;
|
|
||||||
- ret = ioctl(s->fd, USBDEVFS_CONTROL, &ct);
|
|
||||||
+ //ret = ioctl(s->fd, USBDEVFS_CONTROL, &ct);
|
|
||||||
+ ret = ioctl(s->fd, _IOWR('U', 0, struct usb_ctrltransfer), &ct);
|
|
||||||
if (ret < 0) {
|
|
||||||
switch(errno) {
|
|
||||||
case ETIMEDOUT:
|
|
||||||
@@ -130,7 +138,8 @@
|
|
||||||
bt.len = len;
|
|
||||||
bt.timeout = 50;
|
|
||||||
bt.data = data;
|
|
||||||
- ret = ioctl(s->fd, USBDEVFS_BULK, &bt);
|
|
||||||
+ //ret = ioctl(s->fd, USBDEVFS_BULK, &bt);
|
|
||||||
+ ret = ioctl(s->fd, _IOWR('U', 2, struct usbdevfs_bulktransfer), &bt);
|
|
||||||
if (ret < 0) {
|
|
||||||
switch(errno) {
|
|
||||||
case ETIMEDOUT:
|
|
||||||
@@ -210,7 +219,8 @@
|
|
||||||
|
|
||||||
/* XXX: only grab if all interfaces are free */
|
|
||||||
interface = 0;
|
|
||||||
- ret = ioctl(fd, USBDEVFS_CLAIMINTERFACE, &interface);
|
|
||||||
+ //ret = ioctl(fd, USBDEVFS_CLAIMINTERFACE, &interface);
|
|
||||||
+ ret = ioctl(fd, _IOR('U', 15, unsigned int), &interface);
|
|
||||||
if (ret < 0) {
|
|
||||||
if (errno == EBUSY) {
|
|
||||||
fprintf(stderr, "usb_host: device already grabbed\n");
|
|
||||||
@@ -222,7 +232,8 @@
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
- ret = ioctl(fd, USBDEVFS_CONNECTINFO, &ci);
|
|
||||||
+ //ret = ioctl(fd, USBDEVFS_CONNECTINFO, &ci);
|
|
||||||
+ ret = ioctl(fd, _IOW('U', 17, struct usbdevfs_connectinfo), &ci);
|
|
||||||
if (ret < 0) {
|
|
||||||
perror("USBDEVFS_CONNECTINFO");
|
|
||||||
goto fail;
|
|
||||||
@@ -257,102 +268,96 @@
|
|
||||||
return (USBDevice *)dev;
|
return (USBDevice *)dev;
|
||||||
}
|
}
|
||||||
|
|
@ -1,14 +1,6 @@
|
|||||||
--- linux-user/arm/syscall_nr.h
|
|
||||||
+++ linux-user/arm/syscall_nr.h
|
|
||||||
@@ -259,4 +259,5 @@
|
|
||||||
/* 254 for set_thread_area */
|
|
||||||
/* 255 for get_thread_area */
|
|
||||||
/* 256 for set_tid_address */
|
|
||||||
+#define TARGET_NR_clock_gettime (263)
|
|
||||||
#define TARGET_NR_utimes (269)
|
|
||||||
--- linux-user/syscall.c
|
--- linux-user/syscall.c
|
||||||
+++ linux-user/syscall.c
|
+++ linux-user/syscall.c
|
||||||
@@ -138,6 +138,7 @@
|
@@ -140,6 +140,7 @@
|
||||||
#define __NR_sys_getdents __NR_getdents
|
#define __NR_sys_getdents __NR_getdents
|
||||||
#define __NR_sys_getdents64 __NR_getdents64
|
#define __NR_sys_getdents64 __NR_getdents64
|
||||||
#define __NR_sys_rt_sigqueueinfo __NR_rt_sigqueueinfo
|
#define __NR_sys_rt_sigqueueinfo __NR_rt_sigqueueinfo
|
||||||
@ -16,7 +8,7 @@
|
|||||||
|
|
||||||
#if defined(__alpha__) || defined (__ia64__) || defined(__x86_64__)
|
#if defined(__alpha__) || defined (__ia64__) || defined(__x86_64__)
|
||||||
#define __NR__llseek __NR_lseek
|
#define __NR__llseek __NR_lseek
|
||||||
@@ -157,6 +158,7 @@
|
@@ -159,6 +160,7 @@
|
||||||
_syscall5(int, _llseek, uint, fd, ulong, hi, ulong, lo,
|
_syscall5(int, _llseek, uint, fd, ulong, hi, ulong, lo,
|
||||||
loff_t *, res, uint, wh);
|
loff_t *, res, uint, wh);
|
||||||
_syscall3(int,sys_rt_sigqueueinfo,int,pid,int,sig,siginfo_t *,uinfo)
|
_syscall3(int,sys_rt_sigqueueinfo,int,pid,int,sig,siginfo_t *,uinfo)
|
||||||
@ -24,7 +16,7 @@
|
|||||||
#ifdef __NR_exit_group
|
#ifdef __NR_exit_group
|
||||||
_syscall1(int,exit_group,int,error_code)
|
_syscall1(int,exit_group,int,error_code)
|
||||||
#endif
|
#endif
|
||||||
@@ -170,6 +172,7 @@
|
@@ -172,6 +174,7 @@
|
||||||
extern int setresgid(gid_t, gid_t, gid_t);
|
extern int setresgid(gid_t, gid_t, gid_t);
|
||||||
extern int getresgid(gid_t *, gid_t *, gid_t *);
|
extern int getresgid(gid_t *, gid_t *, gid_t *);
|
||||||
extern int setgroups(int, gid_t *);
|
extern int setgroups(int, gid_t *);
|
||||||
@ -32,7 +24,7 @@
|
|||||||
|
|
||||||
static inline long get_errno(long ret)
|
static inline long get_errno(long ret)
|
||||||
{
|
{
|
||||||
@@ -2593,7 +2596,9 @@
|
@@ -2709,7 +2712,9 @@
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TARGET_NR_uselib:
|
case TARGET_NR_uselib:
|
||||||
@ -43,7 +35,7 @@
|
|||||||
case TARGET_NR_swapon:
|
case TARGET_NR_swapon:
|
||||||
p = lock_user_string(arg1);
|
p = lock_user_string(arg1);
|
||||||
ret = get_errno(swapon(p, arg2));
|
ret = get_errno(swapon(p, arg2));
|
||||||
@@ -2833,7 +2838,9 @@
|
@@ -2949,7 +2954,9 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
case TARGET_NR_syslog:
|
case TARGET_NR_syslog:
|
||||||
@ -54,7 +46,7 @@
|
|||||||
case TARGET_NR_setitimer:
|
case TARGET_NR_setitimer:
|
||||||
{
|
{
|
||||||
struct itimerval value, ovalue, *pvalue;
|
struct itimerval value, ovalue, *pvalue;
|
||||||
@@ -3708,7 +3715,9 @@
|
@@ -3824,7 +3831,9 @@
|
||||||
goto unimplemented;
|
goto unimplemented;
|
||||||
#ifdef TARGET_NR_mincore
|
#ifdef TARGET_NR_mincore
|
||||||
case TARGET_NR_mincore:
|
case TARGET_NR_mincore:
|
||||||
@ -65,7 +57,7 @@
|
|||||||
#endif
|
#endif
|
||||||
#ifdef TARGET_NR_madvise
|
#ifdef TARGET_NR_madvise
|
||||||
case TARGET_NR_madvise:
|
case TARGET_NR_madvise:
|
||||||
@@ -3799,7 +3808,8 @@
|
@@ -3921,7 +3930,8 @@
|
||||||
ret = get_errno(gettid());
|
ret = get_errno(gettid());
|
||||||
break;
|
break;
|
||||||
case TARGET_NR_readahead:
|
case TARGET_NR_readahead:
|
||||||
@ -75,7 +67,7 @@
|
|||||||
#ifdef TARGET_NR_setxattr
|
#ifdef TARGET_NR_setxattr
|
||||||
case TARGET_NR_setxattr:
|
case TARGET_NR_setxattr:
|
||||||
case TARGET_NR_lsetxattr:
|
case TARGET_NR_lsetxattr:
|
||||||
@@ -3824,6 +3834,22 @@
|
@@ -3946,6 +3956,22 @@
|
||||||
case TARGET_NR_getdomainname:
|
case TARGET_NR_getdomainname:
|
||||||
goto unimplemented_nowarn;
|
goto unimplemented_nowarn;
|
||||||
#endif
|
#endif
|
10
qemu-0.9.0-usbheaders.patch
Normal file
10
qemu-0.9.0-usbheaders.patch
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
--- usb-linux.c 2007/02/15 13:02:17 1.21
|
||||||
|
+++ usb-linux.c 2007/02/19 13:42:38
|
||||||
|
@@ -26,6 +26,7 @@
|
||||||
|
#if defined(__linux__)
|
||||||
|
#include <dirent.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
+#include <linux/compiler.h>
|
||||||
|
#include <linux/usbdevice_fs.h>
|
||||||
|
#include <linux/version.h>
|
||||||
|
|
35
qemu-0.9.0.patch
Normal file
35
qemu-0.9.0.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
--- linux-user/signal.c
|
||||||
|
+++ linux-user/signal.c 2007/02/12 12:47:45
|
||||||
|
@@ -389,6 +389,8 @@
|
||||||
|
{
|
||||||
|
int sig;
|
||||||
|
target_siginfo_t tinfo;
|
||||||
|
+
|
||||||
|
+ //printf("host_signal_handler, signum %d\n",host_signum);
|
||||||
|
|
||||||
|
/* the CPU emulator uses some host signals to detect exceptions,
|
||||||
|
we we forward to it some signals */
|
||||||
|
--- Makefile
|
||||||
|
+++ Makefile 2007/02/12 12:48:38
|
||||||
|
@@ -27,7 +27,7 @@
|
||||||
|
ifndef CONFIG_DARWIN
|
||||||
|
ifndef CONFIG_WIN32
|
||||||
|
ifndef CONFIG_SOLARIS
|
||||||
|
-LIBS+=-lrt
|
||||||
|
+LIBS+=-lrt -lpthread
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
--- Makefile.target
|
||||||
|
+++ Makefile.target 2007/02/12 12:47:45
|
||||||
|
@@ -181,8 +181,8 @@
|
||||||
|
|
||||||
|
#########################################################
|
||||||
|
|
||||||
|
-CPPFLAGS+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
|
||||||
|
-LIBS+=-lm
|
||||||
|
+CPPFLAGS+=-D_GNU_SOURCE -D_BSD_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
|
||||||
|
+LIBS+=-lm -lrt -lpthread
|
||||||
|
ifndef CONFIG_USER_ONLY
|
||||||
|
LIBS+=-lz
|
||||||
|
endif
|
3
qemu-0.9.0.tar.bz2
Normal file
3
qemu-0.9.0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1ce3d34e3fafde6a3802f3c6317dac14f6b482fa918df0d3af54edd8b0314242
|
||||||
|
size 1625107
|
21
qemu.changes
21
qemu.changes
@ -1,3 +1,24 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Feb 20 15:05:06 CET 2007 - uli@suse.de
|
||||||
|
|
||||||
|
- added better fix by Robert Schiele (bug #241950)
|
||||||
|
- update -> 0.9.0
|
||||||
|
- Support for relative paths in backing files for disk images
|
||||||
|
- Async file I/O API
|
||||||
|
- New qcow2 disk image format
|
||||||
|
- Support of multiple VM snapshots
|
||||||
|
- Linux: specific host CDROM and floppy support
|
||||||
|
- SMM support
|
||||||
|
- Moved PCI init, MP table init and ACPI table init to Bochs BIOS
|
||||||
|
- Support for MIPS32 Release 2 instruction set (Thiemo Seufer)
|
||||||
|
- MIPS Malta system emulation (Aurelien Jarno, Stefan Weil)
|
||||||
|
- Darwin userspace emulation (Pierre d'Herbemont)
|
||||||
|
- m68k user support (Paul Brook)
|
||||||
|
- several x86 and x86_64 emulation fixes
|
||||||
|
- Mouse relative offset VNC extension (Anthony Liguori)
|
||||||
|
- PXE boot support (Anthony Liguori)
|
||||||
|
- '-daemonize' option (Anthony Liguori)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Feb 6 11:42:01 CET 2007 - uli@suse.de
|
Tue Feb 6 11:42:01 CET 2007 - uli@suse.de
|
||||||
|
|
||||||
|
71
qemu.spec
71
qemu.spec
@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# spec file for package qemu (Version 0.8.2)
|
# spec file for package qemu (Version 0.9.0)
|
||||||
#
|
#
|
||||||
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
# This file and all modifications and additions to the pristine
|
# This file and all modifications and additions to the pristine
|
||||||
@ -16,21 +16,20 @@ URL: http://fabrice.bellard.free.fr/qemu/
|
|||||||
License: BSD License and BSD-like, GNU General Public License (GPL)
|
License: BSD License and BSD-like, GNU General Public License (GPL)
|
||||||
Group: System/Emulators/Other
|
Group: System/Emulators/Other
|
||||||
Summary: Universal CPU emulator
|
Summary: Universal CPU emulator
|
||||||
Version: 0.8.2
|
Version: 0.9.0
|
||||||
Release: 34
|
Release: 1
|
||||||
Source: %name-%version.tar.bz2
|
Source: %name-%version.tar.bz2
|
||||||
Patch1: qemu-0.7.0-binfmt.patch
|
Patch1: qemu-0.7.0-binfmt.patch
|
||||||
Patch5: qemu-0.7.0-sigaltstackhack.patch
|
Patch5: qemu-0.7.0-sigaltstackhack.patch
|
||||||
Patch6: qemu-0.7.0-amd64.patch
|
Patch6: qemu-0.7.0-amd64.patch
|
||||||
Patch8: qemu-0.7.1.patch
|
Patch8: qemu-0.9.0.patch
|
||||||
Patch10: linkerscripts.patch
|
Patch10: linkerscripts.patch
|
||||||
Patch11: qemu-0.7.2-kqemu.patch
|
Patch11: qemu-0.7.2-kqemu.patch
|
||||||
Patch14: qemu-0.7.1-jobsignals.patch
|
Patch14: qemu-0.7.1-jobsignals.patch
|
||||||
Patch15: qemu-0.7.1-syscalls.patch
|
Patch15: qemu-0.9.0-syscalls.patch
|
||||||
Patch16: qemu-0.7.1-armfpaex.patch
|
Patch16: qemu-0.7.1-armfpaex.patch
|
||||||
Patch17: qemu-0.8.2-sparconppc.patch
|
Patch19: qemu-0.9.0-nousbdevfs.patch
|
||||||
Patch18: qemu-0.8.2-char-signedness.patch
|
Patch20: qemu-0.9.0-usbheaders.patch
|
||||||
Patch19: qemu-0.8.2-nousbdevfs.patch
|
|
||||||
# GCC 3 sources/patches
|
# GCC 3 sources/patches
|
||||||
Source601: gcc-3.3.5.tar.bz2
|
Source601: gcc-3.3.5.tar.bz2
|
||||||
Patch600: gcc-gcc-3.3.5-hammer.patch.bz2
|
Patch600: gcc-gcc-3.3.5-hammer.patch.bz2
|
||||||
@ -96,9 +95,8 @@ Authors:
|
|||||||
%patch14
|
%patch14
|
||||||
%patch15
|
%patch15
|
||||||
%patch16
|
%patch16
|
||||||
%patch17
|
|
||||||
%patch18
|
|
||||||
%patch19
|
%patch19
|
||||||
|
%patch20
|
||||||
cd gcc-3.3.5
|
cd gcc-3.3.5
|
||||||
%patch600
|
%patch600
|
||||||
%patch601
|
%patch601
|
||||||
@ -157,12 +155,17 @@ make bootstrap-lean BOOT_CFLAGS="$QEMU_OPT_FLAGS" STAGE1_CFLAGS="$QEMU_OPT_FLAGS
|
|||||||
make install
|
make install
|
||||||
cd ..
|
cd ..
|
||||||
# build QEMU
|
# build QEMU
|
||||||
|
# kqemu target
|
||||||
%ifarch x86_64
|
%ifarch x86_64
|
||||||
target_list_kqemu="x86_64-softmmu"
|
target_list_kqemu="x86_64-softmmu"
|
||||||
%else
|
%else
|
||||||
target_list_kqemu="i386-softmmu"
|
target_list_kqemu="i386-softmmu"
|
||||||
%endif
|
%endif
|
||||||
target_list="ppc-softmmu sparc-softmmu mips-softmmu arm-softmmu"
|
# targets for all platforms
|
||||||
|
target_list="ppc-softmmu sparc-softmmu mips-softmmu mipsel-softmmu arm-softmmu"
|
||||||
|
# AMD64 -> i386 without kqemu
|
||||||
|
# x86 -> AMD64 without kqemu
|
||||||
|
# others -> both without kqemu
|
||||||
%ifarch x86_64
|
%ifarch x86_64
|
||||||
target_list="$target_list i386-softmmu"
|
target_list="$target_list i386-softmmu"
|
||||||
%else
|
%else
|
||||||
@ -172,27 +175,31 @@ target_list="$target_list x86_64-softmmu"
|
|||||||
target_list="$target_list i386-softmmu x86_64-softmmu"
|
target_list="$target_list i386-softmmu x86_64-softmmu"
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
# linux-user targets
|
||||||
target_list_user=""
|
target_list_user=""
|
||||||
%ifnarch %ix86 x86_64
|
%ifnarch %ix86 x86_64
|
||||||
target_list_user="$target_list_user i386-user"
|
target_list_user="$target_list_user i386-linux-user"
|
||||||
%endif
|
%endif
|
||||||
%ifnarch armv4l
|
%ifnarch armv4l
|
||||||
target_list_user="$target_list_user arm-user"
|
target_list_user="$target_list_user arm-linux-user"
|
||||||
%endif
|
%endif
|
||||||
%ifnarch armv4b
|
%ifnarch armv4b
|
||||||
target_list_user="$target_list_user armeb-user"
|
target_list_user="$target_list_user armeb-linux-user"
|
||||||
%endif
|
%endif
|
||||||
%ifnarch sparc sparc64
|
%ifnarch sparc sparc64
|
||||||
target_list_user="$target_list_user sparc-user"
|
target_list_user="$target_list_user sparc-linux-user"
|
||||||
%endif
|
%endif
|
||||||
%ifnarch ppc ppc64
|
%ifnarch ppc ppc64
|
||||||
target_list_user="$target_list_user ppc-user"
|
target_list_user="$target_list_user ppc-linux-user"
|
||||||
%endif
|
%endif
|
||||||
%ifnarch mips
|
%ifnarch mips
|
||||||
target_list_user="$target_list_user mips-user"
|
target_list_user="$target_list_user mips-linux-user"
|
||||||
%endif
|
%endif
|
||||||
%ifnarch mipsel
|
%ifnarch mipsel
|
||||||
target_list_user="$target_list_user mipsel-user"
|
target_list_user="$target_list_user mipsel-linux-user"
|
||||||
|
%endif
|
||||||
|
%ifnarch m68k
|
||||||
|
target_list_user="$target_list_user m68k-linux-user"
|
||||||
%endif
|
%endif
|
||||||
QEMU_OPT_FLAGS="$QEMU_OPT_FLAGS -fno-strict-aliasing"
|
QEMU_OPT_FLAGS="$QEMU_OPT_FLAGS -fno-strict-aliasing"
|
||||||
mkdir -p dynamic
|
mkdir -p dynamic
|
||||||
@ -203,7 +210,7 @@ mkdir -p dynamic
|
|||||||
--target-list="$target_list_kqemu" --cc=%qemucc \
|
--target-list="$target_list_kqemu" --cc=%qemucc \
|
||||||
--enable-adlib --extra-cflags="$QEMU_OPT_FLAGS"
|
--enable-adlib --extra-cflags="$QEMU_OPT_FLAGS"
|
||||||
echo '#define USE_KQEMU 1' >>config-host.h
|
echo '#define USE_KQEMU 1' >>config-host.h
|
||||||
make %{?jobs:-j%{jobs}}
|
make #%{?jobs:-j%{jobs}}
|
||||||
mv */qemu */qemu-* dynamic || true
|
mv */qemu */qemu-* dynamic || true
|
||||||
make clean
|
make clean
|
||||||
%endif
|
%endif
|
||||||
@ -212,7 +219,7 @@ make clean
|
|||||||
--interp-prefix=/usr/share/qemu/qemu-i386 \
|
--interp-prefix=/usr/share/qemu/qemu-i386 \
|
||||||
--target-list="$target_list" --cc=%qemucc \
|
--target-list="$target_list" --cc=%qemucc \
|
||||||
--enable-adlib --extra-cflags="$QEMU_OPT_FLAGS"
|
--enable-adlib --extra-cflags="$QEMU_OPT_FLAGS"
|
||||||
make %{?jobs:-j%{jobs}}
|
make #%{?jobs:-j%{jobs}}
|
||||||
mv */qemu *-*/qemu-* dynamic || true
|
mv */qemu *-*/qemu-* dynamic || true
|
||||||
make clean
|
make clean
|
||||||
# build userland emus
|
# build userland emus
|
||||||
@ -220,7 +227,7 @@ make clean
|
|||||||
--interp-prefix=/usr/share/qemu/qemu-i386 \
|
--interp-prefix=/usr/share/qemu/qemu-i386 \
|
||||||
--target-list="$target_list_user" --cc=%qemucc \
|
--target-list="$target_list_user" --cc=%qemucc \
|
||||||
--static --extra-cflags="$QEMU_OPT_FLAGS"
|
--static --extra-cflags="$QEMU_OPT_FLAGS"
|
||||||
make %{?jobs:-j%{jobs}}
|
make #%{?jobs:-j%{jobs}}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
install -d -m 755 $RPM_BUILD_ROOT/usr/bin
|
install -d -m 755 $RPM_BUILD_ROOT/usr/bin
|
||||||
@ -251,7 +258,7 @@ rm -rf %{gcc33tmp}
|
|||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
%doc COPYING COPYING.LIB Changelog README README.distrib TODO VERSION qemu-doc.html
|
%doc COPYING COPYING.LIB Changelog README TODO VERSION qemu-doc.html
|
||||||
%ifnarch alpha
|
%ifnarch alpha
|
||||||
/usr/bin/qemu
|
/usr/bin/qemu
|
||||||
%endif
|
%endif
|
||||||
@ -263,7 +270,25 @@ rm -rf %{gcc33tmp}
|
|||||||
%dir /emul/ia32-linux
|
%dir /emul/ia32-linux
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog -n qemu
|
%changelog
|
||||||
|
* Tue Feb 20 2007 - uli@suse.de
|
||||||
|
- added better fix by Robert Schiele (bug #241950)
|
||||||
|
- update -> 0.9.0
|
||||||
|
- Support for relative paths in backing files for disk images
|
||||||
|
- Async file I/O API
|
||||||
|
- New qcow2 disk image format
|
||||||
|
- Support of multiple VM snapshots
|
||||||
|
- Linux: specific host CDROM and floppy support
|
||||||
|
- SMM support
|
||||||
|
- Moved PCI init, MP table init and ACPI table init to Bochs BIOS
|
||||||
|
- Support for MIPS32 Release 2 instruction set (Thiemo Seufer)
|
||||||
|
- MIPS Malta system emulation (Aurelien Jarno, Stefan Weil)
|
||||||
|
- Darwin userspace emulation (Pierre d'Herbemont)
|
||||||
|
- m68k user support (Paul Brook)
|
||||||
|
- several x86 and x86_64 emulation fixes
|
||||||
|
- Mouse relative offset VNC extension (Anthony Liguori)
|
||||||
|
- PXE boot support (Anthony Liguori)
|
||||||
|
- '-daemonize' option (Anthony Liguori)
|
||||||
* Tue Feb 06 2007 - uli@suse.de
|
* Tue Feb 06 2007 - uli@suse.de
|
||||||
- added fix by Robert Schiele to work without usbdevfs
|
- added fix by Robert Schiele to work without usbdevfs
|
||||||
(bug #241950)
|
(bug #241950)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user