aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2014-04-10 13:18:52 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2014-04-10 14:05:07 +0000
commitc75bffeb5a2b09ed51bb6f8d7e57e64ee6f96a9e (patch)
treed4ba8f8cfda6f3022de2edad5ae661abc0c2ae35
parent3ae8433b8ff0729934a9ba3779a6f426aceb8bfd (diff)
downloadaports-c75bffeb5a2b09ed51bb6f8d7e57e64ee6f96a9e.tar.bz2
aports-c75bffeb5a2b09ed51bb6f8d7e57e64ee6f96a9e.tar.xz
main/libvirt: fix 'virsh nodeinfo' for musl
-rw-r--r--main/libvirt/APKBUILD12
-rw-r--r--main/libvirt/nodeinfo-musl.patch61
2 files changed, 69 insertions, 4 deletions
diff --git a/main/libvirt/APKBUILD b/main/libvirt/APKBUILD
index bbb367718f..0c17241d38 100644
--- a/main/libvirt/APKBUILD
+++ b/main/libvirt/APKBUILD
@@ -2,7 +2,7 @@
pkgname=libvirt
pkgver=1.2.3
_ver="${pkgver/_rc/-rc}"
-pkgrel=0
+pkgrel=1
pkgdesc="A virtualization API for several hypervisor and container systems"
url="http://libvirt.org/"
arch="all"
@@ -27,6 +27,7 @@ source="http://libvirt.org/sources/$pkgname-$pkgver.tar.gz
libvirt.initd
uclibc-physmem.patch
musl-fix-includes.patch
+ nodeinfo-musl.patch
"
if [ "$CARCH" = "x86_64" ]; then
@@ -171,14 +172,17 @@ md5sums="ad1602a2fcc3609c83b885a28f3eecbd libvirt-1.2.3.tar.gz
1c84a7baeafe0a7f4e9d7ae5180311b7 libvirt.confd
d897df38c7e7fa1a297aa551108633c9 libvirt.initd
df9cbfaf8a6e520a4822914a300add4d uclibc-physmem.patch
-9da7723b114b2d87558e92828366fbcb musl-fix-includes.patch"
+9da7723b114b2d87558e92828366fbcb musl-fix-includes.patch
+aea5a4bd25176fcc1333986c5932ecc2 nodeinfo-musl.patch"
sha256sums="b489d1a29c6166643d34b72795a89b03c6ac775cdaeadb6aa86fc1a982c02e31 libvirt-1.2.3.tar.gz
851ab3f9678f0fa9c3ee03f7fc7bd00c4ee86d5f0777eecf9eb1ffe3243adfd1 libvirt.confd
e9fad203434ffaa6afe524e42a9fb6594edad61cb02b1ca60a68d1a7fe0c31ab libvirt.initd
807005a8669b7396c9af43ddb2534bb0f073f1e97a5c8b1d9eefc1949f3c2df8 uclibc-physmem.patch
-8dfa9dbe71ee21dc53e44bd7cc0127adde1bf3371d6b393657b386bb83f8139b musl-fix-includes.patch"
+8dfa9dbe71ee21dc53e44bd7cc0127adde1bf3371d6b393657b386bb83f8139b musl-fix-includes.patch
+7203f304eaf15f915c8a0551c9a5ea5f6646c9c6d937e399eda530d7be803768 nodeinfo-musl.patch"
sha512sums="5ff85a98a0c62229d0ab8125d20fce982f8497d20cb89758bc37f475d7a5d59caa6d962e6c2313e1c494ca1648a836fcad253ceaccc34cc0060135470be3db5b libvirt-1.2.3.tar.gz
9aba6ab73219a635c64a340ee8887356e644445c9128734cbce73f5d54778378da2f10a190365ad88a7db8bc95b1fb17f0c6ca41fc41bb786c09e1afe84d65dc libvirt.confd
f48c97f93ef4509a86eda6200b3aae5b2c0c6263403bde933b770fd62240dca27bc439bd29b440ea6a47c8337f8b4511230ed915cb5ff54d9a1cf311863f6fa1 libvirt.initd
4c885e72dcb11f8523a267917315d4874812eee289fb00075334c1728d0da9bd0e5db6c52d6e3c39bd3fe66d5ccadf9e26ec9dcaa855397e211b9bd1173ac72d uclibc-physmem.patch
-b6142256bf2700b9e5335c60fe5628e4095a24689c31d54afcab46f46a06b9c0ae676f87f77a487377eafbec11fb7afa9b994aef48a10a39e82f47c45df008ba musl-fix-includes.patch"
+b6142256bf2700b9e5335c60fe5628e4095a24689c31d54afcab46f46a06b9c0ae676f87f77a487377eafbec11fb7afa9b994aef48a10a39e82f47c45df008ba musl-fix-includes.patch
+62267f24bc6c2baa8f09d0a56abc1cb39997b54ce665878f7e187bb87e2f25cc358849a63f2b10f43ce0f56d62261507ab5c0a6ad1874722b33f4e1329c4df34 nodeinfo-musl.patch"
diff --git a/main/libvirt/nodeinfo-musl.patch b/main/libvirt/nodeinfo-musl.patch
new file mode 100644
index 0000000000..f7c855e6d9
--- /dev/null
+++ b/main/libvirt/nodeinfo-musl.patch
@@ -0,0 +1,61 @@
+diff --git a/src/nodeinfo.c b/src/nodeinfo.c
+index 53ba716..8d3214e 100644
+--- a/src/nodeinfo.c
++++ b/src/nodeinfo.c
+@@ -452,8 +452,7 @@ virNodeParseNode(const char *node,
+
+ /* enumerate sockets in the node */
+ CPU_ZERO(&sock_map);
+- errno = 0;
+- while ((cpudirent = readdir(cpudir))) {
++ for (errno = 0; (cpudirent = readdir(cpudir)); errno = 0) {
+ if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1)
+ continue;
+
+@@ -470,8 +469,6 @@ virNodeParseNode(const char *node,
+
+ if (sock > sock_max)
+ sock_max = sock;
+-
+- errno = 0;
+ }
+
+ if (errno) {
+@@ -490,8 +487,7 @@ virNodeParseNode(const char *node,
+
+ /* iterate over all CPU's in the node */
+ rewinddir(cpudir);
+- errno = 0;
+- while ((cpudirent = readdir(cpudir))) {
++ for (errno = 0; (cpudirent = readdir(cpudir)); errno = 0) {
+ if (sscanf(cpudirent->d_name, "cpu%u", &cpu) != 1)
+ continue;
+
+@@ -530,8 +526,6 @@ virNodeParseNode(const char *node,
+
+ if (siblings > *threads)
+ *threads = siblings;
+-
+- errno = 0;
+ }
+
+ if (errno) {
+@@ -672,8 +666,7 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo,
+ goto fallback;
+ }
+
+- errno = 0;
+- while ((nodedirent = readdir(nodedir))) {
++ for (errno = 0; (nodedirent = readdir(nodedir)); errno = 0) {
+ if (sscanf(nodedirent->d_name, "node%u", &node) != 1)
+ continue;
+
+@@ -699,8 +692,6 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo,
+
+ if (threads > nodeinfo->threads)
+ nodeinfo->threads = threads;
+-
+- errno = 0;
+ }
+
+ if (errno) {