From d8b5ee132c4e5fe3b78ceab1468aa6869df2b60c Mon Sep 17 00:00:00 2001 From: Timothy Redaelli Date: Thu, 22 Feb 2007 11:02:41 +0000 Subject: Remove qemu from overlay svn path=/; revision=101 --- app-emulation/qemu-softmmu/Manifest | 20 -- .../qemu-softmmu/files/digest-qemu-softmmu-0.8.0 | 6 - .../files/digest-qemu-softmmu-0.8.0.20060329 | 3 - .../qemu-softmmu/files/digest-qemu-softmmu-0.8.1 | 6 - .../files/digest-qemu-softmmu-0.8.1-r1 | 6 - .../qemu-softmmu/files/digest-qemu-softmmu-0.8.2 | 3 - .../files/digest-qemu-softmmu-0.8.2-r1 | 3 - .../qemu-softmmu/files/qemu-0.8.0-gcc4-hacks.patch | 126 --------- .../qemu-softmmu/files/qemu-0.8.0-gcc4-opts.patch | 41 --- .../qemu-softmmu/files/qemu-0.8.2-sparc-fp.patch | 18 -- .../qemu-softmmu/qemu-softmmu-0.8.2-r1.ebuild | 103 ------- app-emulation/qemu-user/Manifest | 28 -- .../qemu-user/files/digest-qemu-user-0.8.0 | 3 - .../files/digest-qemu-user-0.8.0.20060329 | 3 - .../qemu-user/files/digest-qemu-user-0.8.1 | 3 - .../qemu-user/files/digest-qemu-user-0.8.2 | 3 - .../qemu-user/files/qemu-0.7.0-ppc-linker.patch | 297 --------------------- .../qemu-user/files/qemu-0.8.0-gcc4-hacks.patch | 118 -------- .../qemu-user/files/qemu-0.8.0-stwbrx.patch | 15 -- .../qemu-user/files/qemu-ppc-dirty-hack.patch | 12 - .../qemu-user/files/qemu-user-0.7.0-errno.patch | 11 - app-emulation/qemu-user/qemu-user-0.8.2.ebuild | 87 ------ 22 files changed, 915 deletions(-) delete mode 100644 app-emulation/qemu-softmmu/Manifest delete mode 100644 app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.0 delete mode 100644 app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.0.20060329 delete mode 100644 app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.1 delete mode 100644 app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.1-r1 delete mode 100644 app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.2 delete mode 100644 app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.2-r1 delete mode 100644 app-emulation/qemu-softmmu/files/qemu-0.8.0-gcc4-hacks.patch delete mode 100644 app-emulation/qemu-softmmu/files/qemu-0.8.0-gcc4-opts.patch delete mode 100644 app-emulation/qemu-softmmu/files/qemu-0.8.2-sparc-fp.patch delete mode 100644 app-emulation/qemu-softmmu/qemu-softmmu-0.8.2-r1.ebuild delete mode 100644 app-emulation/qemu-user/Manifest delete mode 100644 app-emulation/qemu-user/files/digest-qemu-user-0.8.0 delete mode 100644 app-emulation/qemu-user/files/digest-qemu-user-0.8.0.20060329 delete mode 100644 app-emulation/qemu-user/files/digest-qemu-user-0.8.1 delete mode 100644 app-emulation/qemu-user/files/digest-qemu-user-0.8.2 delete mode 100644 app-emulation/qemu-user/files/qemu-0.7.0-ppc-linker.patch delete mode 100644 app-emulation/qemu-user/files/qemu-0.8.0-gcc4-hacks.patch delete mode 100644 app-emulation/qemu-user/files/qemu-0.8.0-stwbrx.patch delete mode 100644 app-emulation/qemu-user/files/qemu-ppc-dirty-hack.patch delete mode 100644 app-emulation/qemu-user/files/qemu-user-0.7.0-errno.patch delete mode 100644 app-emulation/qemu-user/qemu-user-0.8.2.ebuild diff --git a/app-emulation/qemu-softmmu/Manifest b/app-emulation/qemu-softmmu/Manifest deleted file mode 100644 index 6350688..0000000 --- a/app-emulation/qemu-softmmu/Manifest +++ /dev/null @@ -1,20 +0,0 @@ -AUX qemu-0.8.0-gcc4-hacks.patch 4634 RMD160 1d9d3f188c7c94e86794db2aae1336472852cadf SHA1 d193cc7b5793d80ab4540c7e24e6e75a246babb6 SHA256 dad86d110f86f6edc307d0073546ed583d3f4109784ba06afebbd1126dba0f38 -MD5 5c525594aaac2ffa5e676a2b196ffd82 files/qemu-0.8.0-gcc4-hacks.patch 4634 -RMD160 1d9d3f188c7c94e86794db2aae1336472852cadf files/qemu-0.8.0-gcc4-hacks.patch 4634 -SHA256 dad86d110f86f6edc307d0073546ed583d3f4109784ba06afebbd1126dba0f38 files/qemu-0.8.0-gcc4-hacks.patch 4634 -AUX qemu-0.8.0-gcc4-opts.patch 1661 RMD160 409b9670b8c910c5fc80cf52c5ec35dad6ae7eee SHA1 53365f8e018f11f599822b62d1271250364b0b4d SHA256 bc3f100113007809a247a79464913f9b37bed49e821c41c1defdf08d2fa080dc -MD5 67e6ae7ea59a24ed2bbc63c6ccdcfee9 files/qemu-0.8.0-gcc4-opts.patch 1661 -RMD160 409b9670b8c910c5fc80cf52c5ec35dad6ae7eee files/qemu-0.8.0-gcc4-opts.patch 1661 -SHA256 bc3f100113007809a247a79464913f9b37bed49e821c41c1defdf08d2fa080dc files/qemu-0.8.0-gcc4-opts.patch 1661 -AUX qemu-0.8.2-sparc-fp.patch 591 RMD160 bbce6e754d32e8e5cb4c28e534b7a8ae27bee4b7 SHA1 785541312b7edacd279c81ce6df550e1a4f5839b SHA256 839166847b3b39fa481b49e27110aaf207067cc5acecaf55131d2ec31d92ad59 -MD5 b3e7fd1797acd3ca68ffa4a31750d518 files/qemu-0.8.2-sparc-fp.patch 591 -RMD160 bbce6e754d32e8e5cb4c28e534b7a8ae27bee4b7 files/qemu-0.8.2-sparc-fp.patch 591 -SHA256 839166847b3b39fa481b49e27110aaf207067cc5acecaf55131d2ec31d92ad59 files/qemu-0.8.2-sparc-fp.patch 591 -DIST qemu-0.8.2.tar.gz 1810909 RMD160 715c24997330352aa675cd7279731cec251f833a SHA1 d775239a545e7d0c5b677660a2122df590afde6d SHA256 2a20d811296c859d678bdd002222aa7ca7951a641327234f3af144e822d078f3 -EBUILD qemu-softmmu-0.8.2-r1.ebuild 2793 RMD160 748a21b87416b73514573753f6fa7eabe3be6f7e SHA1 c38de77bf312cf3b7f7aa4f488d40c1ca482b31a SHA256 7a1d126e9f3b37141c74bc5213e3d002f07e118d559c3cfe07afacc946ede996 -MD5 f3e65d6804af16ede4341d93af450549 qemu-softmmu-0.8.2-r1.ebuild 2793 -RMD160 748a21b87416b73514573753f6fa7eabe3be6f7e qemu-softmmu-0.8.2-r1.ebuild 2793 -SHA256 7a1d126e9f3b37141c74bc5213e3d002f07e118d559c3cfe07afacc946ede996 qemu-softmmu-0.8.2-r1.ebuild 2793 -MD5 e9b66fd821b0760086e3574d3a90398c files/digest-qemu-softmmu-0.8.2-r1 235 -RMD160 1690afc2131b50cf62fe141bf5b621687fb107e3 files/digest-qemu-softmmu-0.8.2-r1 235 -SHA256 f29c0addbe47b46f7c4ab7d2cb4965bac24abdaa456bc0815d5d07a407f7450b files/digest-qemu-softmmu-0.8.2-r1 235 diff --git a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.0 b/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.0 deleted file mode 100644 index cb14d07..0000000 --- a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.0 +++ /dev/null @@ -1,6 +0,0 @@ -MD5 02cfdecda90458d6393781496ec6b48b kqemu-0.7.2.tar.gz 79314 -RMD160 cdb154d51eb616d6ad9924da0175276a655edba7 kqemu-0.7.2.tar.gz 79314 -SHA256 4158b2c67603f5256a78d0065d715bde068a457aa58bbfef12dda20fe7f7ad8b kqemu-0.7.2.tar.gz 79314 -MD5 eb175b26583280706fe7e4d8910d320d qemu-0.8.0.tar.gz 1497965 -RMD160 3fc6da938f75364d0805ca0ecf8cb84a4b546dc7 qemu-0.8.0.tar.gz 1497965 -SHA256 de388539ce86971a2cbe8474fca8b6160898c95772e3e6e08a7794d48db32a61 qemu-0.8.0.tar.gz 1497965 diff --git a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.0.20060329 b/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.0.20060329 deleted file mode 100644 index 1fd8e2b..0000000 --- a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.0.20060329 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 0a0e5d61666f951917127ea4c41f3cad qemu-0.8.0.20060329.tar.bz2 1325034 -RMD160 a6ec15e1b08dd6e2dd88d953bfa31e3db1dc212e qemu-0.8.0.20060329.tar.bz2 1325034 -SHA256 4ccb27692ffaee119728442298da84198d6319de79a18d497d14604e140c3eb0 qemu-0.8.0.20060329.tar.bz2 1325034 diff --git a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.1 b/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.1 deleted file mode 100644 index ecd1814..0000000 --- a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.1 +++ /dev/null @@ -1,6 +0,0 @@ -MD5 02cfdecda90458d6393781496ec6b48b kqemu-0.7.2.tar.gz 79314 -RMD160 cdb154d51eb616d6ad9924da0175276a655edba7 kqemu-0.7.2.tar.gz 79314 -SHA256 4158b2c67603f5256a78d0065d715bde068a457aa58bbfef12dda20fe7f7ad8b kqemu-0.7.2.tar.gz 79314 -MD5 67d924324a5ab79d017bd97a1e767285 qemu-0.8.1.tar.gz 1623264 -RMD160 04d163d4792bbea39fc0b1e52af124cdb7e907dc qemu-0.8.1.tar.gz 1623264 -SHA256 a1f83666f5c05eaee9bfc608a3a5034ad95d0fd3c99937bb399bf9235a6aa0c9 qemu-0.8.1.tar.gz 1623264 diff --git a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.1-r1 b/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.1-r1 deleted file mode 100644 index ecd1814..0000000 --- a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.1-r1 +++ /dev/null @@ -1,6 +0,0 @@ -MD5 02cfdecda90458d6393781496ec6b48b kqemu-0.7.2.tar.gz 79314 -RMD160 cdb154d51eb616d6ad9924da0175276a655edba7 kqemu-0.7.2.tar.gz 79314 -SHA256 4158b2c67603f5256a78d0065d715bde068a457aa58bbfef12dda20fe7f7ad8b kqemu-0.7.2.tar.gz 79314 -MD5 67d924324a5ab79d017bd97a1e767285 qemu-0.8.1.tar.gz 1623264 -RMD160 04d163d4792bbea39fc0b1e52af124cdb7e907dc qemu-0.8.1.tar.gz 1623264 -SHA256 a1f83666f5c05eaee9bfc608a3a5034ad95d0fd3c99937bb399bf9235a6aa0c9 qemu-0.8.1.tar.gz 1623264 diff --git a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.2 b/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.2 deleted file mode 100644 index 767c6c8..0000000 --- a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.2 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 5b3a89eb2f256a8a6f3bb07f7b3f1b07 qemu-0.8.2.tar.gz 1810909 -RMD160 715c24997330352aa675cd7279731cec251f833a qemu-0.8.2.tar.gz 1810909 -SHA256 2a20d811296c859d678bdd002222aa7ca7951a641327234f3af144e822d078f3 qemu-0.8.2.tar.gz 1810909 diff --git a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.2-r1 b/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.2-r1 deleted file mode 100644 index 767c6c8..0000000 --- a/app-emulation/qemu-softmmu/files/digest-qemu-softmmu-0.8.2-r1 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 5b3a89eb2f256a8a6f3bb07f7b3f1b07 qemu-0.8.2.tar.gz 1810909 -RMD160 715c24997330352aa675cd7279731cec251f833a qemu-0.8.2.tar.gz 1810909 -SHA256 2a20d811296c859d678bdd002222aa7ca7951a641327234f3af144e822d078f3 qemu-0.8.2.tar.gz 1810909 diff --git a/app-emulation/qemu-softmmu/files/qemu-0.8.0-gcc4-hacks.patch b/app-emulation/qemu-softmmu/files/qemu-0.8.0-gcc4-hacks.patch deleted file mode 100644 index b5aa0fd..0000000 --- a/app-emulation/qemu-softmmu/files/qemu-0.8.0-gcc4-hacks.patch +++ /dev/null @@ -1,126 +0,0 @@ -2005-10-28 Gwenole Beauchesne - - * Various additional hacks for GCC4. - -Index: qemu-0.8.1/cpu-all.h -=================================================================== ---- qemu-0.8.1.orig/cpu-all.h -+++ qemu-0.8.1/cpu-all.h -@@ -339,7 +339,13 @@ static inline void stl_le_p(void *ptr, i - - static inline void stq_le_p(void *ptr, uint64_t v) - { -+#if defined(__i386__) && __GNUC__ >= 4 -+ const union { uint64_t v; uint32_t p[2]; } x = { .v = v }; -+ ((uint32_t *)ptr)[0] = x.p[0]; -+ ((uint32_t *)ptr)[1] = x.p[1]; -+#else - *(uint64_t *)ptr = v; -+#endif - } - - /* float access */ -Index: qemu-0.8.1/softmmu_header.h -=================================================================== ---- qemu-0.8.1.orig/softmmu_header.h -+++ qemu-0.8.1/softmmu_header.h -@@ -108,7 +108,7 @@ DATA_TYPE REGPARM(1) glue(glue(__ld, SUF - void REGPARM(2) glue(glue(__st, SUFFIX), MMUSUFFIX)(target_ulong addr, DATA_TYPE v, int is_user); - - #if (DATA_SIZE <= 4) && (TARGET_LONG_BITS == 32) && defined(__i386__) && \ -- (ACCESS_TYPE <= 1) && defined(ASM_SOFTMMU) -+ (ACCESS_TYPE <= 1) && defined(ASM_SOFTMMU) && (__GNUC__ < 4) - - #define CPU_TLB_ENTRY_BITS 4 - -@@ -150,7 +150,7 @@ static inline RES_TYPE glue(glue(ld, USU - "m" (*(uint32_t *)offsetof(CPUState, tlb_table[CPU_MEM_INDEX][0].addr_read)), - "i" (CPU_MEM_INDEX), - "m" (*(uint8_t *)&glue(glue(__ld, SUFFIX), MMUSUFFIX)) -- : "%eax", "%ecx", "%edx", "memory", "cc"); -+ : "%eax", "%edx", "memory", "cc"); - return res; - } - -@@ -197,13 +197,14 @@ static inline int glue(glue(lds, SUFFIX) - "m" (*(uint32_t *)offsetof(CPUState, tlb_table[CPU_MEM_INDEX][0].addr_read)), - "i" (CPU_MEM_INDEX), - "m" (*(uint8_t *)&glue(glue(__ld, SUFFIX), MMUSUFFIX)) -- : "%eax", "%ecx", "%edx", "memory", "cc"); -+ : "%eax", "%edx", "memory", "cc"); - return res; - } - #endif - --static inline void glue(glue(st, SUFFIX), MEMSUFFIX)(target_ulong ptr, RES_TYPE v) -+static inline void glue(glue(st, SUFFIX), MEMSUFFIX)(target_ulong ptr, RES_TYPE val) - { -+ RES_TYPE v = val; - asm volatile ("movl %0, %%edx\n" - "movl %0, %%eax\n" - "shrl %3, %%edx\n" -@@ -240,16 +241,14 @@ static inline void glue(glue(st, SUFFIX) - "2:\n" - : - : "r" (ptr), --/* NOTE: 'q' would be needed as constraint, but we could not use it -- with T1 ! */ -- "r" (v), -+ "q" (v), - "i" ((CPU_TLB_SIZE - 1) << CPU_TLB_ENTRY_BITS), - "i" (TARGET_PAGE_BITS - CPU_TLB_ENTRY_BITS), - "i" (TARGET_PAGE_MASK | (DATA_SIZE - 1)), - "m" (*(uint32_t *)offsetof(CPUState, tlb_table[CPU_MEM_INDEX][0].addr_write)), - "i" (CPU_MEM_INDEX), - "m" (*(uint8_t *)&glue(glue(__st, SUFFIX), MMUSUFFIX)) -- : "%eax", "%ecx", "%edx", "memory", "cc"); -+ : "%eax", "%edx", "memory", "cc"); - } - - #else -Index: qemu-0.8.1/target-i386/helper.c -=================================================================== ---- qemu-0.8.1.orig/target-i386/helper.c -+++ qemu-0.8.1/target-i386/helper.c -@@ -3145,8 +3145,15 @@ void helper_fxrstor(target_ulong ptr, in - nb_xmm_regs = 8 << data64; - addr = ptr + 0xa0; - for(i = 0; i < nb_xmm_regs; i++) { -+#if defined(__i386__) && __GNUC__ >= 4 -+ env->xmm_regs[i].XMM_L(0) = ldl(addr); -+ env->xmm_regs[i].XMM_L(1) = ldl(addr + 4); -+ env->xmm_regs[i].XMM_L(2) = ldl(addr + 8); -+ env->xmm_regs[i].XMM_L(3) = ldl(addr + 12); -+#else - env->xmm_regs[i].XMM_Q(0) = ldq(addr); - env->xmm_regs[i].XMM_Q(1) = ldq(addr + 8); -+#endif - addr += 16; - } - } -Index: qemu-0.8.1/target-i386/ops_sse.h -=================================================================== ---- qemu-0.8.1.orig/target-i386/ops_sse.h -+++ qemu-0.8.1/target-i386/ops_sse.h -@@ -34,6 +34,12 @@ - #define Q(n) XMM_Q(n) - #define SUFFIX _xmm - #endif -+#if defined(__i386__) && __GNUC__ >= 4 -+#define RegCopy(d, s) __builtin_memcpy(&(d), &(s), sizeof(d)) -+#endif -+#ifndef RegCopy -+#define RegCopy(d, s) d = s -+#endif - - void OPPROTO glue(op_psrlw, SUFFIX)(void) - { -@@ -570,7 +576,7 @@ void OPPROTO glue(op_pshufw, SUFFIX) (vo - r.W(1) = s->W((order >> 2) & 3); - r.W(2) = s->W((order >> 4) & 3); - r.W(3) = s->W((order >> 6) & 3); -- *d = r; -+ RegCopy(*d, r); - } - #else - void OPPROTO op_shufps(void) diff --git a/app-emulation/qemu-softmmu/files/qemu-0.8.0-gcc4-opts.patch b/app-emulation/qemu-softmmu/files/qemu-0.8.0-gcc4-opts.patch deleted file mode 100644 index 4819dfb..0000000 --- a/app-emulation/qemu-softmmu/files/qemu-0.8.0-gcc4-opts.patch +++ /dev/null @@ -1,41 +0,0 @@ -2005-11-11 Gwenole Beauchesne - - * Globaaly save %ebx, %esi, %edi on entry to generated - function. This avoids some register spills in synthetic opcodes. - NOTE: this also easily fixes gcc4 compiled qemu-system-x86_64 on x86. - -Index: qemu-0.8.1/Makefile.target -=================================================================== ---- qemu-0.8.1.orig/Makefile.target -+++ qemu-0.8.1/Makefile.target -@@ -68,6 +68,10 @@ OP_CFLAGS+= -falign-functions=0 -fno-gcs - else - OP_CFLAGS+= -malign-functions=0 - endif -+ifeq ($(TARGET_ARCH), x86_64) -+# XXX globally save %ebx, %esi, %edi on entry to generated function -+OP_CFLAGS+= -fcall-used-ebx -fcall-used-esi -fcall-used-edi -+endif - - ifdef TARGET_GPROF - USE_I386_LD=y -Index: qemu-0.8.1/cpu-exec.c -=================================================================== ---- qemu-0.8.1.orig/cpu-exec.c -+++ qemu-0.8.1/cpu-exec.c -@@ -677,6 +677,15 @@ int cpu_exec(CPUState *env1) - : /* no outputs */ - : "r" (gen_func) - : "r1", "r2", "r3", "r8", "r9", "r10", "r12", "r14"); -+#elif defined(TARGET_X86_64) && defined(__i386__) -+ asm volatile ("push %%ebx\n" -+ "push %%esi\n" -+ "push %%edi\n" -+ "call *%0\n" -+ "pop %%edi\n" -+ "pop %%esi\n" -+ "pop %%ebx\n" -+ : : "r" (gen_func) : "ebx", "esi", "edi"); - #elif defined(TARGET_I386) && defined(USE_CODE_COPY) - { - if (!(tb->cflags & CF_CODE_COPY)) { diff --git a/app-emulation/qemu-softmmu/files/qemu-0.8.2-sparc-fp.patch b/app-emulation/qemu-softmmu/files/qemu-0.8.2-sparc-fp.patch deleted file mode 100644 index f190f66..0000000 --- a/app-emulation/qemu-softmmu/files/qemu-0.8.2-sparc-fp.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -urN qemu-0.8.2.old/target-sparc/op_helper.c qemu-0.8.2/target-sparc/op_helper.c ---- qemu-0.8.2.old/target-sparc/op_helper.c 2006-07-22 19:23:34.000000000 +0200 -+++ qemu-0.8.2/target-sparc/op_helper.c 2006-08-01 09:46:34.000000000 +0200 -@@ -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 - diff --git a/app-emulation/qemu-softmmu/qemu-softmmu-0.8.2-r1.ebuild b/app-emulation/qemu-softmmu/qemu-softmmu-0.8.2-r1.ebuild deleted file mode 100644 index 31a58f7..0000000 --- a/app-emulation/qemu-softmmu/qemu-softmmu-0.8.2-r1.ebuild +++ /dev/null @@ -1,103 +0,0 @@ -# Copyright 1999-2006 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-softmmu/qemu-softmmu-0.8.2-r1.ebuild,v 1.2 2006/08/17 08:09:42 lu_zero Exp $ - -inherit eutils flag-o-matic toolchain-funcs - -DESCRIPTION="Multi-platform & multi-targets cpu emulator and dynamic translator" -HOMEPAGE="http://fabrice.bellard.free.fr/qemu/" -SRC_URI="${HOMEPAGE}${P/-softmmu/}.tar.gz" - -LICENSE="GPL-2 LGPL-2.1 KQEMU" -SLOT="0" -KEYWORDS="-alpha ~amd64 ~ppc -sparc ~x86" -IUSE="sdl kqemu alsa" #qvm86 debug nptl qemu-fast nptlonly" -RESTRICT="nostrip test" - -DEPEND="virtual/libc - sdl? ( media-libs/libsdl ) - alsa? ( media-libs/alsa-lib ) - !<=app-emulation/qemu-0.7.0 - kqemu? ( >=app-emulation/kqemu-1.3.0_pre7 ) - app-text/texi2html" -RDEPEND="sdl? ( media-libs/libsdl )" - -S="${WORKDIR}/${P/-softmmu/}" - -set_target_list() { - TARGET_LIST="i386-softmmu ppc-softmmu sparc-softmmu x86_64-softmmu arm-softmmu mips-softmmu" - export TARGET_LIST -} - -#pkg_setup() { -# if [ "$(gcc-major-version)" == "4" ]; then -# eerror "qemu requires gcc-3 in order to build and work correctly" -# eerror "please compile it with gcc-3" -# die "gcc 4 cannot build qemu" -# fi -#} - -#RUNTIME_PATH="/emul/gnemul/" -src_unpack() { - unpack ${A} - - cd ${S} - epatch "${FILESDIR}/qemu-${PV}-sparc-fp.patch" - epatch "${FILESDIR}"/qemu-0.8.0-gcc4-hacks.patch - epatch "${FILESDIR}"/qemu-0.8.0-gcc4-opts.patch - - # Alter target makefiles to accept CFLAGS set via flag-o. - sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ - Makefile Makefile.target tests/Makefile - # Ensure mprotect restrictions are relaxed for emulator binaries - [[ -x /sbin/paxctl ]] && \ - sed -i 's/^VL_LDFLAGS=$/VL_LDFLAGS=-Wl,-z,execheap/' \ - Makefile.target - # Prevent install of kernel module by qemu's makefile - sed -i 's/\(.\/install.sh\)/#\1/' Makefile -} - -src_compile() { - #Let the application set its cflags - unset CFLAGS - - # Switch off hardened tech - filter-flags -fpie -fstack-protector - - set_target_list - - myconf="--disable-gcc-check" - if ! use sdl ; then - myconf="$myconf --disable-gfx-check" - fi - ./configure \ - --prefix=/usr \ - --target-list="${TARGET_LIST}" \ - --enable-slirp --enable-adlib \ - --cc=$(tc-getCC) \ - --host-cc=$(tc-getCC) \ - --kernel-path=${KV_DIR} \ - $(use_enable sdl)\ - $(use_enable kqemu) \ - $(use_enable alsa) \ - ${myconf} \ - || die "could not configure" - - emake || die "make failed" -} - -src_install() { - make install \ - prefix=${D}/usr \ - bindir=${D}/usr/bin \ - datadir=${D}/usr/share/qemu \ - docdir=${D}/usr/share/doc/${P} \ - mandir=${D}/usr/share/man || die - - chmod -x ${D}/usr/share/man/*/* -} - -pkg_postinst() { - einfo "You will need the Universal TUN/TAP driver compiled into" - einfo "kernel or as a module to use the virtual network device." -} diff --git a/app-emulation/qemu-user/Manifest b/app-emulation/qemu-user/Manifest deleted file mode 100644 index 0ea230e..0000000 --- a/app-emulation/qemu-user/Manifest +++ /dev/null @@ -1,28 +0,0 @@ -AUX qemu-0.7.0-ppc-linker.patch 11509 RMD160 d92e368e6adc2e6acdb97d92221781337d5322f7 SHA1 897be37b49b7908ea64972cd20ada0bb4def70cc SHA256 26d3832f1ff70d9d29f06cf8c6e1c1ac4ad353854c9b3b510875d2330ab6d2f9 -MD5 e9cd7872886a74aaf6b2fd5eb3659ebb files/qemu-0.7.0-ppc-linker.patch 11509 -RMD160 d92e368e6adc2e6acdb97d92221781337d5322f7 files/qemu-0.7.0-ppc-linker.patch 11509 -SHA256 26d3832f1ff70d9d29f06cf8c6e1c1ac4ad353854c9b3b510875d2330ab6d2f9 files/qemu-0.7.0-ppc-linker.patch 11509 -AUX qemu-0.8.0-gcc4-hacks.patch 4451 RMD160 9195413c569dc51cc6ea21b733562c2d34026ed8 SHA1 fec0792b21cd1a529efc9d108bfd683c26ee7547 SHA256 ab6e2c142400b8b66990e9f0a3b44f0df7170460c3824775b2ecc27f06773f06 -MD5 cb2b0532b6eab6f80c14b33cfba70662 files/qemu-0.8.0-gcc4-hacks.patch 4451 -RMD160 9195413c569dc51cc6ea21b733562c2d34026ed8 files/qemu-0.8.0-gcc4-hacks.patch 4451 -SHA256 ab6e2c142400b8b66990e9f0a3b44f0df7170460c3824775b2ecc27f06773f06 files/qemu-0.8.0-gcc4-hacks.patch 4451 -AUX qemu-0.8.0-stwbrx.patch 657 RMD160 e836fe37fdcb5c4021467900b0b588958ee29e14 SHA1 1988ac4afb9ef57aae53b050ec697b229c81fe99 SHA256 863648f94316f7ce1a49f31760b1e1083dce278e3099d25ac1b156a3e40d5856 -MD5 3413fbd9b74c40431378d1d89ce2fd5c files/qemu-0.8.0-stwbrx.patch 657 -RMD160 e836fe37fdcb5c4021467900b0b588958ee29e14 files/qemu-0.8.0-stwbrx.patch 657 -SHA256 863648f94316f7ce1a49f31760b1e1083dce278e3099d25ac1b156a3e40d5856 files/qemu-0.8.0-stwbrx.patch 657 -AUX qemu-ppc-dirty-hack.patch 422 RMD160 b108c7197a51ac9595246de846efcae8174ceb36 SHA1 b0dc9dab7e9e4c2b2735646222ae6a6c7ae4f85b SHA256 0242ac42ae38189ab6469d226c9e9467f8be55d86cf047ba5a713f92dd027edc -MD5 297287b50341a53d302b58ab9ee73a5f files/qemu-ppc-dirty-hack.patch 422 -RMD160 b108c7197a51ac9595246de846efcae8174ceb36 files/qemu-ppc-dirty-hack.patch 422 -SHA256 0242ac42ae38189ab6469d226c9e9467f8be55d86cf047ba5a713f92dd027edc files/qemu-ppc-dirty-hack.patch 422 -AUX qemu-user-0.7.0-errno.patch 487 RMD160 0ba3efb79379c96652d0a08f33adef13695c75b7 SHA1 37317be3df18aa4843bb027d2d1e5b3ef1cf27cd SHA256 013031cd5c27de4dd4ab39f10a8be751813a313e006339a35b9722bb0939f193 -MD5 3202f7445799cce82ccaac9749e1443d files/qemu-user-0.7.0-errno.patch 487 -RMD160 0ba3efb79379c96652d0a08f33adef13695c75b7 files/qemu-user-0.7.0-errno.patch 487 -SHA256 013031cd5c27de4dd4ab39f10a8be751813a313e006339a35b9722bb0939f193 files/qemu-user-0.7.0-errno.patch 487 -DIST qemu-0.8.2.tar.gz 1810909 RMD160 715c24997330352aa675cd7279731cec251f833a SHA1 d775239a545e7d0c5b677660a2122df590afde6d SHA256 2a20d811296c859d678bdd002222aa7ca7951a641327234f3af144e822d078f3 -EBUILD qemu-user-0.8.2.ebuild 2271 RMD160 f0338c675a631fc8ebefe2bdac36a04e687166a8 SHA1 aa1bde6e5b485fcee18630378228c4bf5714d380 SHA256 06d111f8a978d8a92e82839fa65086addfa140204dd588c9b4fb5153f0e5c575 -MD5 b04795228790182c87f52853c911e1ed qemu-user-0.8.2.ebuild 2271 -RMD160 f0338c675a631fc8ebefe2bdac36a04e687166a8 qemu-user-0.8.2.ebuild 2271 -SHA256 06d111f8a978d8a92e82839fa65086addfa140204dd588c9b4fb5153f0e5c575 qemu-user-0.8.2.ebuild 2271 -MD5 e9b66fd821b0760086e3574d3a90398c files/digest-qemu-user-0.8.2 235 -RMD160 1690afc2131b50cf62fe141bf5b621687fb107e3 files/digest-qemu-user-0.8.2 235 -SHA256 f29c0addbe47b46f7c4ab7d2cb4965bac24abdaa456bc0815d5d07a407f7450b files/digest-qemu-user-0.8.2 235 diff --git a/app-emulation/qemu-user/files/digest-qemu-user-0.8.0 b/app-emulation/qemu-user/files/digest-qemu-user-0.8.0 deleted file mode 100644 index 5f8bde2..0000000 --- a/app-emulation/qemu-user/files/digest-qemu-user-0.8.0 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 eb175b26583280706fe7e4d8910d320d qemu-0.8.0.tar.gz 1497965 -RMD160 3fc6da938f75364d0805ca0ecf8cb84a4b546dc7 qemu-0.8.0.tar.gz 1497965 -SHA256 de388539ce86971a2cbe8474fca8b6160898c95772e3e6e08a7794d48db32a61 qemu-0.8.0.tar.gz 1497965 diff --git a/app-emulation/qemu-user/files/digest-qemu-user-0.8.0.20060329 b/app-emulation/qemu-user/files/digest-qemu-user-0.8.0.20060329 deleted file mode 100644 index 1fd8e2b..0000000 --- a/app-emulation/qemu-user/files/digest-qemu-user-0.8.0.20060329 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 0a0e5d61666f951917127ea4c41f3cad qemu-0.8.0.20060329.tar.bz2 1325034 -RMD160 a6ec15e1b08dd6e2dd88d953bfa31e3db1dc212e qemu-0.8.0.20060329.tar.bz2 1325034 -SHA256 4ccb27692ffaee119728442298da84198d6319de79a18d497d14604e140c3eb0 qemu-0.8.0.20060329.tar.bz2 1325034 diff --git a/app-emulation/qemu-user/files/digest-qemu-user-0.8.1 b/app-emulation/qemu-user/files/digest-qemu-user-0.8.1 deleted file mode 100644 index 27ca8ef..0000000 --- a/app-emulation/qemu-user/files/digest-qemu-user-0.8.1 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 67d924324a5ab79d017bd97a1e767285 qemu-0.8.1.tar.gz 1623264 -RMD160 04d163d4792bbea39fc0b1e52af124cdb7e907dc qemu-0.8.1.tar.gz 1623264 -SHA256 a1f83666f5c05eaee9bfc608a3a5034ad95d0fd3c99937bb399bf9235a6aa0c9 qemu-0.8.1.tar.gz 1623264 diff --git a/app-emulation/qemu-user/files/digest-qemu-user-0.8.2 b/app-emulation/qemu-user/files/digest-qemu-user-0.8.2 deleted file mode 100644 index 767c6c8..0000000 --- a/app-emulation/qemu-user/files/digest-qemu-user-0.8.2 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 5b3a89eb2f256a8a6f3bb07f7b3f1b07 qemu-0.8.2.tar.gz 1810909 -RMD160 715c24997330352aa675cd7279731cec251f833a qemu-0.8.2.tar.gz 1810909 -SHA256 2a20d811296c859d678bdd002222aa7ca7951a641327234f3af144e822d078f3 qemu-0.8.2.tar.gz 1810909 diff --git a/app-emulation/qemu-user/files/qemu-0.7.0-ppc-linker.patch b/app-emulation/qemu-user/files/qemu-0.7.0-ppc-linker.patch deleted file mode 100644 index 09ae1d8..0000000 --- a/app-emulation/qemu-user/files/qemu-0.7.0-ppc-linker.patch +++ /dev/null @@ -1,297 +0,0 @@ -#DPATCHLEVEL=1 -diff -Naur qemu.orig/ppc.ld qemu/ppc.ld ---- qemu.orig/ppc.ld 2005-09-04 20:11:31.000000000 +0300 -+++ qemu/ppc.ld 2005-11-21 01:57:35.000000000 +0200 -@@ -1,116 +1,195 @@ --/* ld script to make i386 Linux kernel -- * Written by Martin Mares ; -- */ --OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc", "elf32-powerpc") --OUTPUT_ARCH(powerpc) --SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/usr/alpha-unknown-linux-gnu/lib); -+/* Default linker script, for normal executables */ -+OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc", -+ "elf32-powerpc") -+OUTPUT_ARCH(powerpc:common) - ENTRY(_start) -+SEARCH_DIR("/usr/powerpc-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); -+/* Do we need any of these for elf? -+ __DYNAMIC = 0; */ - SECTIONS - { - /* Read-only sections, merged into text segment: */ -- . = 0x60000000 + SIZEOF_HEADERS; -- .interp : { *(.interp) } -- .hash : { *(.hash) } -- .dynsym : { *(.dynsym) } -- .dynstr : { *(.dynstr) } -- .gnu.version : { *(.gnu.version) } -- .gnu.version_d : { *(.gnu.version_d) } -- .gnu.version_r : { *(.gnu.version_r) } -- .rel.text : -- { *(.rel.text) *(.rel.gnu.linkonce.t*) } -- .rela.text : -- { *(.rela.text) *(.rela.gnu.linkonce.t*) } -- .rel.data : -- { *(.rel.data) *(.rel.gnu.linkonce.d*) } -- .rela.data : -- { *(.rela.data) *(.rela.gnu.linkonce.d*) } -- .rel.rodata : -- { *(.rel.rodata) *(.rel.gnu.linkonce.r*) } -- .rela.rodata : -- { *(.rela.rodata) *(.rela.gnu.linkonce.r*) } -- .rel.got : { *(.rel.got) } -- .rela.got : { *(.rela.got) } -- .rel.ctors : { *(.rel.ctors) } -- .rela.ctors : { *(.rela.ctors) } -- .rel.dtors : { *(.rel.dtors) } -- .rela.dtors : { *(.rela.dtors) } -- .rel.init : { *(.rel.init) } -- .rela.init : { *(.rela.init) } -- .rel.fini : { *(.rel.fini) } -- .rela.fini : { *(.rela.fini) } -- .rel.bss : { *(.rel.bss) } -- .rela.bss : { *(.rela.bss) } -- .rel.plt : { *(.rel.plt) } -- .rela.plt : { *(.rela.plt) } -- .init : { *(.init) } =0x47ff041f -- .text : -+ PROVIDE (__executable_start = 0x60000000); . = 0x60000000 + SIZEOF_HEADERS; -+ .interp : { *(.interp) } -+ .hash : { *(.hash) } -+ .dynsym : { *(.dynsym) } -+ .dynstr : { *(.dynstr) } -+ .gnu.version : { *(.gnu.version) } -+ .gnu.version_d : { *(.gnu.version_d) } -+ .gnu.version_r : { *(.gnu.version_r) } -+ .rel.init : { *(.rel.init) } -+ .rela.init : { *(.rela.init) } -+ .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } -+ .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } -+ .rel.fini : { *(.rel.fini) } -+ .rela.fini : { *(.rela.fini) } -+ .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } -+ .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } -+ .rel.data.rel.ro : { *(.rel.data.rel.ro*) } -+ .rela.data.rel.ro : { *(.rel.data.rel.ro*) } -+ .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } -+ .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } -+ .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } -+ .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } -+ .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } -+ .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } -+ .rel.ctors : { *(.rel.ctors) } -+ .rela.ctors : { *(.rela.ctors) } -+ .rel.dtors : { *(.rel.dtors) } -+ .rela.dtors : { *(.rela.dtors) } -+ .rel.got : { *(.rel.got) } -+ .rela.got : { *(.rela.got) } -+ .rela.got1 : { *(.rela.got1) } -+ .rela.got2 : { *(.rela.got2) } -+ .rel.sdata : { *(.rel.sdata .rel.sdata.* .rel.gnu.linkonce.s.*) } -+ .rela.sdata : { *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*) } -+ .rel.sbss : { *(.rel.sbss .rel.sbss.* .rel.gnu.linkonce.sb.*) } -+ .rela.sbss : { *(.rela.sbss .rela.sbss.* .rela.gnu.linkonce.sb.*) } -+ .rel.sdata2 : { *(.rel.sdata2 .rel.sdata2.* .rel.gnu.linkonce.s2.*) } -+ .rela.sdata2 : { *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*) } -+ .rel.sbss2 : { *(.rel.sbss2 .rel.sbss2.* .rel.gnu.linkonce.sb2.*) } -+ .rela.sbss2 : { *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*) } -+ .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } -+ .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } -+ .rel.plt : { *(.rel.plt) } -+ .rela.plt : { *(.rela.plt) } -+ .init : - { -- *(.text) -+ KEEP (*(.init)) -+ } =0 -+ .text : -+ { -+ *(.text .stub .text.* .gnu.linkonce.t.*) -+ KEEP (*(.text.*personality*)) - /* .gnu.warning sections are handled specially by elf32.em. */ - *(.gnu.warning) -- *(.gnu.linkonce.t*) -- } =0x47ff041f -- _etext = .; -+ } =0 -+ .fini : -+ { -+ KEEP (*(.fini)) -+ } =0 -+ PROVIDE (__etext = .); -+ PROVIDE (_etext = .); - PROVIDE (etext = .); -- .fini : { *(.fini) } =0x47ff041f -+ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } -+ .rodata1 : { *(.rodata1) } -+ .sdata2 : -+ { -+ PROVIDE (_SDA2_BASE_ = 32768); -+ *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) -+ } -+ .sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) } -+ .eh_frame_hdr : { *(.eh_frame_hdr) } -+ .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } -+ .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } -+ /* Adjust the address for the data segment. We want to adjust up to -+ the same address within the page on the next page up. */ -+ . = ALIGN (0x10000) - ((0x10000 - .) & (0x10000 - 1)); . = DATA_SEGMENT_ALIGN (0x10000, 0x1000); -+ /* Exception handling */ -+ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } -+ .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } -+ /* Thread Local Storage sections */ -+ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } -+ .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } -+ /* Ensure the __preinit_array_start label is properly aligned. We -+ could instead move the label definition inside the section, but -+ the linker would then create the section even if it turns out to -+ be empty, which isn't pretty. */ - . = ALIGN(32 / 8); - PROVIDE (__preinit_array_start = .); -- .preinit_array : { *(.preinit_array) } -+ .preinit_array : { KEEP (*(.preinit_array)) } - PROVIDE (__preinit_array_end = .); - PROVIDE (__init_array_start = .); -- .init_array : { *(.init_array) } -+ .init_array : { KEEP (*(.init_array)) } - PROVIDE (__init_array_end = .); - PROVIDE (__fini_array_start = .); -- .fini_array : { *(.fini_array) } -+ .fini_array : { KEEP (*(.fini_array)) } - PROVIDE (__fini_array_end = .); -- .rodata : { *(.rodata) *(.gnu.linkonce.r*) } -- .rodata1 : { *(.rodata1) } -- .reginfo : { *(.reginfo) } -- /* Adjust the address for the data segment. We want to adjust up to -- the same address within the page on the next page up. */ -- . = ALIGN(0x100000) + (. & (0x100000 - 1)); -- .data : -+ .ctors : - { -- *(.data) -- *(.gnu.linkonce.d*) -- CONSTRUCTORS -+ /* gcc uses crtbegin.o to find the start of -+ the constructors, so we make sure it is -+ first. Because this is a wildcard, it -+ doesn't matter if the user does not -+ actually link against crtbegin.o; the -+ linker won't look for a file to match a -+ wildcard. The wildcard also means that it -+ doesn't matter which directory crtbegin.o -+ is in. */ -+ KEEP (*crtbegin*.o(.ctors)) -+ /* We don't want to include the .ctor section from -+ from the crtend.o file until after the sorted ctors. -+ The .ctor section from the crtend file contains the -+ end of ctors marker and it must be last */ -+ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors)) -+ KEEP (*(SORT(.ctors.*))) -+ KEEP (*(.ctors)) - } -- .data1 : { *(.data1) } -- .ctors : -+ .dtors : - { -- *(.ctors) -+ KEEP (*crtbegin*.o(.dtors)) -+ KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) -+ KEEP (*(SORT(.dtors.*))) -+ KEEP (*(.dtors)) - } -- .dtors : -+ .jcr : { KEEP (*(.jcr)) } -+ .data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) } -+ .got1 : { *(.got1) } -+ .got2 : { *(.got2) } -+ .dynamic : { *(.dynamic) } -+ . = DATA_SEGMENT_RELRO_END (0, .); -+ .data : - { -- *(.dtors) -+ *(.data .data.* .gnu.linkonce.d.*) -+ KEEP (*(.gnu.linkonce.d.*personality*)) -+ SORT(CONSTRUCTORS) - } -- .plt : { *(.plt) } -- .got : { *(.got.plt) *(.got) } -- .dynamic : { *(.dynamic) } -+ .data1 : { *(.data1) } -+ .got : { *(.got.plt) *(.got) } - /* We want the small data sections together, so single-instruction offsets - can access them all, and initialized data all before uninitialized, so - we can shorten the on-disk segment size. */ -- .sdata : { *(.sdata) } -- _edata = .; -+ .sdata : -+ { -+ PROVIDE (_SDA_BASE_ = 32768); -+ *(.sdata .sdata.* .gnu.linkonce.s.*) -+ } -+ _edata = .; - PROVIDE (edata = .); - __bss_start = .; -- .sbss : { *(.sbss) *(.scommon) } -- .bss : -+ .sbss : -+ { -+ PROVIDE (__sbss_start = .); -+ PROVIDE (___sbss_start = .); -+ *(.dynsbss) -+ *(.sbss .sbss.* .gnu.linkonce.sb.*) -+ *(.scommon) -+ PROVIDE (__sbss_end = .); -+ PROVIDE (___sbss_end = .); -+ } -+ .plt : { *(.plt) } -+ .bss : - { - *(.dynbss) -- *(.bss) -+ *(.bss .bss.* .gnu.linkonce.b.*) - *(COMMON) -+ /* Align here to ensure that the .bss section occupies space up to -+ _end. Align after .bss to ensure correct alignment even if the -+ .bss section disappears because there are no input sections. */ -+ . = ALIGN(32 / 8); - } -- _end = . ; -+ . = ALIGN(32 / 8); -+ _end = .; - PROVIDE (end = .); -+ . = DATA_SEGMENT_END (.); - /* Stabs debugging sections. */ -- .stab 0 : { *(.stab) } -- .stabstr 0 : { *(.stabstr) } -- .stab.excl 0 : { *(.stab.excl) } -- .stab.exclstr 0 : { *(.stab.exclstr) } -- .stab.index 0 : { *(.stab.index) } -+ .stab 0 : { *(.stab) } -+ .stabstr 0 : { *(.stabstr) } -+ .stab.excl 0 : { *(.stab.excl) } -+ .stab.exclstr 0 : { *(.stab.exclstr) } -+ .stab.index 0 : { *(.stab.index) } - .stab.indexstr 0 : { *(.stab.indexstr) } -- .comment 0 : { *(.comment) } -+ .comment 0 : { *(.comment) } - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to the beginning - of the section so we begin them at 0. */ -@@ -124,7 +203,7 @@ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - /* DWARF 2 */ -- .debug_info 0 : { *(.debug_info) } -+ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } -@@ -136,5 +215,6 @@ - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -- /* These must appear regardless of . */ -+ /DISCARD/ : { *(.fixup) } -+ /DISCARD/ : { *(.note.GNU-stack) } - } diff --git a/app-emulation/qemu-user/files/qemu-0.8.0-gcc4-hacks.patch b/app-emulation/qemu-user/files/qemu-0.8.0-gcc4-hacks.patch deleted file mode 100644 index f7cbdcf..0000000 --- a/app-emulation/qemu-user/files/qemu-0.8.0-gcc4-hacks.patch +++ /dev/null @@ -1,118 +0,0 @@ -2005-10-28 Gwenole Beauchesne - - * Various additional hacks for GCC4. - ---- qemu-0.7.2/target-i386/ops_sse.h.gcc4-hacks 2005-09-04 19:11:31.000000000 +0200 -+++ qemu-0.7.2/target-i386/ops_sse.h 2005-10-28 10:09:21.000000000 +0200 -@@ -34,6 +34,12 @@ - #define Q(n) XMM_Q(n) - #define SUFFIX _xmm - #endif -+#if defined(__i386__) && __GNUC__ >= 4 -+#define RegCopy(d, s) __builtin_memcpy(&(d), &(s), sizeof(d)) -+#endif -+#ifndef RegCopy -+#define RegCopy(d, s) d = s -+#endif - - void OPPROTO glue(op_psrlw, SUFFIX)(void) - { -@@ -570,7 +576,7 @@ void OPPROTO glue(op_pshufw, SUFFIX) (vo - r.W(1) = s->W((order >> 2) & 3); - r.W(2) = s->W((order >> 4) & 3); - r.W(3) = s->W((order >> 6) & 3); -- *d = r; -+ RegCopy(*d, r); - } - #else - void OPPROTO op_shufps(void) ---- qemu-0.7.2/target-i386/helper.c.gcc4-hacks 2005-09-04 19:11:31.000000000 +0200 -+++ qemu-0.7.2/target-i386/helper.c 2005-10-28 10:09:21.000000000 +0200 -@@ -3130,8 +3130,15 @@ void helper_fxrstor(target_ulong ptr, in - nb_xmm_regs = 8 << data64; - addr = ptr + 0xa0; - for(i = 0; i < nb_xmm_regs; i++) { -+#if defined(__i386__) && __GNUC__ >= 4 -+ env->xmm_regs[i].XMM_L(0) = ldl(addr); -+ env->xmm_regs[i].XMM_L(1) = ldl(addr + 4); -+ env->xmm_regs[i].XMM_L(2) = ldl(addr + 8); -+ env->xmm_regs[i].XMM_L(3) = ldl(addr + 12); -+#else - env->xmm_regs[i].XMM_Q(0) = ldq(addr); - env->xmm_regs[i].XMM_Q(1) = ldq(addr + 8); -+#endif - addr += 16; - } - } ---- qemu-0.7.2/cpu-all.h.gcc4-hacks 2005-09-04 19:11:31.000000000 +0200 -+++ qemu-0.7.2/cpu-all.h 2005-10-28 10:09:21.000000000 +0200 -@@ -339,7 +339,13 @@ - - static inline void stq_le_p(void *ptr, uint64_t v) - { -+#if defined(__i386__) && __GNUC__ >= 4 -+ const union { uint64_t v; uint32_t p[2]; } x = { .v = v }; -+ ((uint32_t *)ptr)[0] = x.p[0]; -+ ((uint32_t *)ptr)[1] = x.p[1]; -+#else - *(uint64_t *)ptr = v; -+#endif - } - - /* float access */ ---- qemu-0.7.2/softmmu_header.h.gcc4-hacks 2005-10-28 10:08:08.000000000 +0200 -+++ qemu-0.7.2/softmmu_header.h 2005-10-28 10:09:21.000000000 +0200 -@@ -104,7 +104,7 @@ - void REGPARM(2) glue(glue(__st, SUFFIX), MMUSUFFIX)(target_ulong addr, DATA_TYPE v, int is_user); - - #if (DATA_SIZE <= 4) && (TARGET_LONG_BITS == 32) && defined(__i386__) && \ -- (ACCESS_TYPE <= 1) && defined(ASM_SOFTMMU) -+ (ACCESS_TYPE <= 1) && defined(ASM_SOFTMMU) && (__GNUC__ < 4) - - #define CPU_TLB_ENTRY_BITS 4 - -@@ -131,7 +131,7 @@ static inline RES_TYPE glue(glue(ld, USU - "m" (*(uint32_t *)offsetof(CPUState, tlb_read[CPU_MEM_INDEX][0].address)), - "i" (CPU_MEM_INDEX), - "m" (*(uint8_t *)&glue(glue(__ld, SUFFIX), MMUSUFFIX)) -- : "%eax", "%ecx", "%edx", "memory", "cc"); -+ : "%eax", "%edx", "memory", "cc"); - return res; - } - -@@ -178,13 +178,14 @@ static inline int glue(glue(lds, SUFFIX) - "m" (*(uint32_t *)offsetof(CPUState, tlb_read[CPU_MEM_INDEX][0].address)), - "i" (CPU_MEM_INDEX), - "m" (*(uint8_t *)&glue(glue(__ld, SUFFIX), MMUSUFFIX)) -- : "%eax", "%ecx", "%edx", "memory", "cc"); -+ : "%eax", "%edx", "memory", "cc"); - return res; - } - #endif - --static inline void glue(glue(st, SUFFIX), MEMSUFFIX)(target_ulong ptr, RES_TYPE v) -+static inline void glue(glue(st, SUFFIX), MEMSUFFIX)(target_ulong ptr, RES_TYPE val) - { -+ RES_TYPE v = val; - asm volatile ("movl %0, %%edx\n" - "movl %0, %%eax\n" - "shrl %3, %%edx\n" -@@ -236,16 +237,14 @@ - "2:\n" - : - : "r" (ptr), --/* NOTE: 'q' would be needed as constraint, but we could not use it -- with T1 ! */ -- "r" (v), -+ "q" (v), - "i" ((CPU_TLB_SIZE - 1) << CPU_TLB_ENTRY_BITS), - "i" (TARGET_PAGE_BITS - CPU_TLB_ENTRY_BITS), - "i" (TARGET_PAGE_MASK | (DATA_SIZE - 1)), - "m" (*(uint32_t *)offsetof(CPUState, tlb_table[CPU_MEM_INDEX][0].addr_write)), - "i" (CPU_MEM_INDEX), - "m" (*(uint8_t *)&glue(glue(__st, SUFFIX), MMUSUFFIX)) -- : "%eax", "%ecx", "%edx", "memory", "cc"); -+ : "%eax", "%edx", "memory", "cc"); - } - - /* TODO: handle 64-bit access sizes and addresses */ diff --git a/app-emulation/qemu-user/files/qemu-0.8.0-stwbrx.patch b/app-emulation/qemu-user/files/qemu-0.8.0-stwbrx.patch deleted file mode 100644 index b642702..0000000 --- a/app-emulation/qemu-user/files/qemu-0.8.0-stwbrx.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -Nur qemu-0.8.0-old/cpu-all.h qemu-0.8.0/cpu-all.h ---- qemu-0.8.0-old/cpu-all.h 2006-04-21 23:45:55.000000000 +0200 -+++ qemu-0.8.0/cpu-all.h 2006-04-22 00:54:14.000000000 +0200 -@@ -250,7 +250,10 @@ - static inline void stl_le_p(void *ptr, int v) - { - #ifdef __powerpc__ -- __asm__ __volatile__ ("stwbrx %1,0,%2" : "=m" (*(uint32_t *)ptr) : "r" (v), "r" (ptr)); -+ __asm__ __volatile__ ("stwbrx %0,0,%1" -+ : /* no output registers */ -+ : "r" (v), "r" (ptr) /* copy v and ptr to registers */ -+ : "memory"); /* memory will be clobbered*/ - #else - uint8_t *p = ptr; - p[0] = v; diff --git a/app-emulation/qemu-user/files/qemu-ppc-dirty-hack.patch b/app-emulation/qemu-user/files/qemu-ppc-dirty-hack.patch deleted file mode 100644 index 7895fc8..0000000 --- a/app-emulation/qemu-user/files/qemu-ppc-dirty-hack.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nau qemu-0.7.1.orig/ppc.ld qemu-0.7.1/ppc.ld ---- qemu-0.7.1.orig/ppc.ld 2005-07-24 19:52:08.000000000 +0100 -+++ qemu-0.7.1/ppc.ld 2005-08-06 01:03:46.000000000 +0100 -@@ -8,7 +8,7 @@ - SECTIONS - { - /* Read-only sections, merged into text segment: */ -- . = 0x60000000 + SIZEOF_HEADERS; -+ . = 0x60000000 + 0x400; - .interp : { *(.interp) } - .hash : { *(.hash) } - .dynsym : { *(.dynsym) } diff --git a/app-emulation/qemu-user/files/qemu-user-0.7.0-errno.patch b/app-emulation/qemu-user/files/qemu-user-0.7.0-errno.patch deleted file mode 100644 index 291adc1..0000000 --- a/app-emulation/qemu-user/files/qemu-user-0.7.0-errno.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -ruN qemu-0.7.0.orig/target-i386/helper2.c qemu-0.7.0/target-i386/helper2.c ---- qemu-0.7.0.orig/target-i386/helper2.c 2005-04-27 22:52:05.000000000 +0200 -+++ qemu-0.7.0/target-i386/helper2.c 2005-05-25 22:07:50.000000000 +0200 -@@ -17,6 +17,7 @@ - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ -+#include - #include - #include - #include diff --git a/app-emulation/qemu-user/qemu-user-0.8.2.ebuild b/app-emulation/qemu-user/qemu-user-0.8.2.ebuild deleted file mode 100644 index 6816896..0000000 --- a/app-emulation/qemu-user/qemu-user-0.8.2.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 1999-2006 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-user/qemu-user-0.8.2.ebuild,v 1.1 2006/08/16 14:55:00 lu_zero Exp $ - -inherit eutils flag-o-matic - -DESCRIPTION="Multi-platform & multi-targets cpu emulator and dynamic translator" -HOMEPAGE="http://fabrice.bellard.free.fr/qemu/" -SRC_URI="http://fabrice.bellard.free.fr/qemu/${P/-user/}.tar.gz" - -LICENSE="GPL-2 LGPL-2.1" -SLOT="0" -KEYWORDS="-alpha ~amd64 ~ppc -sparc ~x86" -IUSE="" #qvm86 debug nptl qemu-fast nptlonly" -RESTRICT="nostrip test" - -DEPEND="virtual/libc - app-text/texi2html - !<=app-emulation/qemu-0.7.0" -RDEPEND="" - -S="${WORKDIR}/${P/-user/}" - -set_target_list() { - TARGET_LIST="arm-user armeb-user i386-user ppc-user mips-user" - export TARGET_LIST -} - -#pkg_setup() { -# if [ "$(gcc-major-version)" == "4" ]; then -# die "Qemu must build with GCC 3" -# fi -#} - -#RUNTIME_PATH="/emul/gnemul/" -src_unpack() { - unpack ${A} - - cd ${S} - epatch ${FILESDIR}/qemu-0.7.0-ppc-linker.patch - epatch ${FILESDIR}/qemu-0.8.0-gcc4-hacks.patch - epatch ${FILESDIR}/qemu-0.8.0-stwbrx.patch - epatch ${FILESDIR}/qemu-user-0.7.0-errno.patch - - # Alter target makefiles to accept CFLAGS set via flag-o. - sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ - Makefile Makefile.target tests/Makefile - # Ensure mprotect restrictions are relaxed for emulator binaries - [[ -x /sbin/paxctl ]] && \ - sed -i 's/^VL_LDFLAGS=$/VL_LDFLAGS=-Wl,-z,execheap/' \ - Makefile.target - # Prevent install of kernel module by qemu's makefile - sed -i 's/\(.\/install.sh\)/#\1/' Makefile -} - -src_compile() { - #Let the application set its cflags - unset CFLAGS - - # Switch off hardened tech - filter-flags -fpie -fstack-protector - - myconf="--disable-gcc-check" - set_target_list -# --interp-prefix=${RUNTIME_PATH}/qemu-%M - ./configure \ - --prefix=/usr \ - --target-list="${TARGET_LIST}" \ - --enable-slirp \ - --kernel-path=${KV_DIR} \ - ${myconf} \ - || die "could not configure" - - emake || die "make failed" -} - -src_install() { - make install \ - prefix=${D}/usr \ - bindir=${D}/usr/bin \ - datadir=${D}/usr/share/qemu \ - docdir=${D}/usr/share/doc/${P} \ - mandir=${D}/usr/share/man || die - - rm -fR ${D}/usr/share/{man,qemu} - rm -fR ${D}/usr/bin/qemu-img -} -- cgit v1.2.3-65-gdbad