diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2013-12-23 10:03:25 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2013-12-23 15:29:34 +0000 |
commit | e68aa4b6118b001c4752c54e65dbe9829b2e362c (patch) | |
tree | 6e89c8ee33d35e1eebd5e535c43034928c0b2c18 | |
parent | ddee2f86a48e087867d4a2c12849b2e3baccc238 (diff) | |
download | aports-e68aa4b6118b001c4752c54e65dbe9829b2e362c.tar.bz2 aports-e68aa4b6118b001c4752c54e65dbe9829b2e362c.tar.xz |
main/qemu: musl build fix
-rw-r--r-- | main/qemu/APKBUILD | 24 | ||||
-rw-r--r-- | main/qemu/qemu-170-ffsl.patch | 22 | ||||
-rw-r--r-- | main/qemu/qemu-170-ffsll.patch | 18 | ||||
-rw-r--r-- | main/qemu/qemu-170-openpty.patch | 11 | ||||
-rw-r--r-- | main/qemu/qemu-170-sigset_t.patch | 11 |
5 files changed, 85 insertions, 1 deletions
diff --git a/main/qemu/APKBUILD b/main/qemu/APKBUILD index f2cc5c106a..bcc816fe20 100644 --- a/main/qemu/APKBUILD +++ b/main/qemu/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=qemu pkgver=1.7.0 -pkgrel=0 +pkgrel=1 pkgdesc="QEMU is a generic machine emulator and virtualizer" url="http://qemu.org/" arch="all" @@ -72,6 +72,11 @@ $pkgname-guest-agent:guest " source="http://wiki.qemu-project.org/download/qemu-$pkgver.tar.bz2 0001-elfload-load-PIE-executables-to-right-address.patch + qemu-170-ffsl.patch + qemu-170-ffsll.patch + qemu-170-openpty.patch + qemu-170-sigset_t.patch + qemu-guest-agent.confd qemu-guest-agent.initd 80-kvm.rules" @@ -97,6 +102,11 @@ prepare() { build() { cd "$srcdir"/$pkgname-$pkgver + if [ "x$CLIBC" = "xmusl" ]; then + CFLAGS="$CFLAGS -D_GNU_SOURCE -Dflock64=flock" + CFLAGS="$CFLAGS -DF_EXLCK=4 -DF_SHLCK=8" + CFLAGS="$CFLAGS -D__SIGRTMIN=32 -D__SIGRTMAX=\(NSIG-1\)" + fi ./configure \ --prefix=/usr \ --localstatedir=/var \ @@ -227,16 +237,28 @@ guest() { md5sums="32893941d40d052a5e649efcf06aca06 qemu-1.7.0.tar.bz2 672727bb1d8c8ab7b5def65dd1793c33 0001-elfload-load-PIE-executables-to-right-address.patch +a51a526312535019de143f2e6a54e3ce qemu-170-ffsl.patch +78f4d1b13ddee47887b6d59378e8e44e qemu-170-ffsll.patch +6589d3ba6975d245feefa0ad436eed76 qemu-170-openpty.patch +f5e8ee9c5cd1ebc37194f3c151f420a8 qemu-170-sigset_t.patch 1663bc6977f6886a58394155b1bf3676 qemu-guest-agent.confd 2035cd781ea810e94bda250c609d8d90 qemu-guest-agent.initd 66660f143235201249dc0648b39b86ee 80-kvm.rules" sha256sums="31f333a85f2d14c605a77679904a9668eaeb1b6dc7da53a1665230f46bc21314 qemu-1.7.0.tar.bz2 af35304b165622a53f7557b59ffd8da5030f5fd444e669c862f9410131f3b987 0001-elfload-load-PIE-executables-to-right-address.patch +63adefe8f34a6859e5f7a1e2de49538267c93955231ef0c4c2bfd6de919711e0 qemu-170-ffsl.patch +373ca5c783913645c6fc6c4c3b7740b0cc011aeed30bc8b848d5b26cf5d81070 qemu-170-ffsll.patch +6cffdccc3e270e7ab65701cc4e68692b577540f02763b14c66bf2225edb20f8b qemu-170-openpty.patch +fbc907e09c04110992a75bd4cc2f74fbc33e5b4a1cf0ebaa51c2a1dc4512ce5c qemu-170-sigset_t.patch d84e53a94584f37f3bd1b21f44077b5de0d07094c6729f26ae20ab1f7b9cc298 qemu-guest-agent.confd 982fa8ba67c728405305e4cf5a36a41a780b3d1f388ebd6377e7964c271a1c92 qemu-guest-agent.initd 37f666f1cdb7d8a62171de69b531681dcb0fba74236729dac8b6c019232eba84 80-kvm.rules" sha512sums="6ee52444b93fc2953e8080383cc0cdc618a826ddd5252bf5f6faf27d91699a414924d6015d27ea12ce1cc21e135acbc8dde595c84a4ce1e0c7173f0446f867eb qemu-1.7.0.tar.bz2 405008589cad1c8b609eca004d520bf944366e8525f85a19fc6e283c95b84b6c2429822ba064675823ab69f1406a57377266a65021623d1cd581e7db000134fd 0001-elfload-load-PIE-executables-to-right-address.patch +13ac2ba2835764ad97d55dc62313a4626a4e4e12a5f932d26b8579101bd875411faf9ffd5642c94e7b8da7d41b5ca48507c3a08ce4d087b8306110e23206877e qemu-170-ffsl.patch +80168f5eadb518dbae8277cc2ff78cc494783e2180dfbf78d7b5c068c3efecd0bbb3d61dfb0079e365c632c1a80b82d6955de9718ff0b8e8613a52407bd5a2af qemu-170-ffsll.patch +b2cbb121c8ac85ee0aff835ecff59e2b4e886ddb9c5084286eaf735b5a3868043dad36e5e2289b6e6505bca4cfe971c9a35109a3638357d4b5b10168f921c984 qemu-170-openpty.patch +d867db00b0ac83c8dabd45c9ef0f07559f1f2045f3a4b7fd507a1ee276325e693f772b22511e2d5e1fce866de0ef4cd9da057119cfc39b905471a8995b36619e qemu-170-sigset_t.patch d90c034cae3f9097466854ed1a9f32ab4b02089fcdf7320e8f4da13b2b1ff65067233f48809911485e4431d7ec1a22448b934121bc9522a2dc489009e87e2b1f qemu-guest-agent.confd 761b4e2397569dae45ae3bb9e46e28746275297f629af9e9065525497fd26a48b65d8abcf4282727afd35309e338967acf6a1b14c3169577bdc16c1f42e618b3 qemu-guest-agent.initd 9b7a89b20fcf737832cb7b4d5dc7d8301dd88169cbe5339eda69fbb51c2e537d8cb9ec7cf37600899e734209e63410d50d0821bce97e401421db39c294d97be2 80-kvm.rules" diff --git a/main/qemu/qemu-170-ffsl.patch b/main/qemu/qemu-170-ffsl.patch new file mode 100644 index 0000000000..5da3d07eef --- /dev/null +++ b/main/qemu/qemu-170-ffsl.patch @@ -0,0 +1,22 @@ +--- qemu-1.7.0.org/kvm-all.c ++++ qemu-1.7.0/kvm-all.c +@@ -374,6 +374,19 @@ + return 0; + } + ++#ifndef HAVE_FFSL ++#include <limits.h> ++#if ULONG_MAX == UINT_MAX ++#define ffsl(X) ffs(X) ++#else ++static int ffsl(long i) { ++ unsigned long x = i & -i; ++ if (x <= 0xffffffff) return ffs (i); ++ else return 32 + ffs (i >> 32); ++} ++#endif ++#endif ++ + /* get kvm's dirty pages bitmap and update qemu's */ + static int kvm_get_dirty_pages_log_range(MemoryRegionSection *section, + unsigned long *bitmap) diff --git a/main/qemu/qemu-170-ffsll.patch b/main/qemu/qemu-170-ffsll.patch new file mode 100644 index 0000000000..c5a66426b9 --- /dev/null +++ b/main/qemu/qemu-170-ffsll.patch @@ -0,0 +1,18 @@ +--- qemu-1.7.0.org/hw/virtio/vhost.c ++++ qemu-1.7.0/hw/virtio/vhost.c +@@ -22,6 +22,15 @@ + #include "exec/address-spaces.h" + #include "hw/virtio/virtio-bus.h" + ++#ifndef HAVE_FFSLL ++static int ffsll(long long i) { ++ unsigned long long x = i & -i; ++ if (x <= 0xffffffff) return ffs (i); ++ else return 32 + ffs (i >> 32); ++} ++#endif ++ ++ + static void vhost_dev_sync_region(struct vhost_dev *dev, + MemoryRegionSection *section, + uint64_t mfirst, uint64_t mlast, diff --git a/main/qemu/qemu-170-openpty.patch b/main/qemu/qemu-170-openpty.patch new file mode 100644 index 0000000000..3a0d051bdc --- /dev/null +++ b/main/qemu/qemu-170-openpty.patch @@ -0,0 +1,11 @@ +--- qemu-1.7.0.org/util/qemu-openpty.c ++++ qemu-1.7.0/util/qemu-openpty.c +@@ -47,6 +47,8 @@ + #elif defined CONFIG_SOLARIS + # include <termios.h> + # include <stropts.h> ++#else ++# include <termios.h> + #endif + + #ifdef __sun__ diff --git a/main/qemu/qemu-170-sigset_t.patch b/main/qemu/qemu-170-sigset_t.patch new file mode 100644 index 0000000000..90bcdddbce --- /dev/null +++ b/main/qemu/qemu-170-sigset_t.patch @@ -0,0 +1,11 @@ +--- qemu-1.7.0.org/linux-user/syscall.c ++++ qemu-1.7.0/linux-user/syscall.c +@@ -400,7 +400,7 @@ + #endif + #define __NR_sys_ppoll __NR_ppoll + _syscall5(int, sys_ppoll, struct pollfd *, fds, nfds_t, nfds, +- struct timespec *, timeout, const __sigset_t *, sigmask, ++ struct timespec *, timeout, const sigset_t *, sigmask, + size_t, sigsetsize) + #endif + |