parent
d918ed3580
commit
94f31c1ef0
@ -1 +0,0 @@
|
||||
DIST mate-system-tools-1.8.1.tar.xz 4348304 SHA256 c5f1faee761deb679f7a37607cc7166ea81b7d16a7fbc05951b32f119bcb944e SHA512 a2cda52ebab386ebbf6c01288741f59914c8fe8a672a1220b0a8cc44afb51058e8545f385f4d5dab650bc36c3c18ad9519580ce255b4c607131c2c5dd3ce15ce WHIRLPOOL ba486ffcc9dd25aa10858e3b09a046eadbe99a11d4e98c872dd14b91002e9e62a17d88744707ef8fac80b44e27d6402b4532d77d30f6ce0f905335d0e9eee7d2
|
@ -1,66 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
GCONF_DEBUG="no"
|
||||
GNOME2_LA_PUNT="yes"
|
||||
|
||||
inherit gnome2 versionator
|
||||
|
||||
MATE_BRANCH="$(get_version_component_range 1-2)"
|
||||
|
||||
SRC_URI="http://pub.mate-desktop.org/releases/${MATE_BRANCH}/${P}.tar.xz"
|
||||
DESCRIPTION="Tools aimed to make easy the administration of UNIX systems"
|
||||
HOMEPAGE="http://mate-desktop.org"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
|
||||
IUSE="caja nfs policykit samba"
|
||||
|
||||
RDEPEND="app-text/rarian:0
|
||||
>=app-admin/system-tools-backends-2.10.1:0
|
||||
dev-libs/atk:0
|
||||
dev-libs/dbus-glib:0
|
||||
>=dev-libs/glib-2.25.3:2
|
||||
>=dev-libs/liboobs-1.1:0
|
||||
>=sys-apps/dbus-0.32:0
|
||||
net-wireless/wireless-tools:0
|
||||
sys-libs/cracklib:0
|
||||
x11-libs/gdk-pixbuf:2
|
||||
x11-libs/pango:0
|
||||
>=x11-libs/gtk+-2.19.7:2
|
||||
virtual/libintl:0
|
||||
caja? ( >=mate-base/caja-1.8:0 )
|
||||
nfs? ( net-fs/nfs-utils:0 )
|
||||
policykit? (
|
||||
>=mate-extra/mate-polkit-1.8:0
|
||||
>=sys-auth/polkit-0.92:0
|
||||
)
|
||||
samba? ( >=net-fs/samba-3:0 )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
app-text/docbook-xml-dtd:4.1.2
|
||||
>=app-text/scrollkeeper-dtd-1:1.0
|
||||
app-text/yelp-tools:0
|
||||
sys-devel/gettext:*
|
||||
virtual/pkgconfig:*
|
||||
>=dev-util/intltool-0.35.0:*"
|
||||
|
||||
src_configure() {
|
||||
local myconf
|
||||
if ! use nfs && ! use samba; then
|
||||
myconf="--disable-shares"
|
||||
fi
|
||||
|
||||
gnome2_src_configure \
|
||||
${myconf} \
|
||||
--disable-static \
|
||||
$(use_enable policykit polkit-gtk-mate) \
|
||||
$(use_enable caja)
|
||||
}
|
||||
|
||||
DOCS="AUTHORS BUGS ChangeLog HACKING NEWS README TODO"
|
@ -1,22 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>mate@gentoo.org</email>
|
||||
<name>Gentoo MATE Desktop</name>
|
||||
</maintainer>
|
||||
<longdescription>
|
||||
Formerly known as the Ximian Setup Tools, the GST are a fully
|
||||
integrated set of tools aimed to make easy the job that means the
|
||||
computer administration on an UNIX or Linux system. They're
|
||||
thought to help from the new Linux or UNIX user to the system
|
||||
administrators.
|
||||
</longdescription>
|
||||
<use>
|
||||
<flag name="nfs">Adds support for NFS shares</flag>
|
||||
<flag name="caja">Adds support for the Caja file manager</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="github">mate-desktop/mate-system-tools</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -0,0 +1 @@
|
||||
DIST libmd-0.0.0.tar.xz 252384 SHA256 fd3f2366236fb3fd0dac0c0a77ffff8511e2939c79d1d58daf56e3f5ee383a88 SHA512 6677959b7725114d7ebb747e0746d2712fc9b65f688eb28fa931c9042cee10cda3de33a1496b0220141800e98cf923d95dd5a5f3c2b8a68c3e169ef9fdaa39ef WHIRLPOOL c53c805ef892e2c08e150a387185442ce62f08887f4f0d0b3517109c4e12400fb0c39132afbe548ba9f7258754d5543949f5a7f28efec32e32ecdc20958aa34b
|
@ -0,0 +1,14 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
DESCRIPTION="Message Digest functions from BSD systems"
|
||||
HOMEPAGE="https://www.hadrons.org/software/libmd/"
|
||||
SRC_URI="https://archive.hadrons.org/software/libmd/${P}.tar.xz"
|
||||
|
||||
LICENSE="|| ( BSD BSD-2 ISC BEER-WARE public-domain )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>mrueg@gentoo.org</email>
|
||||
<name>Manuel Rüger</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -1,3 +1,4 @@
|
||||
DIST signing-party_1.1.11.orig.tar.gz 233965 SHA256 90073c2c05a36c0fdbf4ffc8b06269a3245121f0c408762ff03ffcb65a3e457a SHA512 788ee08e23b7ba45a5891638204452490be29ab9fd75e848ff3990bf1c1a052885eb41f0cca09bd299065c03d86ded07d7949e696587212b694c0ec2a2faf573 WHIRLPOOL 5af071c650c67febd6e1b7014694fcd4a2cd0408b614340da54ba575913bd96385385a6f57e609ccffd3e519f59b3eeb07a83b46fb039b938c5958d1eb35c88b
|
||||
DIST signing-party_1.1.4.orig.tar.gz 230259 SHA256 3d135437540ad1e5b3bb209ee90896a6b9153170eb0e4c93d018c1952fb80fa1 SHA512 935a192d8ce0057731b3422d217a90890dd97d9c84a3a46e3e4a2536f41e6752a44a86ba13db9b9a3e24a629dd6e78cb599a7999eeffea0a2b3b83b775dea36c WHIRLPOOL b5efdbd37d3277fd4fedc0938abcedada2c9a603bfdb1e93882e60abd698e4d4ef9535fde8d6c0c57818603e12507d911a150022fea5690b72eac66eecda803f
|
||||
DIST signing-party_2.2.orig.tar.gz 237612 SHA256 ad5d06c6c58de17aee104b9cf2f3a954cd9b854e5a77c1a8b62cf0a67c63168f SHA512 bf4b741364cf100f17047900e61c16a8df2f31a3143ce40de64afdb19b8ed251c716389661787988d03526ade4453e096b1d76fa51777e74d6fa84ecd2c5f09d WHIRLPOOL 7fda0fe23951d7375d92bb22fdc5fd55d6415beea6f899e5b01b24d7d58ca6e8f0ca22805095cdb66ce82c80109802c5b452152cf2d994ee0a039f96405720e8
|
||||
DIST signing-party_2.4.orig.tar.gz 197731 SHA256 02b3487ab80cb3030d33317ce1290c2700241fd2138f6768a49c63a55a6a62fe SHA512 0ab18af70314839193d25053c6b3de31afba173ae70a39b84e19aad8ec4864bbd95f9b685b3bc807674310c35af2dc75145eb6eb9d03d6a0ce84ce45ac7f29c0 WHIRLPOOL fb6892338c110751f7332905afd0336dae667104650a1bc10422111d169a398cfebbe2753202d8a64643eb0bd1a16bb0424b7e71be8651077985cbdb1bc51b99
|
||||
|
@ -0,0 +1,115 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit eutils toolchain-funcs autotools
|
||||
|
||||
DESCRIPTION="A collection of several tools related to OpenPGP"
|
||||
HOMEPAGE="http://pgp-tools.alioth.debian.org/"
|
||||
SRC_URI="mirror://debian/pool/main/s/signing-party/${PN}_${PV}.orig.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="dev-lang/perl"
|
||||
RDEPEND="${DEPEND}
|
||||
>=app-crypt/gnupg-1.3.92
|
||||
app-crypt/libmd
|
||||
dev-perl/GnuPG-Interface
|
||||
dev-perl/Text-Template
|
||||
dev-perl/MIME-tools
|
||||
net-mail/qprint
|
||||
>=dev-perl/MailTools-1.62
|
||||
dev-perl/Net-IDN-Encode
|
||||
virtual/mailx
|
||||
virtual/mta
|
||||
|| (
|
||||
dev-perl/libintl-perl
|
||||
dev-perl/Text-Iconv
|
||||
app-text/recode
|
||||
)"
|
||||
S=$WORKDIR
|
||||
|
||||
src_prepare() {
|
||||
# app-crypt/keylookup
|
||||
rm -r keylookup || die
|
||||
# media-gfx/springgraph
|
||||
rm -r springgraph || die
|
||||
|
||||
cd keyanalyze/pgpring || die
|
||||
sed -i 's/AM_C_PROTOTYPES//' configure.ac || die
|
||||
eautoreconf
|
||||
cd "${WORKDIR}" || die
|
||||
|
||||
find . -name Makefile | xargs sed -i -e 's/CFLAGS:=/CFLAGS=/' -e 's/CPPFLAGS:=/CPPFLAGS=/' -e 's/LDFLAGS:=/LDFLAGS=/'
|
||||
|
||||
sed -i "s:/usr/share/doc/signing-party/caff/caffrc.sample:${EPREFIX}/usr/share/doc/${P}/caff/caffrc.sample.gz:g" \
|
||||
caff/caff || die
|
||||
sed -i -e 's/automake[^ ]*/true/g' -e 's/autoconf[^ ]*/true/g' keyanalyze/Makefile || die
|
||||
sed -i 's/make /\$(MAKE) /' keyanalyze/Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake \
|
||||
CC="$(tc-getCC)" \
|
||||
CPPFLAGS="${CPPFLAGS}" \
|
||||
CFLAGS="${CFLAGS}" \
|
||||
LDFLAGS="${LDFLAGS}" \
|
||||
STRIP=true
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Check Makefile when a new tool is introduced to this package.
|
||||
# caff
|
||||
dobin caff/caff caff/pgp-clean caff/pgp-fixkey
|
||||
docinto caff
|
||||
dodoc caff/{README*,THANKS,TODO,caffrc.sample}
|
||||
# gpgdir
|
||||
dobin gpgdir/gpgdir
|
||||
docinto gpgdir
|
||||
dodoc gpgdir/{VERSION,LICENSE,README,INSTALL,CREDITS,ChangeLog*}
|
||||
# gpg-key2ps
|
||||
dobin gpg-key2ps/gpg-key2ps
|
||||
docinto gpg-key2ps
|
||||
dodoc gpg-key2ps/README
|
||||
# gpglist
|
||||
dobin gpglist/gpglist
|
||||
# gpg-mailkeys
|
||||
dobin gpg-mailkeys/gpg-mailkeys
|
||||
docinto gpg-mailkeys
|
||||
dodoc gpg-mailkeys/{example.gpg-mailkeysrc,README}
|
||||
# gpgparticipants
|
||||
dobin gpgparticipants/gpgparticipants
|
||||
# gpgwrap
|
||||
dobin gpgwrap/bin/gpgwrap
|
||||
docinto gpgwrap
|
||||
dodoc gpgwrap/{LICENSE,NEWS,README}
|
||||
doman gpgwrap/doc/gpgwrap.1
|
||||
# gpgsigs
|
||||
dobin gpgsigs/gpgsigs
|
||||
insinto /usr/share/signing-party
|
||||
# keyanalyze
|
||||
# TODO: some of the scripts are intended for webpages, and not really
|
||||
# packaging, so they are NOT installed yet.
|
||||
newbin keyanalyze/pgpring/pgpring pgpring-keyanalyze
|
||||
dobin keyanalyze/{keyanalyze,process_keys}
|
||||
docinto keyanalyze
|
||||
dodoc keyanalyze/{README,Changelog}
|
||||
# See app-crypt/keylookup instead
|
||||
#dobin keylookup/keylookup
|
||||
#docinto keylookup
|
||||
#dodoc keylookup/NEWS
|
||||
# sig2dot
|
||||
dobin sig2dot/sig2dot
|
||||
dodoc sig2dot/README.sig2dot
|
||||
# See media-gfx/springgraph instead
|
||||
#dobin springgraph/springgraph
|
||||
#dodoc springgraph/README.springgraph
|
||||
# all other manpages, and the root doc
|
||||
doman */*.1
|
||||
dodoc README
|
||||
}
|
@ -1,3 +1,3 @@
|
||||
DIST ReText-4.1.3.tar.gz 129283 SHA256 bb4409982d27ac62cab01b0748fe41d9c6660853668b350f3369e76d155edd6c SHA512 d2b3fa901afa9870f6cecc7ab3126b91f1420ca1b14ddd4f609c2ada7121388840b5be679914694664f3bbf876ee8522aa6b0c82a23f837844f788fa10a46323 WHIRLPOOL 3be71e5d7ec612ae4e4fec17ca544f6d0e7cb7421fcdeb517d3c13156ed07f5e5e7c3e352cf604bfb5f2287964fdc173a1bac0eeab41ee1cda8b265ad0f57686
|
||||
DIST ReText-5.3.0.tar.gz 160163 SHA256 9ec0cee93e6731fbf00b86574cb47c3132f62291e762f5e47258a3171bfdd21d SHA512 d6ff8e61b1e13de72c5d1741795fddb3a1ba443b2aa6aba6ca933ae38e09c8dac38085bfd73e0c1773dec9a72df1f08d64ef22d2396694530bade6ff8a485223 WHIRLPOOL 98537b5244a583c04604a6b1626a3813b6506dfefda6d40c85aaae076b30c7e14a0b8a363e431d9bd5ceea41a31f07785663a018bbdae1dc897a29eec22c99c1
|
||||
DIST ReText-5.3.1.tar.gz 159669 SHA256 515b1aaa57615453f8933f997753072a5c4691793da2280e70d1b333b53904c6 SHA512 76c6f78c10129e4845de819fa6db3deff5441a25331fd3dadbdfeb766caa453f21214f82e6625c919cc8be2fcfdfada970cae32837bb8904c3702dda19890628 WHIRLPOOL 5c2db75c2b2f23419bc2803849f6b7a69f3540911c6e53f46a46baffd150a9a0db75d0343361963a53bcc1a6da4534eb72d99068a26c13c1551b6188ab81f67a
|
||||
DIST ReText-6.0.1.tar.gz 184098 SHA256 7c9785cb022d2f0b123b8a808c2419cf1300249d594a72a5ef5a0030de8bb630 SHA512 aca8db5d82fadee7b8d03279e080b33da696339eb674ba1fc2dd4ced7c92b1608d8ed2d181bdbe913601d63755df38ebdfa06f77398e1b52cc922f54fc0fe867 WHIRLPOOL 0590b347e7ca21d7e6e653c74fd53abe2ccb0852e6ab3f53213f8beb38234b0b757bf60ba77f68e485b68332d3b06def94aa4b9aebae369e472a876ce34d9b77
|
||||
|
@ -1,3 +1,2 @@
|
||||
DIST qemu-2.5.0.tar.bz2 25464996 SHA256 3443887401619fe33bfa5d900a4f2d6a79425ae2b7e43d5b8c36eb7a683772d4 SHA512 12153f94cc7f834fd6a85f25690c36f2331d88d414426fb8b9ac20a34e6f9222b1eda30b727674af583580fae90dfd6d0614a905dce1567d94cd049d426b9dd3 WHIRLPOOL 8f5717989d8d234ecf1763ee386b2e1f20c3b17918de130c6dae255e4523a230b2b01a759eba25e4b9f604c680d9b868c56f58bd71b7c6c2c22a2e46804435ef
|
||||
DIST qemu-2.5.1.tar.bz2 25464539 SHA256 028752c33bb786abbfe496ba57315dc5a7d0a33b5a7a767f6d7a29020c525d2c SHA512 66959ad6a2a89f23c5daba245c76f71ddc03a33a1167bca639a042ebbf7329b2e698cd2c0e65c22a9874563a34256a48386aa9df6475b06d38db74187e3e3b3f WHIRLPOOL 32525271574692d56b7794dc63606659f46e6ae19a56dee31b3cec33dab9c4eb74147a65db4940229492d8680f38c2d05bc2a8fbcb4b6887b0c1cbe5fbbe44cf
|
||||
DIST qemu-2.6.0.tar.bz2 25755267 SHA256 c9ac4a651b273233d21b8bec32e30507cb9cce7900841febc330956a1a8434ec SHA512 0d17075e52f7688cc05776ad7a76509d1f22ae8eda896fddb06c1fd6dea6da485422c8efb3ba118b054d9a413b7b02baba656a9131658dabdb71def50c92b215 WHIRLPOOL f9373bf66f67301787e7510ac161b0072ba7c7bc067e10215fb97a52524adaba0fcbc79a4c0cefac9c6e2b4e07380eb9d10f65ed6ce6867e43843043684231ed
|
||||
DIST qemu-2.7.0.tar.bz2 26867760 SHA256 326e739506ba690daf69fc17bd3913a6c313d9928d743bd8eddb82f403f81e53 SHA512 654acaa7b3724a288e5d7e2a26ab780d9c9ed9f647fba00a906cbaffbe9d58fd666f2d962514aa2c5b391b4c53811ac3170d2eb51727f090bd19dfe45ca9a9db WHIRLPOOL dcb3e5f7da89dd8e14d636d7ebd476e076e0043880bb9ea3fb1c03cb4bcd4e5c7d3c4719da26c3ce521e3a3db5ae671e86f198ac1bc3474e774d75504fef8b8d
|
||||
|
@ -1,34 +0,0 @@
|
||||
From 4b3a4f2d458ca5a7c6c16ac36a8d9ac22cc253d6 Mon Sep 17 00:00:00 2001
|
||||
From: Greg Kurz <gkurz@linux.vnet.ibm.com>
|
||||
Date: Wed, 23 Dec 2015 10:56:58 +0100
|
||||
Subject: [PATCH] virtio-9p: use accessor to get thread_pool
|
||||
|
||||
The aio_context_new() function does not allocate a thread pool. This is
|
||||
deferred to the first call to the aio_get_thread_pool() accessor. It is
|
||||
hence forbidden to access the thread_pool field directly, as it may be
|
||||
NULL. The accessor *must* be used always.
|
||||
|
||||
Fixes: ebac1202c95a4f1b76b6ef3f0f63926fa76e753e
|
||||
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
|
||||
Tested-by: Michael Tokarev <mjt@tls.msk.ru>
|
||||
Cc: qemu-stable@nongnu.org
|
||||
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
|
||||
---
|
||||
hw/9pfs/virtio-9p-coth.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/9pfs/virtio-9p-coth.c b/hw/9pfs/virtio-9p-coth.c
|
||||
index fb6e8f8..ab9425c 100644
|
||||
--- a/hw/9pfs/virtio-9p-coth.c
|
||||
+++ b/hw/9pfs/virtio-9p-coth.c
|
||||
@@ -36,6 +36,6 @@ static int coroutine_enter_func(void *arg)
|
||||
void co_run_in_worker_bh(void *opaque)
|
||||
{
|
||||
Coroutine *co = opaque;
|
||||
- thread_pool_submit_aio(qemu_get_aio_context()->thread_pool,
|
||||
+ thread_pool_submit_aio(aio_get_thread_pool(qemu_get_aio_context()),
|
||||
coroutine_enter_func, co, coroutine_enter_cb, co);
|
||||
}
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,95 +0,0 @@
|
||||
https://bugs.gentoo.org/567868
|
||||
|
||||
From aa4a3dce1c88ed51b616806b8214b7c8428b7470 Mon Sep 17 00:00:00 2001
|
||||
From: P J P <ppandit@redhat.com>
|
||||
Date: Tue, 15 Dec 2015 12:27:54 +0530
|
||||
Subject: [PATCH] net: vmxnet3: avoid memory leakage in activate_device
|
||||
|
||||
Vmxnet3 device emulator does not check if the device is active
|
||||
before activating it, also it did not free the transmit & receive
|
||||
buffers while deactivating the device, thus resulting in memory
|
||||
leakage on the host. This patch fixes both these issues to avoid
|
||||
host memory leakage.
|
||||
|
||||
Reported-by: Qinghao Tang <luodalongde@gmail.com>
|
||||
Reviewed-by: Dmitry Fleytman <dmitry@daynix.com>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Cc: qemu-stable@nongnu.org
|
||||
Signed-off-by: Jason Wang <jasowang@redhat.com>
|
||||
---
|
||||
hw/net/vmxnet3.c | 24 ++++++++++++++++--------
|
||||
1 file changed, 16 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c
|
||||
index a5dd79a..9c1adfc 100644
|
||||
--- a/hw/net/vmxnet3.c
|
||||
+++ b/hw/net/vmxnet3.c
|
||||
@@ -1194,8 +1194,13 @@ static void vmxnet3_reset_mac(VMXNET3State *s)
|
||||
|
||||
static void vmxnet3_deactivate_device(VMXNET3State *s)
|
||||
{
|
||||
- VMW_CBPRN("Deactivating vmxnet3...");
|
||||
- s->device_active = false;
|
||||
+ if (s->device_active) {
|
||||
+ VMW_CBPRN("Deactivating vmxnet3...");
|
||||
+ vmxnet_tx_pkt_reset(s->tx_pkt);
|
||||
+ vmxnet_tx_pkt_uninit(s->tx_pkt);
|
||||
+ vmxnet_rx_pkt_uninit(s->rx_pkt);
|
||||
+ s->device_active = false;
|
||||
+ }
|
||||
}
|
||||
|
||||
static void vmxnet3_reset(VMXNET3State *s)
|
||||
@@ -1204,7 +1209,6 @@ static void vmxnet3_reset(VMXNET3State *s)
|
||||
|
||||
vmxnet3_deactivate_device(s);
|
||||
vmxnet3_reset_interrupt_states(s);
|
||||
- vmxnet_tx_pkt_reset(s->tx_pkt);
|
||||
s->drv_shmem = 0;
|
||||
s->tx_sop = true;
|
||||
s->skip_current_tx_pkt = false;
|
||||
@@ -1431,6 +1435,12 @@ static void vmxnet3_activate_device(VMXNET3State *s)
|
||||
return;
|
||||
}
|
||||
|
||||
+ /* Verify if device is active */
|
||||
+ if (s->device_active) {
|
||||
+ VMW_CFPRN("Vmxnet3 device is active");
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
vmxnet3_adjust_by_guest_type(s);
|
||||
vmxnet3_update_features(s);
|
||||
vmxnet3_update_pm_state(s);
|
||||
@@ -1627,7 +1637,7 @@ static void vmxnet3_handle_command(VMXNET3State *s, uint64_t cmd)
|
||||
break;
|
||||
|
||||
case VMXNET3_CMD_QUIESCE_DEV:
|
||||
- VMW_CBPRN("Set: VMXNET3_CMD_QUIESCE_DEV - pause the device");
|
||||
+ VMW_CBPRN("Set: VMXNET3_CMD_QUIESCE_DEV - deactivate the device");
|
||||
vmxnet3_deactivate_device(s);
|
||||
break;
|
||||
|
||||
@@ -1741,7 +1751,7 @@ vmxnet3_io_bar1_write(void *opaque,
|
||||
* shared address only after we get the high part
|
||||
*/
|
||||
if (val == 0) {
|
||||
- s->device_active = false;
|
||||
+ vmxnet3_deactivate_device(s);
|
||||
}
|
||||
s->temp_shared_guest_driver_memory = val;
|
||||
s->drv_shmem = 0;
|
||||
@@ -2021,9 +2031,7 @@ static bool vmxnet3_peer_has_vnet_hdr(VMXNET3State *s)
|
||||
static void vmxnet3_net_uninit(VMXNET3State *s)
|
||||
{
|
||||
g_free(s->mcast_list);
|
||||
- vmxnet_tx_pkt_reset(s->tx_pkt);
|
||||
- vmxnet_tx_pkt_uninit(s->tx_pkt);
|
||||
- vmxnet_rx_pkt_uninit(s->rx_pkt);
|
||||
+ vmxnet3_deactivate_device(s);
|
||||
qemu_del_nic(s->nic);
|
||||
}
|
||||
|
||||
--
|
||||
2.6.2
|
||||
|
@ -1,35 +0,0 @@
|
||||
From 36fef36b91f7ec0435215860f1458b5342ce2811 Mon Sep 17 00:00:00 2001
|
||||
From: P J P <ppandit@redhat.com>
|
||||
Date: Mon, 21 Dec 2015 15:13:13 +0530
|
||||
Subject: [PATCH] scsi: initialise info object with appropriate size
|
||||
|
||||
While processing controller 'CTRL_GET_INFO' command, the routine
|
||||
'megasas_ctrl_get_info' overflows the '&info' object size. Use its
|
||||
appropriate size to null initialise it.
|
||||
|
||||
Reported-by: Qinghao Tang <luodalongde@gmail.com>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Message-Id: <alpine.LFD.2.20.1512211501420.22471@wniryva>
|
||||
Cc: qemu-stable@nongnu.org
|
||||
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||
Signed-off-by: P J P <ppandit@redhat.com>
|
||||
---
|
||||
hw/scsi/megasas.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/scsi/megasas.c b/hw/scsi/megasas.c
|
||||
index d7dc667..576f56c 100644
|
||||
--- a/hw/scsi/megasas.c
|
||||
+++ b/hw/scsi/megasas.c
|
||||
@@ -718,7 +718,7 @@ static int megasas_ctrl_get_info(MegasasState *s, MegasasCmd *cmd)
|
||||
BusChild *kid;
|
||||
int num_pd_disks = 0;
|
||||
|
||||
- memset(&info, 0x0, cmd->iov_size);
|
||||
+ memset(&info, 0x0, dcmd_size);
|
||||
if (cmd->iov_size < dcmd_size) {
|
||||
trace_megasas_dcmd_invalid_xfer_len(cmd->index, cmd->iov_size,
|
||||
dcmd_size);
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,121 +0,0 @@
|
||||
From 64ffbe04eaafebf4045a3ace52a360c14959d196 Mon Sep 17 00:00:00 2001
|
||||
From: Wolfgang Bumiller <w.bumiller@proxmox.com>
|
||||
Date: Wed, 13 Jan 2016 09:09:58 +0100
|
||||
Subject: [PATCH] hmp: fix sendkey out of bounds write (CVE-2015-8619)
|
||||
|
||||
When processing 'sendkey' command, hmp_sendkey routine null
|
||||
terminates the 'keyname_buf' array. This results in an OOB
|
||||
write issue, if 'keyname_len' was to fall outside of
|
||||
'keyname_buf' array.
|
||||
|
||||
Since the keyname's length is known the keyname_buf can be
|
||||
removed altogether by adding a length parameter to
|
||||
index_from_key() and using it for the error output as well.
|
||||
|
||||
Reported-by: Ling Liu <liuling-it@360.cn>
|
||||
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
|
||||
Message-Id: <20160113080958.GA18934@olga>
|
||||
[Comparison with "<" dumbed down, test for junk after strtoul()
|
||||
tweaked]
|
||||
Signed-off-by: Markus Armbruster <armbru@redhat.com>
|
||||
---
|
||||
hmp.c | 18 ++++++++----------
|
||||
include/ui/console.h | 2 +-
|
||||
ui/input-legacy.c | 5 +++--
|
||||
3 files changed, 12 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/hmp.c b/hmp.c
|
||||
index 54f2620..9c571f5 100644
|
||||
--- a/hmp.c
|
||||
+++ b/hmp.c
|
||||
@@ -1731,21 +1731,18 @@ void hmp_sendkey(Monitor *mon, const QDict *qdict)
|
||||
int has_hold_time = qdict_haskey(qdict, "hold-time");
|
||||
int hold_time = qdict_get_try_int(qdict, "hold-time", -1);
|
||||
Error *err = NULL;
|
||||
- char keyname_buf[16];
|
||||
char *separator;
|
||||
int keyname_len;
|
||||
|
||||
while (1) {
|
||||
separator = strchr(keys, '-');
|
||||
keyname_len = separator ? separator - keys : strlen(keys);
|
||||
- pstrcpy(keyname_buf, sizeof(keyname_buf), keys);
|
||||
|
||||
/* Be compatible with old interface, convert user inputted "<" */
|
||||
- if (!strncmp(keyname_buf, "<", 1) && keyname_len == 1) {
|
||||
- pstrcpy(keyname_buf, sizeof(keyname_buf), "less");
|
||||
+ if (keys[0] == '<' && keyname_len == 1) {
|
||||
+ keys = "less";
|
||||
keyname_len = 4;
|
||||
}
|
||||
- keyname_buf[keyname_len] = 0;
|
||||
|
||||
keylist = g_malloc0(sizeof(*keylist));
|
||||
keylist->value = g_malloc0(sizeof(*keylist->value));
|
||||
@@ -1758,16 +1755,17 @@ void hmp_sendkey(Monitor *mon, const QDict *qdict)
|
||||
}
|
||||
tmp = keylist;
|
||||
|
||||
- if (strstart(keyname_buf, "0x", NULL)) {
|
||||
+ if (strstart(keys, "0x", NULL)) {
|
||||
char *endp;
|
||||
- int value = strtoul(keyname_buf, &endp, 0);
|
||||
- if (*endp != '\0') {
|
||||
+ int value = strtoul(keys, &endp, 0);
|
||||
+ assert(endp <= keys + keyname_len);
|
||||
+ if (endp != keys + keyname_len) {
|
||||
goto err_out;
|
||||
}
|
||||
keylist->value->type = KEY_VALUE_KIND_NUMBER;
|
||||
keylist->value->u.number = value;
|
||||
} else {
|
||||
- int idx = index_from_key(keyname_buf);
|
||||
+ int idx = index_from_key(keys, keyname_len);
|
||||
if (idx == Q_KEY_CODE_MAX) {
|
||||
goto err_out;
|
||||
}
|
||||
@@ -1789,7 +1787,7 @@ out:
|
||||
return;
|
||||
|
||||
err_out:
|
||||
- monitor_printf(mon, "invalid parameter: %s\n", keyname_buf);
|
||||
+ monitor_printf(mon, "invalid parameter: %.*s\n", keyname_len, keys);
|
||||
goto out;
|
||||
}
|
||||
|
||||
diff --git a/include/ui/console.h b/include/ui/console.h
|
||||
index adac36d..116bc2b 100644
|
||||
--- a/include/ui/console.h
|
||||
+++ b/include/ui/console.h
|
||||
@@ -448,7 +448,7 @@ static inline int vnc_display_pw_expire(const char *id, time_t expires)
|
||||
void curses_display_init(DisplayState *ds, int full_screen);
|
||||
|
||||
/* input.c */
|
||||
-int index_from_key(const char *key);
|
||||
+int index_from_key(const char *key, size_t key_length);
|
||||
|
||||
/* gtk.c */
|
||||
void early_gtk_display_init(int opengl);
|
||||
diff --git a/ui/input-legacy.c b/ui/input-legacy.c
|
||||
index 35dfc27..3454055 100644
|
||||
--- a/ui/input-legacy.c
|
||||
+++ b/ui/input-legacy.c
|
||||
@@ -57,12 +57,13 @@ struct QEMUPutLEDEntry {
|
||||
static QTAILQ_HEAD(, QEMUPutLEDEntry) led_handlers =
|
||||
QTAILQ_HEAD_INITIALIZER(led_handlers);
|
||||
|
||||
-int index_from_key(const char *key)
|
||||
+int index_from_key(const char *key, size_t key_length)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; QKeyCode_lookup[i] != NULL; i++) {
|
||||
- if (!strcmp(key, QKeyCode_lookup[i])) {
|
||||
+ if (!strncmp(key, QKeyCode_lookup[i], key_length) &&
|
||||
+ !QKeyCode_lookup[i][key_length]) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,49 +0,0 @@
|
||||
https://bugs.gentoo.org/570110
|
||||
|
||||
From 007cd223de527b5f41278f2d886c1a4beb3e67aa Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Mon, 28 Dec 2015 16:24:08 +0530
|
||||
Subject: [PATCH] net: rocker: fix an incorrect array bounds check
|
||||
|
||||
While processing transmit(tx) descriptors in 'tx_consume' routine
|
||||
the switch emulator suffers from an off-by-one error, if a
|
||||
descriptor was to have more than allowed(ROCKER_TX_FRAGS_MAX=16)
|
||||
fragments. Fix an incorrect bounds check to avoid it.
|
||||
|
||||
Reported-by: Qinghao Tang <luodalongde@gmail.com>
|
||||
Cc: qemu-stable@nongnu.org
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Signed-off-by: Jason Wang <jasowang@redhat.com>
|
||||
---
|
||||
hw/net/rocker/rocker.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/hw/net/rocker/rocker.c b/hw/net/rocker/rocker.c
|
||||
index c57f1a6..2e77e50 100644
|
||||
--- a/hw/net/rocker/rocker.c
|
||||
+++ b/hw/net/rocker/rocker.c
|
||||
@@ -232,6 +232,9 @@ static int tx_consume(Rocker *r, DescInfo *info)
|
||||
frag_addr = rocker_tlv_get_le64(tlvs[ROCKER_TLV_TX_FRAG_ATTR_ADDR]);
|
||||
frag_len = rocker_tlv_get_le16(tlvs[ROCKER_TLV_TX_FRAG_ATTR_LEN]);
|
||||
|
||||
+ if (iovcnt >= ROCKER_TX_FRAGS_MAX) {
|
||||
+ goto err_too_many_frags;
|
||||
+ }
|
||||
iov[iovcnt].iov_len = frag_len;
|
||||
iov[iovcnt].iov_base = g_malloc(frag_len);
|
||||
if (!iov[iovcnt].iov_base) {
|
||||
@@ -244,10 +247,7 @@ static int tx_consume(Rocker *r, DescInfo *info)
|
||||
err = -ROCKER_ENXIO;
|
||||
goto err_bad_io;
|
||||
}
|
||||
-
|
||||
- if (++iovcnt > ROCKER_TX_FRAGS_MAX) {
|
||||
- goto err_too_many_frags;
|
||||
- }
|
||||
+ iovcnt++;
|
||||
}
|
||||
|
||||
if (iovcnt) {
|
||||
--
|
||||
2.6.2
|
||||
|
@ -1,50 +0,0 @@
|
||||
https://bugs.gentoo.org/570988
|
||||
|
||||
From aa7f9966dfdff500bbbf1956d9e115b1fa8987a6 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Thu, 31 Dec 2015 17:05:27 +0530
|
||||
Subject: [PATCH] net: ne2000: fix bounds check in ioport operations
|
||||
|
||||
While doing ioport r/w operations, ne2000 device emulation suffers
|
||||
from OOB r/w errors. Update respective array bounds check to avoid
|
||||
OOB access.
|
||||
|
||||
Reported-by: Ling Liu <liuling-it@360.cn>
|
||||
Cc: qemu-stable@nongnu.org
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Signed-off-by: Jason Wang <jasowang@redhat.com>
|
||||
---
|
||||
hw/net/ne2000.c | 10 ++++++----
|
||||
1 file changed, 6 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/hw/net/ne2000.c b/hw/net/ne2000.c
|
||||
index 010f9ef..a3dffff 100644
|
||||
--- a/hw/net/ne2000.c
|
||||
+++ b/hw/net/ne2000.c
|
||||
@@ -467,8 +467,9 @@ static inline void ne2000_mem_writel(NE2000State *s, uint32_t addr,
|
||||
uint32_t val)
|
||||
{
|
||||
addr &= ~1; /* XXX: check exact behaviour if not even */
|
||||
- if (addr < 32 ||
|
||||
- (addr >= NE2000_PMEM_START && addr < NE2000_MEM_SIZE)) {
|
||||
+ if (addr < 32
|
||||
+ || (addr >= NE2000_PMEM_START
|
||||
+ && addr + sizeof(uint32_t) <= NE2000_MEM_SIZE)) {
|
||||
stl_le_p(s->mem + addr, val);
|
||||
}
|
||||
}
|
||||
@@ -497,8 +498,9 @@ static inline uint32_t ne2000_mem_readw(NE2000State *s, uint32_t addr)
|
||||
static inline uint32_t ne2000_mem_readl(NE2000State *s, uint32_t addr)
|
||||
{
|
||||
addr &= ~1; /* XXX: check exact behaviour if not even */
|
||||
- if (addr < 32 ||
|
||||
- (addr >= NE2000_PMEM_START && addr < NE2000_MEM_SIZE)) {
|
||||
+ if (addr < 32
|
||||
+ || (addr >= NE2000_PMEM_START
|
||||
+ && addr + sizeof(uint32_t) <= NE2000_MEM_SIZE)) {
|
||||
return ldl_le_p(s->mem + addr);
|
||||
} else {
|
||||
return 0xffffffff;
|
||||
--
|
||||
2.6.2
|
||||
|
@ -1,41 +0,0 @@
|
||||
https://bugs.gentoo.org/571566
|
||||
|
||||
From 4ab0359a8ae182a7ac5c99609667273167703fab Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Mon, 11 Jan 2016 14:10:42 -0500
|
||||
Subject: [PATCH] ide: ahci: reset ncq object to unused on error
|
||||
|
||||
When processing NCQ commands, AHCI device emulation prepares a
|
||||
NCQ transfer object; To which an aio control block(aiocb) object
|
||||
is assigned in 'execute_ncq_command'. In case, when the NCQ
|
||||
command is invalid, the 'aiocb' object is not assigned, and NCQ
|
||||
transfer object is left as 'used'. This leads to a use after
|
||||
free kind of error in 'bdrv_aio_cancel_async' via 'ahci_reset_port'.
|
||||
Reset NCQ transfer object to 'unused' to avoid it.
|
||||
|
||||
[Maintainer edit: s/ACHI/AHCI/ in the commit message. --js]
|
||||
|
||||
Reported-by: Qinghao Tang <luodalongde@gmail.com>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Reviewed-by: John Snow <jsnow@redhat.com>
|
||||
Message-id: 1452282511-4116-1-git-send-email-ppandit@redhat.com
|
||||
Signed-off-by: John Snow <jsnow@redhat.com>
|
||||
---
|
||||
hw/ide/ahci.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c
|
||||
index dd1912e..17f1cbd 100644
|
||||
--- a/hw/ide/ahci.c
|
||||
+++ b/hw/ide/ahci.c
|
||||
@@ -910,6 +910,7 @@ static void ncq_err(NCQTransferState *ncq_tfs)
|
||||
ide_state->error = ABRT_ERR;
|
||||
ide_state->status = READY_STAT | ERR_STAT;
|
||||
ncq_tfs->drive->port_regs.scr_err |= (1 << ncq_tfs->tag);
|
||||
+ ncq_tfs->used = 0;
|
||||
}
|
||||
|
||||
static void ncq_finish(NCQTransferState *ncq_tfs)
|
||||
--
|
||||
2.6.2
|
||||
|
@ -1,58 +0,0 @@
|
||||
From 66f8fd9dda312191b78d2a2ba2848bcee76127a2 Mon Sep 17 00:00:00 2001
|
||||
From: "Gabriel L. Somlo" <somlo@cmu.edu>
|
||||
Date: Thu, 5 Nov 2015 09:32:50 -0500
|
||||
Subject: [PATCH] fw_cfg: avoid calculating invalid current entry pointer
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
When calculating a pointer to the currently selected fw_cfg item, the
|
||||
following is used:
|
||||
|
||||
FWCfgEntry *e = &s->entries[arch][s->cur_entry & FW_CFG_ENTRY_MASK];
|
||||
|
||||
When s->cur_entry is FW_CFG_INVALID, we are calculating the address of
|
||||
a non-existent element in s->entries[arch][...], which is undefined.
|
||||
|
||||
This patch ensures the resulting entry pointer is set to NULL whenever
|
||||
s->cur_entry is FW_CFG_INVALID.
|
||||
|
||||
Reported-by: Laszlo Ersek <lersek@redhat.com>
|
||||
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
|
||||
Signed-off-by: Gabriel Somlo <somlo@cmu.edu>
|
||||
Message-id: 1446733972-1602-5-git-send-email-somlo@cmu.edu
|
||||
Cc: Marc Marí <markmb@redhat.com>
|
||||
Signed-off-by: Gabriel Somlo <somlo@cmu.edu>
|
||||
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
---
|
||||
hw/nvram/fw_cfg.c | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c
|
||||
index c2d3a0a..046fa74 100644
|
||||
--- a/hw/nvram/fw_cfg.c
|
||||
+++ b/hw/nvram/fw_cfg.c
|
||||
@@ -277,7 +277,8 @@ static int fw_cfg_select(FWCfgState *s, uint16_t key)
|
||||
static uint8_t fw_cfg_read(FWCfgState *s)
|
||||
{
|
||||
int arch = !!(s->cur_entry & FW_CFG_ARCH_LOCAL);
|
||||
- FWCfgEntry *e = &s->entries[arch][s->cur_entry & FW_CFG_ENTRY_MASK];
|
||||
+ FWCfgEntry *e = (s->cur_entry == FW_CFG_INVALID) ? NULL :
|
||||
+ &s->entries[arch][s->cur_entry & FW_CFG_ENTRY_MASK];
|
||||
uint8_t ret;
|
||||
|
||||
if (s->cur_entry == FW_CFG_INVALID || !e->data || s->cur_offset >= e->len)
|
||||
@@ -342,7 +343,8 @@ static void fw_cfg_dma_transfer(FWCfgState *s)
|
||||
}
|
||||
|
||||
arch = !!(s->cur_entry & FW_CFG_ARCH_LOCAL);
|
||||
- e = &s->entries[arch][s->cur_entry & FW_CFG_ENTRY_MASK];
|
||||
+ e = (s->cur_entry == FW_CFG_INVALID) ? NULL :
|
||||
+ &s->entries[arch][s->cur_entry & FW_CFG_ENTRY_MASK];
|
||||
|
||||
if (dma.control & FW_CFG_DMA_CTL_READ) {
|
||||
read = 1;
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,65 +0,0 @@
|
||||
From 4c1396cb576c9b14425558b73de1584c7a9735d7 Mon Sep 17 00:00:00 2001
|
||||
From: P J P <ppandit@redhat.com>
|
||||
Date: Fri, 18 Dec 2015 11:35:07 +0530
|
||||
Subject: [PATCH] i386: avoid null pointer dereference
|
||||
|
||||
Hello,
|
||||
|
||||
A null pointer dereference issue was reported by Mr Ling Liu, CC'd here. It
|
||||
occurs while doing I/O port write operations via hmp interface. In that,
|
||||
'current_cpu' remains null as it is not called from cpu_exec loop, which
|
||||
results in the said issue.
|
||||
|
||||
Below is a proposed (tested)patch to fix this issue; Does it look okay?
|
||||
|
||||
===
|
||||
From ae88a4947fab9a148cd794f8ad2d812e7f5a1d0f Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Fri, 18 Dec 2015 11:16:07 +0530
|
||||
Subject: [PATCH] i386: avoid null pointer dereference
|
||||
|
||||
When I/O port write operation is called from hmp interface,
|
||||
'current_cpu' remains null, as it is not called from cpu_exec()
|
||||
loop. This leads to a null pointer dereference in vapic_write
|
||||
routine. Add check to avoid it.
|
||||
|
||||
Reported-by: Ling Liu <liuling-it@360.cn>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Message-Id: <alpine.LFD.2.20.1512181129320.9805@wniryva>
|
||||
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||
Signed-off-by: P J P <ppandit@redhat.com>
|
||||
---
|
||||
hw/i386/kvmvapic.c | 15 ++++++++++-----
|
||||
1 file changed, 10 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/hw/i386/kvmvapic.c b/hw/i386/kvmvapic.c
|
||||
index c6d34b2..f0922da 100644
|
||||
--- a/hw/i386/kvmvapic.c
|
||||
+++ b/hw/i386/kvmvapic.c
|
||||
@@ -634,13 +634,18 @@ static int vapic_prepare(VAPICROMState *s)
|
||||
static void vapic_write(void *opaque, hwaddr addr, uint64_t data,
|
||||
unsigned int size)
|
||||
{
|
||||
- CPUState *cs = current_cpu;
|
||||
- X86CPU *cpu = X86_CPU(cs);
|
||||
- CPUX86State *env = &cpu->env;
|
||||
- hwaddr rom_paddr;
|
||||
VAPICROMState *s = opaque;
|
||||
+ X86CPU *cpu;
|
||||
+ CPUX86State *env;
|
||||
+ hwaddr rom_paddr;
|
||||
|
||||
- cpu_synchronize_state(cs);
|
||||
+ if (!current_cpu) {
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ cpu_synchronize_state(current_cpu);
|
||||
+ cpu = X86_CPU(current_cpu);
|
||||
+ env = &cpu->env;
|
||||
|
||||
/*
|
||||
* The VAPIC supports two PIO-based hypercalls, both via port 0x7E.
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,98 +0,0 @@
|
||||
From dd793a74882477ca38d49e191110c17dfee51dcc Mon Sep 17 00:00:00 2001
|
||||
From: Laszlo Ersek <lersek@redhat.com>
|
||||
Date: Tue, 19 Jan 2016 14:17:20 +0100
|
||||
Subject: [PATCH] e1000: eliminate infinite loops on out-of-bounds transfer
|
||||
start
|
||||
|
||||
The start_xmit() and e1000_receive_iov() functions implement DMA transfers
|
||||
iterating over a set of descriptors that the guest's e1000 driver
|
||||
prepares:
|
||||
|
||||
- the TDLEN and RDLEN registers store the total size of the descriptor
|
||||
area,
|
||||
|
||||
- while the TDH and RDH registers store the offset (in whole tx / rx
|
||||
descriptors) into the area where the transfer is supposed to start.
|
||||
|
||||
Each time a descriptor is processed, the TDH and RDH register is bumped
|
||||
(as appropriate for the transfer direction).
|
||||
|
||||
QEMU already contains logic to deal with bogus transfers submitted by the
|
||||
guest:
|
||||
|
||||
- Normally, the transmit case wants to increase TDH from its initial value
|
||||
to TDT. (TDT is allowed to be numerically smaller than the initial TDH
|
||||
value; wrapping at or above TDLEN bytes to zero is normal.) The failsafe
|
||||
that QEMU currently has here is a check against reaching the original
|
||||
TDH value again -- a complete wraparound, which should never happen.
|
||||
|
||||
- In the receive case RDH is increased from its initial value until
|
||||
"total_size" bytes have been received; preferably in a single step, or
|
||||
in "s->rxbuf_size" byte steps, if the latter is smaller. However, null
|
||||
RX descriptors are skipped without receiving data, while RDH is
|
||||
incremented just the same. QEMU tries to prevent an infinite loop
|
||||
(processing only null RX descriptors) by detecting whether RDH assumes
|
||||
its original value during the loop. (Again, wrapping from RDLEN to 0 is
|
||||
normal.)
|
||||
|
||||
What both directions miss is that the guest could program TDLEN and RDLEN
|
||||
so low, and the initial TDH and RDH so high, that these registers will
|
||||
immediately be truncated to zero, and then never reassume their initial
|
||||
values in the loop -- a full wraparound will never occur.
|
||||
|
||||
The condition that expresses this is:
|
||||
|
||||
xdh_start >= s->mac_reg[XDLEN] / sizeof(desc)
|
||||
|
||||
i.e., TDH or RDH start out after the last whole rx or tx descriptor that
|
||||
fits into the TDLEN or RDLEN sized area.
|
||||
|
||||
This condition could be checked before we enter the loops, but
|
||||
pci_dma_read() / pci_dma_write() knows how to fill in buffers safely for
|
||||
bogus DMA addresses, so we just extend the existing failsafes with the
|
||||
above condition.
|
||||
|
||||
This is CVE-2016-1981.
|
||||
|
||||
Cc: "Michael S. Tsirkin" <mst@redhat.com>
|
||||
Cc: Petr Matousek <pmatouse@redhat.com>
|
||||
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
|
||||
Cc: Prasad Pandit <ppandit@redhat.com>
|
||||
Cc: Michael Roth <mdroth@linux.vnet.ibm.com>
|
||||
Cc: Jason Wang <jasowang@redhat.com>
|
||||
Cc: qemu-stable@nongnu.org
|
||||
RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1296044
|
||||
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
|
||||
Reviewed-by: Jason Wang <jasowang@redhat.com>
|
||||
Signed-off-by: Jason Wang <jasowang@redhat.com>
|
||||
---
|
||||
hw/net/e1000.c | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/hw/net/e1000.c b/hw/net/e1000.c
|
||||
index 4eda7a3..0387fa0 100644
|
||||
--- a/hw/net/e1000.c
|
||||
+++ b/hw/net/e1000.c
|
||||
@@ -909,7 +909,8 @@ start_xmit(E1000State *s)
|
||||
* bogus values to TDT/TDLEN.
|
||||
* there's nothing too intelligent we could do about this.
|
||||
*/
|
||||
- if (s->mac_reg[TDH] == tdh_start) {
|
||||
+ if (s->mac_reg[TDH] == tdh_start ||
|
||||
+ tdh_start >= s->mac_reg[TDLEN] / sizeof(desc)) {
|
||||
DBGOUT(TXERR, "TDH wraparound @%x, TDT %x, TDLEN %x\n",
|
||||
tdh_start, s->mac_reg[TDT], s->mac_reg[TDLEN]);
|
||||
break;
|
||||
@@ -1166,7 +1167,8 @@ e1000_receive_iov(NetClientState *nc, const struct iovec *iov, int iovcnt)
|
||||
if (++s->mac_reg[RDH] * sizeof(desc) >= s->mac_reg[RDLEN])
|
||||
s->mac_reg[RDH] = 0;
|
||||
/* see comment in start_xmit; same here */
|
||||
- if (s->mac_reg[RDH] == rdh_start) {
|
||||
+ if (s->mac_reg[RDH] == rdh_start ||
|
||||
+ rdh_start >= s->mac_reg[RDLEN] / sizeof(desc)) {
|
||||
DBGOUT(RXERR, "RDH wraparound @%x, RDT %x, RDLEN %x\n",
|
||||
rdh_start, s->mac_reg[RDT], s->mac_reg[RDLEN]);
|
||||
set_ics(s, 0, E1000_ICS_RXO);
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,43 +0,0 @@
|
||||
From 99b4cb71069f109b79b27bc629fc0cf0886dbc4b Mon Sep 17 00:00:00 2001
|
||||
From: John Snow <jsnow@redhat.com>
|
||||
Date: Wed, 10 Feb 2016 13:29:40 -0500
|
||||
Subject: [PATCH] ahci: Do not unmap NULL addresses
|
||||
|
||||
Definitely don't try to unmap a garbage address.
|
||||
|
||||
Reported-by: Zuozhi fzz <zuozhi.fzz@alibaba-inc.com>
|
||||
Signed-off-by: John Snow <jsnow@redhat.com>
|
||||
Message-id: 1454103689-13042-2-git-send-email-jsnow@redhat.com
|
||||
---
|
||||
hw/ide/ahci.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c
|
||||
index 7e87b18..3a95dad 100644
|
||||
--- a/hw/ide/ahci.c
|
||||
+++ b/hw/ide/ahci.c
|
||||
@@ -662,6 +662,10 @@ static bool ahci_map_fis_address(AHCIDevice *ad)
|
||||
|
||||
static void ahci_unmap_fis_address(AHCIDevice *ad)
|
||||
{
|
||||
+ if (ad->res_fis == NULL) {
|
||||
+ DPRINTF(ad->port_no, "Attempt to unmap NULL FIS address\n");
|
||||
+ return;
|
||||
+ }
|
||||
dma_memory_unmap(ad->hba->as, ad->res_fis, 256,
|
||||
DMA_DIRECTION_FROM_DEVICE, 256);
|
||||
ad->res_fis = NULL;
|
||||
@@ -678,6 +682,10 @@ static bool ahci_map_clb_address(AHCIDevice *ad)
|
||||
|
||||
static void ahci_unmap_clb_address(AHCIDevice *ad)
|
||||
{
|
||||
+ if (ad->lst == NULL) {
|
||||
+ DPRINTF(ad->port_no, "Attempt to unmap NULL CLB address\n");
|
||||
+ return;
|
||||
+ }
|
||||
dma_memory_unmap(ad->hba->as, ad->lst, 1024,
|
||||
DMA_DIRECTION_FROM_DEVICE, 1024);
|
||||
ad->lst = NULL;
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,35 +0,0 @@
|
||||
From 80eecda8e5d09c442c24307f340840a5b70ea3b9 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Thu, 11 Feb 2016 16:31:20 +0530
|
||||
Subject: [PATCH] usb: check USB configuration descriptor object
|
||||
|
||||
When processing remote NDIS control message packets, the USB Net
|
||||
device emulator checks to see if the USB configuration descriptor
|
||||
object is of RNDIS type(2). But it does not check if it is null,
|
||||
which leads to a null dereference error. Add check to avoid it.
|
||||
|
||||
Reported-by: Qinghao Tang <luodalongde@gmail.com>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Message-id: 1455188480-14688-1-git-send-email-ppandit@redhat.com
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
---
|
||||
hw/usb/dev-network.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/usb/dev-network.c b/hw/usb/dev-network.c
|
||||
index 985a629..5dc4538 100644
|
||||
--- a/hw/usb/dev-network.c
|
||||
+++ b/hw/usb/dev-network.c
|
||||
@@ -654,7 +654,8 @@ typedef struct USBNetState {
|
||||
|
||||
static int is_rndis(USBNetState *s)
|
||||
{
|
||||
- return s->dev.config->bConfigurationValue == DEV_RNDIS_CONFIG_VALUE;
|
||||
+ return s->dev.config ?
|
||||
+ s->dev.config->bConfigurationValue == DEV_RNDIS_CONFIG_VALUE : 0;
|
||||
}
|
||||
|
||||
static int ndis_query(USBNetState *s, uint32_t oid,
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,37 +0,0 @@
|
||||
From 415ab35a441eca767d033a2702223e785b9d5190 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Wed, 24 Feb 2016 11:41:33 +0530
|
||||
Subject: [PATCH] net: ne2000: check ring buffer control registers
|
||||
|
||||
Ne2000 NIC uses ring buffer of NE2000_MEM_SIZE(49152)
|
||||
bytes to process network packets. Registers PSTART & PSTOP
|
||||
define ring buffer size & location. Setting these registers
|
||||
to invalid values could lead to infinite loop or OOB r/w
|
||||
access issues. Add check to avoid it.
|
||||
|
||||
Reported-by: Yang Hongke <yanghongke@huawei.com>
|
||||
Tested-by: Yang Hongke <yanghongke@huawei.com>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Signed-off-by: Jason Wang <jasowang@redhat.com>
|
||||
---
|
||||
hw/net/ne2000.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/hw/net/ne2000.c b/hw/net/ne2000.c
|
||||
index e408083..f0feaf9 100644
|
||||
--- a/hw/net/ne2000.c
|
||||
+++ b/hw/net/ne2000.c
|
||||
@@ -155,6 +155,10 @@ static int ne2000_buffer_full(NE2000State *s)
|
||||
{
|
||||
int avail, index, boundary;
|
||||
|
||||
+ if (s->stop <= s->start) {
|
||||
+ return 1;
|
||||
+ }
|
||||
+
|
||||
index = s->curpag << 8;
|
||||
boundary = s->boundary << 8;
|
||||
if (index < boundary)
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,52 +0,0 @@
|
||||
From 49d925ce50383a286278143c05511d30ec41a36e Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Wed, 20 Jan 2016 01:26:46 +0530
|
||||
Subject: [PATCH] usb: check page select value while processing iTD
|
||||
|
||||
While processing isochronous transfer descriptors(iTD), the page
|
||||
select(PG) field value could lead to an OOB read access. Add
|
||||
check to avoid it.
|
||||
|
||||
Reported-by: Qinghao Tang <luodalongde@gmail.com>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Message-id: 1453233406-12165-1-git-send-email-ppandit@redhat.com
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
---
|
||||
hw/usb/hcd-ehci.c | 10 ++++++----
|
||||
1 file changed, 6 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/hw/usb/hcd-ehci.c b/hw/usb/hcd-ehci.c
|
||||
index ab00268..93601d9 100644
|
||||
--- a/hw/usb/hcd-ehci.c
|
||||
+++ b/hw/usb/hcd-ehci.c
|
||||
@@ -1405,21 +1405,23 @@ static int ehci_process_itd(EHCIState *ehci,
|
||||
if (itd->transact[i] & ITD_XACT_ACTIVE) {
|
||||
pg = get_field(itd->transact[i], ITD_XACT_PGSEL);
|
||||
off = itd->transact[i] & ITD_XACT_OFFSET_MASK;
|
||||
- ptr1 = (itd->bufptr[pg] & ITD_BUFPTR_MASK);
|
||||
- ptr2 = (itd->bufptr[pg+1] & ITD_BUFPTR_MASK);
|
||||
len = get_field(itd->transact[i], ITD_XACT_LENGTH);
|
||||
|
||||
if (len > max * mult) {
|
||||
len = max * mult;
|
||||
}
|
||||
-
|
||||
- if (len > BUFF_SIZE) {
|
||||
+ if (len > BUFF_SIZE || pg > 6) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
+ ptr1 = (itd->bufptr[pg] & ITD_BUFPTR_MASK);
|
||||
qemu_sglist_init(&ehci->isgl, ehci->device, 2, ehci->as);
|
||||
if (off + len > 4096) {
|
||||
/* transfer crosses page border */
|
||||
+ if (pg == 6) {
|
||||
+ return -1; /* avoid page pg + 1 */
|
||||
+ }
|
||||
+ ptr2 = (itd->bufptr[pg + 1] & ITD_BUFPTR_MASK);
|
||||
uint32_t len2 = off + len - 4096;
|
||||
uint32_t len1 = len - len2;
|
||||
qemu_sglist_add(&ehci->isgl, ptr1 + off, len1);
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,59 +0,0 @@
|
||||
From fe3c546c5ff2a6210f9a4d8561cc64051ca8603e Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Wed, 17 Feb 2016 00:23:41 +0530
|
||||
Subject: [PATCH] usb: check RNDIS buffer offsets & length
|
||||
|
||||
When processing remote NDIS control message packets,
|
||||
the USB Net device emulator uses a fixed length(4096) data buffer.
|
||||
The incoming informationBufferOffset & Length combination could
|
||||
overflow and cross that range. Check control message buffer
|
||||
offsets and length to avoid it.
|
||||
|
||||
Reported-by: Qinghao Tang <luodalongde@gmail.com>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Message-id: 1455648821-17340-3-git-send-email-ppandit@redhat.com
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
---
|
||||
hw/usb/dev-network.c | 9 ++++++---
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/hw/usb/dev-network.c b/hw/usb/dev-network.c
|
||||
index 5dc4538..c6abd38 100644
|
||||
--- a/hw/usb/dev-network.c
|
||||
+++ b/hw/usb/dev-network.c
|
||||
@@ -916,8 +916,9 @@ static int rndis_query_response(USBNetState *s,
|
||||
|
||||
bufoffs = le32_to_cpu(buf->InformationBufferOffset) + 8;
|
||||
buflen = le32_to_cpu(buf->InformationBufferLength);
|
||||
- if (bufoffs + buflen > length)
|
||||
+ if (buflen > length || bufoffs >= length || bufoffs + buflen > length) {
|
||||
return USB_RET_STALL;
|
||||
+ }
|
||||
|
||||
infobuflen = ndis_query(s, le32_to_cpu(buf->OID),
|
||||
bufoffs + (uint8_t *) buf, buflen, infobuf,
|
||||
@@ -962,8 +963,9 @@ static int rndis_set_response(USBNetState *s,
|
||||
|
||||
bufoffs = le32_to_cpu(buf->InformationBufferOffset) + 8;
|
||||
buflen = le32_to_cpu(buf->InformationBufferLength);
|
||||
- if (bufoffs + buflen > length)
|
||||
+ if (buflen > length || bufoffs >= length || bufoffs + buflen > length) {
|
||||
return USB_RET_STALL;
|
||||
+ }
|
||||
|
||||
ret = ndis_set(s, le32_to_cpu(buf->OID),
|
||||
bufoffs + (uint8_t *) buf, buflen);
|
||||
@@ -1213,8 +1215,9 @@ static void usb_net_handle_dataout(USBNetState *s, USBPacket *p)
|
||||
if (le32_to_cpu(msg->MessageType) == RNDIS_PACKET_MSG) {
|
||||
uint32_t offs = 8 + le32_to_cpu(msg->DataOffset);
|
||||
uint32_t size = le32_to_cpu(msg->DataLength);
|
||||
- if (offs + size <= len)
|
||||
+ if (offs < len && size < len && offs + size <= len) {
|
||||
qemu_send_packet(qemu_get_queue(s->nic), s->out_buf + offs, size);
|
||||
+ }
|
||||
}
|
||||
s->out_ptr -= len;
|
||||
memmove(s->out_buf, &s->out_buf[len], s->out_ptr);
|
||||
--
|
||||
2.7.4
|
||||
|
@ -1,60 +0,0 @@
|
||||
https://lists.gnu.org/archive/html/qemu-devel/2016-06/msg01611.html
|
||||
|
||||
From 6a2909cf98e892783b2502df6f7f4de46d13e42b Mon Sep 17 00:00:00 2001
|
||||
From: Mike Frysinger <vapier@chromium.org>
|
||||
Date: Mon, 6 Jun 2016 17:58:26 -0400
|
||||
Subject: [PATCH] crypto: aes: always rename internal symbols
|
||||
|
||||
OpenSSL's libcrypto always defines AES symbols with the same names as
|
||||
qemu's local aes code. This is problematic when enabling at least curl
|
||||
as that frequently also uses libcrypto. It might not be noticed when
|
||||
running, but if you try to statically link, everything falls down.
|
||||
|
||||
An example snippet:
|
||||
LINK qemu-nbd
|
||||
.../libcrypto.a(aes-x86_64.o): In function 'AES_encrypt':
|
||||
(.text+0x460): multiple definition of 'AES_encrypt'
|
||||
crypto/aes.o:aes.c:(.text+0x670): first defined here
|
||||
.../libcrypto.a(aes-x86_64.o): In function 'AES_decrypt':
|
||||
(.text+0x9f0): multiple definition of 'AES_decrypt'
|
||||
crypto/aes.o:aes.c:(.text+0xb30): first defined here
|
||||
.../libcrypto.a(aes-x86_64.o): In function 'AES_cbc_encrypt':
|
||||
(.text+0xf90): multiple definition of 'AES_cbc_encrypt'
|
||||
crypto/aes.o:aes.c:(.text+0xff0): first defined here
|
||||
collect2: error: ld returned 1 exit status
|
||||
.../qemu-2.6.0/rules.mak:105: recipe for target 'qemu-nbd' failed
|
||||
make: *** [qemu-nbd] Error 1
|
||||
|
||||
The aes.h header has redefines already for FreeBSD, but go ahead and
|
||||
enable that for everyone since there's no real good reason to not use
|
||||
a namespace all the time.
|
||||
|
||||
Signed-off-by: Mike Frysinger <vapier@chromium.org>
|
||||
---
|
||||
include/crypto/aes.h | 5 ++---
|
||||
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/include/crypto/aes.h b/include/crypto/aes.h
|
||||
index a006da2224a9..12fb321b89de 100644
|
||||
--- a/include/crypto/aes.h
|
||||
+++ b/include/crypto/aes.h
|
||||
@@ -10,14 +10,13 @@ struct aes_key_st {
|
||||
};
|
||||
typedef struct aes_key_st AES_KEY;
|
||||
|
||||
-/* FreeBSD has its own AES_set_decrypt_key in -lcrypto, avoid conflicts */
|
||||
-#ifdef __FreeBSD__
|
||||
+/* FreeBSD/OpenSSL have their own AES functions with the same names in -lcrypto
|
||||
+ * (which might be pulled in via curl), so redefine to avoid conflicts. */
|
||||
#define AES_set_encrypt_key QEMU_AES_set_encrypt_key
|
||||
#define AES_set_decrypt_key QEMU_AES_set_decrypt_key
|
||||
#define AES_encrypt QEMU_AES_encrypt
|
||||
#define AES_decrypt QEMU_AES_decrypt
|
||||
#define AES_cbc_encrypt QEMU_AES_cbc_encrypt
|
||||
-#endif
|
||||
|
||||
int AES_set_encrypt_key(const unsigned char *userKey, const int bits,
|
||||
AES_KEY *key);
|
||||
--
|
||||
2.8.2
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- a/configure 2016-08-07 15:50:20.386687733 +0200
|
||||
+++ b/configure 2016-08-07 15:53:55.489691690 +0200
|
||||
@@ -2967,7 +2967,7 @@
|
||||
}
|
||||
EOF
|
||||
|
||||
-if ! compile_prog "-Werror $CFLAGS" "$LIBS" ; then
|
||||
+if ! compile_prog "$CFLAGS" "$LIBS" ; then
|
||||
error_exit "sizeof(size_t) doesn't match GLIB_SIZEOF_SIZE_T."\
|
||||
"You probably need to set PKG_CONFIG_LIBDIR"\
|
||||
"to point to the right pkg-config files for your"\
|
@ -0,0 +1,27 @@
|
||||
From: Li Qiang <address@hidden>
|
||||
|
||||
In Vmxnet3 device emulator while processing transmit(tx) queue,
|
||||
when it reaches end of packet, it calls vmxnet3_complete_packet.
|
||||
In that local 'txcq_descr' object is not initialised, which could
|
||||
leak host memory bytes a guest.
|
||||
|
||||
Reported-by: Li Qiang <address@hidden>
|
||||
Signed-off-by: Prasad J Pandit <address@hidden>
|
||||
---
|
||||
hw/net/vmxnet3.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c
|
||||
index 90f6943..92f6af9 100644
|
||||
--- a/hw/net/vmxnet3.c
|
||||
+++ b/hw/net/vmxnet3.c
|
||||
@@ -531,6 +531,7 @@ static void vmxnet3_complete_packet(VMXNET3State *s, int qidx, uint32_t tx_ridx)
|
||||
|
||||
VMXNET3_RING_DUMP(VMW_RIPRN, "TXC", qidx, &s->txq_descr[qidx].comp_ring);
|
||||
|
||||
+ memset(&txcq_descr, 0, sizeof(txcq_descr));
|
||||
txcq_descr.txdIdx = tx_ridx;
|
||||
txcq_descr.gen = vmxnet3_ring_curr_gen(&s->txq_descr[qidx].comp_ring);
|
||||
|
||||
--
|
||||
2.5.5
|
@ -1,694 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
PLOCALES="de_DE fr_FR hu it tr zh_CN"
|
||||
|
||||
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
|
||||
user udev fcaps readme.gentoo pax-utils l10n
|
||||
|
||||
BACKPORTS=
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
EGIT_REPO_URI="git://git.qemu.org/qemu.git"
|
||||
inherit git-2
|
||||
SRC_URI=""
|
||||
else
|
||||
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2
|
||||
${BACKPORTS:+
|
||||
https://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}"
|
||||
KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 x86 ~x86-fbsd"
|
||||
fi
|
||||
|
||||
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
|
||||
HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2 BSD-2"
|
||||
SLOT="0"
|
||||
IUSE="accessibility +aio alsa bluetooth +caps +curl debug +fdt glusterfs \
|
||||
gnutls gtk gtk2 infiniband iscsi +jpeg \
|
||||
kernel_linux kernel_FreeBSD lzo ncurses nfs nls numa opengl +pin-upstream-blobs
|
||||
+png pulseaudio python \
|
||||
rbd sasl +seccomp sdl sdl2 selinux smartcard snappy spice ssh static static-softmmu
|
||||
static-user systemtap tci test +threads usb usbredir +uuid vde +vhost-net \
|
||||
virgl virtfs +vnc vte xattr xen xfs"
|
||||
|
||||
COMMON_TARGETS="aarch64 alpha arm cris i386 m68k microblaze microblazeel mips
|
||||
mips64 mips64el mipsel or32 ppc ppc64 s390x sh4 sh4eb sparc sparc64 unicore32
|
||||
x86_64"
|
||||
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 moxie ppcemb tricore xtensa xtensaeb"
|
||||
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb mipsn32 mipsn32el ppc64abi32 ppc64le sparc32plus tilegx"
|
||||
|
||||
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
|
||||
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
|
||||
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
|
||||
|
||||
# Allow no targets to be built so that people can get a tools-only build.
|
||||
# Block USE flag configurations known to not work.
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}
|
||||
gtk2? ( gtk )
|
||||
qemu_softmmu_targets_arm? ( fdt )
|
||||
qemu_softmmu_targets_microblaze? ( fdt )
|
||||
qemu_softmmu_targets_ppc? ( fdt )
|
||||
qemu_softmmu_targets_ppc64? ( fdt )
|
||||
sdl2? ( sdl )
|
||||
static? ( static-softmmu static-user )
|
||||
static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl !gtk !gtk2 )
|
||||
virtfs? ( xattr )
|
||||
vte? ( gtk )"
|
||||
|
||||
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
|
||||
#
|
||||
# The attr lib isn't always linked in (although the USE flag is always
|
||||
# respected). This is because qemu supports using the C library's API
|
||||
# when available rather than always using the extranl library.
|
||||
#
|
||||
# Older versions of gnutls are supported, but it's simpler to just require
|
||||
# the latest versions. This is also why we require nettle.
|
||||
COMMON_LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
|
||||
sys-libs/zlib[static-libs(+)]
|
||||
xattr? ( sys-apps/attr[static-libs(+)] )"
|
||||
SOFTMMU_LIB_DEPEND="${COMMON_LIB_DEPEND}
|
||||
>=x11-libs/pixman-0.28.0[static-libs(+)]
|
||||
accessibility? ( app-accessibility/brltty[static-libs(+)] )
|
||||
aio? ( dev-libs/libaio[static-libs(+)] )
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
caps? ( sys-libs/libcap-ng[static-libs(+)] )
|
||||
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
|
||||
fdt? ( >=sys-apps/dtc-1.4.0[static-libs(+)] )
|
||||
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
|
||||
gnutls? (
|
||||
dev-libs/nettle[static-libs(+)]
|
||||
>=net-libs/gnutls-3.0[static-libs(+)]
|
||||
)
|
||||
gtk? (
|
||||
gtk2? (
|
||||
x11-libs/gtk+:2
|
||||
vte? ( x11-libs/vte:0 )
|
||||
)
|
||||
!gtk2? (
|
||||
x11-libs/gtk+:3
|
||||
vte? ( x11-libs/vte:2.90 )
|
||||
)
|
||||
)
|
||||
infiniband? ( sys-fabric/librdmacm:=[static-libs(+)] )
|
||||
iscsi? ( net-libs/libiscsi )
|
||||
jpeg? ( virtual/jpeg:0=[static-libs(+)] )
|
||||
lzo? ( dev-libs/lzo:2[static-libs(+)] )
|
||||
ncurses? ( sys-libs/ncurses:0=[static-libs(+)] )
|
||||
nfs? ( >=net-fs/libnfs-1.9.3[static-libs(+)] )
|
||||
numa? ( sys-process/numactl[static-libs(+)] )
|
||||
opengl? (
|
||||
virtual/opengl
|
||||
media-libs/libepoxy[static-libs(+)]
|
||||
media-libs/mesa[static-libs(+)]
|
||||
media-libs/mesa[egl,gles2]
|
||||
)
|
||||
png? ( media-libs/libpng:0=[static-libs(+)] )
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
rbd? ( sys-cluster/ceph[static-libs(+)] )
|
||||
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
|
||||
sdl? (
|
||||
!sdl2? (
|
||||
media-libs/libsdl[X]
|
||||
>=media-libs/libsdl-1.2.11[static-libs(+)]
|
||||
)
|
||||
sdl2? (
|
||||
media-libs/libsdl2[X]
|
||||
media-libs/libsdl2[static-libs(+)]
|
||||
)
|
||||
)
|
||||
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
|
||||
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
|
||||
snappy? ( app-arch/snappy[static-libs(+)] )
|
||||
spice? (
|
||||
>=app-emulation/spice-protocol-0.12.3
|
||||
>=app-emulation/spice-0.12.0[static-libs(+)]
|
||||
)
|
||||
ssh? ( >=net-libs/libssh2-1.2.8[static-libs(+)] )
|
||||
usb? ( >=virtual/libusb-1-r2[static-libs(+)] )
|
||||
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
|
||||
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
|
||||
vde? ( net-misc/vde[static-libs(+)] )
|
||||
virgl? ( media-libs/virglrenderer[static-libs(+)] )
|
||||
virtfs? ( sys-libs/libcap )
|
||||
xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
|
||||
USER_LIB_DEPEND="${COMMON_LIB_DEPEND}"
|
||||
X86_FIRMWARE_DEPEND="
|
||||
>=sys-firmware/ipxe-1.0.0_p20130624
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/seabios-1.8.2
|
||||
~sys-firmware/sgabios-0.1_pre8
|
||||
~sys-firmware/vgabios-0.7a
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
sys-firmware/seabios
|
||||
sys-firmware/sgabios
|
||||
sys-firmware/vgabios
|
||||
)"
|
||||
CDEPEND="
|
||||
!static-softmmu? ( $(printf "%s? ( ${SOFTMMU_LIB_DEPEND//\[static-libs(+)]} ) " ${use_softmmu_targets}) )
|
||||
!static-user? ( $(printf "%s? ( ${USER_LIB_DEPEND//\[static-libs(+)]} ) " ${use_user_targets}) )
|
||||
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
systemtap? ( dev-util/systemtap )
|
||||
xen? ( app-emulation/xen-tools:= )"
|
||||
DEPEND="${CDEPEND}
|
||||
dev-lang/perl
|
||||
=dev-lang/python-2*
|
||||
sys-apps/texinfo
|
||||
virtual/pkgconfig
|
||||
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
|
||||
gtk? ( nls? ( sys-devel/gettext ) )
|
||||
static-softmmu? ( $(printf "%s? ( ${SOFTMMU_LIB_DEPEND} ) " ${use_softmmu_targets}) )
|
||||
static-user? ( $(printf "%s? ( ${USER_LIB_DEPEND} ) " ${use_user_targets}) )
|
||||
test? (
|
||||
dev-libs/glib[utils]
|
||||
sys-devel/bc
|
||||
)"
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-qemu )
|
||||
"
|
||||
|
||||
STRIP_MASK="/usr/share/qemu/palcode-clipper"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/share/qemu/openbios-ppc
|
||||
usr/share/qemu/openbios-sparc64
|
||||
usr/share/qemu/openbios-sparc32
|
||||
usr/share/qemu/palcode-clipper
|
||||
usr/share/qemu/s390-ccw.img
|
||||
usr/share/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_WX_LOAD="usr/bin/qemu-i386
|
||||
usr/bin/qemu-x86_64
|
||||
usr/bin/qemu-alpha
|
||||
usr/bin/qemu-arm
|
||||
usr/bin/qemu-cris
|
||||
usr/bin/qemu-m68k
|
||||
usr/bin/qemu-microblaze
|
||||
usr/bin/qemu-microblazeel
|
||||
usr/bin/qemu-mips
|
||||
usr/bin/qemu-mipsel
|
||||
usr/bin/qemu-or32
|
||||
usr/bin/qemu-ppc
|
||||
usr/bin/qemu-ppc64
|
||||
usr/bin/qemu-ppc64abi32
|
||||
usr/bin/qemu-sh4
|
||||
usr/bin/qemu-sh4eb
|
||||
usr/bin/qemu-sparc
|
||||
usr/bin/qemu-sparc64
|
||||
usr/bin/qemu-armeb
|
||||
usr/bin/qemu-sparc32plus
|
||||
usr/bin/qemu-s390x
|
||||
usr/bin/qemu-unicore32"
|
||||
|
||||
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure
|
||||
you have the kernel module loaded before running kvm. The easiest way to
|
||||
ensure that the kernel module is loaded is to load it on boot.\n
|
||||
For AMD CPUs the module is called 'kvm-amd'\n
|
||||
For Intel CPUs the module is called 'kvm-intel'\n
|
||||
Please review /etc/conf.d/modules for how to load these\n\n
|
||||
Make sure your user is in the 'kvm' group\n
|
||||
Just run 'gpasswd -a <USER> kvm', then have <USER> re-login."
|
||||
|
||||
qemu_support_kvm() {
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \
|
||||
use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \
|
||||
use qemu_softmmu_targets_s390x; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
return 1
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
if use kernel_linux && kernel_is lt 2 6 25; then
|
||||
eerror "This version of KVM requres a host kernel of 2.6.25 or higher."
|
||||
elif use kernel_linux; then
|
||||
if ! linux_config_exists; then
|
||||
eerror "Unable to check your kernel for KVM support"
|
||||
else
|
||||
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
|
||||
ERROR_KVM="You must enable KVM in your kernel to continue"
|
||||
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
|
||||
ERROR_KVM_AMD+=" your kernel configuration."
|
||||
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
|
||||
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
|
||||
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
|
||||
ERROR_TUN+=" into your kernel or loaded as a module to use the"
|
||||
ERROR_TUN+=" virtual network device if using -net tap."
|
||||
ERROR_BRIDGE="You will also need support for 802.1d"
|
||||
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
|
||||
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
|
||||
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
|
||||
ERROR_VHOST_NET+=" support"
|
||||
|
||||
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
|
||||
CONFIG_CHECK+=" ~KVM_AMD ~KVM_INTEL"
|
||||
fi
|
||||
|
||||
use python && CONFIG_CHECK+=" ~DEBUG_FS"
|
||||
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
|
||||
|
||||
# Now do the actual checks setup above
|
||||
check_extra_config
|
||||
fi
|
||||
fi
|
||||
|
||||
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
|
||||
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
|
||||
eerror "instances are still pointing to it. Please update your"
|
||||
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
|
||||
eerror "and the right system binary (e.g. qemu-system-x86_64)."
|
||||
die "update your virt configs to not use qemu-kvm"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup kvm 78
|
||||
}
|
||||
|
||||
# Sanity check to make sure target lists are kept up-to-date.
|
||||
check_targets() {
|
||||
local var=$1 mak=$2
|
||||
local detected sorted
|
||||
|
||||
pushd "${S}"/default-configs >/dev/null || die
|
||||
|
||||
# Force C locale until glibc is updated. #564936
|
||||
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
|
||||
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
|
||||
if [[ ${sorted} != "${detected}" ]] ; then
|
||||
eerror "The ebuild needs to be kept in sync."
|
||||
eerror "${var}: ${sorted}"
|
||||
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
|
||||
die "sync ${var} to the list of targets"
|
||||
fi
|
||||
|
||||
popd >/dev/null
|
||||
}
|
||||
|
||||
handle_locales() {
|
||||
# Make sure locale list is kept up-to-date.
|
||||
local detected sorted
|
||||
detected=$(echo $(cd po && printf '%s\n' *.po | grep -v messages.po | sed 's:.po$::' | sort -u))
|
||||
sorted=$(echo $(printf '%s\n' ${PLOCALES} | sort -u))
|
||||
if [[ ${sorted} != "${detected}" ]] ; then
|
||||
eerror "The ebuild needs to be kept in sync."
|
||||
eerror "PLOCALES: ${sorted}"
|
||||
eerror " po/*.po: ${detected}"
|
||||
die "sync PLOCALES"
|
||||
fi
|
||||
|
||||
# Deal with selective install of locales.
|
||||
if use nls ; then
|
||||
# Delete locales the user does not want. #577814
|
||||
rm_loc() { rm po/$1.po || die; }
|
||||
l10n_for_each_disabled_locale_do rm_loc
|
||||
else
|
||||
# Cheap hack to disable gettext .mo generation.
|
||||
rm -f po/*.po
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
check_targets IUSE_SOFTMMU_TARGETS softmmu
|
||||
check_targets IUSE_USER_TARGETS linux-user
|
||||
|
||||
# Alter target makefiles to accept CFLAGS set via flag-o
|
||||
sed -i -r \
|
||||
-e 's/^(C|OP_C|HELPER_C)FLAGS=/\1FLAGS+=/' \
|
||||
Makefile Makefile.target || die
|
||||
|
||||
epatch "${FILESDIR}"/qemu-2.5.0-cflags.patch
|
||||
[[ -n ${BACKPORTS} ]] && \
|
||||
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
|
||||
epatch
|
||||
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8567.patch #567868
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8558.patch #568246
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8701.patch #570110
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8743.patch #570988
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-1568.patch #571566
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8613.patch #569118
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8619.patch #569300
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-1714.patch #571560
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-1922.patch #572082
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-1981.patch #572412
|
||||
epatch "${FILESDIR}"/${P}-usb-ehci-oob.patch #572454
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-2197.patch #573280
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-2198.patch #573314
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-2392.patch #574902
|
||||
epatch "${FILESDIR}"/${P}-usb-ndis-int-overflow.patch #575492
|
||||
epatch "${FILESDIR}"/${P}-rng-stack-corrupt-{0,1,2,3}.patch #576420
|
||||
epatch "${FILESDIR}"/${P}-sysmacros.patch
|
||||
|
||||
# Fix ld and objcopy being called directly
|
||||
tc-export AR LD OBJCOPY
|
||||
|
||||
# Verbose builds
|
||||
MAKEOPTS+=" V=1"
|
||||
|
||||
epatch_user
|
||||
|
||||
# Run after we've applied all patches.
|
||||
handle_locales
|
||||
}
|
||||
|
||||
##
|
||||
# configures qemu based on the build directory and the build type
|
||||
# we are using.
|
||||
#
|
||||
qemu_src_configure() {
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
local buildtype=$1
|
||||
local builddir="${S}/${buildtype}-build"
|
||||
local static_flag="static-${buildtype}"
|
||||
|
||||
mkdir "${builddir}"
|
||||
|
||||
local conf_opts=(
|
||||
--prefix=/usr
|
||||
--sysconfdir=/etc
|
||||
--libdir=/usr/$(get_libdir)
|
||||
--docdir=/usr/share/doc/${PF}/html
|
||||
--disable-bsd-user
|
||||
--disable-guest-agent
|
||||
--disable-strip
|
||||
--disable-werror
|
||||
# We support gnutls/nettle for crypto operations. It is possible
|
||||
# to use gcrypt when gnutls/nettle are disabled (but not when they
|
||||
# are enabled), but it's not really worth the hassle. Disable it
|
||||
# all the time to avoid automatically detecting it. #568856
|
||||
--disable-gcrypt
|
||||
--python="${PYTHON}"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
--host-cc="$(tc-getBUILD_CC)"
|
||||
$(use_enable debug debug-info)
|
||||
$(use_enable debug debug-tcg)
|
||||
--enable-docs
|
||||
$(use_enable tci tcg-interpreter)
|
||||
$(use_enable xattr attr)
|
||||
)
|
||||
|
||||
# Disable options not used by user targets as the default configure
|
||||
# options will autoprobe and try to link in a bunch of unused junk.
|
||||
conf_softmmu() {
|
||||
if [[ ${buildtype} == "user" ]] ; then
|
||||
echo "--disable-${2:-$1}"
|
||||
else
|
||||
use_enable "$@"
|
||||
fi
|
||||
}
|
||||
conf_opts+=(
|
||||
$(conf_softmmu accessibility brlapi)
|
||||
$(conf_softmmu aio linux-aio)
|
||||
$(conf_softmmu bluetooth bluez)
|
||||
$(conf_softmmu caps cap-ng)
|
||||
$(conf_softmmu curl)
|
||||
$(conf_softmmu fdt)
|
||||
$(conf_softmmu glusterfs)
|
||||
$(conf_softmmu gnutls)
|
||||
$(conf_softmmu gnutls nettle)
|
||||
$(conf_softmmu gtk)
|
||||
$(conf_softmmu infiniband rdma)
|
||||
$(conf_softmmu iscsi libiscsi)
|
||||
$(conf_softmmu jpeg vnc-jpeg)
|
||||
$(conf_softmmu kernel_linux kvm)
|
||||
$(conf_softmmu lzo)
|
||||
$(conf_softmmu ncurses curses)
|
||||
$(conf_softmmu nfs libnfs)
|
||||
$(conf_softmmu numa)
|
||||
$(conf_softmmu opengl)
|
||||
$(conf_softmmu png vnc-png)
|
||||
$(conf_softmmu rbd)
|
||||
$(conf_softmmu sasl vnc-sasl)
|
||||
$(conf_softmmu sdl)
|
||||
$(conf_softmmu seccomp)
|
||||
$(conf_softmmu smartcard)
|
||||
$(conf_softmmu snappy)
|
||||
$(conf_softmmu spice)
|
||||
$(conf_softmmu ssh libssh2)
|
||||
$(conf_softmmu usb libusb)
|
||||
$(conf_softmmu usbredir usb-redir)
|
||||
$(conf_softmmu uuid)
|
||||
$(conf_softmmu vde)
|
||||
$(conf_softmmu vhost-net)
|
||||
$(conf_softmmu virgl virglrenderer)
|
||||
$(conf_softmmu virtfs)
|
||||
$(conf_softmmu vnc)
|
||||
$(conf_softmmu vte)
|
||||
$(conf_softmmu xen)
|
||||
$(conf_softmmu xen xen-pci-passthrough)
|
||||
$(conf_softmmu xfs xfsctl)
|
||||
)
|
||||
|
||||
case ${buildtype} in
|
||||
user)
|
||||
conf_opts+=(
|
||||
--enable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
--disable-tools
|
||||
)
|
||||
;;
|
||||
softmmu)
|
||||
# audio options
|
||||
local audio_opts="oss"
|
||||
use alsa && audio_opts="alsa,${audio_opts}"
|
||||
use sdl && audio_opts="sdl,${audio_opts}"
|
||||
use pulseaudio && audio_opts="pa,${audio_opts}"
|
||||
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--enable-system
|
||||
--with-system-pixman
|
||||
--audio-drv-list="${audio_opts}"
|
||||
)
|
||||
use gtk && conf_opts+=( --with-gtkabi=$(usex gtk2 2.0 3.0) )
|
||||
use sdl && conf_opts+=( --with-sdlabi=$(usex sdl2 2.0 1.2) )
|
||||
;;
|
||||
tools)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
)
|
||||
static_flag="static"
|
||||
;;
|
||||
esac
|
||||
|
||||
local targets="${buildtype}_targets"
|
||||
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
|
||||
|
||||
# Add support for SystemTAP
|
||||
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
|
||||
|
||||
# We always want to attempt to build with PIE support as it results
|
||||
# in a more secure binary. But it doesn't work with static or if
|
||||
# the current GCC doesn't have PIE support.
|
||||
if use ${static_flag}; then
|
||||
conf_opts+=( --static --disable-pie )
|
||||
else
|
||||
gcc-specs-pie && conf_opts+=( --enable-pie )
|
||||
fi
|
||||
|
||||
echo "../configure ${conf_opts[*]}"
|
||||
cd "${builddir}"
|
||||
../configure "${conf_opts[@]}" || die "configure failed"
|
||||
|
||||
# FreeBSD's kernel does not support QEMU assigning/grabbing
|
||||
# host USB devices yet
|
||||
use kernel_FreeBSD && \
|
||||
sed -i -E -e "s|^(HOST_USB=)bsd|\1stub|" "${S}"/config-host.mak
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local target
|
||||
|
||||
python_setup
|
||||
|
||||
softmmu_targets= softmmu_bins=()
|
||||
user_targets= user_bins=()
|
||||
|
||||
for target in ${IUSE_SOFTMMU_TARGETS} ; do
|
||||
if use "qemu_softmmu_targets_${target}"; then
|
||||
softmmu_targets+=",${target}-softmmu"
|
||||
softmmu_bins+=( "qemu-system-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
for target in ${IUSE_USER_TARGETS} ; do
|
||||
if use "qemu_user_targets_${target}"; then
|
||||
user_targets+=",${target}-linux-user"
|
||||
user_bins+=( "qemu-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
softmmu_targets=${softmmu_targets#,}
|
||||
user_targets=${user_targets#,}
|
||||
|
||||
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
|
||||
[[ -n ${user_targets} ]] && qemu_src_configure "user"
|
||||
[[ -z ${softmmu_targets}${user_targets} ]] && qemu_src_configure "tools"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
default
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
default
|
||||
fi
|
||||
|
||||
if [[ -z ${softmmu_targets}${user_targets} ]]; then
|
||||
cd "${S}/tools-build"
|
||||
default
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
pax-mark m */qemu-system-* #515550
|
||||
emake -j1 check
|
||||
emake -j1 check-report.html
|
||||
fi
|
||||
}
|
||||
|
||||
qemu_python_install() {
|
||||
python_domodule "${S}/scripts/qmp/qmp.py"
|
||||
|
||||
python_doscript "${S}/scripts/kvm/kvm_stat"
|
||||
python_doscript "${S}/scripts/kvm/vmxcap"
|
||||
python_doscript "${S}/scripts/qmp/qmp-shell"
|
||||
python_doscript "${S}/scripts/qmp/qemu-ga-client"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# Install binfmt handler init script for user targets
|
||||
newinitd "${FILESDIR}/qemu-binfmt.initd-r1" qemu-binfmt
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# This might not exist if the test failed. #512010
|
||||
[[ -e check-report.html ]] && dohtml check-report.html
|
||||
|
||||
if use kernel_linux; then
|
||||
udev_dorules "${FILESDIR}"/65-kvm.rules
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
python_foreach_impl qemu_python_install
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -z ${softmmu_targets}${user_targets} ]]; then
|
||||
cd "${S}/tools-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
fi
|
||||
|
||||
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
|
||||
pushd "${ED}"/usr/bin >/dev/null
|
||||
pax-mark m "${softmmu_bins[@]}" "${user_bins[@]}"
|
||||
popd >/dev/null
|
||||
|
||||
# Install config file example for qemu-bridge-helper
|
||||
insinto "/etc/qemu"
|
||||
doins "${FILESDIR}/bridge.conf"
|
||||
|
||||
# Remove the docdir placed qmp-commands.txt
|
||||
mv "${ED}/usr/share/doc/${PF}/html/qmp-commands.txt" "${S}/docs/" || die
|
||||
|
||||
cd "${S}"
|
||||
dodoc Changelog MAINTAINERS docs/specs/pci-ids.txt
|
||||
newdoc pc-bios/README README.pc-bios
|
||||
dodoc docs/qmp-*.txt
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
# Remove SeaBIOS since we're using the SeaBIOS packaged one
|
||||
rm "${ED}/usr/share/qemu/bios.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
|
||||
fi
|
||||
|
||||
# Remove vgabios since we're using the vgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/vgabios.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../vgabios/vgabios.bin /usr/share/qemu/vgabios.bin
|
||||
dosym ../vgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
|
||||
dosym ../vgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
|
||||
dosym ../vgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
|
||||
dosym ../vgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
|
||||
fi
|
||||
|
||||
# Remove sgabios since we're using the sgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/sgabios.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
|
||||
fi
|
||||
|
||||
# Remove iPXE since we're using the iPXE packaged one
|
||||
rm "${ED}"/usr/share/qemu/pxe-*.rom
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
|
||||
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
|
||||
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
|
||||
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
|
||||
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
|
||||
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
|
||||
fi
|
||||
fi
|
||||
|
||||
qemu_support_kvm && readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if qemu_support_kvm; then
|
||||
readme.gentoo_print_elog
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
|
||||
udev_reload
|
||||
fi
|
||||
|
||||
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
|
||||
}
|
||||
|
||||
pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
echo " $(best_version sys-firmware/ipxe)"
|
||||
echo " $(best_version sys-firmware/seabios)"
|
||||
if has_version 'sys-firmware/seabios[binary]'; then
|
||||
echo " USE=binary"
|
||||
else
|
||||
echo " USE=''"
|
||||
fi
|
||||
echo " $(best_version sys-firmware/vgabios)"
|
||||
}
|
@ -1,699 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
PLOCALES="de_DE fr_FR hu it tr zh_CN"
|
||||
|
||||
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
|
||||
user udev fcaps readme.gentoo pax-utils l10n
|
||||
|
||||
BACKPORTS=
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
EGIT_REPO_URI="git://git.qemu.org/qemu.git"
|
||||
inherit git-2
|
||||
SRC_URI=""
|
||||
else
|
||||
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2
|
||||
${BACKPORTS:+
|
||||
https://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}"
|
||||
KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 x86 ~x86-fbsd"
|
||||
fi
|
||||
|
||||
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
|
||||
HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2 BSD-2"
|
||||
SLOT="0"
|
||||
IUSE="accessibility +aio alsa bluetooth +caps +curl debug +fdt glusterfs \
|
||||
gnutls gtk gtk2 infiniband iscsi +jpeg \
|
||||
kernel_linux kernel_FreeBSD lzo ncurses nfs nls numa opengl +pin-upstream-blobs
|
||||
+png pulseaudio python \
|
||||
rbd sasl +seccomp sdl sdl2 selinux smartcard snappy spice ssh static static-softmmu
|
||||
static-user systemtap tci test +threads usb usbredir +uuid vde +vhost-net \
|
||||
virgl virtfs +vnc vte xattr xen xfs"
|
||||
|
||||
COMMON_TARGETS="aarch64 alpha arm cris i386 m68k microblaze microblazeel mips
|
||||
mips64 mips64el mipsel or32 ppc ppc64 s390x sh4 sh4eb sparc sparc64 unicore32
|
||||
x86_64"
|
||||
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 moxie ppcemb tricore xtensa xtensaeb"
|
||||
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb mipsn32 mipsn32el ppc64abi32 ppc64le sparc32plus tilegx"
|
||||
|
||||
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
|
||||
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
|
||||
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
|
||||
|
||||
# Allow no targets to be built so that people can get a tools-only build.
|
||||
# Block USE flag configurations known to not work.
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}
|
||||
gtk2? ( gtk )
|
||||
qemu_softmmu_targets_arm? ( fdt )
|
||||
qemu_softmmu_targets_microblaze? ( fdt )
|
||||
qemu_softmmu_targets_ppc? ( fdt )
|
||||
qemu_softmmu_targets_ppc64? ( fdt )
|
||||
sdl2? ( sdl )
|
||||
static? ( static-softmmu static-user )
|
||||
static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl !gtk !gtk2 )
|
||||
virtfs? ( xattr )
|
||||
vte? ( gtk )"
|
||||
|
||||
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
|
||||
#
|
||||
# The attr lib isn't always linked in (although the USE flag is always
|
||||
# respected). This is because qemu supports using the C library's API
|
||||
# when available rather than always using the extranl library.
|
||||
#
|
||||
# Older versions of gnutls are supported, but it's simpler to just require
|
||||
# the latest versions. This is also why we require nettle.
|
||||
COMMON_LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
|
||||
sys-libs/zlib[static-libs(+)]
|
||||
xattr? ( sys-apps/attr[static-libs(+)] )"
|
||||
SOFTMMU_LIB_DEPEND="${COMMON_LIB_DEPEND}
|
||||
>=x11-libs/pixman-0.28.0[static-libs(+)]
|
||||
accessibility? ( app-accessibility/brltty[static-libs(+)] )
|
||||
aio? ( dev-libs/libaio[static-libs(+)] )
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
caps? ( sys-libs/libcap-ng[static-libs(+)] )
|
||||
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
|
||||
fdt? ( >=sys-apps/dtc-1.4.0[static-libs(+)] )
|
||||
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
|
||||
gnutls? (
|
||||
dev-libs/nettle[static-libs(+)]
|
||||
>=net-libs/gnutls-3.0[static-libs(+)]
|
||||
)
|
||||
gtk? (
|
||||
gtk2? (
|
||||
x11-libs/gtk+:2
|
||||
vte? ( x11-libs/vte:0 )
|
||||
)
|
||||
!gtk2? (
|
||||
x11-libs/gtk+:3
|
||||
vte? ( x11-libs/vte:2.90 )
|
||||
)
|
||||
)
|
||||
infiniband? ( sys-fabric/librdmacm:=[static-libs(+)] )
|
||||
iscsi? ( net-libs/libiscsi )
|
||||
jpeg? ( virtual/jpeg:0=[static-libs(+)] )
|
||||
lzo? ( dev-libs/lzo:2[static-libs(+)] )
|
||||
ncurses? ( sys-libs/ncurses:0=[static-libs(+)] )
|
||||
nfs? ( >=net-fs/libnfs-1.9.3[static-libs(+)] )
|
||||
numa? ( sys-process/numactl[static-libs(+)] )
|
||||
opengl? (
|
||||
virtual/opengl
|
||||
media-libs/libepoxy[static-libs(+)]
|
||||
media-libs/mesa[static-libs(+)]
|
||||
media-libs/mesa[egl,gles2]
|
||||
)
|
||||
png? ( media-libs/libpng:0=[static-libs(+)] )
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
rbd? ( sys-cluster/ceph[static-libs(+)] )
|
||||
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
|
||||
sdl? (
|
||||
!sdl2? (
|
||||
media-libs/libsdl[X]
|
||||
>=media-libs/libsdl-1.2.11[static-libs(+)]
|
||||
)
|
||||
sdl2? (
|
||||
media-libs/libsdl2[X]
|
||||
media-libs/libsdl2[static-libs(+)]
|
||||
)
|
||||
)
|
||||
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
|
||||
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
|
||||
snappy? ( app-arch/snappy[static-libs(+)] )
|
||||
spice? (
|
||||
>=app-emulation/spice-protocol-0.12.3
|
||||
>=app-emulation/spice-0.12.0[static-libs(+)]
|
||||
)
|
||||
ssh? ( >=net-libs/libssh2-1.2.8[static-libs(+)] )
|
||||
usb? ( >=virtual/libusb-1-r2[static-libs(+)] )
|
||||
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
|
||||
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
|
||||
vde? ( net-misc/vde[static-libs(+)] )
|
||||
virgl? ( media-libs/virglrenderer[static-libs(+)] )
|
||||
virtfs? ( sys-libs/libcap )
|
||||
xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
|
||||
USER_LIB_DEPEND="${COMMON_LIB_DEPEND}"
|
||||
X86_FIRMWARE_DEPEND="
|
||||
>=sys-firmware/ipxe-1.0.0_p20130624
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/seabios-1.8.2
|
||||
~sys-firmware/sgabios-0.1_pre8
|
||||
~sys-firmware/vgabios-0.7a
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
sys-firmware/seabios
|
||||
sys-firmware/sgabios
|
||||
sys-firmware/vgabios
|
||||
)"
|
||||
CDEPEND="
|
||||
!static-softmmu? ( $(printf "%s? ( ${SOFTMMU_LIB_DEPEND//\[static-libs(+)]} ) " ${use_softmmu_targets}) )
|
||||
!static-user? ( $(printf "%s? ( ${USER_LIB_DEPEND//\[static-libs(+)]} ) " ${use_user_targets}) )
|
||||
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
systemtap? ( dev-util/systemtap )
|
||||
xen? ( app-emulation/xen-tools:= )"
|
||||
DEPEND="${CDEPEND}
|
||||
dev-lang/perl
|
||||
=dev-lang/python-2*
|
||||
sys-apps/texinfo
|
||||
virtual/pkgconfig
|
||||
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
|
||||
gtk? ( nls? ( sys-devel/gettext ) )
|
||||
static-softmmu? ( $(printf "%s? ( ${SOFTMMU_LIB_DEPEND} ) " ${use_softmmu_targets}) )
|
||||
static-user? ( $(printf "%s? ( ${USER_LIB_DEPEND} ) " ${use_user_targets}) )
|
||||
test? (
|
||||
dev-libs/glib[utils]
|
||||
sys-devel/bc
|
||||
)"
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-qemu )
|
||||
"
|
||||
|
||||
STRIP_MASK="/usr/share/qemu/palcode-clipper"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/share/qemu/openbios-ppc
|
||||
usr/share/qemu/openbios-sparc64
|
||||
usr/share/qemu/openbios-sparc32
|
||||
usr/share/qemu/palcode-clipper
|
||||
usr/share/qemu/s390-ccw.img
|
||||
usr/share/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_WX_LOAD="usr/bin/qemu-i386
|
||||
usr/bin/qemu-x86_64
|
||||
usr/bin/qemu-alpha
|
||||
usr/bin/qemu-arm
|
||||
usr/bin/qemu-cris
|
||||
usr/bin/qemu-m68k
|
||||
usr/bin/qemu-microblaze
|
||||
usr/bin/qemu-microblazeel
|
||||
usr/bin/qemu-mips
|
||||
usr/bin/qemu-mipsel
|
||||
usr/bin/qemu-or32
|
||||
usr/bin/qemu-ppc
|
||||
usr/bin/qemu-ppc64
|
||||
usr/bin/qemu-ppc64abi32
|
||||
usr/bin/qemu-sh4
|
||||
usr/bin/qemu-sh4eb
|
||||
usr/bin/qemu-sparc
|
||||
usr/bin/qemu-sparc64
|
||||
usr/bin/qemu-armeb
|
||||
usr/bin/qemu-sparc32plus
|
||||
usr/bin/qemu-s390x
|
||||
usr/bin/qemu-unicore32"
|
||||
|
||||
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure
|
||||
you have the kernel module loaded before running kvm. The easiest way to
|
||||
ensure that the kernel module is loaded is to load it on boot.\n
|
||||
For AMD CPUs the module is called 'kvm-amd'.\n
|
||||
For Intel CPUs the module is called 'kvm-intel'.\n
|
||||
Please review /etc/conf.d/modules for how to load these.\n\n
|
||||
Make sure your user is in the 'kvm' group\n
|
||||
Just run 'gpasswd -a <USER> kvm', then have <USER> re-login.\n\n
|
||||
For brand new installs, the default permissions on /dev/kvm might not let you
|
||||
access it. You can tell udev to reset ownership/perms:\n
|
||||
udevadm trigger -c add /dev/kvm"
|
||||
|
||||
qemu_support_kvm() {
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \
|
||||
use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \
|
||||
use qemu_softmmu_targets_s390x; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
return 1
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
if use kernel_linux && kernel_is lt 2 6 25; then
|
||||
eerror "This version of KVM requres a host kernel of 2.6.25 or higher."
|
||||
elif use kernel_linux; then
|
||||
if ! linux_config_exists; then
|
||||
eerror "Unable to check your kernel for KVM support"
|
||||
else
|
||||
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
|
||||
ERROR_KVM="You must enable KVM in your kernel to continue"
|
||||
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
|
||||
ERROR_KVM_AMD+=" your kernel configuration."
|
||||
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
|
||||
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
|
||||
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
|
||||
ERROR_TUN+=" into your kernel or loaded as a module to use the"
|
||||
ERROR_TUN+=" virtual network device if using -net tap."
|
||||
ERROR_BRIDGE="You will also need support for 802.1d"
|
||||
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
|
||||
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
|
||||
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
|
||||
ERROR_VHOST_NET+=" support"
|
||||
|
||||
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
|
||||
CONFIG_CHECK+=" ~KVM_AMD ~KVM_INTEL"
|
||||
fi
|
||||
|
||||
use python && CONFIG_CHECK+=" ~DEBUG_FS"
|
||||
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
|
||||
|
||||
# Now do the actual checks setup above
|
||||
check_extra_config
|
||||
fi
|
||||
fi
|
||||
|
||||
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
|
||||
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
|
||||
eerror "instances are still pointing to it. Please update your"
|
||||
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
|
||||
eerror "and the right system binary (e.g. qemu-system-x86_64)."
|
||||
die "update your virt configs to not use qemu-kvm"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup kvm 78
|
||||
}
|
||||
|
||||
# Sanity check to make sure target lists are kept up-to-date.
|
||||
check_targets() {
|
||||
local var=$1 mak=$2
|
||||
local detected sorted
|
||||
|
||||
pushd "${S}"/default-configs >/dev/null || die
|
||||
|
||||
# Force C locale until glibc is updated. #564936
|
||||
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
|
||||
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
|
||||
if [[ ${sorted} != "${detected}" ]] ; then
|
||||
eerror "The ebuild needs to be kept in sync."
|
||||
eerror "${var}: ${sorted}"
|
||||
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
|
||||
die "sync ${var} to the list of targets"
|
||||
fi
|
||||
|
||||
popd >/dev/null
|
||||
}
|
||||
|
||||
handle_locales() {
|
||||
# Make sure locale list is kept up-to-date.
|
||||
local detected sorted
|
||||
detected=$(echo $(cd po && printf '%s\n' *.po | grep -v messages.po | sed 's:.po$::' | sort -u))
|
||||
sorted=$(echo $(printf '%s\n' ${PLOCALES} | sort -u))
|
||||
if [[ ${sorted} != "${detected}" ]] ; then
|
||||
eerror "The ebuild needs to be kept in sync."
|
||||
eerror "PLOCALES: ${sorted}"
|
||||
eerror " po/*.po: ${detected}"
|
||||
die "sync PLOCALES"
|
||||
fi
|
||||
|
||||
# Deal with selective install of locales.
|
||||
if use nls ; then
|
||||
# Delete locales the user does not want. #577814
|
||||
rm_loc() { rm po/$1.po || die; }
|
||||
l10n_for_each_disabled_locale_do rm_loc
|
||||
else
|
||||
# Cheap hack to disable gettext .mo generation.
|
||||
rm -f po/*.po
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
check_targets IUSE_SOFTMMU_TARGETS softmmu
|
||||
check_targets IUSE_USER_TARGETS linux-user
|
||||
|
||||
# Alter target makefiles to accept CFLAGS set via flag-o
|
||||
sed -i -r \
|
||||
-e 's/^(C|OP_C|HELPER_C)FLAGS=/\1FLAGS+=/' \
|
||||
Makefile Makefile.target || die
|
||||
|
||||
epatch "${FILESDIR}"/qemu-2.5.0-cflags.patch
|
||||
[[ -n ${BACKPORTS} ]] && \
|
||||
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
|
||||
epatch
|
||||
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8567.patch #567868
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8558.patch #568246
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8701.patch #570110
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8743.patch #570988
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-1568.patch #571566
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8613.patch #569118
|
||||
epatch "${FILESDIR}"/${P}-CVE-2015-8619.patch #569300
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-1714.patch #571560
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-1922.patch #572082
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-1981.patch #572412
|
||||
epatch "${FILESDIR}"/${P}-usb-ehci-oob.patch #572454
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-2197.patch #573280
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-2198.patch #573314
|
||||
epatch "${FILESDIR}"/${P}-CVE-2016-2392.patch #574902
|
||||
epatch "${FILESDIR}"/${P}-usb-ndis-int-overflow.patch #575492
|
||||
epatch "${FILESDIR}"/${P}-rng-stack-corrupt-{0,1,2,3}.patch #576420
|
||||
epatch "${FILESDIR}"/${P}-sysmacros.patch
|
||||
epatch "${FILESDIR}"/${P}-ne2000-reg-check.patch #573816
|
||||
epatch "${FILESDIR}"/${P}-9pfs-segfault.patch #578142
|
||||
|
||||
# Fix ld and objcopy being called directly
|
||||
tc-export AR LD OBJCOPY
|
||||
|
||||
# Verbose builds
|
||||
MAKEOPTS+=" V=1"
|
||||
|
||||
epatch_user
|
||||
|
||||
# Run after we've applied all patches.
|
||||
handle_locales
|
||||
}
|
||||
|
||||
##
|
||||
# configures qemu based on the build directory and the build type
|
||||
# we are using.
|
||||
#
|
||||
qemu_src_configure() {
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
local buildtype=$1
|
||||
local builddir="${S}/${buildtype}-build"
|
||||
local static_flag="static-${buildtype}"
|
||||
|
||||
mkdir "${builddir}"
|
||||
|
||||
local conf_opts=(
|
||||
--prefix=/usr
|
||||
--sysconfdir=/etc
|
||||
--libdir=/usr/$(get_libdir)
|
||||
--docdir=/usr/share/doc/${PF}/html
|
||||
--disable-bsd-user
|
||||
--disable-guest-agent
|
||||
--disable-strip
|
||||
--disable-werror
|
||||
# We support gnutls/nettle for crypto operations. It is possible
|
||||
# to use gcrypt when gnutls/nettle are disabled (but not when they
|
||||
# are enabled), but it's not really worth the hassle. Disable it
|
||||
# all the time to avoid automatically detecting it. #568856
|
||||
--disable-gcrypt
|
||||
--python="${PYTHON}"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
--host-cc="$(tc-getBUILD_CC)"
|
||||
$(use_enable debug debug-info)
|
||||
$(use_enable debug debug-tcg)
|
||||
--enable-docs
|
||||
$(use_enable tci tcg-interpreter)
|
||||
$(use_enable xattr attr)
|
||||
)
|
||||
|
||||
# Disable options not used by user targets as the default configure
|
||||
# options will autoprobe and try to link in a bunch of unused junk.
|
||||
conf_softmmu() {
|
||||
if [[ ${buildtype} == "user" ]] ; then
|
||||
echo "--disable-${2:-$1}"
|
||||
else
|
||||
use_enable "$@"
|
||||
fi
|
||||
}
|
||||
conf_opts+=(
|
||||
$(conf_softmmu accessibility brlapi)
|
||||
$(conf_softmmu aio linux-aio)
|
||||
$(conf_softmmu bluetooth bluez)
|
||||
$(conf_softmmu caps cap-ng)
|
||||
$(conf_softmmu curl)
|
||||
$(conf_softmmu fdt)
|
||||
$(conf_softmmu glusterfs)
|
||||
$(conf_softmmu gnutls)
|
||||
$(conf_softmmu gnutls nettle)
|
||||
$(conf_softmmu gtk)
|
||||
$(conf_softmmu infiniband rdma)
|
||||
$(conf_softmmu iscsi libiscsi)
|
||||
$(conf_softmmu jpeg vnc-jpeg)
|
||||
$(conf_softmmu kernel_linux kvm)
|
||||
$(conf_softmmu lzo)
|
||||
$(conf_softmmu ncurses curses)
|
||||
$(conf_softmmu nfs libnfs)
|
||||
$(conf_softmmu numa)
|
||||
$(conf_softmmu opengl)
|
||||
$(conf_softmmu png vnc-png)
|
||||
$(conf_softmmu rbd)
|
||||
$(conf_softmmu sasl vnc-sasl)
|
||||
$(conf_softmmu sdl)
|
||||
$(conf_softmmu seccomp)
|
||||
$(conf_softmmu smartcard)
|
||||
$(conf_softmmu snappy)
|
||||
$(conf_softmmu spice)
|
||||
$(conf_softmmu ssh libssh2)
|
||||
$(conf_softmmu usb libusb)
|
||||
$(conf_softmmu usbredir usb-redir)
|
||||
$(conf_softmmu uuid)
|
||||
$(conf_softmmu vde)
|
||||
$(conf_softmmu vhost-net)
|
||||
$(conf_softmmu virgl virglrenderer)
|
||||
$(conf_softmmu virtfs)
|
||||
$(conf_softmmu vnc)
|
||||
$(conf_softmmu vte)
|
||||
$(conf_softmmu xen)
|
||||
$(conf_softmmu xen xen-pci-passthrough)
|
||||
$(conf_softmmu xfs xfsctl)
|
||||
)
|
||||
|
||||
case ${buildtype} in
|
||||
user)
|
||||
conf_opts+=(
|
||||
--enable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
--disable-tools
|
||||
)
|
||||
;;
|
||||
softmmu)
|
||||
# audio options
|
||||
local audio_opts="oss"
|
||||
use alsa && audio_opts="alsa,${audio_opts}"
|
||||
use sdl && audio_opts="sdl,${audio_opts}"
|
||||
use pulseaudio && audio_opts="pa,${audio_opts}"
|
||||
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--enable-system
|
||||
--with-system-pixman
|
||||
--audio-drv-list="${audio_opts}"
|
||||
)
|
||||
use gtk && conf_opts+=( --with-gtkabi=$(usex gtk2 2.0 3.0) )
|
||||
use sdl && conf_opts+=( --with-sdlabi=$(usex sdl2 2.0 1.2) )
|
||||
;;
|
||||
tools)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
)
|
||||
static_flag="static"
|
||||
;;
|
||||
esac
|
||||
|
||||
local targets="${buildtype}_targets"
|
||||
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
|
||||
|
||||
# Add support for SystemTAP
|
||||
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
|
||||
|
||||
# We always want to attempt to build with PIE support as it results
|
||||
# in a more secure binary. But it doesn't work with static or if
|
||||
# the current GCC doesn't have PIE support.
|
||||
if use ${static_flag}; then
|
||||
conf_opts+=( --static --disable-pie )
|
||||
else
|
||||
gcc-specs-pie && conf_opts+=( --enable-pie )
|
||||
fi
|
||||
|
||||
echo "../configure ${conf_opts[*]}"
|
||||
cd "${builddir}"
|
||||
../configure "${conf_opts[@]}" || die "configure failed"
|
||||
|
||||
# FreeBSD's kernel does not support QEMU assigning/grabbing
|
||||
# host USB devices yet
|
||||
use kernel_FreeBSD && \
|
||||
sed -i -E -e "s|^(HOST_USB=)bsd|\1stub|" "${S}"/config-host.mak
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local target
|
||||
|
||||
python_setup
|
||||
|
||||
softmmu_targets= softmmu_bins=()
|
||||
user_targets= user_bins=()
|
||||
|
||||
for target in ${IUSE_SOFTMMU_TARGETS} ; do
|
||||
if use "qemu_softmmu_targets_${target}"; then
|
||||
softmmu_targets+=",${target}-softmmu"
|
||||
softmmu_bins+=( "qemu-system-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
for target in ${IUSE_USER_TARGETS} ; do
|
||||
if use "qemu_user_targets_${target}"; then
|
||||
user_targets+=",${target}-linux-user"
|
||||
user_bins+=( "qemu-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
softmmu_targets=${softmmu_targets#,}
|
||||
user_targets=${user_targets#,}
|
||||
|
||||
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
|
||||
[[ -n ${user_targets} ]] && qemu_src_configure "user"
|
||||
[[ -z ${softmmu_targets}${user_targets} ]] && qemu_src_configure "tools"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
default
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
default
|
||||
fi
|
||||
|
||||
if [[ -z ${softmmu_targets}${user_targets} ]]; then
|
||||
cd "${S}/tools-build"
|
||||
default
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
pax-mark m */qemu-system-* #515550
|
||||
emake -j1 check
|
||||
emake -j1 check-report.html
|
||||
fi
|
||||
}
|
||||
|
||||
qemu_python_install() {
|
||||
python_domodule "${S}/scripts/qmp/qmp.py"
|
||||
|
||||
python_doscript "${S}/scripts/kvm/kvm_stat"
|
||||
python_doscript "${S}/scripts/kvm/vmxcap"
|
||||
python_doscript "${S}/scripts/qmp/qmp-shell"
|
||||
python_doscript "${S}/scripts/qmp/qemu-ga-client"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# Install binfmt handler init script for user targets
|
||||
newinitd "${FILESDIR}/qemu-binfmt.initd-r1" qemu-binfmt
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# This might not exist if the test failed. #512010
|
||||
[[ -e check-report.html ]] && dohtml check-report.html
|
||||
|
||||
if use kernel_linux; then
|
||||
udev_dorules "${FILESDIR}"/65-kvm.rules
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
python_foreach_impl qemu_python_install
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -z ${softmmu_targets}${user_targets} ]]; then
|
||||
cd "${S}/tools-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
fi
|
||||
|
||||
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
|
||||
pushd "${ED}"/usr/bin >/dev/null
|
||||
pax-mark m "${softmmu_bins[@]}" "${user_bins[@]}"
|
||||
popd >/dev/null
|
||||
|
||||
# Install config file example for qemu-bridge-helper
|
||||
insinto "/etc/qemu"
|
||||
doins "${FILESDIR}/bridge.conf"
|
||||
|
||||
# Remove the docdir placed qmp-commands.txt
|
||||
mv "${ED}/usr/share/doc/${PF}/html/qmp-commands.txt" "${S}/docs/" || die
|
||||
|
||||
cd "${S}"
|
||||
dodoc Changelog MAINTAINERS docs/specs/pci-ids.txt
|
||||
newdoc pc-bios/README README.pc-bios
|
||||
dodoc docs/qmp-*.txt
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
# Remove SeaBIOS since we're using the SeaBIOS packaged one
|
||||
rm "${ED}/usr/share/qemu/bios.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
|
||||
fi
|
||||
|
||||
# Remove vgabios since we're using the vgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/vgabios.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../vgabios/vgabios.bin /usr/share/qemu/vgabios.bin
|
||||
dosym ../vgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
|
||||
dosym ../vgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
|
||||
dosym ../vgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
|
||||
dosym ../vgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
|
||||
fi
|
||||
|
||||
# Remove sgabios since we're using the sgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/sgabios.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
|
||||
fi
|
||||
|
||||
# Remove iPXE since we're using the iPXE packaged one
|
||||
rm "${ED}"/usr/share/qemu/pxe-*.rom
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
|
||||
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
|
||||
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
|
||||
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
|
||||
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
|
||||
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
|
||||
fi
|
||||
fi
|
||||
|
||||
qemu_support_kvm && readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if qemu_support_kvm; then
|
||||
readme.gentoo_print_elog
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
|
||||
udev_reload
|
||||
fi
|
||||
|
||||
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
|
||||
}
|
||||
|
||||
pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
echo " $(best_version sys-firmware/ipxe)"
|
||||
echo " $(best_version sys-firmware/seabios)"
|
||||
if has_version 'sys-firmware/seabios[binary]'; then
|
||||
echo " USE=binary"
|
||||
else
|
||||
echo " USE=''"
|
||||
fi
|
||||
echo " $(best_version sys-firmware/vgabios)"
|
||||
}
|
@ -0,0 +1,540 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"
|
||||
PLOCALE_BACKUP="en"
|
||||
|
||||
inherit autotools eutils fdo-mime flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx versionator
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://source.winehq.org/git/wine.git http://source.winehq.org/git/wine.git"
|
||||
EGIT_BRANCH="master"
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
#KEYWORDS=""
|
||||
else
|
||||
MAJOR_V=$(get_version_component_range 1-2)
|
||||
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}/${P}.tar.bz2"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
|
||||
fi
|
||||
|
||||
VANILLA_GV="2.40"
|
||||
VANILLA_MV="4.5.6"
|
||||
STAGING_GV="2.40"
|
||||
STAGING_MV="4.5.6"
|
||||
[[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial"
|
||||
STAGING_P="wine-staging-${PV}"
|
||||
STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}"
|
||||
WINE_GENTOO="wine-gentoo-2015.03.07"
|
||||
GST_P="wine-1.8-gstreamer-1.0"
|
||||
DESCRIPTION="Free implementation of Windows(tm) on Unix"
|
||||
HOMEPAGE="http://www.winehq.org/"
|
||||
SRC_URI="${SRC_URI}
|
||||
!staging? (
|
||||
gecko? (
|
||||
abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86.msi )
|
||||
abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${VANILLA_GV}/wine_gecko-${VANILLA_GV}-x86_64.msi )
|
||||
)
|
||||
mono? ( https://dl.winehq.org/wine/wine-mono/${VANILLA_MV}/wine-mono-${VANILLA_MV}.msi )
|
||||
)
|
||||
staging? (
|
||||
gecko? (
|
||||
abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86.msi )
|
||||
abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${STAGING_GV}/wine_gecko-${STAGING_GV}-x86_64.msi )
|
||||
)
|
||||
mono? ( https://dl.winehq.org/wine/wine-mono/${STAGING_MV}/wine-mono-${STAGING_MV}.msi )
|
||||
)
|
||||
https://dev.gentoo.org/~np-hardass/distfiles/${PN}/${GST_P}.patch.bz2
|
||||
https://dev.gentoo.org/~tetromino/distfiles/${PN}/${WINE_GENTOO}.tar.bz2"
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
STAGING_EGIT_REPO_URI="git://github.com/wine-compholio/wine-staging.git"
|
||||
else
|
||||
SRC_URI="${SRC_URI}
|
||||
staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )"
|
||||
fi
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test themes +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml"
|
||||
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
|
||||
X? ( truetype )
|
||||
elibc_glibc? ( threads )
|
||||
mono? ( abi_x86_32 )
|
||||
osmesa? ( opengl )
|
||||
pipelight? ( staging )
|
||||
s3tc? ( staging )
|
||||
test? ( abi_x86_32 )
|
||||
themes? ( staging )
|
||||
vaapi? ( staging )" # osmesa-opengl #286560 # X-truetype #551124
|
||||
|
||||
# FIXME: the test suite is unsuitable for us; many tests require net access
|
||||
# or fail due to Xvfb's opengl limitations.
|
||||
RESTRICT="test"
|
||||
|
||||
COMMON_DEPEND="
|
||||
X? (
|
||||
x11-libs/libXcursor[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXext[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrandr[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXi[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
|
||||
)
|
||||
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
|
||||
capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
|
||||
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
|
||||
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
|
||||
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
|
||||
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
|
||||
lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
|
||||
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
|
||||
mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
|
||||
netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
|
||||
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
|
||||
odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
|
||||
openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
|
||||
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
|
||||
opengl? (
|
||||
virtual/glu[${MULTILIB_USEDEP}]
|
||||
virtual/opengl[${MULTILIB_USEDEP}]
|
||||
)
|
||||
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
|
||||
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
|
||||
png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
|
||||
scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
|
||||
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
|
||||
staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
|
||||
themes? (
|
||||
dev-libs/glib:2[${MULTILIB_USEDEP}]
|
||||
x11-libs/cairo[${MULTILIB_USEDEP}]
|
||||
x11-libs/gtk+:3[${MULTILIB_USEDEP}]
|
||||
)
|
||||
truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
|
||||
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
|
||||
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
|
||||
vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
|
||||
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
|
||||
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
|
||||
xml? (
|
||||
dev-libs/libxml2[${MULTILIB_USEDEP}]
|
||||
dev-libs/libxslt[${MULTILIB_USEDEP}]
|
||||
)
|
||||
abi_x86_32? (
|
||||
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-baselibs-20140508-r14
|
||||
!app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-db-20140508-r3
|
||||
!app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-medialibs-20140508-r6
|
||||
!app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-opengl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-sdl-20140508-r1
|
||||
!app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-soundlibs-20140508
|
||||
!app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
|
||||
!<app-emulation/emul-linux-x86-xlibs-20140508
|
||||
)"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
|
||||
perl? (
|
||||
dev-lang/perl
|
||||
dev-perl/XML-Simple
|
||||
)
|
||||
pulseaudio? (
|
||||
realtime? ( sys-auth/rtkit )
|
||||
)
|
||||
s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
|
||||
samba? ( >=net-fs/samba-3.0.25[winbind] )
|
||||
selinux? ( sec-policy/selinux-wine )
|
||||
udisks? ( sys-fs/udisks:2 )"
|
||||
|
||||
# tools/make_requests requires perl
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
sys-devel/flex
|
||||
>=sys-kernel/linux-headers-2.6
|
||||
virtual/pkgconfig
|
||||
virtual/yacc
|
||||
X? (
|
||||
x11-proto/inputproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xf86vidmodeproto
|
||||
)
|
||||
prelink? ( sys-devel/prelink )
|
||||
staging? (
|
||||
dev-lang/perl
|
||||
dev-perl/XML-Simple
|
||||
)
|
||||
xinerama? ( x11-proto/xineramaproto )"
|
||||
|
||||
# These use a non-standard "Wine" category, which is provided by
|
||||
# /etc/xdg/applications-merged/wine.menu
|
||||
QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
|
||||
usr/share/applications/wine-notepad.desktop
|
||||
usr/share/applications/wine-uninstaller.desktop
|
||||
usr/share/applications/wine-winecfg.desktop"
|
||||
|
||||
wine_compiler_check() {
|
||||
[[ ${MERGE_TYPE} = "binary" ]] && return 0
|
||||
|
||||
# GCC-specific bugs
|
||||
if tc-is-gcc; then
|
||||
# bug #549768
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
|
||||
ebegin "Checking for gcc-5 ms_abi compiler bug"
|
||||
$(tc-getCC) -O2 "${FILESDIR}"/pr66838.c -o "${T}"/pr66838 || die
|
||||
# Run in subshell to prevent "Aborted" message
|
||||
( "${T}"/pr66838 || false ) >/dev/null 2>&1
|
||||
if ! eend $?; then
|
||||
eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
|
||||
eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
|
||||
eerror "or use gcc-config to select a different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/549768"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
# bug #574044
|
||||
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
|
||||
ebegin "Checking for gcc-5-3 stack realignment compiler bug"
|
||||
# Compile in subshell to prevent "Aborted" message
|
||||
( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${FILESDIR}"/pr69140.c -o "${T}"/pr69140 ) >/dev/null 2>&1
|
||||
if ! eend $?; then
|
||||
eerror "Wine cannot be built with this version of gcc-5.3"
|
||||
eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
|
||||
eerror "or use gcc-config to select a different compiler version."
|
||||
eerror "See https://bugs.gentoo.org/574044"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Ensure compiler support
|
||||
if use abi_x86_64; then
|
||||
ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
|
||||
# Compile in subshell to prevent "Aborted" message
|
||||
( $(tc-getCC) -O2 "${FILESDIR}"/builtin_ms_va_list.c -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
|
||||
if ! eend $?; then
|
||||
eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
|
||||
eerror
|
||||
eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
wine_build_environment_check() {
|
||||
[[ ${MERGE_TYPE} = "binary" ]] && return 0
|
||||
|
||||
if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
|
||||
eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
|
||||
eerror "See https://bugs.gentoo.org/487864 for more details."
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
wine_env_vcs_vars() {
|
||||
local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
|
||||
local pn_live_val="${pn_live_var}"
|
||||
eval pn_live_val='$'${pn_live_val}
|
||||
if [[ ! -z ${pn_live_val} ]]; then
|
||||
if use staging || use d3d9; then
|
||||
eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
|
||||
eerror "cannot be used to set the commit. Instead, you may use the"
|
||||
eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
if [[ ! -z ${EGIT_COMMIT} ]]; then
|
||||
eerror "Commits must now be specified using the environmental variables"
|
||||
eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
|
||||
eerror
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
wine_compiler_check || die
|
||||
wine_build_environment_check || die
|
||||
|
||||
# Verify OSS support
|
||||
if use oss && ! use kernel_FreeBSD; then
|
||||
if ! has_version ">=media-sound/oss-4"; then
|
||||
eerror "You cannot build wine with USE=oss without having support from a"
|
||||
eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
|
||||
eerror
|
||||
die
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
wine_build_environment_check || die
|
||||
wine_env_vcs_vars || die
|
||||
if ! use staging; then
|
||||
GV=${VANILLA_GV}
|
||||
MV=${VANILLA_MV}
|
||||
else
|
||||
GV=${STAGING_GV}
|
||||
MV=${STAGING_MV}
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
|
||||
if use staging; then
|
||||
local CURRENT_WINE_COMMIT=${EGIT_VERSION}
|
||||
|
||||
git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
|
||||
git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
|
||||
|
||||
local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
|
||||
|
||||
if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
|
||||
einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
|
||||
einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
|
||||
einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
l10n_find_plocales_changes "${S}/po" "" ".po"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local md5="$(md5sum server/protocol.def)"
|
||||
local PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.5.26-winegcc.patch #260726
|
||||
"${FILESDIR}"/${PN}-1.9.5-multilib-portage.patch #395615
|
||||
"${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
|
||||
"${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
|
||||
"${WORKDIR}/${GST_P}.patch"
|
||||
)
|
||||
if use staging; then
|
||||
ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
|
||||
ewarn "Wine bugzilla should explicitly state that staging was used."
|
||||
|
||||
local STAGING_EXCLUDE=""
|
||||
use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
|
||||
|
||||
# Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
|
||||
ebegin "Running Wine-Staging patch installer"
|
||||
(
|
||||
set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
|
||||
cd "${STAGING_DIR}/patches"
|
||||
source "${STAGING_DIR}/patches/patchinstall.sh"
|
||||
)
|
||||
eend $? || die "Failed to apply Wine-Staging patches"
|
||||
|
||||
# To differentiate unofficial staging releases
|
||||
if [[ ! -z ${SUFFIX} ]]; then
|
||||
sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die
|
||||
fi
|
||||
fi
|
||||
|
||||
default
|
||||
eautoreconf
|
||||
|
||||
# Modification of the server protocol requires regenerating the server requests
|
||||
if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
|
||||
einfo "server/protocol.def was patched; running tools/make_requests"
|
||||
tools/make_requests || die #432348
|
||||
fi
|
||||
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
|
||||
if ! use run-exes; then
|
||||
sed -i '/^MimeType/d' loader/wine.desktop || die #117785
|
||||
fi
|
||||
|
||||
# hi-res default icon, #472990, http://bugs.winehq.org/show_bug.cgi?id=24652
|
||||
cp "${WORKDIR}"/${WINE_GENTOO}/icons/oic_winlogo.ico dlls/user32/resources/ || die
|
||||
|
||||
l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export LDCONFIG=/bin/true
|
||||
use custom-cflags || strip-flags
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=(
|
||||
--sysconfdir=/etc/wine
|
||||
$(use_with alsa)
|
||||
$(use_with capi)
|
||||
$(use_with lcms cms)
|
||||
$(use_with cups)
|
||||
$(use_with ncurses curses)
|
||||
$(use_with udisks dbus)
|
||||
$(use_with fontconfig)
|
||||
$(use_with ssl gnutls)
|
||||
$(use_enable gecko mshtml)
|
||||
$(use_with gphoto2 gphoto)
|
||||
$(use_with gsm)
|
||||
$(use_with gstreamer)
|
||||
--without-hal
|
||||
$(use_with jpeg)
|
||||
$(use_with ldap)
|
||||
$(use_enable mono mscoree)
|
||||
$(use_with mp3 mpg123)
|
||||
$(use_with netapi)
|
||||
$(use_with nls gettext)
|
||||
$(use_with openal)
|
||||
$(use_with opencl)
|
||||
$(use_with opengl)
|
||||
$(use_with osmesa)
|
||||
$(use_with oss)
|
||||
$(use_with pcap)
|
||||
$(use_with png)
|
||||
$(use_with pulseaudio pulse)
|
||||
$(use_with threads pthread)
|
||||
$(use_with scanner sane)
|
||||
$(use_enable test tests)
|
||||
$(use_with truetype freetype)
|
||||
$(use_with v4l)
|
||||
$(use_with X x)
|
||||
$(use_with xcomposite)
|
||||
$(use_with xinerama)
|
||||
$(use_with xml)
|
||||
$(use_with xml xslt)
|
||||
)
|
||||
|
||||
use staging && myconf+=(
|
||||
--with-xattr
|
||||
$(use_with themes gtk3)
|
||||
$(use_with vaapi va)
|
||||
)
|
||||
|
||||
local PKG_CONFIG AR RANLIB
|
||||
# Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
|
||||
# set AR and RANLIB to make QA scripts happy; #483342
|
||||
tc-export PKG_CONFIG AR RANLIB
|
||||
|
||||
if use amd64; then
|
||||
if [[ ${ABI} == amd64 ]]; then
|
||||
myconf+=( --enable-win64 )
|
||||
else
|
||||
myconf+=( --disable-win64 )
|
||||
fi
|
||||
|
||||
# Note: using --with-wine64 results in problems with multilib.eclass
|
||||
# CC/LD hackery. We're using separate tools instead.
|
||||
fi
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf "${myconf[@]}"
|
||||
emake depend
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
|
||||
if [[ ${ABI} == x86 ]]; then
|
||||
if [[ $(id -u) == 0 ]]; then
|
||||
ewarn "Skipping tests since they cannot be run under the root user."
|
||||
ewarn "To run the test ${PN} suite, add userpriv to FEATURES in make.conf"
|
||||
return
|
||||
fi
|
||||
|
||||
WINEPREFIX="${T}/.wine-${ABI}" \
|
||||
Xemake test
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
local DOCS=( ANNOUNCE AUTHORS README )
|
||||
local l
|
||||
add_locale_docs() {
|
||||
local locale_doc="documentation/README.$1"
|
||||
[[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
|
||||
}
|
||||
l10n_for_each_locale_do add_locale_docs
|
||||
|
||||
einstalldocs
|
||||
prune_libtool_files --all
|
||||
|
||||
emake -C "../${WINE_GENTOO}" install DESTDIR="${D}" EPREFIX="${EPREFIX}"
|
||||
if use gecko ; then
|
||||
insinto /usr/share/wine/gecko
|
||||
use abi_x86_32 && doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
|
||||
use abi_x86_64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
|
||||
fi
|
||||
if use mono ; then
|
||||
insinto /usr/share/wine/mono
|
||||
doins "${DISTDIR}"/wine-mono-${MV}.msi
|
||||
fi
|
||||
if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
|
||||
rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
|
||||
fi
|
||||
|
||||
# Remove wineconsole if neither backend is installed #551124
|
||||
if ! use X && ! use ncurses; then
|
||||
rm "${D}"/usr/{bin/,man/man1/}wineconsole* || die
|
||||
use abi_x86_32 && rm "${D}"/usr/lib32/wine/{,fakedlls/}wineconsole.exe* || die
|
||||
use abi_x86_64 && rm "${D}"/usr/lib64/wine/{,fakedlls/}wineconsole.exe* || die
|
||||
fi
|
||||
|
||||
use abi_x86_32 && pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
|
||||
use abi_x86_64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}
|
||||
|
||||
if use abi_x86_64 && ! use abi_x86_32; then
|
||||
dosym /usr/bin/wine{64,} # 404331
|
||||
dosym /usr/bin/wine{64,}-preloader
|
||||
fi
|
||||
|
||||
# respect LINGUAS when installing man pages, #469418
|
||||
for l in de fr pl; do
|
||||
use linguas_${l} || rm -r "${D}"usr/share/man/${l}*
|
||||
done
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
|
||||
if ! use gecko; then
|
||||
ewarn "Without Wine Gecko, wine prefixes will not have a default"
|
||||
ewarn "implementation of iexplore. Many older windows applications"
|
||||
ewarn "rely upon the existence of an iexplore implementation, so"
|
||||
ewarn "you will likely need to install an external one, like via winetricks"
|
||||
fi
|
||||
if ! use mono; then
|
||||
ewarn "Without Wine Mono, wine prefixes will not have a default"
|
||||
ewarn "implementation of .NET. Many windows applications rely upon"
|
||||
ewarn "the existence of a .NET implementation, so you will likely need"
|
||||
ewarn "to install an external one, like via winetricks"
|
||||
fi
|
||||
|
||||
if use gstreamer; then
|
||||
ewarn "This package uses a Gentoo specific patchset to provide"
|
||||
ewarn "GStreamer 1.0 support. Any bugs related to GStreamer should"
|
||||
ewarn "be filed at Gentoo's bugzilla, not upstream's."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
fdo-mime_desktop_database_update
|
||||
}
|
@ -1,3 +1 @@
|
||||
DIST ckb-0.2.4.tar.gz 522149 SHA256 7c2c5cbf84cbde52b4310012e92278a05d53e7e56fc81ea04306df2131f39bc9 SHA512 fe55c8dc28728cc68baa754ed7e0f1296bcb1828bdbc9bc35ef7863b2a49e03e4533c919384494b88122559a88b3dd7c1040927c1ccdb90871d08f36b98e07f4 WHIRLPOOL c70a1d917b65106f611a0d2608efe24f81a38c13141049fa9d71c819bd078121b5f9db8f0b0cf25ddccfb2e2172f500ce05f8d5488abd3c8203d88f3727dbe8c
|
||||
DIST ckb-0.2.5.tar.gz 526703 SHA256 633ffaefcea14d1ec1cbf5cd28b8de364cbac601b7f4658a1e37f3d817241996 SHA512 169952991b259564372235e12ca0b03befdc013d3ee024c77799a40980b33d0990e6e56e3656a20285f0b6e1d00433ed710f705997797a2d004634c1c60c1e30 WHIRLPOOL 7b76e177cc2a82ba998494646f0f348f9b770b808d8d3fca3dcf0512f37850f5fbeb32de11543db5409df1644414fd35c6d4ee172b8b493fa14abe9acbcc3cb5
|
||||
DIST ckb-0.2.6.tar.gz 526737 SHA256 924b22b7dd94f7ad6f0686859a05b0cb5df0aa12133bb9d277f2f1bd47672d91 SHA512 6d92b0e82865748d9731943462d2cb89c3ea0dea4170f8aebcf5e1ed491c5d635dcd69a4f1f385ab891846f2b3437e2cb154f5dae5f5446cf52e557ebf6343a6 WHIRLPOOL d739de63be05cdd24a417e619156e99df2c1ca32fb51a660ef2484609e83a7019296826173ee7268539a65d4b2f48ca6d10b4588756fc1c6e7a22a2f71edc646
|
||||
|
@ -1,46 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit qmake-utils systemd
|
||||
|
||||
DESCRIPTION="Corsair K65/K70/K95 Driver"
|
||||
HOMEPAGE="https://github.com/ccMSC/ckb"
|
||||
SRC_URI="https://github.com/ccMSC/ckb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="dev-libs/quazip[qt5]
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtnetwork:5
|
||||
dev-qt/qtwidgets:5"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
DOCS=( README.md BUILD.md DAEMON.md )
|
||||
|
||||
src_prepare() {
|
||||
sed -i -e "s/-Werror=all//" src/ckb-daemon/ckb-daemon.pro || die
|
||||
sed -i -e "/quazip/d" -e "s/^.*QUAZIP_STATIC/LIBS += -lquazip/" src/ckb/ckb.pro || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
eqmake5
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin bin/ckb bin/ckb-daemon
|
||||
dodir /usr/bin/ckb-animations
|
||||
exeinto /usr/bin/ckb-animations
|
||||
doexe bin/ckb-animations/*
|
||||
|
||||
newinitd "${FILESDIR}"/ckb.initd ckb-daemon
|
||||
domenu usr/ckb.desktop
|
||||
doicon usr/ckb.png
|
||||
systemd_dounit service/systemd/ckb-daemon.service
|
||||
}
|
@ -1,46 +0,0 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit qmake-utils systemd
|
||||
|
||||
DESCRIPTION="Corsair K65/K70/K95 Driver"
|
||||
HOMEPAGE="https://github.com/ccMSC/ckb"
|
||||
SRC_URI="https://github.com/ccMSC/ckb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="dev-libs/quazip[qt5]
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtnetwork:5
|
||||
dev-qt/qtwidgets:5"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
DOCS=( README.md BUILD.md DAEMON.md )
|
||||
|
||||
src_prepare() {
|
||||
sed -i -e "s/-Werror=all//" src/ckb-daemon/ckb-daemon.pro || die
|
||||
sed -i -e "/quazip/d" -e "s/^.*QUAZIP_STATIC/LIBS += -lquazip/" src/ckb/ckb.pro || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
eqmake5
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin bin/ckb bin/ckb-daemon
|
||||
dodir /usr/bin/ckb-animations
|
||||
exeinto /usr/bin/ckb-animations
|
||||
doexe bin/ckb-animations/*
|
||||
|
||||
newinitd "${FILESDIR}"/ckb.initd ckb-daemon
|
||||
domenu usr/ckb.desktop
|
||||
doicon usr/ckb.png
|
||||
systemd_dounit service/systemd/ckb-daemon.service
|
||||
}
|
@ -0,0 +1,52 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs prefix eutils
|
||||
|
||||
DESCRIPTION="The Original Korn Shell, 1993 revision (ksh93)"
|
||||
HOMEPAGE="http://www.kornshell.com/"
|
||||
|
||||
COMMIT="c506cb548d9b4bcebef92c86e948657728760e15"
|
||||
SRC_URI="https://github.com/att/ast/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="CPL-1.0 EPL-1.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="!app-shells/pdksh"
|
||||
|
||||
S="${WORKDIR}/ast-${COMMIT}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/ksh-prefix.patch
|
||||
"${FILESDIR}"/cpp.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Bug 238906.
|
||||
sed -i -e 's,cd /tmp,cd "${TMPDIR:-/tmp}",' \
|
||||
bin/package src/cmd/INIT/package.sh || die
|
||||
|
||||
eprefixify src/cmd/ksh93/data/msg.c
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export AR CC LD NM
|
||||
export CCFLAGS="${CFLAGS}"
|
||||
sh bin/package flat only make ast-ksh SHELL=sh SHOPT_SYSRC=1 || die
|
||||
# The build system doesn't exit properly
|
||||
[[ -e bin/ksh ]] || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
into /
|
||||
dobin bin/ksh
|
||||
dosym ksh /bin/rksh
|
||||
newman man/man1/sh.1 ksh.1
|
||||
}
|
@ -1,9 +1,12 @@
|
||||
DIST avrdude-5.11.1.tar.gz 570880 SHA256 52cd4586ec28e892407ae09e81bb8e719df08ee79acd88e5110fa890c82cec90 SHA512 af0154a54011490194aabe5a3d4f40ebf33404d73d41d2c25f01f3f3606f5cdb4de9377b83dc19fc7743e448f8385e3602654deaea9ed5f8dd9f037c7fa53978 WHIRLPOOL 902eff357778e3944ec8c6ee90f3f619473726e9ebac4b1b6f8fc68c95dea529218db53140c533c7bb2775efbb92ee75df6123bb9cf4b561cf84dca8bc28685a
|
||||
DIST avrdude-6.0.1.tar.gz 692284 SHA256 c6804668dfa96b23185dfe2e8239089af4e4ae0b11aa7435bebb28c3260ede41 SHA512 5d067c283b06e0e17b68bdcabc55ff848364c9d89aa2f9e95ef60b5b5c3f81418c2c416ef47e1c5895b27152f8b6c8f6e25e20af0c59d2a2e9a62e0da90c5905 WHIRLPOOL b00460d49f0e08af5aa1e0b13d919afb0f1fcf04a6d3e3f411b6f7cc22ffcbaa4b1eeffddcc4c7a639ab37732e8f1c8e0b075131f35409946713d687a5dee669
|
||||
DIST avrdude-6.1.tar.gz 714595 SHA256 9e98baca8e57cad402aaa1c7b61c8de750ed4f6fed577f7e4935db0430783d3b SHA512 7d9d12f1597308dd059a1ab43dca31ad145601c59f8655d7edb596224a754694202c0838f2b907398f796ef7bed90c5dc6a58d811481dd775da1e07b842362de WHIRLPOOL 714b13834b87ec759eb1d5c87848d7ff8a404dc0d1d8ab5dd5b98731de51302af2f01afbdb1a060d8ed92d158eabbf3ea656afc29ce9b865fb7c7574751e65a9
|
||||
DIST avrdude-6.3.tar.gz 909744 SHA256 0f9f731b6394ca7795b88359689a7fa1fba818c6e1d962513eb28da670e0a196 SHA512 b671008388d6a552e71066fec46429bc7f6639e8eac41113bcbba5a56212b78be31fcf04956b31e11c6b14888b0f6e825f7458395b9ff4fc28406074c7ded2b2 WHIRLPOOL a5fbbd5ca348b52988d8a724ba5a5a2691812a57978a0fb05d21c4f392fe172c0253c934dba01c00f91091a7f22dc426a793098d2228c74d5a38f44dc5aba276
|
||||
DIST avrdude-doc-5.11.1.pdf 242953 SHA256 2f017acf39bb64256f424671b0a839b2d7544639d1a57702d5de2cb4d534ed1d SHA512 9250b304273857cb40550958765f97697fc4d0e500d5b58eca76f30215699f4f48db27e65eec7437e1d8f059f3162491c7cae535b76dfc474fd3bae8133616ae WHIRLPOOL 5d59567f3f8c7e1e8d238a11fe7370a5ec5fafca1d815a82d52a50692032e774c077941c685dd8d2477b14d7c09ca85d2ac7a6baaa8f57c085c3f17a6c336f45
|
||||
DIST avrdude-doc-5.11.1.tar.gz 35915 SHA256 62b645282bd87ffedeac4b94b15fb868dfbadfaa4a63373a25ede9c7c53d4217 SHA512 baae5afb1596af1e4c8df321352bd4edb18095ecd3c7ad79c760200a8067573e92f3ce6300a3db518d44734cf8951a4c088835ca4aa6168c8725adddff640848 WHIRLPOOL b2f3e74aac6b466ede0873b3f7b6b75ca8e2cb25ce7b94277a76e600200dabd9ae8640ce15f5ab64785da5fb0555152b29ce7c1b5332b7fd320c71295aa0fe2a
|
||||
DIST avrdude-doc-6.0.1.pdf 256686 SHA256 9aa5fdda4c6eafb6b1df2b8097db61896a47a514d2e23dc7858608388607dc35 SHA512 187809725916ea37a203f55ba44d8ef1f9af651413a75169a54465d367823cde008b7bcf77cd53937e1b0bbb1e33071e6f45564b2f03c31247bb666befe2126a WHIRLPOOL 6b3fae078ba1972fb5368801b049f48ce6f457a1b221e1ccde0329a223a8b017b72f519d6ab1bfc3d2f5a19b57237335d9bc98cb8e373d18963ea632f079bde7
|
||||
DIST avrdude-doc-6.0.1.tar.gz 40339 SHA256 19d4323bd3768ced807edf225d8129475ba83785ea0f74c29b6bfaddd459a7ef SHA512 a9744784650751b8e601bb3fce45e3e0816db9971d7e32e5d7075997f4662a94ea38a3e372480b28f2e109c12e37914496077f2698946ffd92dea9d1fe8676f0 WHIRLPOOL 4bc3caef70a380e5ad8e792a53de04ed3b1236d4438b405370a528b8fa06342476b34a0487534a1bc16acb5ce32d82f9fc8db09e370dfc33c5306fe698278d19
|
||||
DIST avrdude-doc-6.1.pdf 259286 SHA256 b1734f0cd718bfb83398bbb2c2e69c392694300b0e3b281d1c8c59b3d37f7599 SHA512 97db435758e5d9d8173180dd860a28008b050988b81651b383b5b13ff081e79985b5b18c245a855221e773dbbe1dddbc2e69bf91211aae4429415b53be56d769 WHIRLPOOL d9c7a786523260491edf1978f2bc540e6ca5ba677eb7a4cf0725037d9373e0e319d1e3c1136efaaed7f6d86caa2de5a1468de974e1c66621a82108ebfcf7edbf
|
||||
DIST avrdude-doc-6.1.tar.gz 41567 SHA256 e34cd4282e86da0f791575fd1fd6db250524cf1c7b14952ddf1ccc113952b9de SHA512 9a667c007203b577fce722beaf77b1b38e68de05ce256745fe3bd53397145aa3f2526b8ac8664c8192c368098d171704ba78d81cfcbe99384050702461f012bf WHIRLPOOL 658e62d74c1d2b8f7f1dae316d8966d4136bd4e24853620bb07faab87b02c7d7d32bbe2406ba46700758584bc3e80a16e6cd1e247a5fd8280f80ad15f6daa5f4
|
||||
DIST avrdude-doc-6.3.pdf 255521 SHA256 f3e7cc7557a111c181f3f04d2dab075e8341d78d7e7f8914b578198d18daca2f SHA512 f33b15f6a9247f6646ba8a861f1e86f5d43b1b44438fb95bd53764a73f0c450f669dcb43b6b587390ddbc22dafa02758ddc330a7aab1651ccca7c8da8e00b755 WHIRLPOOL b96fc0c1f24aeda248629b51516b024c66a3a4cb2ab177bdb56f2d3f01dadf4642c958eb7153f44e507404a1503ae84e0571eade5bc428bcc095fba51ff29a55
|
||||
DIST avrdude-doc-6.3.tar.gz 39823 SHA256 047a8a37b09f683582d7a0418417cd3020859d4705dd7e00f048e733903cdf3e SHA512 b7abd9d0068d2933a1907655832930c455093b4ffbdc2b6fb2405a821cad0ba1c4de3aa5fa0ea7c9b53d06cfa6d5b5658d30a18a4f5c3884d0e15c171a097b29 WHIRLPOOL 2baa84196635154916d06b5fbce93a4f4dc4f9bf4ce5cc28f82363aa9e59f9d6fb4b55bf6a6ea4ef25afb49119367bf9637f022639fe1b84e82932750156b2f4
|
||||
|
@ -0,0 +1,59 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="AVR Downloader/UploaDEr"
|
||||
HOMEPAGE="https://savannah.nongnu.org/projects/avrdude"
|
||||
SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz
|
||||
doc? (
|
||||
mirror://nongnu/${PN}/${PN}-doc-${PV}.tar.gz
|
||||
mirror://nongnu/${PN}/${PN}-doc-${PV}.pdf
|
||||
)"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
|
||||
IUSE="doc ftdi ncurses readline"
|
||||
|
||||
RDEPEND="virtual/libusb:1
|
||||
virtual/libusb:0
|
||||
ftdi? ( dev-embedded/libftdi:= )
|
||||
ncurses? ( sys-libs/ncurses:= )
|
||||
readline? ( sys-libs/readline )"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
DOCS="AUTHORS ChangeLog* NEWS README"
|
||||
|
||||
src_prepare() {
|
||||
# let the build system re-generate these, bug #120194
|
||||
rm -f lexer.c config_gram.c config_gram.h || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# somehow this doesnt get set when cross-compiling and breaks build
|
||||
tc-export AR
|
||||
export ac_cv_lib_ftdi_ftdi_usb_get_strings=$(usex ftdi)
|
||||
export ac_cv_lib_ncurses_tputs=$(usex ncurses)
|
||||
export ac_cv_lib_readline_readline=$(usex readline)
|
||||
default
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# The automake target for these files does not use tempfiles or create
|
||||
# these atomically, confusing a parallel build. So we force them first.
|
||||
emake lexer.c config_gram.c config_gram.h
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
if use doc ; then
|
||||
newdoc "${DISTDIR}/${PN}-doc-${PV}.pdf" avrdude.pdf
|
||||
dodoc -r "${WORKDIR}/avrdude-html/"
|
||||
fi
|
||||
}
|
@ -1,59 +0,0 @@
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 7481047..478becb 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -55,6 +55,8 @@ PIC_CFLAGS = @PIC_CFLAGS@
|
||||
CTARGET = @CTARGET@
|
||||
LDTARGET = @LDTARGET@
|
||||
MKLIB = @MKLIB@
|
||||
+AR = @AR@
|
||||
+ARFLAGS = crus
|
||||
CC_MM = @CC_MM@
|
||||
|
||||
ifeq (macho, $(ABI))
|
||||
@@ -185,7 +187,7 @@ $(objroot)lib/$(LIBJEMALLOC)_s.$(A) : $(COBJS)
|
||||
|
||||
$(STATIC_LIBS):
|
||||
@mkdir -p $(@D)
|
||||
- $(MKLIB) $+
|
||||
+ $(AR) $(ARFLAGS) $@ $+
|
||||
|
||||
$(objroot)test/bitmap$(EXE): $(objroot)src/bitmap.$(O)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index c270662..f4b4c21 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -226,9 +226,13 @@ PIC_CFLAGS='-fPIC -DPIC'
|
||||
CTARGET='-o $@'
|
||||
LDTARGET='-o $@'
|
||||
EXTRA_LDFLAGS=
|
||||
-MKLIB='ar crus $@'
|
||||
CC_MM=1
|
||||
|
||||
+AN_MAKEVAR([AR], [AC_PROG_AR])
|
||||
+AN_PROGRAM([ar], [AC_PROG_AR])
|
||||
+AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL(AR, ar, :)])
|
||||
+AC_PROG_AR
|
||||
+
|
||||
dnl Platform-specific settings. abi and RPATH can probably be determined
|
||||
dnl programmatically, but doing so is error-prone, which makes it generally
|
||||
dnl not worth the trouble.
|
||||
@@ -310,7 +314,8 @@ case "${host}" in
|
||||
EXTRA_LDFLAGS="-link -DEBUG"
|
||||
CTARGET='-Fo$@'
|
||||
LDTARGET='-Fe$@'
|
||||
- MKLIB='lib -nologo -out:$@'
|
||||
+ AR='lib'
|
||||
+ ARFLAGS='-nologo -out:'
|
||||
CC_MM=
|
||||
else
|
||||
importlib="${so}"
|
||||
@@ -403,7 +408,6 @@ AC_SUBST([enable_autogen])
|
||||
|
||||
AC_PROG_INSTALL
|
||||
AC_PROG_RANLIB
|
||||
-AC_PATH_PROG([AR], [ar], [false], [$PATH])
|
||||
AC_PATH_PROG([LD], [ld], [false], [$PATH])
|
||||
AC_PATH_PROG([AUTOCONF], [autoconf], [false], [$PATH])
|
||||
|
@ -1,41 +0,0 @@
|
||||
The LANG vars aren't reset early enough so when sed tries to use [a-zA-Z] in
|
||||
option parsing, it may break.
|
||||
|
||||
http://bugs.gentoo.org/103483
|
||||
|
||||
--- mozilla/nsprpub/configure
|
||||
+++ mozilla/nsprpub/configure
|
||||
@@ -54,6 +54,16 @@
|
||||
infodir='${prefix}/info'
|
||||
mandir='${prefix}/man'
|
||||
|
||||
+# NLS nuisances.
|
||||
+# Only set these to C if already set. These must not be set unconditionally
|
||||
+# because not all systems understand e.g. LANG=C (notably SCO).
|
||||
+# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
|
||||
+# Non-C LC_CTYPE values break the ctype check.
|
||||
+if test "${LANG+set}" = set; then LANG=C; export LANG; fi
|
||||
+if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
|
||||
+if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
|
||||
+if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
|
||||
+
|
||||
# Initialize some other variables.
|
||||
subdirs=
|
||||
MFLAGS= MAKEFLAGS=
|
||||
@@ -452,16 +463,6 @@
|
||||
esac
|
||||
done
|
||||
|
||||
-# NLS nuisances.
|
||||
-# Only set these to C if already set. These must not be set unconditionally
|
||||
-# because not all systems understand e.g. LANG=C (notably SCO).
|
||||
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
|
||||
-# Non-C LC_CTYPE values break the ctype check.
|
||||
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
|
||||
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
|
||||
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
|
||||
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
|
||||
-
|
||||
# confdefs.h avoids OS command line length limits that DEFS can exceed.
|
||||
rm -rf conftest* confdefs.h
|
||||
# AIX cpp loses on an empty file, so make sure it contains at least a newline.
|
@ -1,62 +0,0 @@
|
||||
* drop Solaris linker stuff
|
||||
|
||||
--- nspr-4.7.4/mozilla/nsprpub/configure.in
|
||||
+++ nspr-4.7.4/mozilla/nsprpub/configure.in
|
||||
@@ -1988,26 +1988,14 @@
|
||||
CPU_ARCH=`uname -p`
|
||||
MDCPUCFG_H=_solaris.cfg
|
||||
PR_MD_CSRCS=solaris.c
|
||||
- LD=/usr/ccs/bin/ld
|
||||
MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@'
|
||||
RESOLVE_LINK_SYMBOLS=1
|
||||
- case "${OS_RELEASE}" in
|
||||
- 5.8|5.9)
|
||||
- ;;
|
||||
- *)
|
||||
- # It is safe to use the -Bdirect linker flag on Solaris 10 or later.
|
||||
- USE_B_DIRECT=1
|
||||
- ;;
|
||||
- esac
|
||||
if test -n "$GNU_CC"; then
|
||||
DSO_CFLAGS=-fPIC
|
||||
if `$CC -print-prog-name=ld` -v 2>&1 | grep -c GNU >/dev/null; then
|
||||
GCC_USE_GNU_LD=1
|
||||
fi
|
||||
- DSO_LDOPTS='-shared -Wl,-h,$(notdir $@),-z,combreloc,-z,defs,-z,ignore'
|
||||
- if test -n "$USE_B_DIRECT"; then
|
||||
- DSO_LDOPTS="$DSO_LDOPTS,-Bdirect"
|
||||
- fi
|
||||
+ DSO_LDOPTS='-shared -Wl,-soname -Wl,$(notdir $@)'
|
||||
else
|
||||
DSO_CFLAGS=-KPIC
|
||||
DSO_LDOPTS='-G -h $(notdir $@) -z combreloc -z defs -z ignore'
|
||||
--- nspr-4.7.4/mozilla/nsprpub/configure
|
||||
+++ nspr-4.7.4/mozilla/nsprpub/configure
|
||||
@@ -4765,26 +4765,14 @@
|
||||
CPU_ARCH=`uname -p`
|
||||
MDCPUCFG_H=_solaris.cfg
|
||||
PR_MD_CSRCS=solaris.c
|
||||
- LD=/usr/ccs/bin/ld
|
||||
MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@'
|
||||
RESOLVE_LINK_SYMBOLS=1
|
||||
- case "${OS_RELEASE}" in
|
||||
- 5.8|5.9)
|
||||
- ;;
|
||||
- *)
|
||||
- # It is safe to use the -Bdirect linker flag on Solaris 10 or later.
|
||||
- USE_B_DIRECT=1
|
||||
- ;;
|
||||
- esac
|
||||
if test -n "$GNU_CC"; then
|
||||
DSO_CFLAGS=-fPIC
|
||||
if `$CC -print-prog-name=ld` -v 2>&1 | grep -c GNU >/dev/null; then
|
||||
GCC_USE_GNU_LD=1
|
||||
fi
|
||||
- DSO_LDOPTS='-shared -Wl,-h,$(notdir $@),-z,combreloc,-z,defs,-z,ignore'
|
||||
- if test -n "$USE_B_DIRECT"; then
|
||||
- DSO_LDOPTS="$DSO_LDOPTS,-Bdirect"
|
||||
- fi
|
||||
+ DSO_LDOPTS='-shared -Wl,-soname -Wl,$(notdir $@)'
|
||||
else
|
||||
DSO_CFLAGS=-KPIC
|
||||
DSO_LDOPTS='-G -h $(notdir $@) -z combreloc -z defs -z ignore'
|
@ -1,5 +1,3 @@
|
||||
DIST Markups-0.2.4.tar.gz 8827 SHA256 0aab138698035e699fad1c88bebb3fa5e90a1876bc7d8fefb3491513fe13f16b SHA512 369eda02474f723d694bc0518324afde9f5baef02719448abb420a77d58cf1543939e6d38aa1db531d4214dc4cd4c47b29d79fa7a23b33b4ae74b45ad2ec52c7 WHIRLPOOL 1118723f5b9725b68d052e2496ccee414782bd6cceaedc49f9c2918c4055145fb95d49cf962c46eb669ab7a3a8659b86ed54fa5b99f6ac91266cebc4ecf01b10
|
||||
DIST Markups-0.6.1.tar.gz 19116 SHA256 1f3d6f7b85ac9ddcb936b8b2b6fa15a42ddc9dfc22a075d83d9160b5d59f6d84 SHA512 f1354af48aadb43459e8f0c2013d283c4f6170f608c4ca4a2dd21e77c6fc2383bd6a1631efc9a8878c4a0ba59249528222ba01d1a38ed3f02c6890d42c6afdb9 WHIRLPOOL 2db23d6cb9a282eb461a6ff49b21d1e1a57b6bc970739413efe4bbffdff6bc55d076db4546f0ff458c9cd8b66c389daa21e9cad7341d614109891c9a2b46acc2
|
||||
DIST Markups-0.6.3.tar.gz 19285 SHA256 e3ff5de2be018240c526e017972b37181cb3d5dfb7c96ad14eae6639140f58ef SHA512 61b3921595628f577d335c9eb7e405435c1547a6d5d06396e4181a0f3ac0bce8f5a72b5c51568ceeec96c86524ec4baa1cbcb807f545a630a87d807b9e12c97b WHIRLPOOL 9aad9486e57831fbca7124cb06dc84fd69df3036d7f08e8168b9969e83b58a32250cb82c90b70344f60d30c03fb3c7171f698fb8ba6ea23f5c296bb6d8b80ba2
|
||||
DIST Markups-1.0.0.tar.gz 14841 SHA256 4d618b2af5c37fa0e4ae2e0798a87505d1e94f9eb78d0db6b893df1f91c37ec2 SHA512 081eb12d30de6c88a6e8a985326e1135fa7346ed5d625364565c53010557ea73a0411ae29e6b9fa4223c5c93bd5abbdcc3ce8dfc36d5bff69a144f865d59b965 WHIRLPOOL c2b94bff742478d65c384891facefecb99527b32301aafb3c976e6cfef12d21bf014143f8254d2e302175336ff664d13e134c9448eb21eb101ba15726c3377a5
|
||||
DIST Markups-1.0.1.tar.gz 14894 SHA256 74464b7532aa355f6ed2767fd5cfb5eb5b484dd773b33bae4016a7fa9354b4ee SHA512 f57f712f84413ed35f53643533d392e2164de02742e170f85fc4556094041ffa16ed1ff6d902bcafe996d22a4410e4c2794e4c96246fc06afbf878d6be85cf31 WHIRLPOOL f5bf7700b76dcad18aba9ec5503ba9516e8e7f8a34577b55b423531c9f88ee547690a90e8043997651fe36516c9990a6de103f8268c4fcf768f4605d8982829f
|
||||
DIST Markups-2.0.0.tar.gz 16772 SHA256 5639ddd76d74e0a5335e5b66ff2f1b3f9a9f0ab6eeff76a1003f59ed0ec2b721 SHA512 8ccd348efea68678bfb7f47bd13da2729f95a5b5a8d44f11239dbb86b8224867cb1197e46d875ab9a0ba914be004bdc9aa6848b1e6549dc53b12e06040faaaae WHIRLPOOL 0f47974c498e3088e6af022eeff9478f6602df0cc509c3f04935005fc61e6abd431bdb581f4442f7b06cd86366a96590d04c75642698bc6abbc86679b97768c3
|
||||
|
@ -1,38 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4} pypy )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
MY_PN="Markups"
|
||||
MY_P=${MY_PN}-${PV}
|
||||
|
||||
DESCRIPTION="A wrapper around various text markups"
|
||||
HOMEPAGE="https://pypi.python.org/pypi/Markups"
|
||||
SRC_URI="mirror://pypi/M/${MY_PN}/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
|
||||
DEPEND="dev-python/markdown[${PYTHON_USEDEP}]"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
python_test() {
|
||||
pushd tests > /dev/null
|
||||
for test in test_*.py ; do
|
||||
local testName="$(echo ${test} | sed 's/test_\(.*\).py/\1/g')"
|
||||
if [[ ${testName} == "web" ]]; then
|
||||
$(python_is_python3) || continue
|
||||
fi
|
||||
einfo "Running test '${testName}' with '${EPYTHON}'."
|
||||
${EPYTHON} ${test} || die "Test '${testName}' with '${EPYTHON}' failed."
|
||||
done
|
||||
popd tests > /dev/null
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4} pypy )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
MY_PN="Markups"
|
||||
MY_P=${MY_PN}-${PV}
|
||||
|
||||
DESCRIPTION="A wrapper around various text markups"
|
||||
HOMEPAGE="https://pypi.python.org/pypi/Markups"
|
||||
SRC_URI="mirror://pypi/M/${MY_PN}/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
|
||||
DEPEND="dev-python/markdown[${PYTHON_USEDEP}]"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
python_test() {
|
||||
pushd tests > /dev/null
|
||||
for test in test_*.py ; do
|
||||
local testName="$(echo ${test} | sed 's/test_\(.*\).py/\1/g')"
|
||||
if [[ ${testName} == "web" ]]; then
|
||||
$(python_is_python3) || continue
|
||||
fi
|
||||
einfo "Running test '${testName}' with '${EPYTHON}'."
|
||||
${EPYTHON} ${test} || die "Test '${testName}' with '${EPYTHON}' failed."
|
||||
done
|
||||
popd tests > /dev/null
|
||||
}
|
@ -1,10 +1,10 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4} pypy )
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4,5} pypy )
|
||||
|
||||
inherit distutils-r1
|
||||
|
@ -1,3 +1,4 @@
|
||||
DIST pytest-2.7.2.tar.gz 532836 SHA256 b30457f735420d0000d10a44bbd478cf03f8bf20e25bd77248f9bab40f4fd6a4 SHA512 5474a4fe58437a4971fb21b1b37dad3c08e18e5d154931ff23e597f881100a3515bf0cf71d06b143465594ad2a91a96f84f4836d84c39691143c8d88ca7a4360 WHIRLPOOL 6ab7371f952109ac476774222883e1381fe5ee6a54d967f2d90765f6c59c90634a16c42e8e2e1661169db6a9cb1327242ff2281cf1caeabd86a4dacd24f4bb06
|
||||
DIST pytest-2.8.2.tar.gz 563955 SHA256 da2fc57320dd11f621d166634c52b989aa2291af1296c32a27a11777aa4128b9 SHA512 0df6e0421d1575e1efc0bb0550c5993f802777cb616ab1514bf12ed11eb5ec35a142dd837ff65659989268c36e441e18108369991cd3d458d357aac6ba433991 WHIRLPOOL ea917f4aaec444d6edc830b4ec66f7adb305031f11328e47d12a609ec92368a5c56e9cf8e24bd1a9a4a6a0746b43133f0d9821cf27d74c15ed2a83a705ee6030
|
||||
DIST pytest-2.8.7.tar.gz 564943 SHA256 fc4c86be54fce08e4b85b646a736efa18c6cde7599c1d2919f4f74629e018baf SHA512 c7f626ceb599811caeab4646389a2c489dd22d766c772d6ca686098cef9a11dca47ef41a4a4b811110f358bca1f1a678b549b2adfea48317ae70cf166289b371 WHIRLPOOL c3849f1a9f62c05c1ce20593f32ee513aee87853914be4099503cd47b068732df99605a0a4db9a3a7add4ef2a85f4d5376acf1a2e3f48f5d438433f200cb6196
|
||||
DIST pytest-3.0.2.tar.gz 727551 SHA256 64d8937626dd2a4bc15ef0edd307d26636a72a3f3f9664c424d78e40efb1e339 SHA512 38485c73f9df3c76b7b920b6957ffe4fbfd32ca0c46b73a53375a40586a482d270bf71b4457b68d48815d50ad173824b269ece255692ae0d1b13f0b1885ce54f WHIRLPOOL b6954a95e5f7d9b904c7543a09c2ef237c76c3a35bcd3e24c402a02aec3b35a19cdb952ac38af4ce43ae516cb5ac52023a0d91f2c587343265edd6d493145e8a
|
||||
|
@ -0,0 +1,63 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4,5} pypy pypy3 )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Simple powerful testing with Python"
|
||||
HOMEPAGE="http://pytest.org/ https://pypi.python.org/pypi/pytest"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
IUSE="test"
|
||||
|
||||
# When bumping, please check setup.py for the proper py version
|
||||
PY_VER="1.4.29"
|
||||
RDEPEND=">=dev-python/py-${PY_VER}[${PYTHON_USEDEP}]"
|
||||
|
||||
# dev-python/pluggy
|
||||
# https://github.com/hpk42/pluggy
|
||||
# See https://github.com/pytest-dev/pytest/issues/944
|
||||
# for why not now
|
||||
|
||||
#pexpect dep based on https://bitbucket.org/hpk42/pytest/issue/386/tests-fail-with-pexpect-30
|
||||
DEPEND="${RDEPEND}
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
dev-python/hypothesis[${PYTHON_USEDEP}]
|
||||
dev-python/nose[${PYTHON_USEDEP}]
|
||||
dev-python/mock[${PYTHON_USEDEP}]
|
||||
dev-python/requests[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
python_prepare_all() {
|
||||
chmod o-w *egg*/* || die
|
||||
# Disable versioning of py.test script to avoid collision with
|
||||
# versioning performed by the eclass.
|
||||
sed -e "s/return points/return {'py.test': target}/" -i setup.py || die "sed failed"
|
||||
grep -qF "py>=${PY_VER}" setup.py || die "Incorrect dev-python/py dependency"
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
# test_nose.py not written to suit py3.2 in pypy3
|
||||
if [[ "${EPYTHON}" == pypy3 ]]; then
|
||||
"${PYTHON}" "${BUILD_DIR}"/lib/pytest.py -x -v \
|
||||
--ignore=testing/BUILD_nose.py \
|
||||
|| die "tests failed with ${EPYTHON}"
|
||||
else
|
||||
"${PYTHON}" "${BUILD_DIR}"/lib/pytest.py -v testing || die "tests failed with ${EPYTHON}"
|
||||
fi
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST vcrpy-1.10.0.tar.gz 61035 SHA256 f64ad26e06c3b45465044c03555bc69a077822432ab839118963229c4ef63e81 SHA512 77049224b618a100d371df9441de1e9cb06b8c3d415be4f8b333387da90a318986f705740ec19764c89eb937ff47f9dd1692d0a884403804b87db160604bddfb WHIRLPOOL ba48abce4344091f6fc795568e08a655e6b7f358f0af031218a036eb81761dbf5edf16c3834b12da2fa1a2cac33dea9940862d1bab68ad85c7adcb8399b7edbe
|
||||
DIST vcrpy-1.5.2.tar.gz 299525 SHA256 ef3216e91ab3a51b67c44e0e4a8c50f6edcc812658da4c73ff32b1eb36a8a9bf SHA512 2eccc061a1e90b03fb0688aac5566bdf96a7bfd6ffc34aa71af8395665cde8f183d02c5107572f1bbca0388c865c913f1b2a9c7b295c11be395dce20c4d5b761 WHIRLPOOL 49a0eb2d582003bebb788129d5f03a8d120d9752867d439a7394e7ed664b6a1b296d59d5a501e861cf3e78e4679c7a6e683843d75a0e512d0e4185da196f6081
|
||||
DIST vcrpy-1.7.3.tar.gz 164928 SHA256 d10f10eb23f7a662ff6c637f2fd57bfed29d62a0211dfd6802767cfc5f0716a1 SHA512 338d168436438d13af09e969bb2bdfd49b62fe12f78b3899fd423c3221a0d194bb2c53e660d1e5fabd76dff27ba6eca1c5052e0bd40a995929de56614bbe13cd WHIRLPOOL 19e34d7ed9ea5ec99a34595f5f38859befe34ca33a0b853550c106ab91b891dde62ca1b1291a903cd17c8c96d81cd55536868dfe5486b5e716ded5685e5b3eb2
|
||||
DIST vcrpy-1.7.4.tar.gz 191306 SHA256 c558f50c20ec7a3e5d5d71c0e9701518dff959736f2a8e7f1f98798354e44e6e SHA512 978c881a694368e9382d6426f990a844910afb6b7777e5226e98a10d2848e09e8c90ffc35250013b5f470577ea6565117d728673456c88aa871444d5db84892a WHIRLPOOL 222b2b2147510cce9ecf18cfb4366f4ccaaf861485b96bd8ed560a9a87d9e5edcf92b265cc65adbf5d59d4462ed6d44d96521f1b981690752fe1fd9f88fc8eb2
|
||||
|
@ -0,0 +1,45 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4,5} pypy )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Automatically mock your HTTP interactions to simplify and speed up testing"
|
||||
HOMEPAGE="https://github.com/kevin1024/vcrpy"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
#SRC_URI="https://github.com/kevin1024/vcrpy/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="test"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/contextlib2[${PYTHON_USEDEP}]
|
||||
>=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
dev-python/requests[${PYTHON_USEDEP}]
|
||||
>=dev-python/six-1.5[${PYTHON_USEDEP}]
|
||||
dev-python/urllib3[${PYTHON_USEDEP}]
|
||||
dev-python/wrapt[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]' python2_7)
|
||||
$(python_gen_cond_dep 'dev-python/contextlib2[${PYTHON_USEDEP}]' python2_7)
|
||||
"
|
||||
DEPEND="
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
${RDEPEND}
|
||||
dev-python/pytest[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-httpbin[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
# Calls to the net
|
||||
RESTRICT=test
|
||||
|
||||
python_test() {
|
||||
py.test -vv -x || die
|
||||
}
|
@ -1 +0,0 @@
|
||||
DIST mate-calc-1.8.0.tar.xz 753972 SHA256 13d56287430cbb7d60a74666ba752a1a8ea9692125c6a02f97d0cc98d451d99a SHA512 92cd2e5ee8f6943b70ba1402909698f0ca922864bf3553d04ba3212673824b3f1f2042786f77814bf004e93408f46b7be438ddbe1046884f834abc90606bdf11 WHIRLPOOL 7743c0d132d3ca4b71072bd61e152dd44f9688e5f55efc2fb358c5ff238594488f03d4501d0efd6aa687df3925dbe3a265aa2d910a9670446e39c113436f3520
|
@ -1,36 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
GCONF_DEBUG="no"
|
||||
|
||||
inherit gnome2 versionator
|
||||
|
||||
MATE_BRANCH="$(get_version_component_range 1-2)"
|
||||
|
||||
SRC_URI="http://pub.mate-desktop.org/releases/${MATE_BRANCH}/${P}.tar.xz"
|
||||
DESCRIPTION="A calculator application for MATE"
|
||||
HOMEPAGE="http://mate-desktop.org"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
|
||||
RDEPEND="app-text/rarian:0
|
||||
>=dev-libs/glib-2.30:2
|
||||
dev-libs/atk:0
|
||||
dev-libs/libxml2:2
|
||||
>=x11-libs/gtk+-2.18:2
|
||||
x11-libs/pango:0
|
||||
virtual/libintl:0"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
>=app-text/scrollkeeper-dtd-1:1.0
|
||||
app-text/yelp-tools:0
|
||||
>=dev-util/intltool-0.35:*
|
||||
sys-devel/gettext:*
|
||||
virtual/pkgconfig:*"
|
||||
|
||||
DOCS="AUTHORS ChangeLog NEWS README"
|
@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>mate@gentoo.org</email>
|
||||
<name>Gentoo MATE Desktop</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">mate-desktop/mate-calc</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -1 +0,0 @@
|
||||
DIST mate-dialogs-1.8.0.tar.xz 2786956 SHA256 1db39f743846377c1b5e065c1199285cd70509a26ae2fbdec0884b06f00bcbda SHA512 82b54e034e9ec4d8b1819c5ca9817b9f12fd2273345a26aa9d75b5d1ee307a8d2254f5ba3e4a7a3e8e482344a4be71d95bed8a9f6af9e691babcdeea1f2c0fa3 WHIRLPOOL 12aacb04567b23c089fb2879817d2b2583896dbb5b6290ba4284487c9816ce0629a067990c0fd13698cfbcc502c70ad9f0faf3c9e06de10ed3c07637ec4e7827
|
@ -1,46 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="5"
|
||||
|
||||
GCONF_DEBUG="yes"
|
||||
|
||||
inherit gnome2 versionator
|
||||
|
||||
MATE_BRANCH="$(get_version_component_range 1-2)"
|
||||
|
||||
SRC_URI="http://pub.mate-desktop.org/releases/${MATE_BRANCH}/${P}.tar.xz"
|
||||
DESCRIPTION="Display MATE dialogs from the commandline and shell scripts"
|
||||
HOMEPAGE="http://mate-desktop.org"
|
||||
|
||||
LICENSE="LGPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
|
||||
IUSE="libnotify"
|
||||
|
||||
RDEPEND="app-text/rarian:0
|
||||
>=dev-libs/glib-2.8:2
|
||||
x11-libs/gdk-pixbuf:2
|
||||
>=x11-libs/gtk+-2.18:2
|
||||
x11-libs/libX11:0
|
||||
virtual/libintl:0
|
||||
libnotify? ( >=x11-libs/libnotify-0.7.0:0 )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
app-text/docbook-xml-dtd:4.1.2
|
||||
>=app-text/scrollkeeper-dtd-1:1.0
|
||||
app-text/yelp-tools:0
|
||||
>=dev-util/intltool-0.40:*
|
||||
>=mate-base/mate-common-1.8:0
|
||||
>=sys-devel/gettext-0.14:*
|
||||
virtual/pkgconfig:*"
|
||||
|
||||
src_configure() {
|
||||
gnome2_src_configure \
|
||||
--with-gtk=2.0 \
|
||||
$(use_enable libnotify)
|
||||
}
|
||||
|
||||
DOCS="AUTHORS ChangeLog HACKING NEWS README THANKS TODO"
|
@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>mate@gentoo.org</email>
|
||||
<name>Gentoo MATE Desktop</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">mate-desktop/mate-dialogs</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -1 +1 @@
|
||||
Sun, 04 Sep 2016 20:40:36 +0000
|
||||
Mon, 05 Sep 2016 05:40:37 +0000
|
||||
|
@ -1 +1 @@
|
||||
Sun, 04 Sep 2016 20:40:36 +0000
|
||||
Mon, 05 Sep 2016 05:40:37 +0000
|
||||
|
@ -1,13 +0,0 @@
|
||||
DEFINED_PHASES=compile configure install postinst postrm preinst prepare unpack
|
||||
DEPEND=app-text/rarian:0 >=app-admin/system-tools-backends-2.10.1:0 dev-libs/atk:0 dev-libs/dbus-glib:0 >=dev-libs/glib-2.25.3:2 >=dev-libs/liboobs-1.1:0 >=sys-apps/dbus-0.32:0 net-wireless/wireless-tools:0 sys-libs/cracklib:0 x11-libs/gdk-pixbuf:2 x11-libs/pango:0 >=x11-libs/gtk+-2.19.7:2 virtual/libintl:0 caja? ( >=mate-base/caja-1.8:0 ) nfs? ( net-fs/nfs-utils:0 ) policykit? ( >=mate-extra/mate-polkit-1.8:0 >=sys-auth/polkit-0.92:0 ) samba? ( >=net-fs/samba-3:0 ) app-text/docbook-xml-dtd:4.1.2 >=app-text/scrollkeeper-dtd-1:1.0 app-text/yelp-tools:0 sys-devel/gettext:* virtual/pkgconfig:* >=dev-util/intltool-0.35.0:* app-arch/xz-utils >=sys-apps/sed-4 dev-util/desktop-file-utils x11-misc/shared-mime-info
|
||||
DESCRIPTION=Tools aimed to make easy the administration of UNIX systems
|
||||
EAPI=5
|
||||
HOMEPAGE=http://mate-desktop.org
|
||||
IUSE=caja nfs policykit samba
|
||||
KEYWORDS=amd64 x86
|
||||
LICENSE=GPL-2+
|
||||
RDEPEND=app-text/rarian:0 >=app-admin/system-tools-backends-2.10.1:0 dev-libs/atk:0 dev-libs/dbus-glib:0 >=dev-libs/glib-2.25.3:2 >=dev-libs/liboobs-1.1:0 >=sys-apps/dbus-0.32:0 net-wireless/wireless-tools:0 sys-libs/cracklib:0 x11-libs/gdk-pixbuf:2 x11-libs/pango:0 >=x11-libs/gtk+-2.19.7:2 virtual/libintl:0 caja? ( >=mate-base/caja-1.8:0 ) nfs? ( net-fs/nfs-utils:0 ) policykit? ( >=mate-extra/mate-polkit-1.8:0 >=sys-auth/polkit-0.92:0 ) samba? ( >=net-fs/samba-3:0 )
|
||||
SLOT=0
|
||||
SRC_URI=http://pub.mate-desktop.org/releases/1.8/mate-system-tools-1.8.1.tar.xz
|
||||
_eclasses_=eutils b83a2420b796f7c6eff682679d08fe25 gnome.org ad34f378a3d57a6f2f2b8b4aaca4543e gnome2 21c81ea94c12e45a63f7f14fba666e3d gnome2-utils c6dcdf3a2c22b578b16adb945dc85c35 libtool 4890219c51da247200223277f993e054 multilib 165fc17c38d1b11dac2008280dab6e80 toolchain-funcs 6198c04daba0e1307bd844df7d37f423 versionator 99ae9d758cbe7cfed19170e7d48f5a9c xdg a5c4c5ce4f5ce9a2e777f5d9a40a8723 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=5116c4fedd8d77cdfedfb97aa389e668
|
@ -0,0 +1,9 @@
|
||||
DEFINED_PHASES=-
|
||||
DESCRIPTION=Message Digest functions from BSD systems
|
||||
EAPI=6
|
||||
HOMEPAGE=https://www.hadrons.org/software/libmd/
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=|| ( BSD BSD-2 ISC BEER-WARE public-domain )
|
||||
SLOT=0
|
||||
SRC_URI=https://archive.hadrons.org/software/libmd/libmd-0.0.0.tar.xz
|
||||
_md5_=26c70a14e4b154b02cfe2bbda8a568bf
|
@ -0,0 +1,12 @@
|
||||
DEFINED_PHASES=compile install prepare
|
||||
DEPEND=dev-lang/perl !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.15:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
|
||||
DESCRIPTION=A collection of several tools related to OpenPGP
|
||||
EAPI=5
|
||||
HOMEPAGE=http://pgp-tools.alioth.debian.org/
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=GPL-2
|
||||
RDEPEND=dev-lang/perl >=app-crypt/gnupg-1.3.92 app-crypt/libmd dev-perl/GnuPG-Interface dev-perl/Text-Template dev-perl/MIME-tools net-mail/qprint >=dev-perl/MailTools-1.62 dev-perl/Net-IDN-Encode virtual/mailx virtual/mta || ( dev-perl/libintl-perl dev-perl/Text-Iconv app-text/recode )
|
||||
SLOT=0
|
||||
SRC_URI=mirror://debian/pool/main/s/signing-party/signing-party_2.4.orig.tar.gz
|
||||
_eclasses_=autotools 07e71b3b5690738ef7e8bc097077e00c eutils b83a2420b796f7c6eff682679d08fe25 libtool 4890219c51da247200223277f993e054 multilib 165fc17c38d1b11dac2008280dab6e80 toolchain-funcs 6198c04daba0e1307bd844df7d37f423
|
||||
_md5_=860b2a34dcd76ac67f558bfdc93d6465
|
@ -1,14 +0,0 @@
|
||||
DEFINED_PHASES=compile configure install prepare test
|
||||
DEPEND=python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_python3_3(-),-python_single_target_python3_4(-)]
|
||||
DESCRIPTION=Simple editor for Markdown and reStructuredText
|
||||
EAPI=5
|
||||
HOMEPAGE=https://github.com/retext-project/retext https://github.com/retext-project/retext/wiki
|
||||
IUSE=+spell python_targets_python3_3 python_targets_python3_4 linguas_ca linguas_cs linguas_cy linguas_da linguas_de linguas_es linguas_et linguas_eu linguas_fr linguas_hu linguas_it linguas_ja linguas_pl linguas_pt linguas_pt_BR linguas_ru linguas_sk linguas_sr linguas_sr@latin linguas_uk linguas_zh_TW
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=GPL-2
|
||||
RDEPEND=dev-python/docutils[python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_python3_3(-),-python_single_target_python3_4(-)] dev-python/markdown[python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_python3_3(-),-python_single_target_python3_4(-)] dev-python/markups[python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_python3_3(-),-python_single_target_python3_4(-)] dev-python/pygments[python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_python3_3(-),-python_single_target_python3_4(-)] dev-python/PyQt5[gui,network,printsupport,webkit,widgets,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_python3_3(-),-python_single_target_python3_4(-)] spell? ( dev-python/pyenchant[python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_python3_3(-),-python_single_target_python3_4(-)] ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_python3_3(-),-python_single_target_python3_4(-)]
|
||||
REQUIRED_USE=|| ( python_targets_python3_3 python_targets_python3_4 )
|
||||
SLOT=0
|
||||
SRC_URI=mirror://pypi/R/ReText/ReText-5.3.0.tar.gz
|
||||
_eclasses_=distutils-r1 674dae153419b2200ae54e879cc65b57 eutils b83a2420b796f7c6eff682679d08fe25 l10n e26ea0642846685782f1813642e7ff0f multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing e32940a7b2a9992ad217eccddb84d548 python-r1 0f6937650a475d673baa5d0c8c0b37b3 python-utils-r1 c0ed2a2f233d3af6dd556048695dc5cb toolchain-funcs 6198c04daba0e1307bd844df7d37f423 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=7f9d27ad43c18a17b253f67baf08163d
|
@ -0,0 +1,14 @@
|
||||
DEFINED_PHASES=compile configure install prepare test
|
||||
DEPEND=python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python3_4(-),-python_single_target_python3_5(-)]
|
||||
DESCRIPTION=Simple editor for Markdown and reStructuredText
|
||||
EAPI=6
|
||||
HOMEPAGE=https://github.com/retext-project/retext https://github.com/retext-project/retext/wiki
|
||||
IUSE=+spell python_targets_python3_4 python_targets_python3_5 linguas_ca linguas_cs linguas_cy linguas_da linguas_de linguas_es linguas_et linguas_eu linguas_fr linguas_hu linguas_it linguas_ja linguas_pl linguas_pt linguas_pt_BR linguas_ru linguas_sk linguas_sr linguas_sr@latin linguas_uk linguas_zh_TW
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=GPL-2
|
||||
RDEPEND=dev-python/docutils[python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/markdown[python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python3_4(-),-python_single_target_python3_5(-)] >=dev-python/markups-2[python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python3_4(-),-python_single_target_python3_5(-)] >=dev-python/chardet-2.3[python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/pygments[python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/PyQt5[gui,network,printsupport,webkit,widgets,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python3_4(-),-python_single_target_python3_5(-)] spell? ( dev-python/pyenchant[python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_python3_4(-),-python_single_target_python3_5(-)]
|
||||
REQUIRED_USE=|| ( python_targets_python3_4 python_targets_python3_5 )
|
||||
SLOT=0
|
||||
SRC_URI=mirror://pypi/R/ReText/ReText-6.0.1.tar.gz
|
||||
_eclasses_=distutils-r1 674dae153419b2200ae54e879cc65b57 l10n e26ea0642846685782f1813642e7ff0f multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing e32940a7b2a9992ad217eccddb84d548 python-r1 0f6937650a475d673baa5d0c8c0b37b3 python-utils-r1 c0ed2a2f233d3af6dd556048695dc5cb toolchain-funcs 6198c04daba0e1307bd844df7d37f423 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=988749b0b4e803f7152ec8d09225ee92
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,12 +0,0 @@
|
||||
DEFINED_PHASES=configure install prepare
|
||||
DEPEND=dev-libs/quazip[qt5] dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtnetwork:5 dev-qt/qtwidgets:5 virtual/pkgconfig
|
||||
DESCRIPTION=Corsair K65/K70/K95 Driver
|
||||
EAPI=5
|
||||
HOMEPAGE=https://github.com/ccMSC/ckb
|
||||
KEYWORDS=~amd64
|
||||
LICENSE=GPL-2
|
||||
RDEPEND=dev-libs/quazip[qt5] dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtnetwork:5 dev-qt/qtwidgets:5
|
||||
SLOT=0
|
||||
SRC_URI=https://github.com/ccMSC/ckb/archive/v0.2.4.tar.gz -> ckb-0.2.4.tar.gz
|
||||
_eclasses_=eutils b83a2420b796f7c6eff682679d08fe25 multilib 165fc17c38d1b11dac2008280dab6e80 qmake-utils 0a242e7177789b0028b4045f336dd4db systemd 3165c885f3c71ffae7a867d931fb0e07 toolchain-funcs 6198c04daba0e1307bd844df7d37f423
|
||||
_md5_=309aa802ca93a6c185c7d21dbc2b6c27
|
@ -1,12 +0,0 @@
|
||||
DEFINED_PHASES=configure install prepare
|
||||
DEPEND=dev-libs/quazip[qt5] dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtnetwork:5 dev-qt/qtwidgets:5 virtual/pkgconfig
|
||||
DESCRIPTION=Corsair K65/K70/K95 Driver
|
||||
EAPI=5
|
||||
HOMEPAGE=https://github.com/ccMSC/ckb
|
||||
KEYWORDS=~amd64
|
||||
LICENSE=GPL-2
|
||||
RDEPEND=dev-libs/quazip[qt5] dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtnetwork:5 dev-qt/qtwidgets:5
|
||||
SLOT=0
|
||||
SRC_URI=https://github.com/ccMSC/ckb/archive/v0.2.5.tar.gz -> ckb-0.2.5.tar.gz
|
||||
_eclasses_=eutils b83a2420b796f7c6eff682679d08fe25 multilib 165fc17c38d1b11dac2008280dab6e80 qmake-utils 0a242e7177789b0028b4045f336dd4db systemd 3165c885f3c71ffae7a867d931fb0e07 toolchain-funcs 6198c04daba0e1307bd844df7d37f423
|
||||
_md5_=309aa802ca93a6c185c7d21dbc2b6c27
|
@ -0,0 +1,11 @@
|
||||
DEFINED_PHASES=compile install prepare
|
||||
DESCRIPTION=The Original Korn Shell, 1993 revision (ksh93)
|
||||
EAPI=6
|
||||
HOMEPAGE=http://www.kornshell.com/
|
||||
KEYWORDS=~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux
|
||||
LICENSE=CPL-1.0 EPL-1.0
|
||||
RDEPEND=!app-shells/pdksh
|
||||
SLOT=0
|
||||
SRC_URI=https://github.com/att/ast/archive/c506cb548d9b4bcebef92c86e948657728760e15.tar.gz -> ksh-93.20160110.tar.gz
|
||||
_eclasses_=eutils b83a2420b796f7c6eff682679d08fe25 multilib 165fc17c38d1b11dac2008280dab6e80 prefix 99dcca42e6528d8fe3c214bf5731aaf2 toolchain-funcs 6198c04daba0e1307bd844df7d37f423
|
||||
_md5_=7cab58c16108680664f55f1946303a86
|
@ -0,0 +1,13 @@
|
||||
DEFINED_PHASES=compile configure install prepare
|
||||
DEPEND=virtual/libusb:1 virtual/libusb:0 ftdi? ( dev-embedded/libftdi:= ) ncurses? ( sys-libs/ncurses:= ) readline? ( sys-libs/readline )
|
||||
DESCRIPTION=AVR Downloader/UploaDEr
|
||||
EAPI=5
|
||||
HOMEPAGE=https://savannah.nongnu.org/projects/avrdude
|
||||
IUSE=doc ftdi ncurses readline
|
||||
KEYWORDS=~amd64 ~arm ~ppc ~ppc64 ~x86
|
||||
LICENSE=GPL-2
|
||||
RDEPEND=virtual/libusb:1 virtual/libusb:0 ftdi? ( dev-embedded/libftdi:= ) ncurses? ( sys-libs/ncurses:= ) readline? ( sys-libs/readline )
|
||||
SLOT=0
|
||||
SRC_URI=mirror://nongnu/avrdude/avrdude-6.3.tar.gz doc? ( mirror://nongnu/avrdude/avrdude-doc-6.3.tar.gz mirror://nongnu/avrdude/avrdude-doc-6.3.pdf )
|
||||
_eclasses_=multilib 165fc17c38d1b11dac2008280dab6e80 toolchain-funcs 6198c04daba0e1307bd844df7d37f423
|
||||
_md5_=0fc3160d3e8441ccb324add77e3dba48
|
@ -1,14 +0,0 @@
|
||||
DEFINED_PHASES=compile configure install prepare test
|
||||
DEPEND=dev-python/markdown[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)] python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)]
|
||||
DESCRIPTION=A wrapper around various text markups
|
||||
EAPI=5
|
||||
HOMEPAGE=https://pypi.python.org/pypi/Markups
|
||||
IUSE=python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=BSD
|
||||
RDEPEND=dev-python/markdown[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)] python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)]
|
||||
REQUIRED_USE=|| ( python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4 )
|
||||
SLOT=0
|
||||
SRC_URI=mirror://pypi/M/Markups/Markups-0.6.1.tar.gz
|
||||
_eclasses_=distutils-r1 674dae153419b2200ae54e879cc65b57 eutils b83a2420b796f7c6eff682679d08fe25 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing e32940a7b2a9992ad217eccddb84d548 python-r1 0f6937650a475d673baa5d0c8c0b37b3 python-utils-r1 c0ed2a2f233d3af6dd556048695dc5cb toolchain-funcs 6198c04daba0e1307bd844df7d37f423 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=fcf451b739abc87ca23df1e322d77913
|
@ -1,14 +0,0 @@
|
||||
DEFINED_PHASES=compile configure install prepare test
|
||||
DEPEND=dev-python/markdown[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)] python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)]
|
||||
DESCRIPTION=A wrapper around various text markups
|
||||
EAPI=5
|
||||
HOMEPAGE=https://pypi.python.org/pypi/Markups
|
||||
IUSE=python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=BSD
|
||||
RDEPEND=dev-python/markdown[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)] python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)]
|
||||
REQUIRED_USE=|| ( python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4 )
|
||||
SLOT=0
|
||||
SRC_URI=mirror://pypi/M/Markups/Markups-0.6.3.tar.gz
|
||||
_eclasses_=distutils-r1 674dae153419b2200ae54e879cc65b57 eutils b83a2420b796f7c6eff682679d08fe25 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing e32940a7b2a9992ad217eccddb84d548 python-r1 0f6937650a475d673baa5d0c8c0b37b3 python-utils-r1 c0ed2a2f233d3af6dd556048695dc5cb toolchain-funcs 6198c04daba0e1307bd844df7d37f423 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=fcf451b739abc87ca23df1e322d77913
|
@ -1,14 +0,0 @@
|
||||
DEFINED_PHASES=compile configure install prepare test
|
||||
DEPEND=dev-python/markdown[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)] python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)]
|
||||
DESCRIPTION=A wrapper around various text markups
|
||||
EAPI=5
|
||||
HOMEPAGE=http://pythonhosted.org/Markups/ https://github.com/retext-project/pymarkups https://pypi.python.org/pypi/Markups
|
||||
IUSE=python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=BSD
|
||||
RDEPEND=dev-python/markdown[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)] python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-)]
|
||||
REQUIRED_USE=|| ( python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4 )
|
||||
SLOT=0
|
||||
SRC_URI=mirror://pypi/M/Markups/Markups-1.0.0.tar.gz
|
||||
_eclasses_=distutils-r1 674dae153419b2200ae54e879cc65b57 eutils b83a2420b796f7c6eff682679d08fe25 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing e32940a7b2a9992ad217eccddb84d548 python-r1 0f6937650a475d673baa5d0c8c0b37b3 python-utils-r1 c0ed2a2f233d3af6dd556048695dc5cb toolchain-funcs 6198c04daba0e1307bd844df7d37f423 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=e95da63f555e72163bd5be4eeffdea51
|
@ -0,0 +1,14 @@
|
||||
DEFINED_PHASES=compile configure install prepare test
|
||||
DEPEND=dev-python/markdown[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)]
|
||||
DESCRIPTION=A wrapper around various text markups
|
||||
EAPI=6
|
||||
HOMEPAGE=http://pythonhosted.org/Markups/ https://github.com/retext-project/pymarkups https://pypi.python.org/pypi/Markups
|
||||
IUSE=python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4 python_targets_python3_5
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=BSD
|
||||
RDEPEND=dev-python/markdown[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)]
|
||||
REQUIRED_USE=|| ( python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4 python_targets_python3_5 )
|
||||
SLOT=0
|
||||
SRC_URI=mirror://pypi/M/Markups/Markups-2.0.0.tar.gz
|
||||
_eclasses_=distutils-r1 674dae153419b2200ae54e879cc65b57 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing e32940a7b2a9992ad217eccddb84d548 python-r1 0f6937650a475d673baa5d0c8c0b37b3 python-utils-r1 c0ed2a2f233d3af6dd556048695dc5cb toolchain-funcs 6198c04daba0e1307bd844df7d37f423 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=ccd708e917f800c9bdca86a51a8a380f
|
@ -0,0 +1,14 @@
|
||||
DEFINED_PHASES=compile configure install prepare test
|
||||
DEPEND=>=dev-python/py-1.4.29[python_targets_pypy(-)?,python_targets_pypy3(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/setuptools[python_targets_pypy(-)?,python_targets_pypy3(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] test? ( dev-python/hypothesis[python_targets_pypy(-)?,python_targets_pypy3(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/nose[python_targets_pypy(-)?,python_targets_pypy3(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/mock[python_targets_pypy(-)?,python_targets_pypy3(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/requests[python_targets_pypy(-)?,python_targets_pypy3(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) python_targets_pypy? ( virtual/pypy:0= ) python_targets_pypy3? ( virtual/pypy3:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_pypy3(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)]
|
||||
DESCRIPTION=Simple powerful testing with Python
|
||||
EAPI=5
|
||||
HOMEPAGE=http://pytest.org/ https://pypi.python.org/pypi/pytest
|
||||
IUSE=test python_targets_pypy python_targets_pypy3 python_targets_python2_7 python_targets_python3_3 python_targets_python3_4 python_targets_python3_5
|
||||
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos
|
||||
LICENSE=MIT
|
||||
RDEPEND=>=dev-python/py-1.4.29[python_targets_pypy(-)?,python_targets_pypy3(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] python_targets_pypy? ( virtual/pypy:0= ) python_targets_pypy3? ( virtual/pypy3:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_pypy3(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)]
|
||||
REQUIRED_USE=|| ( python_targets_pypy python_targets_pypy3 python_targets_python2_7 python_targets_python3_3 python_targets_python3_4 python_targets_python3_5 )
|
||||
SLOT=0
|
||||
SRC_URI=mirror://pypi/p/pytest/pytest-3.0.2.tar.gz
|
||||
_eclasses_=distutils-r1 674dae153419b2200ae54e879cc65b57 eutils b83a2420b796f7c6eff682679d08fe25 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing e32940a7b2a9992ad217eccddb84d548 python-r1 0f6937650a475d673baa5d0c8c0b37b3 python-utils-r1 c0ed2a2f233d3af6dd556048695dc5cb toolchain-funcs 6198c04daba0e1307bd844df7d37f423 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=22a9d68582cee178f6151053f5acaba9
|
@ -0,0 +1,15 @@
|
||||
DEFINED_PHASES=compile configure install prepare test
|
||||
DEPEND=dev-python/setuptools[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] test? ( dev-python/contextlib2[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] >=dev-python/httplib2-0.9.1[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/pyyaml[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/requests[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] >=dev-python/six-1.5[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/urllib3[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/wrapt[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] python_targets_python2_7? ( dev-python/mock[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) python_targets_python2_7? ( dev-python/contextlib2[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) dev-python/pytest[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/pytest-httpbin[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] ) python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)]
|
||||
DESCRIPTION=Automatically mock your HTTP interactions to simplify and speed up testing
|
||||
EAPI=5
|
||||
HOMEPAGE=https://github.com/kevin1024/vcrpy
|
||||
IUSE=test python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4 python_targets_python3_5
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=Apache-2.0
|
||||
RDEPEND=dev-python/contextlib2[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] >=dev-python/httplib2-0.9.1[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/pyyaml[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/requests[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] >=dev-python/six-1.5[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/urllib3[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] dev-python/wrapt[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)] python_targets_python2_7? ( dev-python/mock[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) python_targets_python2_7? ( dev-python/contextlib2[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) python_targets_pypy? ( virtual/pypy:0= ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) >=dev-lang/python-exec-2:=[python_targets_pypy(-)?,python_targets_python2_7(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,-python_single_target_pypy(-),-python_single_target_python2_7(-),-python_single_target_python3_3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-)]
|
||||
REQUIRED_USE=|| ( python_targets_pypy python_targets_python2_7 python_targets_python3_3 python_targets_python3_4 python_targets_python3_5 )
|
||||
RESTRICT=test
|
||||
SLOT=0
|
||||
SRC_URI=mirror://pypi/v/vcrpy/vcrpy-1.10.0.tar.gz
|
||||
_eclasses_=distutils-r1 674dae153419b2200ae54e879cc65b57 eutils b83a2420b796f7c6eff682679d08fe25 multibuild 742139c87a9fa3766f0c2b155e5522bf multilib 165fc17c38d1b11dac2008280dab6e80 multiprocessing e32940a7b2a9992ad217eccddb84d548 python-r1 0f6937650a475d673baa5d0c8c0b37b3 python-utils-r1 c0ed2a2f233d3af6dd556048695dc5cb toolchain-funcs 6198c04daba0e1307bd844df7d37f423 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=bc8f1b6b0a24cafbf28ae415fa6cc0c4
|
@ -1,12 +1,12 @@
|
||||
DEFINED_PHASES=compile configure install postinst postrm preinst prepare
|
||||
DEPEND=>=dev-libs/glib-2.40.0:2 dev-libs/libgee:0.8= dev-libs/libgames-support >=gnome-base/librsvg-2.32:2 >=media-libs/clutter-1.22.0:1.0 >=media-libs/clutter-gtk-1.4.0:1.0 >=media-libs/libcanberra-0.26[gtk3] >=x11-libs/gtk+-3.18.0:3 || ( dev-lang/vala:0.32 dev-lang/vala:0.30 dev-lang/vala:0.28 ) app-text/yelp-tools dev-libs/appstream-glib >=dev-util/intltool-0.50 sys-devel/gettext virtual/pkgconfig app-arch/xz-utils >=sys-apps/sed-4 dev-util/desktop-file-utils x11-misc/shared-mime-info
|
||||
DEPEND=>=dev-libs/glib-2.40.0:2 dev-libs/libgee:0.8= >=dev-libs/libgames-support-1 >=media-libs/clutter-1.22.0:1.0 >=media-libs/clutter-gtk-1.4.0:1.0 >=media-libs/libcanberra-0.26[gtk3] >=x11-libs/gtk+-3.18.0:3 || ( dev-lang/vala:0.32 dev-lang/vala:0.30 dev-lang/vala:0.28 ) app-text/yelp-tools dev-libs/appstream-glib >=dev-util/intltool-0.50.2 sys-devel/gettext virtual/pkgconfig app-arch/xz-utils >=sys-apps/sed-4 dev-util/desktop-file-utils x11-misc/shared-mime-info
|
||||
DESCRIPTION=Nibbles clone for Gnome
|
||||
EAPI=6
|
||||
HOMEPAGE=https://wiki.gnome.org/Apps/Nibbles
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=GPL-2+
|
||||
RDEPEND=>=dev-libs/glib-2.40.0:2 dev-libs/libgee:0.8= dev-libs/libgames-support >=gnome-base/librsvg-2.32:2 >=media-libs/clutter-1.22.0:1.0 >=media-libs/clutter-gtk-1.4.0:1.0 >=media-libs/libcanberra-0.26[gtk3] >=x11-libs/gtk+-3.18.0:3
|
||||
RDEPEND=>=dev-libs/glib-2.40.0:2 dev-libs/libgee:0.8= >=dev-libs/libgames-support-1 >=media-libs/clutter-1.22.0:1.0 >=media-libs/clutter-gtk-1.4.0:1.0 >=media-libs/libcanberra-0.26[gtk3] >=x11-libs/gtk+-3.18.0:3
|
||||
SLOT=0
|
||||
SRC_URI=mirror://gnome/sources/gnome-nibbles/3.20/gnome-nibbles-3.20.2.1.tar.xz
|
||||
_eclasses_=eutils b83a2420b796f7c6eff682679d08fe25 gnome.org ad34f378a3d57a6f2f2b8b4aaca4543e gnome2 21c81ea94c12e45a63f7f14fba666e3d gnome2-utils c6dcdf3a2c22b578b16adb945dc85c35 libtool 4890219c51da247200223277f993e054 multilib 165fc17c38d1b11dac2008280dab6e80 toolchain-funcs 6198c04daba0e1307bd844df7d37f423 vala 764817a25b405b65269d8619e203a52f versionator 99ae9d758cbe7cfed19170e7d48f5a9c xdg a5c4c5ce4f5ce9a2e777f5d9a40a8723 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=953815b00e0a95ab92152ff9c9710914
|
||||
_md5_=cd484ce939cd1c77d1251027e1af1dea
|
||||
|
@ -1,13 +1,13 @@
|
||||
DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup test
|
||||
DEPEND=>=dev-libs/gjs-1.43.3 >=dev-libs/glib-2.32:2 >=dev-libs/gobject-introspection-1.35.9:= >=dev-libs/libunistring-0.9.5 >=x11-libs/gtk+-3:3[introspection] >=x11-libs/pango-1.36[introspection] dev-libs/appstream-glib >=dev-util/intltool-0.50.1 sys-devel/gettext virtual/pkgconfig test? ( || ( >=dev-lang/python-2.7.5-r2:2.7 ) || ( ( >=dev-lang/python-2.7.5-r2:2.7 dev-util/dogtail[python_targets_python2_7(-),python_single_target_python2_7(+)] ) ) ) app-arch/xz-utils >=sys-apps/sed-4 dev-util/desktop-file-utils x11-misc/shared-mime-info test? ( !prefix? ( x11-base/xorg-server[xvfb] ) x11-apps/xhost )
|
||||
DEPEND=>=dev-libs/gjs-1.43.3 >=dev-libs/glib-2.32:2 >=dev-libs/gobject-introspection-1.35.9:= >=dev-libs/libunistring-0.9.5 >=x11-libs/gtk+-3.20:3[introspection] >=x11-libs/pango-1.36[introspection] dev-libs/appstream-glib >=dev-util/intltool-0.50.1 sys-devel/gettext virtual/pkgconfig test? ( || ( >=dev-lang/python-2.7.5-r2:2.7 ) || ( ( >=dev-lang/python-2.7.5-r2:2.7 dev-util/dogtail[python_targets_python2_7(-),python_single_target_python2_7(+)] ) ) ) app-arch/xz-utils >=sys-apps/sed-4 dev-util/desktop-file-utils x11-misc/shared-mime-info test? ( !prefix? ( x11-base/xorg-server[xvfb] ) x11-apps/xhost )
|
||||
DESCRIPTION=Unicode character map viewer and library
|
||||
EAPI=6
|
||||
HOMEPAGE=https://wiki.gnome.org/Design/Apps/CharacterMap
|
||||
IUSE=test test
|
||||
KEYWORDS=~amd64 ~x86
|
||||
LICENSE=GPL-2 BSD
|
||||
RDEPEND=>=dev-libs/gjs-1.43.3 >=dev-libs/glib-2.32:2 >=dev-libs/gobject-introspection-1.35.9:= >=dev-libs/libunistring-0.9.5 >=x11-libs/gtk+-3:3[introspection] >=x11-libs/pango-1.36[introspection]
|
||||
RDEPEND=>=dev-libs/gjs-1.43.3 >=dev-libs/glib-2.32:2 >=dev-libs/gobject-introspection-1.35.9:= >=dev-libs/libunistring-0.9.5 >=x11-libs/gtk+-3.20:3[introspection] >=x11-libs/pango-1.36[introspection]
|
||||
SLOT=0
|
||||
SRC_URI=mirror://gnome/sources/gnome-characters/3.20/gnome-characters-3.20.1.tar.xz
|
||||
_eclasses_=eutils b83a2420b796f7c6eff682679d08fe25 gnome.org ad34f378a3d57a6f2f2b8b4aaca4543e gnome2 21c81ea94c12e45a63f7f14fba666e3d gnome2-utils c6dcdf3a2c22b578b16adb945dc85c35 libtool 4890219c51da247200223277f993e054 multilib 165fc17c38d1b11dac2008280dab6e80 python-any-r1 1c20f9b800324335a8e3b137363362e8 python-utils-r1 c0ed2a2f233d3af6dd556048695dc5cb toolchain-funcs 6198c04daba0e1307bd844df7d37f423 vala 764817a25b405b65269d8619e203a52f versionator 99ae9d758cbe7cfed19170e7d48f5a9c virtualx 86c9305a59b3e0459e7fbef3a5f30b96 xdg a5c4c5ce4f5ce9a2e777f5d9a40a8723 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=3f3a4552806cc55434d15328ca91fe2f
|
||||
_md5_=356d647039d6006c030957c891924922
|
||||
|
@ -1,12 +0,0 @@
|
||||
DEFINED_PHASES=compile configure install postinst postrm preinst prepare unpack
|
||||
DEPEND=app-text/rarian:0 >=dev-libs/glib-2.30:2 dev-libs/atk:0 dev-libs/libxml2:2 >=x11-libs/gtk+-2.18:2 x11-libs/pango:0 virtual/libintl:0 >=app-text/scrollkeeper-dtd-1:1.0 app-text/yelp-tools:0 >=dev-util/intltool-0.35:* sys-devel/gettext:* virtual/pkgconfig:* app-arch/xz-utils >=sys-apps/sed-4 dev-util/desktop-file-utils x11-misc/shared-mime-info
|
||||
DESCRIPTION=A calculator application for MATE
|
||||
EAPI=5
|
||||
HOMEPAGE=http://mate-desktop.org
|
||||
KEYWORDS=amd64 x86
|
||||
LICENSE=GPL-2
|
||||
RDEPEND=app-text/rarian:0 >=dev-libs/glib-2.30:2 dev-libs/atk:0 dev-libs/libxml2:2 >=x11-libs/gtk+-2.18:2 x11-libs/pango:0 virtual/libintl:0
|
||||
SLOT=0
|
||||
SRC_URI=http://pub.mate-desktop.org/releases/1.8/mate-calc-1.8.0.tar.xz
|
||||
_eclasses_=eutils b83a2420b796f7c6eff682679d08fe25 gnome.org ad34f378a3d57a6f2f2b8b4aaca4543e gnome2 21c81ea94c12e45a63f7f14fba666e3d gnome2-utils c6dcdf3a2c22b578b16adb945dc85c35 libtool 4890219c51da247200223277f993e054 multilib 165fc17c38d1b11dac2008280dab6e80 toolchain-funcs 6198c04daba0e1307bd844df7d37f423 versionator 99ae9d758cbe7cfed19170e7d48f5a9c xdg a5c4c5ce4f5ce9a2e777f5d9a40a8723 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=fbecc4112602b8dd9e31f656cd7bdaf4
|
@ -1,13 +0,0 @@
|
||||
DEFINED_PHASES=compile configure install postinst postrm preinst prepare unpack
|
||||
DEPEND=app-text/rarian:0 >=dev-libs/glib-2.8:2 x11-libs/gdk-pixbuf:2 >=x11-libs/gtk+-2.18:2 x11-libs/libX11:0 virtual/libintl:0 libnotify? ( >=x11-libs/libnotify-0.7.0:0 ) app-text/docbook-xml-dtd:4.1.2 >=app-text/scrollkeeper-dtd-1:1.0 app-text/yelp-tools:0 >=dev-util/intltool-0.40:* >=mate-base/mate-common-1.8:0 >=sys-devel/gettext-0.14:* virtual/pkgconfig:* app-arch/xz-utils >=sys-apps/sed-4 dev-util/desktop-file-utils x11-misc/shared-mime-info
|
||||
DESCRIPTION=Display MATE dialogs from the commandline and shell scripts
|
||||
EAPI=5
|
||||
HOMEPAGE=http://mate-desktop.org
|
||||
IUSE=libnotify debug
|
||||
KEYWORDS=amd64 x86
|
||||
LICENSE=LGPL-2
|
||||
RDEPEND=app-text/rarian:0 >=dev-libs/glib-2.8:2 x11-libs/gdk-pixbuf:2 >=x11-libs/gtk+-2.18:2 x11-libs/libX11:0 virtual/libintl:0 libnotify? ( >=x11-libs/libnotify-0.7.0:0 )
|
||||
SLOT=0
|
||||
SRC_URI=http://pub.mate-desktop.org/releases/1.8/mate-dialogs-1.8.0.tar.xz
|
||||
_eclasses_=eutils b83a2420b796f7c6eff682679d08fe25 gnome.org ad34f378a3d57a6f2f2b8b4aaca4543e gnome2 21c81ea94c12e45a63f7f14fba666e3d gnome2-utils c6dcdf3a2c22b578b16adb945dc85c35 libtool 4890219c51da247200223277f993e054 multilib 165fc17c38d1b11dac2008280dab6e80 toolchain-funcs 6198c04daba0e1307bd844df7d37f423 versionator 99ae9d758cbe7cfed19170e7d48f5a9c xdg a5c4c5ce4f5ce9a2e777f5d9a40a8723 xdg-utils e2b2bd56125ce8cf59ce30c642b59d48
|
||||
_md5_=9e02fcf3284e881bde0d9bfa254280ef
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue