diff options
Diffstat (limited to 'user/qemu')
-rw-r--r-- | user/qemu/0006-linux-user-signal.c-define-__SIGRTMIN-MAX-for-non-GN.patch | 37 | ||||
-rw-r--r-- | user/qemu/APKBUILD | 37 | ||||
-rw-r--r-- | user/qemu/debug.patch | 136 | ||||
-rw-r--r-- | user/qemu/ppc-Fix-size-of-ppc64-xer-register-fwd.patch | 70 | ||||
-rw-r--r-- | user/qemu/signal-fixes.patch | 12 |
5 files changed, 172 insertions, 120 deletions
diff --git a/user/qemu/0006-linux-user-signal.c-define-__SIGRTMIN-MAX-for-non-GN.patch b/user/qemu/0006-linux-user-signal.c-define-__SIGRTMIN-MAX-for-non-GN.patch deleted file mode 100644 index 7ea1dba6d..000000000 --- a/user/qemu/0006-linux-user-signal.c-define-__SIGRTMIN-MAX-for-non-GN.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 3e231fa7a2dc66e2ef06ac44f4f719b08fc0c67e Mon Sep 17 00:00:00 2001 -From: Natanael Copa <ncopa@alpinelinux.org> -Date: Tue, 29 Apr 2014 15:51:31 +0200 -Subject: [PATCH 6/6] linux-user/signal.c: define __SIGRTMIN/MAX for non-GNU - platforms - -The __SIGRTMIN and __SIGRTMAX are glibc internals and are not available -on all platforms, so we define those if they are missing. - -This is needed for musl libc. - -Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> ---- - linux-user/signal.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/linux-user/signal.c b/linux-user/signal.c -index 7d6246f..6019dbb 100644 ---- a/linux-user/signal.c -+++ b/linux-user/signal.c -@@ -32,6 +32,13 @@ - - //#define DEBUG_SIGNAL - -+#ifndef __SIGRTMIN -+#define __SIGRTMIN 32 -+#endif -+#ifndef __SIGRTMAX -+#define __SIGRTMAX (NSIG-1) -+#endif -+ - static struct target_sigaltstack target_sigaltstack_used = { - .ss_sp = 0, - .ss_size = 0, --- -1.9.2 - diff --git a/user/qemu/APKBUILD b/user/qemu/APKBUILD index d1717c62f..41a6647bf 100644 --- a/user/qemu/APKBUILD +++ b/user/qemu/APKBUILD @@ -4,12 +4,12 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=qemu -pkgver=2.12.0 +pkgver=3.0.0 pkgrel=0 -pkgdesc="QEMU is a generic machine emulator and virtualizer" -url="http://qemu.org/" +pkgdesc="Machine emulator and virtualisation software" +url="https://www.qemu.org/" arch="all" -license="GPL-2.0-only LGPL-2.1-only" +license="GPL-2.0-only AND LGPL-2.1-only" makedepends=" alsa-lib-dev bison @@ -50,8 +50,7 @@ install="$pkgname.pre-install $pkgname.post-install" # suid needed for qemu-bridge-helper # strip fails on .img files # some tests does not run on our builders -# ROMs confuse dbg -options="suid !strip !check !dbg" +options="suid !strip !check" subpackages="$pkgname-doc $pkgname-lang $pkgname-guest-agent:guest $pkgname-user $pkgname-system" @@ -127,6 +126,8 @@ done case "$CARCH" in x86) _arch=i386 ;; x86_64) _arch=x86_64 ;; + ppc64) _arch=ppc64 ;; + ppc) _arch=ppc ;; *) _arch="" ;; esac if [ -n "$_arch" ]; then @@ -136,9 +137,8 @@ fi subpackages="$subpackages $pkgname-img" # -img must be declared the last -source="http://wiki.qemu-project.org/download/$pkgname-$pkgver.tar.bz2 +source="https://download.qemu.org/$pkgname-$pkgver.tar.xz 0001-elfload-load-PIE-executables-to-right-address.patch - 0006-linux-user-signal.c-define-__SIGRTMIN-MAX-for-non-GN.patch 0001-linux-user-fix-build-with-musl-on-aarch64.patch musl-F_SHLCK-and-F_EXLCK.patch fix-sigevent-and-sigval_t.patch @@ -148,8 +148,8 @@ source="http://wiki.qemu-project.org/download/$pkgname-$pkgver.tar.bz2 0001-linux-user-fix-build-with-musl-on-ppc64le.patch fix-sockios-header.patch test-crypto-ivgen-skip-essiv.patch - ppc-Fix-size-of-ppc64-xer-register-fwd.patch ppc32-musl-support.patch + signal-fixes.patch sysinfo-header.patch fix-lm32-underlinking.patch @@ -203,7 +203,8 @@ _compile_common() { --sysconfdir=/etc \ --libexecdir=/usr/lib/qemu \ --disable-glusterfs \ - --disable-debug-info \ + --enable-debug-info \ + --disable-strip \ --disable-bsd-user \ --disable-werror \ --disable-sdl \ @@ -217,6 +218,7 @@ _compile_common() { _compile_system() { _compile_common \ --audio-drv-list=oss,alsa \ + --enable-debug-tcg \ --enable-kvm \ --enable-vde \ --enable-virtfs \ @@ -343,6 +345,16 @@ img() { return $retval } +dbg() { + # God, save me. + local _save="$srcdir"/tmpshare + # default_dbg uses srcdir for its own purposes; + # its value cannot be used after it is executed + mv "$pkgdir"/usr/share/qemu $_save + default_dbg + mv $_save "$pkgdir"/usr/share/qemu +} + user() { pkgdesc="All QEMU user targets (metapackage)" depends="" @@ -377,9 +389,8 @@ guest() { "$subpkgdir"/etc/conf.d/$pkgname-guest-agent } -sha512sums="91d829f44c431e4c1cd335f3efea5afff9da62d832b0296a92417463ea0826d09ce226c2ea8ac167fe7b99b6bb976c7cb1357aaf17735ee57af6602161e46346 qemu-2.12.0.tar.bz2 +sha512sums="a764302f50b9aca4134bbbc1f361b98e71240cdc7b25600dfe733bf4cf17bd86000bd28357697b08f3b656899dceb9e459350b8d55557817444ed5d7fa380a5a qemu-3.0.0.tar.xz 405008589cad1c8b609eca004d520bf944366e8525f85a19fc6e283c95b84b6c2429822ba064675823ab69f1406a57377266a65021623d1cd581e7db000134fd 0001-elfload-load-PIE-executables-to-right-address.patch -ec84b27648c01c6e58781295dcd0c2ff8e5a635f9836ef50c1da5d0ed125db1afc4cb5b01cb97606d6dd8f417acba93e1560d9a32ca29161a4bb730b302440ea 0006-linux-user-signal.c-define-__SIGRTMIN-MAX-for-non-GN.patch 1ac043312864309e19f839a699ab2485bca51bbf3d5fdb39f1a87b87e3cbdd8cbda1a56e6b5c9ffccd65a8ac2f600da9ceb8713f4dbba26f245bc52bcd8a1c56 0001-linux-user-fix-build-with-musl-on-aarch64.patch 224f5b44da749921e8a821359478c5238d8b6e24a9c0b4c5738c34e82f3062ec4639d495b8b5883d304af4a0d567e38aa6623aac1aa3a7164a5757c036528ac0 musl-F_SHLCK-and-F_EXLCK.patch 5da8114b9bd2e62f0f1f0f73f393fdbd738c5dea827ea60cedffd6f6edd0f5a97489c7148d37a8ec5a148d4e65d75cbefe9353714ee6b6f51a600200133fc914 fix-sigevent-and-sigval_t.patch @@ -389,8 +400,8 @@ fd178f2913639a0c33199b3880cb17536961f2b3ff171c12b27f4be6bca032d6b88fd16302d09c69 d8933df9484158c2b4888254e62117d78f8ed7c18527b249419f39c2b2ab1afa148010884b40661f8965f1ef3105580fceffdfddbb2c9221dc1c62066722ba65 0001-linux-user-fix-build-with-musl-on-ppc64le.patch 39590476a4ebd7c1e79a4f0451b24c75b1817a2a83abaa1f71bb60b225d772152f0af8f3e51ff65645e378c536ffa6ff551dade52884d03a14b7c6a19c5c97d4 fix-sockios-header.patch 8b8db136f78bd26b5da171effa9e11016ec2bc3e2fc8107228b5543b47aa370978ed883794aa4f917f334e284a5b49e82070e1da2d31d49301195b6713a48eff test-crypto-ivgen-skip-essiv.patch -a4cbb020d6a839b5a129964027169babff2c1455170c5fec855232d999481eea2cae186fa66ceaa5c8a05f3eb87f9565aaf9bdcc0e56edf3060e39e80c10c782 ppc-Fix-size-of-ppc64-xer-register-fwd.patch fb0130fa4e8771b23ae337ea3e5e29fd5f7dcfe7f9f7a68968f5b059bb4dd1336b0d04c118840d55885bc784a96a99b28aeacbc6a5549b2e6750c9d3099a897c ppc32-musl-support.patch +c6436b1cc986788baccd5fe0f9d23c7db9026f6b723260611cf894bd94ee830140a17ee5859efe0dad0ca3bfe9caae1269bc5c9ab4c6e696f35c7857c1b5c86b signal-fixes.patch 698f6b134f4ca87f4de62caf7a656841a40a451b8686ca95928f67a296e58a7493d432d9baa5f6360917865aa4929600baf1699993b0600923a066ca9d45d1da sysinfo-header.patch 2828cc612539aa93b5789de7de6d4f85d3cf82311484c0fe91fdd3efeb972057e2baa2a3809ed633d6caa1785642d49196cb282b095d7553c510c47ce7d6a702 fix-lm32-underlinking.patch d90c034cae3f9097466854ed1a9f32ab4b02089fcdf7320e8f4da13b2b1ff65067233f48809911485e4431d7ec1a22448b934121bc9522a2dc489009e87e2b1f qemu-guest-agent.confd diff --git a/user/qemu/debug.patch b/user/qemu/debug.patch new file mode 100644 index 000000000..930ae11c1 --- /dev/null +++ b/user/qemu/debug.patch @@ -0,0 +1,136 @@ +diff --git a/user/qemu/APKBUILD b/user/qemu/APKBUILD +index 3e0be56..27ed920 100644 +--- a/user/qemu/APKBUILD ++++ b/user/qemu/APKBUILD +@@ -5,7 +5,7 @@ + # Maintainer: A. Wilcox <awilfox@adelielinux.org> + pkgname=qemu + pkgver=2.12.1 +-pkgrel=0 ++pkgrel=95 + pkgdesc="Machine emulator and virtualisation software" + url="https://www.qemu.org/" + arch="all" +@@ -56,68 +56,10 @@ subpackages="$pkgname-doc $pkgname-lang $pkgname-guest-agent:guest + $pkgname-user $pkgname-system" + + _user_subsystems=" +- aarch64 +- alpha +- arm +- armeb +- cris +- hppa + i386 +- m68k +- microblaze +- microblazeel +- mips +- mips64 +- mips64el +- mipsel +- mipsn32 +- mipsn32el +- or1k +- ppc +- ppc64 +- ppc64abi32 +- ppc64le +- s390x +- sh4 +- sh4eb +- sparc +- sparc32plus +- sparc64 +- tilegx + x86_64" + _system_subsystems=" +- system-aarch64 +- system-alpha +- system-arm +- system-cris +- system-hppa + system-i386 +- system-lm32 +- system-m68k +- system-microblaze +- system-microblazeel +- system-mips +- system-mips64 +- system-mips64el +- system-mipsel +- system-moxie +- system-nios2 +- system-or1k +- system-ppc +- system-ppc64 +- system-ppcemb +- system-riscv32 +- system-riscv64 +- system-s390x +- system-sh4 +- system-sh4eb +- system-sparc +- system-sparc64 +- system-tricore +- system-unicore32 +- system-x86_64 +- system-xtensa +- system-xtensaeb + " + _subsystems="$_user_subsystems $_system_subsystems" + for _sub in $_subsystems; do +@@ -152,6 +94,7 @@ source="https://download.qemu.org/$pkgname-$pkgver.tar.xz + ppc32-musl-support.patch + sysinfo-header.patch + fix-lm32-underlinking.patch ++ debug.patch + + $pkgname-guest-agent.confd + $pkgname-guest-agent.initd +@@ -203,7 +146,8 @@ _compile_common() { + --sysconfdir=/etc \ + --libexecdir=/usr/lib/qemu \ + --disable-glusterfs \ +- --disable-debug-info \ ++ --enable-debug-info \ ++ --disable-strip \ + --disable-bsd-user \ + --disable-werror \ + --disable-sdl \ +@@ -217,6 +161,7 @@ _compile_common() { + _compile_system() { + _compile_common \ + --audio-drv-list=oss,alsa \ ++ --enable-debug-tcg \ + --enable-kvm \ + --enable-vde \ + --enable-virtfs \ +@@ -247,7 +192,8 @@ build() { + _compile_common \ + --enable-linux-user \ + --disable-system \ +- --static ++ --static \ ++ --target-list="i386-linux-user,x86_64-linux-user" + + cd "$builddir"/build + _compile_system \ +@@ -256,7 +202,8 @@ build() { + --enable-vnc-jpeg \ + --enable-spice \ + --enable-guest-agent \ +- --disable-gtk ++ --disable-gtk \ ++ --target-list="i386-softmmu" + + if [ -n "$_arch" ]; then + cd "$builddir"/build-gtk +@@ -403,6 +350,7 @@ a4cbb020d6a839b5a129964027169babff2c1455170c5fec855232d999481eea2cae186fa66ceaa5 + fb0130fa4e8771b23ae337ea3e5e29fd5f7dcfe7f9f7a68968f5b059bb4dd1336b0d04c118840d55885bc784a96a99b28aeacbc6a5549b2e6750c9d3099a897c ppc32-musl-support.patch + 698f6b134f4ca87f4de62caf7a656841a40a451b8686ca95928f67a296e58a7493d432d9baa5f6360917865aa4929600baf1699993b0600923a066ca9d45d1da sysinfo-header.patch + 2828cc612539aa93b5789de7de6d4f85d3cf82311484c0fe91fdd3efeb972057e2baa2a3809ed633d6caa1785642d49196cb282b095d7553c510c47ce7d6a702 fix-lm32-underlinking.patch ++cfa0bc3c10d64060bf2ad46fc056060527a9ab68ab36ed012eab85db8a6053a2aa81199c6850c097f56ff3d4ea8fb23ee66aec62c33117ccf7518d64105b7e30 debug.patch + d90c034cae3f9097466854ed1a9f32ab4b02089fcdf7320e8f4da13b2b1ff65067233f48809911485e4431d7ec1a22448b934121bc9522a2dc489009e87e2b1f qemu-guest-agent.confd + 1cd24c2444c5935a763c501af2b0da31635aad9cf62e55416d6477fcec153cddbe7de205d99616def11b085e0dd366ba22463d2270f831d884edbc307c7864a6 qemu-guest-agent.initd + 9b7a89b20fcf737832cb7b4d5dc7d8301dd88169cbe5339eda69fbb51c2e537d8cb9ec7cf37600899e734209e63410d50d0821bce97e401421db39c294d97be2 80-kvm.rules diff --git a/user/qemu/ppc-Fix-size-of-ppc64-xer-register-fwd.patch b/user/qemu/ppc-Fix-size-of-ppc64-xer-register-fwd.patch deleted file mode 100644 index 87fd4a1ee..000000000 --- a/user/qemu/ppc-Fix-size-of-ppc64-xer-register-fwd.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff --git a/target/ppc/gdbstub.c b/target/ppc/gdbstub.c -index 7a33813..b6f6693 100644 ---- a/target/ppc/gdbstub.c -+++ b/target/ppc/gdbstub.c -@@ -37,10 +37,10 @@ static int ppc_gdb_register_len_apple(int n) - case 65+32: /* msr */ - case 67+32: /* lr */ - case 68+32: /* ctr */ -- case 69+32: /* xer */ - case 70+32: /* fpscr */ - return 8; - case 66+32: /* cr */ -+ case 69+32: /* xer */ - return 4; - default: - return 0; -@@ -61,6 +61,8 @@ static int ppc_gdb_register_len(int n) - return 8; - case 66: - /* cr */ -+ case 69: -+ /* xer */ - return 4; - case 64: - /* nip */ -@@ -70,8 +72,6 @@ static int ppc_gdb_register_len(int n) - /* lr */ - case 68: - /* ctr */ -- case 69: -- /* xer */ - return sizeof(target_ulong); - case 70: - /* fpscr */ -@@ -152,7 +152,7 @@ int ppc_cpu_gdb_read_register(CPUState *cs, uint8_t *mem_buf, int n) - gdb_get_regl(mem_buf, env->ctr); - break; - case 69: -- gdb_get_regl(mem_buf, env->xer); -+ gdb_get_reg32(mem_buf, env->xer); - break; - case 70: - gdb_get_reg32(mem_buf, env->fpscr); -@@ -208,7 +208,7 @@ int ppc_cpu_gdb_read_register_apple(CPUState *cs, uint8_t *mem_buf, int n) - gdb_get_reg64(mem_buf, env->ctr); - break; - case 69 + 32: -- gdb_get_reg64(mem_buf, env->xer); -+ gdb_get_reg32(mem_buf, env->xer); - break; - case 70 + 32: - gdb_get_reg64(mem_buf, env->fpscr); -@@ -259,7 +259,7 @@ int ppc_cpu_gdb_write_register(CPUState *cs, uint8_t *mem_buf, int n) - env->ctr = ldtul_p(mem_buf); - break; - case 69: -- env->xer = ldtul_p(mem_buf); -+ env->xer = ldl_p(mem_buf); - break; - case 70: - /* fpscr */ -@@ -309,7 +309,7 @@ int ppc_cpu_gdb_write_register_apple(CPUState *cs, uint8_t *mem_buf, int n) - env->ctr = ldq_p(mem_buf); - break; - case 69 + 32: -- env->xer = ldq_p(mem_buf); -+ env->xer = ldl_p(mem_buf); - break; - case 70 + 32: - /* fpscr */ diff --git a/user/qemu/signal-fixes.patch b/user/qemu/signal-fixes.patch new file mode 100644 index 000000000..7cde67d01 --- /dev/null +++ b/user/qemu/signal-fixes.patch @@ -0,0 +1,12 @@ +--- qemu-3.0.0/linux-user/signal.c.old 2018-09-06 23:06:29.040000000 +0000 ++++ qemu-3.0.0/linux-user/signal.c 2018-09-06 23:09:23.370000000 +0000 +@@ -37,6 +37,9 @@ + static void host_signal_handler(int host_signum, siginfo_t *info, + void *puc); + ++#define __SIGRTMIN 35 ++#define __SIGRTMAX _NSIG-1 ++ + static uint8_t host_to_target_signal_table[_NSIG] = { + [SIGHUP] = TARGET_SIGHUP, + [SIGINT] = TARGET_SIGINT, |