summaryrefslogtreecommitdiff
path: root/app-emulation
diff options
context:
space:
mode:
authorMike Frysinger <vapier@google.com>2016-02-02 17:45:13 -0500
committerMike Frysinger <vapier@google.com>2016-02-02 17:45:13 -0500
commit5b84cb95073a8c276866a99d515c05a35ff23195 (patch)
tree58f15f365444bc4a660cbaf8aab8f473e9cd913d /app-emulation
parent27778422d5176c66852aca6ffb7f0a0b428cd6a1 (diff)
parent08c27e4668323f40f037392913b18f2b98f71d68 (diff)
downloadgentoo-5b84cb95073a8c276866a99d515c05a35ff23195.tar.gz
Merge https://github.com/gentoo/gentoo.git
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/aqemu/metadata.xml9
-rw-r--r--app-emulation/aranym/metadata.xml3
-rw-r--r--app-emulation/armv8-fast-model/metadata.xml5
-rw-r--r--app-emulation/bochs/metadata.xml2
-rw-r--r--app-emulation/cloud-init/Manifest1
-rw-r--r--app-emulation/cloud-init/cloud-init-0.7.5-r1.ebuild52
-rw-r--r--app-emulation/cloud-init/cloud-init-0.7.5-r2.ebuild84
-rw-r--r--app-emulation/cloud-init/cloud-init-0.7.5-r3.ebuild88
-rw-r--r--app-emulation/cloud-init/cloud-init-0.7.6-r1.ebuild8
-rw-r--r--app-emulation/cloud-init/cloud-init-0.7.6.ebuild98
-rw-r--r--app-emulation/cloud-init/files/cloud-init-0.7.5-tests-exclude.patch12
-rw-r--r--app-emulation/cloud-init/files/growpart778
-rw-r--r--app-emulation/cloud-init/metadata.xml9
-rw-r--r--app-emulation/coldfire/metadata.xml5
-rw-r--r--app-emulation/crossover-bin/Manifest2
-rw-r--r--app-emulation/crossover-bin/crossover-bin-15.0.0.ebuild141
-rw-r--r--app-emulation/crossover-bin/crossover-bin-15.0.1.ebuild144
-rw-r--r--app-emulation/crossover-bin/metadata.xml4
-rw-r--r--app-emulation/crossover-office-bin/metadata.xml5
-rw-r--r--app-emulation/crossover-office-pro-bin/metadata.xml5
-rw-r--r--app-emulation/dinero/metadata.xml3
-rw-r--r--app-emulation/dlx/metadata.xml4
-rw-r--r--app-emulation/docker-compose/Manifest3
-rw-r--r--app-emulation/docker-compose/docker-compose-1.5.1.ebuild (renamed from app-emulation/docker-compose/docker-compose-1.2.0-r1.ebuild)32
-rw-r--r--app-emulation/docker-compose/docker-compose-1.5.2.ebuild62
-rw-r--r--app-emulation/docker-compose/metadata.xml2
-rw-r--r--app-emulation/docker-machine/Manifest2
-rw-r--r--app-emulation/docker-machine/docker-machine-0.5.2.ebuild41
-rw-r--r--app-emulation/docker-machine/docker-machine-0.5.4.ebuild41
-rw-r--r--app-emulation/docker-machine/metadata.xml2
-rw-r--r--app-emulation/docker-swarm/Manifest1
-rw-r--r--app-emulation/docker-swarm/docker-swarm-1.0.1.ebuild37
-rw-r--r--app-emulation/docker-swarm/metadata.xml2
-rw-r--r--app-emulation/docker/Manifest1
-rw-r--r--app-emulation/docker/docker-1.9.1.ebuild265
-rw-r--r--app-emulation/docker/files/18074-disable-journald-arm.patch30
-rw-r--r--app-emulation/docker/metadata.xml13
-rw-r--r--app-emulation/domi/metadata.xml3
-rw-r--r--app-emulation/dosemu/metadata.xml4
-rw-r--r--app-emulation/dynamips/metadata.xml4
-rw-r--r--app-emulation/e-uae/metadata.xml7
-rw-r--r--app-emulation/edumips64/metadata.xml7
-rw-r--r--app-emulation/flannel/metadata.xml2
-rw-r--r--app-emulation/free42/metadata.xml2
-rw-r--r--app-emulation/fuse-utils/metadata.xml9
-rw-r--r--app-emulation/fuse/metadata.xml9
-rw-r--r--app-emulation/ganeti-htools/metadata.xml11
-rw-r--r--app-emulation/ganeti-instance-debian-etch/metadata.xml3
-rw-r--r--app-emulation/ganeti-instance-debootstrap/metadata.xml5
-rw-r--r--app-emulation/ganeti-instance-image/metadata.xml4
-rw-r--r--app-emulation/ganeti/Manifest1
-rw-r--r--app-emulation/ganeti/files/ganeti-2.15.2-remove-sandbox-failing-tests.patch58
-rw-r--r--app-emulation/ganeti/ganeti-2.15.1-r1.ebuild309
-rw-r--r--app-emulation/ganeti/ganeti-2.15.2.ebuild309
-rw-r--r--app-emulation/ganeti/metadata.xml28
-rw-r--r--app-emulation/gxemul/metadata.xml3
-rw-r--r--app-emulation/hercules/metadata.xml5
-rw-r--r--app-emulation/libcacard/Manifest1
-rw-r--r--app-emulation/libcacard/libcacard-2.5.1.ebuild29
-rw-r--r--app-emulation/libcacard/metadata.xml7
-rw-r--r--app-emulation/libguestfs-appliance/metadata.xml11
-rw-r--r--app-emulation/libguestfs/metadata.xml12
-rw-r--r--app-emulation/libspectrum/metadata.xml9
-rw-r--r--app-emulation/libvirt-glib/Manifest3
-rw-r--r--app-emulation/libvirt-glib/libvirt-glib-0.2.0.ebuild54
-rw-r--r--app-emulation/libvirt-glib/libvirt-glib-0.2.3.ebuild (renamed from app-emulation/libvirt-glib/libvirt-glib-0.2.1.ebuild)4
-rw-r--r--app-emulation/libvirt-glib/metadata.xml7
-rw-r--r--app-emulation/libvirt-snmp/metadata.xml2
-rw-r--r--app-emulation/libvirt/Manifest6
-rw-r--r--app-emulation/libvirt/files/libvirt-1.3.0-do_not_use_sysconf.patch114
-rw-r--r--app-emulation/libvirt/files/libvirtd.confd-r443
-rw-r--r--app-emulation/libvirt/files/libvirtd.init-r14139
-rw-r--r--app-emulation/libvirt/files/libvirtd.init-r1635
-rw-r--r--app-emulation/libvirt/files/virtlogd.init-r124
-rw-r--r--app-emulation/libvirt/libvirt-1.2.18-r1.ebuild480
-rw-r--r--app-emulation/libvirt/libvirt-1.2.21-r2.ebuild (renamed from app-emulation/libvirt/libvirt-1.2.20-r1.ebuild)9
-rw-r--r--app-emulation/libvirt/libvirt-1.3.0-r1.ebuild (renamed from app-emulation/libvirt/libvirt-1.2.19-r1.ebuild)29
-rw-r--r--app-emulation/libvirt/libvirt-1.3.0.ebuild (renamed from app-emulation/libvirt/libvirt-1.2.21.ebuild)14
-rw-r--r--app-emulation/libvirt/libvirt-9999.ebuild8
-rw-r--r--app-emulation/libvirt/metadata.xml9
-rw-r--r--app-emulation/lxc/Manifest2
-rw-r--r--app-emulation/lxc/files/lxc-1.0.8-bash-completion.patch35
-rw-r--r--app-emulation/lxc/lxc-1.0.8.ebuild189
-rw-r--r--app-emulation/lxc/lxc-1.1.5.ebuild198
-rw-r--r--app-emulation/lxc/metadata.xml11
-rw-r--r--app-emulation/lxd/Manifest6
-rw-r--r--app-emulation/lxd/files/lxd-0.20-nc-binary-name.patch11
-rw-r--r--app-emulation/lxd/files/lxd-0.21-nc-binary-name.patch11
-rw-r--r--app-emulation/lxd/files/lxd-0.25-dont-go-get.patch (renamed from app-emulation/lxd/files/lxd-0.20-dont-go-get.patch)8
-rw-r--r--app-emulation/lxd/files/lxd-0.25-nc-binary-name.patch (renamed from app-emulation/lxd/files/lxd-0.22-nc-binary-name.patch)0
-rw-r--r--app-emulation/lxd/files/lxd-0.25.confd (renamed from app-emulation/lxd/files/lxd-0.20.confd)0
-rw-r--r--app-emulation/lxd/files/lxd-0.25.initd (renamed from app-emulation/lxd/files/lxd-0.22.initd)23
-rw-r--r--app-emulation/lxd/files/lxd-0.26-dont-go-get.patch (renamed from app-emulation/lxd/files/lxd-0.22-dont-go-get.patch)8
-rw-r--r--app-emulation/lxd/files/lxd-0.26-nc-binary-name.patch11
-rw-r--r--app-emulation/lxd/files/lxd-0.26.confd (renamed from app-emulation/lxd/files/lxd-0.21.confd)0
-rw-r--r--app-emulation/lxd/files/lxd-0.26.initd (renamed from app-emulation/lxd/files/lxd-0.20.initd)24
-rw-r--r--app-emulation/lxd/files/lxd-0.27-dont-go-get.patch (renamed from app-emulation/lxd/files/lxd-0.21-dont-go-get.patch)8
-rw-r--r--app-emulation/lxd/files/lxd-0.27-nc-binary-name.patch11
-rw-r--r--app-emulation/lxd/files/lxd-0.27.confd (renamed from app-emulation/lxd/files/lxd-0.22.confd)0
-rw-r--r--app-emulation/lxd/files/lxd-0.27.initd (renamed from app-emulation/lxd/files/lxd-0.21.initd)24
-rw-r--r--app-emulation/lxd/lxd-0.25.ebuild (renamed from app-emulation/lxd/lxd-0.22.ebuild)16
-rw-r--r--app-emulation/lxd/lxd-0.26.ebuild (renamed from app-emulation/lxd/lxd-0.21.ebuild)30
-rw-r--r--app-emulation/lxd/lxd-0.27.ebuild (renamed from app-emulation/lxd/lxd-0.20.ebuild)34
-rw-r--r--app-emulation/lxd/metadata.xml2
-rw-r--r--app-emulation/open-vm-tools-kmod/metadata.xml7
-rw-r--r--app-emulation/open-vm-tools/metadata.xml7
-rw-r--r--app-emulation/open-vm-tools/open-vm-tools-10.0.0_p3000743.ebuild4
-rw-r--r--app-emulation/openstack-guest-agents-unix/metadata.xml4
-rw-r--r--app-emulation/phpvirtualbox/metadata.xml2
-rw-r--r--app-emulation/phpvirtualbox/phpvirtualbox-4.1.11.ebuild4
-rw-r--r--app-emulation/phpvirtualbox/phpvirtualbox-4.2.7.ebuild4
-rw-r--r--app-emulation/phpvirtualbox/phpvirtualbox-4.3.0.ebuild4
-rw-r--r--app-emulation/phpvirtualbox/phpvirtualbox-5.0.3.ebuild4
-rw-r--r--app-emulation/playonlinux/metadata.xml8
-rw-r--r--app-emulation/q4wine/Manifest1
-rw-r--r--app-emulation/q4wine/metadata.xml7
-rw-r--r--app-emulation/q4wine/q4wine-1.2_p2.ebuild62
-rw-r--r--app-emulation/qemu-guest-agent/Manifest1
-rw-r--r--app-emulation/qemu-guest-agent/metadata.xml6
-rw-r--r--app-emulation/qemu-guest-agent/qemu-guest-agent-2.5.0.ebuild88
-rw-r--r--app-emulation/qemu/Manifest5
-rw-r--r--app-emulation/qemu/files/qemu-2.2.1-CVE-2015-1779-1.patch241
-rw-r--r--app-emulation/qemu/files/qemu-2.2.1-CVE-2015-1779-2.patch58
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3209.patch51
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3214.patch41
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3456.patch86
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-1.patch75
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-2.patch26
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-3.patch69
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5158.patch40
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-1.patch82
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-2.patch373
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-3.patch39
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-4.patch53
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-5.patch34
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-6.patch35
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-7.patch32
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5166.patch36
-rw-r--r--app-emulation/qemu/files/qemu-2.3.0-virtio-serial.patch34
-rw-r--r--app-emulation/qemu/files/qemu-2.4.0-CVE-2015-5225.patch86
-rw-r--r--app-emulation/qemu/files/qemu-2.4.0-CVE-2015-6855.patch146
-rw-r--r--app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-1.patch58
-rw-r--r--app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-2.patch54
-rw-r--r--app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-3.patch47
-rw-r--r--app-emulation/qemu/files/qemu-2.4.0-block-mirror-crash.patch124
-rw-r--r--app-emulation/qemu/files/qemu-2.4.0-e1000-loop.patch39
-rw-r--r--app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7504.patch49
-rw-r--r--app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7512.patch37
-rw-r--r--app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7549.patch62
-rw-r--r--app-emulation/qemu/files/qemu-2.4.1-CVE-2015-8345.patch65
-rw-r--r--app-emulation/qemu/files/qemu-2.4.1-CVE-2015-8504.patch46
-rw-r--r--app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8558.patch50
-rw-r--r--app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8567.patch95
-rw-r--r--app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8701.patch49
-rw-r--r--app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8743.patch50
-rw-r--r--app-emulation/qemu/files/qemu-2.5.0-CVE-2016-1568.patch41
-rw-r--r--app-emulation/qemu/files/qemu-2.5.0-cflags.patch13
-rw-r--r--app-emulation/qemu/metadata.xml6
-rw-r--r--app-emulation/qemu/qemu-2.3.0-r5.ebuild615
-rw-r--r--app-emulation/qemu/qemu-2.3.0-r6.ebuild616
-rw-r--r--app-emulation/qemu/qemu-2.3.1.ebuild602
-rw-r--r--app-emulation/qemu/qemu-2.4.0.1-r1.ebuild649
-rw-r--r--app-emulation/qemu/qemu-2.4.1-r2.ebuild (renamed from app-emulation/qemu/qemu-2.4.1.ebuild)12
-rw-r--r--app-emulation/qemu/qemu-2.5.0-r1.ebuild (renamed from app-emulation/qemu/qemu-2.4.0-r1.ebuild)51
-rw-r--r--app-emulation/qemu/qemu-2.5.0.ebuild (renamed from app-emulation/qemu/qemu-2.4.0.1.ebuild)45
-rw-r--r--app-emulation/qemu/qemu-9999.ebuild20
-rw-r--r--app-emulation/qtemu/metadata.xml3
-rw-r--r--app-emulation/rex-client/metadata.xml4
-rw-r--r--app-emulation/rkt/metadata.xml4
-rw-r--r--app-emulation/runc/Manifest1
-rw-r--r--app-emulation/runc/metadata.xml2
-rw-r--r--app-emulation/runc/runc-0.0.5.ebuild52
-rw-r--r--app-emulation/simh/metadata.xml9
-rw-r--r--app-emulation/ski/metadata.xml5
-rw-r--r--app-emulation/skyeye/Manifest1
-rw-r--r--app-emulation/skyeye/metadata.xml5
-rw-r--r--app-emulation/skyeye/skyeye-1.0.0.ebuild27
-rw-r--r--app-emulation/softgun/metadata.xml5
-rw-r--r--app-emulation/spectemu/metadata.xml3
-rw-r--r--app-emulation/spice-protocol/metadata.xml7
-rw-r--r--app-emulation/spice-protocol/spice-protocol-0.12.10.ebuild2
-rw-r--r--app-emulation/spice-vdagent/metadata.xml7
-rw-r--r--app-emulation/spice/Manifest1
-rw-r--r--app-emulation/spice/metadata.xml7
-rw-r--r--app-emulation/spice/spice-0.13.0.ebuild72
-rw-r--r--app-emulation/spim/metadata.xml3
-rw-r--r--app-emulation/spim/spim-8.0-r1.ebuild7
-rw-r--r--app-emulation/uade/metadata.xml5
-rw-r--r--app-emulation/uae/metadata.xml5
-rw-r--r--app-emulation/vagrant/Manifest2
-rw-r--r--app-emulation/vagrant/files/vagrant-1.2.1-no-warning.patch12
-rw-r--r--app-emulation/vagrant/files/vagrant-1.2.2-rvm.patch12
-rwxr-xr-xapp-emulation/vagrant/files/vagrant-1.8.146
-rw-r--r--app-emulation/vagrant/files/vagrant-1.8.1-disable-embedded-cacert.patch17
-rw-r--r--app-emulation/vagrant/files/vagrant-1.8.1-install-plugins-in-isolation.patch122
-rw-r--r--app-emulation/vagrant/files/vagrant-1.8.1-rvm.patch11
-rw-r--r--app-emulation/vagrant/metadata.xml23
-rw-r--r--app-emulation/vagrant/vagrant-1.4.3-r2.ebuild69
-rw-r--r--app-emulation/vagrant/vagrant-1.8.1.ebuild87
-rw-r--r--app-emulation/vboxgtk/metadata.xml4
-rw-r--r--app-emulation/vice/Manifest2
-rw-r--r--app-emulation/vice/files/vice-2.4-arm.patch38
-rw-r--r--app-emulation/vice/files/vice-2.4-autotools.patch11
-rw-r--r--app-emulation/vice/files/vice-2.4-buffer.patch14
-rw-r--r--app-emulation/vice/files/vice-2.4-ffmpeg-1.patch135
-rw-r--r--app-emulation/vice/files/vice-2.4.20-autotools.patch11
-rw-r--r--app-emulation/vice/files/vice-2.4.20-format.patch20
-rw-r--r--app-emulation/vice/files/vice-2.4.20-xf86extensions.patch15
-rw-r--r--app-emulation/vice/metadata.xml8
-rw-r--r--app-emulation/vice/vice-2.4.20.ebuild173
-rw-r--r--app-emulation/vice/vice-2.4.22.ebuild2
-rw-r--r--app-emulation/vice/vice-2.4.ebuild117
-rw-r--r--app-emulation/virt-manager/Manifest2
-rw-r--r--app-emulation/virt-manager/metadata.xml9
-rw-r--r--app-emulation/virt-manager/virt-manager-1.3.0-r1.ebuild105
-rw-r--r--app-emulation/virt-manager/virt-manager-1.3.2.ebuild105
-rw-r--r--app-emulation/virt-manager/virt-manager-9999.ebuild22
-rw-r--r--app-emulation/virt-viewer/Manifest3
-rw-r--r--app-emulation/virt-viewer/files/virt-viewer-0.6.0-fix-c99-compat.patch29
-rw-r--r--app-emulation/virt-viewer/metadata.xml6
-rw-r--r--app-emulation/virt-viewer/virt-viewer-3.0.ebuild (renamed from app-emulation/virt-viewer/virt-viewer-0.5.6.ebuild)16
-rw-r--r--app-emulation/virt-viewer/virt-viewer-3.1.ebuild49
-rw-r--r--app-emulation/virt-what/metadata.xml5
-rw-r--r--app-emulation/virtualbox-additions/Manifest4
-rw-r--r--app-emulation/virtualbox-additions/metadata.xml4
-rw-r--r--app-emulation/virtualbox-additions/virtualbox-additions-5.0.12.ebuild (renamed from app-emulation/virtualbox-additions/virtualbox-additions-5.0.10.ebuild)0
-rw-r--r--app-emulation/virtualbox-additions/virtualbox-additions-5.0.14.ebuild (renamed from app-emulation/virtualbox-additions/virtualbox-additions-5.0.8.ebuild)2
-rw-r--r--app-emulation/virtualbox-bin/Manifest16
-rw-r--r--app-emulation/virtualbox-bin/metadata.xml14
-rw-r--r--app-emulation/virtualbox-bin/virtualbox-bin-5.0.12.104815.ebuild (renamed from app-emulation/virtualbox-bin/virtualbox-bin-5.0.10.104061.ebuild)0
-rw-r--r--app-emulation/virtualbox-bin/virtualbox-bin-5.0.14.105127.ebuild (renamed from app-emulation/virtualbox-bin/virtualbox-bin-5.0.8.103449.ebuild)2
-rw-r--r--app-emulation/virtualbox-extpack-oracle/Manifest4
-rw-r--r--app-emulation/virtualbox-extpack-oracle/metadata.xml4
-rw-r--r--app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.12.104815.ebuild (renamed from app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.10.104061.ebuild)0
-rw-r--r--app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.14.105127.ebuild (renamed from app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.8.103449.ebuild)2
-rw-r--r--app-emulation/virtualbox-guest-additions/Manifest4
-rw-r--r--app-emulation/virtualbox-guest-additions/metadata.xml4
-rw-r--r--app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.12.ebuild (renamed from app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.10.ebuild)0
-rw-r--r--app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.14.ebuild (renamed from app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.8.ebuild)2
-rw-r--r--app-emulation/virtualbox-modules/Manifest4
-rw-r--r--app-emulation/virtualbox-modules/metadata.xml4
-rw-r--r--app-emulation/virtualbox-modules/virtualbox-modules-5.0.12.ebuild (renamed from app-emulation/virtualbox-modules/virtualbox-modules-5.0.10.ebuild)0
-rw-r--r--app-emulation/virtualbox-modules/virtualbox-modules-5.0.14.ebuild (renamed from app-emulation/virtualbox-modules/virtualbox-modules-5.0.8.ebuild)2
-rw-r--r--app-emulation/virtualbox/Manifest4
-rw-r--r--app-emulation/virtualbox/files/virtualbox-5-localconfig2
-rw-r--r--app-emulation/virtualbox/metadata.xml16
-rw-r--r--app-emulation/virtualbox/virtualbox-5.0.12.ebuild (renamed from app-emulation/virtualbox/virtualbox-5.0.10.ebuild)0
-rw-r--r--app-emulation/virtualbox/virtualbox-5.0.14.ebuild (renamed from app-emulation/virtualbox/virtualbox-5.0.8.ebuild)2
-rw-r--r--app-emulation/vmips-cross-bin/metadata.xml5
-rw-r--r--app-emulation/vmips/metadata.xml3
-rw-r--r--app-emulation/vmware-modules/metadata.xml5
-rw-r--r--app-emulation/vmware-player/metadata.xml7
-rw-r--r--app-emulation/vmware-tools/metadata.xml5
-rw-r--r--app-emulation/vmware-vix/metadata.xml5
-rw-r--r--app-emulation/vmware-workstation/Manifest1
-rw-r--r--app-emulation/vmware-workstation/metadata.xml6
-rw-r--r--app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323-r4.ebuild (renamed from app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323.ebuild)152
-rw-r--r--app-emulation/vov/metadata.xml4
-rw-r--r--app-emulation/vpcs/metadata.xml2
-rw-r--r--app-emulation/wine/Manifest3
-rw-r--r--app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-post.patch51
-rw-r--r--app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-pre.patch53
-rw-r--r--app-emulation/wine/metadata.xml15
-rw-r--r--app-emulation/wine/wine-1.7.55.ebuild2
-rw-r--r--app-emulation/wine/wine-1.8.ebuild438
-rw-r--r--app-emulation/wine/wine-9999.ebuild39
-rw-r--r--app-emulation/winetricks/Manifest2
-rw-r--r--app-emulation/winetricks/metadata.xml12
-rw-r--r--app-emulation/winetricks/winetricks-20160109.ebuild (renamed from app-emulation/winetricks/winetricks-20151116.ebuild)0
-rw-r--r--app-emulation/x48/metadata.xml2
-rw-r--r--app-emulation/xe-guest-utilities/metadata.xml19
-rw-r--r--app-emulation/xen-pvgrub/Manifest2
-rw-r--r--app-emulation/xen-pvgrub/metadata.xml5
-rw-r--r--app-emulation/xen-pvgrub/xen-pvgrub-4.2.5.ebuild162
-rw-r--r--app-emulation/xen-pvgrub/xen-pvgrub-4.5.1.ebuild143
-rw-r--r--app-emulation/xen-pvgrub/xen-pvgrub-4.5.2.ebuild6
-rw-r--r--app-emulation/xen-pvgrub/xen-pvgrub-4.6.0.ebuild9
-rw-r--r--app-emulation/xen-tools/Manifest17
-rw-r--r--app-emulation/xen-tools/metadata.xml27
-rw-r--r--app-emulation/xen-tools/xen-tools-4.2.5-r10.ebuild391
-rw-r--r--app-emulation/xen-tools/xen-tools-4.5.2-r2.ebuild (renamed from app-emulation/xen-tools/xen-tools-4.5.2.ebuild)26
-rw-r--r--app-emulation/xen-tools/xen-tools-4.5.2-r3.ebuild (renamed from app-emulation/xen-tools/xen-tools-4.6.0-r1.ebuild)51
-rw-r--r--app-emulation/xen-tools/xen-tools-4.5.2-r4.ebuild (renamed from app-emulation/xen-tools/xen-tools-4.5.1-r3.ebuild)53
-rw-r--r--app-emulation/xen-tools/xen-tools-4.6.0-r4.ebuild (renamed from app-emulation/xen-tools/xen-tools-4.2.5-r11.ebuild)328
-rw-r--r--app-emulation/xen-tools/xen-tools-4.6.0-r5.ebuild465
-rw-r--r--app-emulation/xen-tools/xen-tools-4.6.0-r6.ebuild469
-rw-r--r--app-emulation/xen-tools/xen-tools-4.6.0-r7.ebuild469
-rw-r--r--app-emulation/xen/Manifest13
-rw-r--r--app-emulation/xen/metadata.xml12
-rw-r--r--app-emulation/xen/xen-4.2.5-r11.ebuild167
-rw-r--r--app-emulation/xen/xen-4.2.5-r12.ebuild170
-rw-r--r--app-emulation/xen/xen-4.5.1.ebuild176
-rw-r--r--app-emulation/xen/xen-4.5.2-r2.ebuild (renamed from app-emulation/xen/xen-4.5.2-r1.ebuild)15
-rw-r--r--app-emulation/xen/xen-4.5.2-r3.ebuild (renamed from app-emulation/xen/xen-4.5.2.ebuild)31
-rw-r--r--app-emulation/xen/xen-4.5.2-r4.ebuild (renamed from app-emulation/xen/xen-4.6.0-r1.ebuild)40
-rw-r--r--app-emulation/xen/xen-4.6.0-r5.ebuild (renamed from app-emulation/xen/xen-4.6.0-r2.ebuild)60
-rw-r--r--app-emulation/xen/xen-4.6.0-r6.ebuild193
-rw-r--r--app-emulation/xen/xen-4.6.0-r7.ebuild197
-rw-r--r--app-emulation/xen/xen-4.6.0-r8.ebuild197
-rw-r--r--app-emulation/xtrs/metadata.xml4
300 files changed, 7212 insertions, 8992 deletions
diff --git a/app-emulation/aqemu/metadata.xml b/app-emulation/aqemu/metadata.xml
index 25667e2ea9..c9c487d5a5 100644
--- a/app-emulation/aqemu/metadata.xml
+++ b/app-emulation/aqemu/metadata.xml
@@ -1,15 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>proxy-maintainers</herd>
- <maintainer>
+ <maintainer type="person">
<email>maksbotan@gentoo.org</email>
<description>Proxy maintainer (CC on bugs)</description>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>andreis.vinogradovs@gmail.com</email>
<description>Proxied maintainer (assign bugs)</description>
</maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<upstream>
<remote-id type="sourceforge">aqemu</remote-id>
</upstream>
diff --git a/app-emulation/aranym/metadata.xml b/app-emulation/aranym/metadata.xml
index d60a27928e..8ace45a94e 100644
--- a/app-emulation/aranym/metadata.xml
+++ b/app-emulation/aranym/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<longdescription>
ARAnyM is an acronym: Atari Running on Any Machine. It is a virtual
machine software for running the Atari ST/TT/Falcon operating systems
diff --git a/app-emulation/armv8-fast-model/metadata.xml b/app-emulation/armv8-fast-model/metadata.xml
index 5454528f20..3101c4efc8 100644
--- a/app-emulation/armv8-fast-model/metadata.xml
+++ b/app-emulation/armv8-fast-model/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>arm</herd>
+<maintainer type="project">
+ <email>arm@gentoo.org</email>
+ <name>Gentoo Linux ARM Development</name>
+</maintainer>
</pkgmetadata>
diff --git a/app-emulation/bochs/metadata.xml b/app-emulation/bochs/metadata.xml
index 2afe2cec49..ec4099c945 100644
--- a/app-emulation/bochs/metadata.xml
+++ b/app-emulation/bochs/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>lu_zero@gentoo.org</email>
</maintainer>
<use>
diff --git a/app-emulation/cloud-init/Manifest b/app-emulation/cloud-init/Manifest
index 93c02cdc8f..4f0a651c4e 100644
--- a/app-emulation/cloud-init/Manifest
+++ b/app-emulation/cloud-init/Manifest
@@ -1,2 +1 @@
-DIST cloud-init-0.7.5.tar.gz 503717 SHA256 a92bb83809c139a7db378916414c18b0819e306852d6c60dd89388868857ed33 SHA512 79e1e4a9e1130a3a9deb0482278215baf5ed41e02beebed0a2c6fac4e215340a9537158bd259758a2e074f334c0c0b9e7b936c23eeb9c848c67f7e7835cf0f5d WHIRLPOOL 7d92a0e1b6a3faf550bc442b02c117280c47d160e7e318d9fb859d6d8b59a0ef947d057dfb615bd925420a25ca28852742ee87ffd6066664faf640ca53a13073
DIST cloud-init-0.7.6.tar.gz 515670 SHA256 9e8fd22eb7f6e40ae6a5f66173ddc3cc18f65ee406c460a728092b37db2f3ed7 SHA512 aa2397328afda8e77ed6d642e7642f41a4b4b5bcd3d0e87056aa8c88b56624ec65c57cfc66b0d13ccc235f1840baf1d577316974902a0439cf2f2eb0f8eef36d WHIRLPOOL 639a556e51b4b4b180951f9e481f9a0dcd45067d1d5760ce7e871ceea8bbb4e195258d96273d3ef88c7e2f2520318e9172c3ad0cb23d6ad0ae1835e17087e3a5
diff --git a/app-emulation/cloud-init/cloud-init-0.7.5-r1.ebuild b/app-emulation/cloud-init/cloud-init-0.7.5-r1.ebuild
deleted file mode 100644
index a01d1dcd35..0000000000
--- a/app-emulation/cloud-init/cloud-init-0.7.5-r1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-PYTHON_COMPAT=( python2_7 )
-
-inherit distutils-r1 eutils multilib
-
-DESCRIPTION="Package provides configuration and customization of cloud instance"
-HOMEPAGE="https://launchpad.net/cloud-init"
-SRC_URI="https://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-RDEPEND="dev-python/cheetah[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
- dev-python/oauth[${PYTHON_USEDEP}]
- dev-python/pyserial[${PYTHON_USEDEP}]
- dev-python/configobj[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/jsonpatch[${PYTHON_USEDEP}]"
-DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
- test? ( ${RDEPEND}
- sys-apps/iproute2 )"
-
-PATCHES=( "${FILESDIR}"/${P}-tests-exclude.patch )
-
-#python_prepare_all() {
-# distutils-r_python_prepare_all
-#}
-
-python_test() {
- # These tests are not broken but expect to locate an installed exe file
- # other than where a gentoo system installs it; (/bin/ip sought in /sbin)
- # See cloudinit/sources/DataSourceOpenNebula.py for possible patching
- sed -e 's:test_hostname:_&:' \
- -e 's:test_network_interfaces:_&:' \
- -i tests/unittests/test_datasource/test_opennebula.py
- emake test
-}
-
-python_install() {
- distutils-r1_python_install
- for svc in config final init init-local; do
- newinitd "${WORKDIR}/${P}/sysvinit/gentoo/cloud-${svc}" "cloud-${svc}"
- done
-}
diff --git a/app-emulation/cloud-init/cloud-init-0.7.5-r2.ebuild b/app-emulation/cloud-init/cloud-init-0.7.5-r2.ebuild
deleted file mode 100644
index d53ccc6c2d..0000000000
--- a/app-emulation/cloud-init/cloud-init-0.7.5-r2.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-PYTHON_COMPAT=( python2_7 )
-DISTUTILS_SINGLE_IMPL=TRUE
-
-inherit distutils-r1 eutils multilib systemd
-
-DESCRIPTION="Cloud instance initialization"
-HOMEPAGE="https://launchpad.net/cloud-init"
-SRC_URI="https://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-CDEPEND="
- dev-python/cheetah[${PYTHON_USEDEP}]
- dev-python/configobj[${PYTHON_USEDEP}]
- dev-python/jsonpatch[${PYTHON_USEDEP}]
- dev-python/oauth[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
- dev-python/pyserial[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
-"
-DEPEND="
- test? (
- ${CDEPEND}
- >=dev-python/httpretty-0.7.1[${PYTHON_USEDEP}]
- dev-python/mocker[${PYTHON_USEDEP}]
- dev-python/nose[${PYTHON_USEDEP}]
- dev-python/pep8[${PYTHON_USEDEP}]
- dev-python/pyflakes[${PYTHON_USEDEP}]
- dev-python/pylint[${PYTHON_USEDEP}]
- sys-apps/iproute2
- )
-"
-RDEPEND="
- ${CDEPEND}
- virtual/logger
-"
-
-python_prepare_all() {
- local PATCHES=(
- "${FILESDIR}"/${P}-tests-exclude.patch
- )
-
- distutils-r1_python_prepare_all
-
- # Skip SmartOS tests since they don't generally apply and don't skip based
- # on environment. Documented in bug #511384.
- rm tests/unittests/test_datasource/test_smartos.py
-}
-
-python_test() {
- # These tests are not broken but expect to locate an installed exe file
- # other than where a gentoo system installs it; (/bin/ip sought in /sbin)
- # See cloudinit/sources/DataSourceOpenNebula.py for possible patching
- sed \
- -e 's:test_hostname:_&:' \
- -e 's:test_network_interfaces:_&:' \
- -i tests/unittests/test_datasource/test_opennebula.py
-
- emake test
-}
-
-python_install_all() {
- distutils-r1_python_install_all
-
- doinitd "${S}"/sysvinit/gentoo/cloud-config
- doinitd "${S}"/sysvinit/gentoo/cloud-final
- doinitd "${S}"/sysvinit/gentoo/cloud-init
- doinitd "${S}"/sysvinit/gentoo/cloud-init-local
-
- systemd_dounit "${S}"/systemd/cloud-config.service
- systemd_dounit "${S}"/systemd/cloud-config.target
- systemd_dounit "${S}"/systemd/cloud-final.service
- systemd_dounit "${S}"/systemd/cloud-init-local.service
- systemd_dounit "${S}"/systemd/cloud-init.service
-}
diff --git a/app-emulation/cloud-init/cloud-init-0.7.5-r3.ebuild b/app-emulation/cloud-init/cloud-init-0.7.5-r3.ebuild
deleted file mode 100644
index c0861d4b45..0000000000
--- a/app-emulation/cloud-init/cloud-init-0.7.5-r3.ebuild
+++ /dev/null
@@ -1,88 +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 )
-DISTUTILS_SINGLE_IMPL=TRUE
-
-inherit distutils-r1 eutils multilib systemd
-
-DESCRIPTION="Cloud instance initialization"
-HOMEPAGE="https://launchpad.net/cloud-init"
-SRC_URI="https://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-CDEPEND="
- dev-python/cheetah[${PYTHON_USEDEP}]
- dev-python/configobj[${PYTHON_USEDEP}]
- dev-python/jsonpatch[${PYTHON_USEDEP}]
- dev-python/oauth[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
- dev-python/pyserial[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
-"
-DEPEND="
- test? (
- ${CDEPEND}
- >=dev-python/httpretty-0.7.1[${PYTHON_USEDEP}]
- dev-python/mocker[${PYTHON_USEDEP}]
- dev-python/nose[${PYTHON_USEDEP}]
- dev-python/pep8[${PYTHON_USEDEP}]
- dev-python/pyflakes[${PYTHON_USEDEP}]
- dev-python/pylint[${PYTHON_USEDEP}]
- sys-apps/iproute2
- )
-"
-RDEPEND="
- ${CDEPEND}
- virtual/logger
-"
-
-python_prepare_all() {
- local PATCHES=(
- "${FILESDIR}"/${P}-tests-exclude.patch
- )
-
- distutils-r1_python_prepare_all
-
- # Skip SmartOS tests since they don't generally apply and don't skip based
- # on environment. Documented in bug #511384.
- rm tests/unittests/test_datasource/test_smartos.py
-}
-
-python_test() {
- # These tests are not broken but expect to locate an installed exe file
- # other than where a gentoo system installs it; (/bin/ip sought in /sbin)
- # See cloudinit/sources/DataSourceOpenNebula.py for possible patching
- sed \
- -e 's:test_hostname:_&:' \
- -e 's:test_network_interfaces:_&:' \
- -i tests/unittests/test_datasource/test_opennebula.py
-
- emake test
-}
-
-python_install_all() {
- distutils-r1_python_install_all
-
- doinitd "${S}"/sysvinit/gentoo/cloud-config
- doinitd "${S}"/sysvinit/gentoo/cloud-final
- doinitd "${S}"/sysvinit/gentoo/cloud-init
- doinitd "${S}"/sysvinit/gentoo/cloud-init-local
-
- systemd_dounit "${S}"/systemd/cloud-config.service
- systemd_dounit "${S}"/systemd/cloud-config.target
- systemd_dounit "${S}"/systemd/cloud-final.service
- systemd_dounit "${S}"/systemd/cloud-init-local.service
- systemd_dounit "${S}"/systemd/cloud-init.service
-
- rm /etc/cloud/cloud.cfg
- insinto /etc/cloud
- doins "${FILESDIR}/cloud.cfg"
-}
diff --git a/app-emulation/cloud-init/cloud-init-0.7.6-r1.ebuild b/app-emulation/cloud-init/cloud-init-0.7.6-r1.ebuild
index ce3973583b..9c1c7ea960 100644
--- a/app-emulation/cloud-init/cloud-init-0.7.6-r1.ebuild
+++ b/app-emulation/cloud-init/cloud-init-0.7.6-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -13,7 +13,7 @@ SRC_URI="https://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="test"
CDEPEND="
@@ -41,7 +41,7 @@ DEPEND="
"
RDEPEND="
${CDEPEND}
- sys-apps/gptfdisk
+ sys-fs/growpart
virtual/logger
"
@@ -92,8 +92,6 @@ python_install_all() {
doinitd "${S}"/sysvinit/gentoo/cloud-init-local
insinto /etc/cloud/templates
doins "${FILESDIR}/hosts.gentoo.tmpl"
- exeinto /usr/bin
- doexe "${FILESDIR}/growpart"
insinto /etc/cloud
doins "${FILESDIR}/cloud.cfg"
diff --git a/app-emulation/cloud-init/cloud-init-0.7.6.ebuild b/app-emulation/cloud-init/cloud-init-0.7.6.ebuild
deleted file mode 100644
index b35adae1d7..0000000000
--- a/app-emulation/cloud-init/cloud-init-0.7.6.ebuild
+++ /dev/null
@@ -1,98 +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 )
-
-inherit distutils-r1 eutils multilib systemd
-
-DESCRIPTION="EC2 initialisation magic"
-HOMEPAGE="https://launchpad.net/cloud-init"
-SRC_URI="https://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="test"
-
-CDEPEND="
- dev-python/cheetah[${PYTHON_USEDEP}]
- dev-python/configobj[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/jsonpatch[${PYTHON_USEDEP}]
- dev-python/oauth[${PYTHON_USEDEP}]
- dev-python/prettytable[${PYTHON_USEDEP}]
- dev-python/pyserial[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
-"
-DEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- test? (
- ${CDEPEND}
- >=dev-python/httpretty-0.7.1[${PYTHON_USEDEP}]
- dev-python/mocker[${PYTHON_USEDEP}]
- dev-python/nose[${PYTHON_USEDEP}]
- ~dev-python/pep8-1.5.7[${PYTHON_USEDEP}]
- dev-python/pyflakes[${PYTHON_USEDEP}]
- sys-apps/iproute2
- )
-"
-RDEPEND="
- ${CDEPEND}
- virtual/logger
-"
-
-python_prepare_all() {
- # Note: Gentoo places ip in /sbin/ not /bin/
- ebegin 'patching cloudinit/sources/DataSourceOpenNebula.py'
- sed \
- -e '438s/sbin/bin/' \
- -i cloudinit/sources/DataSourceOpenNebula.py
- STATUS=$?
- eend ${STATUS}
- [[ ${STATUS} -gt 0 ]] && die
-
- # https://bugs.launchpad.net/cloud-init/+bug/1380424
- ebegin 'patching tests/unittests/test_distros/test_netconfig.py'
- sed \
- -e '177s/test_simple_write_freebsd/_&/' \
- -i tests/unittests/test_distros/test_netconfig.py
- STATUS=$?
- eend ${STATUS}
- [[ ${STATUS} -gt 0 ]] && die
-
- # Note Gentoo installs its own RC files
- ebegin 'patching setup.py'
- sed \
- -e "144 s/'tests'/'tests.*', &/" \
- -e '163,167 d' \
- -i setup.py
- STATUS=$?
- eend ${STATUS}
- [[ ${STATUS} -gt 0 ]] && die
-
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- emake test
-}
-
-python_install_all() {
- keepdir /etc/cloud
-
- distutils-r1_python_install_all
-
- doinitd "${S}"/sysvinit/gentoo/cloud-config
- doinitd "${S}"/sysvinit/gentoo/cloud-final
- doinitd "${S}"/sysvinit/gentoo/cloud-init
- doinitd "${S}"/sysvinit/gentoo/cloud-init-local
-
- systemd_dounit "${S}"/systemd/cloud-config.service
- systemd_dounit "${S}"/systemd/cloud-config.target
- systemd_dounit "${S}"/systemd/cloud-final.service
- systemd_dounit "${S}"/systemd/cloud-init-local.service
- systemd_dounit "${S}"/systemd/cloud-init.service
-}
diff --git a/app-emulation/cloud-init/files/cloud-init-0.7.5-tests-exclude.patch b/app-emulation/cloud-init/files/cloud-init-0.7.5-tests-exclude.patch
deleted file mode 100644
index 225f1a1d76..0000000000
--- a/app-emulation/cloud-init/files/cloud-init-0.7.5-tests-exclude.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur cloud-init-0.7.5.orig/setup.py cloud-init-0.7.5/setup.py
---- setup.py 2014-04-02 02:26:07.000000000 +0800
-+++ setup.py 2014-05-01 23:38:15.848225975 +0800
-@@ -114,7 +114,7 @@
- author='Scott Moser',
- author_email='scott.moser@canonical.com',
- url='http://launchpad.net/cloud-init/',
-- packages=setuptools.find_packages(exclude=['tests']),
-+ packages=setuptools.find_packages(exclude=['tests','tests.*']),
- scripts=['bin/cloud-init',
- 'tools/cloud-init-per',
- ],
diff --git a/app-emulation/cloud-init/files/growpart b/app-emulation/cloud-init/files/growpart
deleted file mode 100644
index 4b67d8b908..0000000000
--- a/app-emulation/cloud-init/files/growpart
+++ /dev/null
@@ -1,778 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2011 Canonical Ltd.
-# Copyright (C) 2013 Hewlett-Packard Development Company, L.P.
-#
-# Authors: Scott Moser <smoser@canonical.com>
-# Juerg Haefliger <juerg.haefliger@hp.com>
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, version 3 of the License.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-# the fudge factor. if within this many bytes dont bother
-FUDGE=${GROWPART_FUDGE:-$((1024*1024))}
-TEMP_D=""
-RESTORE_FUNC=""
-RESTORE_HUMAN=""
-VERBOSITY=0
-DISK=""
-PART=""
-PT_UPDATE=false
-DRY_RUN=0
-
-SFDISK_VERSION=""
-SFDISK_2_26="22600"
-MBR_BACKUP=""
-GPT_BACKUP=""
-_capture=""
-
-error() {
- echo "$@" 1>&2
-}
-
-fail() {
- [ $# -eq 0 ] || echo "FAILED:" "$@"
- exit 2
-}
-
-nochange() {
- echo "NOCHANGE:" "$@"
- exit 1
-}
-
-changed() {
- echo "CHANGED:" "$@"
- exit 0
-}
-
-change() {
- echo "CHANGE:" "$@"
- exit 0
-}
-
-cleanup() {
- if [ -n "${RESTORE_FUNC}" ]; then
- error "***** WARNING: Resize failed, attempting to revert ******"
- if ${RESTORE_FUNC} ; then
- error "***** Appears to have gone OK ****"
- else
- error "***** FAILED! ******"
- if [ -n "${RESTORE_HUMAN}" -a -f "${RESTORE_HUMAN}" ]; then
- error "**** original table looked like: ****"
- cat "${RESTORE_HUMAN}" 1>&2
- else
- error "We seem to have not saved the partition table!"
- fi
- fi
- fi
- [ -z "${TEMP_D}" -o ! -d "${TEMP_D}" ] || rm -Rf "${TEMP_D}"
-}
-
-debug() {
- local level=${1}
- shift
- [ "${level}" -gt "${VERBOSITY}" ] && return
- if [ "${DEBUG_LOG}" ]; then
- echo "$@" >>"${DEBUG_LOG}"
- else
- error "$@"
- fi
-}
-
-debugcat() {
- local level="$1"
- shift;
- [ "${level}" -gt "$VERBOSITY" ] && return
- if [ "${DEBUG_LOG}" ]; then
- cat "$@" >>"${DEBUG_LOG}"
- else
- cat "$@" 1>&2
- fi
-}
-
-mktemp_d() {
- # just a mktemp -d that doens't need mktemp if its not there.
- _RET=$(mktemp -d "${TMPDIR:-/tmp}/${0##*/}.XXXXXX" 2>/dev/null) &&
- return
- _RET=$(umask 077 && t="${TMPDIR:-/tmp}/${0##*/}.$$" &&
- mkdir "${t}" && echo "${t}")
- return
-}
-
-Usage() {
- cat <<EOF
-${0##*/} disk partition
- rewrite partition table so that partition takes up all the space it can
- options:
- -h | --help print Usage and exit
- --fudge F if part could be resized, but change would be
- less than 'F' bytes, do not resize (default: ${FUDGE})
- -N | --dry-run only report what would be done, show new 'sfdisk -d'
- -v | --verbose increase verbosity / debug
- -u | --update R update the the kernel partition table info after growing
- this requires kernel support and 'partx --update'
- R is one of:
- - 'auto' : [default] update partition if possible
- - 'force' : try despite sanity checks (fail on failure)
- - 'off' : do not attempt
- - 'on' : fail if sanity checks indicate no support
-
- Example:
- - ${0##*/} /dev/sda 1
- Resize partition 1 on /dev/sda
-EOF
-}
-
-bad_Usage() {
- Usage 1>&2
- error "$@"
- exit 2
-}
-
-sfdisk_restore_legacy() {
- sfdisk --no-reread "${DISK}" -I "${MBR_BACKUP}"
-}
-
-sfdisk_restore() {
- # files are named: sfdisk-<device>-<offset>.bak
- local f="" offset="" fails=0
- for f in "${MBR_BACKUP}"*.bak; do
- [ -f "$f" ] || continue
- offset=${f##*-}
- offset=${offset%.bak}
- [ "$offset" = "$f" ] && {
- error "WARN: confused by file $f";
- continue;
- }
- dd "if=$f" "of=${DISK}" seek=$(($offset)) bs=1 conv=notrunc ||
- { error "WARN: failed restore from $f"; fails=$(($fails+1)); }
- done
- return $fails
-}
-
-sfdisk_worked_but_blkrrpart_failed() {
- local ret="$1" output="$2"
- # exit code found was just 1, but dont insist on that
- #[ $ret -eq 1 ] || return 1
- # Successfully wrote the new partition table
- grep -qi "Success.* wrote.* new.* partition" "$output" &&
- grep -qi "BLKRRPART: Device or resource busy" "$output"
- return
-}
-
-get_sfdisk_version() {
- # set SFDISK_VERSION to MAJOR*10000+MINOR*100+MICRO
- local out oifs="$IFS" ver=""
- [ -n "$SFDISK_VERSION" ] && return 0
- # expected output: sfdisk from util-linux 2.25.2
- out=$(sfdisk --version) ||
- { error "failed to get sfdisk version"; return 1; }
- set -- $out
- ver=$4
- case "$ver" in
- [0-9]*.[0-9]*.[0-9]|[0-9].[0-9]*)
- IFS="."; set -- $ver; IFS="$oifs"
- SFDISK_VERSION=$(($1*10000+$2*100+${3:-0}))
- return 0;;
- *) error "unexpected output in sfdisk --version [$out]"
- return 1;;
- esac
-}
-
-resize_sfdisk() {
- local humanpt="${TEMP_D}/recovery"
- local mbr_backup="${TEMP_D}/orig.save"
- local restore_func=""
- local format="$1"
-
- local change_out=${TEMP_D}/change.out
- local dump_out=${TEMP_D}/dump.out
- local new_out=${TEMP_D}/new.out
- local dump_mod=${TEMP_D}/dump.mod
- local tmp="${TEMP_D}/tmp.out"
- local err="${TEMP_D}/err.out"
- local mbr_max_512="4294967296"
-
- local pt_start pt_size pt_end max_end new_size change_info dpart
- local sector_num sector_size disk_size tot out
-
- rqe sfd_list sfdisk --list --unit=S "$DISK" >"$tmp" ||
- fail "failed: sfdisk --list $DISK"
- if [ "${SFDISK_VERSION}" -lt ${SFDISK_2_26} ]; then
- # exected output contains: Units: sectors of 512 bytes, ...
- out=$(awk '$1 == "Units:" && $5 ~ /bytes/ { print $4 }' "$tmp") ||
- fail "failed to read sfdisk output"
- if [ -z "$out" ]; then
- error "WARN: sector size not found in sfdisk output, assuming 512"
- sector_size=512
- else
- sector_size="$out"
- fi
- local _w _cyl _w1 _heads _w2 sectors _w3 t s
- # show-size is in units of 1024 bytes (same as /proc/partitions)
- t=$(sfdisk --show-size "${DISK}") ||
- fail "failed: sfdisk --show-size $DISK"
- disk_size=$((t*1024))
- sector_num=$(($disk_size/$sector_size))
- msg="disk size '$disk_size' not evenly div by sector size '$sector_size'"
- [ "$((${disk_size}%${sector_size}))" -eq 0 ] ||
- error "WARN: $msg"
- restore_func=sfdisk_restore_legacy
- else
- # --list first line output:
- # Disk /dev/vda: 20 GiB, 21474836480 bytes, 41943040 sectors
- local _x
- read _x _x _x _x disk_size _x sector_num _x < "$tmp"
- sector_size=$((disk_size/$sector_num))
- restore_func=sfdisk_restore
- fi
-
- debug 1 "$sector_num sectors of $sector_size. total size=${disk_size} bytes"
- [ $(($disk_size/512)) -gt $mbr_max_512 ] &&
- debug 1 "WARN: disk is larger than 2TB. additional space will go unused."
-
- rqe sfd_dump sfdisk --unit=S --dump "${DISK}" >"${dump_out}" ||
- fail "failed to dump sfdisk info for ${DISK}"
- RESTORE_HUMAN="$dump_out"
-
- {
- echo "## sfdisk --unit=S --dump ${DISK}"
- cat "${dump_out}"
- } >"$humanpt"
-
- [ $? -eq 0 ] || fail "failed to save sfdisk -d output"
- RESTORE_HUMAN="$humanpt"
-
- debugcat 1 "$humanpt"
-
- sed -e 's/,//g; s/start=/start /; s/size=/size /' "${dump_out}" \
- >"${dump_mod}" ||
- fail "sed failed on dump output"
-
- dpart="${DISK}${PART}" # disk and partition number
- if [ -b "${DISK}p${PART}" -a "${DISK%[0-9]}" != "${DISK}" ]; then
- # for block devices that end in a number (/dev/nbd0)
- # the partition is "<name>p<partition_number>" (/dev/nbd0p1)
- dpart="${DISK}p${PART}"
- elif [ "${DISK#/dev/loop[0-9]}" != "${DISK}" ]; then
- # for /dev/loop devices, sfdisk output will be <name>p<number>
- # format also, even though there is not a device there.
- dpart="${DISK}p${PART}"
- fi
-
- pt_start=$(awk '$1 == pt { print $4 }' "pt=${dpart}" <"${dump_mod}") &&
- pt_size=$(awk '$1 == pt { print $6 }' "pt=${dpart}" <"${dump_mod}") &&
- [ -n "${pt_start}" -a -n "${pt_size}" ] &&
- pt_end=$((${pt_size}+${pt_start})) ||
- fail "failed to get start and end for ${dpart} in ${DISK}"
-
- # find the minimal starting location that is >= pt_end
- max_end=$(awk '$3 == "start" { if($4 >= pt_end && $4 < min)
- { min = $4 } } END { printf("%s\n",min); }' \
- min=${sector_num} pt_end=${pt_end} "${dump_mod}") &&
- [ -n "${max_end}" ] ||
- fail "failed to get max_end for partition ${PART}"
-
- mbr_max_sectors=$((mbr_max_512*$((sector_size/512))))
- if [ "$max_end" -gt "$mbr_max_sectors" ]; then
- max_end=$mbr_max_sectors
- fi
-
- if [ "$format" = "gpt" ]; then
- # sfdisk respects 'last-lba' in input, and complains about
- # partitions that go past that. without it, it does the right thing.
- sed -i '/^last-lba:/d' "$dump_out" ||
- fail "failed to remove last-lba from output"
- fi
-
- local gpt_second_size="33"
- if [ "${max_end}" -gt "$((${sector_num}-${gpt_second_size}))" ]; then
- # if mbr allow subsequent conversion to gpt without shrinking the
- # partition. safety net at cost of 33 sectors, seems reasonable.
- # if gpt, we can't write there anyway.
- debug 1 "padding ${gpt_second_size} sectors for gpt secondary header"
- max_end=$((${sector_num}-${gpt_second_size}))
- fi
-
- debug 1 "max_end=${max_end} tot=${sector_num} pt_end=${pt_end}" \
- "pt_start=${pt_start} pt_size=${pt_size}"
- [ $((${pt_end})) -eq ${max_end} ] &&
- nochange "partition ${PART} is size ${pt_size}. it cannot be grown"
- [ $((${pt_end}+(${FUDGE}/$sector_size))) -gt ${max_end} ] &&
- nochange "partition ${PART} could only be grown by" \
- "$((${max_end}-${pt_end})) [fudge=$((${FUDGE}/$sector_size))]"
-
- # now, change the size for this partition in ${dump_out} to be the
- # new size
- new_size=$((${max_end}-${pt_start}))
- sed "\|^\s*${dpart} |s/${pt_size},/${new_size},/" "${dump_out}" \
- >"${new_out}" ||
- fail "failed to change size in output"
-
- change_info="partition=${PART} start=${pt_start} old: size=${pt_size} end=${pt_end} new: size=${new_size},end=${max_end}"
- if [ ${DRY_RUN} -ne 0 ]; then
- echo "CHANGE: ${change_info}"
- {
- echo "# === old sfdisk -d ==="
- cat "${dump_out}"
- echo "# === new sfdisk -d ==="
- cat "${new_out}"
- } 1>&2
- exit 0
- fi
-
- MBR_BACKUP="${mbr_backup}"
- LANG=C sfdisk --no-reread "${DISK}" --force \
- -O "${mbr_backup}" <"${new_out}" >"${change_out}" 2>&1
- ret=$?
- [ $ret -eq 0 ] || RESTORE_FUNC="${restore_func}"
-
- if [ $ret -eq 0 ]; then
- :
- elif $PT_UPDATE &&
- sfdisk_worked_but_blkrrpart_failed "$ret" "${change_out}"; then
- # if the command failed, but it looks like only because
- # the device was busy and we have pt_update, then go on
- debug 1 "sfdisk failed, but likely only because of blkrrpart"
- else
- error "attempt to resize ${DISK} failed. sfdisk output below:"
- sed 's,^,| ,' "${change_out}" 1>&2
- fail "failed to resize"
- fi
-
- rq pt_update pt_update "$DISK" "$PART" ||
- fail "pt_resize failed"
-
- RESTORE_FUNC=""
-
- changed "${change_info}"
-
- # dump_out looks something like:
- ## partition table of /tmp/out.img
- #unit: sectors
- #
- #/tmp/out.img1 : start= 1, size= 48194, Id=83
- #/tmp/out.img2 : start= 48195, size= 963900, Id=83
- #/tmp/out.img3 : start= 1012095, size= 305235, Id=82
- #/tmp/out.img4 : start= 1317330, size= 771120, Id= 5
- #/tmp/out.img5 : start= 1317331, size= 642599, Id=83
- #/tmp/out.img6 : start= 1959931, size= 48194, Id=83
- #/tmp/out.img7 : start= 2008126, size= 80324, Id=83
-}
-
-gpt_restore() {
- sgdisk -l "${GPT_BACKUP}" "${DISK}"
-}
-
-resize_sgdisk() {
- GPT_BACKUP="${TEMP_D}/pt.backup"
-
- local pt_info="${TEMP_D}/pt.info"
- local pt_pretend="${TEMP_D}/pt.pretend"
- local pt_data="${TEMP_D}/pt.data"
- local out="${TEMP_D}/out"
-
- local dev="disk=${DISK} partition=${PART}"
-
- local pt_start pt_end pt_size last pt_max code guid name new_size
- local old new change_info sector_size
-
- # Dump the original partition information and details to disk. This is
- # used in case something goes wrong and human interaction is required
- # to revert any changes.
- rqe sgd_info sgdisk "--info=${PART}" --print "${DISK}" >"${pt_info}" ||
- fail "${dev}: failed to dump original sgdisk info"
- RESTORE_HUMAN="${pt_info}"
-
- sector_size=$(awk '$0 ~ /^Logical sector size:.*bytes/ { print $4 }' \
- "$pt_info") && [ -n "$sector_size" ] || {
- sector_size=512
- error "WARN: did not find sector size, assuming 512"
- }
-
- debug 1 "$dev: original sgdisk info:"
- debugcat 1 "${pt_info}"
-
- # Pretend to move the backup GPT header to the end of the disk and dump
- # the resulting partition information. We use this info to determine if
- # we have to resize the partition.
- rqe sgd_pretend sgdisk --pretend --move-second-header \
- --print "${DISK}" >"${pt_pretend}" ||
- fail "${dev}: failed to dump pretend sgdisk info"
-
- debug 1 "$dev: pretend sgdisk info"
- debugcat 1 "${pt_pretend}"
-
- # Extract the partition data from the pretend dump
- awk 'found { print } ; $1 == "Number" { found = 1 }' \
- "${pt_pretend}" >"${pt_data}" ||
- fail "${dev}: failed to parse pretend sgdisk info"
-
- # Get the start and end sectors of the partition to be grown
- pt_start=$(awk '$1 == '"${PART}"' { print $2 }' "${pt_data}") &&
- [ -n "${pt_start}" ] ||
- fail "${dev}: failed to get start sector"
- pt_end=$(awk '$1 == '"${PART}"' { print $3 }' "${pt_data}") &&
- [ -n "${pt_end}" ] ||
- fail "${dev}: failed to get end sector"
- pt_size="$((${pt_end} - ${pt_start}))"
-
- # Get the last usable sector
- last=$(awk '/last usable sector is/ { print $NF }' \
- "${pt_pretend}") && [ -n "${last}" ] ||
- fail "${dev}: failed to get last usable sector"
-
- # Find the minimal start sector that is >= pt_end
- pt_max=$(awk '{ if ($2 >= pt_end && $2 < min) { min = $2 } } END \
- { print min }' min="${last}" pt_end="${pt_end}" \
- "${pt_data}") && [ -n "${pt_max}" ] ||
- fail "${dev}: failed to find max end sector"
-
- debug 1 "${dev}: pt_start=${pt_start} pt_end=${pt_end}" \
- "pt_size=${pt_size} pt_max=${pt_max} last=${last}"
-
- # Check if the partition can be grown
- [ "${pt_end}" -eq "${pt_max}" ] &&
- nochange "${dev}: size=${pt_size}, it cannot be grown"
- [ "$((${pt_end} + ${FUDGE}/${sector_size}))" -gt "${pt_max}" ] &&
- nochange "${dev}: could only be grown by" \
- "$((${pt_max} - ${pt_end})) [fudge=$((${FUDGE}/$sector_size))]"
-
- # The partition can be grown if we made it here. Get some more info
- # about it so we can do it properly.
- # FIXME: Do we care about the attribute flags?
- code=$(awk '/^Partition GUID code:/ { print $4 }' "${pt_info}")
- guid=$(awk '/^Partition unique GUID:/ { print $4 }' "${pt_info}")
- name=$(awk '/^Partition name:/ { gsub(/'"'"'/, "") ; \
- if (NF >= 3) print substr($0, index($0, $3)) }' "${pt_info}")
- [ -n "${code}" -a -n "${guid}" ] ||
- fail "${dev}: failed to parse sgdisk details"
-
- debug 1 "${dev}: code=${code} guid=${guid} name='${name}'"
- local wouldrun=""
- [ "$DRY_RUN" -ne 0 ] && wouldrun="would-run"
-
- # Calculate the new size of the partition
- new_size=$((${pt_max} - ${pt_start}))
- old="old: size=${pt_size},end=${pt_end}"
- new="new: size=${new_size},end=${pt_max}"
- change_info="${dev}: start=${pt_start} ${old} ${new}"
-
- # Backup the current partition table, we're about to modify it
- rq sgd_backup $wouldrun sgdisk "--backup=${GPT_BACKUP}" "${DISK}" ||
- fail "${dev}: failed to backup the partition table"
-
- # Modify the partition table. We do it all in one go (the order is
- # important!):
- # - move the GPT backup header to the end of the disk
- # - delete the partition
- # - recreate the partition with the new size
- # - set the partition code
- # - set the partition GUID
- # - set the partition name
- rq sgdisk_mod $wouldrun sgdisk --move-second-header "--delete=${PART}" \
- "--new=${PART}:${pt_start}:${pt_max}" \
- "--typecode=${PART}:${code}" \
- "--partition-guid=${PART}:${guid}" \
- "--change-name=${PART}:${name}" "${DISK}" &&
- rq pt_update $wouldrun pt_update "$DISK" "$PART" || {
- RESTORE_FUNC=gpt_restore
- fail "${dev}: failed to repartition"
- }
-
- # Dry run
- [ "${DRY_RUN}" -ne 0 ] && change "${change_info}"
-
- changed "${change_info}"
-}
-
-kver_to_num() {
- local kver="$1" maj="" min="" mic="0"
- kver=${kver%%-*}
- maj=${kver%%.*}
- min=${kver#${maj}.}
- min=${min%%.*}
- mic=${kver#${maj}.${min}.}
- [ "$kver" = "$mic" ] && mic=0
- _RET=$(($maj*1000*1000+$min*1000+$mic))
-}
-
-kver_cmp() {
- local op="$2" n1="" n2=""
- kver_to_num "$1"
- n1="$_RET"
- kver_to_num "$3"
- n2="$_RET"
- [ $n1 $op $n2 ]
-}
-
-rq() {
- # runquieterror(label, command)
- # gobble stderr of a command unless it errors
- local label="$1" ret="" efile=""
- efile="$TEMP_D/$label.err"
- shift;
-
- local rlabel="running"
- [ "$1" = "would-run" ] && rlabel="would-run" && shift
-
- local cmd="" x=""
- for x in "$@"; do
- [ "${x#* }" != "$x" -o "${x#* \"}" != "$x" ] && x="'$x'"
- cmd="$cmd $x"
- done
- cmd=${cmd# }
-
- debug 2 "$rlabel[$label][$_capture]" "$cmd"
- [ "$rlabel" = "would-run" ] && return 0
-
- if [ "${_capture}" = "erronly" ]; then
- "$@" 2>"$TEMP_D/$label.err"
- ret=$?
- else
- "$@" >"$TEMP_D/$label.err" 2>&1
- ret=$?
- fi
- if [ $ret -ne 0 ]; then
- error "failed [$label:$ret]" "$@"
- cat "$efile" 1>&2
- fi
- return $ret
-}
-
-rqe() {
- local _capture="erronly"
- rq "$@"
-}
-
-verify_ptupdate() {
- local input="$1" found="" reason="" kver=""
-
- # we can always satisfy 'off'
- if [ "$input" = "off" ]; then
- _RET="false";
- return 0;
- fi
-
- if command -v partx >/dev/null 2>&1; then
- local out="" ret=0
- out=$(partx --help 2>&1)
- ret=$?
- if [ $ret -eq 0 ]; then
- echo "$out" | grep -q -- --update || {
- reason="partx has no '--update' flag in usage."
- found="off"
- }
- else
- reason="'partx --help' returned $ret. assuming it is old."
- found="off"
- fi
- else
- reason="no 'partx' command"
- found="off"
- fi
-
- if [ -z "$found" ]; then
- if [ "$(uname)" != "Linux" ]; then
- reason="Kernel is not Linux per uname."
- found="off"
- fi
- fi
-
- if [ -z "$found" ]; then
- kver=$(uname -r) || debug 1 "uname -r failed!"
-
- if ! kver_cmp "${kver-0.0.0}" -ge 3.8.0; then
- reason="Kernel '$kver' < 3.8.0."
- found="off"
- fi
- fi
-
- if [ -z "$found" ]; then
- _RET="true"
- return 0
- fi
-
- case "$input" in
- on) error "$reason"; return 1;;
- auto)
- _RET="false";
- debug 1 "partition update disabled: $reason"
- return 0;;
- force)
- _RET="true"
- error "WARNING: ptupdate forced on even though: $reason"
- return 0;;
- esac
- error "unknown input '$input'";
- return 1;
-}
-
-pt_update() {
- local dev="$1" part="$2" update="${3:-$PT_UPDATE}"
- if ! $update; then
- return 0
- fi
- # partx only works on block devices (do not run on file)
- [ -b "$dev" ] || return 0
- partx --update "$part" "$dev"
-}
-
-has_cmd() {
- command -v "${1}" >/dev/null 2>&1
-}
-
-resize_sgdisk_gpt() {
- resize_sgdisk gpt
-}
-
-resize_sgdisk_dos() {
- fail "unable to resize dos label with sgdisk"
-}
-
-resize_sfdisk_gpt() {
- resize_sfdisk gpt
-}
-
-resize_sfdisk_dos() {
- resize_sfdisk dos
-}
-
-get_table_format() {
- local out="" disk="$1"
- if has_cmd blkid && out=$(blkid -o value -s PTTYPE "$disk") &&
- [ "$out" = "dos" -o "$out" = "gpt" ]; then
- _RET="$out"
- return
- fi
- _RET="dos"
- if [ ${SFDISK_VERSION} -lt ${SFDISK_2_26} ] &&
- out=$(sfdisk --id --force "$disk" 1 2>/dev/null); then
- if [ "$out" = "ee" ]; then
- _RET="gpt"
- else
- _RET="dos"
- fi
- return
- elif out=$(LANG=C sfdisk --list "$disk"); then
- out=$(echo "$out" | sed -e '/Disklabel type/!d' -e 's/.*: //')
- case "$out" in
- gpt|dos) _RET="$out";;
- *) error "WARN: unknown label $out";;
- esac
- fi
-}
-
-get_resizer() {
- local format="$1" user=${2:-"auto"}
-
- case "$user" in
- sgdisk) _RET="resize_sgdisk_$format"; return;;
- sfdisk) _RET="resize_sfdisk_$format"; return;;
- auto) :;;
- *) error "unexpected input: '$user'";;
- esac
-
- if [ "$format" = "dos" ]; then
- _RET="resize_sfdisk_dos"
- return 0
- fi
-
- if [ "${SFDISK_VERSION}" -ge ${SFDISK_2_26} ]; then
- _RET="resize_sfdisk_gpt"
- elif has_cmd sgdisk; then
- _RET="resize_sgdisk_$format"
- else
- error "no tools available to resize disk with '$format'"
- return 1
- fi
- return 0
-}
-
-pt_update="auto"
-resizer=${GROWPART_RESIZER:-"auto"}
-while [ $# -ne 0 ]; do
- cur=${1}
- next=${2}
- case "$cur" in
- -h|--help)
- Usage
- exit 0
- ;;
- --fudge)
- FUDGE=${next}
- shift
- ;;
- -N|--dry-run)
- DRY_RUN=1
- ;;
- -u|--update|--update=*)
- if [ "${cur#--update=}" != "$cur" ]; then
- next="${cur#--update=}"
- else
- shift
- fi
- case "$next" in
- off|auto|force|on) pt_update=$next;;
- *) fail "unknown --update option: $next";;
- esac
- ;;
- -v|--verbose)
- VERBOSITY=$(($VERBOSITY+1))
- ;;
- --)
- shift
- break
- ;;
- -*)
- fail "unknown option ${cur}"
- ;;
- *)
- if [ -z "${DISK}" ]; then
- DISK=${cur}
- else
- [ -z "${PART}" ] || fail "confused by arg ${cur}"
- PART=${cur}
- fi
- ;;
- esac
- shift
-done
-
-[ -n "${DISK}" ] || bad_Usage "must supply disk and partition-number"
-[ -n "${PART}" ] || bad_Usage "must supply partition-number"
-
-has_cmd "sfdisk" || fail "sfdisk not found"
-get_sfdisk_version || fail
-
-[ -e "${DISK}" ] || fail "${DISK}: does not exist"
-
-[ "${PART#*[!0-9]}" = "${PART}" ] || fail "partition-number must be a number"
-
-verify_ptupdate "$pt_update" || fail
-PT_UPDATE=$_RET
-
-debug 1 "update-partition set to $PT_UPDATE"
-
-mktemp_d && TEMP_D="${_RET}" || fail "failed to make temp dir"
-trap cleanup 0 # EXIT - some shells may not like 'EXIT' but are ok with 0
-
-# get the ID of the first partition to determine if it's MBR or GPT
-get_table_format "$DISK" || fail
-format=$_RET
-get_resizer "$format" "$resizer" ||
- fail "failed to get a resizer for id '$id'"
-resizer=$_RET
-
-debug 1 "resizing $PART on $DISK using $resizer"
-"$resizer"
-
-# vi: ts=4 noexpandtab
diff --git a/app-emulation/cloud-init/metadata.xml b/app-emulation/cloud-init/metadata.xml
index 1c24877120..213cd2f0e4 100644
--- a/app-emulation/cloud-init/metadata.xml
+++ b/app-emulation/cloud-init/metadata.xml
@@ -1,15 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>python</herd>
- <maintainer>
+ <maintainer type="person">
<email>prometheanfire@gentoo.org</email>
<name>Matthew Thode</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>alunduil@gentoo.org</email>
<name>Alex Brandt</name>
</maintainer>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
<longdescription lang="en">
Package provides configuration and customization of cloud instance.
</longdescription>
diff --git a/app-emulation/coldfire/metadata.xml b/app-emulation/coldfire/metadata.xml
index 9211408084..71b1461e11 100644
--- a/app-emulation/coldfire/metadata.xml
+++ b/app-emulation/coldfire/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>dev-embedded</herd>
+<maintainer type="project">
+ <email>embedded@gentoo.org</email>
+ <name>Embedded Gentoo</name>
+</maintainer>
</pkgmetadata>
diff --git a/app-emulation/crossover-bin/Manifest b/app-emulation/crossover-bin/Manifest
index 7e9b29dbdd..6cf6a29632 100644
--- a/app-emulation/crossover-bin/Manifest
+++ b/app-emulation/crossover-bin/Manifest
@@ -8,3 +8,5 @@ DIST install-crossover-13.1.3.bin 58768110 SHA256 3d16dbecec584a1d6155ddda6f62a5
DIST install-crossover-13.2.0.bin 64625581 SHA256 ef29ca8ca275e4fb6b33337aadc2d3ee92b4dc7d582fab7d5cff5c775d23c75d SHA512 1f582eeca8db02c15d98d519b2d24f65b8dcddd90ff270915a4e6dbd24e135b074c5a20dd824c3d8c8f35cef79610c02423b5558db205a6e80630f69191e051b WHIRLPOOL f8ce0628d961a567291981a238f03da6f5f7554d4d971a8b27fc34b67969a7061032b84325df1a8e38313415dcda3dab98acd6833b396e4f46a65427c9dc8c3e
DIST install-crossover-14.0.3.bin 68080015 SHA256 23f67221e4047b50f3250b29fae51086cce93529956d3885d149d5abddcc83a2 SHA512 86855e112f5b5d7621e0d4c644abe570de0270e678dc9666482025c948733de02c66fcf67999079a8ba99537695b36d4fb61aee90a59c319edad5fb477a0f902 WHIRLPOOL a0f26d06d2bb81063bcf78a474b9bf4732e9314fd886f430c1141bfce26ae09c297ff79087e5834474d87aa772a1f08a44791d24a3a83ff2baf24969885fe9b8
DIST install-crossover-14.1.4.bin 68463678 SHA256 9e51823fca911916755b1edca8673c69df4c6f3607b170d9b01e9d9143b4d4c7 SHA512 2078d9e8fc10c526085aef0bfa0cedbcc1a96ec59ade934ea10e7f10062f1a58f5647e9aed59653d4a1253699a08e9ef6f01548010e960af24d0d3546549fb91 WHIRLPOOL a9714f15de43acb2ab6fed91bb35ffdec832dc8fef0b9f75ed394ca18af8552b797b795fdc5bc108c7cf27ca432f932b1f4fe6b4d04d4d52dfaa06bfef083aca
+DIST install-crossover-15.0.0.bin 80995834 SHA256 ac538e5568674e23f515b6725bb4cb8b17c516bc910c875d3ac7e45d69f7aff4 SHA512 597262b760c7cfc3c42cdb0b846802c6c47d4fcd5af06b53d0c63c80e4890e14af8ff0eaaac74a08f4f5d55e166a480d199b185efe685f7c42abca3d62fc2a0d WHIRLPOOL 18f5eb531ad32d27e4e2bea1f205593906ab0bcbc022f0963fd237101b26cb796f7f771ab5b7d57b126aea93627390fc55075611551109ad1ad98769a2711951
+DIST install-crossover-15.0.1.bin 81027541 SHA256 ccb222775032711e6d7f3ca5994ebc51cb168cdb9e2599d186b3fb1336ac20fb SHA512 a35188ccebeee8d456e73fdcbb8e8d4f0aff41bb89d92767d2e2e78e7cb25c8e48a150393c1c9abeb9760fbc873314e301c0a364ba27acfe08e0980bb5eedb03 WHIRLPOOL 32396d7be78b6ca975d0eadb753f00c060f731eefee00bd4fbefcf4f96488104f9396632648a14af52976b75bd924325b68c3e7d79da6676bba5207aac5fd045
diff --git a/app-emulation/crossover-bin/crossover-bin-15.0.0.ebuild b/app-emulation/crossover-bin/crossover-bin-15.0.0.ebuild
new file mode 100644
index 0000000000..9f37115c10
--- /dev/null
+++ b/app-emulation/crossover-bin/crossover-bin-15.0.0.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit python-single-r1 unpacker
+
+DESCRIPTION="Commercial version of app-emulation/wine with paid support."
+HOMEPAGE="http://www.codeweavers.com/products/crossover/"
+SRC_URI="https://media.codeweavers.com/pub/crossover/cxlinux/demo/install-crossover-${PV}.bin"
+
+LICENSE="CROSSOVER-3"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="+capi +cups doc +gphoto2 +gsm +jpeg +lcms +ldap +mp3 +nls +openal +opengl +png +scanner +ssl +v4l"
+RESTRICT="bindist test"
+QA_FLAGS_IGNORED="opt/cxoffice/.*"
+QA_PRESTRIPPED="opt/cxoffice/lib/.*
+ opt/cxoffice/bin/cxburner
+ opt/cxoffice/bin/cxntlm_auth
+ opt/cxoffice/bin/wineserver
+ opt/cxoffice/bin/unrar
+ opt/cxoffice/bin/wine-preloader
+ opt/cxoffice/bin/cxdiag
+ opt/cxoffice/bin/cxgettext
+ opt/cxoffice/bin/wineloader
+ "
+S="${WORKDIR}"
+
+DEPEND="dev-lang/perl
+ app-arch/unzip
+ ${PYTHON_DEPS}"
+
+RDEPEND="${DEPEND}
+ !prefix? ( sys-libs/glibc )
+ >=dev-python/pygtk-2.10[${PYTHON_USEDEP}]
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-util/desktop-file-utils
+ !app-emulation/crossover-office-pro-bin
+ !app-emulation/crossover-office-bin
+ capi? ( net-dialup/capi4k-utils )
+ cups? ( net-print/cups[abi_x86_32(-)] )
+ gsm? ( media-sound/gsm[abi_x86_32(-)] )
+ jpeg? ( virtual/jpeg[abi_x86_32(-)] )
+ lcms? ( media-libs/lcms:2 )
+ ldap? ( net-nds/openldap[abi_x86_32(-)] )
+ gphoto2? ( media-libs/libgphoto2[abi_x86_32(-)] )
+ mp3? ( >=media-sound/mpg123-1.5.0[abi_x86_32(-)] )
+ nls? ( sys-devel/gettext[abi_x86_32(-)] )
+ openal? ( media-libs/openal[abi_x86_32(-)] )
+ opengl? (
+ virtual/glu[abi_x86_32(-)]
+ virtual/opengl[abi_x86_32(-)]
+ )
+ png? ( media-libs/libpng:0[abi_x86_32(-)] )
+ scanner? ( media-gfx/sane-backends[abi_x86_32(-)] )
+ ssl? ( dev-libs/openssl:0[abi_x86_32(-)] )
+ v4l? ( media-libs/libv4l[abi_x86_32(-)] )
+ media-libs/alsa-lib[abi_x86_32(-)]
+ >=media-libs/freetype-2.0.0[abi_x86_32(-)]
+ media-libs/mesa[abi_x86_32(-)]
+ sys-apps/util-linux[abi_x86_32(-)]
+ sys-libs/zlib[abi_x86_32(-)]
+ x11-libs/libICE[abi_x86_32(-)]
+ x11-libs/libSM[abi_x86_32(-)]
+ x11-libs/libX11[abi_x86_32(-)]
+ x11-libs/libXau[abi_x86_32(-)]
+ x11-libs/libXdmcp[abi_x86_32(-)]
+ x11-libs/libXext[abi_x86_32(-)]
+ x11-libs/libXi[abi_x86_32(-)]
+ x11-libs/libXrandr[abi_x86_32(-)]
+ x11-libs/libXxf86vm[abi_x86_32(-)]
+ x11-libs/libxcb[abi_x86_32(-)]"
+
+pkg_nofetch() {
+ einfo "Please visit ${HOMEPAGE}"
+ einfo "and place ${A} in ${DISTDIR}"
+}
+
+src_unpack() {
+ # self unpacking zip archive; unzip warns about the exe stuff
+ unpack_zip ${A}
+}
+
+src_prepare() {
+ python_fix_shebang .
+
+ sed -i \
+ -e "s:\"\$xdgdir/icons/hicolor/\$size/apps\":\"${ED}/\$xdgdir/icons/hicolor/\$size/apps\":" \
+ "${S}/lib/perl/CXMenu.pm"
+ sed -i \
+ -e "s:\"\(.*\)/applications:\"${ED}/\1/applications:" \
+ -e "s:\"\(.*\)/desktop-directories:\"${ED}/\1/desktop-directories:" \
+ "${S}/lib/perl/CXMenuXDG.pm"
+
+ # Remove unnecessary files
+ rm -r license.txt guis/ || die "Could not remove files"
+ use doc || rm -r doc/ || die "Could not remove files"
+}
+
+src_install() {
+ # Install crossover symlink, bug #476314
+ dosym /opt/cxoffice/bin/crossover /opt/bin/crossover
+
+ # Install documentation
+ dodoc README changelog.txt
+ rm README changelog.txt || die "Could not remove README and changelog.txt"
+
+ # Install files
+ dodir /opt/cxoffice
+ cp -r ./* "${ED}opt/cxoffice" \
+ || die "Could not install into ${ED}opt/cxoffice"
+
+ # Install configuration file
+ insinto /opt/cxoffice/etc
+ doins share/crossover/data/cxoffice.conf
+
+ # Install menus
+ # XXX: locate_gui.sh automatically detects *-application-merged directories
+ # This means what we install will vary depending on the contents of
+ # /etc/xdg, which is a QA violation. It is not clear how to resolve this.
+ XDG_DATA_DIRS="/usr/share" XDG_CONFIG_HOME="/etc/xdg" \
+ "${ED}opt/cxoffice/bin/cxmenu" --destdir="${ED}" --crossover --install \
+ || die "Could not install menus"
+
+ rm "${ED}usr/share/applications/"*"Uninstall CrossOver Linux.desktop"
+ sed -i -e "s:${ED}:/:" "${ED}usr/share/applications/"*.desktop
+ sed -i -e "s:${ED}/::" \
+ "${ED}/opt/cxoffice/lib/perl/CXMenu.pm" \
+ "${ED}/opt/cxoffice/lib/perl/CXMenuXDG.pm"
+}
+
+pkg_postinst() {
+ einfo "${P} is open source software with the exception of the GUI."
+ einfo "Source code can be obtained from:"
+ einfo
+ einfo "https://media.codeweavers.com/pub/crossover/source/crossover-sources-${PV}.tar.gz"
+}
diff --git a/app-emulation/crossover-bin/crossover-bin-15.0.1.ebuild b/app-emulation/crossover-bin/crossover-bin-15.0.1.ebuild
new file mode 100644
index 0000000000..38f3e28206
--- /dev/null
+++ b/app-emulation/crossover-bin/crossover-bin-15.0.1.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit python-single-r1 unpacker
+
+DESCRIPTION="Commercial version of app-emulation/wine with paid support."
+HOMEPAGE="http://www.codeweavers.com/products/crossover/"
+SRC_URI="https://media.codeweavers.com/pub/crossover/cxlinux/demo/install-crossover-${PV}.bin"
+
+LICENSE="CROSSOVER-3"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="+capi +cups doc +gphoto2 +gsm +jpeg +lcms +ldap +mp3 +nls +openal +opengl +png +scanner +ssl +v4l"
+RESTRICT="bindist test"
+QA_FLAGS_IGNORED="opt/cxoffice/.*"
+QA_PRESTRIPPED="opt/cxoffice/lib/.*
+ opt/cxoffice/bin/cxburner
+ opt/cxoffice/bin/cxntlm_auth
+ opt/cxoffice/bin/wineserver
+ opt/cxoffice/bin/unrar
+ opt/cxoffice/bin/wine-preloader
+ opt/cxoffice/bin/cxdiag
+ opt/cxoffice/bin/cxgettext
+ opt/cxoffice/bin/wineloader
+ "
+S="${WORKDIR}"
+
+DEPEND="dev-lang/perl
+ app-arch/unzip
+ ${PYTHON_DEPS}"
+
+RDEPEND="${DEPEND}
+ !prefix? ( sys-libs/glibc )
+ >=dev-python/pygtk-2.10[${PYTHON_USEDEP}]
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-util/desktop-file-utils
+ !app-emulation/crossover-office-pro-bin
+ !app-emulation/crossover-office-bin
+ capi? ( net-dialup/capi4k-utils )
+ cups? ( net-print/cups[abi_x86_32(-)] )
+ gsm? ( media-sound/gsm[abi_x86_32(-)] )
+ jpeg? ( virtual/jpeg[abi_x86_32(-)] )
+ lcms? ( media-libs/lcms:2 )
+ ldap? ( net-nds/openldap[abi_x86_32(-)] )
+ gphoto2? ( media-libs/libgphoto2[abi_x86_32(-)] )
+ mp3? ( >=media-sound/mpg123-1.5.0[abi_x86_32(-)] )
+ nls? ( sys-devel/gettext[abi_x86_32(-)] )
+ openal? ( media-libs/openal[abi_x86_32(-)] )
+ opengl? (
+ virtual/glu[abi_x86_32(-)]
+ virtual/opengl[abi_x86_32(-)]
+ )
+ png? ( media-libs/libpng:0[abi_x86_32(-)] )
+ scanner? ( media-gfx/sane-backends[abi_x86_32(-)] )
+ ssl? ( dev-libs/openssl:0[abi_x86_32(-)] )
+ v4l? ( media-libs/libv4l[abi_x86_32(-)] )
+ media-libs/alsa-lib[abi_x86_32(-)]
+ >=media-libs/freetype-2.0.0[abi_x86_32(-)]
+ media-libs/mesa[abi_x86_32(-)]
+ sys-apps/util-linux[abi_x86_32(-)]
+ sys-libs/zlib[abi_x86_32(-)]
+ x11-libs/libICE[abi_x86_32(-)]
+ x11-libs/libSM[abi_x86_32(-)]
+ x11-libs/libX11[abi_x86_32(-)]
+ x11-libs/libXau[abi_x86_32(-)]
+ x11-libs/libXdmcp[abi_x86_32(-)]
+ x11-libs/libXext[abi_x86_32(-)]
+ x11-libs/libXi[abi_x86_32(-)]
+ x11-libs/libXrandr[abi_x86_32(-)]
+ x11-libs/libXxf86vm[abi_x86_32(-)]
+ x11-libs/libxcb[abi_x86_32(-)]"
+
+pkg_nofetch() {
+ einfo "Please visit ${HOMEPAGE}"
+ einfo "and place ${A} in ${DISTDIR}"
+}
+
+src_unpack() {
+ # self unpacking zip archive; unzip warns about the exe stuff
+ unpack_zip ${A}
+}
+
+src_prepare() {
+ python_fix_shebang .
+
+ sed -i \
+ -e "s:xdg_install_icons(:&\"${ED}\".:" \
+ -e "s:\"\(.*\)/applications:\"${ED}\1/applications:" \
+ -e "s:\"\(.*\)/desktop-directories:\"${ED}\1/desktop-directories:" \
+ "${S}/lib/perl/CXMenuXDG.pm"
+
+ # Remove unnecessary files
+ rm -r license.txt guis/ || die "Could not remove files"
+ use doc || rm -r doc/ || die "Could not remove files"
+}
+
+src_install() {
+ # Install crossover symlink, bug #476314
+ dosym /opt/cxoffice/bin/crossover /opt/bin/crossover
+
+ # Install documentation
+ dodoc README changelog.txt
+ rm README changelog.txt || die "Could not remove README and changelog.txt"
+
+ # Install files
+ dodir /opt/cxoffice
+ #cp -r ./* "${ED}opt/cxoffice" \
+ find . | cpio -dumpl "${ED}/opt/cxoffice" 2>/dev/null \
+ || die "Could not install into ${ED}opt/cxoffice"
+
+ # Install configuration file
+ insinto /opt/cxoffice/etc
+ doins share/crossover/data/cxoffice.conf
+
+ # Install menus
+ # XXX: locate_gui.sh automatically detects *-application-merged directories
+ # This means what we install will vary depending on the contents of
+ # /etc/xdg, which is a QA violation. It is not clear how to resolve this.
+ XDG_DATA_DIRS="/usr/share" XDG_CONFIG_HOME="/etc/xdg" \
+ "${ED}opt/cxoffice/bin/cxmenu" --destdir="${ED}" --crossover --install \
+ || die "Could not install menus"
+
+ rm "${ED}usr/share/applications/"*"Uninstall CrossOver Linux.desktop" \
+ "${ED}opt/cxoffice/support/desktopdata/cxoffice-0/cxmenu/Launchers/StartMenu/Uninstall CrossOver Linux.desktop"
+ sed -i \
+ -e "s:\"${ED}\".::" \
+ -e "s:${ED}::" \
+ "${ED}/opt/cxoffice/lib/perl/CXMenuXDG.pm"
+ sed -i -e "s:${ED}:/:" \
+ "${ED}/opt/cxoffice/support/desktopdata/cxoffice-0/cxmenu/Launchers/StartMenu/"*.desktop \
+ "${ED}usr/share/applications/"*"CrossOver.desktop"
+}
+
+pkg_postinst() {
+ einfo "${P} is open source software with the exception of the GUI."
+ einfo "Source code can be obtained from:"
+ einfo
+ einfo "https://media.codeweavers.com/pub/crossover/source/crossover-sources-${PV}.tar.gz"
+}
diff --git a/app-emulation/crossover-bin/metadata.xml b/app-emulation/crossover-bin/metadata.xml
index 76a1d1fff7..b1e0869e3e 100644
--- a/app-emulation/crossover-bin/metadata.xml
+++ b/app-emulation/crossover-bin/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>ryao@gentoo.org</email>
<name>Richard Yao</name>
</maintainer>
<use>
- <flag name='capi'>Enable ISDN support via CAPI</flag>
+ <flag name="capi">Enable ISDN support via CAPI</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/crossover-office-bin/metadata.xml b/app-emulation/crossover-office-bin/metadata.xml
index 27f54c9973..871916a5cc 100644
--- a/app-emulation/crossover-office-bin/metadata.xml
+++ b/app-emulation/crossover-office-bin/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>wine</herd>
+<maintainer type="project">
+ <email>wine@gentoo.org</email>
+ <name>Wine</name>
+</maintainer>
</pkgmetadata>
diff --git a/app-emulation/crossover-office-pro-bin/metadata.xml b/app-emulation/crossover-office-pro-bin/metadata.xml
index 27f54c9973..871916a5cc 100644
--- a/app-emulation/crossover-office-pro-bin/metadata.xml
+++ b/app-emulation/crossover-office-pro-bin/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>wine</herd>
+<maintainer type="project">
+ <email>wine@gentoo.org</email>
+ <name>Wine</name>
+</maintainer>
</pkgmetadata>
diff --git a/app-emulation/dinero/metadata.xml b/app-emulation/dinero/metadata.xml
index d9cd2cad66..097975e3ad 100644
--- a/app-emulation/dinero/metadata.xml
+++ b/app-emulation/dinero/metadata.xml
@@ -1,7 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer>
-<email>maintainer-needed@gentoo.org</email>
-</maintainer>
</pkgmetadata>
diff --git a/app-emulation/dlx/metadata.xml b/app-emulation/dlx/metadata.xml
index 59e2b8f78c..097975e3ad 100644
--- a/app-emulation/dlx/metadata.xml
+++ b/app-emulation/dlx/metadata.xml
@@ -1,8 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- <name>Default assignee for orphaned packages</name>
- </maintainer>
</pkgmetadata>
diff --git a/app-emulation/docker-compose/Manifest b/app-emulation/docker-compose/Manifest
index a2bae4afaf..488a7f4797 100644
--- a/app-emulation/docker-compose/Manifest
+++ b/app-emulation/docker-compose/Manifest
@@ -1,2 +1,3 @@
-DIST docker-compose-1.2.0.tar.gz 57150 SHA256 46ef3c5cb7dd79fa7fd1d5fc5ec5be6a5c634192bc09c604c0ea75adb89cb652 SHA512 d13f6d6d22979dbc4554c003e611097627e2273f06dd13a1c666c1ba138288597ebef08f1beaf6d342721391cb49ad5ce9ae2ff03367a041fc0c53fbb62c9ac4 WHIRLPOOL c7bb3e14a4c2788eb49241ce02dcaed5e49fe60652ca1a51d13e1712f946046415f5397d5bf892b5e0451059a4aee1b156ee7bdfdf64a22d000caae7b17254c0
DIST docker-compose-1.4.0.tar.gz 79532 SHA256 2748cc8dd0829b44f0f686e36683cab58e1a4bc869442a04508504d2f62d0337 SHA512 470442aa78ddb24e8b9287953031e17a96a89780edd3a85955c923ffe00f4bfe655412dc15422437121593d7e2899f0847813d3716fc9ed576f93e6455cb868b WHIRLPOOL 9dc6731dad3df6422ec1e1b66049c8e9f04068b2fc2c8180da44220c1fbedc4919dfe17475cd539c3f33a079f3d04f875baaf769a7bc0875de48cf622670dc4b
+DIST docker-compose-1.5.1.tar.gz 104331 SHA256 df5e885fd758a2b5983574d6718b5a07f92c7166c5706dc6ff88687d27bfaf55 SHA512 be6678c27b73516e14bf80255e52bde72517bd65a91f1be2393a15f0f0b87ff9ddd785e22016a9a5e1a68d5e6b9be395a96d60b7bc862f24647adf81752b9baa WHIRLPOOL 0b1312cb0d99a7cf02d8a88a7b00f3105f497c1cfa0ac3b32b369cd3984f2b1eaa8ea2c9e2e5a70ada3a371fb8a774245b75eaf5a7665170398df5f703793311
+DIST docker-compose-1.5.2.tar.gz 106583 SHA256 79aa7e2e6ef9ab1936f8777476ffd4bb329875ec3d3664d239896d2f2a3c4f4f SHA512 be671503bbb91fdb5fdf9ff593f28d290d1c65738d055629d8252cf4c4eea7f5931a1e1d6d7a0b27640166671ecb095b413cb694b768437be3ec207e059f4ccc WHIRLPOOL bb12df93739329b9577db41a317a22976dc97ca1d1d3dd72e2ff4b8c245caf106f1aab466d42ffa7b9e6a7bf6f628f8977d2700460591051dade074535f0175e
diff --git a/app-emulation/docker-compose/docker-compose-1.2.0-r1.ebuild b/app-emulation/docker-compose/docker-compose-1.5.1.ebuild
index 45293cc09b..e20684f266 100644
--- a/app-emulation/docker-compose/docker-compose-1.2.0-r1.ebuild
+++ b/app-emulation/docker-compose/docker-compose-1.5.1.ebuild
@@ -18,45 +18,45 @@ IUSE="test"
CDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
- >=dev-python/dockerpty-0.3.2[${PYTHON_USEDEP}]
+ >=dev-python/dockerpty-0.3.4[${PYTHON_USEDEP}]
<dev-python/dockerpty-0.4[${PYTHON_USEDEP}]
- >=dev-python/docker-py-1.0.0[${PYTHON_USEDEP}]
- <dev-python/docker-py-1.2[${PYTHON_USEDEP}]
+ >=dev-python/docker-py-1.5.0[${PYTHON_USEDEP}]
+ <dev-python/docker-py-2[${PYTHON_USEDEP}]
>=dev-python/docopt-0.6.1[${PYTHON_USEDEP}]
<dev-python/docopt-0.7[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-2.5.1[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-3[${PYTHON_USEDEP}]
>=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
<dev-python/pyyaml-4[${PYTHON_USEDEP}]
- >=dev-python/requests-2.2.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.6.1[${PYTHON_USEDEP}]
+ <dev-python/requests-2.8[${PYTHON_USEDEP}]
>=dev-python/six-1.3.0[${PYTHON_USEDEP}]
<dev-python/six-2[${PYTHON_USEDEP}]
>=dev-python/texttable-0.8.1[${PYTHON_USEDEP}]
<dev-python/texttable-0.9[${PYTHON_USEDEP}]
- >=dev-python/websocket-client-0.11.0[${PYTHON_USEDEP}]
+ >=dev-python/websocket-client-0.32.0[${PYTHON_USEDEP}]
<dev-python/websocket-client-1.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '>=dev-python/enum34-1.0.4[${PYTHON_USEDEP}]' 'python2_7' )
+ $(python_gen_cond_dep '<dev-python/enum34-2[${PYTHON_USEDEP}]' 'python2_7' )
"
DEPEND="
test? (
${CDEPEND}
- >=dev-python/mock-1.0.1[${PYTHON_USEDEP}]
- dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '>=dev-python/mock-1.0.1[${PYTHON_USEDEP}]' 'python2_7' )
)
"
RDEPEND="${CDEPEND}"
-python_prepare_all() {
- local PATCHES=(
- "${FILESDIR}"/requests-requirements.patch
- )
-
- distutils-r1_python_prepare_all
-}
-
python_test() {
- nosetests tests/unit || die "tests failed under ${EPYTHON}"
+ ${PYTHON} -m pytest tests/unit || die "tests failed under ${EPYTHON}"
}
python_install_all() {
newbashcomp contrib/completion/bash/docker-compose ${PN}
+ insinto /usr/share/zsh/site-functions
+ doins contrib/completion/zsh/*
+
distutils-r1_python_install_all
}
diff --git a/app-emulation/docker-compose/docker-compose-1.5.2.ebuild b/app-emulation/docker-compose/docker-compose-1.5.2.ebuild
new file mode 100644
index 0000000000..e20684f266
--- /dev/null
+++ b/app-emulation/docker-compose/docker-compose-1.5.2.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit bash-completion-r1 distutils-r1
+
+DESCRIPTION="Multi-container orchestration for Docker"
+HOMEPAGE="https://www.docker.com/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+CDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ >=dev-python/dockerpty-0.3.4[${PYTHON_USEDEP}]
+ <dev-python/dockerpty-0.4[${PYTHON_USEDEP}]
+ >=dev-python/docker-py-1.5.0[${PYTHON_USEDEP}]
+ <dev-python/docker-py-2[${PYTHON_USEDEP}]
+ >=dev-python/docopt-0.6.1[${PYTHON_USEDEP}]
+ <dev-python/docopt-0.7[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-2.5.1[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-3[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
+ <dev-python/pyyaml-4[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.6.1[${PYTHON_USEDEP}]
+ <dev-python/requests-2.8[${PYTHON_USEDEP}]
+ >=dev-python/six-1.3.0[${PYTHON_USEDEP}]
+ <dev-python/six-2[${PYTHON_USEDEP}]
+ >=dev-python/texttable-0.8.1[${PYTHON_USEDEP}]
+ <dev-python/texttable-0.9[${PYTHON_USEDEP}]
+ >=dev-python/websocket-client-0.32.0[${PYTHON_USEDEP}]
+ <dev-python/websocket-client-1.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '>=dev-python/enum34-1.0.4[${PYTHON_USEDEP}]' 'python2_7' )
+ $(python_gen_cond_dep '<dev-python/enum34-2[${PYTHON_USEDEP}]' 'python2_7' )
+"
+DEPEND="
+ test? (
+ ${CDEPEND}
+ dev-python/pytest[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '>=dev-python/mock-1.0.1[${PYTHON_USEDEP}]' 'python2_7' )
+ )
+"
+RDEPEND="${CDEPEND}"
+
+python_test() {
+ ${PYTHON} -m pytest tests/unit || die "tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ newbashcomp contrib/completion/bash/docker-compose ${PN}
+
+ insinto /usr/share/zsh/site-functions
+ doins contrib/completion/zsh/*
+
+ distutils-r1_python_install_all
+}
diff --git a/app-emulation/docker-compose/metadata.xml b/app-emulation/docker-compose/metadata.xml
index c78064c4e7..74cde27ef4 100644
--- a/app-emulation/docker-compose/metadata.xml
+++ b/app-emulation/docker-compose/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>alunduil@gentoo.org</email>
<name>Alex Brandt</name>
</maintainer>
diff --git a/app-emulation/docker-machine/Manifest b/app-emulation/docker-machine/Manifest
index 7e184a71d9..1ef894c1f8 100644
--- a/app-emulation/docker-machine/Manifest
+++ b/app-emulation/docker-machine/Manifest
@@ -1 +1,3 @@
DIST docker-machine-0.4.1.tar.gz 1620966 SHA256 f089657b2de7a3ce15374e69be3f654b0866f75eb077ca363f8a5933ccf51cda SHA512 29b21c075c7964cce00cda484bb31768988c95d6e1a9c4aa625619bead49aebe5b756fdaee7be07baa469c2a675538e69c1e2d3a33cfd32c0c8b79dd4dc8b6b7 WHIRLPOOL 8f200b43f4d40b170646cd3b96b8dac7ae56014641d30ed82ab53eb38be537a408a45fcef7d1f97eba632c86f471516ca3c7f19c121072a72b19847b9d04fe82
+DIST docker-machine-0.5.2.tar.gz 1452215 SHA256 2dd6ed03e546a7c733ec6964b47b85b6d328e830ebca318240f6ddfcaed6f98a SHA512 4a724cc4ad867a2b3b79bd0006b554ae072c142daa7ca29c6430bb6614bc6b971eeca79d93cae98b8f38d97b5a1a5e872f9015cc09200b69551732998b1ba601 WHIRLPOOL 249d9e2456ad79867a0c380c549704b88275a177a78ae610ae207bed5189f20f6279e1f604dc10cbf9fc1feb75bff7460d2eb4a39aaabcc427e8bbaa419e7940
+DIST docker-machine-0.5.4.tar.gz 1586940 SHA256 050640764c9f55e76b9475b04ebd9d6069e63cf7e2b54c2d07eda9254722d90e SHA512 47fcee2d236154be7ca57646620f91b09127918f36d239e79e9381b219791eb67a635210d7006eb98ff1c6271aacbf4b9d5a7dfce8a02b6e392745c954d0dd48 WHIRLPOOL a9cdb5e2c9767e481b7e704cb1492ea0e95cbc9cadf59886dbc07bba13864718e19f2d278412662d503d71f554dfa302d56de4129d5c2f09f88a1d85b421477f
diff --git a/app-emulation/docker-machine/docker-machine-0.5.2.ebuild b/app-emulation/docker-machine/docker-machine-0.5.2.ebuild
new file mode 100644
index 0000000000..22922f6472
--- /dev/null
+++ b/app-emulation/docker-machine/docker-machine-0.5.2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGO_PN=github.com/docker/machine/...
+
+if [[ ${PV} = *9999* ]]; then
+ inherit golang-vcs
+else
+ KEYWORDS="~amd64"
+ EGIT_COMMIT="v${PV}"
+ SRC_URI="https://${EGO_PN%/*}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+ inherit golang-vcs-snapshot
+fi
+inherit golang-build
+
+DESCRIPTION="Machine management for a container-centric world"
+HOMEPAGE="https://docs.docker.com/machine/ "
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+RESTRICT="test"
+DEPEND=">=dev-lang/go-1.5:="
+RDEPEND=""
+S=${WORKDIR}/${P}/src/${EGO_PN%/*}
+
+src_prepare() {
+ # don't pre-strip binaries
+ sed -e 's|\(GO_LDFLAGS := $(GO_LDFLAGS) -w\) -s|\1|' -i mk/main.mk ||die
+}
+
+src_compile() {
+ GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" emake build || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc CHANGELOG.md CONTRIBUTING.md README.md ROADMAP.md
+}
diff --git a/app-emulation/docker-machine/docker-machine-0.5.4.ebuild b/app-emulation/docker-machine/docker-machine-0.5.4.ebuild
new file mode 100644
index 0000000000..22922f6472
--- /dev/null
+++ b/app-emulation/docker-machine/docker-machine-0.5.4.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGO_PN=github.com/docker/machine/...
+
+if [[ ${PV} = *9999* ]]; then
+ inherit golang-vcs
+else
+ KEYWORDS="~amd64"
+ EGIT_COMMIT="v${PV}"
+ SRC_URI="https://${EGO_PN%/*}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+ inherit golang-vcs-snapshot
+fi
+inherit golang-build
+
+DESCRIPTION="Machine management for a container-centric world"
+HOMEPAGE="https://docs.docker.com/machine/ "
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+RESTRICT="test"
+DEPEND=">=dev-lang/go-1.5:="
+RDEPEND=""
+S=${WORKDIR}/${P}/src/${EGO_PN%/*}
+
+src_prepare() {
+ # don't pre-strip binaries
+ sed -e 's|\(GO_LDFLAGS := $(GO_LDFLAGS) -w\) -s|\1|' -i mk/main.mk ||die
+}
+
+src_compile() {
+ GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" emake build || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc CHANGELOG.md CONTRIBUTING.md README.md ROADMAP.md
+}
diff --git a/app-emulation/docker-machine/metadata.xml b/app-emulation/docker-machine/metadata.xml
index 77868d9465..8549b7fc81 100644
--- a/app-emulation/docker-machine/metadata.xml
+++ b/app-emulation/docker-machine/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>zmedico@gentoo.org</email>
</maintainer>
<upstream>
diff --git a/app-emulation/docker-swarm/Manifest b/app-emulation/docker-swarm/Manifest
index 8103b975b9..11b40d44ca 100644
--- a/app-emulation/docker-swarm/Manifest
+++ b/app-emulation/docker-swarm/Manifest
@@ -1 +1,2 @@
DIST docker-swarm-0.4.0.tar.gz 853254 SHA256 c3ee1a34ce86da4d31f652c871dfa120fc78d5cc835e391034d740e83b48f7a3 SHA512 ffaa5560d67cafcc97b091d87b7792d6a0bfed2fb08837854a8313175742d535ee671fe45c4b96eeb69bf613a31e2e37cf92524f93ad20fbfbd54647b956c9c1 WHIRLPOOL 3acb07bfbcf33d70dffbfff4c5028767f36d51bd3500143d50e109d062cfd0107dfdc9f45724d08f874d81e15429089ed18a664fd591c26d7f2ff14ea933f93a
+DIST docker-swarm-1.0.1.tar.gz 1187966 SHA256 33c6566af395affbf9861d1491613c48a70e6c61c532910cef2210be7b1323f7 SHA512 ed5e6a37cd0f5a816367cab451d21ac20183f8ce767a30dc3086f849da8e0d2662c9f9b7e56d826e7e8cf5d4ec3d9f1ee8c159cca294af7ec45c2c1a21eaaf80 WHIRLPOOL e17705a3bef077e5fed552131aa7cd4891934a537dc93bbb8dfe81bf2e82c281d7f74a5150febdde26f492cf5ad4eec8417aac9a7edc6e48812f4af3ed1b624e
diff --git a/app-emulation/docker-swarm/docker-swarm-1.0.1.ebuild b/app-emulation/docker-swarm/docker-swarm-1.0.1.ebuild
new file mode 100644
index 0000000000..bb35aaeb8a
--- /dev/null
+++ b/app-emulation/docker-swarm/docker-swarm-1.0.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGO_PN=github.com/docker/${PN##*-}/...
+
+if [[ ${PV} = *9999* ]]; then
+ inherit golang-vcs
+else
+ KEYWORDS="~amd64"
+ EGIT_COMMIT="v${PV}"
+ SRC_URI="https://${EGO_PN%/*}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+ inherit golang-vcs-snapshot
+fi
+inherit golang-build
+
+DESCRIPTION="A Docker-native clustering system"
+HOMEPAGE="https://docs.docker.com/${PN##*-}/"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+RESTRICT="test"
+DEPEND=""
+RDEPEND=""
+S=${WORKDIR}/${P}/src/${EGO_PN%/*}
+
+src_compile() {
+ GOPATH="${WORKDIR}/${P}:${S}/Godeps/_workspace:$(get_golibdir_gopath)" \
+ go build -v -work -x ${EGO_BUILD_FLAGS} -o ${PN} || die
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc CHANGELOG.md CONTRIBUTING.md README.md ROADMAP.md
+}
diff --git a/app-emulation/docker-swarm/metadata.xml b/app-emulation/docker-swarm/metadata.xml
index cdf127b3bd..127ef4728e 100644
--- a/app-emulation/docker-swarm/metadata.xml
+++ b/app-emulation/docker-swarm/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>zmedico@gentoo.org</email>
</maintainer>
<upstream>
diff --git a/app-emulation/docker/Manifest b/app-emulation/docker/Manifest
index c36b331997..57053680b5 100644
--- a/app-emulation/docker/Manifest
+++ b/app-emulation/docker/Manifest
@@ -4,3 +4,4 @@ DIST docker-1.7.1.tar.gz 6853527 SHA256 9cd26415d68a88d3cf576e7e78c2fe97f42af795
DIST docker-1.8.1.tar.gz 7562594 SHA256 7f22e88a994dc1bc143f87215de01ccd902450e6e8d747467d042a56db792b03 SHA512 6c015b236914da945d9e5bf2fed3e8a0a4d1e0c44ee02bf6edc04b2bb48b626353e37de45cd99c486b7ced70807e606d5eac2f1bdb3f8a7ba86cd9b71e4f5504 WHIRLPOOL 8d514fb309f0ddbb92bcf84f4d79320e18c26211536919bbed68888f5af77247f14f93239e5c890c5214cf0a9663acc48a45545a87227f0fe4bf8866ac7d7c5c
DIST docker-1.8.2.tar.gz 7563667 SHA256 457569ca8edd70293132789bfe51636f86cd8a46a60c6d02d5ee8600cf79f74b SHA512 c44f3cc0e0b7db463730620c0ec4b1aa1ea4a42f6528c891914318cb945aaa906e8eeaf91d32fb2d87a11ea1be428d1cf0de7d3ce4681c7db37390e4e1f79c67 WHIRLPOOL 2023f433ae25cc11fed6e4109a81dd949765daf342011f08a0ce8c1a8572ced595273ab78c45ac09abe895766c4443ff5a3219c5fce37725503bcdc39f49a947
DIST docker-1.9.0.tar.gz 7815144 SHA256 1c06baea61971a711f9e510800fb4de5e0d8a6560963cfdc891e0037b40dc974 SHA512 16c7fd900ff1122ccd62ce93b84209b026a165ff647cd4875e32c16251098c05e9e7de834cc6f27d164b5be168f8fd16323ec60593287a787f6fa8fcef144291 WHIRLPOOL 4031e3aa03f74afaf395a412668d7142f867e6279a9d0ac5334a6b1d8b3ad5cccc93961d0e1c63aa7fc46179555a6f106ce6e8acbec774d21a7af37a147a2ea0
+DIST docker-1.9.1.tar.gz 7824414 SHA256 ff0ad9647b756381758a16440a48e6f3c8615bbc903e53680569aac0b0a85157 SHA512 db9db1d5095b2afe2285265414c36026d2b42d5547301d7d462151b81553f33e242b403b566e7835727d51b77e3176c049f1e9f37f60b59b3c66b95403c97b9d WHIRLPOOL 93118093947c8a490a2007003e45974d7923afae4111c59e2f026787cf57f99b275be1be4a9e69b17cddf576f2d2af7fadcaa1f7ebc0ca08ce0e42a055ace22b
diff --git a/app-emulation/docker/docker-1.9.1.ebuild b/app-emulation/docker/docker-1.9.1.ebuild
new file mode 100644
index 0000000000..f490eac0e2
--- /dev/null
+++ b/app-emulation/docker/docker-1.9.1.ebuild
@@ -0,0 +1,265 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGO_PN="github.com/docker/docker"
+
+if [[ ${PV} = *9999* ]]; then
+ # Docker cannot be fetched via "go get", thanks to autogenerated code
+ EGIT_REPO_URI="https://${EGO_PN}.git"
+ EGIT_CHECKOUT_DIR="${WORKDIR}/${P}/src/${EGO_PN}"
+ inherit git-r3
+else
+ MY_PV="${PV/_/-}"
+ DOCKER_GITCOMMIT="a34a1d5"
+ EGIT_COMMIT="v${MY_PV}"
+ SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+ [ "$DOCKER_GITCOMMIT" ] || die "DOCKER_GITCOMMIT must be added manually for each bump!"
+ inherit golang-vcs-snapshot
+fi
+inherit bash-completion-r1 linux-info multilib systemd udev user
+
+DESCRIPTION="Docker complements kernel namespacing with a high-level API which operates at the process level"
+HOMEPAGE="https://dockerproject.org"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="apparmor aufs btrfs +device-mapper experimental overlay"
+
+# https://github.com/docker/docker/blob/master/hack/PACKAGERS.md#build-dependencies
+CDEPEND="
+ >=dev-db/sqlite-3.7.9:3
+ device-mapper? (
+ >=sys-fs/lvm2-2.02.89[thin]
+ )
+"
+
+DEPEND="
+ ${CDEPEND}
+
+ dev-go/go-md2man
+
+ btrfs? (
+ >=sys-fs/btrfs-progs-3.8
+ )
+"
+
+# https://github.com/docker/docker/blob/master/hack/PACKAGERS.md#runtime-dependencies
+# https://github.com/docker/docker/blob/master/hack/PACKAGERS.md#optional-dependencies
+RDEPEND="
+ ${CDEPEND}
+
+ !app-emulation/docker-bin
+ >=net-firewall/iptables-1.4
+ sys-process/procps
+ >=dev-vcs/git-1.7
+ >=app-arch/xz-utils-4.9
+
+ apparmor? (
+ sys-libs/libapparmor[static-libs]
+ )
+"
+
+RESTRICT="installsources strip"
+
+# see "contrib/check-config.sh" from upstream's sources
+CONFIG_CHECK="
+ ~NAMESPACES ~NET_NS ~PID_NS ~IPC_NS ~UTS_NS
+ ~DEVPTS_MULTIPLE_INSTANCES
+ ~CGROUPS ~CGROUP_CPUACCT ~CGROUP_DEVICE ~CGROUP_FREEZER ~CGROUP_SCHED ~CPUSETS ~MEMCG
+ ~MACVLAN ~VETH ~BRIDGE ~BRIDGE_NETFILTER
+ ~NF_NAT_IPV4 ~IP_NF_FILTER ~IP_NF_TARGET_MASQUERADE
+ ~NETFILTER_XT_MATCH_ADDRTYPE ~NETFILTER_XT_MATCH_CONNTRACK
+ ~NF_NAT ~NF_NAT_NEEDED
+
+ ~POSIX_MQUEUE
+
+ ~MEMCG_KMEM ~MEMCG_SWAP ~MEMCG_SWAP_ENABLED
+
+ ~BLK_CGROUP ~IOSCHED_CFQ
+ ~CGROUP_PERF
+ ~CGROUP_HUGETLB
+ ~NET_CLS_CGROUP
+ ~CFS_BANDWIDTH ~FAIR_GROUP_SCHED ~RT_GROUP_SCHED
+"
+
+ERROR_MEMCG_KMEM="CONFIG_MEMCG_KMEM: is optional"
+ERROR_MEMCG_SWAP="CONFIG_MEMCG_SWAP: is required if you wish to limit swap usage of containers"
+ERROR_RESOURCE_COUNTERS="CONFIG_RESOURCE_COUNTERS: is optional for container statistics gathering"
+
+ERROR_BLK_CGROUP="CONFIG_BLK_CGROUP: is optional for container statistics gathering"
+ERROR_IOSCHED_CFQ="CONFIG_IOSCHED_CFQ: is optional for container statistics gathering"
+ERROR_CGROUP_PERF="CONFIG_CGROUP_PERF: is optional for container statistics gathering"
+ERROR_CFS_BANDWIDTH="CONFIG_CFS_BANDWIDTH: is optional for container statistics gathering"
+
+pkg_setup() {
+ if kernel_is lt 3 10; then
+ ewarn ""
+ ewarn "Using Docker with kernels older than 3.10 is unstable and unsupported."
+ ewarn " - http://docs.docker.com/installation/binaries/#check-kernel-dependencies"
+ fi
+
+ # for where these kernel versions come from, see:
+ # https://www.google.com/search?q=945b2b2d259d1a4364a2799e80e8ff32f8c6ee6f+site%3Akernel.org%2Fpub%2Flinux%2Fkernel+file%3AChangeLog*
+ if ! {
+ kernel_is ge 3 16 \
+ || { kernel_is 3 15 && kernel_is ge 3 15 5; } \
+ || { kernel_is 3 14 && kernel_is ge 3 14 12; } \
+ || { kernel_is 3 12 && kernel_is ge 3 12 25; }
+ }; then
+ ewarn ""
+ ewarn "There is a serious Docker-related kernel panic that has been fixed in 3.16+"
+ ewarn " (and was backported to 3.15.5+, 3.14.12+, and 3.12.25+)"
+ ewarn ""
+ ewarn "See also https://github.com/docker/docker/issues/2960"
+ fi
+
+ if kernel_is le 3 18; then
+ CONFIG_CHECK+="
+ ~RESOURCE_COUNTERS
+ "
+ fi
+
+ if kernel_is le 3 13; then
+ CONFIG_CHECK+="
+ ~NETPRIO_CGROUP
+ "
+ else
+ CONFIG_CHECK+="
+ ~CGROUP_NET_PRIO
+ "
+ fi
+
+ if use aufs; then
+ CONFIG_CHECK+="
+ ~AUFS_FS
+ ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
+ "
+ ERROR_AUFS_FS="CONFIG_AUFS_FS: is required to be set if and only if aufs-sources are used instead of aufs4/aufs3"
+ fi
+
+ if use btrfs; then
+ CONFIG_CHECK+="
+ ~BTRFS_FS
+ "
+ fi
+
+ if use device-mapper; then
+ CONFIG_CHECK+="
+ ~BLK_DEV_DM ~DM_THIN_PROVISIONING ~EXT4_FS ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
+ "
+ fi
+
+ if use overlay; then
+ CONFIG_CHECK+="
+ ~OVERLAY_FS ~EXT4_FS_SECURITY ~EXT4_FS_POSIX_ACL
+ "
+ fi
+
+ linux-info_pkg_setup
+
+ # create docker group for the code checking for it in /etc/group
+ enewgroup docker
+}
+
+src_prepare() {
+ cd "src/${EGO_PN}" || die
+ epatch "${FILESDIR}"/18074-disable-journald-arm.patch
+ # allow user patches (use sparingly - upstream won't support them)
+ epatch_user
+}
+
+src_compile() {
+ cd "src/${EGO_PN}" || die
+ export GOPATH="${WORKDIR}/${P}:${PWD}/vendor:$(get_golibdir_gopath)"
+
+ # setup CFLAGS and LDFLAGS for separate build target
+ # see https://github.com/tianon/docker-overlay/pull/10
+ export CGO_CFLAGS="-I${ROOT}/usr/include"
+ export CGO_LDFLAGS="-L${ROOT}/usr/$(get_libdir)"
+
+ # if we're building from a zip, we need the GITCOMMIT value
+ [ "$DOCKER_GITCOMMIT" ] && export DOCKER_GITCOMMIT
+
+ if gcc-specs-pie; then
+ sed -i "s/EXTLDFLAGS_STATIC='/EXTLDFLAGS_STATIC='-fno-PIC /" hack/make.sh || die
+ grep -q -- '-fno-PIC' hack/make.sh || die 'hardened sed failed'
+
+ sed -i "s/LDFLAGS_STATIC_DOCKER='/LDFLAGS_STATIC_DOCKER='-extldflags -fno-PIC /" hack/make/dynbinary || die
+ grep -q -- '-fno-PIC' hack/make/dynbinary || die 'hardened sed failed'
+ fi
+
+ # let's set up some optional features :)
+ export DOCKER_BUILDTAGS=''
+ for gd in aufs btrfs device-mapper overlay; do
+ if ! use $gd; then
+ DOCKER_BUILDTAGS+=" exclude_graphdriver_${gd//-/}"
+ fi
+ done
+
+ if use apparmor; then
+ DOCKER_BUILDTAGS+=' apparmor'
+ fi
+
+ # https://github.com/docker/docker/pull/13338
+ if use experimental; then
+ export DOCKER_EXPERIMENTAL=1
+ else
+ unset DOCKER_EXPERIMENTAL
+ fi
+
+ # time to build!
+ ./hack/make.sh dynbinary || die 'dynbinary failed'
+
+ # build the man pages too
+ ./man/md2man-all.sh || die "unable to generate man pages"
+}
+
+src_install() {
+ cd "src/${EGO_PN}" || die
+ VERSION="$(cat VERSION)"
+ newbin "bundles/$VERSION/dynbinary/docker-$VERSION" docker
+ exeinto /usr/libexec/docker
+ newexe "bundles/$VERSION/dynbinary/dockerinit-$VERSION" dockerinit
+
+ newinitd contrib/init/openrc/docker.initd docker
+ newconfd contrib/init/openrc/docker.confd docker
+
+ systemd_dounit contrib/init/systemd/docker.{service,socket}
+
+ udev_dorules contrib/udev/*.rules
+
+ dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md NOTICE README.md
+ dodoc -r docs/*
+ doman man/man*/*
+
+ dobashcomp contrib/completion/bash/*
+
+ insinto /usr/share/zsh/site-functions
+ doins contrib/completion/zsh/*
+
+ insinto /usr/share/vim/vimfiles
+ doins -r contrib/syntax/vim/ftdetect
+ doins -r contrib/syntax/vim/syntax
+
+ # note: intentionally not using "doins" so that we preserve +x bits
+ mkdir -p "${D}/usr/share/${PN}/contrib"
+ cp -R contrib/* "${D}/usr/share/${PN}/contrib"
+}
+
+pkg_postinst() {
+ udev_reload
+
+ elog
+ elog "To use Docker, the Docker daemon must be running as root. To automatically"
+ elog "start the Docker daemon at boot, add Docker to the default runlevel:"
+ elog " rc-update add docker default"
+ elog "Similarly for systemd:"
+ elog " systemctl enable docker.service"
+ elog
+ elog "To use Docker as a non-root user, add yourself to the 'docker' group:"
+ elog " usermod -aG docker youruser"
+ elog
+}
diff --git a/app-emulation/docker/files/18074-disable-journald-arm.patch b/app-emulation/docker/files/18074-disable-journald-arm.patch
new file mode 100644
index 0000000000..e7c9a2f675
--- /dev/null
+++ b/app-emulation/docker/files/18074-disable-journald-arm.patch
@@ -0,0 +1,30 @@
+diff --git a/daemon/logger/journald/journald.go b/daemon/logger/journald/journald.go
+index c729b56..97c379c 100644
+--- a/daemon/logger/journald/journald.go
++++ b/daemon/logger/journald/journald.go
+@@ -1,4 +1,4 @@
+-// +build linux
++// +build linux,!arm
+
+ // Package journald provides the log driver for forwarding server logs
+ // to endpoints that receive the systemd format.
+diff --git a/daemon/logger/journald/journald_unsupported.go b/daemon/logger/journald/journald_unsupported.go
+index d52ca92..8e9034a 100644
+--- a/daemon/logger/journald/journald_unsupported.go
++++ b/daemon/logger/journald/journald_unsupported.go
+@@ -1,4 +1,4 @@
+-// +build !linux
++// +build !linux linux,arm
+
+ package journald
+
+diff --git a/daemon/logger/journald/read.go b/daemon/logger/journald/read.go
+index 80c1fbd..0477c04 100644
+--- a/daemon/logger/journald/read.go
++++ b/daemon/logger/journald/read.go
+@@ -1,4 +1,4 @@
+-// +build linux,cgo,!static_build,journald
++// +build linux,cgo,!static_build,journald,!arm
+
+ package journald
+
diff --git a/app-emulation/docker/metadata.xml b/app-emulation/docker/metadata.xml
index 907d5d1da2..708ff9a68b 100644
--- a/app-emulation/docker/metadata.xml
+++ b/app-emulation/docker/metadata.xml
@@ -8,23 +8,26 @@
scale, in production, on VMs, bare metal, OpenStack clusters, public
clouds and more.
</longdescription>
- <herd>proxy-maintainers</herd>
- <maintainer status="active">
+ <maintainer status="active" type="person">
<email>admwiggin@gmail.com</email>
<name>Tianon</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>xarthisius@gentoo.org</email>
<name>Kacper Kowalik</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>alunduil@gentoo.org</email>
<name>Alex Brandt</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<use>
<flag name="aufs">
Enables dependencies for the "aufs" graph driver, including
diff --git a/app-emulation/domi/metadata.xml b/app-emulation/domi/metadata.xml
index 001651048e..0af225b549 100644
--- a/app-emulation/domi/metadata.xml
+++ b/app-emulation/domi/metadata.xml
@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<longdescription>Scripts for building Xen domains</longdescription>
</pkgmetadata>
diff --git a/app-emulation/dosemu/metadata.xml b/app-emulation/dosemu/metadata.xml
index 14ef792f53..2a8f72ea2c 100644
--- a/app-emulation/dosemu/metadata.xml
+++ b/app-emulation/dosemu/metadata.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>hanno@gentoo.org</email>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>slyfox@gentoo.org</email>
<name>Sergei Trofimovich</name>
</maintainer>
diff --git a/app-emulation/dynamips/metadata.xml b/app-emulation/dynamips/metadata.xml
index c9d9b33556..3b49ea6a89 100644
--- a/app-emulation/dynamips/metadata.xml
+++ b/app-emulation/dynamips/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>bman@gentoo.org</email>
<name>Aaron Bauman</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>pinkbyte@gentoo.org</email>
<name>Sergey Popov</name>
</maintainer>
diff --git a/app-emulation/e-uae/metadata.xml b/app-emulation/e-uae/metadata.xml
index 2314e7afa1..0b22e90aff 100644
--- a/app-emulation/e-uae/metadata.xml
+++ b/app-emulation/e-uae/metadata.xml
@@ -1,16 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<longdescription lang="en">
E-UAE is a fork of UAE which intends to merge all the new features of
WinUAE with UAE.
</longdescription>
<use>
- <flag name='capslib'>Add CAPS library support</flag>
- <flag name='sdl-sound'>Use <pkg>media-libs/sdl-sound</pkg> for audio
+ <flag name="capslib">Add CAPS library support</flag>
+ <flag name="sdl-sound">Use <pkg>media-libs/sdl-sound</pkg> for audio
output</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/edumips64/metadata.xml b/app-emulation/edumips64/metadata.xml
index 75e63da88f..32181fd62a 100644
--- a/app-emulation/edumips64/metadata.xml
+++ b/app-emulation/edumips64/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>java</herd>
- <maintainer>
+ <maintainer type="person">
<email>lxnay@gentoo.org</email>
<name>Fabio Erculiani</name>
</maintainer>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
<upstream>
<remote-id type="sourceforge">edumips64</remote-id>
</upstream>
diff --git a/app-emulation/flannel/metadata.xml b/app-emulation/flannel/metadata.xml
index bd78c24598..26007a60b4 100644
--- a/app-emulation/flannel/metadata.xml
+++ b/app-emulation/flannel/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>zmedico@gentoo.org</email>
</maintainer>
<upstream>
diff --git a/app-emulation/free42/metadata.xml b/app-emulation/free42/metadata.xml
index ae876330a7..6a06bd3b7d 100644
--- a/app-emulation/free42/metadata.xml
+++ b/app-emulation/free42/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>nimiux@gentoo.org</email>
<name>Chema Alonso</name>
</maintainer>
diff --git a/app-emulation/fuse-utils/metadata.xml b/app-emulation/fuse-utils/metadata.xml
index b5eea7296d..f693c71c6a 100644
--- a/app-emulation/fuse-utils/metadata.xml
+++ b/app-emulation/fuse-utils/metadata.xml
@@ -1,17 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>proxy-maintainers</herd>
- <maintainer>
+ <maintainer type="person">
<email>neurogeek@gentoo.org</email>
<name>Jesus Rivero</name>
<description>Proxy Maintainer. Please CC on bugs.</description>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>jmfo1982@yahoo.es</email>
<description>Proxied Maintainer. Please assign on bugs.</description>
<name>José Manuel Ferrer Ortiz</name>
</maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<use>
<flag name="gcrypt">Use <pkg>dev-libs/libgcrypt</pkg> for low-level crypto of some
features, including logfiles.</flag>
diff --git a/app-emulation/fuse/metadata.xml b/app-emulation/fuse/metadata.xml
index f7c150dc0e..16cd319eef 100644
--- a/app-emulation/fuse/metadata.xml
+++ b/app-emulation/fuse/metadata.xml
@@ -1,17 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>proxy-maintainers</herd>
- <maintainer>
+ <maintainer type="person">
<email>jmfo1982@yahoo.es</email>
<description>Proxied Maintainer. Please assign on bugs.</description>
<name>José Manuel Ferrer Ortiz</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>neurogeek@gentoo.org</email>
<name>Jesus Rivero</name>
<description>Proxy Maintainer. Please CC on bugs</description>
</maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<upstream>
<remote-id type="sourceforge">fuse-emulator</remote-id>
</upstream>
diff --git a/app-emulation/ganeti-htools/metadata.xml b/app-emulation/ganeti-htools/metadata.xml
index 235f15f035..56690a9ca1 100644
--- a/app-emulation/ganeti-htools/metadata.xml
+++ b/app-emulation/ganeti-htools/metadata.xml
@@ -1,8 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
- <herd>haskell</herd>
+ <maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>haskell@gentoo.org</email>
+ <name>Gentoo Haskell</name>
+ </maintainer>
<longdescription lang="en">
These are some simple cluster tools for fixing common allocation
problems on Ganeti 2.0 clusters.
@@ -19,4 +25,3 @@
rebalance the cluster.
</longdescription>
</pkgmetadata>
-
diff --git a/app-emulation/ganeti-instance-debian-etch/metadata.xml b/app-emulation/ganeti-instance-debian-etch/metadata.xml
index a49a834500..33287910bd 100644
--- a/app-emulation/ganeti-instance-debian-etch/metadata.xml
+++ b/app-emulation/ganeti-instance-debian-etch/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<upstream>
<remote-id type="google-code">ganeti</remote-id>
</upstream>
diff --git a/app-emulation/ganeti-instance-debootstrap/metadata.xml b/app-emulation/ganeti-instance-debootstrap/metadata.xml
index 92e4e2a9c1..26710bfe63 100644
--- a/app-emulation/ganeti-instance-debootstrap/metadata.xml
+++ b/app-emulation/ganeti-instance-debootstrap/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
+ <maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
<longdescription lang="en">This is a guest OS definition for Ganeti (https://code.google.com/p/ganeti).
It will install a minimal version of Debian or Ubuntu via debootstrap (thus
it requires network access). This only works if you have a Debian-based node
diff --git a/app-emulation/ganeti-instance-image/metadata.xml b/app-emulation/ganeti-instance-image/metadata.xml
index cee84c2396..2577434a47 100644
--- a/app-emulation/ganeti-instance-image/metadata.xml
+++ b/app-emulation/ganeti-instance-image/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<longdescription lang="en">
</longdescription>
</pkgmetadata>
-
diff --git a/app-emulation/ganeti/Manifest b/app-emulation/ganeti/Manifest
index 92034398b8..7a8e1416f1 100644
--- a/app-emulation/ganeti/Manifest
+++ b/app-emulation/ganeti/Manifest
@@ -5,4 +5,5 @@ DIST ganeti-2.12.3.tar.gz 4373350 SHA256 e66fc4c3dde1e90d85749ceb5c1c90bd6eaed1d
DIST ganeti-2.13.0.tar.gz 4573781 SHA256 30ccfa971b15d49b45a4bfb75bb9631c0993adbd7feac0562c11305ae8c13753 SHA512 bd847ae7e12cb978fae59a458a4d0e33fee470c51748964453b5d0ea6615e6d959519c84922e92229e942a88f1ad88a6d1cb655f58391d033d5f5dfc249ef941 WHIRLPOOL 925159e36fde1cd36214b4fe54b4e06958cc8bd3ded28e32bc4f99842aafcb4c53c701c8a651421559dc13b4d18ae2cc11f1b9d1d2da1e862561cca81d009bda
DIST ganeti-2.14.1.tar.gz 4655994 SHA256 ae90c69f0c02d2ee558363a1c021dfaaaf4ccb59b662a72fa6485b406766e133 SHA512 2d3927bf888ea56df6b6275a869979c53d4b01e2e527e2dddea2a4835c90e85831e9e7691162999e5c58e9d214e03a37690e84f8fde9f1a0631897b06db348c3 WHIRLPOOL 3554161afd646af41e587fffa9dc85788f6ef13102121c636802946b64161cdeaeea326103171b70577b06635eebf6988b2f3942024a944612642aefd92b89bb
DIST ganeti-2.15.1.tar.gz 4701531 SHA256 a0bc6b9f78c8c9440ca67a73e2011d4499776e18ff42289dff66e90f0a532b72 SHA512 198dd17c8cb1670b1db39f9dd9fdcc416648d5a8c6ed9cbfc2ef3db32ed88a3b445729774a89516f60d443360f42c1fe3cf5c9c015127a4aa1c95027d86d96ba WHIRLPOOL df03b5334299533b34c063026edc57a1be76af74797266bbf1ffba9c3c36aa4fafb2c04687043d4ed734652c1c07d61a06e3c4281721021351845a21a17d8866
+DIST ganeti-2.15.2.tar.gz 4723007 SHA256 1e09d29cae5020142d20a96165b23f3b62b5511b875051b6374d09c4c13c0b83 SHA512 e0707aa535857779622e0eb18cccb89bc34fe4acf373628c30524e3f7e572c4b3d628946ad219149c14615d6471c4d72dbd0c6e3e1855a9f3644b4605544df85 WHIRLPOOL a09a13d64e7c6fa7823072d767fa6495cd814bb22e7a5fc708c8b339103a41da4e45f38574a2c665fe89c8774f220a2715c3aba180eb674eae603730dd2d25ad
DIST ganeti-2.4.5.tar.gz 1828118 SHA256 9141379f3802238fb209309ec12f7090d872b77d7a473c91fe766d1fcec97c89 SHA512 e3abc2fd7c031fbef41c6e993f4cb129fa1dd4cb8c44961a2574da23832fd8412b8b3664b2e05ba8236cb8e58e8d70c3c9081f3f1b6dba8ffdc28d298c8a5099 WHIRLPOOL 897c2b3cdf0c7b03232a4ec99314439dbd29afd65eb2502d21a9f197cc098323a4b9ec0671c24ef7aad44b5327316ee68731e7e5304c8730d03f8ca908b93b62
diff --git a/app-emulation/ganeti/files/ganeti-2.15.2-remove-sandbox-failing-tests.patch b/app-emulation/ganeti/files/ganeti-2.15.2-remove-sandbox-failing-tests.patch
new file mode 100644
index 0000000000..bc79bbbcad
--- /dev/null
+++ b/app-emulation/ganeti/files/ganeti-2.15.2-remove-sandbox-failing-tests.patch
@@ -0,0 +1,58 @@
+diff --git a/test/py/ganeti.hooks_unittest.py b/test/py/ganeti.hooks_unittest.py
+index 19d41bb..3382c7f 100755
+--- a/test/py/ganeti.hooks_unittest.py
++++ b/test/py/ganeti.hooks_unittest.py
+@@ -193,17 +193,17 @@ class TestHooksRunner(unittest.TestCase):
+ expect.sort()
+ self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}), expect)
+
+- def testEnv(self):
+- """Test environment execution"""
+- for phase in (constants.HOOKS_PHASE_PRE, constants.HOOKS_PHASE_POST):
+- fbase = "success"
+- fname = "%s/%s" % (self.ph_dirs[phase], fbase)
+- os.symlink("/usr/bin/env", fname)
+- self.torm.append((fname, False))
+- env_snt = {"PHASE": phase}
+- env_exp = "PHASE=%s" % phase
+- self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, env_snt),
+- [(self._rname(fname), HKR_SUCCESS, env_exp)])
++ #def testEnv(self):
++ # """Test environment execution"""
++ # for phase in (constants.HOOKS_PHASE_PRE, constants.HOOKS_PHASE_POST):
++ # fbase = "success"
++ # fname = "%s/%s" % (self.ph_dirs[phase], fbase)
++ # os.symlink("/usr/bin/env", fname)
++ # self.torm.append((fname, False))
++ # env_snt = {"PHASE": phase}
++ # env_exp = "PHASE=%s" % phase
++ # self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, env_snt),
++ # [(self._rname(fname), HKR_SUCCESS, env_exp)])
+
+
+ def FakeHooksRpcSuccess(node_list, hpath, phase, env):
+diff --git a/test/py/ganeti.utils.process_unittest.py b/test/py/ganeti.utils.process_unittest.py
+index 82fc81e..4a59aa4 100755
+--- a/test/py/ganeti.utils.process_unittest.py
++++ b/test/py/ganeti.utils.process_unittest.py
+@@ -358,13 +358,13 @@ class TestRunCmd(testutils.GanetiTestCase):
+ cwd = os.getcwd()
+ self.failUnlessEqual(utils.RunCmd(["pwd"], cwd=cwd).stdout.strip(), cwd)
+
+- def testResetEnv(self):
+- """Test environment reset functionality"""
+- self.failUnlessEqual(utils.RunCmd(["env"], reset_env=True).stdout.strip(),
+- "")
+- self.failUnlessEqual(utils.RunCmd(["env"], reset_env=True,
+- env={"FOO": "bar",}).stdout.strip(),
+- "FOO=bar")
++ #def testResetEnv(self):
++ # """Test environment reset functionality"""
++ # self.failUnlessEqual(utils.RunCmd(["env"], reset_env=True).stdout.strip(),
++ # "")
++ # self.failUnlessEqual(utils.RunCmd(["env"], reset_env=True,
++ # env={"FOO": "bar",}).stdout.strip(),
++ # "FOO=bar")
+
+ def testNoFork(self):
+ """Test that nofork raise an error"""
diff --git a/app-emulation/ganeti/ganeti-2.15.1-r1.ebuild b/app-emulation/ganeti/ganeti-2.15.1-r1.ebuild
new file mode 100644
index 0000000000..d3adc439cb
--- /dev/null
+++ b/app-emulation/ganeti/ganeti-2.15.1-r1.ebuild
@@ -0,0 +1,309 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=(python2_7)
+PYTHON_REQ_USE="ipv6(+)?"
+
+inherit eutils user autotools bash-completion-r1 python-single-r1 versionator
+
+MY_PV="${PV/_rc/~rc}"
+MY_PV="${MY_PV/_beta/~beta}"
+MY_P="${PN}-${MY_PV}"
+SERIES="$(get_version_component_range 1-2)"
+
+if [[ ${PV} =~ [9]{4,} ]] ; then
+ EGIT_REPO_URI="git://git.ganeti.org/ganeti.git"
+ inherit git-2
+ KEYWORDS=""
+ GIT_DEPEND="dev-python/docutils
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+ media-fonts/urw-fonts"
+else
+ SRC_URI="http://downloads.ganeti.org/releases/${SERIES}/${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Ganeti is a virtual server management software tool"
+HOMEPAGE="http://www.ganeti.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="drbd haskell-daemons htools ipv6 kvm lxc monitoring multiple-users rbd syslog test xen"
+REQUIRED_USE="|| ( kvm xen lxc ) test? ( ipv6 ) ${PYTHON_REQUIRED_USE}"
+
+USER_PREFIX="${GANETI_USER_PREFIX:-"gnt-"}"
+GROUP_PREFIX="${GANETI_GROUP_PREFIX:-"${USER_PREFIX}"}"
+
+DOC_DEPEND="dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/docutils
+ media-fonts/urw-fonts
+ media-gfx/graphviz"
+
+DEPEND="
+ dev-libs/openssl:0
+ dev-python/paramiko[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/simplejson[${PYTHON_USEDEP}]
+ dev-python/pyparsing[${PYTHON_USEDEP}]
+ dev-python/pyinotify[${PYTHON_USEDEP}]
+ dev-python/pycurl[${PYTHON_USEDEP}]
+ dev-python/ipaddr[${PYTHON_USEDEP}]
+ dev-python/bitarray[${PYTHON_USEDEP}]
+ net-analyzer/arping
+ net-analyzer/fping
+ net-misc/bridge-utils
+ net-misc/curl[ssl]
+ net-misc/openssh
+ net-misc/socat
+ sys-apps/iproute2
+ sys-fs/lvm2
+ >=sys-apps/baselayout-2.0
+ dev-lang/ghc
+ dev-haskell/cabal:0=
+ dev-haskell/cabal-install:0=
+ >=dev-haskell/mtl-2.1.1:0=
+ >=dev-haskell/old-time-1.1.0.0:0=
+ >=dev-haskell/random-1.0.1.1:0=
+ haskell-daemons? ( >=dev-haskell/text-0.11.1.13:0= )
+ >=dev-haskell/transformers-0.3.0.0:0=
+
+ >=dev-haskell/attoparsec-0.10.1.1:0=
+ <dev-haskell/attoparsec-0.13:0
+ >=dev-haskell/base64-bytestring-1.0.0.1:0=
+ <dev-haskell/base64-bytestring-1.1:0=
+ >=dev-haskell/crypto-4.2.4:0=
+ <dev-haskell/crypto-4.3:0=
+ >=dev-haskell/curl-1.3.7:0=
+ <dev-haskell/curl-1.4:0=
+ >=dev-haskell/hinotify-0.3.2:0=
+ <dev-haskell/hinotify-0.4:0=
+ >=dev-haskell/hslogger-1.1.4:0=
+ <dev-haskell/hslogger-1.3:0=
+ >=dev-haskell/json-0.5:0=
+ <dev-haskell/json-0.9:0=
+ >=dev-haskell/lens-3.10:0=
+ <dev-haskell/lens-4.8:0=
+ >=dev-haskell/lifted-base-0.2.0.3:0=
+ <dev-haskell/lifted-base-0.3:0=
+ >=dev-haskell/monad-control-0.3.1.3:0=
+ <dev-haskell/monad-control-1.1:0=
+ >=dev-haskell/network-2.3.0.13:0=
+ <dev-haskell/network-2.7:0=
+ >=dev-haskell/parallel-3.2.0.2:3=
+ <dev-haskell/parallel-3.3:3=
+ >=dev-haskell/temporary-1.1.2.3:0=
+ <dev-haskell/temporary-1.3:0=
+ >=dev-haskell/regex-pcre-0.94.2:0=
+ <dev-haskell/regex-pcre-0.95:0=
+ >=dev-haskell/transformers-base-0.4.1:0=
+ <dev-haskell/transformers-base-0.5:0=
+ >=dev-haskell/utf8-string-0.3.7:0=
+ <dev-haskell/utf8-string-0.4:0=
+ >=dev-haskell/zlib-0.5.3.3:0=
+ <dev-haskell/zlib-0.6:0=
+
+ >=dev-haskell/psqueue-1.1:0=
+ <dev-haskell/psqueue-1.2:0=
+ >=dev-haskell/snap-core-0.8.1:0=
+ <dev-haskell/snap-core-0.10:0=
+ >=dev-haskell/snap-server-0.8.1:0=
+ <dev-haskell/snap-server-0.10:0=
+ >=dev-haskell/case-insensitive-0.4.0.1
+
+ dev-haskell/vector:0=
+ <dev-haskell/semigroupoids-4.1:0=
+ <dev-haskell/contravariant-0.6
+ <dev-haskell/transformers-compat-0.4[three]
+ xen? ( >=app-emulation/xen-3.0 )
+ kvm? (
+ dev-python/psutil
+ app-emulation/qemu
+ )
+ lxc? ( app-emulation/lxc )
+ drbd? (
+ || (
+ <sys-cluster/drbd-8.5
+ sys-cluster/drbd-utils
+ )
+ )
+ rbd? ( sys-cluster/ceph )
+ ipv6? ( net-misc/ndisc6 )
+ ${PYTHON_DEPS}
+ ${GIT_DEPEND}"
+RDEPEND="${DEPEND}
+ !app-emulation/ganeti-htools"
+DEPEND+="sys-devel/m4
+ app-text/pandoc
+ >=dev-haskell/test-framework-0.6:0=
+ <dev-haskell/test-framework-0.9:0=
+ >=dev-haskell/test-framework-hunit-0.2.7:0=
+ <dev-haskell/test-framework-hunit-0.4:0=
+ >=dev-haskell/test-framework-quickcheck2-0.2.12.1:0=
+ <dev-haskell/test-framework-quickcheck2-0.4:0=
+ test? (
+ dev-python/mock
+ dev-python/pyyaml
+ dev-haskell/haddock:0=
+ >=dev-haskell/hunit-1.2.4.2:0=
+ <dev-haskell/hunit-1.3:0=
+ >=dev-haskell/quickcheck-2.4.2:2=
+ <dev-haskell/quickcheck-2.8:2=
+ sys-apps/fakeroot
+ net-misc/socat
+ dev-util/shelltestrunner
+ ${DOC_DEPEND}
+ )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.12-start-stop-daemon-args.patch"
+ "${FILESDIR}/${PN}-2.11-add-pgrep.patch"
+ "${FILESDIR}/${PN}-2.15-daemon-util.patch"
+ "${FILESDIR}/${PN}-2.7-fix-tests.patch"
+ "${FILESDIR}/${PN}-2.9-disable-root-tests.patch"
+ "${FILESDIR}/${PN}-2.9-skip-cli-test.patch"
+ "${FILESDIR}/${PN}-2.10-rundir.patch"
+ "${FILESDIR}/${PN}-2.12-qemu-enable-kvm.patch"
+ "${FILESDIR}/${PN}-2.11-tests.patch"
+ "${FILESDIR}/${PN}-lockdir.patch"
+ "${FILESDIR}/${PN}-2.11-dont-nest-libdir.patch"
+ "${FILESDIR}/${PN}-2.11-dont-print-man-help.patch"
+ "${FILESDIR}/${PN}-2.11-daemon-util-tests.patch"
+ "${FILESDIR}/${PN}-2.13-process_unittest.patch"
+ "${FILESDIR}/${PN}-2.15-python-mock.patch"
+)
+
+REQUIRED_USE="kvm? ( || ( amd64 x86 ) )"
+
+S="${WORKDIR}/${MY_P}"
+
+QA_WX_LOAD="
+ usr/lib*/${PN}/${SERIES}/usr/sbin/ganeti-*d
+ usr/lib*/${PN}/${SERIES}/usr/bin/htools
+"
+
+pkg_setup () {
+ local user
+ python-single-r1_pkg_setup
+
+ if use multiple-users; then
+ for user in gnt-{masterd,confd,luxid,rapi,daemons,admin}; do
+ enewgroup ${user}
+ enewuser ${user} -1 -1 -1 ${user}
+ done
+ fi
+}
+
+src_prepare() {
+ local testfile
+ epatch "${PATCHES[@]}"
+
+ # not sure why these tests are failing
+ # should remove this on next version bump if possible
+ for testfile in test/py/import-export_unittest.bash; do
+ printf '#!/bin/bash\ntrue\n' > "${testfile}"
+ done
+
+ # take the sledgehammer approach to bug #526270
+ grep -lr '/bin/sh' "${S}" | xargs -r -- sed -i 's:/bin/sh:/bin/bash:g'
+
+ [[ ${PV} =~ [9]{4,} ]] && ./autogen.sh
+ rm autotools/missing
+ eautoreconf
+}
+
+src_configure () {
+ # this is kind of a hack to work around the removal of the qemu-kvm wrapper
+ local kvm_arch
+
+ if use amd64; then
+ kvm_arch=x86_64
+ elif use x86; then
+ kvm_arch=i386
+ elif use kvm; then
+ die "Could not determine qemu system to use for kvm"
+ fi
+
+ econf --localstatedir=/var \
+ --sharedstatedir=/var \
+ --disable-symlinks \
+ --docdir=/usr/share/doc/${P} \
+ --with-ssh-initscript=/etc/init.d/sshd \
+ --with-export-dir=/var/lib/ganeti-storage/export \
+ --with-os-search-path=/usr/share/${PN}/os \
+ $(use_enable test haskell-tests) \
+ $(usex multiple-users "--with-default-user=" "" "gnt-daemons" "") \
+ $(usex multiple-users "--with-user-prefix=" "" "${USER_PREFIX}" "") \
+ $(usex multiple-users "--with-default-group=" "" "gnt-daemons" "") \
+ $(usex multiple-users "--with-group-prefix=" "" "${GROUP_PREFIX}" "") \
+ $(use_enable syslog) \
+ $(use_enable monitoring) \
+ $(usex kvm '--with-kvm-path=' '' "/usr/bin/qemu-system-${kvm_arch}" '') \
+ $(usex haskell-daemons "--enable-confd=haskell" '' '' '')
+}
+
+src_install () {
+ emake V=1 DESTDIR="${D}" install || die "emake install failed"
+
+ newinitd "${FILESDIR}"/ganeti.initd-r3 ${PN}
+ newconfd "${FILESDIR}"/ganeti.confd-r2 ${PN}
+
+ if use kvm; then
+ newinitd "${FILESDIR}"/ganeti-kvm-poweroff.initd ganeti-kvm-poweroff
+ newconfd "${FILESDIR}"/ganeti-kvm-poweroff.confd ganeti-kvm-poweroff
+ fi
+
+ # ganeti installs it's own docs in a generic location
+ rm -rf "${D}"/{usr/share/doc/${PN},run}
+
+ sed -i "s:/usr/$(get_libdir)/${PN}/tools/burnin:burnin:" doc/examples/bash_completion
+ newbashcomp doc/examples/bash_completion gnt-instance
+ bashcomp_alias gnt-instance burnin ganeti-{cleaner,confd} \
+ h{space,check,scan,info,ail,arep,roller,squeeze,bal} \
+ gnt-{os,job,filter,debug,storage,group,node,network,backup,cluster}
+
+ dodoc INSTALL UPGRADE NEWS README doc/*.rst
+ dohtml -r doc/html/* doc/css/*.css
+
+ docinto examples
+ dodoc doc/examples/{ganeti.cron,gnt-config-backup} doc/examples/*.ocf
+
+ docinto examples/hooks
+ dodoc doc/examples/hooks/{ipsec,ethers}
+
+ insinto /etc/cron.d
+ newins doc/examples/ganeti.cron ${PN}
+
+ insinto /etc/logrotate.d
+ newins doc/examples/ganeti.logrotate ${PN}
+
+ # need to dodir rather than keepdir here (bug #552482)
+ dodir /var/lib/${PN}
+
+ keepdir /var/log/${PN}/
+ keepdir /usr/share/${PN}/${SERIES}/os/
+ keepdir /var/lib/ganeti-storage/{export,file,shared}/
+
+ dosym ${SERIES} "/usr/share/${PN}/default"
+ dosym ${SERIES} "/usr/$(get_libdir)/${PN}/default"
+
+ python_fix_shebang "${ED}" "${D}"/usr/"$(get_libdir)"/${PN}/${SERIES}
+}
+
+pkg_postinst() {
+ if use multiple-users; then
+ elog "You have enable multiple user support, the users for this must"
+ elog "be created. You can use the provided tool for this, which is"
+ elog "located at:"
+ elog " /usr/$(get_libdir)/${PN}/tools/users-setup"
+ fi
+}
+
+src_test () {
+ PATH="${S}/scripts:${S}/src:${PATH}" \
+ TMPDIR="/tmp" \
+ GANETI_MASTER="$(hostname -f)" \
+ emake check || die "emake check failed"
+}
diff --git a/app-emulation/ganeti/ganeti-2.15.2.ebuild b/app-emulation/ganeti/ganeti-2.15.2.ebuild
new file mode 100644
index 0000000000..b9c86e4ede
--- /dev/null
+++ b/app-emulation/ganeti/ganeti-2.15.2.ebuild
@@ -0,0 +1,309 @@
+# 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="ipv6(+)?"
+
+inherit eutils user autotools bash-completion-r1 python-single-r1 versionator
+
+MY_PV="${PV/_rc/~rc}"
+MY_PV="${MY_PV/_beta/~beta}"
+MY_P="${PN}-${MY_PV}"
+SERIES="$(get_version_component_range 1-2)"
+
+if [[ ${PV} =~ [9]{4,} ]] ; then
+ EGIT_REPO_URI="git://git.ganeti.org/ganeti.git"
+ inherit git-2
+ KEYWORDS=""
+ GIT_DEPEND="dev-python/docutils
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+ media-fonts/urw-fonts"
+else
+ SRC_URI="http://downloads.ganeti.org/releases/${SERIES}/${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Ganeti is a virtual server management software tool"
+HOMEPAGE="http://www.ganeti.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="drbd haskell-daemons htools ipv6 kvm lxc monitoring multiple-users rbd syslog test xen"
+REQUIRED_USE="|| ( kvm xen lxc ) test? ( ipv6 ) ${PYTHON_REQUIRED_USE}"
+
+USER_PREFIX="${GANETI_USER_PREFIX:-"gnt-"}"
+GROUP_PREFIX="${GANETI_GROUP_PREFIX:-"${USER_PREFIX}"}"
+
+DOC_DEPEND="dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/docutils
+ media-fonts/urw-fonts
+ media-gfx/graphviz"
+
+DEPEND="
+ dev-libs/openssl:0
+ dev-python/paramiko[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/simplejson[${PYTHON_USEDEP}]
+ dev-python/pyparsing[${PYTHON_USEDEP}]
+ dev-python/pyinotify[${PYTHON_USEDEP}]
+ dev-python/pycurl[${PYTHON_USEDEP}]
+ dev-python/ipaddr[${PYTHON_USEDEP}]
+ dev-python/bitarray[${PYTHON_USEDEP}]
+ net-analyzer/arping
+ net-analyzer/fping
+ net-misc/bridge-utils
+ net-misc/curl[ssl]
+ net-misc/openssh
+ net-misc/socat
+ sys-apps/iproute2
+ sys-fs/lvm2
+ >=sys-apps/baselayout-2.0
+ dev-lang/ghc
+ dev-haskell/cabal:0=
+ dev-haskell/cabal-install:0=
+ >=dev-haskell/mtl-2.1.1:0=
+ >=dev-haskell/old-time-1.1.0.0:0=
+ >=dev-haskell/random-1.0.1.1:0=
+ haskell-daemons? ( >=dev-haskell/text-0.11.1.13:0= )
+ >=dev-haskell/transformers-0.3.0.0:0=
+
+ >=dev-haskell/attoparsec-0.10.1.1:0=
+ <dev-haskell/attoparsec-0.13:0
+ >=dev-haskell/base64-bytestring-1.0.0.1:0=
+ <dev-haskell/base64-bytestring-1.1:0=
+ >=dev-haskell/crypto-4.2.4:0=
+ <dev-haskell/crypto-4.3:0=
+ >=dev-haskell/curl-1.3.7:0=
+ <dev-haskell/curl-1.4:0=
+ >=dev-haskell/hinotify-0.3.2:0=
+ <dev-haskell/hinotify-0.4:0=
+ >=dev-haskell/hslogger-1.1.4:0=
+ <dev-haskell/hslogger-1.3:0=
+ >=dev-haskell/json-0.5:0=
+ <dev-haskell/json-0.9:0=
+ >=dev-haskell/lens-3.10:0=
+ <dev-haskell/lens-4.8:0=
+ >=dev-haskell/lifted-base-0.2.0.3:0=
+ <dev-haskell/lifted-base-0.3:0=
+ >=dev-haskell/monad-control-0.3.1.3:0=
+ <dev-haskell/monad-control-1.1:0=
+ >=dev-haskell/network-2.3.0.13:0=
+ <dev-haskell/network-2.7:0=
+ >=dev-haskell/parallel-3.2.0.2:3=
+ <dev-haskell/parallel-3.3:3=
+ >=dev-haskell/temporary-1.1.2.3:0=
+ <dev-haskell/temporary-1.3:0=
+ >=dev-haskell/regex-pcre-0.94.2:0=
+ <dev-haskell/regex-pcre-0.95:0=
+ >=dev-haskell/transformers-base-0.4.1:0=
+ <dev-haskell/transformers-base-0.5:0=
+ >=dev-haskell/utf8-string-0.3.7:0=
+ <dev-haskell/utf8-string-0.4:0=
+ >=dev-haskell/zlib-0.5.3.3:0=
+ <dev-haskell/zlib-0.6:0=
+
+ >=dev-haskell/psqueue-1.1:0=
+ <dev-haskell/psqueue-1.2:0=
+ >=dev-haskell/snap-core-0.8.1:0=
+ <dev-haskell/snap-core-0.10:0=
+ >=dev-haskell/snap-server-0.8.1:0=
+ <dev-haskell/snap-server-0.10:0=
+ >=dev-haskell/case-insensitive-0.4.0.1
+
+ dev-haskell/vector:0=
+ <dev-haskell/semigroupoids-4.1:0=
+ <dev-haskell/contravariant-0.6
+ <dev-haskell/transformers-compat-0.4[three]
+ xen? ( >=app-emulation/xen-3.0 )
+ kvm? (
+ dev-python/psutil
+ app-emulation/qemu
+ )
+ lxc? ( app-emulation/lxc )
+ drbd? (
+ || (
+ <sys-cluster/drbd-8.5
+ sys-cluster/drbd-utils
+ )
+ )
+ rbd? ( sys-cluster/ceph )
+ ipv6? ( net-misc/ndisc6 )
+ ${PYTHON_DEPS}
+ ${GIT_DEPEND}"
+RDEPEND="${DEPEND}
+ !app-emulation/ganeti-htools"
+DEPEND+="sys-devel/m4
+ app-text/pandoc
+ >=dev-haskell/test-framework-0.6:0=
+ <dev-haskell/test-framework-0.9:0=
+ >=dev-haskell/test-framework-hunit-0.2.7:0=
+ <dev-haskell/test-framework-hunit-0.4:0=
+ >=dev-haskell/test-framework-quickcheck2-0.2.12.1:0=
+ <dev-haskell/test-framework-quickcheck2-0.4:0=
+ test? (
+ dev-python/mock
+ dev-python/pyyaml
+ dev-haskell/haddock:0=
+ >=dev-haskell/hunit-1.2.4.2:0=
+ <dev-haskell/hunit-1.3:0=
+ >=dev-haskell/quickcheck-2.4.2:2=
+ <dev-haskell/quickcheck-2.8:2=
+ sys-apps/fakeroot
+ net-misc/socat
+ dev-util/shelltestrunner
+ ${DOC_DEPEND}
+ )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.12-start-stop-daemon-args.patch"
+ "${FILESDIR}/${PN}-2.11-add-pgrep.patch"
+ "${FILESDIR}/${PN}-2.15-daemon-util.patch"
+ "${FILESDIR}/${PN}-2.9-disable-root-tests.patch"
+ "${FILESDIR}/${PN}-2.9-skip-cli-test.patch"
+ "${FILESDIR}/${PN}-2.10-rundir.patch"
+ "${FILESDIR}/${PN}-2.12-qemu-enable-kvm.patch"
+ "${FILESDIR}/${PN}-2.11-tests.patch"
+ "${FILESDIR}/${PN}-lockdir.patch"
+ "${FILESDIR}/${PN}-2.11-dont-nest-libdir.patch"
+ "${FILESDIR}/${PN}-2.11-dont-print-man-help.patch"
+ "${FILESDIR}/${PN}-2.11-daemon-util-tests.patch"
+ "${FILESDIR}/${PN}-2.13-process_unittest.patch"
+ "${FILESDIR}/${PN}-2.15-python-mock.patch"
+ "${FILESDIR}/${PN}-2.15.2-remove-sandbox-failing-tests.patch"
+)
+
+REQUIRED_USE="kvm? ( || ( amd64 x86 ) )"
+
+S="${WORKDIR}/${MY_P}"
+
+QA_WX_LOAD="
+ usr/lib*/${PN}/${SERIES}/usr/sbin/ganeti-*d
+ usr/lib*/${PN}/${SERIES}/usr/bin/htools
+"
+
+pkg_setup () {
+ local user
+ python-single-r1_pkg_setup
+
+ if use multiple-users; then
+ for user in gnt-{masterd,confd,luxid,rapi,daemons,admin}; do
+ enewgroup ${user}
+ enewuser ${user} -1 -1 -1 ${user}
+ done
+ fi
+}
+
+src_prepare() {
+ local testfile
+ epatch "${PATCHES[@]}"
+
+ # not sure why these tests are failing
+ # should remove this on next version bump if possible
+ for testfile in test/py/import-export_unittest.bash; do
+ printf '#!/bin/bash\ntrue\n' > "${testfile}"
+ done
+
+ # take the sledgehammer approach to bug #526270
+ grep -lr '/bin/sh' "${S}" | xargs -r -- sed -i 's:/bin/sh:/bin/bash:g'
+
+ [[ ${PV} =~ [9]{4,} ]] && ./autogen.sh
+ rm autotools/missing
+ eautoreconf
+}
+
+src_configure () {
+ # this is kind of a hack to work around the removal of the qemu-kvm wrapper
+ local kvm_arch
+
+ if use amd64; then
+ kvm_arch=x86_64
+ elif use x86; then
+ kvm_arch=i386
+ elif use kvm; then
+ die "Could not determine qemu system to use for kvm"
+ fi
+
+ econf --localstatedir=/var \
+ --sharedstatedir=/var \
+ --disable-symlinks \
+ --docdir=/usr/share/doc/${P} \
+ --with-ssh-initscript=/etc/init.d/sshd \
+ --with-export-dir=/var/lib/ganeti-storage/export \
+ --with-os-search-path=/usr/share/${PN}/os \
+ $(use_enable test haskell-tests) \
+ $(usex multiple-users "--with-default-user=" "" "gnt-daemons" "") \
+ $(usex multiple-users "--with-user-prefix=" "" "${USER_PREFIX}" "") \
+ $(usex multiple-users "--with-default-group=" "" "gnt-daemons" "") \
+ $(usex multiple-users "--with-group-prefix=" "" "${GROUP_PREFIX}" "") \
+ $(use_enable syslog) \
+ $(use_enable monitoring) \
+ $(usex kvm '--with-kvm-path=' '' "/usr/bin/qemu-system-${kvm_arch}" '') \
+ $(usex haskell-daemons "--enable-confd=haskell" '' '' '')
+}
+
+src_install () {
+ emake V=1 DESTDIR="${D}" install || die "emake install failed"
+
+ newinitd "${FILESDIR}"/ganeti.initd-r3 ${PN}
+ newconfd "${FILESDIR}"/ganeti.confd-r2 ${PN}
+
+ if use kvm; then
+ newinitd "${FILESDIR}"/ganeti-kvm-poweroff.initd ganeti-kvm-poweroff
+ newconfd "${FILESDIR}"/ganeti-kvm-poweroff.confd ganeti-kvm-poweroff
+ fi
+
+ # ganeti installs it's own docs in a generic location
+ rm -rf "${D}"/{usr/share/doc/${PN},run}
+
+ sed -i "s:/usr/$(get_libdir)/${PN}/tools/burnin:burnin:" doc/examples/bash_completion
+ newbashcomp doc/examples/bash_completion gnt-instance
+ bashcomp_alias gnt-instance burnin ganeti-{cleaner,confd} \
+ h{space,check,scan,info,ail,arep,roller,squeeze,bal} \
+ gnt-{os,job,filter,debug,storage,group,node,network,backup,cluster}
+
+ dodoc INSTALL UPGRADE NEWS README doc/*.rst
+ dohtml -r doc/html/* doc/css/*.css
+
+ docinto examples
+ dodoc doc/examples/{ganeti.cron,gnt-config-backup} doc/examples/*.ocf
+
+ docinto examples/hooks
+ dodoc doc/examples/hooks/{ipsec,ethers}
+
+ insinto /etc/cron.d
+ newins doc/examples/ganeti.cron ${PN}
+
+ insinto /etc/logrotate.d
+ newins doc/examples/ganeti.logrotate ${PN}
+
+ # need to dodir rather than keepdir here (bug #552482)
+ dodir /var/lib/${PN}
+
+ keepdir /var/log/${PN}/
+ keepdir /usr/share/${PN}/${SERIES}/os/
+ keepdir /var/lib/ganeti-storage/{export,file,shared}/
+
+ dosym ${SERIES} "/usr/share/${PN}/default"
+ dosym ${SERIES} "/usr/$(get_libdir)/${PN}/default"
+
+ python_fix_shebang "${ED}" "${D}"/usr/"$(get_libdir)"/${PN}/${SERIES}
+}
+
+pkg_postinst() {
+ if use multiple-users; then
+ elog "You have enable multiple user support, the users for this must"
+ elog "be created. You can use the provided tool for this, which is"
+ elog "located at:"
+ elog " /usr/$(get_libdir)/${PN}/tools/users-setup"
+ fi
+}
+
+src_test () {
+ PATH="${S}/scripts:${S}/src:${PATH}" \
+ TMPDIR="/tmp" \
+ GANETI_MASTER="$(hostname -f)" \
+ emake check || die "emake check failed"
+}
diff --git a/app-emulation/ganeti/metadata.xml b/app-emulation/ganeti/metadata.xml
index e517e17910..e49a71c7d4 100644
--- a/app-emulation/ganeti/metadata.xml
+++ b/app-emulation/ganeti/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
- <maintainer>
+ <maintainer type="person">
<email>chutzpah@gentoo.org</email>
<name>Patrick McLean</name>
</maintainer>
+ <maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
<longdescription lang="en">
Ganeti is a cluster virtual server management software tool built on top of
existing virtualization technologies such as Xen or KVM and other Open
@@ -21,16 +24,15 @@
failures using commodity hardware.
</longdescription>
<use>
- <flag name='drbd'>Enable DRBD support</flag>
- <flag name='filestorage'>Enable File Storage</flag>
- <flag name='haskell-daemons'>Build haskell daemons instead of python</flag>
- <flag name='htools'>Enable htools support</flag>
- <flag name='kvm'>Enable KVM support</flag>
- <flag name='lxc'>Enable Linux Countainers support</flag>
- <flag name='multiple-users'>Enable support for running VMs as different users</flag>
- <flag name='monitoring'>Enable the ganeti monitoring daemon</flag>
- <flag name='rbd'>Enable rados block device support via sys-cluster/ceph</flag>
- <flag name='xen'>Enable Xen support</flag>
+ <flag name="drbd">Enable DRBD support</flag>
+ <flag name="filestorage">Enable File Storage</flag>
+ <flag name="haskell-daemons">Build haskell daemons instead of python</flag>
+ <flag name="htools">Enable htools support</flag>
+ <flag name="kvm">Enable KVM support</flag>
+ <flag name="lxc">Enable Linux Countainers support</flag>
+ <flag name="multiple-users">Enable support for running VMs as different users</flag>
+ <flag name="monitoring">Enable the ganeti monitoring daemon</flag>
+ <flag name="rbd">Enable rados block device support via sys-cluster/ceph</flag>
+ <flag name="xen">Enable Xen support</flag>
</use>
</pkgmetadata>
-
diff --git a/app-emulation/gxemul/metadata.xml b/app-emulation/gxemul/metadata.xml
index f7b826fbae..943208f562 100644
--- a/app-emulation/gxemul/metadata.xml
+++ b/app-emulation/gxemul/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<longdescription>Machine Emulator. Supports emulation across several architectures. Primarily for MIPS support, but other platform support coming soon.</longdescription>
<upstream>
<remote-id type="sourceforge">gxemul</remote-id>
diff --git a/app-emulation/hercules/metadata.xml b/app-emulation/hercules/metadata.xml
index feb9acec70..a530a8643a 100644
--- a/app-emulation/hercules/metadata.xml
+++ b/app-emulation/hercules/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>s390</herd>
+<maintainer type="project">
+ <email>s390@gentoo.org</email>
+ <name>Gentoo Linux s390 Development</name>
+</maintainer>
<longdescription>
Hercules is an emulator for the IBM System/360, System/370, ESA/390, and
z/Architecture series of mainframe computer systems. It will run any
diff --git a/app-emulation/libcacard/Manifest b/app-emulation/libcacard/Manifest
index 3385cd7ae5..474b0c8b5c 100644
--- a/app-emulation/libcacard/Manifest
+++ b/app-emulation/libcacard/Manifest
@@ -1 +1,2 @@
DIST libcacard-0.1.2.tar.bz2 276430 SHA256 ca100118865ee24f16cf39367f74434cddbbb003a12a1adc8645f3dc34791daf SHA512 a3622b29fe3a059e069ad6f7da428278a915cec362a6aae3c7cad0d47dfadba67308631435993c0f41cabe92a05874b339518dc503b71b8d86db4976bb6987f6 WHIRLPOOL 9e1a156fbbff34148a1debc1f4a6d23aea687213a45cac7feb57134dcbd59fa95a22558e15e5c237ae6c3a7851282c72b49ee6e94c9fff8940feee13d42f08ad
+DIST libcacard-2.5.1.tar.xz 325692 SHA256 4bc29c98bea1defc168205652f4ad203ea5746519b4bef8f04ff7cbe099c4e4e SHA512 88e66745f649f52c3fcc7745834d628e76abc21cef1b300e8750e6c0641f65d0e11224da30fa13dea20d6ebe5d36d7a8680d029e15149fddaea43558216ccc21 WHIRLPOOL 5affa8ad2f047553b0a241a123b89d0db5b7620860da1fafb6123f26efafb7680bfd4d971b3b67e82674664daddf45fe0d973153e97944955e8417ea591d412a
diff --git a/app-emulation/libcacard/libcacard-2.5.1.ebuild b/app-emulation/libcacard/libcacard-2.5.1.ebuild
new file mode 100644
index 0000000000..f24df6c1c5
--- /dev/null
+++ b/app-emulation/libcacard/libcacard-2.5.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+DESCRIPTION="virtual Common Access Card (CAC) library emulator"
+HOMEPAGE="http://spice-space.org/"
+SRC_URI="http://spice-space.org/download/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc x86"
+IUSE="static-libs"
+
+RDEPEND=">=dev-libs/nss-3.13
+ >=dev-libs/glib-2.22
+ >=sys-apps/pcsc-lite-1.8"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+ use static-libs || find "${ED}"/usr/ -name 'lib*.la' -delete
+}
diff --git a/app-emulation/libcacard/metadata.xml b/app-emulation/libcacard/metadata.xml
index 6804d7590f..e225897fe9 100644
--- a/app-emulation/libcacard/metadata.xml
+++ b/app-emulation/libcacard/metadata.xml
@@ -1,9 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
- <maintainer>
+ <maintainer type="person">
<email>dev-zero@gentoo.org</email>
<name>Tiziano Müller</name>
</maintainer>
+<maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
</pkgmetadata>
diff --git a/app-emulation/libguestfs-appliance/metadata.xml b/app-emulation/libguestfs-appliance/metadata.xml
index 4b62b2824c..8c0299af58 100644
--- a/app-emulation/libguestfs-appliance/metadata.xml
+++ b/app-emulation/libguestfs-appliance/metadata.xml
@@ -1,18 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>proxy-maintainers</herd>
-<maintainer>
+<maintainer type="person">
<email>andreis.vinogradovs@gmail.com</email>
<name>Andreis Vinogradovs</name>
</maintainer>
-<maintainer>
+<maintainer type="person">
<email>maksbotan@gentoo.org</email>
<name>Maxim Koltsov</name>
</maintainer>
-<maintainer>
+<maintainer type="person">
<email>rich@annexia.org</email>
<name>Richard Jones</name>
<description>Upstream - please CC on bugs that concerns upstream</description>
</maintainer>
+<maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+</maintainer>
</pkgmetadata>
diff --git a/app-emulation/libguestfs/metadata.xml b/app-emulation/libguestfs/metadata.xml
index c9f268cb4b..122b2529d0 100644
--- a/app-emulation/libguestfs/metadata.xml
+++ b/app-emulation/libguestfs/metadata.xml
@@ -1,21 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>proxy-maintainers</herd>
-<maintainer>
+<maintainer type="person">
<email>andreis.vinogradovs@gmail.com</email>
<name>Andreis Vinogradovs</name>
</maintainer>
-<maintainer>
+<maintainer type="person">
<email>maksbotan@gentoo.org</email>
<name>Maxim Koltsov</name>
</maintainer>
-<maintainer>
+<maintainer type="person">
<email>rich@annexia.org</email>
<name>Richard Jones</name>
<description>Upstream - please CC on bugs that concerns upstream</description>
</maintainer>
+<maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+</maintainer>
+
<longdescription>Libguestfs is a library and tool set for accessing and
modifying virtual machine (VM) disk images</longdescription>
<use>
diff --git a/app-emulation/libspectrum/metadata.xml b/app-emulation/libspectrum/metadata.xml
index c54cad01d6..d891a3f418 100644
--- a/app-emulation/libspectrum/metadata.xml
+++ b/app-emulation/libspectrum/metadata.xml
@@ -1,17 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>proxy-maintainers</herd>
- <maintainer>
+ <maintainer type="person">
<email>neurogeek@gentoo.org</email>
<name>Jesus Rivero</name>
<description>Proxy Maintainer</description>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>jmfo1982@yahoo.es</email>
<description>Proxied Maintainer. Please CC on bugs.</description>
<name>José Manuel Ferrer Ortiz</name>
</maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<longdescription>
libspectrum is a library designed to make the input and output of some ZX
Spectrum emulator files slightly easier. It is intended to be usable on Unix
diff --git a/app-emulation/libvirt-glib/Manifest b/app-emulation/libvirt-glib/Manifest
index 74c17e9e3d..155d400310 100644
--- a/app-emulation/libvirt-glib/Manifest
+++ b/app-emulation/libvirt-glib/Manifest
@@ -1,3 +1,2 @@
-DIST libvirt-glib-0.2.0.tar.gz 836245 SHA256 30b7e0f224f9cdcf34c1b05b08803cb617d057613ee96395ae517f4ee6c44a0b SHA512 23b698fe297247dd5ce06d9e37eed2025064ab76a52f008cb89cd835364a52c8fe60ae535f68e67fb6c3454d41328dd77c392efd594a3fb1a237d1beb25d19ae WHIRLPOOL 6ef50cc740fa1b43dafc4666ac221bb57312dd937ee693bd12e582e3cec784a5c7a5d22e3c15cc369ac0a24ae26ce64edc69d2c4b55fc2ea83a8e350bc8003ab
-DIST libvirt-glib-0.2.1.tar.gz 844657 SHA256 d856d37b708bc8bf9e6ac294edca7a53f2baa6d857c6f5859be58517a714a2fb SHA512 bd38b5c415f65bd6e8824d419c787afdd43aa322f03045f517f9bae88575de1a0975f0340b24bf776421eeb54632227d798e801a1611ce932878ad7bace3adfb WHIRLPOOL 99408b22553d8b4bea5df75750aea2339800ad45b7497eae1afdc79e11be256f0e79d29fe879ef4bc8992817178850058ee361fa4ac5a4b2213f09a6fa825cb2
DIST libvirt-glib-0.2.2.tar.gz 853052 SHA256 d7be16025231c91ccae43838b7cdb1d55d181856a2a50b0f7b1c5078ad202d9d SHA512 77adcf74dd057b8c5e3c21e1fbe0a99eedbe0005d0247c0173bce69e4e6209dbffe18c7a2f0de9a4c279f138ab5bcc360c14cc2335d0b2b55f22b5819c3e5b70 WHIRLPOOL 628d76cf20fe0b707a56688ad4f17c2c95b12b89fe89f4628e42cee2e8c5855aeac0e06ad45fe71fb63ae935b1ff7a17ee69f294b8358653f7cbcd03aea59876
+DIST libvirt-glib-0.2.3.tar.gz 876258 SHA256 c3b11aa34584b3416148b36bb005505e461830c73c9fd2f40143cca3309250dd SHA512 007e642724658e7f2d4ad10094e70a93186196467140662d5e71644ae8efac25a7f60dcf51b55b60d056d3079ecf0798428e077cb6110292ce5f2a474db9e369 WHIRLPOOL 594ab70f4647e053d9540e857aeba7853491200d825eed713a1025afe5eabbe2f3c698d30b00e0da1735f2fc8465212eae2a965fb93a68099df5d11ce494a0d2
diff --git a/app-emulation/libvirt-glib/libvirt-glib-0.2.0.ebuild b/app-emulation/libvirt-glib/libvirt-glib-0.2.0.ebuild
deleted file mode 100644
index 1bde313269..0000000000
--- a/app-emulation/libvirt-glib/libvirt-glib-0.2.0.ebuild
+++ /dev/null
@@ -1,54 +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"
-VALA_MIN_API_VERSION="0.14"
-PYTHON_COMPAT=( python2_7 )
-
-inherit gnome2 python-single-r1 vala
-
-DESCRIPTION="GLib and GObject mappings for libvirt"
-HOMEPAGE="http://libvirt.org/git/?p=libvirt-glib.git"
-SRC_URI="ftp://libvirt.org/libvirt/glib/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="+introspection python +vala"
-REQUIRED_USE="
- python? ( ${PYTHON_REQUIRED_USE} )
- vala? ( introspection )
-"
-
-# https://bugzilla.redhat.com/show_bug.cgi?id=1093633
-RESTRICT="test"
-
-RDEPEND="
- dev-libs/libxml2:2
- >=app-emulation/libvirt-0.9.10:=
- >=dev-libs/glib-2.38.0:2
- introspection? ( >=dev-libs/gobject-introspection-0.10.8:= )
- python? ( ${PYTHON_DEPS} )
-"
-DEPEND="${RDEPEND}
- dev-util/gtk-doc-am
- >=dev-util/intltool-0.35.0
- virtual/pkgconfig
- vala? ( $(vala_depend) )
-"
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_configure() {
- gnome2_src_configure \
- --disable-test-coverage \
- --disable-static \
- $(use_enable introspection) \
- $(use_enable vala) \
- $(use_with python)
-}
diff --git a/app-emulation/libvirt-glib/libvirt-glib-0.2.1.ebuild b/app-emulation/libvirt-glib/libvirt-glib-0.2.3.ebuild
index 27caa06e58..a5ccb744bd 100644
--- a/app-emulation/libvirt-glib/libvirt-glib-0.2.1.ebuild
+++ b/app-emulation/libvirt-glib/libvirt-glib-0.2.3.ebuild
@@ -15,7 +15,7 @@ SRC_URI="ftp://libvirt.org/libvirt/glib/${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="~amd64 ~x86"
IUSE="+introspection python +vala"
REQUIRED_USE="
python? ( ${PYTHON_REQUIRED_USE} )
@@ -27,7 +27,7 @@ RESTRICT="test"
RDEPEND="
dev-libs/libxml2:2
- >=app-emulation/libvirt-0.9.10:=
+ >=app-emulation/libvirt-1.2.6:=
>=dev-libs/glib-2.38.0:2
introspection? ( >=dev-libs/gobject-introspection-0.10.8:= )
python? ( ${PYTHON_DEPS} )
diff --git a/app-emulation/libvirt-glib/metadata.xml b/app-emulation/libvirt-glib/metadata.xml
index 670adf6150..3d9b69dab4 100644
--- a/app-emulation/libvirt-glib/metadata.xml
+++ b/app-emulation/libvirt-glib/metadata.xml
@@ -1,10 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>gnome</herd>
-<maintainer>
+<maintainer type="person">
<email>tamiko@gentoo.org</email>
<name>Matthias Maier</name>
<description>Please CC me on bugs</description>
</maintainer>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
</pkgmetadata>
diff --git a/app-emulation/libvirt-snmp/metadata.xml b/app-emulation/libvirt-snmp/metadata.xml
index 75dd2ca7d3..acd00be69f 100644
--- a/app-emulation/libvirt-snmp/metadata.xml
+++ b/app-emulation/libvirt-snmp/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>dev-zero@gentoo.org</email>
<name>Tiziano Müller</name>
</maintainer>
diff --git a/app-emulation/libvirt/Manifest b/app-emulation/libvirt/Manifest
index ea286cf0f2..a7622e1e11 100644
--- a/app-emulation/libvirt/Manifest
+++ b/app-emulation/libvirt/Manifest
@@ -1,4 +1,4 @@
-DIST libvirt-1.2.18.tar.gz 29412554 SHA256 d5a5ff18af4cced21fed986d28fa0a21b782d256920326bf0ff1c7731eeb6ade SHA512 e89d494066ebec4de4c9a53089f015635b7b5ccf4a10ab9749883cc81f6f9607b18ca91a1bd01a9cdacb3a46de86223f0432fae3954106cb92dd275e5b4138c5 WHIRLPOOL dbbbd627ccb9be154bc680407898cd32dfdbc218a67f54560e6b0f0200cbc157a9aa05834de5d9d23e3b6da0625fd5943b4c8e38f8bb9a6ff920bc5820287bfc
-DIST libvirt-1.2.19.tar.gz 29644247 SHA256 282c141f03331d640020c15f81464b27400e0ee307ef4c5190393b021caedd6e SHA512 2f3f26b90120a39861683f1b5af93ac661ab561e23514c71c2ebfb1ab88da99d25acee9a5d11bec35478e38b9105f3779bffb4d4649f16a91aeccdcaa61e4aa4 WHIRLPOOL 4262beb2248495746d32bc7b16c3eec69d9cba7d4fb3870fcd560bd4d222827cf90eb9cc3df647f3fe10467d1562e72138cbf871adc5f63d4788069e1b9740ac
-DIST libvirt-1.2.20.tar.gz 29725368 SHA256 df0b5d8a150863a86b98cf809a586c91b2d49af25b74a354049ea416b0b27d30 SHA512 2c7f7995d38d15453de99cc34e63db9c39c653fc24a4fd949207e62c0241f2a5ff3ab5505909ffae77f7a91d321396372188aa29124b8271f876d93546c44d07 WHIRLPOOL 553517c8eec3f601987d9a9205668a81ffcaf9081ee0d79de847ce1d2c9bcd9115471adf2022095143d440a07f7d48059cfd88094b7dda7046a784c93c449817
+DIST libvirt-1.2.21-20151222.tar.xz 1684 SHA256 6c97f288470ec58bcbe98507563c6a191892c6f8813a7b9688c09b823934cbe5 SHA512 4fd43f0e12434b78ac3e671ad8eb0e402d384cff6278f6d0db322a068c2c8807c7c7f7e5774aa9d19e2a85e49f6d9888908b32fca5fc04980134edaccba0afe2 WHIRLPOOL 2bfbc3cbf1ca44a2bb06ddf2e8eabeb116165560b9c73d649d7b8cc9baba851f5e9246414bfc2c4740f27d0d0d42b6176eaec43b05e8c1e54de2804150c2cde1
DIST libvirt-1.2.21.tar.gz 29848954 SHA256 8d406582f5fe88d739d1d83e0ba7ac7f91f5a8da4be82162ab85631744d8925b SHA512 5c15d0ba5d75c13f735c6a60dfdbad007426f77e113f95894d520f7fc358fa4361d5cce7bb9a548a436f323b845f13b8940abbad568b8b146418430068bb970e WHIRLPOOL d53bbb07c85b3aa2d9b0f38ff2edd3cd0a2a5300627f3e2f0a82bc057303617cab9d6f1d8a9a771bd968b0496d38d3a39a0154f88bdca44dda359a65fdc2c650
+DIST libvirt-1.3.0-20151222.tar.xz 1684 SHA256 3628c3398862eae2966ccf0e55822e4cb8f47e6e8c1b0d17b6fdb9f69dc5490b SHA512 71c8dabc9cb8ead2858bf2d77d3831db59ac34076c99a4ae607c7bb4678b0af28a9f31fdca047ee174237f0e91fbb8db3a843e605256514e1d0ad527fc412275 WHIRLPOOL 47ebd21dd7d17812b8e97ebb70453574550cac18b0cf88cd38c152565d1e01f725a6da90878c41c7836a59318c1294859870e5bb523981954618fdde6704360e
+DIST libvirt-1.3.0.tar.gz 30114683 SHA256 ebcf5645fa565e3fe2fe94a86e841db9b768cf0e0a7e6cf395c6327f9a23bd64 SHA512 e252390a05b76e9cd9ed02caadd0ee0d674505f60940bb6ced955e17f69c7dd55fe5b38204ae5c25b6e5703415a0f6a12fc545d138d0e8b016457a85dc8fa2b8 WHIRLPOOL 852c592b27be86d3fb2ec75ca5debf9a1e0ac5de6d1ab06c55c2d70e83de125d10c2fc967b7578fba9137ed7a30b7a7e195f4e5f8d35708deeeddc97424d5e40
diff --git a/app-emulation/libvirt/files/libvirt-1.3.0-do_not_use_sysconf.patch b/app-emulation/libvirt/files/libvirt-1.3.0-do_not_use_sysconf.patch
new file mode 100644
index 0000000000..47010c4f74
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirt-1.3.0-do_not_use_sysconf.patch
@@ -0,0 +1,114 @@
+diff --git a/daemon/Makefile.am b/daemon/Makefile.am
+index be1b5a9..5ce0e1e 100644
+--- a/daemon/Makefile.am
++++ b/daemon/Makefile.am
+@@ -385,9 +385,7 @@ uninstall-logrotate:
+ rmdir $(DESTDIR)$(sysconfdir)/logrotate.d || :
+
+ install-sysconfig:
+- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysconfig
+- $(INSTALL_DATA) $(srcdir)/libvirtd.sysconf \
+- $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd
++
+ uninstall-sysconfig:
+ rm -f $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd
+ rmdir $(DESTDIR)$(sysconfdir)/sysconfig || :
+diff --git a/daemon/libvirtd.service.in b/daemon/libvirtd.service.in
+index 608221c..63708f4 100644
+--- a/daemon/libvirtd.service.in
++++ b/daemon/libvirtd.service.in
+@@ -12,8 +12,7 @@ Documentation=http://libvirt.org
+
+ [Service]
+ Type=notify
+-EnvironmentFile=-/etc/sysconfig/libvirtd
+-ExecStart=@sbindir@/libvirtd $LIBVIRTD_ARGS
++ExecStart=@sbindir@/libvirtd
+ ExecReload=/bin/kill -HUP $MAINPID
+ KillMode=process
+ Restart=on-failure
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 7219f7c..c474a23 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -2473,11 +2473,6 @@ EXTRA_DIST += \
+ logging/virtlogd.sysconf
+
+ install-sysconfig:
+- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysconfig
+- $(INSTALL_DATA) $(srcdir)/locking/virtlockd.sysconf \
+- $(DESTDIR)$(sysconfdir)/sysconfig/virtlockd
+- $(INSTALL_DATA) $(srcdir)/logging/virtlogd.sysconf \
+- $(DESTDIR)$(sysconfdir)/sysconfig/virtlogd
+
+ uninstall-sysconfig:
+ rm -f $(DESTDIR)$(sysconfdir)/sysconfig/virtlogd
+diff --git a/src/locking/virtlockd.service.in b/src/locking/virtlockd.service.in
+index 57089b0..ace0c83 100644
+--- a/src/locking/virtlockd.service.in
++++ b/src/locking/virtlockd.service.in
+@@ -5,8 +5,7 @@ Documentation=man:virtlockd(8)
+ Documentation=http://libvirt.org
+
+ [Service]
+-EnvironmentFile=-/etc/sysconfig/virtlockd
+-ExecStart=@sbindir@/virtlockd $VIRTLOCKD_ARGS
++ExecStart=@sbindir@/virtlockd
+ ExecReload=/bin/kill -USR1 $MAINPID
+ # Loosing the locks is a really bad thing that will
+ # cause the machine to be fenced (rebooted), so make
+diff --git a/src/logging/virtlogd.service.in b/src/logging/virtlogd.service.in
+index a264d3a..b467884 100644
+--- a/src/logging/virtlogd.service.in
++++ b/src/logging/virtlogd.service.in
+@@ -5,8 +5,7 @@ Documentation=man:virtlogd(8)
+ Documentation=http://libvirt.org
+
+ [Service]
+-EnvironmentFile=-/etc/sysconfig/virtlogd
+-ExecStart=@sbindir@/virtlogd $VIRTLOGD_ARGS
++ExecStart=@sbindir@/virtlogd
+ ExecReload=/bin/kill -USR1 $MAINPID
+ # Loosing the logs is a really bad thing that will
+ # cause the machine to be fenced (rebooted), so make
+diff --git a/tools/Makefile.am b/tools/Makefile.am
+index 9180564..e72d5f4 100644
+--- a/tools/Makefile.am
++++ b/tools/Makefile.am
+@@ -293,7 +293,7 @@ uninstall-local: uninstall-init uninstall-systemd
+ install-sysconfig:
+ $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysconfig
+ $(INSTALL_DATA) $(srcdir)/libvirt-guests.sysconf \
+- $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests
++ $(DESTDIR)$(sysconfdir)/libvirt/libvirt-guests.conf
+
+ uninstall-sysconfig:
+ rm -f $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests
+diff --git a/tools/libvirt-guests.service.in b/tools/libvirt-guests.service.in
+index c31f663..71cb79d 100644
+--- a/tools/libvirt-guests.service.in
++++ b/tools/libvirt-guests.service.in
+@@ -5,7 +5,7 @@ Documentation=man:libvirtd(8)
+ Documentation=http://libvirt.org
+
+ [Service]
+-EnvironmentFile=-/etc/sysconfig/libvirt-guests
++EnvironmentFile=-/etc/libvirt/libvirt-guests.conf
+ # Hack just call traditional service until we factor
+ # out the code
+ ExecStart=@libexecdir@/libvirt-guests.sh start
+diff --git a/tools/libvirt-guests.sysconf b/tools/libvirt-guests.sysconf
+index 2770056..accd4f5 100644
+--- a/tools/libvirt-guests.sysconf
++++ b/tools/libvirt-guests.sysconf
+@@ -1,3 +1,10 @@
++#
++# Warning: This configuration file is only sourced by the systemd
++# libvirt-guests.service unit. The coresponding openrc facility is in
++# /etc/init.d/libvirtd and /etc/conf.d/libvirtd
++#
++
++
+ # URIs to check for running guests
+ # example: URIS='default xen:/// vbox+tcp://host/system lxc:///'
+ #URIS=default
diff --git a/app-emulation/libvirt/files/libvirtd.confd-r4 b/app-emulation/libvirt/files/libvirtd.confd-r4
deleted file mode 100644
index 48ab1252e3..0000000000
--- a/app-emulation/libvirt/files/libvirtd.confd-r4
+++ /dev/null
@@ -1,43 +0,0 @@
-# /etc/conf.d/libvirtd
-
-# Startup dependency
-# libvirtd typically requires all networks to be up and settled which
-# is what rc_need="net" provides. However if you only use specific networks
-# for libvirtd, you may override this. Or if you only use libvirtd locally.
-rc_need="net"
-
-# LIBVIRTD_OPTS
-# You may want to add '--listen' to have libvirtd listen for tcp/ip connections
-# if you want to use libvirt for remote control
-# Please consult 'libvirtd --help' for more options
-#LIBVIRTD_OPTS="--listen"
-
-# LIBVIRTD_KVM_SHUTDOWN
-# Valid options:
-# * shutdown - Sends an ACPI shutdown (think when you tap the power button
-# on your machine and it begins a graceful shutdown). If your
-# VM ignores this, it will have the power yanked out from under
-# it in LIBVIRTD_KVM_SHUTDOWN_MAXWAIT seconds.
-# * managedsave - Performs a state save external to the VM. qemu-kvm will stop
-# stop the CPU and save off all state to a separate file. When
-# the machine is started again, it will resume like nothing ever
-# happened. This is guarenteed to always successfully stop your
-# machine and restart it. However it may take some time to finish.
-# * none - No attempts will be made to stop any VMs. If you are restarting your
-# machine the qemu-kvm process will be simply killed, which may result
-# in your VMs having disk corruption.
-LIBVIRTD_KVM_SHUTDOWN="managedsave"
-
-# LIBVIRTD_KVM_SHUTDOWN_MAXWAIT
-# Timeout in seconds until stopping libvirtd and "pulling the plug" on the
-# remaining VM's still in a running state
-#LIBVIRTD_KVM_SHUTDOWN_MAXWAIT="500"
-
-# LIBVIRTD_KVM_NET_SHUTDOWN
-# If libvirtd created networks for you (e.g. NATed networks) then this init
-# script will shut them down for you if this is set to 'yes'. Otherwise,
-# the networks will be left running once libvirt is shutdown. For this
-# option to be useful you must have enabled the 'virt-network' USE flag and
-# have had libvirt create a NATed network for you.
-# Valid values: 'yes' or 'no'
-#LIBVIRTD_KVM_NET_SHUTDOWN="yes"
diff --git a/app-emulation/libvirt/files/libvirtd.init-r14 b/app-emulation/libvirt/files/libvirtd.init-r14
deleted file mode 100644
index 7bab68249e..0000000000
--- a/app-emulation/libvirt/files/libvirtd.init-r14
+++ /dev/null
@@ -1,139 +0,0 @@
-#!/sbin/runscript
-
-description="Virtual Machine Management daemon (libvirt)"
-extra_started_commands="reload halt"
-description_halt="Stops the libvirt daemon without stopping your VMs"
-description_reload="Restarts the libvirt daemon without stopping your VMs"
-
-depend() {
- USE_FLAG_FIREWALLD
- use USE_FLAG_AVAHI USE_FLAG_ISCSI USE_FLAG_RBD dbus virtlockd
- after ntp-client ntpd nfs nfsmount portmap rpc.statd iptables ip6tables ebtables corosync sanlock cgconfig xenconsoled
-}
-
-libvirtd_virsh() {
- local mode=$1
- shift
-
- # Silence errors because virsh always throws an error about
- # not finding the hypervisor version when connecting to libvirtd
- LC_ALL=C virsh -c ${mode}:///system "$@" 2>/dev/null
-}
-
-libvirtd_dom_list() {
- # Make sure that it wouldn't be confused if the domain name
- # contains the word running.
- libvirtd_virsh $1 list | awk '$3 == "running" { print $1 }'
-}
-
-libvirtd_dom_count() {
- # Make sure that it wouldn't be confused if the domain name
- # contains the word running.
- libvirtd_virsh $1 list | awk 'BEGIN { count = 0 } \
- $3 == "running" { count++ } \
- END { print count }'
-}
-
-libvirtd_net_list() {
- # The purpose of the awk is to avoid networks with 'active' in the name
- libvirtd_virsh $1 net-list | awk '$2 == "active" { print $1 }'
-}
-
-libvirtd_net_count() {
- # The purpose of the awk is to avoid networks with 'active' in the name
- libvirtd_virsh $1 net-list | awk 'BEGIN { count = 0 } \
- $2 == "active" { count++ } \
- END { print count }'
-}
-
-
-start() {
- # Test configuration directories in /etc/libvirt/ to be either not
- # present or a directory, i.e. not a regular file, bug #532892
- for dir in lxc nwfilter qemu storage; do
- if [ -f /etc/libvirt/$dir ]; then
- eerror "/etc/libvirt/$dir was created as a regular file. It must be either"
- eerror "a directory or not present for libvirtd to start up successfully."
- return 1
- fi
- done
-
- ebegin "Starting libvirtd"
- start-stop-daemon --start \
- --env KRB5_KTNAME=/etc/libvirt/krb5.tab \
- --exec /usr/sbin/libvirtd -- -d ${LIBVIRTD_OPTS}
- eend $?
-}
-
-stop() {
- local counter=
- local vm_name=
- local net_name=
- local dom_id=
-
- ebegin "Stopping libvirtd"
- # try to shutdown all (KVM/Qemu) domains
- if [ "${LIBVIRTD_KVM_SHUTDOWN}" != "none" ] \
- && [ "$(libvirtd_dom_count qemu)" != "0" ] ; then
-
- einfo " Shutting down domain(s):"
- for dom_id in $(libvirtd_dom_list qemu) ; do
- vm_name="$(libvirtd_virsh qemu domname ${dom_id} | head -n 1)"
- einfo " ${vm_name}"
- libvirtd_virsh qemu ${LIBVIRTD_KVM_SHUTDOWN} ${dom_id} > /dev/null
- done
-
- if [ -n "${LIBVIRTD_KVM_SHUTDOWN_MAXWAIT}" ] ; then
- counter="${LIBVIRTD_KVM_SHUTDOWN_MAXWAIT}"
- else
- counter=500
- fi
-
- if [ "${LIBVIRTD_KVM_SHUTDOWN}" = "shutdown" ]; then
- einfo " Waiting ${counter} seconds while domains shutdown ..."
- DOM_COUNT="$(libvirtd_dom_count qemu)"
- while [ ${DOM_COUNT} -gt 0 ] && [ ${counter} -gt 0 ] ; do
- DOM_COUNT="$(libvirtd_dom_count qemu)"
- sleep 1
- counter=$((${counter} - 1))
- echo -n "."
- done
- fi
-
- if [ "$(libvirtd_dom_count qemu)" != "0" ] ; then
- eerror " !!! Some guests are still running, stopping anyway"
- fi
-
- fi
-
- if [ "${LIBVIRTD_KVM_NET_SHUTDOWN}" != "no" ] \
- && [ "$(libvirtd_net_count qemu)" != "0" ]; then
-
- einfo " Shutting down network(s):"
- for net_name in $(libvirtd_net_list qemu); do
- einfo " ${net_name}"
- libvirtd_virsh qemu net-destroy ${net_name} > /dev/null
- done
-
- if [ "$(libvirtd_net_count qemu)" != "0" ]; then
- eerror " !!! Some networks are still active, stopping anyway"
- fi
- fi
-
- # Now actually stop the daemon
- start-stop-daemon --stop --quiet --exec \
- /usr/sbin/libvirtd --pidfile=/var/run/libvirtd.pid
- eend $?
-}
-
-halt() {
- ebegin "Stopping libvirtd without shutting down your VMs"
- start-stop-daemon --stop --quiet --exec \
- /usr/sbin/libvirtd --pidfile=/var/run/libvirtd.pid
- eend $?
-}
-
-reload() {
- halt
- start
-}
diff --git a/app-emulation/libvirt/files/libvirtd.init-r16 b/app-emulation/libvirt/files/libvirtd.init-r16
new file mode 100644
index 0000000000..2aa9a880db
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirtd.init-r16
@@ -0,0 +1,35 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+description="Virtual Machine Management daemon (libvirt)"
+
+LIBVIRTD_OPTS=${LIBVIRTD_OPTS:-"${LIBVIRTD_OPTS}"}
+LIBVIRTD_TIMEOUT=${LIBVIRTD_TERMTIMEOUT:-"TERM/25/KILL/5"}
+
+command="/usr/sbin/libvirtd"
+command_args="-d ${LIBVIRTD_OPTS}"
+start_stop_daemon_args="--env KRB5_KTNAME=/etc/libvirt/krb5.tab"
+pidfile="/var/run/libvirtd.pid"
+retry="${LIBVIRTD_TERMTIMEOUT}"
+
+depend() {
+ need virtlogd
+ use dbus virtlockd
+ after ntp-client ntpd nfs nfsmount portmap rpc.statd iptables ip6tables ebtables corosync sanlock cgconfig xenconsoled
+ USE_FLAG_FIREWALLD
+ USE_FLAG_AVAHI
+ USE_FLAG_ISCSI
+ USE_FLAG_RBD
+}
+
+start_pre() {
+ # Test configuration directories in /etc/libvirt/ to be either not
+ # present or a directory, i.e. not a regular file, bug #532892
+
+ checkpath --directory /etc/libvirt/lxc || return 1
+ checkpath --directory /etc/libvirt/nwfilter || return 1
+ checkpath --directory /etc/libvirt/qemu || return 1
+ checkpath --directory /etc/libvirt/storage || return 1
+}
diff --git a/app-emulation/libvirt/files/virtlogd.init-r1 b/app-emulation/libvirt/files/virtlogd.init-r1
new file mode 100644
index 0000000000..fac51d99b4
--- /dev/null
+++ b/app-emulation/libvirt/files/virtlogd.init-r1
@@ -0,0 +1,24 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+description="libvirt virtual machine logging manager"
+command="/usr/sbin/virtlogd"
+command_args="-d"
+pidfile="/var/run/virtlogd.pid"
+
+extra_started_commands="reload"
+description_reload="re-exec the daemon, while maintaining open connections"
+
+
+depend() {
+ after ntp-client ntpd nfs nfsmount corosync
+}
+
+reload() {
+ ebegin "re-exec() virtlogd"
+
+ start-stop-daemon --signal SIGUSR1 \
+ --exec "${command}" --pidfile "${pidfile}"
+}
diff --git a/app-emulation/libvirt/libvirt-1.2.18-r1.ebuild b/app-emulation/libvirt/libvirt-1.2.18-r1.ebuild
deleted file mode 100644
index 9ffa581469..0000000000
--- a/app-emulation/libvirt/libvirt-1.2.18-r1.ebuild
+++ /dev/null
@@ -1,480 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-AUTOTOOLIZE=yes
-
-MY_P="${P/_rc/-rc}"
-
-inherit eutils user autotools linux-info systemd readme.gentoo
-
-BACKPORTS=""
-
-if [[ ${PV} = *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="git://libvirt.org/libvirt.git"
- SRC_URI=""
- KEYWORDS=""
- SLOT="0"
-else
- # Versions with 4 numbers are stable updates:
- if [[ ${PV} =~ ^[0-9]+(\.[0-9]+){3} ]]; then
- SRC_URI="http://libvirt.org/sources/stable_updates/${MY_P}.tar.gz"
- else
- SRC_URI="http://libvirt.org/sources/${MY_P}.tar.gz"
- fi
- SRC_URI+=" ${BACKPORTS:+
- https://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz
- https://dev.gentoo.org/~tamiko/distfiles/${P}-${BACKPORTS}.tar.xz}"
- KEYWORDS="amd64 x86"
- SLOT="0/${PV}"
-fi
-S="${WORKDIR}/${P%_rc*}"
-
-DESCRIPTION="C toolkit to manipulate virtual machines"
-HOMEPAGE="http://www.libvirt.org/"
-LICENSE="LGPL-2.1"
-# TODO: Reenable IUSE wireshark-plugins
-IUSE="apparmor audit avahi +caps firewalld fuse glusterfs iscsi +libvirtd lvm \
- lxc +macvtap nfs nls numa openvz parted pcap phyp policykit +qemu rbd sasl \
- selinux +udev uml +vepa virtualbox virt-network wireshark-plugins xen \
- elibc_glibc systemd"
-REQUIRED_USE="libvirtd? ( || ( lxc openvz qemu uml virtualbox xen ) )
- lxc? ( caps libvirtd )
- openvz? ( libvirtd )
- qemu? ( libvirtd )
- uml? ( libvirtd )
- vepa? ( macvtap )
- virtualbox? ( libvirtd )
- xen? ( libvirtd )
- virt-network? ( libvirtd )
- firewalld? ( virt-network )"
-
-# gettext.sh command is used by the libvirt command wrappers, and it's
-# non-optional, so put it into RDEPEND.
-# We can use both libnl:1.1 and libnl:3, but if you have both installed, the
-# package will use 3 by default. Since we don't have slot pinning in an API,
-# we must go with the most recent
-RDEPEND="sys-libs/readline:=
- sys-libs/ncurses:0=
- >=net-misc/curl-7.18.0
- net-firewall/ebtables
- >=net-firewall/iptables-1.4.10[ipv6]
- dev-libs/libgcrypt:0
- >=dev-libs/libxml2-2.7.6
- dev-libs/libnl:3
- >=net-libs/gnutls-1.0.25
- net-libs/libssh2
- sys-apps/dmidecode
- >=sys-apps/util-linux-2.17
- sys-devel/gettext
- >=net-analyzer/netcat6-1.0-r2
- app-misc/scrub
- apparmor? ( sys-libs/libapparmor )
- audit? ( sys-process/audit )
- avahi? ( >=net-dns/avahi-0.6[dbus] )
- caps? ( sys-libs/libcap-ng )
- fuse? ( >=sys-fs/fuse-2.8.6 )
- glusterfs? ( >=sys-cluster/glusterfs-3.4.1 )
- iscsi? ( sys-block/open-iscsi )
- lxc? ( !systemd? ( sys-power/pm-utils ) )
- lvm? ( >=sys-fs/lvm2-2.02.48-r2 )
- nfs? ( net-fs/nfs-utils )
- numa? (
- >sys-process/numactl-2.0.2
- sys-process/numad
- )
- openvz? ( sys-kernel/openvz-sources:* )
- parted? (
- >=sys-block/parted-1.8[device-mapper]
- sys-fs/lvm2
- )
- pcap? ( >=net-libs/libpcap-1.0.0 )
- policykit? ( >=sys-auth/polkit-0.9 )
- qemu? (
- >=app-emulation/qemu-0.13.0
- dev-libs/yajl
- !systemd? ( sys-power/pm-utils )
- )
- rbd? ( sys-cluster/ceph )
- sasl? ( dev-libs/cyrus-sasl )
- selinux? ( >=sys-libs/libselinux-2.0.85 )
- systemd? ( sys-apps/systemd )
- virtualbox? ( || ( app-emulation/virtualbox >=app-emulation/virtualbox-bin-2.2.0 ) )
- wireshark-plugins? ( net-analyzer/wireshark:= )
- xen? ( app-emulation/xen-tools app-emulation/xen )
- udev? ( virtual/udev >=x11-libs/libpciaccess-0.10.9 )
- virt-network? ( net-dns/dnsmasq[script]
- net-misc/radvd
- sys-apps/iproute2[-minimal]
- firewalld? ( net-firewall/firewalld )
- )
- elibc_glibc? ( || ( >=net-libs/libtirpc-0.2.2-r1 <sys-libs/glibc-2.14 ) )"
-
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- app-text/xhtml1
- dev-lang/perl
- dev-perl/XML-XPath
- dev-libs/libxslt"
-
-# gentoo.readme stuff:
-DISABLE_AUTOFORMATTING=true
-DOC_CONTENTS="For the basic networking support (bridged and routed networks) you don't
-need any extra software. For more complex network modes including but not
-limited to NATed network, you can enable the 'virt-network' USE flag.
-
-If you are using dnsmasq on your system, you will have to configure
-/etc/dnsmasq.conf to enable the following settings:
- bind-interfaces
- interface or except-interface
-Otherwise you might have issues with your existing DNS server.
-
-For openrc users:
-
- Please use /etc/conf.d/libvirtd to control the '--listen' parameter for
- libvirtd.
-
- The default configuration will suspend and resume running kvm guests
- with 'managedsave'. This behavior can be changed under
- /etc/conf.d/libvirtd
-
-For systemd users:
-
- Please use /etc/systemd/system/libvirtd.service.d/00gentoo.conf
- to control the '--listen' parameter for libvirtd.
-
- The configuration for the 'libvirt-guests.service' is found under
- /etc/libvirt/libvirt-guests.conf"
-
-! use policykit && DOC_CONTENTS+="
-
-To allow normal users to connect to libvirtd you must change the unix sock
-group and/or perms in /etc/libvirt/libvirtd.conf"
-
-use caps && use qemu && DOC_CONTENTS+="
-
-libvirt will now start qemu/kvm VMs with non-root privileges. Ensure any
-resources your VMs use are accessible by qemu:qemu"
-
-LXC_CONFIG_CHECK="
- ~CGROUPS
- ~CGROUP_FREEZER
- ~CGROUP_DEVICE
- ~CGROUP_CPUACCT
- ~CGROUP_SCHED
- ~CGROUP_PERF
- ~BLK_CGROUP
- ~NET_CLS_CGROUP
- ~CGROUP_NET_PRIO
- ~CPUSETS
- ~NAMESPACES
- ~UTS_NS
- ~IPC_NS
- ~PID_NS
- ~NET_NS
- ~USER_NS
- ~DEVPTS_MULTIPLE_INSTANCES
- ~VETH
- ~MACVLAN
- ~POSIX_MQUEUE
- ~SECURITYFS
- ~!GRKERNSEC_CHROOT_MOUNT
- ~!GRKERNSEC_CHROOT_DOUBLE
- ~!GRKERNSEC_CHROOT_PIVOT
- ~!GRKERNSEC_CHROOT_CHMOD
- ~!GRKERNSEC_CHROOT_CAPS
-"
-
-VIRTNET_CONFIG_CHECK="
- ~BRIDGE_NF_EBTABLES
- ~BRIDGE_EBT_MARK_T
- ~NETFILTER_ADVANCED
- ~NETFILTER_XT_TARGET_CHECKSUM
- ~NETFILTER_XT_CONNMARK
- ~NETFILTER_XT_MARK
-"
-
-BWLMT_CONFIG_CHECK="
- ~BRIDGE_EBT_T_NAT
- ~NET_SCH_HTB
- ~NET_SCH_SFQ
- ~NET_SCH_INGRESS
- ~NET_CLS_FW
- ~NET_CLS_U32
- ~NET_ACT_POLICE
-"
-
-MACVTAP_CONFIG_CHECK=" ~MACVTAP"
-
-LVM_CONFIG_CHECK=" ~BLK_DEV_DM ~DM_SNAPSHOT ~DM_MULTIPATH"
-
-ERROR_USER_NS="Optional depending on LXC configuration."
-
-pkg_setup() {
- enewgroup qemu 77
- enewuser qemu 77 -1 -1 qemu kvm
-
- # Some people used the masked ebuild which was not adding the qemu
- # user to the kvm group originally. This results in VMs failing to
- # start for some users. bug #430808
- egetent group kvm | grep -q qemu
- if [[ $? -ne 0 ]]; then
- gpasswd -a qemu kvm
- fi
-
- # Handle specific kernel versions for different features
- kernel_is lt 3 6 && LXC_CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
- kernel_is ge 3 6 && LXC_CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP ~MEMCG_KMEM"
-
- CONFIG_CHECK=""
- use fuse && CONFIG_CHECK+=" ~FUSE_FS"
- use lvm && CONFIG_CHECK+="${LVM_CONFIG_CHECK}"
- use lxc && CONFIG_CHECK+="${LXC_CONFIG_CHECK}"
- use macvtap && CONFIG_CHECK+="${MACVTAP_CONFIG_CHECK}"
- use virt-network && CONFIG_CHECK+="${VIRTNET_CONFIG_CHECK}"
- # Bandwidth Limiting Support
- use virt-network && CONFIG_CHECK+="${BWLMT_CONFIG_CHECK}"
- if [[ -n ${CONFIG_CHECK} ]]; then
- linux-info_pkg_setup
- fi
-}
-
-src_prepare() {
- touch "${S}/.mailmap"
-
- if [[ ${PV} = *9999* ]]; then
- # git checkouts require bootstrapping to create the configure script.
- # Additionally the submodules must be cloned to the right locations
- # bug #377279
- ./bootstrap || die "bootstrap failed"
- (
- git submodule status | sed 's/^[ +-]//;s/ .*//'
- git hash-object bootstrap.conf
- ) >.git-module-status
- fi
-
- epatch \
- "${FILESDIR}"/${PN}-1.2.9-do_not_use_sysconf.patch \
- "${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch \
- "${FILESDIR}"/${PN}-1.2.17-fix_paths_for_apparmor.patch
-
- [[ -n ${BACKPORTS} ]] && \
- EPATCH_FORCE=yes EPATCH_SUFFIX="patch" \
- EPATCH_SOURCE="${WORKDIR}/patches" epatch
-
- epatch_user
-
- [[ -n ${AUTOTOOLIZE} ]] && eautoreconf
-
- # Tweak the init script
- local avahi_init=
- local iscsi_init=
- local rbd_init=
- local firewalld_init=
- cp "${FILESDIR}/libvirtd.init-r14" "${S}/libvirtd.init"
- use avahi && avahi_init='avahi-daemon'
- use iscsi && iscsi_init='iscsid'
- use rbd && rbd_init='ceph'
- use firewalld && firewalld_init='need firewalld'
-
- sed -e "s/USE_FLAG_FIREWALLD/${firewalld_init}/" -i "${S}/libvirtd.init"
- sed -e "s/USE_FLAG_AVAHI/${avahi_init}/" -i "${S}/libvirtd.init"
- sed -e "s/USE_FLAG_ISCSI/${iscsi_init}/" -i "${S}/libvirtd.init"
- sed -e "s/USE_FLAG_RBD/${rbd_init}/" -i "${S}/libvirtd.init"
-}
-
-src_configure() {
- local myconf=""
-
- ## enable/disable daemon, otherwise client only utils
- myconf+=" $(use_with libvirtd)"
-
- ## enable/disable the daemon using avahi to find VMs
- myconf+=" $(use_with avahi)"
-
- ## hypervisors on the local host
- myconf+=" $(use_with xen) $(use_with xen xen-inotify)"
- myconf+=" --without-xenapi"
- if use xen && has_version ">=app-emulation/xen-tools-4.2.0"; then
- myconf+=" --with-libxl"
- else
- myconf+=" --without-libxl"
- fi
- myconf+=" $(use_with openvz)"
- myconf+=" $(use_with lxc)"
- if use virtualbox && has_version app-emulation/virtualbox-ose; then
- myconf+=" --with-vbox=/usr/lib/virtualbox-ose/"
- else
- myconf+=" $(use_with virtualbox vbox)"
- fi
- myconf+=" $(use_with uml)"
- myconf+=" $(use_with qemu)"
- myconf+=" $(use_with qemu yajl)" # Use QMP over HMP
- myconf+=" $(use_with phyp)"
- myconf+=" --with-esx"
- myconf+=" --with-vmware"
-
- ## additional host drivers
- myconf+=" $(use_with apparmor)"
- myconf+=" $(use_with apparmor apparmor-profiles)"
- myconf+=" $(use_with virt-network network)"
- myconf+=" --with-storage-fs"
- myconf+=" $(use_with lvm storage-lvm)"
- myconf+=" $(use_with iscsi storage-iscsi)"
- myconf+=" $(use_with parted storage-disk)"
- myconf+=" $(use_with glusterfs)"
- myconf+=" $(use_with glusterfs storage-gluster)"
- myconf+=" $(use_with lvm storage-mpath)"
- myconf+=" $(use_with rbd storage-rbd)"
- myconf+=" $(use_with numa numactl)"
- myconf+=" $(use_with numa numad)"
- myconf+=" $(use_with selinux)"
- myconf+=" $(use_with fuse)"
-
- # udev for device support details
- myconf+=" $(use_with udev)"
- myconf+=" --without-hal"
-
- # linux capability support so we don't need privileged accounts
- myconf+=" $(use_with caps capng)"
-
- ## auth stuff
- myconf+=" $(use_with policykit polkit)"
- myconf+=" $(use_with sasl)"
-
- # network bits
- myconf+=" $(use_with macvtap)"
- myconf+=" $(use_with pcap libpcap)"
- myconf+=" $(use_with vepa virtualport)"
- myconf+=" $(use_with firewalld)"
-
- ## other
- myconf+=" $(use_enable nls)"
-
- # user privilege bits fir qemu/kvm
- if use caps; then
- myconf+=" --with-qemu-user=qemu"
- myconf+=" --with-qemu-group=qemu"
- else
- myconf+=" --with-qemu-user=root"
- myconf+=" --with-qemu-group=root"
- fi
-
- # audit support
- myconf+=" $(use_with audit)"
-
- # wireshark dissector
- myconf+=" $(use_with wireshark-plugins wireshark-dissector)"
-
- ## stuff we don't yet support
- myconf+=" --without-netcf"
-
- # locking support
- myconf+=" --without-sanlock"
-
- # systemd unit files
- myconf+=" $(use_with systemd systemd-daemon)"
- use systemd && myconf+=" --with-init-script=systemd"
-
- # this is a nasty trick to work around the problem in bug
- # #275073. The reason why we don't solve this properly is that
- # it'll require us to rebuild autotools (and we don't really want
- # to do that right now). The proper solution has been sent
- # upstream and should hopefully land in 0.7.7, in the mean time,
- # mime the same functionality with this.
- case ${CHOST} in
- *cygwin* | *mingw* )
- ;;
- *)
- ac_cv_prog_WINDRES=no
- ;;
- esac
-
- econf \
- ${myconf} \
- --disable-static \
- --disable-werror \
- --with-remote \
- --docdir=/usr/share/doc/${PF} \
- --localstatedir=/var
-
- if [[ ${PV} = *9999* ]]; then
- # Restore gnulib's config.sub and config.guess
- # bug #377279
- (cd .gnulib && git reset --hard > /dev/null)
- fi
-}
-
-src_test() {
- # Explicitly allow parallel build of tests
- export VIR_TEST_DEBUG=1
- HOME="${T}" emake check || die "tests failed"
-}
-
-src_install() {
- emake install \
- DESTDIR="${D}" \
- HTML_DIR=/usr/share/doc/${PF}/html \
- DOCS_DIR=/usr/share/doc/${PF} \
- EXAMPLE_DIR=/usr/share/doc/${PF}/examples \
- SYSTEMD_UNIT_DIR="$(systemd_get_unitdir)" \
- || die "emake install failed"
-
- find "${D}" -name '*.la' -delete || die
-
- # Remove bogus, empty directories. They are either not used, or
- # libvirtd is able to create them on demand
- rm -rf "${D}"/etc/sysconfig
- rm -rf "${D}"/var/cache
- rm -rf "${D}"/var/run
- rm -rf "${D}"/var/log
-
- use libvirtd || return 0
- # From here, only libvirtd-related instructions, be warned!
-
- use systemd && systemd_install_serviced \
- "${FILESDIR}"/libvirtd.service.conf libvirtd.service
-
- systemd_newtmpfilesd "${FILESDIR}"/libvirtd.tmpfiles.conf libvirtd.conf
-
- newinitd "${S}/libvirtd.init" libvirtd || die
- newconfd "${FILESDIR}/libvirtd.confd-r4" libvirtd || die
- newinitd "${FILESDIR}/virtlockd.init-r1" virtlockd || die
-
- readme.gentoo_create_doc
-}
-
-pkg_preinst() {
- # we only ever want to generate this once
- if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
- rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
- fi
-
- # We really don't want to use or support old PolicyKit cause it
- # screws with the new polkit integration
- if has_version sys-auth/policykit; then
- rm -rf "${D}"/usr/share/PolicyKit/policy/org.libvirt.unix.policy
- fi
-
- # Only sysctl files ending in .conf work
- dodir /etc/sysctl.d
- mv "${D}"/usr/lib/sysctl.d/libvirtd.conf "${D}"/etc/sysctl.d/libvirtd.conf
-}
-
-pkg_postinst() {
- if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
- touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml
- fi
-
- use libvirtd || return 0
- # From here, only libvirtd-related instructions, be warned!
-
- if [[ -n ${REPLACING_VERSIONS} ]] && ! version_is_at_least 1.2.17-r2 ${REPLACING_VERSIONS} ]]; then
- FORCE_PRINT_ELOG=true
- fi
-
- readme.gentoo_print_elog
-}
diff --git a/app-emulation/libvirt/libvirt-1.2.20-r1.ebuild b/app-emulation/libvirt/libvirt-1.2.21-r2.ebuild
index 724342a1bb..80333eeb4b 100644
--- a/app-emulation/libvirt/libvirt-1.2.20-r1.ebuild
+++ b/app-emulation/libvirt/libvirt-1.2.21-r2.ebuild
@@ -6,7 +6,7 @@ EAPI=5
inherit eutils user autotools-utils linux-info systemd readme.gentoo
-BACKPORTS=""
+BACKPORTS="20151222" # CVE-2015-5313
if [[ ${PV} = *9999* ]]; then
inherit git-r3
@@ -24,7 +24,7 @@ else
SRC_URI+=" ${BACKPORTS:+
https://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz
https://dev.gentoo.org/~tamiko/distfiles/${P}-${BACKPORTS}.tar.xz}"
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="amd64 x86"
SLOT="0/${PV}"
fi
@@ -109,7 +109,7 @@ RDEPEND="
wireshark-plugins? ( net-analyzer/wireshark:= )
xen? (
app-emulation/xen
- app-emulation/xen-tools
+ app-emulation/xen-tools:=
)
udev? (
virtual/udev
@@ -295,8 +295,7 @@ src_configure() {
--disable-static
--disable-werror
- --docdir=/usr/share/doc/${PF}
- --htmldir=/usr/share/doc/${PF}/html
+ --with-html-subdir=${PF}/html
--localstatedir=/var
)
diff --git a/app-emulation/libvirt/libvirt-1.2.19-r1.ebuild b/app-emulation/libvirt/libvirt-1.3.0-r1.ebuild
index cb757f002e..f4d64e7119 100644
--- a/app-emulation/libvirt/libvirt-1.2.19-r1.ebuild
+++ b/app-emulation/libvirt/libvirt-1.3.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -6,7 +6,7 @@ EAPI=5
inherit eutils user autotools-utils linux-info systemd readme.gentoo
-BACKPORTS=""
+BACKPORTS="20151222" # CVE-2015-5313
if [[ ${PV} = *9999* ]]; then
inherit git-r3
@@ -34,7 +34,7 @@ LICENSE="LGPL-2.1"
IUSE="apparmor audit avahi +caps firewalld fuse glusterfs iscsi +libvirtd lvm \
lxc +macvtap nfs nls numa openvz parted pcap phyp policykit +qemu rbd sasl \
selinux systemd +udev uml +vepa virtualbox virt-network wireshark-plugins \
- xen elibc_glibc"
+ xen"
REQUIRED_USE="
firewalld? ( virt-network )
@@ -109,13 +109,12 @@ RDEPEND="
wireshark-plugins? ( net-analyzer/wireshark:= )
xen? (
app-emulation/xen
- app-emulation/xen-tools
+ app-emulation/xen-tools:=
)
udev? (
virtual/udev
>=x11-libs/libpciaccess-0.10.9
- )
- elibc_glibc? ( || ( >=net-libs/libtirpc-0.2.2-r1 <sys-libs/glibc-2.14 ) )"
+ )"
DEPEND="${RDEPEND}
app-text/xhtml1
@@ -219,7 +218,7 @@ src_prepare() {
fi
epatch \
- "${FILESDIR}"/${PN}-1.2.9-do_not_use_sysconf.patch \
+ "${FILESDIR}"/${P}-do_not_use_sysconf.patch \
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch \
"${FILESDIR}"/${PN}-1.2.17-fix_paths_for_apparmor.patch
@@ -230,11 +229,11 @@ src_prepare() {
epatch_user
# Tweak the init script:
- cp "${FILESDIR}/libvirtd.init-r15" "${S}/libvirtd.init" || die
+ cp "${FILESDIR}/libvirtd.init-r16" "${S}/libvirtd.init" || die
sed -e "s/USE_FLAG_FIREWALLD/$(usex firewalld 'need firewalld' '')/" \
- -e "s/USE_FLAG_AVAHI/$(usex avahi avahi-daemon '')/" \
- -e "s/USE_FLAG_ISCSI/$(usex iscsi iscsid '')/" \
- -e "s/USE_FLAG_RBD/$(usex rbd ceph '')/" \
+ -e "s/USE_FLAG_AVAHI/$(usex avahi 'use avahi-daemon' '')/" \
+ -e "s/USE_FLAG_ISCSI/$(usex iscsi 'use iscsid' '')/" \
+ -e "s/USE_FLAG_RBD/$(usex rbd 'use ceph' '')/" \
-i "${S}/libvirtd.init" || die "sed failed"
AUTOTOOLS_AUTORECONF=true
@@ -296,8 +295,7 @@ src_configure() {
--disable-static
--disable-werror
- --docdir=/usr/share/doc/${PF}
- --htmldir=/usr/share/doc/${PF}/html
+ --with-html-subdir=${PF}/html
--localstatedir=/var
)
@@ -314,6 +312,10 @@ src_configure() {
# bug #377279
(cd .gnulib && git reset --hard > /dev/null)
fi
+
+ # Workaround: Sometimes this subdirectory is missing and leads to a
+ # build failure.
+ mkdir -p "${BUILD_DIR}"/docs/internals
}
src_test() {
@@ -347,6 +349,7 @@ src_install() {
newinitd "${S}/libvirtd.init" libvirtd || die
newinitd "${FILESDIR}/libvirt-guests.init-r1" libvirt-guests || die
newinitd "${FILESDIR}/virtlockd.init-r1" virtlockd || die
+ newinitd "${FILESDIR}/virtlogd.init-r1" virtlogd || die
newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd || die
newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests || die
diff --git a/app-emulation/libvirt/libvirt-1.2.21.ebuild b/app-emulation/libvirt/libvirt-1.3.0.ebuild
index 724342a1bb..0f03ffa5a7 100644
--- a/app-emulation/libvirt/libvirt-1.2.21.ebuild
+++ b/app-emulation/libvirt/libvirt-1.3.0.ebuild
@@ -6,7 +6,7 @@ EAPI=5
inherit eutils user autotools-utils linux-info systemd readme.gentoo
-BACKPORTS=""
+BACKPORTS="20151222" # CVE-2015-5313
if [[ ${PV} = *9999* ]]; then
inherit git-r3
@@ -109,7 +109,7 @@ RDEPEND="
wireshark-plugins? ( net-analyzer/wireshark:= )
xen? (
app-emulation/xen
- app-emulation/xen-tools
+ app-emulation/xen-tools:=
)
udev? (
virtual/udev
@@ -218,7 +218,7 @@ src_prepare() {
fi
epatch \
- "${FILESDIR}"/${PN}-1.2.9-do_not_use_sysconf.patch \
+ "${FILESDIR}"/${P}-do_not_use_sysconf.patch \
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch \
"${FILESDIR}"/${PN}-1.2.17-fix_paths_for_apparmor.patch
@@ -295,8 +295,7 @@ src_configure() {
--disable-static
--disable-werror
- --docdir=/usr/share/doc/${PF}
- --htmldir=/usr/share/doc/${PF}/html
+ --with-html-subdir=${PF}/html
--localstatedir=/var
)
@@ -313,6 +312,10 @@ src_configure() {
# bug #377279
(cd .gnulib && git reset --hard > /dev/null)
fi
+
+ # Workaround: Sometimes this subdirectory is missing and leads to a
+ # build failure.
+ mkdir -p "${BUILD_DIR}"/docs/internals
}
src_test() {
@@ -346,6 +349,7 @@ src_install() {
newinitd "${S}/libvirtd.init" libvirtd || die
newinitd "${FILESDIR}/libvirt-guests.init-r1" libvirt-guests || die
newinitd "${FILESDIR}/virtlockd.init-r1" virtlockd || die
+ newinitd "${FILESDIR}/virtlogd.init-r1" virtlogd || die
newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd || die
newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests || die
diff --git a/app-emulation/libvirt/libvirt-9999.ebuild b/app-emulation/libvirt/libvirt-9999.ebuild
index 724342a1bb..f07387ffca 100644
--- a/app-emulation/libvirt/libvirt-9999.ebuild
+++ b/app-emulation/libvirt/libvirt-9999.ebuild
@@ -109,7 +109,7 @@ RDEPEND="
wireshark-plugins? ( net-analyzer/wireshark:= )
xen? (
app-emulation/xen
- app-emulation/xen-tools
+ app-emulation/xen-tools:=
)
udev? (
virtual/udev
@@ -218,7 +218,7 @@ src_prepare() {
fi
epatch \
- "${FILESDIR}"/${PN}-1.2.9-do_not_use_sysconf.patch \
+ "${FILESDIR}"/${PN}-1.3.0-do_not_use_sysconf.patch \
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch \
"${FILESDIR}"/${PN}-1.2.17-fix_paths_for_apparmor.patch
@@ -295,8 +295,7 @@ src_configure() {
--disable-static
--disable-werror
- --docdir=/usr/share/doc/${PF}
- --htmldir=/usr/share/doc/${PF}/html
+ --with-html-subdir=${PF}/html
--localstatedir=/var
)
@@ -346,6 +345,7 @@ src_install() {
newinitd "${S}/libvirtd.init" libvirtd || die
newinitd "${FILESDIR}/libvirt-guests.init-r1" libvirt-guests || die
newinitd "${FILESDIR}/virtlockd.init-r1" virtlockd || die
+ newinitd "${FILESDIR}/virtlogd.init-r1" virtlogd || die
newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd || die
newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests || die
diff --git a/app-emulation/libvirt/metadata.xml b/app-emulation/libvirt/metadata.xml
index 7a316de694..d1981e9085 100644
--- a/app-emulation/libvirt/metadata.xml
+++ b/app-emulation/libvirt/metadata.xml
@@ -1,16 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer>
+<maintainer type="person">
<email>tamiko@gentoo.org</email>
<name>Matthias Maier</name>
<description>Please assign bugs to me</description>
</maintainer>
-<maintainer>
+<maintainer type="person">
<email>cardoe@gentoo.org</email>
<name>Doug Goldstein</name>
</maintainer>
-<herd>virtualization</herd>
+<maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+</maintainer>
<use>
<!-- Pool backend flags -->
<flag name="iscsi">
diff --git a/app-emulation/lxc/Manifest b/app-emulation/lxc/Manifest
index 59c2136be7..4e61c43acb 100644
--- a/app-emulation/lxc/Manifest
+++ b/app-emulation/lxc/Manifest
@@ -1,7 +1,9 @@
DIST lxc-1.0.6.tar.gz 561249 SHA256 2aea199a89e2cd946f93406af6c3f62844f36954b79a6991b36d2c33022cb11c SHA512 fe85ccb57865d86704df6b4b79d60f31892785b07dc9dd2580cc6c384c89c29c23516e906b7a16bc03c6582c1fb2432bb8ff11bd17c09efa8f6a035fb41f46b1 WHIRLPOOL 9e77453fbe31523a2e8f39cfaba6f09fef68d00b54549167a0cde56c00934f827f5b4190b9fb64242f36782a9fcda63e6796c35fd47420870c2cee7b9bc0a1c8
DIST lxc-1.0.7.tar.gz 564985 SHA256 a0b1b09592e076e270dcb3ba004616d9ac3147f9de0b78ca39a30f8956b0a8f2 SHA512 e6ff42a7b41177e1be0d2cd47d4c554565c7fc35355f3aa8aeba00d4adc7a0f364ecd060ddb6c97b2fe5968329c4e4c4b3cb022bffd2da145f30880f077264a8 WHIRLPOOL f07e5e9efb8ff394aa9cdd6c3e725b453c8137ec221399cbf910d57dbc9268fc84e7227273567792821415dc14e774942b76a58a1a478de57d5c82e545702000
+DIST lxc-1.0.8.tar.gz 575127 SHA256 399ac3eb4e0a89d657fb2e2a57f686ed061d3f1ea4733e7521b1539e9906c7ee SHA512 f552a4f48bb47d26c6b9ddaf8221a439c0848e3f54ec41b77d54717c21bddd56193941046cc96c699790e8265e762a926469c25ee687adcf7795f2906b1c260a WHIRLPOOL 72cd0b8b0345692dd9a3ed8785ee27f5e575794a96c515db1f1d073c29be4c06ae8c1ee24fa375a5ede2bba2494704916710b2e8814ed991d43330a40dff3d56
DIST lxc-1.1.0.tar.gz 592543 SHA256 216e806f7e18e5bfbc782493a9e44fc255f24a587d6faee94cda848a0b949155 SHA512 160da88d6dc96cd9f0679f948bfed057c024adcd459fa4b79e872d12284fa3774ac33a13923c6e150072886a371ccfcdf7ab2c4587efa7f6175fc91a67525c4a WHIRLPOOL 2caf81418850ea8b1ecf25b25e799895563ecf1819f32310fcbb4efe88f711eafe2bcb16a0d3b8ee59072c770a5520b4df90a5962215b932e68a4705c4a56d61
DIST lxc-1.1.1.tar.gz 594112 SHA256 64951fdd39df2bea083bb5a8ac35a7390daf2dc7753d8fce33138129892ef672 SHA512 8af3fb43127b57de4e252baf5cb387270955062ff3838e4807a93d04520ca23f0457913bc8274da51b20961fb08650f9b976a84d395785aca2b2d300b285d549 WHIRLPOOL 4f28b976dd6710705d6361b9a45fef9a1265dffef0cedd0fb304f2820585ece3e2bb64d4c5289d444b3ab55bac265850943c63cdf258c40c45c99176a788ca2a
DIST lxc-1.1.2.tar.gz 597158 SHA256 f22fcf2659ca98dfe864e632374de98c42cdf465d0c694834b6f6098a3cb8519 SHA512 7c4c9b5418321eedcd37a3f5c2c99ff227de48f672cabd1722a74722077d33badb038675ec95fc3e338eaf2b06972c4ffb2e11f36347587ef71a95fad5b66daa WHIRLPOOL 2b657a9195b6357a367f6aa7609952d9162aae7d7be3f2c5e4cda4b2e81f2c7411835e75af5740cca053d445a3cf7dc7457f9e76ca866de7265e99ed42c744e9
DIST lxc-1.1.3.tar.gz 599889 SHA256 b75fb8e376d3313e152f31fb7372b68f33a953a12191a39de4cded04fff94300 SHA512 cafa4fbe4fe23b8c0b98007a79f20899c4a3b98c51d797b9c16e38dfec1eee5a513b58621308fe6551707d38028d9e5bd78ade8822691ffe4a7a369b10a48dda WHIRLPOOL 04ad57d8b189ab089b27adad8e511dcc2e5c563505f8134323ac9d738283bd5d0d929ebadeb69cd49ea68ea3e182f22c72590505cbf6f9d8438112e46909e1b5
DIST lxc-1.1.4.tar.gz 604167 SHA256 b087baf5ac4b94618388e6e759d9cdafcf5c98ed67bf9012ee9660076f9fb0d1 SHA512 b239c285b68ddb25c165e998307d69b368bb802e89c1e26de9daab956ffc05cb8e80bf7c796233552b08a57d1cc37c22777bb7a7469db111582184ee13272c93 WHIRLPOOL 2d69d0540c15274627cdbd0f1944a119b601e1298b9328ba336beae0aa6bffd62dfdf85af82f54c3926489e19b4cee7eaa6c35bcfb72e4b3904f85102055ae85
+DIST lxc-1.1.5.tar.gz 607219 SHA256 eefce4cc679656cb8636bf0849f3ba6981c48167884e13dbcb377820a717c09c SHA512 e48ab549f1317afcb5f7768ab988ba27a3e9f1458504e1d70b2e27c502233e7b3538b8ce0b79940140a59a37681bcd8e459416e814f9e4814a4ed86b89e8df1c WHIRLPOOL 0d65ec400913b3298517ba0cb50e064b894d8b26cbd331662e11caee285a37aa1e0d1e4623b69e75585c4369544ca02ff97db90d5127c697cd53fde87d2bc968
diff --git a/app-emulation/lxc/files/lxc-1.0.8-bash-completion.patch b/app-emulation/lxc/files/lxc-1.0.8-bash-completion.patch
new file mode 100644
index 0000000000..e9e0e6c98d
--- /dev/null
+++ b/app-emulation/lxc/files/lxc-1.0.8-bash-completion.patch
@@ -0,0 +1,35 @@
+Index: lxc-lxc-1.0.8/config/bash/Makefile.am
+===================================================================
+--- lxc-lxc-1.0.8.orig/config/bash/Makefile.am
++++ lxc-lxc-1.0.8/config/bash/Makefile.am
+@@ -2,12 +2,12 @@ EXTRA_DIST = lxc
+
+ if ENABLE_BASH
+ install-bash:
+- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/bash_completion.d/
+- $(INSTALL_DATA) lxc $(DESTDIR)$(sysconfdir)/bash_completion.d/
++ $(MKDIR_P) $(DESTDIR)$(datarootdir)/bash-completion/completions/
++ $(INSTALL_DATA) lxc $(DESTDIR)$(datarootdir)/bash-completion/completions/
+
+ uninstall-bash:
+- rm -f $(DESTDIR)$(sysconfdir)/bash_completion.d/lxc
+- rmdir $(DESTDIR)$(sysconfdir)/bash_completion.d/ || :
++ rm -f $(DESTDIR)$(datarootdir)/bash-completion/completions/lxc
++ rmdir $(DESTDIR)$(datarootdir)/bash-completion// || :
+
+ install-data-local: install-bash
+ uninstall-local: uninstall-bash
+Index: lxc-lxc-1.0.8/config/bash/lxc.in
+===================================================================
+--- lxc-lxc-1.0.8.orig/config/bash/lxc.in
++++ lxc-lxc-1.0.8/config/bash/lxc.in
+@@ -1,4 +1,3 @@
+-have lxc-start && {
+ _lxc_names() {
+ COMPREPLY=( $( compgen -W "$( lxc-ls )" "$cur" ) )
+ }
+@@ -100,4 +99,3 @@ have lxc-start && {
+
+ complete -o default -F _lxc_generic_o lxc-clone
+ complete -o default -F _lxc_generic_o lxc-start-ephemeral
+-}
diff --git a/app-emulation/lxc/lxc-1.0.8.ebuild b/app-emulation/lxc/lxc-1.0.8.ebuild
new file mode 100644
index 0000000000..3eed768ba8
--- /dev/null
+++ b/app-emulation/lxc/lxc-1.0.8.ebuild
@@ -0,0 +1,189 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+MY_P="${P/_/-}"
+PYTHON_COMPAT=( python{3_3,3_4} )
+DISTUTILS_OPTIONAL=1
+
+inherit autotools bash-completion-r1 distutils-r1 eutils linux-info versionator flag-o-matic systemd
+
+DESCRIPTION="LinuX Containers userspace utilities"
+HOMEPAGE="https://linuxcontainers.org/"
+SRC_URI="https://github.com/lxc/lxc/archive/${MY_P}.tar.gz"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+LICENSE="LGPL-3"
+SLOT="0"
+IUSE="doc examples lua python seccomp"
+
+RDEPEND="net-libs/gnutls
+ sys-libs/libcap
+ lua? ( >=dev-lang/lua-5.1:= )
+ python? ( ${PYTHON_DEPS} )
+ seccomp? ( sys-libs/libseccomp )"
+
+DEPEND="${RDEPEND}
+ doc? ( app-text/docbook-sgml-utils )
+ >=sys-kernel/linux-headers-3.2"
+
+RDEPEND="${RDEPEND}
+ sys-apps/util-linux
+ app-misc/pax-utils
+ virtual/awk"
+
+CONFIG_CHECK="~CGROUPS ~CGROUP_DEVICE
+ ~CPUSETS ~CGROUP_CPUACCT
+ ~RESOURCE_COUNTERS
+ ~CGROUP_SCHED
+
+ ~NAMESPACES
+ ~IPC_NS ~USER_NS ~PID_NS
+
+ ~DEVPTS_MULTIPLE_INSTANCES
+ ~CGROUP_FREEZER
+ ~UTS_NS ~NET_NS
+ ~VETH ~MACVLAN
+
+ ~POSIX_MQUEUE
+ ~!NETPRIO_CGROUP
+
+ ~!GRKERNSEC_CHROOT_MOUNT
+ ~!GRKERNSEC_CHROOT_DOUBLE
+ ~!GRKERNSEC_CHROOT_PIVOT
+ ~!GRKERNSEC_CHROOT_CHMOD
+ ~!GRKERNSEC_CHROOT_CAPS
+ ~!GRKERNSEC_PROC
+"
+
+ERROR_DEVPTS_MULTIPLE_INSTANCES="CONFIG_DEVPTS_MULTIPLE_INSTANCES: needed for pts inside container"
+
+ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers"
+
+ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info"
+ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network"
+
+ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking"
+ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking"
+
+ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command"
+
+ERROR_NETPRIO_CGROUP="CONFIG_NETPRIO_CGROUP: as of kernel 3.3 and lxc 0.8.0_rc1 this causes LXCs to fail booting."
+
+ERROR_GRKERNSEC_CHROOT_MOUNT=":CONFIG_GRKERNSEC_CHROOT_MOUNT some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_CHROOT_DOUBLE=":CONFIG_GRKERNSEC_CHROOT_DOUBLE some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_CHROOT_PIVOT=":CONFIG_GRKERNSEC_CHROOT_PIVOT some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_CHROOT_CHMOD=":CONFIG_GRKERNSEC_CHROOT_CHMOD some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_CHROOT_CAPS=":CONFIG_GRKERNSEC_CHROOT_CAPS some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_PROC=":CONFIG_GRKERNSEC_PROC: this GRSEC feature is incompatible with unprivileged containers"
+
+DOCS=(AUTHORS CONTRIBUTING MAINTAINERS NEWS README doc/FAQ.txt)
+
+S="${WORKDIR}/${PN}-${MY_P}"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+src_prepare() {
+ sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.ac || die
+ if [[ -n ${BACKPORTS} ]]; then
+ epatch "${WORKDIR}"/patches/*
+ fi
+
+ epatch "${FILESDIR}"/${PN}-1.0.8-bash-completion.patch
+
+ eautoreconf
+}
+
+src_configure() {
+ append-flags -fno-strict-aliasing
+
+ econf \
+ --localstatedir=/var \
+ --bindir=/usr/sbin \
+ --docdir=/usr/share/doc/${PF} \
+ --with-config-path=/etc/lxc \
+ --with-rootfs-path=/usr/lib/lxc/rootfs \
+ --with-distro=gentoo \
+ $(use_enable doc) \
+ --disable-apparmor \
+ $(use_enable examples) \
+ $(use_enable lua) \
+ $(use_enable seccomp) \
+ --disable-python
+}
+
+python_compile() {
+ distutils-r1_python_compile build_ext -I ../ -L ../${PN}
+}
+
+src_compile() {
+ default
+
+ if use python; then
+ pushd "${S}/src/python-${PN}" > /dev/null
+ distutils-r1_src_compile
+ popd > /dev/null
+ fi
+}
+
+src_install() {
+ default
+
+ mv "${ED}"/usr/share/bash-completion/completions/${PN} "${ED}"/$(get_bashcompdir)/${PN}-start || die
+ bashcomp_alias ${PN}-start \
+ ${PN}-{attach,cgroup,clone,console,create,destroy,device,execute,freeze,info,monitor,snapshot,start-ephemeral,stop,unfreeze,wait}
+
+ if use python; then
+ pushd "${S}/src/python-lxc" > /dev/null
+ # Unset DOCS. This has been handled by the default target
+ unset DOCS
+ distutils-r1_src_install
+ popd > /dev/null
+ fi
+
+ keepdir /etc/lxc /usr/lib/lxc/rootfs /var/log/lxc
+
+ find "${D}" -name '*.la' -delete
+
+ # Gentoo-specific additions!
+ # Use initd.3 per #517144
+ newinitd "${FILESDIR}/${PN}.initd.3" ${PN}
+
+ # lxc-devsetup script
+ exeinto /usr/libexec/${PN}
+ doexe config/init/systemd/${PN}-devsetup
+ # Use that script with the systemd service (Similar to upstream
+ # Makefile.am
+ cp "${FILESDIR}"/${PN}_at.service ${PN}_at.service || die
+ sed -i \
+ "/Restart=always/a ExecStartPre=/usr/libexec/${PN}/${PN}-devsetup" \
+ ${PN}_at.service \
+ || die "Failed to add ${PN}-devsetup to the systemd service file"
+ systemd_newunit ${PN}_at.service "lxc@.service"
+}
+
+pkg_postinst() {
+ elog "There is an init script provided with the package now; no documentation"
+ elog "is currently available though, so please check out /etc/init.d/lxc ."
+ elog "You _should_ only need to symlink it to /etc/init.d/lxc.configname"
+ elog "to start the container defined into /etc/lxc/configname.conf ."
+ elog "For further information about LXC development see"
+ elog "http://blog.flameeyes.eu/tag/lxc" # remove once proper doc is available
+ elog ""
+ ewarn "With version 0.7.4, the mountpoint syntax came back to the one used by 0.7.2"
+ ewarn "and previous versions. This means you'll have to use syntax like the following"
+ ewarn ""
+ ewarn " lxc.rootfs = /container"
+ ewarn " lxc.mount.entry = /usr/portage /container/usr/portage none bind 0 0"
+ ewarn ""
+ ewarn "To use the Fedora, Debian and (various) Ubuntu auto-configuration scripts, you"
+ ewarn "will need sys-apps/yum or dev-util/debootstrap."
+ ewarn ""
+ ewarn "Some GrSecurity settings in relation to chroot security will cause LXC not to"
+ ewarn "work, while others will actually make it much more secure. Please refer to"
+ ewarn "Diego Elio Pettenò's weblog at http://blog.flameeyes.eu/tag/lxc for further"
+ ewarn "details."
+}
diff --git a/app-emulation/lxc/lxc-1.1.5.ebuild b/app-emulation/lxc/lxc-1.1.5.ebuild
new file mode 100644
index 0000000000..12c1751993
--- /dev/null
+++ b/app-emulation/lxc/lxc-1.1.5.ebuild
@@ -0,0 +1,198 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+MY_P="${P/_/-}"
+PYTHON_COMPAT=( python{3_3,3_4,3_5} )
+DISTUTILS_OPTIONAL=1
+
+inherit autotools bash-completion-r1 distutils-r1 eutils linux-info versionator flag-o-matic systemd
+
+DESCRIPTION="LinuX Containers userspace utilities"
+HOMEPAGE="https://linuxcontainers.org/"
+SRC_URI="https://github.com/lxc/lxc/archive/${MY_P}.tar.gz"
+
+KEYWORDS="~amd64 ~arm ~arm64"
+
+LICENSE="LGPL-3"
+SLOT="0"
+IUSE="cgmanager doc examples lua python seccomp"
+
+RDEPEND="net-libs/gnutls
+ sys-libs/libcap
+ cgmanager? ( app-admin/cgmanager )
+ lua? ( >=dev-lang/lua-5.1:= )
+ python? ( ${PYTHON_DEPS} )
+ seccomp? ( sys-libs/libseccomp )"
+
+DEPEND="${RDEPEND}
+ doc? ( app-text/docbook-sgml-utils )
+ >=sys-kernel/linux-headers-3.2"
+
+RDEPEND="${RDEPEND}
+ sys-process/criu
+ sys-apps/util-linux
+ app-misc/pax-utils
+ virtual/awk"
+
+CONFIG_CHECK="~CGROUPS ~CGROUP_DEVICE
+ ~CPUSETS ~CGROUP_CPUACCT
+ ~CGROUP_SCHED
+
+ ~NAMESPACES
+ ~IPC_NS ~USER_NS ~PID_NS
+
+ ~NETLINK_DIAG ~PACKET_DIAG
+ ~INET_UDP_DIAG ~INET_TCP_DIAG
+ ~UNIX_DIAG ~CHECKPOINT_RESTORE
+
+ ~DEVPTS_MULTIPLE_INSTANCES
+ ~CGROUP_FREEZER
+ ~UTS_NS ~NET_NS
+ ~VETH ~MACVLAN
+
+ ~POSIX_MQUEUE
+ ~!NETPRIO_CGROUP
+
+ ~!GRKERNSEC_CHROOT_MOUNT
+ ~!GRKERNSEC_CHROOT_DOUBLE
+ ~!GRKERNSEC_CHROOT_PIVOT
+ ~!GRKERNSEC_CHROOT_CHMOD
+ ~!GRKERNSEC_CHROOT_CAPS
+ ~!GRKERNSEC_PROC
+ ~!GRKERNSEC_SYSFS_RESTRICT
+"
+
+ERROR_DEVPTS_MULTIPLE_INSTANCES="CONFIG_DEVPTS_MULTIPLE_INSTANCES: needed for pts inside container"
+
+ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers"
+
+ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info"
+ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network"
+
+ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking"
+ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking"
+
+ERROR_NETLINK_DIAG="CONFIG_NETLINK_DIAG: needed for lxc-checkpoint"
+ERROR_PACKET_DIAG="CONFIG_PACKET_DIAG: needed for lxc-checkpoint"
+ERROR_INET_UDP_DIAG="CONFIG_INET_UDP_DIAG: needed for lxc-checkpoint"
+ERROR_INET_TCP_DIAG="CONFIG_INET_TCP_DIAG: needed for lxc-checkpoint"
+ERROR_UNIX_DIAG="CONFIG_UNIX_DIAG: needed for lxc-checkpoint"
+ERROR_CHECKPOINT_RESTORE="CONFIG_CHECKPOINT_RESTORE: needed for lxc-checkpoint"
+
+ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command"
+
+ERROR_NETPRIO_CGROUP="CONFIG_NETPRIO_CGROUP: as of kernel 3.3 and lxc 0.8.0_rc1 this causes LXCs to fail booting."
+
+ERROR_GRKERNSEC_CHROOT_MOUNT="CONFIG_GRKERNSEC_CHROOT_MOUNT: some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_CHROOT_DOUBLE="CONFIG_GRKERNSEC_CHROOT_DOUBLE: some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_CHROOT_PIVOT="CONFIG_GRKERNSEC_CHROOT_PIVOT: some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_CHROOT_CHMOD="CONFIG_GRKERNSEC_CHROOT_CHMOD: some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_CHROOT_CAPS="CONFIG_GRKERNSEC_CHROOT_CAPS: some GRSEC features make LXC unusable see postinst notes"
+ERROR_GRKERNSEC_PROC="CONFIG_GRKERNSEC_PROC: this GRSEC feature is incompatible with unprivileged containers"
+ERROR_GRKERNSEC_SYSFS_RESTRICT="CONFIG_GRKERNSEC_SYSFS_RESTRICT: this GRSEC feature is incompatible with unprivileged containers"
+
+DOCS=(AUTHORS CONTRIBUTING MAINTAINERS NEWS README doc/FAQ.txt)
+
+S="${WORKDIR}/${PN}-${MY_P}"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+src_prepare() {
+
+ epatch "${FILESDIR}"/${PN}-1.1.3-bash-completion.patch
+ eautoreconf
+}
+
+src_configure() {
+ append-flags -fno-strict-aliasing
+
+ if use python; then
+ #541932
+ python_setup "python3*"
+ export PKG_CONFIG_PATH="${T}/${EPYTHON}/pkgconfig:${PKG_CONFIG_PATH}"
+ fi
+
+ # I am not sure about the --with-rootfs-path
+ # /var/lib/lxc is probably more appropriate than
+ # /usr/lib/lxc.
+ econf \
+ --localstatedir=/var \
+ --bindir=/usr/bin \
+ --sbindir=/usr/bin \
+ --docdir=/usr/share/doc/${PF} \
+ --with-config-path=/var/lib/lxc \
+ --with-rootfs-path=/var/lib/lxc/rootfs \
+ --with-distro=gentoo \
+ --with-runtime-path=/run \
+ --disable-apparmor \
+ $(use_enable cgmanager) \
+ $(use_enable doc) \
+ $(use_enable examples) \
+ $(use_enable lua) \
+ $(use_enable python) \
+ $(use_enable seccomp)
+}
+
+python_compile() {
+ distutils-r1_python_compile build_ext -I ../ -L ../${PN}
+}
+
+src_compile() {
+ default
+
+ if use python; then
+ pushd "${S}/src/python-${PN}" > /dev/null
+ distutils-r1_src_compile
+ popd > /dev/null
+ fi
+}
+
+src_install() {
+ default
+
+ mv "${ED}"/usr/share/bash-completion/completions/${PN} "${ED}"/$(get_bashcompdir)/${PN}-start || die
+ bashcomp_alias ${PN}-start \
+ ${PN}-{attach,cgroup,clone,console,create,destroy,device,execute,freeze,info,monitor,snapshot,start-ephemeral,stop,unfreeze,wait}
+
+ if use python; then
+ pushd "${S}/src/python-lxc" > /dev/null
+ # Unset DOCS. This has been handled by the default target
+ unset DOCS
+ distutils-r1_src_install
+ popd > /dev/null
+ fi
+
+ keepdir /etc/lxc /var/lib/lxc/rootfs /var/log/lxc
+
+ find "${D}" -name '*.la' -delete
+
+ # Gentoo-specific additions!
+ # Use initd.3 per #517144
+ newinitd "${FILESDIR}/${PN}.initd.3" ${PN}
+
+ # lxc-devsetup script
+ exeinto /usr/libexec/${PN}
+ doexe config/init/systemd/${PN}-devsetup
+ # Remember to compare our systemd unit file with the upstream one
+ # config/init/systemd/lxc.service.in
+ systemd_newunit "${FILESDIR}"/${PN}_at.service.2 "lxc@.service"
+}
+
+pkg_postinst() {
+ elog ""
+ elog "Starting from version ${PN}-1.1.0-r3, the default lxc path has been"
+ elog "moved from /etc/lxc to /var/lib/lxc. If you still want to use /etc/lxc"
+ elog "please add the following to your /etc/lxc/default.conf"
+ elog "lxc.lxcpath = /etc/lxc"
+ elog ""
+ elog "There is an init script provided with the package now; no documentation"
+ elog "is currently available though, so please check out /etc/init.d/lxc ."
+ elog "You _should_ only need to symlink it to /etc/init.d/lxc.configname"
+ elog "to start the container defined into /etc/lxc/configname.conf ."
+ elog "For further information about LXC development see"
+ elog "http://blog.flameeyes.eu/tag/lxc" # remove once proper doc is available
+ elog ""
+}
diff --git a/app-emulation/lxc/metadata.xml b/app-emulation/lxc/metadata.xml
index 536d8f3d85..a1fcb3db26 100644
--- a/app-emulation/lxc/metadata.xml
+++ b/app-emulation/lxc/metadata.xml
@@ -1,16 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
- <maintainer>
+ <maintainer type="person">
<email>flameeyes@gentoo.org</email>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>dev-zero@gentoo.org</email>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>hwoarang@gentoo.org</email>
</maintainer>
+ <maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
<use>
<flag name="cgmanager">Enable support for cgroup management using <pkg>app-admin/cgmanager</pkg></flag>
</use>
diff --git a/app-emulation/lxd/Manifest b/app-emulation/lxd/Manifest
index b8bca616b4..fcb60cb019 100644
--- a/app-emulation/lxd/Manifest
+++ b/app-emulation/lxd/Manifest
@@ -1,3 +1,3 @@
-DIST lxd-0.20.tar.bz2 2687718 SHA256 a071b92015f676746137e1ffeab1886d90297d0d5832bbf5ee6aff081acc4840 SHA512 2064daa7d1aeb4764a15d559e3d4178918942d82dbba31e964d713aab48d2ee30ce6a63632701c41b13de4aea541acd76d55b52f12de10a99ffeaa3cb945ad44 WHIRLPOOL 1ffa9d6bf1cb7132b82e731002eae7b7ff3544fb03958827916c2e00e02a0bdd10bbadd2401f7799187c2c0338987f24b46d8e138131f7df888162e56b3f4fe5
-DIST lxd-0.21.tar.bz2 2683517 SHA256 06e9ed72d1d45af532664e47d9772a886dc1d757e83d673498b05798249c66c8 SHA512 588225ed77cd8a86b34579ee3f3b2b3ba8166ce9d85872e6076fa5075bc5a3846c82255dee6e701a6d51bdd9bf8280bbd5fab08ca4438de5320de8f0388685eb WHIRLPOOL c85f103e38f44c4cd859faf330764c3d076cede6d09f976b4686d7f91b6ca233e09721df418493fed19cb8bf3118b2a0a6723f3084da532bba4a5344de8a4b9c
-DIST lxd-0.22.tar.bz2 2685133 SHA256 66dc30b82fba7f606658280d0dbac67a32152644a403ab00285fc3907b50082e SHA512 ab5384143edd03dfa1ef956c64e9fce2d845ce07c5388f719c202fd1ff9059282e104400f39f23ff1c4fefc8a23dd1d4c6c9094b497c40c659b087989bf07d44 WHIRLPOOL 27559c50f6aa55edb533046bb49b04784c63003569e7920261504a7b4c69891a80ff8432421352c13f274bb21876f2cf5266e9de2b1302d69e0254be87c17137
+DIST lxd-0.25.tar.bz2 1983043 SHA256 1cfdf1a5e8638060e2368e9e5cf8763406857309f08c4668fa0756e85ba7b89e SHA512 001e52826a3bbe00121115ddace14b3f552321f16e97700763ff6dd23b5babd3c1393cbc9b9b263b6a18c31e49c30d612e3d7153d4987644689989be0be50d00 WHIRLPOOL 496f3f19c50c1ee79ba8b5625cf34b6f57683f4066a09b3edc2cbd017cc5ebc2cc7ac9e569c94bcba0d699c6efb722b79ae43541e0dfddc2fb8d877131519b06
+DIST lxd-0.26.tar.bz2 1985288 SHA256 71079140946e3e66563cc3025c3e4f756fd45cc413af1d5396c56a608427d0aa SHA512 25aa73274b03163698646fe2f49c2401ae93a9b90be46f0ba0414521bc920e68c61db7e6617d75a19675e22a705afd5d3220e24a518e30819daf3dc75670b900 WHIRLPOOL d59471f02744efbe3d3dbb1ae32dcf17141f8414a1614535451e75c5422928d3c5d54dceebcf0d829f7395ae3cb49bf424ff7999d1e32b9384a3f81b3d3ab01e
+DIST lxd-0.27.tar.bz2 2247266 SHA256 290d05a792f2f146b302d500eadd3168822ed99aecb4ea96762570580f29910a SHA512 37d5fef677a943dc7e84c73836aa1d4e5f0353c165aa33cefcd87dcd1fdae574760e74fb290404182badfee96e04ef929a81d6633d2c0f91c458ccd19996b9c3 WHIRLPOOL d1d0c0fad0e604f41482c133f4425461546599aded2e948d5c58f7698eba963746ac8c3c3085ffbd244b0169cedb26ad8ec5d85babea6aa9a7688ee6ce342589
diff --git a/app-emulation/lxd/files/lxd-0.20-nc-binary-name.patch b/app-emulation/lxd/files/lxd-0.20-nc-binary-name.patch
deleted file mode 100644
index b88b7f7e50..0000000000
--- a/app-emulation/lxd/files/lxd-0.20-nc-binary-name.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- lxd/rsync.go.orig 2015-09-17 21:00:29.290772099 -0500
-+++ lxd/rsync.go 2015-09-17 21:00:54.737770359 -0500
-@@ -73,7 +73,7 @@
- * command (i.e. the command to run on --server). However, we're
- * hardcoding that at the other end, so we can just ignore it.
- */
-- rsyncCmd := fmt.Sprintf("sh -c \"nc -U %s\"", f.Name())
-+ rsyncCmd := fmt.Sprintf("sh -c \"nc.openbsd -U %s\"", f.Name())
- cmd := exec.Command("rsync", "-arvP", "--devices", "--partial", path, "localhost:/tmp/foo", "-e", rsyncCmd)
- if err := cmd.Start(); err != nil {
- return nil, nil, err
diff --git a/app-emulation/lxd/files/lxd-0.21-nc-binary-name.patch b/app-emulation/lxd/files/lxd-0.21-nc-binary-name.patch
deleted file mode 100644
index b88b7f7e50..0000000000
--- a/app-emulation/lxd/files/lxd-0.21-nc-binary-name.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- lxd/rsync.go.orig 2015-09-17 21:00:29.290772099 -0500
-+++ lxd/rsync.go 2015-09-17 21:00:54.737770359 -0500
-@@ -73,7 +73,7 @@
- * command (i.e. the command to run on --server). However, we're
- * hardcoding that at the other end, so we can just ignore it.
- */
-- rsyncCmd := fmt.Sprintf("sh -c \"nc -U %s\"", f.Name())
-+ rsyncCmd := fmt.Sprintf("sh -c \"nc.openbsd -U %s\"", f.Name())
- cmd := exec.Command("rsync", "-arvP", "--devices", "--partial", path, "localhost:/tmp/foo", "-e", rsyncCmd)
- if err := cmd.Start(); err != nil {
- return nil, nil, err
diff --git a/app-emulation/lxd/files/lxd-0.20-dont-go-get.patch b/app-emulation/lxd/files/lxd-0.25-dont-go-get.patch
index 1b229ea99c..9964af6aec 100644
--- a/app-emulation/lxd/files/lxd-0.20-dont-go-get.patch
+++ b/app-emulation/lxd/files/lxd-0.25-dont-go-get.patch
@@ -1,9 +1,10 @@
---- Makefile.orig 2015-09-17 20:37:16.481867339 -0500
-+++ Makefile 2015-09-17 20:53:27.715800926 -0500
-@@ -12,15 +12,11 @@
+--- Makefile.orig 2015-12-28 19:23:28.425122306 -0600
++++ Makefile 2015-12-28 19:25:09.482123654 -0600
+@@ -12,17 +12,11 @@
.PHONY: default
default:
+- # Must run twice due to go get race
- -go get -t -v -d ./...
- -go get -t -v -d ./...
go install -v ./...
@@ -11,6 +12,7 @@
.PHONY: client
client:
+- # Must run twice due to go get race
- -go get -t -v -d ./...
- -go get -t -v -d ./...
go install -v ./lxc
diff --git a/app-emulation/lxd/files/lxd-0.22-nc-binary-name.patch b/app-emulation/lxd/files/lxd-0.25-nc-binary-name.patch
index 7373b66969..7373b66969 100644
--- a/app-emulation/lxd/files/lxd-0.22-nc-binary-name.patch
+++ b/app-emulation/lxd/files/lxd-0.25-nc-binary-name.patch
diff --git a/app-emulation/lxd/files/lxd-0.20.confd b/app-emulation/lxd/files/lxd-0.25.confd
index 3d553276a5..3d553276a5 100644
--- a/app-emulation/lxd/files/lxd-0.20.confd
+++ b/app-emulation/lxd/files/lxd-0.25.confd
diff --git a/app-emulation/lxd/files/lxd-0.22.initd b/app-emulation/lxd/files/lxd-0.25.initd
index 65915f0ae5..ec23258c19 100644
--- a/app-emulation/lxd/files/lxd-0.22.initd
+++ b/app-emulation/lxd/files/lxd-0.25.initd
@@ -6,11 +6,14 @@
DAEMON=/usr/sbin/lxd
PIDFILE=/run/lxd.pid
-extra_commands="shutdown"
+extra_commands="stopall"
depend() {
- need cgmanager
need net
+ use lxcfs
+
+ # remove with 2.0 release
+ need cgmanager
}
start() {
@@ -28,14 +31,18 @@ start() {
}
stop() {
- ebegin "Stopping lxd server"
- start-stop-daemon --stop --quiet -R TERM/45 -p ${PIDFILE}
- eend $?
+ if [[ $RC_GOINGDOWN = YES ]] || [[ $RC_REBOOT = YES ]]; then
+ stopall
+ else
+ ebegin "Stopping lxd service (but not containers)"
+ start-stop-daemon --stop --quiet -R TERM/45 -p ${PIDFILE}
+ eend $?
+ fi
}
-shutdown() {
- ebegin "Stopping lxd server and containers"
- if ${DAEMON} shutdown; then
+stopall() {
+ ebegin "Stopping lxd service and containers"
+ if "${DAEMON}" shutdown; then
/etc/init.d/lxd zap
rm -f ${PIDFILE}
fi
diff --git a/app-emulation/lxd/files/lxd-0.22-dont-go-get.patch b/app-emulation/lxd/files/lxd-0.26-dont-go-get.patch
index 1b229ea99c..9964af6aec 100644
--- a/app-emulation/lxd/files/lxd-0.22-dont-go-get.patch
+++ b/app-emulation/lxd/files/lxd-0.26-dont-go-get.patch
@@ -1,9 +1,10 @@
---- Makefile.orig 2015-09-17 20:37:16.481867339 -0500
-+++ Makefile 2015-09-17 20:53:27.715800926 -0500
-@@ -12,15 +12,11 @@
+--- Makefile.orig 2015-12-28 19:23:28.425122306 -0600
++++ Makefile 2015-12-28 19:25:09.482123654 -0600
+@@ -12,17 +12,11 @@
.PHONY: default
default:
+- # Must run twice due to go get race
- -go get -t -v -d ./...
- -go get -t -v -d ./...
go install -v ./...
@@ -11,6 +12,7 @@
.PHONY: client
client:
+- # Must run twice due to go get race
- -go get -t -v -d ./...
- -go get -t -v -d ./...
go install -v ./lxc
diff --git a/app-emulation/lxd/files/lxd-0.26-nc-binary-name.patch b/app-emulation/lxd/files/lxd-0.26-nc-binary-name.patch
new file mode 100644
index 0000000000..7373b66969
--- /dev/null
+++ b/app-emulation/lxd/files/lxd-0.26-nc-binary-name.patch
@@ -0,0 +1,11 @@
+--- lxd/rsync.go.orig 2015-11-11 20:54:37.402700202 -0600
++++ lxd/rsync.go 2015-11-11 20:55:06.704698199 -0600
+@@ -91,7 +91,7 @@
+ * command (i.e. the command to run on --server). However, we're
+ * hardcoding that at the other end, so we can just ignore it.
+ */
+- rsyncCmd := fmt.Sprintf("sh -c \"nc -U %s\"", f.Name())
++ rsyncCmd := fmt.Sprintf("sh -c \"nc.openbsd -U %s\"", f.Name())
+ cmd := exec.Command(
+ "rsync",
+ "-arvP",
diff --git a/app-emulation/lxd/files/lxd-0.21.confd b/app-emulation/lxd/files/lxd-0.26.confd
index 3d553276a5..3d553276a5 100644
--- a/app-emulation/lxd/files/lxd-0.21.confd
+++ b/app-emulation/lxd/files/lxd-0.26.confd
diff --git a/app-emulation/lxd/files/lxd-0.20.initd b/app-emulation/lxd/files/lxd-0.26.initd
index 2b75e51c8a..ec23258c19 100644
--- a/app-emulation/lxd/files/lxd-0.20.initd
+++ b/app-emulation/lxd/files/lxd-0.26.initd
@@ -6,9 +6,14 @@
DAEMON=/usr/sbin/lxd
PIDFILE=/run/lxd.pid
+extra_commands="stopall"
+
depend() {
- need cgmanager
need net
+ use lxcfs
+
+ # remove with 2.0 release
+ need cgmanager
}
start() {
@@ -26,7 +31,20 @@ start() {
}
stop() {
- ebegin "Stopping lxd server"
- start-stop-daemon --stop --quiet -R TERM/45 -p ${PIDFILE}
+ if [[ $RC_GOINGDOWN = YES ]] || [[ $RC_REBOOT = YES ]]; then
+ stopall
+ else
+ ebegin "Stopping lxd service (but not containers)"
+ start-stop-daemon --stop --quiet -R TERM/45 -p ${PIDFILE}
+ eend $?
+ fi
+}
+
+stopall() {
+ ebegin "Stopping lxd service and containers"
+ if "${DAEMON}" shutdown; then
+ /etc/init.d/lxd zap
+ rm -f ${PIDFILE}
+ fi
eend $?
}
diff --git a/app-emulation/lxd/files/lxd-0.21-dont-go-get.patch b/app-emulation/lxd/files/lxd-0.27-dont-go-get.patch
index 1b229ea99c..9964af6aec 100644
--- a/app-emulation/lxd/files/lxd-0.21-dont-go-get.patch
+++ b/app-emulation/lxd/files/lxd-0.27-dont-go-get.patch
@@ -1,9 +1,10 @@
---- Makefile.orig 2015-09-17 20:37:16.481867339 -0500
-+++ Makefile 2015-09-17 20:53:27.715800926 -0500
-@@ -12,15 +12,11 @@
+--- Makefile.orig 2015-12-28 19:23:28.425122306 -0600
++++ Makefile 2015-12-28 19:25:09.482123654 -0600
+@@ -12,17 +12,11 @@
.PHONY: default
default:
+- # Must run twice due to go get race
- -go get -t -v -d ./...
- -go get -t -v -d ./...
go install -v ./...
@@ -11,6 +12,7 @@
.PHONY: client
client:
+- # Must run twice due to go get race
- -go get -t -v -d ./...
- -go get -t -v -d ./...
go install -v ./lxc
diff --git a/app-emulation/lxd/files/lxd-0.27-nc-binary-name.patch b/app-emulation/lxd/files/lxd-0.27-nc-binary-name.patch
new file mode 100644
index 0000000000..7373b66969
--- /dev/null
+++ b/app-emulation/lxd/files/lxd-0.27-nc-binary-name.patch
@@ -0,0 +1,11 @@
+--- lxd/rsync.go.orig 2015-11-11 20:54:37.402700202 -0600
++++ lxd/rsync.go 2015-11-11 20:55:06.704698199 -0600
+@@ -91,7 +91,7 @@
+ * command (i.e. the command to run on --server). However, we're
+ * hardcoding that at the other end, so we can just ignore it.
+ */
+- rsyncCmd := fmt.Sprintf("sh -c \"nc -U %s\"", f.Name())
++ rsyncCmd := fmt.Sprintf("sh -c \"nc.openbsd -U %s\"", f.Name())
+ cmd := exec.Command(
+ "rsync",
+ "-arvP",
diff --git a/app-emulation/lxd/files/lxd-0.22.confd b/app-emulation/lxd/files/lxd-0.27.confd
index 3d553276a5..3d553276a5 100644
--- a/app-emulation/lxd/files/lxd-0.22.confd
+++ b/app-emulation/lxd/files/lxd-0.27.confd
diff --git a/app-emulation/lxd/files/lxd-0.21.initd b/app-emulation/lxd/files/lxd-0.27.initd
index 2b75e51c8a..ec23258c19 100644
--- a/app-emulation/lxd/files/lxd-0.21.initd
+++ b/app-emulation/lxd/files/lxd-0.27.initd
@@ -6,9 +6,14 @@
DAEMON=/usr/sbin/lxd
PIDFILE=/run/lxd.pid
+extra_commands="stopall"
+
depend() {
- need cgmanager
need net
+ use lxcfs
+
+ # remove with 2.0 release
+ need cgmanager
}
start() {
@@ -26,7 +31,20 @@ start() {
}
stop() {
- ebegin "Stopping lxd server"
- start-stop-daemon --stop --quiet -R TERM/45 -p ${PIDFILE}
+ if [[ $RC_GOINGDOWN = YES ]] || [[ $RC_REBOOT = YES ]]; then
+ stopall
+ else
+ ebegin "Stopping lxd service (but not containers)"
+ start-stop-daemon --stop --quiet -R TERM/45 -p ${PIDFILE}
+ eend $?
+ fi
+}
+
+stopall() {
+ ebegin "Stopping lxd service and containers"
+ if "${DAEMON}" shutdown; then
+ /etc/init.d/lxd zap
+ rm -f ${PIDFILE}
+ fi
eend $?
}
diff --git a/app-emulation/lxd/lxd-0.22.ebuild b/app-emulation/lxd/lxd-0.25.ebuild
index a56c9bda52..549dff584e 100644
--- a/app-emulation/lxd/lxd-0.22.ebuild
+++ b/app-emulation/lxd/lxd-0.25.ebuild
@@ -19,9 +19,12 @@ IUSE="+daemon nls test"
# IUSE and PLOCALES must be defined before l10n inherited
inherit bash-completion-r1 eutils golang-build l10n systemd user vcs-snapshot
+# The compiler is forced in golang-base:
+# DEPEND=">=dev-lang/go-1.4.2:="
+# ... so the dep is omitted here (and I disagree with := in this case)
+
DEPEND="
dev-go/go-crypto
- >=dev-lang/go-1.4.2:=
dev-libs/protobuf
dev-vcs/git
nls? ( sys-devel/gettext )
@@ -57,7 +60,7 @@ RDEPEND="
# this package directly.
src_prepare() {
- cd "${S}/src/${EGO_PN}"
+ cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir"
epatch "${FILESDIR}/${P}-dont-go-get.patch"
@@ -72,7 +75,7 @@ src_prepare() {
src_compile() {
golang-build_src_compile
- cd "${S}/src/${EGO_PN}"
+ cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir"
if use daemon; then
# Build binaries
@@ -98,11 +101,7 @@ src_install() {
cd "${S}"
dobin bin/lxc
- if use daemon; then
- dobin bin/fuidshift
-
- dosbin bin/lxd
- fi
+ use daemon && dosbin bin/lxd
cd "src/${EGO_PN}"
@@ -149,6 +148,7 @@ pkg_postinst() {
einfo "- sys-apps/apparmor"
einfo "- sys-fs/btrfs-progs"
einfo "- sys-fs/lvm2"
+ einfo "- sys-fs/lxcfs"
einfo "- sys-fs/zfs"
einfo "- sys-process/criu"
einfo
diff --git a/app-emulation/lxd/lxd-0.21.ebuild b/app-emulation/lxd/lxd-0.26.ebuild
index dd67b7be7a..ce1664213f 100644
--- a/app-emulation/lxd/lxd-0.21.ebuild
+++ b/app-emulation/lxd/lxd-0.26.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -19,9 +19,12 @@ IUSE="+daemon nls test"
# IUSE and PLOCALES must be defined before l10n inherited
inherit bash-completion-r1 eutils golang-build l10n systemd user vcs-snapshot
+# The compiler is forced in golang-base:
+# DEPEND=">=dev-lang/go-1.4.2:="
+# ... so the dep is omitted here (and I disagree with := in this case)
+
DEPEND="
dev-go/go-crypto
- >=dev-lang/go-1.4.2:=
dev-libs/protobuf
dev-vcs/git
nls? ( sys-devel/gettext )
@@ -55,12 +58,9 @@ RDEPEND="
# - since 0.15 gccgo is a supported compiler ('make gccgo'). It would
# be preferable for that support to go into the golang-build eclass not
# this package directly.
-# - integrate "lxd shutdown" into initscript as custom action (default "stop"
-# action should _not_ stop containers amirite?)
-# "Perform a clean shutdown of LXD and all running containers"
src_prepare() {
- cd "${S}/src/${EGO_PN}"
+ cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir"
epatch "${FILESDIR}/${P}-dont-go-get.patch"
@@ -75,7 +75,7 @@ src_prepare() {
src_compile() {
golang-build_src_compile
- cd "${S}/src/${EGO_PN}"
+ cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir"
if use daemon; then
# Build binaries
@@ -101,11 +101,7 @@ src_install() {
cd "${S}"
dobin bin/lxc
- if use daemon; then
- dobin bin/fuidshift
-
- dosbin bin/lxd
- fi
+ use daemon && dosbin bin/lxd
cd "src/${EGO_PN}"
@@ -152,18 +148,10 @@ pkg_postinst() {
einfo "- sys-apps/apparmor"
einfo "- sys-fs/btrfs-progs"
einfo "- sys-fs/lvm2"
+ einfo "- sys-fs/lxcfs"
einfo "- sys-fs/zfs"
einfo "- sys-process/criu"
einfo
einfo "Since these features can't be disabled at build-time they are"
einfo "not USE-conditional."
-
- if test -n "${REPLACING_VERSIONS}"; then
- einfo
- einfo "If you are upgrading from version 0.14 or older, note that the --tcp"
- einfo "is no longer available in /etc/conf.d/lxd. Instead, configure the"
- einfo "listen address/port by setting the core.https_address server option."
- fi
-
- einfo
}
diff --git a/app-emulation/lxd/lxd-0.20.ebuild b/app-emulation/lxd/lxd-0.27.ebuild
index ab08cd16c4..ba679e3248 100644
--- a/app-emulation/lxd/lxd-0.20.ebuild
+++ b/app-emulation/lxd/lxd-0.27.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -8,7 +8,7 @@ DESCRIPTION="Fast, dense and secure container management"
HOMEPAGE="https://linuxcontainers.org/lxd/introduction/"
EGO_PN_PARENT="github.com/lxc"
EGO_PN="${EGO_PN_PARENT}/lxd"
-SRC_URI="http://961db08fe45d5f5dd062-b8a7a040508aea6d369676e49b80719d.r29.cf2.rackcdn.com/${P}.tar.bz2"
+SRC_URI="https://dev.gentoo.org/~stasibear/distfiles/${P}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
@@ -19,9 +19,12 @@ IUSE="+daemon nls test"
# IUSE and PLOCALES must be defined before l10n inherited
inherit bash-completion-r1 eutils golang-build l10n systemd user vcs-snapshot
+# The compiler is forced in golang-base:
+# DEPEND=">=dev-lang/go-1.4.2:="
+# ... so the dep is omitted here (and I disagree with := in this case)
+
DEPEND="
dev-go/go-crypto
- >=dev-lang/go-1.4.2:=
dev-libs/protobuf
dev-vcs/git
nls? ( sys-devel/gettext )
@@ -55,12 +58,9 @@ RDEPEND="
# - since 0.15 gccgo is a supported compiler ('make gccgo'). It would
# be preferable for that support to go into the golang-build eclass not
# this package directly.
-# - integrate "lxd shutdown" into initscript as custom action (default "stop"
-# action should _not_ stop containers amirite?)
-# "Perform a clean shutdown of LXD and all running containers"
src_prepare() {
- cd "${S}/src/${EGO_PN}"
+ cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir"
epatch "${FILESDIR}/${P}-dont-go-get.patch"
@@ -75,7 +75,7 @@ src_prepare() {
src_compile() {
golang-build_src_compile
- cd "${S}/src/${EGO_PN}"
+ cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir"
if use daemon; then
# Build binaries
@@ -101,11 +101,7 @@ src_install() {
cd "${S}"
dobin bin/lxc
- if use daemon; then
- dobin bin/fuidshift
-
- dosbin bin/lxd
- fi
+ use daemon && dosbin bin/lxd
cd "src/${EGO_PN}"
@@ -124,7 +120,7 @@ src_install() {
systemd_dounit "${FILESDIR}"/lxd.service
fi
- newbashcomp config/bash/lxc.in lxc
+ newbashcomp config/bash/lxd-client lxc
dodoc AUTHORS CONTRIBUTING.md README.md
@@ -152,18 +148,10 @@ pkg_postinst() {
einfo "- sys-apps/apparmor"
einfo "- sys-fs/btrfs-progs"
einfo "- sys-fs/lvm2"
+ einfo "- sys-fs/lxcfs"
einfo "- sys-fs/zfs"
einfo "- sys-process/criu"
einfo
einfo "Since these features can't be disabled at build-time they are"
einfo "not USE-conditional."
-
- if test -n "${REPLACING_VERSIONS}"; then
- einfo
- einfo "If you are upgrading from version 0.14 or older, note that the --tcp"
- einfo "is no longer available in /etc/conf.d/lxd. Instead, configure the"
- einfo "listen address/port by setting the core.https_address server option."
- fi
-
- einfo
}
diff --git a/app-emulation/lxd/metadata.xml b/app-emulation/lxd/metadata.xml
index 0ff516e1ca..6550e45afb 100644
--- a/app-emulation/lxd/metadata.xml
+++ b/app-emulation/lxd/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer status="active">
+ <maintainer status="active" type="person">
<email>stasibear@gentoo.org</email>
<name>Erik Mackdanz</name>
</maintainer>
diff --git a/app-emulation/open-vm-tools-kmod/metadata.xml b/app-emulation/open-vm-tools-kmod/metadata.xml
index 2560d63532..5e7e7fc702 100644
--- a/app-emulation/open-vm-tools-kmod/metadata.xml
+++ b/app-emulation/open-vm-tools-kmod/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>vmware</herd>
- <maintainer>
+ <maintainer type="person">
<email>floppym@gentoo.org</email>
<name>Mike Gilbert</name>
</maintainer>
+ <maintainer type="project">
+ <email>vmware@gentoo.org</email>
+ <name>Gentoo VMware Project</name>
+ </maintainer>
<longdescription>
The Open Virtual Machine Tools (open-vm-tools) are the open source
implementation of VMware Tools. They are a set of guest operating system
diff --git a/app-emulation/open-vm-tools/metadata.xml b/app-emulation/open-vm-tools/metadata.xml
index 021bf9a90f..2532b4e57e 100644
--- a/app-emulation/open-vm-tools/metadata.xml
+++ b/app-emulation/open-vm-tools/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>vmware</herd>
- <maintainer>
+ <maintainer type="person">
<email>floppym@gentoo.org</email>
<name>Mike Gilbert</name>
</maintainer>
+ <maintainer type="project">
+ <email>vmware@gentoo.org</email>
+ <name>Gentoo VMware Project</name>
+ </maintainer>
<longdescription>
The Open Virtual Machine Tools (open-vm-tools) are the open source
implementation of VMware Tools. They are a set of guest operating system
diff --git a/app-emulation/open-vm-tools/open-vm-tools-10.0.0_p3000743.ebuild b/app-emulation/open-vm-tools/open-vm-tools-10.0.0_p3000743.ebuild
index 9c136f953a..3cc623f333 100644
--- a/app-emulation/open-vm-tools/open-vm-tools-10.0.0_p3000743.ebuild
+++ b/app-emulation/open-vm-tools/open-vm-tools-10.0.0_p3000743.ebuild
@@ -63,6 +63,10 @@ src_prepare() {
}
src_configure() {
+ # libsigc++-2.0 >= 2.5.1 requires C++11. Using -std=c++11
+ # does not provide "linux" definition, we need gnu++11
+ append-cxxflags -std=gnu++11
+
# https://bugs.gentoo.org/402279
export CUSTOM_PROCPS_NAME=procps
export CUSTOM_PROCPS_LIBS="$($(tc-getPKG_CONFIG) --libs libprocps)"
diff --git a/app-emulation/openstack-guest-agents-unix/metadata.xml b/app-emulation/openstack-guest-agents-unix/metadata.xml
index 1edaa77a24..314a2ed030 100644
--- a/app-emulation/openstack-guest-agents-unix/metadata.xml
+++ b/app-emulation/openstack-guest-agents-unix/metadata.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>robbat2@gentoo.org</email>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>alunduil@gentoo.org</email>
</maintainer>
<upstream>
diff --git a/app-emulation/phpvirtualbox/metadata.xml b/app-emulation/phpvirtualbox/metadata.xml
index 404a88dcca..cc3e57de02 100644
--- a/app-emulation/phpvirtualbox/metadata.xml
+++ b/app-emulation/phpvirtualbox/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>hwoarang@gentoo.org</email>
<name>Markos Chandras</name>
</maintainer>
diff --git a/app-emulation/phpvirtualbox/phpvirtualbox-4.1.11.ebuild b/app-emulation/phpvirtualbox/phpvirtualbox-4.1.11.ebuild
index adf58b45d0..036938d36c 100644
--- a/app-emulation/phpvirtualbox/phpvirtualbox-4.1.11.ebuild
+++ b/app-emulation/phpvirtualbox/phpvirtualbox-4.1.11.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="2"
-inherit versionator eutils webapp depend.php
+inherit versionator eutils webapp
MY_PV="$(replace_version_separator 2 '-')"
MY_P="${PN}-${MY_PV}"
diff --git a/app-emulation/phpvirtualbox/phpvirtualbox-4.2.7.ebuild b/app-emulation/phpvirtualbox/phpvirtualbox-4.2.7.ebuild
index 591b528b81..984a92caf7 100644
--- a/app-emulation/phpvirtualbox/phpvirtualbox-4.2.7.ebuild
+++ b/app-emulation/phpvirtualbox/phpvirtualbox-4.2.7.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
-inherit versionator eutils webapp depend.php readme.gentoo
+inherit versionator eutils webapp readme.gentoo
MY_PV="$(replace_version_separator 2 '-')"
MY_P="${PN}-${MY_PV}"
diff --git a/app-emulation/phpvirtualbox/phpvirtualbox-4.3.0.ebuild b/app-emulation/phpvirtualbox/phpvirtualbox-4.3.0.ebuild
index 951edd15e0..ecda72e539 100644
--- a/app-emulation/phpvirtualbox/phpvirtualbox-4.3.0.ebuild
+++ b/app-emulation/phpvirtualbox/phpvirtualbox-4.3.0.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
-inherit versionator eutils webapp depend.php readme.gentoo
+inherit versionator eutils webapp readme.gentoo
MY_PV="$(replace_version_separator 2 '-')"
MY_P="${PN}-${MY_PV}"
diff --git a/app-emulation/phpvirtualbox/phpvirtualbox-5.0.3.ebuild b/app-emulation/phpvirtualbox/phpvirtualbox-5.0.3.ebuild
index 5d046cb1bc..db6c8798a0 100644
--- a/app-emulation/phpvirtualbox/phpvirtualbox-5.0.3.ebuild
+++ b/app-emulation/phpvirtualbox/phpvirtualbox-5.0.3.ebuild
@@ -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"
-inherit versionator eutils webapp depend.php readme.gentoo
+inherit versionator eutils webapp readme.gentoo
MY_PV="$(replace_version_separator 2 '-')"
MY_P="${PN}-${MY_PV}"
diff --git a/app-emulation/playonlinux/metadata.xml b/app-emulation/playonlinux/metadata.xml
index d94fe6d47e..2a8ec20278 100644
--- a/app-emulation/playonlinux/metadata.xml
+++ b/app-emulation/playonlinux/metadata.xml
@@ -1,13 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>wine</herd>
- <maintainer>
+ <maintainer type="person">
<email>np-hardass@gentoo.org</email>
<name>NP-Hardass</name>
</maintainer>
+ <maintainer type="project">
+ <email>wine@gentoo.org</email>
+ <name>Wine</name>
+ </maintainer>
<use>
<flag name="winbind">Enables support for the winbind auth daemon</flag>
</use>
</pkgmetadata>
-
diff --git a/app-emulation/q4wine/Manifest b/app-emulation/q4wine/Manifest
index f203be4b98..5dbb9f0501 100644
--- a/app-emulation/q4wine/Manifest
+++ b/app-emulation/q4wine/Manifest
@@ -1,2 +1,3 @@
DIST q4wine-1.0-r3.tar.bz2 889308 SHA256 9f1319dd0baff3834a3938e0a048c1529cb9ea521158370176b706fce0d4d2ff SHA512 df10a2fbf6874f4c4e02dd9c43031453a46c76f03d83321f2d6e9544d0540dd07da1bc9246767c5c91ce17d67d5d236227294efaed9de09f3d5a18afbd60b224 WHIRLPOOL 51b5b4cfc157da6b99154269ef4ef9f38ff91f861864158b789352505af485d8b523a21c6d4b59544804ed3c15cb1c6c756db3f3203c8e3ba55c8396c3630df3
DIST q4wine-1.1-r2.tar.bz2 888990 SHA256 01463f9ec3ef9f7ef987d2b77425f2806cf2b60f574deb6644458366782eafc7 SHA512 8aaeec46d239a86a9eb10377842d63d84a35864f920f9dc46a022ae1cf3e010273d3759701595e058a089f6418a297a0bf94ed62b580a71fa1c8c27a80f4ec7e WHIRLPOOL 6ae891e33a2bf3759c45930820e21a273b2bf36f2c386a841a96c3bf14cfdb6741871d3c90383dde3b6b01df1a87f5b1537ae40bac5a494bdd3023248c526244
+DIST q4wine-1.2-r2.tar.bz2 690922 SHA256 44bac78060233504d0db945533e5da4a92bf8b4ca4ef87928032d14451e42160 SHA512 c47fc3adc756ea4bc33dc10f6de03e0a0e72258d1b4b238930136653a7938869d221ce08f6fcafcd5f012583b28227cf827505a59ee5322e9ab90c2c819fd7cb WHIRLPOOL 564eb944097528248f340ac59462f63bec22211d554ad26f125d46382a30ee2a8b7c8d00dd8874fabe92ae939f6bcf13665158957e0e8dad26e077018e495c0d
diff --git a/app-emulation/q4wine/metadata.xml b/app-emulation/q4wine/metadata.xml
index 4ad3c6023f..fba48c5b16 100644
--- a/app-emulation/q4wine/metadata.xml
+++ b/app-emulation/q4wine/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>qt</herd>
- <maintainer>
+ <maintainer type="person">
<email>hwoarang@gentoo.org</email>
<name>Markos Chandras</name>
</maintainer>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
<use>
<flag name="gnome">Use the gksu sudo GUI for managing the devices</flag>
<flag name="icoutils">Enable icoutils support</flag>
diff --git a/app-emulation/q4wine/q4wine-1.2_p2.ebuild b/app-emulation/q4wine/q4wine-1.2_p2.ebuild
new file mode 100644
index 0000000000..686546e9b4
--- /dev/null
+++ b/app-emulation/q4wine/q4wine-1.2_p2.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PLOCALES="af_ZA cs_CZ de_DE en_US es_ES fa_IR he_IL it_IT pl_PL pt_BR ru_RU uk_UA"
+PLOCALE_BACKUP="en_US"
+
+inherit cmake-utils l10n
+
+DESCRIPTION="Qt4 GUI configuration tool for Wine"
+HOMEPAGE="http://q4wine.brezblock.org.ua/"
+
+# Upstream names the package PV-rX. We change that to
+# PV_pX so we can use portage revisions.
+MY_PV="${PV/_p/-r}"
+MY_P="${PN}-${MY_PV}"
+SRC_URI="mirror://sourceforge/${PN}/${PN}/${PN}%20${MY_PV}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+dbus debug +icoutils +wineappdb"
+
+DEPEND="
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ dev-qt/qtsingleapplication[qt4(+),X]
+ dev-qt/qtsql:4[sqlite]
+ dbus? ( dev-qt/qtdbus:4 )
+"
+RDEPEND="${DEPEND}
+ app-admin/sudo
+ app-emulation/wine
+ >=sys-apps/which-2.19
+ sys-fs/fuseiso
+ icoutils? ( >=media-gfx/icoutils-0.26.0 )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS=( AUTHORS ChangeLog README )
+
+src_configure() {
+ local enabled_linguas
+ construct_LINGUAS() {
+ local current_locale="$(echo ${1} | tr '[:upper:]' '[:lower:]')"
+ enabled_linguas="${enabled_linguas};${current_locale}"
+ }
+ l10n_for_each_locale_do construct_LINGUAS
+ local mycmakeargs=(
+ -DLINGUAS="${enabled_linguas}"
+ -DQT5=OFF
+ -DWITH_SYSTEM_SINGLEAPP=ON
+ $(cmake-utils_use debug)
+ $(cmake-utils_use_with dbus)
+ $(cmake-utils_use_with icoutils)
+ $(cmake-utils_use_with wineappdb)
+ )
+ cmake-utils_src_configure
+}
diff --git a/app-emulation/qemu-guest-agent/Manifest b/app-emulation/qemu-guest-agent/Manifest
index dd9b756a37..ec5d4409b1 100644
--- a/app-emulation/qemu-guest-agent/Manifest
+++ b/app-emulation/qemu-guest-agent/Manifest
@@ -1,3 +1,4 @@
DIST qemu-2.3.0.tar.bz2 24683085 SHA256 b6bab7f763d5be73e7cb5ee7d4c8365b7a8df2972c52fa5ded18893bd8281588 SHA512 7a40d213c5696b27784abd2a3119e49d42c38c923be431826c73a8f14c19074435d7f1a652686c53baf08e81f5a3005b2ddc92d67c32f6a2b19659ab627e9eaa WHIRLPOOL 9dad6e342027c3be512b4e0b40e810e0a6f1dc84a16847aa5aac74d97f7a347e60d42e770335a090f83e90a1614294f86552a84edc1faafc7093d3e32602f5de
DIST qemu-2.3.1.tar.bz2 24692020 SHA256 661d029809421cae06b4b1bc74ac0e560cb4ed47c9523c676ff277fa26dca15f SHA512 309e6df7dcc0a064d1a17c7dac2f60398700dfa8c6b60b66e4202966248097cbc49af75aa97725bc34773151be6fd75836810e9f0741ba65cdc208414fa78f6b WHIRLPOOL 26750ee00513daa99cdcd585c4b8407b8258a9c3559ae6335266d7754cb6679e7c10c56f8d12ae0ef2b5cd5d6a9a6a536213f8e86e81ced37e46205c796a773e
DIST qemu-2.4.0.tar.bz2 25070979 SHA256 72b0b991bbcc540663a019e1e8c4f714053b691dda32c9b9ee80b25f367e6620 SHA512 8740e0fb2c654ed897dff4649f1f83d14d57cfa9cbde723899f115982f93253ce9a2bddd60aab379d241027d2044137770efe4c0b3c83d5b20f3a2a06f05a5dc WHIRLPOOL 8c6cfae096624e01f0d5daeb86aa2dccbeaa86d2aeab626cf55cf20b7edace82d0b0f3a1d85eeb2dc1fd53abaaa9dccf8f0d7ddc657a1f5ffd72fd68301648f1
+DIST qemu-2.5.0.tar.bz2 25464996 SHA256 3443887401619fe33bfa5d900a4f2d6a79425ae2b7e43d5b8c36eb7a683772d4 SHA512 12153f94cc7f834fd6a85f25690c36f2331d88d414426fb8b9ac20a34e6f9222b1eda30b727674af583580fae90dfd6d0614a905dce1567d94cd049d426b9dd3 WHIRLPOOL 8f5717989d8d234ecf1763ee386b2e1f20c3b17918de130c6dae255e4523a230b2b01a759eba25e4b9f604c680d9b868c56f58bd71b7c6c2c22a2e46804435ef
diff --git a/app-emulation/qemu-guest-agent/metadata.xml b/app-emulation/qemu-guest-agent/metadata.xml
index 6645932c48..c7b88a32f7 100644
--- a/app-emulation/qemu-guest-agent/metadata.xml
+++ b/app-emulation/qemu-guest-agent/metadata.xml
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>qemu</herd>
+ <maintainer type="project">
+ <email>qemu@gentoo.org</email>
+ <name>Gentoo QEMU Project</name>
+ </maintainer>
</pkgmetadata>
-
diff --git a/app-emulation/qemu-guest-agent/qemu-guest-agent-2.5.0.ebuild b/app-emulation/qemu-guest-agent/qemu-guest-agent-2.5.0.ebuild
new file mode 100644
index 0000000000..e634cfe2f5
--- /dev/null
+++ b/app-emulation/qemu-guest-agent/qemu-guest-agent-2.5.0.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils systemd udev python-any-r1
+
+MY_PN="qemu"
+MY_P="${MY_PN}-${PV}"
+
+if [[ ${PV} == *9999* ]]; then
+ EGIT_REPO_URI="git://git.qemu.org/qemu.git"
+ inherit git-2
+else
+ SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.bz2"
+ KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
+fi
+
+DESCRIPTION="QEMU Guest Agent (qemu-ga) for use when running inside a VM"
+HOMEPAGE="http://wiki.qemu.org/Features/QAPI/GuestAgent"
+
+LICENSE="GPL-2 BSD-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND=">=dev-libs/glib-2.22
+ !<app-emulation/qemu-1.1.1-r1
+ !<sys-apps/sysvinit-2.88-r5"
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ epatch_user
+}
+
+src_configure() {
+ tc-export AR LD OBJCOPY
+
+ local myconf=(
+ --prefix=/usr
+ --sysconfdir=/etc
+ --libdir="/usr/$(get_libdir)"
+ --localstatedir=/
+ --disable-bsd-user
+ --disable-linux-user
+ --disable-system
+ --disable-strip
+ --disable-werror
+ --enable-guest-agent
+ --python="${PYTHON}"
+ --cc="$(tc-getCC)"
+ --cxx="$(tc-getCXX)"
+ --host-cc="$(tc-getBUILD_CC)"
+ )
+ echo "./configure ${myconf[*]}"
+ ./configure "${myconf[@]}" || die
+}
+
+src_compile() {
+ emake V=1 qemu-ga
+}
+
+src_install() {
+ dobin qemu-ga
+
+ # Normal init stuff
+ newinitd "${FILESDIR}/qemu-ga.init-r1" qemu-guest-agent
+ newconfd "${FILESDIR}/qemu-ga.conf-r1" qemu-guest-agent
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/qemu-ga.logrotate" qemu-guest-agent
+
+ # systemd stuff
+ udev_newrules "${FILESDIR}/qemu-ga-systemd.udev" 99-qemu-guest-agent.rules
+
+ systemd_newunit "${FILESDIR}/qemu-ga-systemd.service" \
+ qemu-guest-agent.service
+}
+
+pkg_postinst() {
+ elog "You should add 'qemu-guest-agent' to the default runlevel."
+ elog "e.g. rc-update add qemu-guest-agent default"
+}
diff --git a/app-emulation/qemu/Manifest b/app-emulation/qemu/Manifest
index 861b373036..6269bb7f2f 100644
--- a/app-emulation/qemu/Manifest
+++ b/app-emulation/qemu/Manifest
@@ -1,5 +1,2 @@
-DIST qemu-2.3.0.tar.bz2 24683085 SHA256 b6bab7f763d5be73e7cb5ee7d4c8365b7a8df2972c52fa5ded18893bd8281588 SHA512 7a40d213c5696b27784abd2a3119e49d42c38c923be431826c73a8f14c19074435d7f1a652686c53baf08e81f5a3005b2ddc92d67c32f6a2b19659ab627e9eaa WHIRLPOOL 9dad6e342027c3be512b4e0b40e810e0a6f1dc84a16847aa5aac74d97f7a347e60d42e770335a090f83e90a1614294f86552a84edc1faafc7093d3e32602f5de
-DIST qemu-2.3.1.tar.bz2 24692020 SHA256 661d029809421cae06b4b1bc74ac0e560cb4ed47c9523c676ff277fa26dca15f SHA512 309e6df7dcc0a064d1a17c7dac2f60398700dfa8c6b60b66e4202966248097cbc49af75aa97725bc34773151be6fd75836810e9f0741ba65cdc208414fa78f6b WHIRLPOOL 26750ee00513daa99cdcd585c4b8407b8258a9c3559ae6335266d7754cb6679e7c10c56f8d12ae0ef2b5cd5d6a9a6a536213f8e86e81ced37e46205c796a773e
-DIST qemu-2.4.0.1.tar.bz2 25068555 SHA256 ecfe8b88037e41e817d72c460c56c6a0b573d540d6ba38b162d0de4fd22d1bdb SHA512 08eabe92fa9096386ef00f8e9d99eeec1508d15e5a98431e043a729cbaca2d96d6e3afc612e7c4a0fe5a6bba80006276185f1066b4c73105b2ea24b7e9133b84 WHIRLPOOL 1daaec23d6ada6af8bf4902e590fb96375e7149d2f53ff6bf6d8fb39722c182a2d2efcc0d40bee673a8316f621983c512daa54202bb4e632b3a4b09f0268cd09
-DIST qemu-2.4.0.tar.bz2 25070979 SHA256 72b0b991bbcc540663a019e1e8c4f714053b691dda32c9b9ee80b25f367e6620 SHA512 8740e0fb2c654ed897dff4649f1f83d14d57cfa9cbde723899f115982f93253ce9a2bddd60aab379d241027d2044137770efe4c0b3c83d5b20f3a2a06f05a5dc WHIRLPOOL 8c6cfae096624e01f0d5daeb86aa2dccbeaa86d2aeab626cf55cf20b7edace82d0b0f3a1d85eeb2dc1fd53abaaa9dccf8f0d7ddc657a1f5ffd72fd68301648f1
DIST qemu-2.4.1.tar.bz2 25087522 SHA256 e3d5cf4c8b1f9129c9c797329a515bfb6b3b1ded0ab8b394c8a316490fe3a177 SHA512 fde32b71a50d888c1055e61f4e6dfc45bb97e8e9ebee490c545965fbdcbd5ffd859fbf20648abed1f4fa9fcc5635e9b22e1829bbe802fc8aaf989d6013235917 WHIRLPOOL a698cfa5d2d138eeddb3c6bea57e3b89ca5d47165c04ed1cfd66a81647ac59cbdd594c919abef67bf198278da1160c5b9f3a0da84cd73827f3eb19a6e6f05436
+DIST qemu-2.5.0.tar.bz2 25464996 SHA256 3443887401619fe33bfa5d900a4f2d6a79425ae2b7e43d5b8c36eb7a683772d4 SHA512 12153f94cc7f834fd6a85f25690c36f2331d88d414426fb8b9ac20a34e6f9222b1eda30b727674af583580fae90dfd6d0614a905dce1567d94cd049d426b9dd3 WHIRLPOOL 8f5717989d8d234ecf1763ee386b2e1f20c3b17918de130c6dae255e4523a230b2b01a759eba25e4b9f604c680d9b868c56f58bd71b7c6c2c22a2e46804435ef
diff --git a/app-emulation/qemu/files/qemu-2.2.1-CVE-2015-1779-1.patch b/app-emulation/qemu/files/qemu-2.2.1-CVE-2015-1779-1.patch
deleted file mode 100644
index 35ef8fdebf..0000000000
--- a/app-emulation/qemu/files/qemu-2.2.1-CVE-2015-1779-1.patch
+++ /dev/null
@@ -1,241 +0,0 @@
-From a2bebfd6e09d285aa793cae3fb0fc3a39a9fee6e Mon Sep 17 00:00:00 2001
-From: "Daniel P. Berrange" <berrange@redhat.com>
-Date: Mon, 23 Mar 2015 22:58:21 +0000
-Subject: [PATCH] CVE-2015-1779: incrementally decode websocket frames
-
-The logic for decoding websocket frames wants to fully
-decode the frame header and payload, before allowing the
-VNC server to see any of the payload data. There is no
-size limit on websocket payloads, so this allows a
-malicious network client to consume 2^64 bytes in memory
-in QEMU. It can trigger this denial of service before
-the VNC server even performs any authentication.
-
-The fix is to decode the header, and then incrementally
-decode the payload data as it is needed. With this fix
-the websocket decoder will allow at most 4k of data to
-be buffered before decoding and processing payload.
-
-Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
-
-[ kraxel: fix frequent spurious disconnects, suggested by Peter Maydell ]
-
- @@ -361,7 +361,7 @@ int vncws_decode_frame_payload(Buffer *input,
- - *payload_size = input->offset;
- + *payload_size = *payload_remain;
-
-[ kraxel: fix 32bit build ]
-
- @@ -306,7 +306,7 @@ struct VncState
- - uint64_t ws_payload_remain;
- + size_t ws_payload_remain;
-
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
----
- ui/vnc-ws.c | 105 ++++++++++++++++++++++++++++++++++++++++--------------------
- ui/vnc-ws.h | 9 ++++--
- ui/vnc.h | 2 ++
- 3 files changed, 80 insertions(+), 36 deletions(-)
-
-diff --git a/ui/vnc-ws.c b/ui/vnc-ws.c
-index 85dbb7e..0b7de4e 100644
---- a/ui/vnc-ws.c
-+++ b/ui/vnc-ws.c
-@@ -107,7 +107,7 @@ long vnc_client_read_ws(VncState *vs)
- {
- int ret, err;
- uint8_t *payload;
-- size_t payload_size, frame_size;
-+ size_t payload_size, header_size;
- VNC_DEBUG("Read websocket %p size %zd offset %zd\n", vs->ws_input.buffer,
- vs->ws_input.capacity, vs->ws_input.offset);
- buffer_reserve(&vs->ws_input, 4096);
-@@ -117,18 +117,39 @@ long vnc_client_read_ws(VncState *vs)
- }
- vs->ws_input.offset += ret;
-
-- /* make sure that nothing is left in the ws_input buffer */
-+ ret = 0;
-+ /* consume as much of ws_input buffer as possible */
- do {
-- err = vncws_decode_frame(&vs->ws_input, &payload,
-- &payload_size, &frame_size);
-- if (err <= 0) {
-- return err;
-+ if (vs->ws_payload_remain == 0) {
-+ err = vncws_decode_frame_header(&vs->ws_input,
-+ &header_size,
-+ &vs->ws_payload_remain,
-+ &vs->ws_payload_mask);
-+ if (err <= 0) {
-+ return err;
-+ }
-+
-+ buffer_advance(&vs->ws_input, header_size);
- }
-+ if (vs->ws_payload_remain != 0) {
-+ err = vncws_decode_frame_payload(&vs->ws_input,
-+ &vs->ws_payload_remain,
-+ &vs->ws_payload_mask,
-+ &payload,
-+ &payload_size);
-+ if (err < 0) {
-+ return err;
-+ }
-+ if (err == 0) {
-+ return ret;
-+ }
-+ ret += err;
-
-- buffer_reserve(&vs->input, payload_size);
-- buffer_append(&vs->input, payload, payload_size);
-+ buffer_reserve(&vs->input, payload_size);
-+ buffer_append(&vs->input, payload, payload_size);
-
-- buffer_advance(&vs->ws_input, frame_size);
-+ buffer_advance(&vs->ws_input, payload_size);
-+ }
- } while (vs->ws_input.offset > 0);
-
- return ret;
-@@ -265,15 +286,14 @@ void vncws_encode_frame(Buffer *output, const void *payload,
- buffer_append(output, payload, payload_size);
- }
-
--int vncws_decode_frame(Buffer *input, uint8_t **payload,
-- size_t *payload_size, size_t *frame_size)
-+int vncws_decode_frame_header(Buffer *input,
-+ size_t *header_size,
-+ size_t *payload_remain,
-+ WsMask *payload_mask)
- {
- unsigned char opcode = 0, fin = 0, has_mask = 0;
-- size_t header_size = 0;
-- uint32_t *payload32;
-+ size_t payload_len;
- WsHeader *header = (WsHeader *)input->buffer;
-- WsMask mask;
-- int i;
-
- if (input->offset < WS_HEAD_MIN_LEN + 4) {
- /* header not complete */
-@@ -283,7 +303,7 @@ int vncws_decode_frame(Buffer *input, uint8_t **payload,
- fin = (header->b0 & 0x80) >> 7;
- opcode = header->b0 & 0x0f;
- has_mask = (header->b1 & 0x80) >> 7;
-- *payload_size = header->b1 & 0x7f;
-+ payload_len = header->b1 & 0x7f;
-
- if (opcode == WS_OPCODE_CLOSE) {
- /* disconnect */
-@@ -300,40 +320,57 @@ int vncws_decode_frame(Buffer *input, uint8_t **payload,
- return -2;
- }
-
-- if (*payload_size < 126) {
-- header_size = 6;
-- mask = header->u.m;
-- } else if (*payload_size == 126 && input->offset >= 8) {
-- *payload_size = be16_to_cpu(header->u.s16.l16);
-- header_size = 8;
-- mask = header->u.s16.m16;
-- } else if (*payload_size == 127 && input->offset >= 14) {
-- *payload_size = be64_to_cpu(header->u.s64.l64);
-- header_size = 14;
-- mask = header->u.s64.m64;
-+ if (payload_len < 126) {
-+ *payload_remain = payload_len;
-+ *header_size = 6;
-+ *payload_mask = header->u.m;
-+ } else if (payload_len == 126 && input->offset >= 8) {
-+ *payload_remain = be16_to_cpu(header->u.s16.l16);
-+ *header_size = 8;
-+ *payload_mask = header->u.s16.m16;
-+ } else if (payload_len == 127 && input->offset >= 14) {
-+ *payload_remain = be64_to_cpu(header->u.s64.l64);
-+ *header_size = 14;
-+ *payload_mask = header->u.s64.m64;
- } else {
- /* header not complete */
- return 0;
- }
-
-- *frame_size = header_size + *payload_size;
-+ return 1;
-+}
-+
-+int vncws_decode_frame_payload(Buffer *input,
-+ size_t *payload_remain, WsMask *payload_mask,
-+ uint8_t **payload, size_t *payload_size)
-+{
-+ size_t i;
-+ uint32_t *payload32;
-
-- if (input->offset < *frame_size) {
-- /* frame not complete */
-+ *payload = input->buffer;
-+ /* If we aren't at the end of the payload, then drop
-+ * off the last bytes, so we're always multiple of 4
-+ * for purpose of unmasking, except at end of payload
-+ */
-+ if (input->offset < *payload_remain) {
-+ *payload_size = input->offset - (input->offset % 4);
-+ } else {
-+ *payload_size = *payload_remain;
-+ }
-+ if (*payload_size == 0) {
- return 0;
- }
--
-- *payload = input->buffer + header_size;
-+ *payload_remain -= *payload_size;
-
- /* unmask frame */
- /* process 1 frame (32 bit op) */
- payload32 = (uint32_t *)(*payload);
- for (i = 0; i < *payload_size / 4; i++) {
-- payload32[i] ^= mask.u;
-+ payload32[i] ^= payload_mask->u;
- }
- /* process the remaining bytes (if any) */
- for (i *= 4; i < *payload_size; i++) {
-- (*payload)[i] ^= mask.c[i % 4];
-+ (*payload)[i] ^= payload_mask->c[i % 4];
- }
-
- return 1;
-diff --git a/ui/vnc-ws.h b/ui/vnc-ws.h
-index ef229b7..14d4230 100644
---- a/ui/vnc-ws.h
-+++ b/ui/vnc-ws.h
-@@ -83,7 +83,12 @@ long vnc_client_read_ws(VncState *vs);
- void vncws_process_handshake(VncState *vs, uint8_t *line, size_t size);
- void vncws_encode_frame(Buffer *output, const void *payload,
- const size_t payload_size);
--int vncws_decode_frame(Buffer *input, uint8_t **payload,
-- size_t *payload_size, size_t *frame_size);
-+int vncws_decode_frame_header(Buffer *input,
-+ size_t *header_size,
-+ size_t *payload_remain,
-+ WsMask *payload_mask);
-+int vncws_decode_frame_payload(Buffer *input,
-+ size_t *payload_remain, WsMask *payload_mask,
-+ uint8_t **payload, size_t *payload_size);
-
- #endif /* __QEMU_UI_VNC_WS_H */
-diff --git a/ui/vnc.h b/ui/vnc.h
-index e19ac39..3f7c6a9 100644
---- a/ui/vnc.h
-+++ b/ui/vnc.h
-@@ -306,6 +306,8 @@ struct VncState
- #ifdef CONFIG_VNC_WS
- Buffer ws_input;
- Buffer ws_output;
-+ size_t ws_payload_remain;
-+ WsMask ws_payload_mask;
- #endif
- /* current output mode information */
- VncWritePixels *write_pixels;
---
-2.3.5
-
diff --git a/app-emulation/qemu/files/qemu-2.2.1-CVE-2015-1779-2.patch b/app-emulation/qemu/files/qemu-2.2.1-CVE-2015-1779-2.patch
deleted file mode 100644
index c7a8c8b3ec..0000000000
--- a/app-emulation/qemu/files/qemu-2.2.1-CVE-2015-1779-2.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 2cdb5e142fb93e875fa53c52864ef5eb8d5d8b41 Mon Sep 17 00:00:00 2001
-From: "Daniel P. Berrange" <berrange@redhat.com>
-Date: Mon, 23 Mar 2015 22:58:22 +0000
-Subject: [PATCH] CVE-2015-1779: limit size of HTTP headers from websockets
- clients
-
-The VNC server websockets decoder will read and buffer data from
-websockets clients until it sees the end of the HTTP headers,
-as indicated by \r\n\r\n. In theory this allows a malicious to
-trick QEMU into consuming an arbitrary amount of RAM. In practice,
-because QEMU runs g_strstr_len() across the buffered header data,
-it will spend increasingly long burning CPU time searching for
-the substring match and less & less time reading data. So while
-this does cause arbitrary memory growth, the bigger problem is
-that QEMU will be burning 100% of available CPU time.
-
-A novnc websockets client typically sends headers of around
-512 bytes in length. As such it is reasonable to place a 4096
-byte limit on the amount of data buffered while searching for
-the end of HTTP headers.
-
-Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
----
- ui/vnc-ws.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/ui/vnc-ws.c b/ui/vnc-ws.c
-index 0b7de4e..62eb97f 100644
---- a/ui/vnc-ws.c
-+++ b/ui/vnc-ws.c
-@@ -81,8 +81,11 @@ void vncws_handshake_read(void *opaque)
- VncState *vs = opaque;
- uint8_t *handshake_end;
- long ret;
-- buffer_reserve(&vs->ws_input, 4096);
-- ret = vnc_client_read_buf(vs, buffer_end(&vs->ws_input), 4096);
-+ /* Typical HTTP headers from novnc are 512 bytes, so limiting
-+ * total header size to 4096 is easily enough. */
-+ size_t want = 4096 - vs->ws_input.offset;
-+ buffer_reserve(&vs->ws_input, want);
-+ ret = vnc_client_read_buf(vs, buffer_end(&vs->ws_input), want);
-
- if (!ret) {
- if (vs->csock == -1) {
-@@ -99,6 +102,9 @@ void vncws_handshake_read(void *opaque)
- vncws_process_handshake(vs, vs->ws_input.buffer, vs->ws_input.offset);
- buffer_advance(&vs->ws_input, handshake_end - vs->ws_input.buffer +
- strlen(WS_HANDSHAKE_END));
-+ } else if (vs->ws_input.offset >= 4096) {
-+ VNC_DEBUG("End of headers not found in first 4096 bytes\n");
-+ vnc_client_error(vs);
- }
- }
-
---
-2.3.5
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3209.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3209.patch
deleted file mode 100644
index 885db3b52e..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3209.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-https://bugs.gentoo.org/551752
-
-From 9f7c594c006289ad41169b854d70f5da6e400a2a Mon Sep 17 00:00:00 2001
-From: Petr Matousek <pmatouse@redhat.com>
-Date: Sun, 24 May 2015 10:53:44 +0200
-Subject: [PATCH] pcnet: force the buffer access to be in bounds during tx
-
-4096 is the maximum length per TMD and it is also currently the size of
-the relay buffer pcnet driver uses for sending the packet data to QEMU
-for further processing. With packet spanning multiple TMDs it can
-happen that the overall packet size will be bigger than sizeof(buffer),
-which results in memory corruption.
-
-Fix this by only allowing to queue maximum sizeof(buffer) bytes.
-
-This is CVE-2015-3209.
-
-[Fixed 3-space indentation to QEMU's 4-space coding standard.
---Stefan]
-
-Signed-off-by: Petr Matousek <pmatouse@redhat.com>
-Reported-by: Matt Tait <matttait@google.com>
-Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
-Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
----
- hw/net/pcnet.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/hw/net/pcnet.c b/hw/net/pcnet.c
-index bdfd38f..68b9981 100644
---- a/hw/net/pcnet.c
-+++ b/hw/net/pcnet.c
-@@ -1241,6 +1241,14 @@ static void pcnet_transmit(PCNetState *s)
- }
-
- bcnt = 4096 - GET_FIELD(tmd.length, TMDL, BCNT);
-+
-+ /* if multi-tmd packet outsizes s->buffer then skip it silently.
-+ Note: this is not what real hw does */
-+ if (s->xmit_pos + bcnt > sizeof(s->buffer)) {
-+ s->xmit_pos = -1;
-+ goto txdone;
-+ }
-+
- s->phys_mem_read(s->dma_opaque, PHYSADDR(s, tmd.tbadr),
- s->buffer + s->xmit_pos, bcnt, CSR_BSWP(s));
- s->xmit_pos += bcnt;
---
-2.2.0.rc0.207.ga3a616c
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3214.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3214.patch
deleted file mode 100644
index 7fee8fdcac..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3214.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From: Petr Matousek <pmatouse@redhat.com>
-Date: Wed, 17 Jun 2015 10:46:11 +0000 (+0200)
-Subject: i8254: fix out-of-bounds memory access in pit_ioport_read()
-X-Git-Tag: v2.4.0-rc0~43^2~9
-X-Git-Url: http://git.qemu.org/?p=qemu.git;a=commitdiff_plain;h=d4862a87e31a51de9eb260f25c9e99a75efe3235;hp=9dacf32d2cbd66cbcce7944ebdfd6b2df20e33b8
-
-i8254: fix out-of-bounds memory access in pit_ioport_read()
-
-Due converting PIO to the new memory read/write api we no longer provide
-separate I/O region lenghts for read and write operations. As a result,
-reading from PIT Mode/Command register will end with accessing
-pit->channels with invalid index.
-
-Fix this by ignoring read from the Mode/Command register.
-
-This is CVE-2015-3214.
-
-Reported-by: Matt Tait <matttait@google.com>
-Fixes: 0505bcdec8228d8de39ab1a02644e71999e7c052
-Cc: qemu-stable@nongnu.org
-Signed-off-by: Petr Matousek <pmatouse@redhat.com>
-Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
----
-
-diff --git a/hw/timer/i8254.c b/hw/timer/i8254.c
-index 3450c98..9b65a33 100644
---- a/hw/timer/i8254.c
-+++ b/hw/timer/i8254.c
-@@ -196,6 +196,12 @@ static uint64_t pit_ioport_read(void *opaque, hwaddr addr,
- PITChannelState *s;
-
- addr &= 3;
-+
-+ if (addr == 3) {
-+ /* Mode/Command register is write only, read is ignored */
-+ return 0;
-+ }
-+
- s = &pit->channels[addr];
- if (s->status_latched) {
- s->status_latched = 0;
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3456.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3456.patch
deleted file mode 100644
index 87697d08ef..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-3456.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-https://bugs.gentoo.org/549404
-
-From e907746266721f305d67bc0718795fedee2e824c Mon Sep 17 00:00:00 2001
-From: Petr Matousek <pmatouse@redhat.com>
-Date: Wed, 6 May 2015 09:48:59 +0200
-Subject: [PATCH] fdc: force the fifo access to be in bounds of the allocated buffer
-
-During processing of certain commands such as FD_CMD_READ_ID and
-FD_CMD_DRIVE_SPECIFICATION_COMMAND the fifo memory access could
-get out of bounds leading to memory corruption with values coming
-from the guest.
-
-Fix this by making sure that the index is always bounded by the
-allocated memory.
-
-This is CVE-2015-3456.
-
-Signed-off-by: Petr Matousek <pmatouse@redhat.com>
-Reviewed-by: John Snow <jsnow@redhat.com>
-Signed-off-by: John Snow <jsnow@redhat.com>
----
- hw/block/fdc.c | 17 +++++++++++------
- 1 files changed, 11 insertions(+), 6 deletions(-)
-
-diff --git a/hw/block/fdc.c b/hw/block/fdc.c
-index f72a392..d8a8edd 100644
---- a/hw/block/fdc.c
-+++ b/hw/block/fdc.c
-@@ -1497,7 +1497,7 @@ static uint32_t fdctrl_read_data(FDCtrl *fdctrl)
- {
- FDrive *cur_drv;
- uint32_t retval = 0;
-- int pos;
-+ uint32_t pos;
-
- cur_drv = get_cur_drv(fdctrl);
- fdctrl->dsr &= ~FD_DSR_PWRDOWN;
-@@ -1506,8 +1506,8 @@ static uint32_t fdctrl_read_data(FDCtrl *fdctrl)
- return 0;
- }
- pos = fdctrl->data_pos;
-+ pos %= FD_SECTOR_LEN;
- if (fdctrl->msr & FD_MSR_NONDMA) {
-- pos %= FD_SECTOR_LEN;
- if (pos == 0) {
- if (fdctrl->data_pos != 0)
- if (!fdctrl_seek_to_next_sect(fdctrl, cur_drv)) {
-@@ -1852,10 +1852,13 @@ static void fdctrl_handle_option(FDCtrl *fdctrl, int direction)
- static void fdctrl_handle_drive_specification_command(FDCtrl *fdctrl, int direction)
- {
- FDrive *cur_drv = get_cur_drv(fdctrl);
-+ uint32_t pos;
-
-- if (fdctrl->fifo[fdctrl->data_pos - 1] & 0x80) {
-+ pos = fdctrl->data_pos - 1;
-+ pos %= FD_SECTOR_LEN;
-+ if (fdctrl->fifo[pos] & 0x80) {
- /* Command parameters done */
-- if (fdctrl->fifo[fdctrl->data_pos - 1] & 0x40) {
-+ if (fdctrl->fifo[pos] & 0x40) {
- fdctrl->fifo[0] = fdctrl->fifo[1];
- fdctrl->fifo[2] = 0;
- fdctrl->fifo[3] = 0;
-@@ -1955,7 +1958,7 @@ static uint8_t command_to_handler[256];
- static void fdctrl_write_data(FDCtrl *fdctrl, uint32_t value)
- {
- FDrive *cur_drv;
-- int pos;
-+ uint32_t pos;
-
- /* Reset mode */
- if (!(fdctrl->dor & FD_DOR_nRESET)) {
-@@ -2004,7 +2007,9 @@ static void fdctrl_write_data(FDCtrl *fdctrl, uint32_t value)
- }
-
- FLOPPY_DPRINTF("%s: %02x\n", __func__, value);
-- fdctrl->fifo[fdctrl->data_pos++] = value;
-+ pos = fdctrl->data_pos++;
-+ pos %= FD_SECTOR_LEN;
-+ fdctrl->fifo[pos] = value;
- if (fdctrl->data_pos == fdctrl->data_len) {
- /* We now have all parameters
- * and will be able to treat the command
---
-1.7.0.4
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-1.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-1.patch
deleted file mode 100644
index 759e403c5e..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-1.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From d2ff85854512574e7209f295e87b0835d5b032c6 Mon Sep 17 00:00:00 2001
-From: Kevin Wolf <kwolf@redhat.com>
-Date: Sun, 26 Jul 2015 23:42:53 -0400
-Subject: [PATCH] ide: Check array bounds before writing to io_buffer
- (CVE-2015-5154)
-
-If the end_transfer_func of a command is called because enough data has
-been read or written for the current PIO transfer, and it fails to
-correctly call the command completion functions, the DRQ bit in the
-status register and s->end_transfer_func may remain set. This allows the
-guest to access further bytes in s->io_buffer beyond s->data_end, and
-eventually overflowing the io_buffer.
-
-One case where this currently happens is emulation of the ATAPI command
-START STOP UNIT.
-
-This patch fixes the problem by adding explicit array bounds checks
-before accessing the buffer instead of relying on end_transfer_func to
-function correctly.
-
-Cc: qemu-stable@nongnu.org
-Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-Reviewed-by: John Snow <jsnow@redhat.com>
----
- hw/ide/core.c | 16 ++++++++++++++++
- 1 file changed, 16 insertions(+)
-
-diff --git a/hw/ide/core.c b/hw/ide/core.c
-index 122e955..44fcc23 100644
---- a/hw/ide/core.c
-+++ b/hw/ide/core.c
-@@ -2021,6 +2021,10 @@ void ide_data_writew(void *opaque, uint32_t addr, uint32_t val)
- }
-
- p = s->data_ptr;
-+ if (p + 2 > s->data_end) {
-+ return;
-+ }
-+
- *(uint16_t *)p = le16_to_cpu(val);
- p += 2;
- s->data_ptr = p;
-@@ -2042,6 +2046,10 @@ uint32_t ide_data_readw(void *opaque, uint32_t addr)
- }
-
- p = s->data_ptr;
-+ if (p + 2 > s->data_end) {
-+ return 0;
-+ }
-+
- ret = cpu_to_le16(*(uint16_t *)p);
- p += 2;
- s->data_ptr = p;
-@@ -2063,6 +2071,10 @@ void ide_data_writel(void *opaque, uint32_t addr, uint32_t val)
- }
-
- p = s->data_ptr;
-+ if (p + 4 > s->data_end) {
-+ return;
-+ }
-+
- *(uint32_t *)p = le32_to_cpu(val);
- p += 4;
- s->data_ptr = p;
-@@ -2084,6 +2096,10 @@ uint32_t ide_data_readl(void *opaque, uint32_t addr)
- }
-
- p = s->data_ptr;
-+ if (p + 4 > s->data_end) {
-+ return 0;
-+ }
-+
- ret = cpu_to_le32(*(uint32_t *)p);
- p += 4;
- s->data_ptr = p;
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-2.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-2.patch
deleted file mode 100644
index 6d7902a534..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-2.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 03441c3a4a42beb25460dd11592539030337d0f8 Mon Sep 17 00:00:00 2001
-From: Kevin Wolf <kwolf@redhat.com>
-Date: Sun, 26 Jul 2015 23:42:53 -0400
-Subject: [PATCH] ide/atapi: Fix START STOP UNIT command completion
-
-The command must be completed on all code paths. START STOP UNIT with
-pwrcnd set should succeed without doing anything.
-
-Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-Reviewed-by: John Snow <jsnow@redhat.com>
----
- hw/ide/atapi.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c
-index 950e311..79dd167 100644
---- a/hw/ide/atapi.c
-+++ b/hw/ide/atapi.c
-@@ -983,6 +983,7 @@ static void cmd_start_stop_unit(IDEState *s, uint8_t* buf)
-
- if (pwrcnd) {
- /* eject/load only happens for power condition == 0 */
-+ ide_atapi_cmd_ok(s);
- return;
- }
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-3.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-3.patch
deleted file mode 100644
index f6f346f197..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5154-3.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From cb72cba83021fa42719e73a5249c12096a4d1cfc Mon Sep 17 00:00:00 2001
-From: Kevin Wolf <kwolf@redhat.com>
-Date: Sun, 26 Jul 2015 23:42:53 -0400
-Subject: [PATCH] ide: Clear DRQ after handling all expected accesses
-
-This is additional hardening against an end_transfer_func that fails to
-clear the DRQ status bit. The bit must be unset as soon as the PIO
-transfer has completed, so it's better to do this in a central place
-instead of duplicating the code in all commands (and forgetting it in
-some).
-
-Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-Reviewed-by: John Snow <jsnow@redhat.com>
----
- hw/ide/core.c | 16 ++++++++++++----
- 1 file changed, 12 insertions(+), 4 deletions(-)
-
-diff --git a/hw/ide/core.c b/hw/ide/core.c
-index 44fcc23..50449ca 100644
---- a/hw/ide/core.c
-+++ b/hw/ide/core.c
-@@ -2028,8 +2028,10 @@ void ide_data_writew(void *opaque, uint32_t addr, uint32_t val)
- *(uint16_t *)p = le16_to_cpu(val);
- p += 2;
- s->data_ptr = p;
-- if (p >= s->data_end)
-+ if (p >= s->data_end) {
-+ s->status &= ~DRQ_STAT;
- s->end_transfer_func(s);
-+ }
- }
-
- uint32_t ide_data_readw(void *opaque, uint32_t addr)
-@@ -2053,8 +2055,10 @@ uint32_t ide_data_readw(void *opaque, uint32_t addr)
- ret = cpu_to_le16(*(uint16_t *)p);
- p += 2;
- s->data_ptr = p;
-- if (p >= s->data_end)
-+ if (p >= s->data_end) {
-+ s->status &= ~DRQ_STAT;
- s->end_transfer_func(s);
-+ }
- return ret;
- }
-
-@@ -2078,8 +2082,10 @@ void ide_data_writel(void *opaque, uint32_t addr, uint32_t val)
- *(uint32_t *)p = le32_to_cpu(val);
- p += 4;
- s->data_ptr = p;
-- if (p >= s->data_end)
-+ if (p >= s->data_end) {
-+ s->status &= ~DRQ_STAT;
- s->end_transfer_func(s);
-+ }
- }
-
- uint32_t ide_data_readl(void *opaque, uint32_t addr)
-@@ -2103,8 +2109,10 @@ uint32_t ide_data_readl(void *opaque, uint32_t addr)
- ret = cpu_to_le32(*(uint32_t *)p);
- p += 4;
- s->data_ptr = p;
-- if (p >= s->data_end)
-+ if (p >= s->data_end) {
-+ s->status &= ~DRQ_STAT;
- s->end_transfer_func(s);
-+ }
- return ret;
- }
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5158.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5158.patch
deleted file mode 100644
index 9badc9b928..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5158.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-commit c170aad8b057223b1139d72e5ce7acceafab4fa9
-Author: Paolo Bonzini <pbonzini@redhat.com>
-Date: Tue Jul 21 08:59:39 2015 +0200
-
- scsi: fix buffer overflow in scsi_req_parse_cdb (CVE-2015-5158)
-
- This is a guest-triggerable buffer overflow present in QEMU 2.2.0
- and newer. scsi_cdb_length returns -1 as an error value, but the
- caller does not check it.
-
- Luckily, the massive overflow means that QEMU will just SIGSEGV,
- making the impact much smaller.
-
- Reported-by: Zhu Donghai (朱东海) <donghai.zdh@alibaba-inc.com>
- Fixes: 1894df02811f6b79ea3ffbf1084599d96f316173
- Reviewed-by: Fam Zheng <famz@redhat.com>
- Cc: qemu-stable@nongnu.org
- Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-
-diff --git a/hw/scsi/scsi-bus.c b/hw/scsi/scsi-bus.c
-index f50b2f0..f0ae462 100644
---- a/hw/scsi/scsi-bus.c
-+++ b/hw/scsi/scsi-bus.c
-@@ -1239,10 +1239,15 @@ int scsi_cdb_length(uint8_t *buf) {
- int scsi_req_parse_cdb(SCSIDevice *dev, SCSICommand *cmd, uint8_t *buf)
- {
- int rc;
-+ int len;
-
- cmd->lba = -1;
-- cmd->len = scsi_cdb_length(buf);
-+ len = scsi_cdb_length(buf);
-+ if (len < 0) {
-+ return -1;
-+ }
-
-+ cmd->len = len;
- switch (dev->type) {
- case TYPE_TAPE:
- rc = scsi_req_stream_xfer(cmd, dev, buf);
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-1.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-1.patch
deleted file mode 100644
index 043d189357..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-1.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From 5e0c290415b9d57077a86e70c8e6a058868334d3 Mon Sep 17 00:00:00 2001
-From: Stefan Hajnoczi <stefanha@redhat.com>
-Date: Wed, 15 Jul 2015 18:16:58 +0100
-Subject: [PATCH 1/7] rtl8139: avoid nested ifs in IP header parsing
-
-Transmit offload needs to parse packet headers. If header fields have
-unexpected values the offload processing is skipped.
-
-The code currently uses nested ifs because there is relatively little
-input validation. The next patches will add missing input validation
-and a goto label is more appropriate to avoid deep if statement nesting.
-
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
----
- hw/net/rtl8139.c | 41 ++++++++++++++++++++++-------------------
- 1 file changed, 22 insertions(+), 19 deletions(-)
-
-diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
-index 5f0197c..91ba33b 100644
---- a/hw/net/rtl8139.c
-+++ b/hw/net/rtl8139.c
-@@ -2174,28 +2174,30 @@ static int rtl8139_cplus_transmit_one(RTL8139State *s)
- size_t eth_payload_len = 0;
-
- int proto = be16_to_cpu(*(uint16_t *)(saved_buffer + 12));
-- if (proto == ETH_P_IP)
-+ if (proto != ETH_P_IP)
- {
-- DPRINTF("+++ C+ mode has IP packet\n");
--
-- /* not aligned */
-- eth_payload_data = saved_buffer + ETH_HLEN;
-- eth_payload_len = saved_size - ETH_HLEN;
--
-- ip = (ip_header*)eth_payload_data;
--
-- if (IP_HEADER_VERSION(ip) != IP_HEADER_VERSION_4) {
-- DPRINTF("+++ C+ mode packet has bad IP version %d "
-- "expected %d\n", IP_HEADER_VERSION(ip),
-- IP_HEADER_VERSION_4);
-- ip = NULL;
-- } else {
-- hlen = IP_HEADER_LENGTH(ip);
-- ip_protocol = ip->ip_p;
-- ip_data_len = be16_to_cpu(ip->ip_len) - hlen;
-- }
-+ goto skip_offload;
- }
-
-+ DPRINTF("+++ C+ mode has IP packet\n");
-+
-+ /* not aligned */
-+ eth_payload_data = saved_buffer + ETH_HLEN;
-+ eth_payload_len = saved_size - ETH_HLEN;
-+
-+ ip = (ip_header*)eth_payload_data;
-+
-+ if (IP_HEADER_VERSION(ip) != IP_HEADER_VERSION_4) {
-+ DPRINTF("+++ C+ mode packet has bad IP version %d "
-+ "expected %d\n", IP_HEADER_VERSION(ip),
-+ IP_HEADER_VERSION_4);
-+ goto skip_offload;
-+ }
-+
-+ hlen = IP_HEADER_LENGTH(ip);
-+ ip_protocol = ip->ip_p;
-+ ip_data_len = be16_to_cpu(ip->ip_len) - hlen;
-+
- if (ip)
- {
- if (txdw0 & CP_TX_IPCS)
-@@ -2391,6 +2393,7 @@ static int rtl8139_cplus_transmit_one(RTL8139State *s)
- }
- }
-
-+skip_offload:
- /* update tally counter */
- ++s->tally_counters.TxOk;
-
---
-2.1.4
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-2.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-2.patch
deleted file mode 100644
index 7a76a8a40d..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-2.patch
+++ /dev/null
@@ -1,373 +0,0 @@
-From 2d7d80e8dc160904fa7276cc05da26c062a50066 Mon Sep 17 00:00:00 2001
-From: Stefan Hajnoczi <stefanha@redhat.com>
-Date: Wed, 15 Jul 2015 18:16:59 +0100
-Subject: [PATCH 2/7] rtl8139: drop tautologous if (ip) {...} statement
-
-The previous patch stopped using the ip pointer as an indicator that the
-IP header is present. When we reach the if (ip) {...} statement we know
-ip is always non-NULL.
-
-Remove the if statement to reduce nesting.
-
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
----
- hw/net/rtl8139.c | 305 +++++++++++++++++++++++++++----------------------------
- 1 file changed, 151 insertions(+), 154 deletions(-)
-
-diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
-index 91ba33b..2f12d42 100644
---- a/hw/net/rtl8139.c
-+++ b/hw/net/rtl8139.c
-@@ -2198,198 +2198,195 @@ static int rtl8139_cplus_transmit_one(RTL8139State *s)
- ip_protocol = ip->ip_p;
- ip_data_len = be16_to_cpu(ip->ip_len) - hlen;
-
-- if (ip)
-+ if (txdw0 & CP_TX_IPCS)
- {
-- if (txdw0 & CP_TX_IPCS)
-- {
-- DPRINTF("+++ C+ mode need IP checksum\n");
-+ DPRINTF("+++ C+ mode need IP checksum\n");
-
-- if (hlen<sizeof(ip_header) || hlen>eth_payload_len) {/* min header length */
-- /* bad packet header len */
-- /* or packet too short */
-- }
-- else
-- {
-- ip->ip_sum = 0;
-- ip->ip_sum = ip_checksum(ip, hlen);
-- DPRINTF("+++ C+ mode IP header len=%d checksum=%04x\n",
-- hlen, ip->ip_sum);
-- }
-+ if (hlen<sizeof(ip_header) || hlen>eth_payload_len) {/* min header length */
-+ /* bad packet header len */
-+ /* or packet too short */
- }
--
-- if ((txdw0 & CP_TX_LGSEN) && ip_protocol == IP_PROTO_TCP)
-+ else
- {
-- int large_send_mss = (txdw0 >> 16) & CP_TC_LGSEN_MSS_MASK;
-+ ip->ip_sum = 0;
-+ ip->ip_sum = ip_checksum(ip, hlen);
-+ DPRINTF("+++ C+ mode IP header len=%d checksum=%04x\n",
-+ hlen, ip->ip_sum);
-+ }
-+ }
-
-- DPRINTF("+++ C+ mode offloaded task TSO MTU=%d IP data %d "
-- "frame data %d specified MSS=%d\n", ETH_MTU,
-- ip_data_len, saved_size - ETH_HLEN, large_send_mss);
-+ if ((txdw0 & CP_TX_LGSEN) && ip_protocol == IP_PROTO_TCP)
-+ {
-+ int large_send_mss = (txdw0 >> 16) & CP_TC_LGSEN_MSS_MASK;
-
-- int tcp_send_offset = 0;
-- int send_count = 0;
-+ DPRINTF("+++ C+ mode offloaded task TSO MTU=%d IP data %d "
-+ "frame data %d specified MSS=%d\n", ETH_MTU,
-+ ip_data_len, saved_size - ETH_HLEN, large_send_mss);
-
-- /* maximum IP header length is 60 bytes */
-- uint8_t saved_ip_header[60];
-+ int tcp_send_offset = 0;
-+ int send_count = 0;
-
-- /* save IP header template; data area is used in tcp checksum calculation */
-- memcpy(saved_ip_header, eth_payload_data, hlen);
-+ /* maximum IP header length is 60 bytes */
-+ uint8_t saved_ip_header[60];
-
-- /* a placeholder for checksum calculation routine in tcp case */
-- uint8_t *data_to_checksum = eth_payload_data + hlen - 12;
-- // size_t data_to_checksum_len = eth_payload_len - hlen + 12;
-+ /* save IP header template; data area is used in tcp checksum calculation */
-+ memcpy(saved_ip_header, eth_payload_data, hlen);
-
-- /* pointer to TCP header */
-- tcp_header *p_tcp_hdr = (tcp_header*)(eth_payload_data + hlen);
-+ /* a placeholder for checksum calculation routine in tcp case */
-+ uint8_t *data_to_checksum = eth_payload_data + hlen - 12;
-+ // size_t data_to_checksum_len = eth_payload_len - hlen + 12;
-
-- int tcp_hlen = TCP_HEADER_DATA_OFFSET(p_tcp_hdr);
-+ /* pointer to TCP header */
-+ tcp_header *p_tcp_hdr = (tcp_header*)(eth_payload_data + hlen);
-
-- /* ETH_MTU = ip header len + tcp header len + payload */
-- int tcp_data_len = ip_data_len - tcp_hlen;
-- int tcp_chunk_size = ETH_MTU - hlen - tcp_hlen;
-+ int tcp_hlen = TCP_HEADER_DATA_OFFSET(p_tcp_hdr);
-
-- DPRINTF("+++ C+ mode TSO IP data len %d TCP hlen %d TCP "
-- "data len %d TCP chunk size %d\n", ip_data_len,
-- tcp_hlen, tcp_data_len, tcp_chunk_size);
-+ /* ETH_MTU = ip header len + tcp header len + payload */
-+ int tcp_data_len = ip_data_len - tcp_hlen;
-+ int tcp_chunk_size = ETH_MTU - hlen - tcp_hlen;
-
-- /* note the cycle below overwrites IP header data,
-- but restores it from saved_ip_header before sending packet */
-+ DPRINTF("+++ C+ mode TSO IP data len %d TCP hlen %d TCP "
-+ "data len %d TCP chunk size %d\n", ip_data_len,
-+ tcp_hlen, tcp_data_len, tcp_chunk_size);
-
-- int is_last_frame = 0;
-+ /* note the cycle below overwrites IP header data,
-+ but restores it from saved_ip_header before sending packet */
-
-- for (tcp_send_offset = 0; tcp_send_offset < tcp_data_len; tcp_send_offset += tcp_chunk_size)
-- {
-- uint16_t chunk_size = tcp_chunk_size;
--
-- /* check if this is the last frame */
-- if (tcp_send_offset + tcp_chunk_size >= tcp_data_len)
-- {
-- is_last_frame = 1;
-- chunk_size = tcp_data_len - tcp_send_offset;
-- }
--
-- DPRINTF("+++ C+ mode TSO TCP seqno %08x\n",
-- be32_to_cpu(p_tcp_hdr->th_seq));
--
-- /* add 4 TCP pseudoheader fields */
-- /* copy IP source and destination fields */
-- memcpy(data_to_checksum, saved_ip_header + 12, 8);
--
-- DPRINTF("+++ C+ mode TSO calculating TCP checksum for "
-- "packet with %d bytes data\n", tcp_hlen +
-- chunk_size);
--
-- if (tcp_send_offset)
-- {
-- memcpy((uint8_t*)p_tcp_hdr + tcp_hlen, (uint8_t*)p_tcp_hdr + tcp_hlen + tcp_send_offset, chunk_size);
-- }
--
-- /* keep PUSH and FIN flags only for the last frame */
-- if (!is_last_frame)
-- {
-- TCP_HEADER_CLEAR_FLAGS(p_tcp_hdr, TCP_FLAG_PUSH|TCP_FLAG_FIN);
-- }
--
-- /* recalculate TCP checksum */
-- ip_pseudo_header *p_tcpip_hdr = (ip_pseudo_header *)data_to_checksum;
-- p_tcpip_hdr->zeros = 0;
-- p_tcpip_hdr->ip_proto = IP_PROTO_TCP;
-- p_tcpip_hdr->ip_payload = cpu_to_be16(tcp_hlen + chunk_size);
--
-- p_tcp_hdr->th_sum = 0;
--
-- int tcp_checksum = ip_checksum(data_to_checksum, tcp_hlen + chunk_size + 12);
-- DPRINTF("+++ C+ mode TSO TCP checksum %04x\n",
-- tcp_checksum);
--
-- p_tcp_hdr->th_sum = tcp_checksum;
--
-- /* restore IP header */
-- memcpy(eth_payload_data, saved_ip_header, hlen);
--
-- /* set IP data length and recalculate IP checksum */
-- ip->ip_len = cpu_to_be16(hlen + tcp_hlen + chunk_size);
--
-- /* increment IP id for subsequent frames */
-- ip->ip_id = cpu_to_be16(tcp_send_offset/tcp_chunk_size + be16_to_cpu(ip->ip_id));
--
-- ip->ip_sum = 0;
-- ip->ip_sum = ip_checksum(eth_payload_data, hlen);
-- DPRINTF("+++ C+ mode TSO IP header len=%d "
-- "checksum=%04x\n", hlen, ip->ip_sum);
--
-- int tso_send_size = ETH_HLEN + hlen + tcp_hlen + chunk_size;
-- DPRINTF("+++ C+ mode TSO transferring packet size "
-- "%d\n", tso_send_size);
-- rtl8139_transfer_frame(s, saved_buffer, tso_send_size,
-- 0, (uint8_t *) dot1q_buffer);
--
-- /* add transferred count to TCP sequence number */
-- p_tcp_hdr->th_seq = cpu_to_be32(chunk_size + be32_to_cpu(p_tcp_hdr->th_seq));
-- ++send_count;
-- }
-+ int is_last_frame = 0;
-
-- /* Stop sending this frame */
-- saved_size = 0;
-- }
-- else if (txdw0 & (CP_TX_TCPCS|CP_TX_UDPCS))
-+ for (tcp_send_offset = 0; tcp_send_offset < tcp_data_len; tcp_send_offset += tcp_chunk_size)
- {
-- DPRINTF("+++ C+ mode need TCP or UDP checksum\n");
-+ uint16_t chunk_size = tcp_chunk_size;
-
-- /* maximum IP header length is 60 bytes */
-- uint8_t saved_ip_header[60];
-- memcpy(saved_ip_header, eth_payload_data, hlen);
-+ /* check if this is the last frame */
-+ if (tcp_send_offset + tcp_chunk_size >= tcp_data_len)
-+ {
-+ is_last_frame = 1;
-+ chunk_size = tcp_data_len - tcp_send_offset;
-+ }
-
-- uint8_t *data_to_checksum = eth_payload_data + hlen - 12;
-- // size_t data_to_checksum_len = eth_payload_len - hlen + 12;
-+ DPRINTF("+++ C+ mode TSO TCP seqno %08x\n",
-+ be32_to_cpu(p_tcp_hdr->th_seq));
-
- /* add 4 TCP pseudoheader fields */
- /* copy IP source and destination fields */
- memcpy(data_to_checksum, saved_ip_header + 12, 8);
-
-- if ((txdw0 & CP_TX_TCPCS) && ip_protocol == IP_PROTO_TCP)
-+ DPRINTF("+++ C+ mode TSO calculating TCP checksum for "
-+ "packet with %d bytes data\n", tcp_hlen +
-+ chunk_size);
-+
-+ if (tcp_send_offset)
- {
-- DPRINTF("+++ C+ mode calculating TCP checksum for "
-- "packet with %d bytes data\n", ip_data_len);
-+ memcpy((uint8_t*)p_tcp_hdr + tcp_hlen, (uint8_t*)p_tcp_hdr + tcp_hlen + tcp_send_offset, chunk_size);
-+ }
-
-- ip_pseudo_header *p_tcpip_hdr = (ip_pseudo_header *)data_to_checksum;
-- p_tcpip_hdr->zeros = 0;
-- p_tcpip_hdr->ip_proto = IP_PROTO_TCP;
-- p_tcpip_hdr->ip_payload = cpu_to_be16(ip_data_len);
-+ /* keep PUSH and FIN flags only for the last frame */
-+ if (!is_last_frame)
-+ {
-+ TCP_HEADER_CLEAR_FLAGS(p_tcp_hdr, TCP_FLAG_PUSH|TCP_FLAG_FIN);
-+ }
-
-- tcp_header* p_tcp_hdr = (tcp_header *) (data_to_checksum+12);
-+ /* recalculate TCP checksum */
-+ ip_pseudo_header *p_tcpip_hdr = (ip_pseudo_header *)data_to_checksum;
-+ p_tcpip_hdr->zeros = 0;
-+ p_tcpip_hdr->ip_proto = IP_PROTO_TCP;
-+ p_tcpip_hdr->ip_payload = cpu_to_be16(tcp_hlen + chunk_size);
-
-- p_tcp_hdr->th_sum = 0;
-+ p_tcp_hdr->th_sum = 0;
-
-- int tcp_checksum = ip_checksum(data_to_checksum, ip_data_len + 12);
-- DPRINTF("+++ C+ mode TCP checksum %04x\n",
-- tcp_checksum);
-+ int tcp_checksum = ip_checksum(data_to_checksum, tcp_hlen + chunk_size + 12);
-+ DPRINTF("+++ C+ mode TSO TCP checksum %04x\n",
-+ tcp_checksum);
-
-- p_tcp_hdr->th_sum = tcp_checksum;
-- }
-- else if ((txdw0 & CP_TX_UDPCS) && ip_protocol == IP_PROTO_UDP)
-- {
-- DPRINTF("+++ C+ mode calculating UDP checksum for "
-- "packet with %d bytes data\n", ip_data_len);
-+ p_tcp_hdr->th_sum = tcp_checksum;
-
-- ip_pseudo_header *p_udpip_hdr = (ip_pseudo_header *)data_to_checksum;
-- p_udpip_hdr->zeros = 0;
-- p_udpip_hdr->ip_proto = IP_PROTO_UDP;
-- p_udpip_hdr->ip_payload = cpu_to_be16(ip_data_len);
-+ /* restore IP header */
-+ memcpy(eth_payload_data, saved_ip_header, hlen);
-
-- udp_header *p_udp_hdr = (udp_header *) (data_to_checksum+12);
-+ /* set IP data length and recalculate IP checksum */
-+ ip->ip_len = cpu_to_be16(hlen + tcp_hlen + chunk_size);
-
-- p_udp_hdr->uh_sum = 0;
-+ /* increment IP id for subsequent frames */
-+ ip->ip_id = cpu_to_be16(tcp_send_offset/tcp_chunk_size + be16_to_cpu(ip->ip_id));
-
-- int udp_checksum = ip_checksum(data_to_checksum, ip_data_len + 12);
-- DPRINTF("+++ C+ mode UDP checksum %04x\n",
-- udp_checksum);
-+ ip->ip_sum = 0;
-+ ip->ip_sum = ip_checksum(eth_payload_data, hlen);
-+ DPRINTF("+++ C+ mode TSO IP header len=%d "
-+ "checksum=%04x\n", hlen, ip->ip_sum);
-
-- p_udp_hdr->uh_sum = udp_checksum;
-- }
-+ int tso_send_size = ETH_HLEN + hlen + tcp_hlen + chunk_size;
-+ DPRINTF("+++ C+ mode TSO transferring packet size "
-+ "%d\n", tso_send_size);
-+ rtl8139_transfer_frame(s, saved_buffer, tso_send_size,
-+ 0, (uint8_t *) dot1q_buffer);
-
-- /* restore IP header */
-- memcpy(eth_payload_data, saved_ip_header, hlen);
-+ /* add transferred count to TCP sequence number */
-+ p_tcp_hdr->th_seq = cpu_to_be32(chunk_size + be32_to_cpu(p_tcp_hdr->th_seq));
-+ ++send_count;
- }
-+
-+ /* Stop sending this frame */
-+ saved_size = 0;
-+ }
-+ else if (txdw0 & (CP_TX_TCPCS|CP_TX_UDPCS))
-+ {
-+ DPRINTF("+++ C+ mode need TCP or UDP checksum\n");
-+
-+ /* maximum IP header length is 60 bytes */
-+ uint8_t saved_ip_header[60];
-+ memcpy(saved_ip_header, eth_payload_data, hlen);
-+
-+ uint8_t *data_to_checksum = eth_payload_data + hlen - 12;
-+ // size_t data_to_checksum_len = eth_payload_len - hlen + 12;
-+
-+ /* add 4 TCP pseudoheader fields */
-+ /* copy IP source and destination fields */
-+ memcpy(data_to_checksum, saved_ip_header + 12, 8);
-+
-+ if ((txdw0 & CP_TX_TCPCS) && ip_protocol == IP_PROTO_TCP)
-+ {
-+ DPRINTF("+++ C+ mode calculating TCP checksum for "
-+ "packet with %d bytes data\n", ip_data_len);
-+
-+ ip_pseudo_header *p_tcpip_hdr = (ip_pseudo_header *)data_to_checksum;
-+ p_tcpip_hdr->zeros = 0;
-+ p_tcpip_hdr->ip_proto = IP_PROTO_TCP;
-+ p_tcpip_hdr->ip_payload = cpu_to_be16(ip_data_len);
-+
-+ tcp_header* p_tcp_hdr = (tcp_header *) (data_to_checksum+12);
-+
-+ p_tcp_hdr->th_sum = 0;
-+
-+ int tcp_checksum = ip_checksum(data_to_checksum, ip_data_len + 12);
-+ DPRINTF("+++ C+ mode TCP checksum %04x\n",
-+ tcp_checksum);
-+
-+ p_tcp_hdr->th_sum = tcp_checksum;
-+ }
-+ else if ((txdw0 & CP_TX_UDPCS) && ip_protocol == IP_PROTO_UDP)
-+ {
-+ DPRINTF("+++ C+ mode calculating UDP checksum for "
-+ "packet with %d bytes data\n", ip_data_len);
-+
-+ ip_pseudo_header *p_udpip_hdr = (ip_pseudo_header *)data_to_checksum;
-+ p_udpip_hdr->zeros = 0;
-+ p_udpip_hdr->ip_proto = IP_PROTO_UDP;
-+ p_udpip_hdr->ip_payload = cpu_to_be16(ip_data_len);
-+
-+ udp_header *p_udp_hdr = (udp_header *) (data_to_checksum+12);
-+
-+ p_udp_hdr->uh_sum = 0;
-+
-+ int udp_checksum = ip_checksum(data_to_checksum, ip_data_len + 12);
-+ DPRINTF("+++ C+ mode UDP checksum %04x\n",
-+ udp_checksum);
-+
-+ p_udp_hdr->uh_sum = udp_checksum;
-+ }
-+
-+ /* restore IP header */
-+ memcpy(eth_payload_data, saved_ip_header, hlen);
- }
- }
-
---
-2.1.4
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-3.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-3.patch
deleted file mode 100644
index 5676f46532..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-3.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 043d28507ef7c5fdc34866f5e3b27a72bd0cd072 Mon Sep 17 00:00:00 2001
-From: Stefan Hajnoczi <stefanha@redhat.com>
-Date: Wed, 15 Jul 2015 18:17:00 +0100
-Subject: [PATCH 3/7] rtl8139: skip offload on short Ethernet/IP header
-
-Transmit offload features access Ethernet and IP headers the packet. If
-the packet is too short we must not attempt to access header fields:
-
- int proto = be16_to_cpu(*(uint16_t *)(saved_buffer + 12));
- ...
- eth_payload_data = saved_buffer + ETH_HLEN;
- ...
- ip = (ip_header*)eth_payload_data;
- if (IP_HEADER_VERSION(ip) != IP_HEADER_VERSION_4) {
-
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
----
- hw/net/rtl8139.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
-index 2f12d42..d377b6b 100644
---- a/hw/net/rtl8139.c
-+++ b/hw/net/rtl8139.c
-@@ -2164,6 +2164,11 @@ static int rtl8139_cplus_transmit_one(RTL8139State *s)
- {
- DPRINTF("+++ C+ mode offloaded task checksum\n");
-
-+ /* Large enough for Ethernet and IP headers? */
-+ if (saved_size < ETH_HLEN + sizeof(ip_header)) {
-+ goto skip_offload;
-+ }
-+
- /* ip packet header */
- ip_header *ip = NULL;
- int hlen = 0;
---
-2.1.4
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-4.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-4.patch
deleted file mode 100644
index 495d8d616b..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-4.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 5a75d242fe019d05b46ef9bc330a6892525c84a7 Mon Sep 17 00:00:00 2001
-From: Stefan Hajnoczi <stefanha@redhat.com>
-Date: Wed, 15 Jul 2015 18:17:01 +0100
-Subject: [PATCH 4/7] rtl8139: check IP Header Length field
-
-The IP Header Length field was only checked in the IP checksum case, but
-is used in other cases too.
-
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
----
- hw/net/rtl8139.c | 19 ++++++++-----------
- 1 file changed, 8 insertions(+), 11 deletions(-)
-
-diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
-index d377b6b..cd5ac05 100644
---- a/hw/net/rtl8139.c
-+++ b/hw/net/rtl8139.c
-@@ -2200,6 +2200,10 @@ static int rtl8139_cplus_transmit_one(RTL8139State *s)
- }
-
- hlen = IP_HEADER_LENGTH(ip);
-+ if (hlen < sizeof(ip_header) || hlen > eth_payload_len) {
-+ goto skip_offload;
-+ }
-+
- ip_protocol = ip->ip_p;
- ip_data_len = be16_to_cpu(ip->ip_len) - hlen;
-
-@@ -2207,17 +2211,10 @@ static int rtl8139_cplus_transmit_one(RTL8139State *s)
- {
- DPRINTF("+++ C+ mode need IP checksum\n");
-
-- if (hlen<sizeof(ip_header) || hlen>eth_payload_len) {/* min header length */
-- /* bad packet header len */
-- /* or packet too short */
-- }
-- else
-- {
-- ip->ip_sum = 0;
-- ip->ip_sum = ip_checksum(ip, hlen);
-- DPRINTF("+++ C+ mode IP header len=%d checksum=%04x\n",
-- hlen, ip->ip_sum);
-- }
-+ ip->ip_sum = 0;
-+ ip->ip_sum = ip_checksum(ip, hlen);
-+ DPRINTF("+++ C+ mode IP header len=%d checksum=%04x\n",
-+ hlen, ip->ip_sum);
- }
-
- if ((txdw0 & CP_TX_LGSEN) && ip_protocol == IP_PROTO_TCP)
---
-2.1.4
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-5.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-5.patch
deleted file mode 100644
index e633ea6b2e..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-5.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 6c79ea275d72bc1fd88bdcf1e7d231b2c9c865de Mon Sep 17 00:00:00 2001
-From: Stefan Hajnoczi <stefanha@redhat.com>
-Date: Wed, 15 Jul 2015 18:17:02 +0100
-Subject: [PATCH 5/7] rtl8139: check IP Total Length field
-
-The IP Total Length field includes the IP header and data. Make sure it
-is valid and does not exceed the Ethernet payload size.
-
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
----
- hw/net/rtl8139.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
-index cd5ac05..ed2b23b 100644
---- a/hw/net/rtl8139.c
-+++ b/hw/net/rtl8139.c
-@@ -2205,7 +2205,12 @@ static int rtl8139_cplus_transmit_one(RTL8139State *s)
- }
-
- ip_protocol = ip->ip_p;
-- ip_data_len = be16_to_cpu(ip->ip_len) - hlen;
-+
-+ ip_data_len = be16_to_cpu(ip->ip_len);
-+ if (ip_data_len < hlen || ip_data_len > eth_payload_len) {
-+ goto skip_offload;
-+ }
-+ ip_data_len -= hlen;
-
- if (txdw0 & CP_TX_IPCS)
- {
---
-2.1.4
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-6.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-6.patch
deleted file mode 100644
index dd716a6d6d..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-6.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 30aa7be430e7c982e9163f3bcc745d3aa57b6aa4 Mon Sep 17 00:00:00 2001
-From: Stefan Hajnoczi <stefanha@redhat.com>
-Date: Wed, 15 Jul 2015 18:17:03 +0100
-Subject: [PATCH 6/7] rtl8139: skip offload on short TCP header
-
-TCP Large Segment Offload accesses the TCP header in the packet. If the
-packet is too short we must not attempt to access header fields:
-
- tcp_header *p_tcp_hdr = (tcp_header*)(eth_payload_data + hlen);
- int tcp_hlen = TCP_HEADER_DATA_OFFSET(p_tcp_hdr);
-
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
----
- hw/net/rtl8139.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
-index ed2b23b..c8f0df9 100644
---- a/hw/net/rtl8139.c
-+++ b/hw/net/rtl8139.c
-@@ -2224,6 +2224,11 @@ static int rtl8139_cplus_transmit_one(RTL8139State *s)
-
- if ((txdw0 & CP_TX_LGSEN) && ip_protocol == IP_PROTO_TCP)
- {
-+ /* Large enough for the TCP header? */
-+ if (ip_data_len < sizeof(tcp_header)) {
-+ goto skip_offload;
-+ }
-+
- int large_send_mss = (txdw0 >> 16) & CP_TC_LGSEN_MSS_MASK;
-
- DPRINTF("+++ C+ mode offloaded task TSO MTU=%d IP data %d "
---
-2.1.4
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-7.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-7.patch
deleted file mode 100644
index 4c0ad79935..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5165-7.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 9a084807bf6ca7c16d997a236d304111894a6539 Mon Sep 17 00:00:00 2001
-From: Stefan Hajnoczi <stefanha@redhat.com>
-Date: Wed, 15 Jul 2015 18:17:04 +0100
-Subject: [PATCH 7/7] rtl8139: check TCP Data Offset field
-
-The TCP Data Offset field contains the length of the header. Make sure
-it is valid and does not exceed the IP data length.
-
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
----
- hw/net/rtl8139.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
-index c8f0df9..2df4a51 100644
---- a/hw/net/rtl8139.c
-+++ b/hw/net/rtl8139.c
-@@ -2253,6 +2253,11 @@ static int rtl8139_cplus_transmit_one(RTL8139State *s)
-
- int tcp_hlen = TCP_HEADER_DATA_OFFSET(p_tcp_hdr);
-
-+ /* Invalid TCP data offset? */
-+ if (tcp_hlen < sizeof(tcp_header) || tcp_hlen > ip_data_len) {
-+ goto skip_offload;
-+ }
-+
- /* ETH_MTU = ip header len + tcp header len + payload */
- int tcp_data_len = ip_data_len - tcp_hlen;
- int tcp_chunk_size = ETH_MTU - hlen - tcp_hlen;
---
-2.1.4
-
diff --git a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5166.patch b/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5166.patch
deleted file mode 100644
index fc41d7b6a9..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-CVE-2015-5166.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
-
-Fix release_drive on unplugged devices (pci_piix3_xen_ide_unplug)
-
-pci_piix3_xen_ide_unplug should completely unhook the unplugged
-IDEDevice from the corresponding BlockBackend, otherwise the next call
-to release_drive will try to detach the drive again.
-
-Suggested-by: Kevin Wolf <kwolf@redhat.com>
-Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
-
-diff --git a/hw/ide/piix.c b/hw/ide/piix.c
-index adb6649..5a26c86 100644
---- a/hw/ide/piix.c
-+++ b/hw/ide/piix.c
-@@ -169,6 +169,7 @@ int pci_piix3_xen_ide_unplug(DeviceState *dev)
- PCIIDEState *pci_ide;
- DriveInfo *di;
- int i;
-+ IDEDevice *idedev;
-
- pci_ide = PCI_IDE(dev);
-
-@@ -181,6 +182,12 @@ int pci_piix3_xen_ide_unplug(DeviceState *dev)
- blk_detach_dev(blk, ds);
- }
- pci_ide->bus[di->bus].ifs[di->unit].blk = NULL;
-+ if (!(i % 2)) {
-+ idedev = pci_ide->bus[di->bus].master;
-+ } else {
-+ idedev = pci_ide->bus[di->bus].slave;
-+ }
-+ idedev->conf.blk = NULL;
- blk_unref(blk);
- }
- }
diff --git a/app-emulation/qemu/files/qemu-2.3.0-virtio-serial.patch b/app-emulation/qemu/files/qemu-2.3.0-virtio-serial.patch
deleted file mode 100644
index d84797f4e5..0000000000
--- a/app-emulation/qemu/files/qemu-2.3.0-virtio-serial.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-https://bugs.gentoo.org/557206
-
-From 7882080388be5088e72c425b02223c02e6cb4295 Mon Sep 17 00:00:00 2001
-From: "Michael S. Tsirkin" <mst@redhat.com>
-Date: Thu, 23 Jul 2015 17:52:02 +0300
-Subject: [PATCH] virtio-serial: fix ANY_LAYOUT
-
-Don't assume a specific layout for control messages.
-Required by virtio 1.
-
-Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
-Reviewed-by: Amit Shah <amit.shah@redhat.com>
-Reviewed-by: Jason Wang <jasowang@redhat.com>
----
- hw/char/virtio-serial-bus.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/hw/char/virtio-serial-bus.c b/hw/char/virtio-serial-bus.c
-index 78c73e5..929e49c 100644
---- a/hw/char/virtio-serial-bus.c
-+++ b/hw/char/virtio-serial-bus.c
-@@ -195,7 +195,8 @@ static size_t send_control_msg(VirtIOSerial *vser, void *buf, size_t len)
- return 0;
- }
-
-- memcpy(elem.in_sg[0].iov_base, buf, len);
-+ /* TODO: detect a buffer that's too short, set NEEDS_RESET */
-+ iov_from_buf(elem.in_sg, elem.in_num, 0, buf, len);
-
- virtqueue_push(vq, &elem, len);
- virtio_notify(VIRTIO_DEVICE(vser), vq);
---
-2.4.4
-
diff --git a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-5225.patch b/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-5225.patch
deleted file mode 100644
index de7090d01a..0000000000
--- a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-5225.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-https://bugs.gentoo.org/558416
-
-fix from upstream git
-
-From eb8934b0418b3b1d125edddc4fc334a54334a49b Mon Sep 17 00:00:00 2001
-From: Gerd Hoffmann <kraxel@redhat.com>
-Date: Mon, 17 Aug 2015 19:56:53 +0200
-Subject: [PATCH] vnc: fix memory corruption (CVE-2015-5225)
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The _cmp_bytes variable added by commit "bea60dd ui/vnc: fix potential
-memory corruption issues" can become negative. Result is (possibly
-exploitable) memory corruption. Reason for that is it uses the stride
-instead of bytes per scanline to apply limits.
-
-For the server surface is is actually fine. vnc creates that itself,
-there is never any padding and thus scanline length always equals stride.
-
-For the guest surface scanline length and stride are typically identical
-too, but it doesn't has to be that way. So add and use a new variable
-(guest_ll) for the guest scanline length. Also rename min_stride to
-line_bytes to make more clear what it actually is. Finally sprinkle
-in an assert() to make sure we never use a negative _cmp_bytes again.
-
-Reported-by: 范祚至(库特) <zuozhi.fzz@alibaba-inc.com>
-Reviewed-by: P J P <ppandit@redhat.com>
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
----
- ui/vnc.c | 15 ++++++++++-----
- 1 file changed, 10 insertions(+), 5 deletions(-)
-
-diff --git a/ui/vnc.c b/ui/vnc.c
-index e26973a..caf82f5 100644
---- a/ui/vnc.c
-+++ b/ui/vnc.c
-@@ -2872,7 +2872,7 @@ static int vnc_refresh_server_surface(VncDisplay *vd)
- pixman_image_get_width(vd->server));
- int height = MIN(pixman_image_get_height(vd->guest.fb),
- pixman_image_get_height(vd->server));
-- int cmp_bytes, server_stride, min_stride, guest_stride, y = 0;
-+ int cmp_bytes, server_stride, line_bytes, guest_ll, guest_stride, y = 0;
- uint8_t *guest_row0 = NULL, *server_row0;
- VncState *vs;
- int has_dirty = 0;
-@@ -2891,17 +2891,21 @@ static int vnc_refresh_server_surface(VncDisplay *vd)
- * Update server dirty map.
- */
- server_row0 = (uint8_t *)pixman_image_get_data(vd->server);
-- server_stride = guest_stride = pixman_image_get_stride(vd->server);
-+ server_stride = guest_stride = guest_ll =
-+ pixman_image_get_stride(vd->server);
- cmp_bytes = MIN(VNC_DIRTY_PIXELS_PER_BIT * VNC_SERVER_FB_BYTES,
- server_stride);
- if (vd->guest.format != VNC_SERVER_FB_FORMAT) {
- int width = pixman_image_get_width(vd->server);
- tmpbuf = qemu_pixman_linebuf_create(VNC_SERVER_FB_FORMAT, width);
- } else {
-+ int guest_bpp =
-+ PIXMAN_FORMAT_BPP(pixman_image_get_format(vd->guest.fb));
- guest_row0 = (uint8_t *)pixman_image_get_data(vd->guest.fb);
- guest_stride = pixman_image_get_stride(vd->guest.fb);
-+ guest_ll = pixman_image_get_width(vd->guest.fb) * ((guest_bpp + 7) / 8);
- }
-- min_stride = MIN(server_stride, guest_stride);
-+ line_bytes = MIN(server_stride, guest_ll);
-
- for (;;) {
- int x;
-@@ -2932,9 +2936,10 @@ static int vnc_refresh_server_surface(VncDisplay *vd)
- if (!test_and_clear_bit(x, vd->guest.dirty[y])) {
- continue;
- }
-- if ((x + 1) * cmp_bytes > min_stride) {
-- _cmp_bytes = min_stride - x * cmp_bytes;
-+ if ((x + 1) * cmp_bytes > line_bytes) {
-+ _cmp_bytes = line_bytes - x * cmp_bytes;
- }
-+ assert(_cmp_bytes >= 0);
- if (memcmp(server_ptr, guest_ptr, _cmp_bytes) == 0) {
- continue;
- }
---
-2.5.0
-
diff --git a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-6855.patch b/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-6855.patch
deleted file mode 100644
index 69dd66a1c8..0000000000
--- a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-6855.patch
+++ /dev/null
@@ -1,146 +0,0 @@
-https://bugs.gentoo.org/560422
-
-From d9033e1d3aa666c5071580617a57bd853c5d794a Mon Sep 17 00:00:00 2001
-From: John Snow <jsnow@redhat.com>
-Date: Thu, 17 Sep 2015 14:17:05 -0400
-Subject: [PATCH] ide: fix ATAPI command permissions
-
-We're a little too lenient with what we'll let an ATAPI drive handle.
-Clamp down on the IDE command execution table to remove CD_OK permissions
-from commands that are not and have never been ATAPI commands.
-
-For ATAPI command validity, please see:
-- ATA4 Section 6.5 ("PACKET Command feature set")
-- ATA8/ACS Section 4.3 ("The PACKET feature set")
-- ACS3 Section 4.3 ("The PACKET feature set")
-
-ACS3 has a historical command validity table in Table B.4
-("Historical Command Assignments") that can be referenced to find when
-a command was introduced, deprecated, obsoleted, etc.
-
-The only reference for ATAPI command validity is by checking that
-version's PACKET feature set section.
-
-ATAPI was introduced by T13 into ATA4, all commands retired prior to ATA4
-therefore are assumed to have never been ATAPI commands.
-
-Mandatory commands, as listed in ATA8-ACS3, are:
-
-- DEVICE RESET
-- EXECUTE DEVICE DIAGNOSTIC
-- IDENTIFY DEVICE
-- IDENTIFY PACKET DEVICE
-- NOP
-- PACKET
-- READ SECTOR(S)
-- SET FEATURES
-
-Optional commands as listed in ATA8-ACS3, are:
-
-- FLUSH CACHE
-- READ LOG DMA EXT
-- READ LOG EXT
-- WRITE LOG DMA EXT
-- WRITE LOG EXT
-
-All other commands are illegal to send to an ATAPI device and should
-be rejected by the device.
-
-CD_OK removal justifications:
-
-0x06 WIN_DSM Defined in ACS2. Not valid for ATAPI.
-0x21 WIN_READ_ONCE Retired in ATA5. Not ATAPI in ATA4.
-0x94 WIN_STANDBYNOW2 Retired in ATA4. Did not coexist with ATAPI.
-0x95 WIN_IDLEIMMEDIATE2 Retired in ATA4. Did not coexist with ATAPI.
-0x96 WIN_STANDBY2 Retired in ATA4. Did not coexist with ATAPI.
-0x97 WIN_SETIDLE2 Retired in ATA4. Did not coexist with ATAPI.
-0x98 WIN_CHECKPOWERMODE2 Retired in ATA4. Did not coexist with ATAPI.
-0x99 WIN_SLEEPNOW2 Retired in ATA4. Did not coexist with ATAPI.
-0xE0 WIN_STANDBYNOW1 Not part of ATAPI in ATA4, ACS or ACS3.
-0xE1 WIN_IDLEIMMDIATE Not part of ATAPI in ATA4, ACS or ACS3.
-0xE2 WIN_STANDBY Not part of ATAPI in ATA4, ACS or ACS3.
-0xE3 WIN_SETIDLE1 Not part of ATAPI in ATA4, ACS or ACS3.
-0xE4 WIN_CHECKPOWERMODE1 Not part of ATAPI in ATA4, ACS or ACS3.
-0xE5 WIN_SLEEPNOW1 Not part of ATAPI in ATA4, ACS or ACS3.
-0xF8 WIN_READ_NATIVE_MAX Obsoleted in ACS3. Not ATAPI in ATA4 or ACS.
-
-This patch fixes a divide by zero fault that can be caused by sending
-the WIN_READ_NATIVE_MAX command to an ATAPI drive, which causes it to
-attempt to use zeroed CHS values to perform sector arithmetic.
-
-Reported-by: Qinghao Tang <luodalongde@gmail.com>
-Signed-off-by: John Snow <jsnow@redhat.com>
-Reviewed-by: Markus Armbruster <armbru@redhat.com>
-Message-id: 1441816082-21031-1-git-send-email-jsnow@redhat.com
-CC: qemu-stable@nongnu.org
----
- hw/ide/core.c | 30 +++++++++++++++---------------
- 1 file changed, 15 insertions(+), 15 deletions(-)
-
-diff --git a/hw/ide/core.c b/hw/ide/core.c
-index 8ba04df..1cc6945 100644
---- a/hw/ide/core.c
-+++ b/hw/ide/core.c
-@@ -1746,11 +1746,11 @@ static const struct {
- } ide_cmd_table[0x100] = {
- /* NOP not implemented, mandatory for CD */
- [CFA_REQ_EXT_ERROR_CODE] = { cmd_cfa_req_ext_error_code, CFA_OK },
-- [WIN_DSM] = { cmd_data_set_management, ALL_OK },
-+ [WIN_DSM] = { cmd_data_set_management, HD_CFA_OK },
- [WIN_DEVICE_RESET] = { cmd_device_reset, CD_OK },
- [WIN_RECAL] = { cmd_nop, HD_CFA_OK | SET_DSC},
- [WIN_READ] = { cmd_read_pio, ALL_OK },
-- [WIN_READ_ONCE] = { cmd_read_pio, ALL_OK },
-+ [WIN_READ_ONCE] = { cmd_read_pio, HD_CFA_OK },
- [WIN_READ_EXT] = { cmd_read_pio, HD_CFA_OK },
- [WIN_READDMA_EXT] = { cmd_read_dma, HD_CFA_OK },
- [WIN_READ_NATIVE_MAX_EXT] = { cmd_read_native_max, HD_CFA_OK | SET_DSC },
-@@ -1769,12 +1769,12 @@ static const struct {
- [CFA_TRANSLATE_SECTOR] = { cmd_cfa_translate_sector, CFA_OK },
- [WIN_DIAGNOSE] = { cmd_exec_dev_diagnostic, ALL_OK },
- [WIN_SPECIFY] = { cmd_nop, HD_CFA_OK | SET_DSC },
-- [WIN_STANDBYNOW2] = { cmd_nop, ALL_OK },
-- [WIN_IDLEIMMEDIATE2] = { cmd_nop, ALL_OK },
-- [WIN_STANDBY2] = { cmd_nop, ALL_OK },
-- [WIN_SETIDLE2] = { cmd_nop, ALL_OK },
-- [WIN_CHECKPOWERMODE2] = { cmd_check_power_mode, ALL_OK | SET_DSC },
-- [WIN_SLEEPNOW2] = { cmd_nop, ALL_OK },
-+ [WIN_STANDBYNOW2] = { cmd_nop, HD_CFA_OK },
-+ [WIN_IDLEIMMEDIATE2] = { cmd_nop, HD_CFA_OK },
-+ [WIN_STANDBY2] = { cmd_nop, HD_CFA_OK },
-+ [WIN_SETIDLE2] = { cmd_nop, HD_CFA_OK },
-+ [WIN_CHECKPOWERMODE2] = { cmd_check_power_mode, HD_CFA_OK | SET_DSC },
-+ [WIN_SLEEPNOW2] = { cmd_nop, HD_CFA_OK },
- [WIN_PACKETCMD] = { cmd_packet, CD_OK },
- [WIN_PIDENTIFY] = { cmd_identify_packet, CD_OK },
- [WIN_SMART] = { cmd_smart, HD_CFA_OK | SET_DSC },
-@@ -1788,19 +1788,19 @@ static const struct {
- [WIN_WRITEDMA] = { cmd_write_dma, HD_CFA_OK },
- [WIN_WRITEDMA_ONCE] = { cmd_write_dma, HD_CFA_OK },
- [CFA_WRITE_MULTI_WO_ERASE] = { cmd_write_multiple, CFA_OK },
-- [WIN_STANDBYNOW1] = { cmd_nop, ALL_OK },
-- [WIN_IDLEIMMEDIATE] = { cmd_nop, ALL_OK },
-- [WIN_STANDBY] = { cmd_nop, ALL_OK },
-- [WIN_SETIDLE1] = { cmd_nop, ALL_OK },
-- [WIN_CHECKPOWERMODE1] = { cmd_check_power_mode, ALL_OK | SET_DSC },
-- [WIN_SLEEPNOW1] = { cmd_nop, ALL_OK },
-+ [WIN_STANDBYNOW1] = { cmd_nop, HD_CFA_OK },
-+ [WIN_IDLEIMMEDIATE] = { cmd_nop, HD_CFA_OK },
-+ [WIN_STANDBY] = { cmd_nop, HD_CFA_OK },
-+ [WIN_SETIDLE1] = { cmd_nop, HD_CFA_OK },
-+ [WIN_CHECKPOWERMODE1] = { cmd_check_power_mode, HD_CFA_OK | SET_DSC },
-+ [WIN_SLEEPNOW1] = { cmd_nop, HD_CFA_OK },
- [WIN_FLUSH_CACHE] = { cmd_flush_cache, ALL_OK },
- [WIN_FLUSH_CACHE_EXT] = { cmd_flush_cache, HD_CFA_OK },
- [WIN_IDENTIFY] = { cmd_identify, ALL_OK },
- [WIN_SETFEATURES] = { cmd_set_features, ALL_OK | SET_DSC },
- [IBM_SENSE_CONDITION] = { cmd_ibm_sense_condition, CFA_OK | SET_DSC },
- [CFA_WEAR_LEVEL] = { cmd_cfa_erase_sectors, HD_CFA_OK | SET_DSC },
-- [WIN_READ_NATIVE_MAX] = { cmd_read_native_max, ALL_OK | SET_DSC },
-+ [WIN_READ_NATIVE_MAX] = { cmd_read_native_max, HD_CFA_OK | SET_DSC },
- };
-
- static bool ide_cmd_permitted(IDEState *s, uint32_t cmd)
---
-2.6.0.rc2.230.g3dd15c0
-
diff --git a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-1.patch b/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-1.patch
deleted file mode 100644
index 4ee46e1d10..0000000000
--- a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-1.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-https://bugs.gentoo.org/560760
-
-From ce317461573bac12b10d67699b4ddf1f97cf066c Mon Sep 17 00:00:00 2001
-From: Jason Wang <jasowang@redhat.com>
-Date: Fri, 25 Sep 2015 13:21:28 +0800
-Subject: [PATCH 1/3] virtio: introduce virtqueue_unmap_sg()
-
-Factor out sg unmapping logic. This will be reused by the patch that
-can discard descriptor.
-
-Cc: Michael S. Tsirkin <mst@redhat.com>
-Cc: Andrew James <andrew.james@hpe.com>
-Signed-off-by: Jason Wang <jasowang@redhat.com>
-Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
-Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
----
- hw/virtio/virtio.c | 14 ++++++++++----
- 1 file changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
-index 7504f8b..6f2b96c 100644
---- a/hw/virtio/virtio.c
-+++ b/hw/virtio/virtio.c
-@@ -244,14 +244,12 @@ int virtio_queue_empty(VirtQueue *vq)
- return vring_avail_idx(vq) == vq->last_avail_idx;
- }
-
--void virtqueue_fill(VirtQueue *vq, const VirtQueueElement *elem,
-- unsigned int len, unsigned int idx)
-+static void virtqueue_unmap_sg(VirtQueue *vq, const VirtQueueElement *elem,
-+ unsigned int len)
- {
- unsigned int offset;
- int i;
-
-- trace_virtqueue_fill(vq, elem, len, idx);
--
- offset = 0;
- for (i = 0; i < elem->in_num; i++) {
- size_t size = MIN(len - offset, elem->in_sg[i].iov_len);
-@@ -267,6 +265,14 @@ void virtqueue_fill(VirtQueue *vq, const VirtQueueElement *elem,
- cpu_physical_memory_unmap(elem->out_sg[i].iov_base,
- elem->out_sg[i].iov_len,
- 0, elem->out_sg[i].iov_len);
-+}
-+
-+void virtqueue_fill(VirtQueue *vq, const VirtQueueElement *elem,
-+ unsigned int len, unsigned int idx)
-+{
-+ trace_virtqueue_fill(vq, elem, len, idx);
-+
-+ virtqueue_unmap_sg(vq, elem, len);
-
- idx = (idx + vring_used_idx(vq)) % vq->vring.num;
-
---
-2.6.0.rc2.230.g3dd15c0
-
diff --git a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-2.patch b/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-2.patch
deleted file mode 100644
index 8c73fcb7e1..0000000000
--- a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-2.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-https://bugs.gentoo.org/560760
-
-From 29b9f5efd78ae0f9cc02dd169b6e80d2c404bade Mon Sep 17 00:00:00 2001
-From: Jason Wang <jasowang@redhat.com>
-Date: Fri, 25 Sep 2015 13:21:29 +0800
-Subject: [PATCH 2/3] virtio: introduce virtqueue_discard()
-
-This patch introduces virtqueue_discard() to discard a descriptor and
-unmap the sgs. This will be used by the patch that will discard
-descriptor when packet is truncated.
-
-Cc: Michael S. Tsirkin <mst@redhat.com>
-Signed-off-by: Jason Wang <jasowang@redhat.com>
-Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
-Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
----
- hw/virtio/virtio.c | 7 +++++++
- include/hw/virtio/virtio.h | 2 ++
- 2 files changed, 9 insertions(+)
-
-diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
-index 6f2b96c..d0bc72e 100644
---- a/hw/virtio/virtio.c
-+++ b/hw/virtio/virtio.c
-@@ -267,6 +267,13 @@ static void virtqueue_unmap_sg(VirtQueue *vq, const VirtQueueElement *elem,
- 0, elem->out_sg[i].iov_len);
- }
-
-+void virtqueue_discard(VirtQueue *vq, const VirtQueueElement *elem,
-+ unsigned int len)
-+{
-+ vq->last_avail_idx--;
-+ virtqueue_unmap_sg(vq, elem, len);
-+}
-+
- void virtqueue_fill(VirtQueue *vq, const VirtQueueElement *elem,
- unsigned int len, unsigned int idx)
- {
-diff --git a/include/hw/virtio/virtio.h b/include/hw/virtio/virtio.h
-index 6201ee8..9d09115 100644
---- a/include/hw/virtio/virtio.h
-+++ b/include/hw/virtio/virtio.h
-@@ -146,6 +146,8 @@ void virtio_del_queue(VirtIODevice *vdev, int n);
- void virtqueue_push(VirtQueue *vq, const VirtQueueElement *elem,
- unsigned int len);
- void virtqueue_flush(VirtQueue *vq, unsigned int count);
-+void virtqueue_discard(VirtQueue *vq, const VirtQueueElement *elem,
-+ unsigned int len);
- void virtqueue_fill(VirtQueue *vq, const VirtQueueElement *elem,
- unsigned int len, unsigned int idx);
-
---
-2.6.0.rc2.230.g3dd15c0
-
diff --git a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-3.patch b/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-3.patch
deleted file mode 100644
index 96981e973c..0000000000
--- a/app-emulation/qemu/files/qemu-2.4.0-CVE-2015-7295-3.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-https://bugs.gentoo.org/560760
-
-From 0cf33fb6b49a19de32859e2cdc6021334f448fb3 Mon Sep 17 00:00:00 2001
-From: Jason Wang <jasowang@redhat.com>
-Date: Fri, 25 Sep 2015 13:21:30 +0800
-Subject: [PATCH 3/3] virtio-net: correctly drop truncated packets
-
-When packet is truncated during receiving, we drop the packets but
-neither discard the descriptor nor add and signal used
-descriptor. This will lead several issues:
-
-- sg mappings are leaked
-- rx will be stalled if a lots of packets were truncated
-
-In order to be consistent with vhost, fix by discarding the descriptor
-in this case.
-
-Cc: Michael S. Tsirkin <mst@redhat.com>
-Signed-off-by: Jason Wang <jasowang@redhat.com>
-Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
-Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
----
- hw/net/virtio-net.c | 8 +-------
- 1 file changed, 1 insertion(+), 7 deletions(-)
-
-diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
-index d388c55..a877614 100644
---- a/hw/net/virtio-net.c
-+++ b/hw/net/virtio-net.c
-@@ -1094,13 +1094,7 @@ static ssize_t virtio_net_receive(NetClientState *nc, const uint8_t *buf, size_t
- * must have consumed the complete packet.
- * Otherwise, drop it. */
- if (!n->mergeable_rx_bufs && offset < size) {
--#if 0
-- error_report("virtio-net truncated non-mergeable packet: "
-- "i %zd mergeable %d offset %zd, size %zd, "
-- "guest hdr len %zd, host hdr len %zd",
-- i, n->mergeable_rx_bufs,
-- offset, size, n->guest_hdr_len, n->host_hdr_len);
--#endif
-+ virtqueue_discard(q->rx_vq, &elem, total);
- return size;
- }
-
---
-2.6.0.rc2.230.g3dd15c0
-
diff --git a/app-emulation/qemu/files/qemu-2.4.0-block-mirror-crash.patch b/app-emulation/qemu/files/qemu-2.4.0-block-mirror-crash.patch
deleted file mode 100644
index ad4051e22c..0000000000
--- a/app-emulation/qemu/files/qemu-2.4.0-block-mirror-crash.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-https://bugs.gentoo.org/558396
-
-fix from upstream git
-
-From e424aff5f307227b1c2512bbb8ece891bb895cef Mon Sep 17 00:00:00 2001
-From: Kevin Wolf <kwolf@redhat.com>
-Date: Thu, 13 Aug 2015 10:41:50 +0200
-Subject: [PATCH] mirror: Fix coroutine reentrance
-
-This fixes a regression introduced by commit dcfb3beb ("mirror: Do zero
-write on target if sectors not allocated"), which was reported to cause
-aborts with the message "Co-routine re-entered recursively".
-
-The cause for this bug is the following code in mirror_iteration_done():
-
- if (s->common.busy) {
- qemu_coroutine_enter(s->common.co, NULL);
- }
-
-This has always been ugly because - unlike most places that reenter - it
-doesn't have a specific yield that it pairs with, but is more
-uncontrolled. What we really mean here is "reenter the coroutine if
-it's in one of the four explicit yields in mirror.c".
-
-This used to be equivalent with s->common.busy because neither
-mirror_run() nor mirror_iteration() call any function that could yield.
-However since commit dcfb3beb this doesn't hold true any more:
-bdrv_get_block_status_above() can yield.
-
-So what happens is that bdrv_get_block_status_above() wants to take a
-lock that is already held, so it adds itself to the queue of waiting
-coroutines and yields. Instead of being woken up by the unlock function,
-however, it gets woken up by mirror_iteration_done(), which is obviously
-wrong.
-
-In most cases the code actually happens to cope fairly well with such
-cases, but in this specific case, the unlock must already have scheduled
-the coroutine for wakeup when mirror_iteration_done() reentered it. And
-then the coroutine happened to process the scheduled restarts and tried
-to reenter itself recursively.
-
-This patch fixes the problem by pairing the reenter in
-mirror_iteration_done() with specific yields instead of abusing
-s->common.busy.
-
-Cc: qemu-stable@nongnu.org
-Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
-Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
-Reviewed-by: Jeff Cody <jcody@redhat.com>
-Message-id: 1439455310-11263-1-git-send-email-kwolf@redhat.com
-Signed-off-by: Jeff Cody <jcody@redhat.com>
----
- block/mirror.c | 15 ++++++++++-----
- 1 file changed, 10 insertions(+), 5 deletions(-)
-
-diff --git a/block/mirror.c b/block/mirror.c
-index 0841964..9474443 100644
---- a/block/mirror.c
-+++ b/block/mirror.c
-@@ -60,6 +60,7 @@ typedef struct MirrorBlockJob {
- int sectors_in_flight;
- int ret;
- bool unmap;
-+ bool waiting_for_io;
- } MirrorBlockJob;
-
- typedef struct MirrorOp {
-@@ -114,11 +115,7 @@ static void mirror_iteration_done(MirrorOp *op, int ret)
- qemu_iovec_destroy(&op->qiov);
- g_slice_free(MirrorOp, op);
-
-- /* Enter coroutine when it is not sleeping. The coroutine sleeps to
-- * rate-limit itself. The coroutine will eventually resume since there is
-- * a sleep timeout so don't wake it early.
-- */
-- if (s->common.busy) {
-+ if (s->waiting_for_io) {
- qemu_coroutine_enter(s->common.co, NULL);
- }
- }
-@@ -203,7 +200,9 @@ static uint64_t coroutine_fn mirror_iteration(MirrorBlockJob *s)
- /* Wait for I/O to this cluster (from a previous iteration) to be done. */
- while (test_bit(next_chunk, s->in_flight_bitmap)) {
- trace_mirror_yield_in_flight(s, sector_num, s->in_flight);
-+ s->waiting_for_io = true;
- qemu_coroutine_yield();
-+ s->waiting_for_io = false;
- }
-
- do {
-@@ -239,7 +238,9 @@ static uint64_t coroutine_fn mirror_iteration(MirrorBlockJob *s)
- */
- while (nb_chunks == 0 && s->buf_free_count < added_chunks) {
- trace_mirror_yield_buf_busy(s, nb_chunks, s->in_flight);
-+ s->waiting_for_io = true;
- qemu_coroutine_yield();
-+ s->waiting_for_io = false;
- }
- if (s->buf_free_count < nb_chunks + added_chunks) {
- trace_mirror_break_buf_busy(s, nb_chunks, s->in_flight);
-@@ -337,7 +338,9 @@ static void mirror_free_init(MirrorBlockJob *s)
- static void mirror_drain(MirrorBlockJob *s)
- {
- while (s->in_flight > 0) {
-+ s->waiting_for_io = true;
- qemu_coroutine_yield();
-+ s->waiting_for_io = false;
- }
- }
-
-@@ -510,7 +513,9 @@ static void coroutine_fn mirror_run(void *opaque)
- if (s->in_flight == MAX_IN_FLIGHT || s->buf_free_count == 0 ||
- (cnt == 0 && s->in_flight > 0)) {
- trace_mirror_yield(s, s->in_flight, s->buf_free_count, cnt);
-+ s->waiting_for_io = true;
- qemu_coroutine_yield();
-+ s->waiting_for_io = false;
- continue;
- } else if (cnt != 0) {
- delay_ns = mirror_iteration(s);
---
-2.5.0
-
diff --git a/app-emulation/qemu/files/qemu-2.4.0-e1000-loop.patch b/app-emulation/qemu/files/qemu-2.4.0-e1000-loop.patch
deleted file mode 100644
index f2538a723d..0000000000
--- a/app-emulation/qemu/files/qemu-2.4.0-e1000-loop.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-https://bugs.gentoo.org/559656
-
-https://lists.gnu.org/archive/html/qemu-devel/2015-09/msg01199.html
-
-From: Stefan Hajnoczi <stefanha@redhat.com>
-Subject: [PATCH] e1000: Avoid infinite loop in processing transmit descriptor
-Newsgroups: gmane.comp.emulators.qemu
-Date: 2015-09-04 16:21:06 GMT (2 days, 12 hours and 51 minutes ago)
-From: P J P <pjp@fedoraproject.org>
-
-While processing transmit descriptors, it could lead to an infinite
-loop if 'bytes' was to become zero; Add a check to avoid it.
-
-[The guest can force 'bytes' to 0 by setting the hdr_len and mss
-descriptor fields to 0.
---Stefan]
-
-Signed-off-by: P J P <pjp@fedoraproject.org>
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
----
- hw/net/e1000.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/hw/net/e1000.c b/hw/net/e1000.c
-index 5c6bcd0..09c9e9d 100644
---- a/hw/net/e1000.c
-+++ b/hw/net/e1000.c
-@@ -740,7 +740,8 @@ process_tx_desc(E1000State *s, struct e1000_tx_desc *dp)
- memmove(tp->data, tp->header, tp->hdr_len);
- tp->size = tp->hdr_len;
- }
-- } while (split_size -= bytes);
-+ split_size -= bytes;
-+ } while (bytes && split_size);
- } else if (!tp->tse && tp->cptse) {
- // context descriptor TSE is not set, while data descriptor TSE is set
- DBGOUT(TXERR, "TCP segmentation error\n");
---
-2.4.3
diff --git a/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7504.patch b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7504.patch
new file mode 100644
index 0000000000..e86e0c6398
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7504.patch
@@ -0,0 +1,49 @@
+From 837f21aacf5a714c23ddaadbbc5212f9b661e3f7 Mon Sep 17 00:00:00 2001
+From: Prasad J Pandit <pjp@fedoraproject.org>
+Date: Fri, 20 Nov 2015 11:50:31 +0530
+Subject: [PATCH] net: pcnet: add check to validate receive data
+ size(CVE-2015-7504)
+
+In loopback mode, pcnet_receive routine appends CRC code to the
+receive buffer. If the data size given is same as the buffer size,
+the appended CRC code overwrites 4 bytes after s->buffer. Added a
+check to avoid that.
+
+Reported by: Qinghao Tang <luodalongde@gmail.com>
+Cc: qemu-stable@nongnu.org
+Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
+Signed-off-by: Jason Wang <jasowang@redhat.com>
+---
+ hw/net/pcnet.c | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/hw/net/pcnet.c b/hw/net/pcnet.c
+index 0eb3cc4..309c40b 100644
+--- a/hw/net/pcnet.c
++++ b/hw/net/pcnet.c
+@@ -1084,7 +1084,7 @@ ssize_t pcnet_receive(NetClientState *nc, const uint8_t *buf, size_t size_)
+ uint32_t fcs = ~0;
+ uint8_t *p = src;
+
+- while (p != &src[size-4])
++ while (p != &src[size])
+ CRC(fcs, *p++);
+ crc_err = (*(uint32_t *)p != htonl(fcs));
+ }
+@@ -1233,8 +1233,10 @@ static void pcnet_transmit(PCNetState *s)
+ bcnt = 4096 - GET_FIELD(tmd.length, TMDL, BCNT);
+
+ /* if multi-tmd packet outsizes s->buffer then skip it silently.
+- Note: this is not what real hw does */
+- if (s->xmit_pos + bcnt > sizeof(s->buffer)) {
++ * Note: this is not what real hw does.
++ * Last four bytes of s->buffer are used to store CRC FCS code.
++ */
++ if (s->xmit_pos + bcnt > sizeof(s->buffer) - 4) {
+ s->xmit_pos = -1;
+ goto txdone;
+ }
+--
+2.6.2
+
diff --git a/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7512.patch b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7512.patch
new file mode 100644
index 0000000000..4fee9ef5da
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7512.patch
@@ -0,0 +1,37 @@
+From 8b98a2f07175d46c3f7217639bd5e03f2ec56343 Mon Sep 17 00:00:00 2001
+From: Jason Wang <jasowang@redhat.com>
+Date: Mon, 30 Nov 2015 15:00:06 +0800
+Subject: [PATCH] pcnet: fix rx buffer overflow(CVE-2015-7512)
+
+Backends could provide a packet whose length is greater than buffer
+size. Check for this and truncate the packet to avoid rx buffer
+overflow in this case.
+
+Cc: Prasad J Pandit <pjp@fedoraproject.org>
+Cc: qemu-stable@nongnu.org
+Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Jason Wang <jasowang@redhat.com>
+---
+ hw/net/pcnet.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/hw/net/pcnet.c b/hw/net/pcnet.c
+index 309c40b..1f4a3db 100644
+--- a/hw/net/pcnet.c
++++ b/hw/net/pcnet.c
+@@ -1064,6 +1064,12 @@ ssize_t pcnet_receive(NetClientState *nc, const uint8_t *buf, size_t size_)
+ int pktcount = 0;
+
+ if (!s->looptest) {
++ if (size > 4092) {
++#ifdef PCNET_DEBUG_RMD
++ fprintf(stderr, "pcnet: truncates rx packet.\n");
++#endif
++ size = 4092;
++ }
+ memcpy(src, buf, size);
+ /* no need to compute the CRC */
+ src[size] = 0;
+--
+2.6.2
+
diff --git a/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7549.patch b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7549.patch
new file mode 100644
index 0000000000..897fe347c8
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-7549.patch
@@ -0,0 +1,62 @@
+https://bugs.gentoo.org/568214
+
+From 43b11a91dd861a946b231b89b7542856ade23d1b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
+Date: Fri, 26 Jun 2015 14:25:29 +0200
+Subject: [PATCH] msix: implement pba write (but read-only)
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+qpci_msix_pending() writes on pba region, causing qemu to SEGV:
+
+ Program received signal SIGSEGV, Segmentation fault.
+ [Switching to Thread 0x7ffff7fba8c0 (LWP 25882)]
+ 0x0000000000000000 in ?? ()
+ (gdb) bt
+ #0 0x0000000000000000 in ()
+ #1 0x00005555556556c5 in memory_region_oldmmio_write_accessor (mr=0x5555579f3f80, addr=0, value=0x7fffffffbf68, size=4, shift=0, mask=4294967295, attrs=...) at /home/elmarco/src/qemu/memory.c:434
+ #2 0x00005555556558e1 in access_with_adjusted_size (addr=0, value=0x7fffffffbf68, size=4, access_size_min=1, access_size_max=4, access=0x55555565563e <memory_region_oldmmio_write_accessor>, mr=0x5555579f3f80, attrs=...) at /home/elmarco/src/qemu/memory.c:506
+ #3 0x00005555556581eb in memory_region_dispatch_write (mr=0x5555579f3f80, addr=0, data=0, size=4, attrs=...) at /home/elmarco/src/qemu/memory.c:1176
+ #4 0x000055555560b6f9 in address_space_rw (as=0x555555eff4e0 <address_space_memory>, addr=3759147008, attrs=..., buf=0x7fffffffc1b0 "", len=4, is_write=true) at /home/elmarco/src/qemu/exec.c:2439
+ #5 0x000055555560baa2 in cpu_physical_memory_rw (addr=3759147008, buf=0x7fffffffc1b0 "", len=4, is_write=1) at /home/elmarco/src/qemu/exec.c:2534
+ #6 0x000055555564c005 in cpu_physical_memory_write (addr=3759147008, buf=0x7fffffffc1b0, len=4) at /home/elmarco/src/qemu/include/exec/cpu-common.h:80
+ #7 0x000055555564cd9c in qtest_process_command (chr=0x55555642b890, words=0x5555578de4b0) at /home/elmarco/src/qemu/qtest.c:378
+ #8 0x000055555564db77 in qtest_process_inbuf (chr=0x55555642b890, inbuf=0x55555641b340) at /home/elmarco/src/qemu/qtest.c:569
+ #9 0x000055555564dc07 in qtest_read (opaque=0x55555642b890, buf=0x7fffffffc2e0 "writel 0xe0100800 0x0\n", size=22) at /home/elmarco/src/qemu/qtest.c:581
+ #10 0x000055555574ce3e in qemu_chr_be_write (s=0x55555642b890, buf=0x7fffffffc2e0 "writel 0xe0100800 0x0\n", len=22) at qemu-char.c:306
+ #11 0x0000555555751263 in tcp_chr_read (chan=0x55555642bcf0, cond=G_IO_IN, opaque=0x55555642b890) at qemu-char.c:2876
+ #12 0x00007ffff64c9a8a in g_main_context_dispatch (context=0x55555641c400) at gmain.c:3122
+
+(without this patch, this can be reproduced with the ivshmem qtest)
+
+Implement an empty mmio write to avoid the crash.
+
+Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
+Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
+---
+ hw/pci/msix.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/hw/pci/msix.c b/hw/pci/msix.c
+index 2fdada4..64c93d8 100644
+--- a/hw/pci/msix.c
++++ b/hw/pci/msix.c
+@@ -200,8 +200,14 @@ static uint64_t msix_pba_mmio_read(void *opaque, hwaddr addr,
+ return pci_get_long(dev->msix_pba + addr);
+ }
+
++static void msix_pba_mmio_write(void *opaque, hwaddr addr,
++ uint64_t val, unsigned size)
++{
++}
++
+ static const MemoryRegionOps msix_pba_mmio_ops = {
+ .read = msix_pba_mmio_read,
++ .write = msix_pba_mmio_write,
+ .endianness = DEVICE_LITTLE_ENDIAN,
+ .valid = {
+ .min_access_size = 4,
+--
+2.6.2
+
diff --git a/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-8345.patch b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-8345.patch
new file mode 100644
index 0000000000..f01d9ac341
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-8345.patch
@@ -0,0 +1,65 @@
+https://bugs.gentoo.org/566792
+
+From 00837731d254908a841d69298a4f9f077babaf24 Mon Sep 17 00:00:00 2001
+From: Stefan Weil <sw@weilnetz.de>
+Date: Fri, 20 Nov 2015 08:42:33 +0100
+Subject: [PATCH] eepro100: Prevent two endless loops
+
+http://lists.nongnu.org/archive/html/qemu-devel/2015-11/msg04592.html
+shows an example how an endless loop in function action_command can
+be achieved.
+
+During my code review, I noticed a 2nd case which can result in an
+endless loop.
+
+Reported-by: Qinghao Tang <luodalongde@gmail.com>
+Signed-off-by: Stefan Weil <sw@weilnetz.de>
+Signed-off-by: Jason Wang <jasowang@redhat.com>
+---
+ hw/net/eepro100.c | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/hw/net/eepro100.c b/hw/net/eepro100.c
+index 60333b7..685a478 100644
+--- a/hw/net/eepro100.c
++++ b/hw/net/eepro100.c
+@@ -774,6 +774,11 @@ static void tx_command(EEPRO100State *s)
+ #if 0
+ uint16_t tx_buffer_el = lduw_le_pci_dma(&s->dev, tbd_address + 6);
+ #endif
++ if (tx_buffer_size == 0) {
++ /* Prevent an endless loop. */
++ logout("loop in %s:%u\n", __FILE__, __LINE__);
++ break;
++ }
+ tbd_address += 8;
+ TRACE(RXTX, logout
+ ("TBD (simplified mode): buffer address 0x%08x, size 0x%04x\n",
+@@ -855,6 +860,10 @@ static void set_multicast_list(EEPRO100State *s)
+
+ static void action_command(EEPRO100State *s)
+ {
++ /* The loop below won't stop if it gets special handcrafted data.
++ Therefore we limit the number of iterations. */
++ unsigned max_loop_count = 16;
++
+ for (;;) {
+ bool bit_el;
+ bool bit_s;
+@@ -870,6 +879,13 @@ static void action_command(EEPRO100State *s)
+ #if 0
+ bool bit_sf = ((s->tx.command & COMMAND_SF) != 0);
+ #endif
++
++ if (max_loop_count-- == 0) {
++ /* Prevent an endless loop. */
++ logout("loop in %s:%u\n", __FILE__, __LINE__);
++ break;
++ }
++
+ s->cu_offset = s->tx.link;
+ TRACE(OTHER,
+ logout("val=(cu start), status=0x%04x, command=0x%04x, link=0x%08x\n",
+--
+2.6.2
+
diff --git a/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-8504.patch b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-8504.patch
new file mode 100644
index 0000000000..7b0102a3bc
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.4.1-CVE-2015-8504.patch
@@ -0,0 +1,46 @@
+https://bugs.gentoo.org/567828
+
+From 4c65fed8bdf96780735dbdb92a8bd0d6b6526cc3 Mon Sep 17 00:00:00 2001
+From: Prasad J Pandit <pjp@fedoraproject.org>
+Date: Thu, 3 Dec 2015 18:54:17 +0530
+Subject: [PATCH] ui: vnc: avoid floating point exception
+
+While sending 'SetPixelFormat' messages to a VNC server,
+the client could set the 'red-max', 'green-max' and 'blue-max'
+values to be zero. This leads to a floating point exception in
+write_png_palette while doing frame buffer updates.
+
+Reported-by: Lian Yihan <lianyihan@360.cn>
+Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
+Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
+Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
+---
+ ui/vnc.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/ui/vnc.c b/ui/vnc.c
+index 7538405..cbe4d33 100644
+--- a/ui/vnc.c
++++ b/ui/vnc.c
+@@ -2198,15 +2198,15 @@ static void set_pixel_format(VncState *vs,
+ return;
+ }
+
+- vs->client_pf.rmax = red_max;
++ vs->client_pf.rmax = red_max ? red_max : 0xFF;
+ vs->client_pf.rbits = hweight_long(red_max);
+ vs->client_pf.rshift = red_shift;
+ vs->client_pf.rmask = red_max << red_shift;
+- vs->client_pf.gmax = green_max;
++ vs->client_pf.gmax = green_max ? green_max : 0xFF;
+ vs->client_pf.gbits = hweight_long(green_max);
+ vs->client_pf.gshift = green_shift;
+ vs->client_pf.gmask = green_max << green_shift;
+- vs->client_pf.bmax = blue_max;
++ vs->client_pf.bmax = blue_max ? blue_max : 0xFF;
+ vs->client_pf.bbits = hweight_long(blue_max);
+ vs->client_pf.bshift = blue_shift;
+ vs->client_pf.bmask = blue_max << blue_shift;
+--
+2.6.2
+
diff --git a/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8558.patch b/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8558.patch
new file mode 100644
index 0000000000..fbc6a0add3
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8558.patch
@@ -0,0 +1,50 @@
+https://bugs.gentoo.org/568246
+
+From 156a2e4dbffa85997636a7a39ef12da6f1b40254 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel@redhat.com>
+Date: Mon, 14 Dec 2015 09:21:23 +0100
+Subject: [PATCH] ehci: make idt processing more robust
+
+Make ehci_process_itd return an error in case we didn't do any actual
+iso transfer because we've found no active transaction. That'll avoid
+ehci happily run in circles forever if the guest builds a loop out of
+idts.
+
+This is CVE-2015-8558.
+
+Cc: qemu-stable@nongnu.org
+Reported-by: Qinghao Tang <luodalongde@gmail.com>
+Tested-by: P J P <ppandit@redhat.com>
+Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
+---
+ hw/usb/hcd-ehci.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/hw/usb/hcd-ehci.c b/hw/usb/hcd-ehci.c
+index 4e2161b..d07f228 100644
+--- a/hw/usb/hcd-ehci.c
++++ b/hw/usb/hcd-ehci.c
+@@ -1389,7 +1389,7 @@ static int ehci_process_itd(EHCIState *ehci,
+ {
+ USBDevice *dev;
+ USBEndpoint *ep;
+- uint32_t i, len, pid, dir, devaddr, endp;
++ uint32_t i, len, pid, dir, devaddr, endp, xfers = 0;
+ uint32_t pg, off, ptr1, ptr2, max, mult;
+
+ ehci->periodic_sched_active = PERIODIC_ACTIVE;
+@@ -1479,9 +1479,10 @@ static int ehci_process_itd(EHCIState *ehci,
+ ehci_raise_irq(ehci, USBSTS_INT);
+ }
+ itd->transact[i] &= ~ITD_XACT_ACTIVE;
++ xfers++;
+ }
+ }
+- return 0;
++ return xfers ? 0 : -1;
+ }
+
+
+--
+2.6.2
+
diff --git a/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8567.patch b/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8567.patch
new file mode 100644
index 0000000000..e1960436a2
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8567.patch
@@ -0,0 +1,95 @@
+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
+
diff --git a/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8701.patch b/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8701.patch
new file mode 100644
index 0000000000..0dab1c3eef
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8701.patch
@@ -0,0 +1,49 @@
+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
+
diff --git a/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8743.patch b/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8743.patch
new file mode 100644
index 0000000000..b2bca56927
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.5.0-CVE-2015-8743.patch
@@ -0,0 +1,50 @@
+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
+
diff --git a/app-emulation/qemu/files/qemu-2.5.0-CVE-2016-1568.patch b/app-emulation/qemu/files/qemu-2.5.0-CVE-2016-1568.patch
new file mode 100644
index 0000000000..4ce9a35c3f
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.5.0-CVE-2016-1568.patch
@@ -0,0 +1,41 @@
+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
+
diff --git a/app-emulation/qemu/files/qemu-2.5.0-cflags.patch b/app-emulation/qemu/files/qemu-2.5.0-cflags.patch
new file mode 100644
index 0000000000..173394fd02
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-2.5.0-cflags.patch
@@ -0,0 +1,13 @@
+--- a/configure
++++ b/configure
+@@ -4468,10 +4468,6 @@ fi
+ if test "$gcov" = "yes" ; then
+ CFLAGS="-fprofile-arcs -ftest-coverage -g $CFLAGS"
+ LDFLAGS="-fprofile-arcs -ftest-coverage $LDFLAGS"
+-elif test "$fortify_source" = "yes" ; then
+- CFLAGS="-O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 $CFLAGS"
+-elif test "$debug" = "no"; then
+- CFLAGS="-O2 $CFLAGS"
+ fi
+
+ ##########################################
diff --git a/app-emulation/qemu/metadata.xml b/app-emulation/qemu/metadata.xml
index 4a344007d8..e093bf85a9 100644
--- a/app-emulation/qemu/metadata.xml
+++ b/app-emulation/qemu/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>qemu</herd>
+ <maintainer type="project">
+ <email>qemu@gentoo.org</email>
+ <name>Gentoo QEMU Project</name>
+ </maintainer>
<use>
<flag name="accessibility">Adds support for braille displays using brltty</flag>
<flag name="aio">Enables support for Linux's Async IO</flag>
@@ -42,6 +45,7 @@
<flag name="uuid">Enable UUID support in the vdi block driver</flag>
<flag name="vde">Enable VDE-based networking</flag>
<flag name="vhost-net">Enable accelerated networking using vhost-net, see http://www.linux-kvm.org/page/VhostNet</flag>
+ <flag name="virgl">Enable experimental Virgil 3d (virtual software GPU)</flag>
<flag name="virtfs">Enable VirtFS via virtio-9p-pci / fsdev. See http://wiki.qemu.org/Documentation/9psetup</flag>
<flag name="vte">Enable terminal support (<pkg>x11-libs/vte</pkg>) in the GTK+ interface</flag>
<flag name="xattr">Add support for getting and setting POSIX extended attributes, through
diff --git a/app-emulation/qemu/qemu-2.3.0-r5.ebuild b/app-emulation/qemu/qemu-2.3.0-r5.ebuild
deleted file mode 100644
index 05e5b6ccd1..0000000000
--- a/app-emulation/qemu/qemu-2.3.0-r5.ebuild
+++ /dev/null
@@ -1,615 +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 )
-PYTHON_REQ_USE="ncurses,readline"
-
-inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
- user udev fcaps readme.gentoo pax-utils
-
-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 ~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 \
-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 selinux smartcard snappy spice ssh static static-softmmu \
-static-user systemtap tci test +threads tls usb usbredir +uuid vde +vhost-net \
-virtfs +vnc 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 xtensa xtensaeb"
-IUSE_USER_TARGETS="${COMMON_TARGETS} armeb mipsn32 mipsn32el ppc64abi32 sparc32plus"
-
-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}"
-
-# Require at least one softmmu or user target.
-# Block USE flag configurations known to not work.
-REQUIRED_USE="|| ( ${use_softmmu_targets} ${use_user_targets} )
- ${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 )
- static? ( static-softmmu static-user )
- static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl !gtk !gtk2 )
- virtfs? ( xattr )"
-
-# 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.
-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(+)]
- aio? ( dev-libs/libaio[static-libs(+)] )
- 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(+)] )
- infiniband? ( sys-infiniband/librdmacm:=[static-libs(+)] )
- jpeg? ( virtual/jpeg:=[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(+)] )
- png? ( media-libs/libpng:0=[static-libs(+)] )
- rbd? ( sys-cluster/ceph[static-libs(+)] )
- sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
- sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] )
- seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
- snappy? ( app-arch/snappy[static-libs(+)] )
- spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] )
- ssh? ( >=net-libs/libssh2-1.2.8[static-libs(+)] )
- tls? ( net-libs/gnutls[static-libs(+)] )
- usb? ( >=virtual/libusb-1-r1[static-libs(+)] )
- uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
- vde? ( net-misc/vde[static-libs(+)] )
- 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.7.5
- ~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} )
- accessibility? ( app-accessibility/brltty )
- alsa? ( >=media-libs/alsa-lib-1.0.13 )
- bluetooth? ( net-wireless/bluez )
- gtk? (
- gtk2? ( x11-libs/gtk+:2 )
- !gtk2? ( x11-libs/gtk+:3 )
- x11-libs/vte:2.90
- )
- iscsi? ( net-libs/libiscsi )
- opengl? ( virtual/opengl )
- pulseaudio? ( media-sound/pulseaudio )
- python? ( ${PYTHON_DEPS} )
- sdl? ( media-libs/libsdl[X] )
- smartcard? ( dev-libs/nss !app-emulation/libcacard )
- spice? ( >=app-emulation/spice-protocol-0.12.3 )
- systemtap? ( dev-util/systemtap )
- usbredir? ( >=sys-apps/usbredir-0.6 )
- virtfs? ( sys-libs/libcap )
- 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
-}
-
-src_prepare() {
- # 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
-
- # Cheap hack to disable gettext .mo generation.
- use nls || rm -f po/*.po
-
- epatch "${FILESDIR}"/qemu-1.7.0-cflags.patch
- epatch "${FILESDIR}"/${P}-CVE-2015-3456.patch #549404
- epatch "${FILESDIR}"/${P}-CVE-2015-3209.patch #551752
- epatch "${FILESDIR}"/${P}-CVE-2015-5158.patch #555680
- epatch "${FILESDIR}"/${P}-CVE-2015-3214.patch #556052
- epatch "${FILESDIR}"/${P}-CVE-2015-5154-1.patch #556050 / #555532
- epatch "${FILESDIR}"/${P}-CVE-2015-5154-2.patch #556050 / #555532
- epatch "${FILESDIR}"/${P}-CVE-2015-5154-3.patch #556050 / #555532
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-1.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-2.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-3.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-4.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-5.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-6.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-7.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5166.patch #556304
- [[ -n ${BACKPORTS} ]] && \
- EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
- epatch
-
- # Fix ld and objcopy being called directly
- tc-export AR LD OBJCOPY
-
- # Verbose builds
- MAKEOPTS+=" V=1"
-
- epatch_user
-}
-
-##
-# 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=$2
- local static_flag="static-${buildtype}"
-
- # 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}"
-
- 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
- --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 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 smartcard-nss)
- $(conf_softmmu snappy)
- $(conf_softmmu spice)
- $(conf_softmmu ssh libssh2)
- $(conf_softmmu tls quorum)
- $(conf_softmmu tls vnc-tls)
- $(conf_softmmu tls vnc-ws)
- $(conf_softmmu usb libusb)
- $(conf_softmmu usbredir usb-redir)
- $(conf_softmmu uuid)
- $(conf_softmmu vde)
- $(conf_softmmu vhost-net)
- $(conf_softmmu virtfs)
- $(conf_softmmu vnc)
- $(conf_softmmu xen)
- $(conf_softmmu xen xen-pci-passthrough)
- $(conf_softmmu xfs xfsctl)
- )
-
- case ${buildtype} in
- user)
- conf_opts+=(
- --enable-linux-user
- --disable-system
- --target-list="${user_targets}"
- --disable-blobs
- --disable-tools
- )
- ;;
- softmmu)
- conf_opts+=(
- --disable-linux-user
- --enable-system
- --target-list="${softmmu_targets}"
- --with-system-pixman
- --audio-drv-list="${audio_opts}"
- )
- use gtk && conf_opts+=( --with-gtkabi=$(usex gtk2 2.0 3.0) )
- ;;
- esac
-
- # 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
-
- einfo "../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
-
- [[ -n ${softmmu_targets} ]] && \
- einfo "Building the following softmmu targets: ${softmmu_targets}"
-
- [[ -n ${user_targets} ]] && \
- einfo "Building the following user targets: ${user_targets}"
-
- if [[ -n ${softmmu_targets} ]]; then
- mkdir "${S}/softmmu-build"
- qemu_src_configure "softmmu" "${S}/softmmu-build"
- fi
-
- if [[ -n ${user_targets} ]]; then
- mkdir "${S}/user-build"
- qemu_src_configure "user" "${S}/user-build"
- fi
-}
-
-src_compile() {
- if [[ -n ${user_targets} ]]; then
- cd "${S}/user-build"
- default
- fi
-
- if [[ -n ${softmmu_targets} ]]; then
- cd "${S}/softmmu-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
-
- # 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/qmp/"
-
- 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
- ewarn "Migration from qemu-kvm instances and loading qemu-kvm created"
- ewarn "save states has been removed starting with the 1.6.2 release"
- ewarn
- ewarn "It is recommended that you migrate any VMs that may be running"
- ewarn "on qemu-kvm to a host with a newer qemu and regenerate"
- ewarn "any saved states with a newer qemu."
- ewarn
- ewarn "qemu-kvm was the primary qemu provider in Gentoo through 1.2.x"
-
- if use x86 || use amd64; then
- ewarn
- ewarn "The /usr/bin/kvm and /usr/bin/qemu-kvm wrappers are no longer"
- ewarn "installed. In order to use kvm acceleration, pass the flag"
- ewarn "-enable-kvm when running your system target."
- fi
- fi
-
- if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
- udev_reload
- fi
-
- fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
- if use virtfs && [ -n "${softmmu_targets}" ]; then
- local virtfs_caps="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_setgid,cap_mknod,cap_setuid"
- fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
- fi
-}
-
-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)"
-}
diff --git a/app-emulation/qemu/qemu-2.3.0-r6.ebuild b/app-emulation/qemu/qemu-2.3.0-r6.ebuild
deleted file mode 100644
index 5b6cd8229a..0000000000
--- a/app-emulation/qemu/qemu-2.3.0-r6.ebuild
+++ /dev/null
@@ -1,616 +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 )
-PYTHON_REQ_USE="ncurses,readline"
-
-inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
- user udev fcaps readme.gentoo pax-utils
-
-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 ~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 \
-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 selinux smartcard snappy spice ssh static static-softmmu \
-static-user systemtap tci test +threads tls usb usbredir +uuid vde +vhost-net \
-virtfs +vnc 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 xtensa xtensaeb"
-IUSE_USER_TARGETS="${COMMON_TARGETS} armeb mipsn32 mipsn32el ppc64abi32 sparc32plus"
-
-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}"
-
-# Require at least one softmmu or user target.
-# Block USE flag configurations known to not work.
-REQUIRED_USE="|| ( ${use_softmmu_targets} ${use_user_targets} )
- ${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 )
- static? ( static-softmmu static-user )
- static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl !gtk !gtk2 )
- virtfs? ( xattr )"
-
-# 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.
-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(+)]
- aio? ( dev-libs/libaio[static-libs(+)] )
- 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(+)] )
- infiniband? ( sys-infiniband/librdmacm:=[static-libs(+)] )
- jpeg? ( virtual/jpeg:=[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(+)] )
- png? ( media-libs/libpng:0=[static-libs(+)] )
- rbd? ( sys-cluster/ceph[static-libs(+)] )
- sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
- sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] )
- seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
- snappy? ( app-arch/snappy[static-libs(+)] )
- spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] )
- ssh? ( >=net-libs/libssh2-1.2.8[static-libs(+)] )
- tls? ( net-libs/gnutls[static-libs(+)] )
- usb? ( >=virtual/libusb-1-r1[static-libs(+)] )
- uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
- vde? ( net-misc/vde[static-libs(+)] )
- 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.7.5
- ~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} )
- accessibility? ( app-accessibility/brltty )
- alsa? ( >=media-libs/alsa-lib-1.0.13 )
- bluetooth? ( net-wireless/bluez )
- gtk? (
- gtk2? ( x11-libs/gtk+:2 )
- !gtk2? ( x11-libs/gtk+:3 )
- x11-libs/vte:2.90
- )
- iscsi? ( net-libs/libiscsi )
- opengl? ( virtual/opengl )
- pulseaudio? ( media-sound/pulseaudio )
- python? ( ${PYTHON_DEPS} )
- sdl? ( media-libs/libsdl[X] )
- smartcard? ( dev-libs/nss !app-emulation/libcacard )
- spice? ( >=app-emulation/spice-protocol-0.12.3 )
- systemtap? ( dev-util/systemtap )
- usbredir? ( >=sys-apps/usbredir-0.6 )
- virtfs? ( sys-libs/libcap )
- 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
-}
-
-src_prepare() {
- # 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
-
- # Cheap hack to disable gettext .mo generation.
- use nls || rm -f po/*.po
-
- epatch "${FILESDIR}"/qemu-1.7.0-cflags.patch
- epatch "${FILESDIR}"/${P}-CVE-2015-3456.patch #549404
- epatch "${FILESDIR}"/${P}-CVE-2015-3209.patch #551752
- epatch "${FILESDIR}"/${P}-CVE-2015-5158.patch #555680
- epatch "${FILESDIR}"/${P}-CVE-2015-3214.patch #556052
- epatch "${FILESDIR}"/${P}-CVE-2015-5154-1.patch #556050 / #555532
- epatch "${FILESDIR}"/${P}-CVE-2015-5154-2.patch #556050 / #555532
- epatch "${FILESDIR}"/${P}-CVE-2015-5154-3.patch #556050 / #555532
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-1.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-2.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-3.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-4.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-5.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-6.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5165-7.patch #556304
- epatch "${FILESDIR}"/${P}-CVE-2015-5166.patch #556304
- epatch "${FILESDIR}"/${P}-virtio-serial.patch #557206
- [[ -n ${BACKPORTS} ]] && \
- EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
- epatch
-
- # Fix ld and objcopy being called directly
- tc-export AR LD OBJCOPY
-
- # Verbose builds
- MAKEOPTS+=" V=1"
-
- epatch_user
-}
-
-##
-# 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=$2
- local static_flag="static-${buildtype}"
-
- # 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}"
-
- 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
- --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 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 smartcard-nss)
- $(conf_softmmu snappy)
- $(conf_softmmu spice)
- $(conf_softmmu ssh libssh2)
- $(conf_softmmu tls quorum)
- $(conf_softmmu tls vnc-tls)
- $(conf_softmmu tls vnc-ws)
- $(conf_softmmu usb libusb)
- $(conf_softmmu usbredir usb-redir)
- $(conf_softmmu uuid)
- $(conf_softmmu vde)
- $(conf_softmmu vhost-net)
- $(conf_softmmu virtfs)
- $(conf_softmmu vnc)
- $(conf_softmmu xen)
- $(conf_softmmu xen xen-pci-passthrough)
- $(conf_softmmu xfs xfsctl)
- )
-
- case ${buildtype} in
- user)
- conf_opts+=(
- --enable-linux-user
- --disable-system
- --target-list="${user_targets}"
- --disable-blobs
- --disable-tools
- )
- ;;
- softmmu)
- conf_opts+=(
- --disable-linux-user
- --enable-system
- --target-list="${softmmu_targets}"
- --with-system-pixman
- --audio-drv-list="${audio_opts}"
- )
- use gtk && conf_opts+=( --with-gtkabi=$(usex gtk2 2.0 3.0) )
- ;;
- esac
-
- # 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
-
- einfo "../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
-
- [[ -n ${softmmu_targets} ]] && \
- einfo "Building the following softmmu targets: ${softmmu_targets}"
-
- [[ -n ${user_targets} ]] && \
- einfo "Building the following user targets: ${user_targets}"
-
- if [[ -n ${softmmu_targets} ]]; then
- mkdir "${S}/softmmu-build"
- qemu_src_configure "softmmu" "${S}/softmmu-build"
- fi
-
- if [[ -n ${user_targets} ]]; then
- mkdir "${S}/user-build"
- qemu_src_configure "user" "${S}/user-build"
- fi
-}
-
-src_compile() {
- if [[ -n ${user_targets} ]]; then
- cd "${S}/user-build"
- default
- fi
-
- if [[ -n ${softmmu_targets} ]]; then
- cd "${S}/softmmu-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
-
- # 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/qmp/"
-
- 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
- ewarn "Migration from qemu-kvm instances and loading qemu-kvm created"
- ewarn "save states has been removed starting with the 1.6.2 release"
- ewarn
- ewarn "It is recommended that you migrate any VMs that may be running"
- ewarn "on qemu-kvm to a host with a newer qemu and regenerate"
- ewarn "any saved states with a newer qemu."
- ewarn
- ewarn "qemu-kvm was the primary qemu provider in Gentoo through 1.2.x"
-
- if use x86 || use amd64; then
- ewarn
- ewarn "The /usr/bin/kvm and /usr/bin/qemu-kvm wrappers are no longer"
- ewarn "installed. In order to use kvm acceleration, pass the flag"
- ewarn "-enable-kvm when running your system target."
- fi
- fi
-
- if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
- udev_reload
- fi
-
- fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
- if use virtfs && [ -n "${softmmu_targets}" ]; then
- local virtfs_caps="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_setgid,cap_mknod,cap_setuid"
- fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
- fi
-}
-
-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)"
-}
diff --git a/app-emulation/qemu/qemu-2.3.1.ebuild b/app-emulation/qemu/qemu-2.3.1.ebuild
deleted file mode 100644
index 421e705bba..0000000000
--- a/app-emulation/qemu/qemu-2.3.1.ebuild
+++ /dev/null
@@ -1,602 +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 )
-PYTHON_REQ_USE="ncurses,readline"
-
-inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
- user udev fcaps readme.gentoo pax-utils
-
-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 ~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 \
-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 selinux smartcard snappy spice ssh static static-softmmu \
-static-user systemtap tci test +threads tls usb usbredir +uuid vde +vhost-net \
-virtfs +vnc 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 xtensa xtensaeb"
-IUSE_USER_TARGETS="${COMMON_TARGETS} armeb mipsn32 mipsn32el ppc64abi32 sparc32plus"
-
-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}"
-
-# Require at least one softmmu or user target.
-# Block USE flag configurations known to not work.
-REQUIRED_USE="|| ( ${use_softmmu_targets} ${use_user_targets} )
- ${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 )
- static? ( static-softmmu static-user )
- static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl !gtk !gtk2 )
- virtfs? ( xattr )"
-
-# 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.
-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(+)]
- aio? ( dev-libs/libaio[static-libs(+)] )
- 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(+)] )
- infiniband? ( sys-infiniband/librdmacm:=[static-libs(+)] )
- jpeg? ( virtual/jpeg:=[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(+)] )
- png? ( media-libs/libpng:0=[static-libs(+)] )
- rbd? ( sys-cluster/ceph[static-libs(+)] )
- sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
- sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] )
- seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
- snappy? ( app-arch/snappy[static-libs(+)] )
- spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] )
- ssh? ( >=net-libs/libssh2-1.2.8[static-libs(+)] )
- tls? ( net-libs/gnutls[static-libs(+)] )
- usb? ( >=virtual/libusb-1-r1[static-libs(+)] )
- uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
- vde? ( net-misc/vde[static-libs(+)] )
- 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.7.5
- ~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} )
- accessibility? ( app-accessibility/brltty )
- alsa? ( >=media-libs/alsa-lib-1.0.13 )
- bluetooth? ( net-wireless/bluez )
- gtk? (
- gtk2? ( x11-libs/gtk+:2 )
- !gtk2? ( x11-libs/gtk+:3 )
- x11-libs/vte:2.90
- )
- iscsi? ( net-libs/libiscsi )
- opengl? ( virtual/opengl )
- pulseaudio? ( media-sound/pulseaudio )
- python? ( ${PYTHON_DEPS} )
- sdl? ( media-libs/libsdl[X] )
- smartcard? ( dev-libs/nss !app-emulation/libcacard )
- spice? ( >=app-emulation/spice-protocol-0.12.3 )
- systemtap? ( dev-util/systemtap )
- usbredir? ( >=sys-apps/usbredir-0.6 )
- virtfs? ( sys-libs/libcap )
- 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
-}
-
-src_prepare() {
- # 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
-
- # Cheap hack to disable gettext .mo generation.
- use nls || rm -f po/*.po
-
- epatch "${FILESDIR}"/qemu-1.7.0-cflags.patch
- epatch "${FILESDIR}"/${PN}-2.3.0-CVE-2015-3209.patch #551752
- epatch "${FILESDIR}"/${PN}-2.3.0-virtio-serial.patch #557206
- [[ -n ${BACKPORTS} ]] && \
- EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
- epatch
-
- # Fix ld and objcopy being called directly
- tc-export AR LD OBJCOPY
-
- # Verbose builds
- MAKEOPTS+=" V=1"
-
- epatch_user
-}
-
-##
-# 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=$2
- local static_flag="static-${buildtype}"
-
- # 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}"
-
- 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
- --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 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 smartcard-nss)
- $(conf_softmmu snappy)
- $(conf_softmmu spice)
- $(conf_softmmu ssh libssh2)
- $(conf_softmmu tls quorum)
- $(conf_softmmu tls vnc-tls)
- $(conf_softmmu tls vnc-ws)
- $(conf_softmmu usb libusb)
- $(conf_softmmu usbredir usb-redir)
- $(conf_softmmu uuid)
- $(conf_softmmu vde)
- $(conf_softmmu vhost-net)
- $(conf_softmmu virtfs)
- $(conf_softmmu vnc)
- $(conf_softmmu xen)
- $(conf_softmmu xen xen-pci-passthrough)
- $(conf_softmmu xfs xfsctl)
- )
-
- case ${buildtype} in
- user)
- conf_opts+=(
- --enable-linux-user
- --disable-system
- --target-list="${user_targets}"
- --disable-blobs
- --disable-tools
- )
- ;;
- softmmu)
- conf_opts+=(
- --disable-linux-user
- --enable-system
- --target-list="${softmmu_targets}"
- --with-system-pixman
- --audio-drv-list="${audio_opts}"
- )
- use gtk && conf_opts+=( --with-gtkabi=$(usex gtk2 2.0 3.0) )
- ;;
- esac
-
- # 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
-
- einfo "../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
-
- [[ -n ${softmmu_targets} ]] && \
- einfo "Building the following softmmu targets: ${softmmu_targets}"
-
- [[ -n ${user_targets} ]] && \
- einfo "Building the following user targets: ${user_targets}"
-
- if [[ -n ${softmmu_targets} ]]; then
- mkdir "${S}/softmmu-build"
- qemu_src_configure "softmmu" "${S}/softmmu-build"
- fi
-
- if [[ -n ${user_targets} ]]; then
- mkdir "${S}/user-build"
- qemu_src_configure "user" "${S}/user-build"
- fi
-}
-
-src_compile() {
- if [[ -n ${user_targets} ]]; then
- cd "${S}/user-build"
- default
- fi
-
- if [[ -n ${softmmu_targets} ]]; then
- cd "${S}/softmmu-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
-
- # 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/qmp/"
-
- 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
- ewarn "Migration from qemu-kvm instances and loading qemu-kvm created"
- ewarn "save states has been removed starting with the 1.6.2 release"
- ewarn
- ewarn "It is recommended that you migrate any VMs that may be running"
- ewarn "on qemu-kvm to a host with a newer qemu and regenerate"
- ewarn "any saved states with a newer qemu."
- ewarn
- ewarn "qemu-kvm was the primary qemu provider in Gentoo through 1.2.x"
-
- if use x86 || use amd64; then
- ewarn
- ewarn "The /usr/bin/kvm and /usr/bin/qemu-kvm wrappers are no longer"
- ewarn "installed. In order to use kvm acceleration, pass the flag"
- ewarn "-enable-kvm when running your system target."
- fi
- fi
-
- if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
- udev_reload
- fi
-
- fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
- if use virtfs && [ -n "${softmmu_targets}" ]; then
- local virtfs_caps="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_setgid,cap_mknod,cap_setuid"
- fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
- fi
-}
-
-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)"
-}
diff --git a/app-emulation/qemu/qemu-2.4.0.1-r1.ebuild b/app-emulation/qemu/qemu-2.4.0.1-r1.ebuild
deleted file mode 100644
index 6b53c66421..0000000000
--- a/app-emulation/qemu/qemu-2.4.0.1-r1.ebuild
+++ /dev/null
@@ -1,649 +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 )
-PYTHON_REQ_USE="ncurses,readline"
-
-inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
- user udev fcaps readme.gentoo pax-utils
-
-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 ~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 \
-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 tls usb usbredir +uuid vde +vhost-net \
-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"
-
-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.
-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(+)] )
- gtk? (
- gtk2? (
- x11-libs/gtk+:2
- vte? ( x11-libs/vte:0 )
- )
- !gtk2? (
- x11-libs/gtk+:3
- vte? ( x11-libs/vte:2.90 )
- )
- )
- infiniband? ( sys-infiniband/librdmacm:=[static-libs(+)] )
- iscsi? ( net-libs/libiscsi )
- jpeg? ( virtual/jpeg:=[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? ( dev-libs/nss !app-emulation/libcacard )
- 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(+)] )
- tls? ( net-libs/gnutls[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(+)] )
- 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
-}
-
-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
-
- # Cheap hack to disable gettext .mo generation.
- use nls || rm -f po/*.po
-
- epatch "${FILESDIR}"/qemu-1.7.0-cflags.patch
- epatch "${FILESDIR}"/${PN}-2.4.0-block-mirror-crash.patch #558396
- epatch "${FILESDIR}"/${PN}-2.4.0-CVE-2015-7295-{1,2,3}.patch #560760
- epatch "${FILESDIR}"/${PN}-2.4.0-CVE-2015-6855.patch #560422
- [[ -n ${BACKPORTS} ]] && \
- EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
- epatch
-
- # MIPS specific fixes. Bug #563162
- for x in "${FILESDIR}"/${PN}-2.4-mips-*; do
- epatch "${x}"
- done
-
- # Fix ld and objcopy being called directly
- tc-export AR LD OBJCOPY
-
- # Verbose builds
- MAKEOPTS+=" V=1"
-
- epatch_user
-}
-
-##
-# 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
- --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 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 smartcard-nss)
- $(conf_softmmu snappy)
- $(conf_softmmu spice)
- $(conf_softmmu ssh libssh2)
- $(conf_softmmu tls vnc-tls)
- $(conf_softmmu usb libusb)
- $(conf_softmmu usbredir usb-redir)
- $(conf_softmmu uuid)
- $(conf_softmmu vde)
- $(conf_softmmu vhost-net)
- $(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/qmp/"
-
- 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
- if use virtfs && [ -n "${softmmu_targets}" ]; then
- local virtfs_caps="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_setgid,cap_mknod,cap_setuid"
- fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
- fi
-}
-
-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)"
-}
diff --git a/app-emulation/qemu/qemu-2.4.1.ebuild b/app-emulation/qemu/qemu-2.4.1-r2.ebuild
index 63252bea4b..a42f99b194 100644
--- a/app-emulation/qemu/qemu-2.4.1.ebuild
+++ b/app-emulation/qemu/qemu-2.4.1-r2.ebuild
@@ -20,7 +20,7 @@ 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 ~ppc ~ppc64 ~x86 ~x86-fbsd"
+ KEYWORDS="amd64 ~ppc ~ppc64 x86 ~x86-fbsd"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
@@ -150,7 +150,7 @@ CDEPEND="
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
- xen? ( app-emulation/xen-tools )"
+ xen? ( app-emulation/xen-tools:= )"
DEPEND="${CDEPEND}
dev-lang/perl
=dev-lang/python-2*
@@ -301,6 +301,10 @@ src_prepare() {
use nls || rm -f po/*.po
epatch "${FILESDIR}"/qemu-1.7.0-cflags.patch
+ epatch "${FILESDIR}"/${PN}-2.4.1-CVE-2015-{7504,7512}.patch #567144
+ epatch "${FILESDIR}"/${PN}-2.4.1-CVE-2015-8345.patch #566792
+ epatch "${FILESDIR}"/${PN}-2.4.1-CVE-2015-8504.patch #567828
+ epatch "${FILESDIR}"/${PN}-2.4.1-CVE-2015-7549.patch #568214
epatch "${FILESDIR}"/${PN}-2.4-mips-* #563162
[[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
@@ -622,10 +626,6 @@ pkg_postinst() {
fi
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
- if use virtfs && [ -n "${softmmu_targets}" ]; then
- local virtfs_caps="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_setgid,cap_mknod,cap_setuid"
- fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
- fi
}
pkg_info() {
diff --git a/app-emulation/qemu/qemu-2.4.0-r1.ebuild b/app-emulation/qemu/qemu-2.5.0-r1.ebuild
index 8d50bd3e7b..8c35339196 100644
--- a/app-emulation/qemu/qemu-2.4.0-r1.ebuild
+++ b/app-emulation/qemu/qemu-2.5.0-r1.ebuild
@@ -29,18 +29,18 @@ 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 \
-gtk gtk2 infiniband iscsi +jpeg \
+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 tls usb usbredir +uuid vde +vhost-net \
-virtfs +vnc vte xattr xen xfs"
+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"
+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})
@@ -65,6 +65,9 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}
# 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(+)] )"
@@ -78,6 +81,10 @@ SOFTMMU_LIB_DEPEND="${COMMON_LIB_DEPEND}
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
@@ -116,18 +123,18 @@ SOFTMMU_LIB_DEPEND="${COMMON_LIB_DEPEND}
)
)
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
- smartcard? ( dev-libs/nss !app-emulation/libcacard )
+ 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(+)] )
- tls? ( net-libs/gnutls[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}"
@@ -150,7 +157,7 @@ CDEPEND="
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
- xen? ( app-emulation/xen-tools )"
+ xen? ( app-emulation/xen-tools:= )"
DEPEND="${CDEPEND}
dev-lang/perl
=dev-lang/python-2*
@@ -300,14 +307,17 @@ src_prepare() {
# Cheap hack to disable gettext .mo generation.
use nls || rm -f po/*.po
- epatch "${FILESDIR}"/qemu-1.7.0-cflags.patch
- epatch "${FILESDIR}"/${P}-block-mirror-crash.patch #558396
- epatch "${FILESDIR}"/${P}-CVE-2015-5225.patch #558416
- epatch "${FILESDIR}"/${PN}-2.4.0-e1000-loop.patch #559656
+ 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
+
# Fix ld and objcopy being called directly
tc-export AR LD OBJCOPY
@@ -339,6 +349,11 @@ qemu_src_configure() {
--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)"
@@ -367,6 +382,8 @@ qemu_src_configure() {
$(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)
@@ -382,16 +399,16 @@ qemu_src_configure() {
$(conf_softmmu sasl vnc-sasl)
$(conf_softmmu sdl)
$(conf_softmmu seccomp)
- $(conf_softmmu smartcard smartcard-nss)
+ $(conf_softmmu smartcard)
$(conf_softmmu snappy)
$(conf_softmmu spice)
$(conf_softmmu ssh libssh2)
- $(conf_softmmu tls vnc-tls)
$(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)
@@ -565,12 +582,12 @@ src_install() {
doins "${FILESDIR}/bridge.conf"
# Remove the docdir placed qmp-commands.txt
- mv "${ED}/usr/share/doc/${PF}/html/qmp-commands.txt" "${S}/docs/qmp/"
+ 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
+ dodoc docs/qmp-*.txt
if [[ -n ${softmmu_targets} ]]; then
# Remove SeaBIOS since we're using the SeaBIOS packaged one
@@ -624,10 +641,6 @@ pkg_postinst() {
fi
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
- if use virtfs && [ -n "${softmmu_targets}" ]; then
- local virtfs_caps="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_setgid,cap_mknod,cap_setuid"
- fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
- fi
}
pkg_info() {
diff --git a/app-emulation/qemu/qemu-2.4.0.1.ebuild b/app-emulation/qemu/qemu-2.5.0.ebuild
index 50ceedb990..70f595ea5b 100644
--- a/app-emulation/qemu/qemu-2.4.0.1.ebuild
+++ b/app-emulation/qemu/qemu-2.5.0.ebuild
@@ -29,18 +29,18 @@ 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 \
-gtk gtk2 infiniband iscsi +jpeg \
+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 tls usb usbredir +uuid vde +vhost-net \
-virtfs +vnc vte xattr xen xfs"
+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"
+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})
@@ -65,6 +65,9 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}
# 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(+)] )"
@@ -78,6 +81,10 @@ SOFTMMU_LIB_DEPEND="${COMMON_LIB_DEPEND}
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
@@ -116,18 +123,18 @@ SOFTMMU_LIB_DEPEND="${COMMON_LIB_DEPEND}
)
)
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
- smartcard? ( dev-libs/nss !app-emulation/libcacard )
+ 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(+)] )
- tls? ( net-libs/gnutls[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}"
@@ -150,7 +157,7 @@ CDEPEND="
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
- xen? ( app-emulation/xen-tools )"
+ xen? ( app-emulation/xen-tools:= )"
DEPEND="${CDEPEND}
dev-lang/perl
=dev-lang/python-2*
@@ -300,10 +307,7 @@ src_prepare() {
# Cheap hack to disable gettext .mo generation.
use nls || rm -f po/*.po
- epatch "${FILESDIR}"/qemu-1.7.0-cflags.patch
- epatch "${FILESDIR}"/${PN}-2.4.0-block-mirror-crash.patch #558396
- epatch "${FILESDIR}"/${PN}-2.4.0-CVE-2015-7295-{1,2,3}.patch #560760
- epatch "${FILESDIR}"/${PN}-2.4.0-CVE-2015-6855.patch #560422
+ epatch "${FILESDIR}"/qemu-2.5.0-cflags.patch
[[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch
@@ -339,6 +343,11 @@ qemu_src_configure() {
--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)"
@@ -367,6 +376,8 @@ qemu_src_configure() {
$(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)
@@ -382,16 +393,16 @@ qemu_src_configure() {
$(conf_softmmu sasl vnc-sasl)
$(conf_softmmu sdl)
$(conf_softmmu seccomp)
- $(conf_softmmu smartcard smartcard-nss)
+ $(conf_softmmu smartcard)
$(conf_softmmu snappy)
$(conf_softmmu spice)
$(conf_softmmu ssh libssh2)
- $(conf_softmmu tls vnc-tls)
$(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)
@@ -565,12 +576,12 @@ src_install() {
doins "${FILESDIR}/bridge.conf"
# Remove the docdir placed qmp-commands.txt
- mv "${ED}/usr/share/doc/${PF}/html/qmp-commands.txt" "${S}/docs/qmp/"
+ 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
+ dodoc docs/qmp-*.txt
if [[ -n ${softmmu_targets} ]]; then
# Remove SeaBIOS since we're using the SeaBIOS packaged one
@@ -624,10 +635,6 @@ pkg_postinst() {
fi
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
- if use virtfs && [ -n "${softmmu_targets}" ]; then
- local virtfs_caps="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_setgid,cap_mknod,cap_setuid"
- fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
- fi
}
pkg_info() {
diff --git a/app-emulation/qemu/qemu-9999.ebuild b/app-emulation/qemu/qemu-9999.ebuild
index 3123715862..70f595ea5b 100644
--- a/app-emulation/qemu/qemu-9999.ebuild
+++ b/app-emulation/qemu/qemu-9999.ebuild
@@ -34,7 +34,7 @@ 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 \
-virtfs +vnc vte xattr xen xfs"
+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
@@ -123,7 +123,7 @@ SOFTMMU_LIB_DEPEND="${COMMON_LIB_DEPEND}
)
)
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
- smartcard? ( dev-libs/nss !app-emulation/libcacard )
+ smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
snappy? ( app-arch/snappy[static-libs(+)] )
spice? (
>=app-emulation/spice-protocol-0.12.3
@@ -134,6 +134,7 @@ SOFTMMU_LIB_DEPEND="${COMMON_LIB_DEPEND}
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}"
@@ -156,7 +157,7 @@ CDEPEND="
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
- xen? ( app-emulation/xen-tools )"
+ xen? ( app-emulation/xen-tools:= )"
DEPEND="${CDEPEND}
dev-lang/perl
=dev-lang/python-2*
@@ -306,7 +307,7 @@ src_prepare() {
# Cheap hack to disable gettext .mo generation.
use nls || rm -f po/*.po
- epatch "${FILESDIR}"/qemu-1.7.0-cflags.patch
+ epatch "${FILESDIR}"/qemu-2.5.0-cflags.patch
[[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch
@@ -342,6 +343,11 @@ qemu_src_configure() {
--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)"
@@ -371,6 +377,7 @@ qemu_src_configure() {
$(conf_softmmu fdt)
$(conf_softmmu glusterfs)
$(conf_softmmu gnutls)
+ $(conf_softmmu gnutls nettle)
$(conf_softmmu gtk)
$(conf_softmmu infiniband rdma)
$(conf_softmmu iscsi libiscsi)
@@ -395,6 +402,7 @@ qemu_src_configure() {
$(conf_softmmu uuid)
$(conf_softmmu vde)
$(conf_softmmu vhost-net)
+ $(conf_softmmu virgl virglrenderer)
$(conf_softmmu virtfs)
$(conf_softmmu vnc)
$(conf_softmmu vte)
@@ -627,10 +635,6 @@ pkg_postinst() {
fi
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
- if use virtfs && [ -n "${softmmu_targets}" ]; then
- local virtfs_caps="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,cap_setgid,cap_mknod,cap_setuid"
- fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
- fi
}
pkg_info() {
diff --git a/app-emulation/qtemu/metadata.xml b/app-emulation/qtemu/metadata.xml
index 6f617db635..ca6ad88536 100644
--- a/app-emulation/qtemu/metadata.xml
+++ b/app-emulation/qtemu/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<upstream>
<remote-id type="sourceforge">qtemu</remote-id>
</upstream>
diff --git a/app-emulation/rex-client/metadata.xml b/app-emulation/rex-client/metadata.xml
index 3b15722d89..097975e3ad 100644
--- a/app-emulation/rex-client/metadata.xml
+++ b/app-emulation/rex-client/metadata.xml
@@ -1,8 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer>
- <email>maintainer-needed@gentoo.org</email>
-</maintainer>
</pkgmetadata>
-
diff --git a/app-emulation/rkt/metadata.xml b/app-emulation/rkt/metadata.xml
index 1100d241c8..790b77b4fb 100644
--- a/app-emulation/rkt/metadata.xml
+++ b/app-emulation/rkt/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>mail@stefanjunker.de</email>
<name>Stefan Junker</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>alunduil@gentoo.org</email>
<name>Alex Brandt</name>
</maintainer>
diff --git a/app-emulation/runc/Manifest b/app-emulation/runc/Manifest
index 1494296fb3..3733259516 100644
--- a/app-emulation/runc/Manifest
+++ b/app-emulation/runc/Manifest
@@ -1 +1,2 @@
DIST runc-0.0.2.tar.gz 370712 SHA256 3d0aa68ebb1622853d0bbed432ebd4b6c9ef210881ac74f3a695b4e914d246dc SHA512 e0a44d5dd8a1b8eaeaf7d466cebc7dc8beaa26f49bd0e76d3a955cef9c5c266d2afe6652f28fa905a408b5b93966f52e345112fa7aef373216561ad7069181c5 WHIRLPOOL e7ed1ee3d159a81fb0b2b0f5fac9a9a66116035babc88f6f266a6c8455953ce372e93351baf7c621c42ab8c5907961fd899b1d158e7f7b1335f83fcef7252c71
+DIST runc-0.0.5.tar.gz 441874 SHA256 e80323412883e4afcfcf8e1b2eaefdcb74632628d02fd7f48618caf78e5e4aa0 SHA512 625d67ec02e23c66a3d1a97113a0c58f3f200404866839556bc3cd5b3e34342230b8091613d17ef4a38d05ca51df586cd7366dc6bddeeddd6b69bb9a2ae7efda WHIRLPOOL 862b08621b67fc57286940ad5e20557d90cfef63aae5be0a90fc6f5b764d032b187ba5ad5dcb1fa99fb5ec59d6217941aa19ca9048637bd02b64e52c8cecdce6
diff --git a/app-emulation/runc/metadata.xml b/app-emulation/runc/metadata.xml
index ba8b76a7d1..826b17b408 100644
--- a/app-emulation/runc/metadata.xml
+++ b/app-emulation/runc/metadata.xml
@@ -5,7 +5,7 @@
runc is a CLI tool for spawning and running containers according
to the OCF (Open Container Format) specification.
</longdescription>
- <maintainer>
+ <maintainer type="person">
<email>cardoe@gentoo.org</email>
<name>Doug Goldstein</name>
</maintainer>
diff --git a/app-emulation/runc/runc-0.0.5.ebuild b/app-emulation/runc/runc-0.0.5.ebuild
new file mode 100644
index 0000000000..5cd38367f2
--- /dev/null
+++ b/app-emulation/runc/runc-0.0.5.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib
+
+DESCRIPTION="runc container cli tools"
+HOMEPAGE="http://runc.io"
+
+GITHUB_URI="github.com/opencontainers/runc"
+
+if [[ ${PV} == *9999* ]]; then
+ EGIT_REPO_URI="git://${GITHUB_URI}.git"
+ inherit git-r3
+else
+ SRC_URI="https://${GITHUB_URI}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="+seccomp"
+
+DEPEND=">=dev-lang/go-1.4:="
+RDEPEND="seccomp? ( sys-libs/libseccomp )"
+
+src_prepare() {
+ epatch_user
+}
+
+src_compile() {
+ # Taken from app-emulation/docker-1.7.0-r1
+ export CGO_CFLAGS="-I${ROOT}/usr/include"
+ export CGO_LDFLAGS="-L${ROOT}/usr/$(get_libdir)"
+
+ # Setup GOPATH so things build
+ rm -rf .gopath
+ mkdir -p .gopath/src/"$(dirname "${GITHUB_URI}")"
+ ln -sf ../../../.. .gopath/src/"${GITHUB_URI}"
+ export GOPATH="${PWD}/.gopath:${PWD}/vendor"
+
+ # build up optional flags
+ local options=( $(usex seccomp "seccomp") )
+
+ emake BUILDTAGS="${options[@]}"
+}
+
+src_install() {
+ dobin runc
+}
diff --git a/app-emulation/simh/metadata.xml b/app-emulation/simh/metadata.xml
index 1adcc96178..494099c897 100644
--- a/app-emulation/simh/metadata.xml
+++ b/app-emulation/simh/metadata.xml
@@ -1,13 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>proxy-maintainers</herd>
- <maintainer>
+ <maintainer type="person">
<email>alex.buell@munted.eu</email>
<name>Alex Buell</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>xmw@gentoo.org</email>
<name>Michael Weber</name>
</maintainer>
+<maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
</pkgmetadata>
diff --git a/app-emulation/ski/metadata.xml b/app-emulation/ski/metadata.xml
index 96baef6ac8..a82c03848d 100644
--- a/app-emulation/ski/metadata.xml
+++ b/app-emulation/ski/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>ia64</herd>
+ <maintainer type="project">
+ <email>ia64@gentoo.org</email>
+ <name>Gentoo Linux IA-64 Development</name>
+ </maintainer>
<upstream>
<remote-id type="sourceforge">ski</remote-id>
</upstream>
diff --git a/app-emulation/skyeye/Manifest b/app-emulation/skyeye/Manifest
deleted file mode 100644
index 9b609bece4..0000000000
--- a/app-emulation/skyeye/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST skyeye-1.0.0.tar.bz2 235167 SHA256 b3a773354ab98932f70cbb5cdcee98369640827d85902b94cd6a1565c42df688 SHA512 d1407f254b2465b7f5e4ef40f7c0ecd4237d0183e8328b1b183c9657a79fcca006376b9525d8e64dacfceaaac5b3b87ca15c3e3ce0ed082e7f4c55b87ff3892a WHIRLPOOL 580fd902a638642963f430244b13c58d79497a29d666ebdd1f3f880a632b77c237ac011ec269747f60bdc4be6d442c43a700cd64ed85de01bb7380981b88e1af
diff --git a/app-emulation/skyeye/metadata.xml b/app-emulation/skyeye/metadata.xml
deleted file mode 100644
index 5454528f20..0000000000
--- a/app-emulation/skyeye/metadata.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<herd>arm</herd>
-</pkgmetadata>
diff --git a/app-emulation/skyeye/skyeye-1.0.0.ebuild b/app-emulation/skyeye/skyeye-1.0.0.ebuild
deleted file mode 100644
index 8fbb1b1191..0000000000
--- a/app-emulation/skyeye/skyeye-1.0.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="2"
-
-DESCRIPTION="an ARM embedded hardware simulator"
-HOMEPAGE="http://www.skyeye.org/"
-SRC_URI="http://download.gro.clinux.org/skyeye/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~x86"
-IUSE=""
-
-RDEPEND="sys-libs/ncurses
- media-libs/freetype
- x11-libs/gtk+:2
- dev-libs/glib:2
- x11-libs/pango"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-src_install() {
- dobin binary/skyeye || die "skyeye"
- dodoc ChangeLog README
-}
diff --git a/app-emulation/softgun/metadata.xml b/app-emulation/softgun/metadata.xml
index 3e94ca3428..a1d277727e 100644
--- a/app-emulation/softgun/metadata.xml
+++ b/app-emulation/softgun/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>arm</herd>
+ <maintainer type="project">
+ <email>arm@gentoo.org</email>
+ <name>Gentoo Linux ARM Development</name>
+ </maintainer>
<upstream>
<remote-id type="sourceforge">softgun</remote-id>
</upstream>
diff --git a/app-emulation/spectemu/metadata.xml b/app-emulation/spectemu/metadata.xml
index d9cd2cad66..097975e3ad 100644
--- a/app-emulation/spectemu/metadata.xml
+++ b/app-emulation/spectemu/metadata.xml
@@ -1,7 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer>
-<email>maintainer-needed@gentoo.org</email>
-</maintainer>
</pkgmetadata>
diff --git a/app-emulation/spice-protocol/metadata.xml b/app-emulation/spice-protocol/metadata.xml
index 6804d7590f..e225897fe9 100644
--- a/app-emulation/spice-protocol/metadata.xml
+++ b/app-emulation/spice-protocol/metadata.xml
@@ -1,9 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
- <maintainer>
+ <maintainer type="person">
<email>dev-zero@gentoo.org</email>
<name>Tiziano Müller</name>
</maintainer>
+<maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
</pkgmetadata>
diff --git a/app-emulation/spice-protocol/spice-protocol-0.12.10.ebuild b/app-emulation/spice-protocol/spice-protocol-0.12.10.ebuild
index 2380c21a86..de05530877 100644
--- a/app-emulation/spice-protocol/spice-protocol-0.12.10.ebuild
+++ b/app-emulation/spice-protocol/spice-protocol-0.12.10.ebuild
@@ -10,7 +10,7 @@ SRC_URI="http://spice-space.org/download/releases/${P}.tar.bz2"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc x86"
+KEYWORDS="alpha amd64 ~arm ia64 ppc ~ppc64 sparc x86"
IUSE=""
DEPEND=""
diff --git a/app-emulation/spice-vdagent/metadata.xml b/app-emulation/spice-vdagent/metadata.xml
index 7b4cb96eca..3ba36c8dab 100644
--- a/app-emulation/spice-vdagent/metadata.xml
+++ b/app-emulation/spice-vdagent/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
- <maintainer>
+ <maintainer type="person">
<email>dev-zero@gentoo.org</email>
<name>Tiziano Müller</name>
</maintainer>
+ <maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
<use>
<flag name="consolekit">Use <pkg>sys-auth/consolekit</pkg> to determine the
master vdagentd in case of multiple running vdagentds (highly
diff --git a/app-emulation/spice/Manifest b/app-emulation/spice/Manifest
index cd51bb5e3c..4d02ae7878 100644
--- a/app-emulation/spice/Manifest
+++ b/app-emulation/spice/Manifest
@@ -1 +1,2 @@
DIST spice-0.12.6.tar.bz2 1181088 SHA256 f148ea30135bf80a4f465ce723a1cd6d4ccb34c098b6298a020b378ace8569b6 SHA512 877d9c447a09055c61db7839ae1a2bbd97ab1178d8fd30fff83883064f8a2f269479649e696732095833ed3fda2d0cc0cbe2a420decb89d36d2cf2f18ad9a3db WHIRLPOOL e381cf469a29be9a91ab442ee5f426a44ee569528d9297401df1c927cbf558e9daee7709cd69a4cc6389481b0c5aa26b19e56f0e97576e270d768842581544fe
+DIST spice-0.13.0.tar.bz2 1215334 SHA256 4862e2d11da10abdf46dd6cc834d79fa4ef3490efac8dbcdd19fa96f81147bbb SHA512 be9960e8f40415f2d0c2445aca701729f904b4598492b64993fc53b2cfb27652642f11721b43c44c953e6ba4982865b15260c995bb12c4f29ea9c7e962043795 WHIRLPOOL 88d92a4498e76eb279c073e4da87a0b0efe7697f6da1211b4830681a1cc6c828809dcaaec54e0876766a8fd4365e55439910c13c03e7a50d0ccbdcf98bbec781
diff --git a/app-emulation/spice/metadata.xml b/app-emulation/spice/metadata.xml
index fc2293f753..bc1f503810 100644
--- a/app-emulation/spice/metadata.xml
+++ b/app-emulation/spice/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
- <maintainer>
+ <maintainer type="person">
<email>dev-zero@gentoo.org</email>
<name>Tiziano Müller</name>
</maintainer>
+ <maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
<use>
<flag name="smartcard">Enable smartcard remoting using <pkg>app-emulation/libcacard</pkg></flag>
</use>
diff --git a/app-emulation/spice/spice-0.13.0.ebuild b/app-emulation/spice/spice-0.13.0.ebuild
new file mode 100644
index 0000000000..9f06219e09
--- /dev/null
+++ b/app-emulation/spice/spice-0.13.0.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+inherit eutils python-any-r1
+
+DESCRIPTION="SPICE server"
+HOMEPAGE="http://spice-space.org/"
+SRC_URI="http://spice-space.org/download/releases/${P}.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="libressl sasl smartcard static-libs"
+
+# the libspice-server only uses the headers of libcacard
+RDEPEND="
+ >=dev-libs/glib-2.22:2[static-libs(+)?]
+ >=media-libs/celt-0.5.1.1:0.5.1[static-libs(+)?]
+ media-libs/opus[static-libs(+)?]
+ sys-libs/zlib[static-libs(+)?]
+ virtual/jpeg:0=[static-libs(+)?]
+ >=x11-libs/pixman-0.17.7[static-libs(+)?]
+ !libressl? ( dev-libs/openssl:0[static-libs(+)?] )
+ libressl? ( dev-libs/libressl[static-libs(+)?] )
+ smartcard? ( >=app-emulation/libcacard-0.1.2 )
+ sasl? ( dev-libs/cyrus-sasl[static-libs(+)?] )"
+
+DEPEND="
+ >=app-emulation/spice-protocol-0.12.10
+ virtual/pkgconfig
+ $(python_gen_any_dep '
+ >=dev-python/pyparsing-1.5.6-r2[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ ')
+ smartcard? ( app-emulation/qemu[smartcard] )
+ ${RDEPEND}"
+
+python_check_deps() {
+ has_version ">=dev-python/pyparsing-1.5.6-r2[${PYTHON_USEDEP}]"
+ has_version "dev-python/six[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && python-any-r1_pkg_setup
+}
+
+# maintainer notes:
+# * opengl support is currently broken
+
+src_prepare() {
+ epatch "${FILESDIR}/0.11.0-gold.patch"
+
+ epatch_user
+}
+
+src_configure() {
+ econf \
+ $(use_enable static-libs static) \
+ $(use_with sasl) \
+ $(use_enable smartcard) \
+ --disable-gui
+}
+
+src_install() {
+ default
+ use static-libs || prune_libtool_files
+}
diff --git a/app-emulation/spim/metadata.xml b/app-emulation/spim/metadata.xml
index 8260022a7f..29d31ab004 100644
--- a/app-emulation/spim/metadata.xml
+++ b/app-emulation/spim/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<longdescription lang="en">
A self-contained simulator that will run MIPS32 assembly language
programs. It also provides a simple debugger and a minimal set of
diff --git a/app-emulation/spim/spim-8.0-r1.ebuild b/app-emulation/spim/spim-8.0-r1.ebuild
index f00ca7fe08..fb0b06b975 100644
--- a/app-emulation/spim/spim-8.0-r1.ebuild
+++ b/app-emulation/spim/spim-8.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -23,6 +23,8 @@ DEPEND="${RDEPEND}
x11-proto/xproto )
>=sys-apps/sed-4
sys-devel/bison"
+# test hangs forever, disabling it
+RESTRICT="test"
src_prepare() {
# fix bugs 240005 and 243588
@@ -60,8 +62,7 @@ src_install() {
fi
doicon "${FILESDIR}"/xspim.svg || die
- make_desktop_entry xspim xSPIM xspim "ComputerScience;Science;Education" \
- "Comment=Graphical MIPS32 Assembly language emulator"
+ make_desktop_entry xspim xSPIM xspim "ComputerScience;Science;Education"
dohtml Documentation/SPIM.html || die
dodoc ChangeLog Documentation/BLURB README VERSION || die
diff --git a/app-emulation/uade/metadata.xml b/app-emulation/uade/metadata.xml
index d3c2cc926f..78274e0fa5 100644
--- a/app-emulation/uade/metadata.xml
+++ b/app-emulation/uade/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>games</herd>
+<maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+</maintainer>
</pkgmetadata>
diff --git a/app-emulation/uae/metadata.xml b/app-emulation/uae/metadata.xml
index 542646bcd4..0a4b82da8b 100644
--- a/app-emulation/uae/metadata.xml
+++ b/app-emulation/uae/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<longdescription>
UAE is a mostly complete software emulation of the hardware of the
Commodore Amiga 500/1000/2000. A Commodore Amiga is a 16/32 bit computer
@@ -13,6 +10,6 @@
successful A500 and A2000 models.
</longdescription>
<use>
- <flag name='scsi'>Enable the uaescsi.device</flag>
+ <flag name="scsi">Enable the uaescsi.device</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/vagrant/Manifest b/app-emulation/vagrant/Manifest
index a4955742ee..24578f105f 100644
--- a/app-emulation/vagrant/Manifest
+++ b/app-emulation/vagrant/Manifest
@@ -1 +1 @@
-DIST vagrant-1.4.3.tar.gz 2391973 SHA256 09ccc0d87999a3c133b9ef52a5cff58402745ee64af6080b2a5d304eb06c9c58 SHA512 93fd1cfa263004cadbf670fac4dc318db9719d2a86afe188857cbc97c1317e6ef2387be498ef9278ca95cdda6bd41400426e3bf52448eb59c31877c9fd0624e4 WHIRLPOOL e581e8488e0b1e75bcdd75f4572b89f9c23338e422d3acb57b1d5d513d9357ec0b061371d926ad0bb1087bf890e70422d4e3527dfd518329ba910f42f0733673
+DIST vagrant-1.8.1.tar.gz 2873082 SHA256 12cfa43eb82399d3dd1c3fd24691797fa30187fc142474580c72e5c9f83b9dfd SHA512 efbb74e26b4678075b1cbcc1a8e0bdef929f8c7de186dec1931a5cd52f944a046992491681573283c6cab7e48bf25fce86b0da96df17063d2398b69401fa0f08 WHIRLPOOL 237cbec487f820f00c8bd5b57c44c2f2ffd3b716988f64265124c52e3fe1ef696f93a5e61004ee7c57531bfb1765c47d56c53b61880c761ddf5efc5b6545c261
diff --git a/app-emulation/vagrant/files/vagrant-1.2.1-no-warning.patch b/app-emulation/vagrant/files/vagrant-1.2.1-no-warning.patch
deleted file mode 100644
index 08d1d3568b..0000000000
--- a/app-emulation/vagrant/files/vagrant-1.2.1-no-warning.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- vagrant-1.2.1/bin/vagrant
-+++ vagrant-1.2.1/bin/vagrant
-@@ -74,9 +74,6 @@
- warned = true
- end
- end
--
-- # If we're not in the installer, warn.
-- env.ui.warn(I18n.t("vagrant.general.not_in_installer")) if !warned
- end
-
- begin
diff --git a/app-emulation/vagrant/files/vagrant-1.2.2-rvm.patch b/app-emulation/vagrant/files/vagrant-1.2.2-rvm.patch
deleted file mode 100644
index 99265a26bf..0000000000
--- a/app-emulation/vagrant/files/vagrant-1.2.2-rvm.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- vagrant-1.2.2/bin/vagrant
-+++ vagrant-1.2.2/bin/vagrant
-@@ -5,6 +5,9 @@
- # initializing which have historically resulted in stack traces.
- Signal.trap("INT") { exit 1 }
-
-+ENV.delete('GEM_HOME')
-+ENV.delete('GEM_PATH')
-+
- require 'log4r'
- require 'vagrant'
- require 'vagrant/cli'
diff --git a/app-emulation/vagrant/files/vagrant-1.8.1 b/app-emulation/vagrant/files/vagrant-1.8.1
new file mode 100755
index 0000000000..760db569ea
--- /dev/null
+++ b/app-emulation/vagrant/files/vagrant-1.8.1
@@ -0,0 +1,46 @@
+#!/usr/bin/env bash
+#
+# This is a wrapper to properly execute Vagrant within the embedded
+# Vagrant installation directory. This sets up proper environmental variables
+# so that everything loads and compiles to proper directories.
+
+VAGRANT_DIR="$( ruby -e 'print Gem::default_path[-1] + "/gems/vagrant-1.8.1"' )"
+
+# Export GEM_HOME based on VAGRANT_HOME
+#
+# This needs to be set because Bundler includes gem paths
+# from RubyGems' Gem.paths.
+if [ -z $VAGRANT_HOME ]; then
+ VAGRANT_HOME=$(eval echo "~/.vagrant.d")
+fi
+export GEM_HOME="$VAGRANT_HOME/gems"
+
+# SSL certs
+export SSL_CERT_FILE="/etc/ssl/certs/ca-certificates.crt"
+
+# Export an environmental variable to say we're in a Vagrant
+# installer created environment.
+export VAGRANT_INSTALLER_ENV=1
+
+# This is currently used only in Vagrant::Plugin::Manager.system_plugins_file
+# to locate plugins configuration file.
+export VAGRANT_INSTALLER_EMBEDDED_DIR="/var/lib/vagrant"
+export VAGRANT_INSTALLER_VERSION="2"
+
+# Determine the OS that we're on, which is used in some later checks.
+# It is very important we do this _before_ setting the PATH below
+# because uname dependencies can conflict on some platforms.
+OS=$(uname -s 2>/dev/null)
+
+# Export the OS as an environmental variable that Vagrant can access
+# so that it can behave better.
+export VAGRANT_DETECTED_OS="${OS}"
+
+VAGRANT_EXECUTABLE="${VAGRANT_DIR}/bin/vagrant"
+VAGRANT_LAUNCHER="${VAGRANT_DIR}/lib/vagrant/pre-rubygems.rb"
+
+# Export the VAGRANT_EXECUTABLE so that pre-rubygems can optimize a bit
+export VAGRANT_EXECUTABLE
+
+# Call the actual Vagrant bin with our arguments
+exec ruby "${VAGRANT_LAUNCHER}" "$@"
diff --git a/app-emulation/vagrant/files/vagrant-1.8.1-disable-embedded-cacert.patch b/app-emulation/vagrant/files/vagrant-1.8.1-disable-embedded-cacert.patch
new file mode 100644
index 0000000000..afcb6f707f
--- /dev/null
+++ b/app-emulation/vagrant/files/vagrant-1.8.1-disable-embedded-cacert.patch
@@ -0,0 +1,17 @@
+diff --git a/lib/vagrant/util/downloader.rb b/lib/vagrant/util/downloader.rb
+index 8756fc3..7fb2be8 100644
+--- a/lib/vagrant/util/downloader.rb
++++ b/lib/vagrant/util/downloader.rb
+@@ -215,8 +215,9 @@ module Vagrant
+ # If we're in Vagrant, then we use the packaged CA bundle
+ if Vagrant.in_installer?
+ subprocess_options[:env] ||= {}
+- subprocess_options[:env]["CURL_CA_BUNDLE"] =
+- File.expand_path("cacert.pem", ENV["VAGRANT_INSTALLER_EMBEDDED_DIR"])
++ # Use system certificates.
++ # subprocess_options[:env]["CURL_CA_BUNDLE"] =
++ # File.expand_path("cacert.pem", ENV["VAGRANT_INSTALLER_EMBEDDED_DIR"])
+ end
+
+ return [options, subprocess_options]
+
diff --git a/app-emulation/vagrant/files/vagrant-1.8.1-install-plugins-in-isolation.patch b/app-emulation/vagrant/files/vagrant-1.8.1-install-plugins-in-isolation.patch
new file mode 100644
index 0000000000..c6934ab527
--- /dev/null
+++ b/app-emulation/vagrant/files/vagrant-1.8.1-install-plugins-in-isolation.patch
@@ -0,0 +1,122 @@
+diff --git a/bin/vagrant b/bin/vagrant
+index fce68c8..781fc63 100755
+--- a/bin/vagrant
++++ b/bin/vagrant
+@@ -69,6 +69,11 @@ end
+ require "bundler"
+ begin
+ $vagrant_bundler_runtime = Bundler.setup(:default, :plugins)
++# Invalidate the cached Gemfile.lock if necessary and try again
++rescue Bundler::GemNotFound
++ FileUtils.rm File.expand_path("~/.vagrant.d/Gemfile") if File.exists? File.expand_path("~/.vagrant.d/Gemfile")
++ FileUtils.rm File.expand_path("~/.vagrant.d/Gemfile.lock") if File.exists? File.expand_path("~/.vagrant.d/Gemfile.lock")
++ $vagrant_bundler_runtime = Bundler.setup(:default, :plugins)
+ rescue Bundler::GemNotFound
+ $stderr.puts "Bundler, the underlying system used to manage Vagrant plugins,"
+ $stderr.puts "is reporting that a plugin or its dependency can't be found."
+diff --git a/lib/vagrant/bundler.rb b/lib/vagrant/bundler.rb
+index ea8c056..0543963 100644
+--- a/lib/vagrant/bundler.rb
++++ b/lib/vagrant/bundler.rb
+@@ -63,6 +63,13 @@ module Vagrant
+ @configfile = File.open(Tempfile.new("vagrant").path + "1", "w+")
+ @configfile.close
+
++ # Ensure the path to user's Gemfile exists
++ gemfile = Vagrant.user_data_path.join("Gemfile")
++ unless File.exists? gemfile
++ FileUtils.mkdir_p(File.dirname(gemfile))
++ File.open(gemfile, 'w') {}
++ end
++
+ # Build up the Gemfile for our Bundler context. We make sure to
+ # lock Vagrant to our current Vagrant version. In addition to that,
+ # we add all our plugin dependencies.
+@@ -141,7 +148,7 @@ module Vagrant
+
+ # Clean removes any unused gems.
+ def clean(plugins)
+- gemfile = build_gemfile(plugins)
++ gemfile = build_gemfile(plugins, false, true)
+ lockfile = "#{gemfile.path}.lock"
+ definition = ::Bundler::Definition.build(gemfile, lockfile, nil)
+ root = File.dirname(gemfile.path)
+@@ -172,11 +179,24 @@ module Vagrant
+ # Builds a valid Gemfile for use with Bundler given the list of
+ # plugins.
+ #
++ # @param [Hash|Bool] update Hash of gems to update or true for all
++ # @param [Bool] invalidate Invalidate Gemfile.lock
+ # @return [Tempfile]
+- def build_gemfile(plugins)
++ def build_gemfile(plugins, update = false, invalidate = false)
+ sources = plugins.values.map { |p| p["sources"] }.flatten.compact.uniq
+
+- f = File.open(Tempfile.new("vagrant").path + "2", "w+")
++ # Determine what gems to update
++ if update.is_a? Hash
++ update_gems = update[:gems]
++ elsif update === true
++ update_gems = plugins.map{ |p| p[0] }
++ else
++ update_gems = []
++ end
++
++ gemfile = Vagrant.user_data_path.join("Gemfile")
++ f = File.open(gemfile, "w+")
++
+ f.tap do |gemfile|
+ if !sources.include?("http://rubygems.org")
+ gemfile.puts(%Q[source "https://rubygems.org"])
+@@ -190,6 +210,19 @@ module Vagrant
+
+ gemfile.puts(%Q[gemspec :path => "#{File.expand_path '../../..', __FILE__}"])
+
++ locked_gems = []
++
++ # Use Gemfile.lock to lock the gem versions
++ if ENV["VAGRANT_INTERNAL_BUNDLERIZED"] && File.exist?("#{gemfile.path}.lock") && !invalidate
++ lockfile = ::Bundler::LockfileParser.new(::Bundler.read_file("#{gemfile.path}.lock"))
++ lockfile.specs.each do |s|
++ if s.name != 'vagrant' && !(update_gems.include? s.name)
++ gemfile.puts(%Q[gem "#{s.name}", "#{s.version.to_s}"])
++ end
++ end
++ locked_gems = lockfile.specs.map(&:name) - update_gems
++ end
++
+ gemfile.puts("group :plugins do")
+ plugins.each do |name, plugin|
+ version = plugin["gem_version"]
+@@ -199,13 +232,19 @@ module Vagrant
+ if plugin["require"] && plugin["require"] != ""
+ opts[:require] = plugin["require"]
+ end
+-
+- gemfile.puts(%Q[gem "#{name}", #{version.inspect}, #{opts.inspect}])
++ gemfile.puts(%Q[gem "#{name}", #{version.inspect}, #{opts.inspect}]) unless locked_gems.include? name
+ end
+ gemfile.puts("end")
+-
+ gemfile.close
+ end
++
++ # Create Gemfile.lock if missing and re-generate Gemfile
++ if !File.exist?("#{f.path}.lock") && File.exist?(f.path)
++ lockfile = "#{f.path}.lock"
++ ENV['BUNDLE_GEMFILE'] = f.path
++ definition = ::Bundler::Definition.build(f.path, lockfile, false)
++ end
++ f
+ end
+
+ # This installs a set of plugins and optionally updates those gems.
+@@ -215,7 +254,7 @@ module Vagrant
+ # can be a hash of options. See Bundler.definition.
+ # @return [Array<Gem::Specification>]
+ def internal_install(plugins, update, **extra)
+- gemfile = build_gemfile(plugins)
++ gemfile = build_gemfile(plugins, update)
+ lockfile = "#{gemfile.path}.lock"
+ definition = ::Bundler::Definition.build(gemfile, lockfile, update)
+ root = File.dirname(gemfile.path)
diff --git a/app-emulation/vagrant/files/vagrant-1.8.1-rvm.patch b/app-emulation/vagrant/files/vagrant-1.8.1-rvm.patch
new file mode 100644
index 0000000000..81d17be010
--- /dev/null
+++ b/app-emulation/vagrant/files/vagrant-1.8.1-rvm.patch
@@ -0,0 +1,11 @@
+--- vagrant-1.8.1/bin/vagrant
++++ vagrant-1.8.1/bin/vagrant
+@@ -5,6 +5,8 @@
+ # initializing which have historically resulted in stack traces.
+ Signal.trap("INT") { abort }
+
++ENV.delete('GEM_PATH')
++
+ # Split arguments by "--" if its there, we'll recombine them later
+ argv = ARGV.dup
+ argv_extra = []
diff --git a/app-emulation/vagrant/metadata.xml b/app-emulation/vagrant/metadata.xml
index 5125c656be..8fedf524af 100644
--- a/app-emulation/vagrant/metadata.xml
+++ b/app-emulation/vagrant/metadata.xml
@@ -1,10 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="github">mitchellh/vagrant</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>hydrapolic@gmail.com</email>
+ <name>Tomas Mozes</name>
+ <description>Proxy maintainer</description>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="virtualbox">
+ Use VirtualBox provider.
+ </flag>
+ </use>
+ <upstream>
+ <remote-id type="github">mitchellh/vagrant</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/app-emulation/vagrant/vagrant-1.4.3-r2.ebuild b/app-emulation/vagrant/vagrant-1.4.3-r2.ebuild
deleted file mode 100644
index edac95f3c3..0000000000
--- a/app-emulation/vagrant/vagrant-1.4.3-r2.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="5"
-USE_RUBY="ruby20"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-RUBY_FAKEGEM_GEMSPEC="vagrant.gemspec"
-RUBY_FAKEGEM_EXTRAINSTALL="config keys plugins templates"
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="A tool for building and distributing virtual machines using VirtualBox"
-HOMEPAGE="http://vagrantup.com/"
-SRC_URI="https://github.com/mitchellh/vagrant/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~x64-macos"
-IUSE="test"
-
-# Missing ebuild for contest
-RESTRICT="test"
-
-RDEPEND="${RDEPEND}
- app-arch/libarchive
- net-misc/curl
- !x64-macos? ( || ( app-emulation/virtualbox app-emulation/virtualbox-bin ) )"
-
-ruby_add_rdepend "
- >=dev-ruby/childprocess-0.3.7
- >=dev-ruby/erubis-2.7.0
- dev-ruby/i18n:0.6
- >=dev-ruby/json-1.5.1
- >=dev-ruby/log4r-1.1.9
- >=dev-ruby/net-ssh-2.6.6
- >=dev-ruby/net-scp-1.1.0
-"
-
-ruby_add_bdepend "
- dev-ruby/rake
- test? ( dev-ruby/mocha virtual/ruby-minitest )
-"
-
-all_ruby_prepare() {
- # remove bundler support
- sed -i '/[Bb]undler/d' Rakefile || die
- rm Gemfile || die
-
- # loosen dependencies
- sed -e '/childprocess\|erubis\|log4r\|net-scp/s/~>/>=/' \
- -e '/net-ssh/s:, "< 2.8.0"::' \
- -i ${PN}.gemspec || die
-
- epatch "${FILESDIR}"/${PN}-1.2.1-no-warning.patch
- epatch "${FILESDIR}"/${PN}-1.2.2-rvm.patch
-}
-
-pkg_postinst() {
- if use x64-macos ; then
- ewarn
- ewarn "For Mac OS X prefixes, you must install the virtualbox"
- ewarn "package specifically for OS X which can be found at:"
- ewarn "https://www.virtualbox.org/wiki/Downloads"
- ewarn
- fi
-}
diff --git a/app-emulation/vagrant/vagrant-1.8.1.ebuild b/app-emulation/vagrant/vagrant-1.8.1.ebuild
new file mode 100644
index 0000000000..766211ac39
--- /dev/null
+++ b/app-emulation/vagrant/vagrant-1.8.1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+USE_RUBY="ruby20 ruby21"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="vagrant.gemspec"
+RUBY_FAKEGEM_EXTRAINSTALL="keys plugins templates version.txt"
+RUBY_FAKEGEM_TASK_DOC=""
+
+inherit bash-completion-r1 ruby-fakegem eutils
+
+DESCRIPTION="A tool for building and distributing development environments"
+HOMEPAGE="http://vagrantup.com/"
+SRC_URI="https://github.com/mitchellh/vagrant/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+virtualbox"
+
+RDEPEND="${RDEPEND}
+ app-arch/libarchive
+ net-misc/curl
+ virtualbox? ( || ( app-emulation/virtualbox app-emulation/virtualbox-bin ) )"
+
+ruby_add_rdepend "
+ >=dev-ruby/bundler-1.5.2 <=dev-ruby/bundler-1.10.6
+ >=dev-ruby/childprocess-0.5.0
+ >=dev-ruby/erubis-2.7.0
+ >=dev-ruby/i18n-0.6.0:* <dev-ruby/i18n-0.8.0:*
+ >=dev-ruby/listen-3.0.2
+ >=dev-ruby/hashicorp-checkpoint-0.1.1
+ >=dev-ruby/log4r-1.1.9 <dev-ruby/log4r-1.1.11
+ >=dev-ruby/net-ssh-3.0.1
+ >=dev-ruby/net-sftp-2.1
+ >=dev-ruby/net-scp-1.1.0
+ >=dev-ruby/rest-client-1.6.0 <dev-ruby/rest-client-2.0
+ >=dev-ruby/nokogiri-1.6.3.1
+ >=dev-ruby/mime-types-2.6.2:* <dev-ruby/mime-types-3:*
+"
+
+ruby_add_bdepend "
+ dev-ruby/rake
+"
+
+all_ruby_prepare() {
+ # remove bundler support
+ sed -i '/[Bb]undler/d' Rakefile || die
+ rm Gemfile || die
+
+ # loosen dependencies
+ sed -e '/hashicorp-checkpoint\|listen\|net-ssh\|net-scp/s/~>/>=/' \
+ -e '/nokogiri/s/=/>=/' \
+ -i ${PN}.gemspec || die
+
+ # remove windows-specific gems
+ sed -e '/wdm\|winrm/d' \
+ -i ${PN}.gemspec || die
+
+ # remove bsd-specific gems
+ sed -e '/rb-kqueue/d' \
+ -i ${PN}.gemspec || die
+
+ # see https://github.com/mitchellh/vagrant/pull/5877
+ epatch "${FILESDIR}"/${P}-install-plugins-in-isolation.patch
+
+ # disable embedded CA certs and use system ones
+ epatch "${FILESDIR}"/${P}-disable-embedded-cacert.patch
+
+ # fix rvm issue (bug #474476)
+ epatch "${FILESDIR}"/${P}-rvm.patch
+}
+
+all_ruby_install() {
+ newbashcomp contrib/bash/completion.sh ${PN}
+ all_fakegem_install
+
+ # provide executable similar to upstream:
+ # https://github.com/mitchellh/vagrant-installers/blob/master/substrate/modules/vagrant_installer/templates/vagrant.erb
+ newbin "${FILESDIR}/${P}" "${PN}"
+
+ # directory for plugins.json
+ dodir /var/lib/vagrant
+}
diff --git a/app-emulation/vboxgtk/metadata.xml b/app-emulation/vboxgtk/metadata.xml
index e96e35b1a3..097975e3ad 100644
--- a/app-emulation/vboxgtk/metadata.xml
+++ b/app-emulation/vboxgtk/metadata.xml
@@ -1,8 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
</pkgmetadata>
-
diff --git a/app-emulation/vice/Manifest b/app-emulation/vice/Manifest
index 2180a638c1..64ad04117a 100644
--- a/app-emulation/vice/Manifest
+++ b/app-emulation/vice/Manifest
@@ -1,3 +1 @@
-DIST vice-2.4.20.tar.gz 25156408 SHA256 e5d3d125940f0fafe409aabeec9de4e3ae8d9c19a731aa7ec6a57f6d2b897c5f SHA512 a27b1672ca356d0e8f2890c91e449b78ef76512f6d81bdf25350b90c1f472d57ae6d23646d0176c5544c47d81023aa3deb172e3a02eeb0022ea32a13311b5a76 WHIRLPOOL 5f25bfa72ade54dbe09699b5932df2c37017c3993daba048eb09f723a4351300b6722cf06ceb264202459051780a775f45b787b6ea60db78560d5c65da684541
DIST vice-2.4.22.tar.gz 25180343 SHA256 767e00eb9dbd1a9bcc6db8b4cd1697b8bc744b1d507bbac930975ee130378d9d SHA512 b43e609ae2f43717d10e079d3b8ac284e5c4920ed222c7502e9a7b75dfe32784628031ae6cf8672c8d9d50576fb714cecdd1a9292bf53477f4bbd52c10403975 WHIRLPOOL 580de25d739585c0316c91aba44bb17b2cd4cc19f162e3c5e53b8a7a9e3f694e8c5d8d549b232259d5c9ed077549410b220169a3c026ebad55bc7c537922be81
-DIST vice-2.4.tar.gz 13656511 SHA256 ff8b8d5f0f497d1f8e75b95bbc4204993a789284a08a8a59ba727ad81dcace10 SHA512 ad197fc35eb80c9738b7f4f551d350dbb4440c7c8103e5d472b7f7ea5106c1356e9d6e3f481552a028a313129ef233833d3147e03f6f00b9890229d5708e3ebb WHIRLPOOL 80f89f7c144fe1ef2305e109049b49e47dfa4af9b69d0d848bf7b06bd0f2d210669acece363b550abad1c50f53dd45a30397eb1bfacfaa443c9e865c686d0823
diff --git a/app-emulation/vice/files/vice-2.4-arm.patch b/app-emulation/vice/files/vice-2.4-arm.patch
deleted file mode 100644
index 55e2d5a35b..0000000000
--- a/app-emulation/vice/files/vice-2.4-arm.patch
+++ /dev/null
@@ -1,38 +0,0 @@
---- vice/configure.in
-+++ vice/configure.in
-@@ -2299,6 +2299,7 @@
-
- if test x"$PARSID_SUPPORT" = "xno"; then
- AC_CHECK_FUNCS(ioperm,[PARSID_SUPPORT=yes],)
-+ AC_CHECK_FUNCS(outb_p inb_p)
- fi
-
- if test x"$PARSID_SUPPORT" = "xyes"; then
---- vice/src/arch/unix/parsid.c
-+++ vice/src/arch/unix/parsid.c
-@@ -217,8 +217,12 @@
- #endif
- #endif
- #ifdef HAVE_IOPERM
-+#ifndef HAVE_OUTB_P
-+ outb(value, addr);
-+#else
- outb_p(value, addr);
- #endif
-+#endif
- }
-
- BYTE parsid_inb(int addr)
-@@ -237,8 +241,12 @@
- #endif
- #endif
- #ifdef HAVE_IOPERM
-+#ifndef HAVE_INB_P
-+ return inb((unsigned short)addr);
-+#else
- return inb_p((unsigned short)addr);
- #endif
-+#endif
- }
-
- /* chip control pin assignments */
diff --git a/app-emulation/vice/files/vice-2.4-autotools.patch b/app-emulation/vice/files/vice-2.4-autotools.patch
deleted file mode 100644
index f67113f0b4..0000000000
--- a/app-emulation/vice/files/vice-2.4-autotools.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- vice-2.4.orig/configure.in
-+++ vice-2.4/configure.in
-@@ -105,7 +105,7 @@
- AC_SUBST(VICE_VERSION)
-
- AM_INIT_AUTOMAKE(vice, $VICE_VERSION)
--AM_CONFIG_HEADER(src/config.h)
-+AC_CONFIG_HEADERS(src/config.h)
-
- if test x"$VICE_VERSION_BUILD" = "x" -o x"$VICE_VERSION_BUILD" = "x0" ; then
- VERSION_RC=$VICE_VERSION_MAJOR","$VICE_VERSION_MINOR",0,0"
diff --git a/app-emulation/vice/files/vice-2.4-buffer.patch b/app-emulation/vice/files/vice-2.4-buffer.patch
deleted file mode 100644
index dc5fab9b57..0000000000
--- a/app-emulation/vice/files/vice-2.4-buffer.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-avoid writing past the end of the gcr_track buffer
-https://bugs.gentoo.org/show_bug.cgi?id=464708
-
---- ./src/diskimage/fsimage-create.c.orig
-+++ ./src/diskimage/fsimage-create.c
-@@ -262,7 +262,7 @@
- gcrptr = gcr_track;
- util_word_to_le_buf(gcrptr, disk_image_raw_track_size(image->type, track));
- gcrptr += 2;
-- memset(gcrptr, 0x55, NUM_MAX_BYTES_TRACK);
-+ memset(gcrptr, 0x55, NUM_MAX_BYTES_TRACK - 2);
-
- header.track = track;
- for (sector = 0;
diff --git a/app-emulation/vice/files/vice-2.4-ffmpeg-1.patch b/app-emulation/vice/files/vice-2.4-ffmpeg-1.patch
deleted file mode 100644
index 4aefda2458..0000000000
--- a/app-emulation/vice/files/vice-2.4-ffmpeg-1.patch
+++ /dev/null
@@ -1,135 +0,0 @@
-Fixes build with recent FFmpeg versions.
-
-https://bugs.gentoo.org/show_bug.cgi?id=443218
-https://sourceforge.net/tracker/?func=detail&aid=3601992&group_id=223021&atid=1057619
-
---- vice-2.4.orig/src/gfxoutputdrv/ffmpegdrv.c
-+++ vice-2.4/src/gfxoutputdrv/ffmpegdrv.c
-@@ -343,7 +343,7 @@ static int ffmpegmovie_init_audio(int sp
- c = st->codec;
- c->codec_id = ffmpegdrv_fmt->audio_codec;
- c->codec_type = AVMEDIA_TYPE_AUDIO;
-- c->sample_fmt = SAMPLE_FMT_S16;
-+ c->sample_fmt = AV_SAMPLE_FMT_S16;
-
- /* put sample parameters */
- c->bit_rate = audio_bitrate;
-@@ -613,12 +613,7 @@ static int ffmpegdrv_init_file(void)
- if (!video_init_done || !audio_init_done)
- return 0;
-
-- if ((*ffmpeglib.p_av_set_parameters)(ffmpegdrv_oc, NULL) < 0) {
-- log_debug("ffmpegdrv: Invalid output format parameters");
-- return -1;
-- }
--
-- (*ffmpeglib.p_dump_format)(ffmpegdrv_oc, 0, ffmpegdrv_oc->filename, 1);
-+ (*ffmpeglib.p_av_dump_format)(ffmpegdrv_oc, 0, ffmpegdrv_oc->filename, 1);
-
- if (video_st && (ffmpegdrv_open_video(ffmpegdrv_oc, video_st) < 0)) {
- ui_error(translate_text(IDGS_FFMPEG_CANNOT_OPEN_VSTREAM));
-@@ -632,8 +627,8 @@ static int ffmpegdrv_init_file(void)
- }
-
- if (!(ffmpegdrv_fmt->flags & AVFMT_NOFILE)) {
-- if ((*ffmpeglib.p_url_fopen)(&ffmpegdrv_oc->pb, ffmpegdrv_oc->filename,
-- URL_WRONLY) < 0)
-+ if ((*ffmpeglib.p_avio_open)(&ffmpegdrv_oc->pb, ffmpegdrv_oc->filename,
-+ AVIO_FLAG_WRITE) < 0)
- {
- ui_error(translate_text(IDGS_FFMPEG_CANNOT_OPEN_S), ffmpegdrv_oc->filename);
- screenshot_stop_recording();
-@@ -642,7 +637,7 @@ static int ffmpegdrv_init_file(void)
-
- }
-
-- (*ffmpeglib.p_av_write_header)(ffmpegdrv_oc);
-+ (*ffmpeglib.p_avformat_write_header)(ffmpegdrv_oc,NULL);
-
- log_debug("ffmpegdrv: Initialized file successfully");
-
-@@ -724,7 +719,7 @@ static int ffmpegdrv_close(screenshot_t
- (*ffmpeglib.p_av_write_trailer)(ffmpegdrv_oc);
- if (!(ffmpegdrv_fmt->flags & AVFMT_NOFILE)) {
- /* close the output file */
-- (*ffmpeglib.p_url_fclose)(ffmpegdrv_oc->pb);
-+ (*ffmpeglib.p_avio_close)(ffmpegdrv_oc->pb);
- }
- }
-
---- vice-2.4.orig/src/gfxoutputdrv/ffmpeglib.c
-+++ vice-2.4/src/gfxoutputdrv/ffmpeglib.c
-@@ -208,13 +208,12 @@ static int load_avformat(ffmpeglib_t *li
- GET_SYMBOL_AND_TEST_AVFORMAT(av_init_packet);
- GET_SYMBOL_AND_TEST_AVFORMAT(av_register_all);
- GET_SYMBOL_AND_TEST_AVFORMAT(av_new_stream);
-- GET_SYMBOL_AND_TEST_AVFORMAT(av_set_parameters);
-- GET_SYMBOL_AND_TEST_AVFORMAT(av_write_header);
-+ GET_SYMBOL_AND_TEST_AVFORMAT(avformat_write_header);
- GET_SYMBOL_AND_TEST_AVFORMAT(av_write_frame);
- GET_SYMBOL_AND_TEST_AVFORMAT(av_write_trailer);
-- GET_SYMBOL_AND_TEST_AVFORMAT(url_fopen);
-- GET_SYMBOL_AND_TEST_AVFORMAT(url_fclose);
-- GET_SYMBOL_AND_TEST_AVFORMAT(dump_format);
-+ GET_SYMBOL_AND_TEST_AVFORMAT(avio_open);
-+ GET_SYMBOL_AND_TEST_AVFORMAT(avio_close);
-+ GET_SYMBOL_AND_TEST_AVFORMAT(av_dump_format);
- GET_SYMBOL_AND_TEST_AVFORMAT(av_guess_format);
- #ifndef HAVE_FFMPEG_SWSCALE
- GET_SYMBOL_AND_TEST_AVFORMAT(img_convert);
-@@ -240,13 +239,12 @@ static void free_avformat(ffmpeglib_t *l
- lib->p_av_init_packet = NULL;
- lib->p_av_register_all = NULL;
- lib->p_av_new_stream = NULL;
-- lib->p_av_set_parameters = NULL;
-- lib->p_av_write_header = NULL;
-+ lib->p_avformat_write_header = NULL;
- lib->p_av_write_frame = NULL;
- lib->p_av_write_trailer = NULL;
-- lib->p_url_fopen = NULL;
-- lib->p_url_fclose = NULL;
-- lib->p_dump_format = NULL;
-+ lib->p_avio_open = NULL;
-+ lib->p_avio_close = NULL;
-+ lib->p_av_dump_format = NULL;
- lib->p_av_guess_format = NULL;
- #ifndef HAVE_FFMPEG_SWSCALE
- lib->p_img_convert = NULL;
---- vice-2.4.orig/src/gfxoutputdrv/ffmpeglib.h
-+++ vice-2.4/src/gfxoutputdrv/ffmpeglib.h
-@@ -80,13 +80,12 @@ typedef int (*avpicture_get_size_t) (int
- typedef void (*av_init_packet_t) (AVPacket *pkt);
- typedef void (*av_register_all_t) (void);
- typedef AVStream* (*av_new_stream_t) (AVFormatContext*, int);
--typedef int (*av_set_parameters_t) (AVFormatContext*, AVFormatParameters*);
--typedef int (*av_write_header_t) (AVFormatContext*);
-+typedef int (*avformat_write_header_t) (AVFormatContext*,AVDictionary **);
- typedef int (*av_write_frame_t) (AVFormatContext*, AVPacket*);
- typedef int (*av_write_trailer_t) (AVFormatContext*);
--typedef int (*url_fopen_t) (ByteIOContext**, const char*, int);
--typedef int (*url_fclose_t) (ByteIOContext*);
--typedef void (*dump_format_t) (AVFormatContext *, int, const char*, int);
-+typedef int (*avio_open_t) (AVIOContext**, const char*, int);
-+typedef int (*avio_close_t) (AVIOContext*);
-+typedef void (*av_dump_format_t) (AVFormatContext *, int, const char*, int);
- typedef AVOutputFormat* (*av_guess_format_t) (const char*, const char*, const char*);
- typedef int (*img_convert_t) (AVPicture*, int, AVPicture*, int, int, int);
-
-@@ -118,13 +117,12 @@ struct ffmpeglib_s {
- av_init_packet_t p_av_init_packet;
- av_register_all_t p_av_register_all;
- av_new_stream_t p_av_new_stream;
-- av_set_parameters_t p_av_set_parameters;
-- av_write_header_t p_av_write_header;
-+ avformat_write_header_t p_avformat_write_header;
- av_write_frame_t p_av_write_frame;
- av_write_trailer_t p_av_write_trailer;
-- url_fopen_t p_url_fopen;
-- url_fclose_t p_url_fclose;
-- dump_format_t p_dump_format;
-+ avio_open_t p_avio_open;
-+ avio_close_t p_avio_close;
-+ av_dump_format_t p_av_dump_format;
- av_guess_format_t p_av_guess_format;
- #ifndef HAVE_FFMPEG_SWSCALE
- img_convert_t p_img_convert;
diff --git a/app-emulation/vice/files/vice-2.4.20-autotools.patch b/app-emulation/vice/files/vice-2.4.20-autotools.patch
deleted file mode 100644
index 7bebd2800e..0000000000
--- a/app-emulation/vice/files/vice-2.4.20-autotools.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- vice-2.4.7.orig/configure.ac
-+++ vice-2.4.7/configure.ac
-@@ -124,7 +118,7 @@
- AC_SUBST(VICE_VERSION)
-
- AM_INIT_AUTOMAKE(vice, $VICE_VERSION)
--AM_CONFIG_HEADER(src/config.h)
-+AC_CONFIG_HEADERS(src/config.h)
-
- if test x"$VICE_VERSION_BUILD" = "x" -o x"$VICE_VERSION_BUILD" = "x0" ; then
- VERSION_RC=$VICE_VERSION_MAJOR","$VICE_VERSION_MINOR",0,0"
diff --git a/app-emulation/vice/files/vice-2.4.20-format.patch b/app-emulation/vice/files/vice-2.4.20-format.patch
deleted file mode 100644
index 1c782fd61e..0000000000
--- a/app-emulation/vice/files/vice-2.4.20-format.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/main.c.old 2015-10-19 17:25:07.549164652 +0200
-+++ src/main.c 2015-10-19 17:25:33.106694706 +0200
-@@ -227,7 +227,7 @@
- for (i = 0; core_team[i].name; i++) {
- n += strlen(core_team[i].name);
- if (n > 74) {
-- log_message(LOG_DEFAULT, tmp);
-+ log_message(LOG_DEFAULT, "%s", tmp);
- n = 0; *tmp = 0;
- }
- strcat(tmp, core_team[i].name);
-@@ -235,7 +235,7 @@
- strcat(tmp, ", ");
- } else {
- strcat(tmp, ".");
-- log_message(LOG_DEFAULT, tmp);
-+ log_message(LOG_DEFAULT, "%s", tmp);
- }
- }
- lib_free(tmp);
diff --git a/app-emulation/vice/files/vice-2.4.20-xf86extensions.patch b/app-emulation/vice/files/vice-2.4.20-xf86extensions.patch
deleted file mode 100644
index 357d686665..0000000000
--- a/app-emulation/vice/files/vice-2.4.20-xf86extensions.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/trunk/vice/src/arch/unix/x11/gnome/x11ui.c
-+++ b/trunk/vice/src/arch/unix/x11/gnome/x11ui.c
-@@ -102,9 +102,10 @@
- #include "ui-threads.h"
- #endif
-
--#ifdef USE_XF86_EXTENSIONS
-+#if defined(USE_XF86_EXTENSIONS) || !defined(HAVE_VTE)
- #include <gdk/gdkx.h>
- #endif
-+
- #include "x11ui.h"
-
- #ifdef DEBUG_X11UI
-
diff --git a/app-emulation/vice/metadata.xml b/app-emulation/vice/metadata.xml
index 9364cf9ad6..ff9234728a 100644
--- a/app-emulation/vice/metadata.xml
+++ b/app-emulation/vice/metadata.xml
@@ -1,15 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>games</herd>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
<use>
<flag name="ethernet">Enable ethernet emulation</flag>
<flag name="fullscreen">Enable the ability to run fullscreen</flag>
- <flag name="gtk2">Use GTK+2 for GUI instead of GTK+3</flag>
- <flag name="memmap">Enable extra monitor features</flag>
<flag name="sdlsound">Use <pkg>media-libs/libsdl</pkg> for sound support</flag>
<flag name="vte">Enable support for <pkg>x11-libs/vte</pkg> in the GTK+ interface</flag>
- <flag name="xrandr">Enable support for the X xrandr extension</flag>
</use>
<upstream>
<remote-id type="sourceforge">vice-emu</remote-id>
diff --git a/app-emulation/vice/vice-2.4.20.ebuild b/app-emulation/vice/vice-2.4.20.ebuild
deleted file mode 100644
index 1ee7dc6d33..0000000000
--- a/app-emulation/vice/vice-2.4.20.ebuild
+++ /dev/null
@@ -1,173 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-inherit autotools eutils toolchain-funcs flag-o-matic games
-
-DESCRIPTION="The Versatile Commodore 8-bit Emulator"
-HOMEPAGE="http://vice-emu.sourceforge.net/"
-SRC_URI="mirror://sourceforge/vice-emu/releases/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 ppc ~sparc x86"
-IUSE="Xaw3d alsa ethernet ffmpeg fullscreen +gtk2 ipv6 lame nls oss png pulseaudio sdl +sdlsound threads vte zlib"
-
-# upstream says gtk3 and sdl2 shouldn't be exposed yet.
-#REQUIRED_USE="?? ( gtk2 gtk3 sdl )"
-REQUIRED_USE="?? ( gtk2 sdl )"
-
-GTK_COMMON="
- x11-libs/pango
- x11-libs/cairo"
-# gtk3? (
-# x11-libs/gtk+:3
-# vte? ( x11-libs/vte:2.90 )
-# ${GTK_COMMON}
-# )
-RDEPEND="
- virtual/jpeg:0
- virtual/opengl
- media-libs/giflib
- alsa? ( media-libs/alsa-lib )
- pulseaudio? ( media-sound/pulseaudio )
- sdlsound? ( media-libs/libsdl[sound] )
- ethernet? (
- >=net-libs/libpcap-0.9.8
- >=net-libs/libnet-1.1.2.1:1.1
- )
- ffmpeg? ( virtual/ffmpeg )
- lame? ( media-sound/lame )
- nls? ( virtual/libintl )
- png? ( media-libs/libpng:0 )
- zlib? ( sys-libs/zlib )
- sdl? (
- media-libs/libsdl[joystick,video]
- )
- !sdl? (
- fullscreen? (
- x11-libs/libXrandr
- x11-libs/libXxf86vm )
- x11-libs/libX11
- x11-libs/libXext
- sys-libs/readline
- )
- gtk2? (
- x11-libs/gtk+:2
- vte? ( x11-libs/vte:0 )
- x11-libs/gtkglext
- ${GTK_COMMON}
- )
- !sdl? ( !gtk2? (
- x11-libs/libXmu
- x11-libs/libXpm
- x11-libs/libXt
- x11-libs/libXv
- Xaw3d? ( x11-libs/libXaw3d )
- !Xaw3d? ( x11-libs/libXaw )
- ) )
- "
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- !sdl? (
- fullscreen? ( x11-proto/xf86vidmodeproto )
- !gtk2? (
- x11-libs/libICE
- x11-libs/libSM
- )
- )
- x11-apps/bdftopcf
- x11-apps/mkfontdir
- x11-proto/xproto
- x11-proto/xextproto
- media-libs/fontconfig
- x11-proto/videoproto
- nls? ( sys-devel/gettext )"
-
-src_prepare() {
- epatch \
- "${FILESDIR}"/${P}-autotools.patch \
- "${FILESDIR}"/${P}-format.patch \
- "${FILESDIR}"/${P}-xf86extensions.patch
- sed -i \
- -e 's/building//' \
- doc/Makefile.am || die
- sed -i \
- -e "/^docdir =/s:=.*:=/usr/share/doc/${PF}:" \
- doc/Makefile.am \
- doc/readmes/Makefile.am || die
- sed -i \
- -e "/^docdir =/s:=.*:=/usr/share/doc/${PF}/html:" \
- doc/html/Makefile.am || die
- sed -i \
- -e "s:/usr/local/lib/VICE:$(games_get_libdir)/${PN}:" \
- man/vice.1 \
- $(grep -rl --exclude="*texi" /usr/local/lib doc) || die
- sed -i \
- -e "/VICEDIR=/s:=.*:=\"$(games_get_libdir)/${PN}\";:" \
- configure.ac || die
- sed -i \
- -e "s:\(#define LIBDIR \).*:\1\"$(games_get_libdir)/${PN}\":" \
- -e "s:\(#define DOCDIR \).*:\1\"/usr/share/doc/${PF}\":" \
- src/arch/unix/archdep.h \
- src/arch/sdl/archdep_unix.h || die
- rm -rf src/lib/{libffmpeg,liblame} || die
- sed -i \
- -e '/SUBDIRS/s/libffmpeg//;' \
- -e '/SUBDIRS/s/liblame//;' \
- src/lib/Makefile.am || die
- AT_NO_RECURSIVE=1 eautoreconf
-}
-
-src_configure() {
- local gui_arg snd_arg
-
- snd_arg+=" $(use_with alsa)"
- snd_arg+=" $(use_with oss)"
- snd_arg+=" $(use_with pulseaudio pulse)"
- snd_arg+=" $(use_with sdlsound)"
-
- gui_arg+=" $(use_enable sdl sdlui)"
- # The gtk UI code has raw calls to XOpenDisplay and
- # is missing -lX11 if vte doesn't pull it in.
- #if use gtk2 || use gtk3 ; then
- if use gtk2 ; then
- use vte || append-libs -lX11
- fi
- gui_arg+=" $(use_enable gtk2 gnomeui)"
- #gui_arg+=" $(use_enable gtk3 gnomeui3)"
- gui_arg+=" $(use_enable Xaw3d xaw3d)"
-
- # --with-readline is forced to avoid using the embedded copy
- # don't try to actually run fc-cache (bug #280976)
- FCCACHE=/bin/true \
- PKG_CONFIG=$(tc-getPKG_CONFIG) \
- egamesconf \
- --enable-parsid \
- --with-resid \
- --with-readline \
- --without-arts \
- --without-midas \
- $(use_enable ethernet) \
- $(use_enable ffmpeg) \
- $(use_enable ffmpeg external-ffmpeg) \
- $(use_enable fullscreen) \
- $(use_enable ipv6) \
- $(use_enable lame) \
- $(use_enable nls) \
- $(use_enable vte) \
- $(use_with png) \
- $(use_with threads uithreads) \
- $(use_with zlib) \
- ${gui_arg} \
- ${snd_arg} \
- --disable-option-checking
- # --disable-option-checking has to be last
-}
-
-src_install() {
- DOCS="AUTHORS ChangeLog FEEDBACK README" \
- default
- prepgamesdirs
-}
diff --git a/app-emulation/vice/vice-2.4.22.ebuild b/app-emulation/vice/vice-2.4.22.ebuild
index a186624904..a5d8a2818f 100644
--- a/app-emulation/vice/vice-2.4.22.ebuild
+++ b/app-emulation/vice/vice-2.4.22.ebuild
@@ -11,7 +11,7 @@ SRC_URI="mirror://sourceforge/vice-emu/releases/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+KEYWORDS="amd64 ppc ~sparc x86"
IUSE="Xaw3d alsa ethernet ffmpeg fullscreen +gtk ipv6 lame nls oss png pulseaudio sdl +sdlsound threads vte zlib"
# upstream says gtk3 and sdl2 shouldn't be exposed yet.
diff --git a/app-emulation/vice/vice-2.4.ebuild b/app-emulation/vice/vice-2.4.ebuild
deleted file mode 100644
index 21350933eb..0000000000
--- a/app-emulation/vice/vice-2.4.ebuild
+++ /dev/null
@@ -1,117 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-inherit autotools eutils toolchain-funcs games
-
-DESCRIPTION="The Versatile Commodore 8-bit Emulator"
-HOMEPAGE="http://vice-emu.sourceforge.net/"
-SRC_URI="mirror://sourceforge/vice-emu/releases/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc ~sparc x86"
-IUSE="Xaw3d alsa gnome nls png readline sdl ipv6 memmap ethernet oss zlib X gif jpeg xv dga xrandr ffmpeg lame pulseaudio"
-
-RDEPEND="
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXpm
- x11-libs/libICE
- x11-libs/libSM
- x11-libs/libXt
- x11-libs/libXxf86vm
- x11-apps/xset
- Xaw3d? ( x11-libs/libXaw3d )
- !Xaw3d? ( !gnome? ( x11-libs/libXaw ) )
- alsa? ( media-libs/alsa-lib )
- gnome? (
- x11-libs/gtk+:2
- x11-libs/vte:0
- dev-libs/atk
- x11-libs/pango
- )
- lame? ( media-sound/lame )
- ffmpeg? ( virtual/ffmpeg )
- ethernet? (
- >=net-libs/libpcap-0.9.8
- >=net-libs/libnet-1.1.2.1
- )
- nls? ( virtual/libintl )
- png? ( media-libs/libpng:0 )
- readline? ( sys-libs/readline )
- sdl? ( media-libs/libsdl )
- gif? ( media-libs/giflib )
- jpeg? ( virtual/jpeg )
- xv? ( x11-libs/libXv )
- dga? ( x11-libs/libXxf86dga )
- xrandr? ( x11-libs/libXrandr )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- x11-apps/bdftopcf
- x11-apps/mkfontdir
- x11-proto/xproto
- x11-proto/xf86vidmodeproto
- x11-proto/xextproto
- media-libs/fontconfig
- dga? ( x11-proto/xf86dgaproto )
- xv? ( x11-proto/videoproto )
- nls? ( sys-devel/gettext )"
-
-src_prepare() {
- epatch "${FILESDIR}"/${P}-arm.patch \
- "${FILESDIR}"/${P}-ffmpeg-1.patch \
- "${FILESDIR}"/${P}-buffer.patch \
- "${FILESDIR}"/${P}-autotools.patch
- sed -i \
- -e "s:/usr/local/lib/VICE:${GAMES_DATADIR}/${PN}:" \
- man/vice.1 \
- $(grep -rl --exclude="*texi" /usr/local/lib doc) \
- || die
- sed -i \
- -e '/VICE_ARG_LIST_CHECK/d' \
- -e "/VICEDIR=/s:=.*:=\"${GAMES_DATADIR}/${PN}\";:" \
- configure.in || die
- sed -i \
- -e "s:\(#define LIBDIR \).*:\1\"${GAMES_DATADIR}/${PN}\":" \
- -e "s:\(#define DOCDIR \).*:\1\"/usr/share/doc/${PF}\":" \
- src/arch/unix/archdep.h \
- src/arch/sdl/archdep_unix.h
- mv configure.in configure.ac || die
- AT_NO_RECURSIVE=1 eautoreconf
-}
-
-src_configure() {
- # don't try to actually run fc-cache (bug #280976)
- FCCACHE=/bin/true \
- PKG_CONFIG=$(tc-getPKG_CONFIG) \
- egamesconf \
- --enable-fullscreen \
- --enable-parsid \
- --with-resid \
- --without-arts \
- --without-midas \
- $(use_enable ffmpeg) \
- $(use_enable lame) \
- $(use_enable gnome gnomeui) \
- $(use_enable nls) \
- $(use_with Xaw3d xaw3d) \
- $(use_with alsa) \
- $(use_with pulseaudio pulse) \
- $(use_with png) \
- $(use_with readline) \
- $(use_with sdl sdlsound) \
- $(use_enable ipv6) \
- $(use oss || echo --without-oss) \
- $(use_enable memmap) \
- $(use_enable ethernet) \
- $(use_with zlib) \
- $(use_with X x)
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- dodoc AUTHORS ChangeLog FEEDBACK README
- prepgamesdirs
-}
diff --git a/app-emulation/virt-manager/Manifest b/app-emulation/virt-manager/Manifest
index 9dde0f24c6..452a7d4309 100644
--- a/app-emulation/virt-manager/Manifest
+++ b/app-emulation/virt-manager/Manifest
@@ -1,2 +1,4 @@
DIST virt-manager-1.1.0.tar.gz 2509440 SHA256 ab0906cb15a132f1893f89ac4ca211c6c2c9c2d1860fbc285edbf9451c0f7941 SHA512 8c3aa56e13f1ec4a67e353b15b4f61bdc067300dbc459790b04e5f5258bf526694ec712a9f74d7af48ddd271081d48ae98d576f4bc5ed139e046620a9aa64e2d WHIRLPOOL aaffdf75b313c88a10648503bf552357139aff2a1624da1b17cac3975fec21ad6c3ccce00999ef8f4f1f4731aabf5ae2c07e70e453785caefe932c3b0deab456
DIST virt-manager-1.2.1.tar.gz 2524812 SHA256 74bba80e72e5e1b4d84f1d5b7211b874e9c4ae00a0a44149d1721acab38ce6be SHA512 b99144f498bc2f28c98bb2395e0a9c2fe244a3da476892698ff0f1fd4a6d36a8ddf53e13561593c5e94932ce8176a27092c818ed218634fc5201666ad6792791 WHIRLPOOL d2402087453ec720add0a815433e9feda1bd36e253178dfe1cf27f52e0ad41a13e1e1d6a9977b63485ed8acc257d93c903625b775c6ab130ea7235e52be0e8fc
+DIST virt-manager-1.3.0.tar.gz 2564090 SHA256 a6ebec0dd695b195778c5d710c7b6f1cd28d3ccb8b128fa006eebb35b156a315 SHA512 8cba9ad45aa3b070e29ec72cc45c5eb88231dfb0ef2a24cdc913acdf30158d29cc0b18e23f168fb5eafa4d890b5cd286a04669210b1411701adc912e29274101 WHIRLPOOL 379c54e1541b2186b1c218849758a917a8913e92603f8c492e707c206ef1fb7084bb7f21c474d6829e613b5ba524684562c1b3d696823478909f2a9d5a0f780f
+DIST virt-manager-1.3.2.tar.gz 2564573 SHA256 270c1f631fd029fee5291e83f50d69e261db666aa952c184643bc6cece77fdb3 SHA512 a60efa8ecd0a3fad50f2ab3b7f27347e3fc7ac1928e7bfc13860f6fed6d929399fbd072d1dfe2424de38a3926fcf03d0092a43b958601bc6af6f87f2cad0aaab WHIRLPOOL b1e59c17d5891aa19a2965a93d601e7f677141b1730ad3a717b97e9d799328bc94f276c12c53f7ea61f1d67458ca7d7a37d5dedf49a1a95a446b1651a6e575a3
diff --git a/app-emulation/virt-manager/metadata.xml b/app-emulation/virt-manager/metadata.xml
index 26005ac4f6..024a5205e5 100644
--- a/app-emulation/virt-manager/metadata.xml
+++ b/app-emulation/virt-manager/metadata.xml
@@ -1,14 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
+ <maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
<use>
- <flag name='policykit'>
+ <flag name="policykit">
Enables <pkg>sys-auth/polkit</pkg> authentication support,
required when using <pkg>app-emulation/libvirt</pkg> with
PolicyKit authentication
</flag>
- <flag name='sasl'>
+ <flag name="sasl">
Depend on the proper libraries needed to connect to SASL-enabled
libvirtd instances (e.g. Kerberos-protected instances).
</flag>
diff --git a/app-emulation/virt-manager/virt-manager-1.3.0-r1.ebuild b/app-emulation/virt-manager/virt-manager-1.3.0-r1.ebuild
new file mode 100644
index 0000000000..9a6fb846d3
--- /dev/null
+++ b/app-emulation/virt-manager/virt-manager-1.3.0-r1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+DISTUTILS_SINGLE_IMPL=1
+
+inherit gnome2 distutils-r1
+
+DESCRIPTION="A graphical tool for administering virtual machines"
+HOMEPAGE="http://virt-manager.org"
+
+if [[ ${PV} = *9999* ]]; then
+ inherit git-2
+ SRC_URI=""
+ KEYWORDS=""
+ EGIT_REPO_URI="https://github.com/virt-manager/virt-manager.git"
+else
+ SRC_URI="http://virt-manager.org/download/sources/${PN}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+VM_LINGUAS=( as bg bn_IN bs ca cmn cs da de en_GB es fi fr gu hi hr hu is
+ it ja kn ko ml mr ms nb nl or pa pl pt pt_BR ro ru sk sr sr@latin sv ta te
+ tr uk vi zh_CN zh_TW )
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="gnome-keyring gtk policykit sasl ${VM_LINGUAS[@]/#/linguas_}"
+
+RDEPEND="!app-emulation/virtinst
+ dev-python/libvirt-python[${PYTHON_USEDEP}]
+ >=app-emulation/libvirt-glib-0.0.9[introspection,python,${PYTHON_USEDEP}]
+ ${PYTHON_DEPS}
+ dev-libs/libxml2[python,${PYTHON_USEDEP}]
+ dev-python/ipaddr[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ >=sys-libs/libosinfo-0.2.10[introspection]
+ gtk? (
+ x11-libs/gtk+:3[introspection]
+ gnome-base/dconf
+ >=net-libs/gtk-vnc-0.3.8[gtk3,introspection,python,${PYTHON_USEDEP}]
+ net-misc/spice-gtk[usbredir,gtk3,introspection,python,sasl?,${PYTHON_USEDEP}]
+ net-misc/x11-ssh-askpass
+ x11-libs/vte:2.90[introspection]
+ gnome-keyring? ( dev-python/gnome-keyring-python )
+ policykit? ( sys-auth/polkit[introspection] )
+ x11-themes/gnome-icon-theme
+ )"
+DEPEND="${RDEPEND}
+ dev-lang/perl
+ dev-util/intltool"
+
+DOCS=( README NEWS )
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ local lang
+ for lang in ${VM_LINGUAS[@]}; do
+ use linguas_${lang} || rm -v "po/${lang}.po" || die
+ done
+}
+
+distutils-r1_python_compile() {
+ local defgraphics=
+
+ esetup.py configure \
+ --qemu-user=qemu \
+ --default-graphics=spice
+}
+
+src_install() {
+ local mydistutilsargs=( --no-update-icon-cache --no-compile-schemas )
+
+ distutils-r1_src_install
+
+ python_fix_shebang \
+ "${ED}"/usr/share/virt-manager/virt-{clone,convert,install,manager}
+}
+
+pkg_preinst() {
+ if use gtk; then
+ gnome2_pkg_preinst
+
+ cd "${ED}"
+ export GNOME2_ECLASS_ICONS=$(find 'usr/share/virt-manager/icons' -maxdepth 1 -mindepth 1 -type d 2> /dev/null)
+ else
+ rm -rf "${ED}/usr/share/virt-manager/virtManager"
+ rm -f "${ED}/usr/share/virt-manager/virt-manager"
+ rm -rf "${ED}/usr/share/virt-manager/ui/"
+ rm -rf "${ED}/usr/share/virt-manager/icons/"
+ rm -rf "${ED}/usr/share/man/man1/virt-manager.1*"
+ rm -rf "${ED}/usr/share/icons/"
+ rm -rf "${ED}/usr/share/applications/virt-manager.desktop"
+ rm -rf "${ED}/usr/bin/virt-manager"
+ fi
+}
+
+pkg_postinst() {
+ use gtk && gnome2_pkg_postinst
+}
diff --git a/app-emulation/virt-manager/virt-manager-1.3.2.ebuild b/app-emulation/virt-manager/virt-manager-1.3.2.ebuild
new file mode 100644
index 0000000000..dced9d8224
--- /dev/null
+++ b/app-emulation/virt-manager/virt-manager-1.3.2.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+DISTUTILS_SINGLE_IMPL=1
+
+inherit gnome2 distutils-r1
+
+DESCRIPTION="A graphical tool for administering virtual machines"
+HOMEPAGE="http://virt-manager.org"
+
+if [[ ${PV} = *9999* ]]; then
+ inherit git-2
+ SRC_URI=""
+ KEYWORDS=""
+ EGIT_REPO_URI="https://github.com/virt-manager/virt-manager.git"
+else
+ SRC_URI="http://virt-manager.org/download/sources/${PN}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+VM_LINGUAS=( as bg bn_IN bs ca cmn cs da de en_GB es fi fr gu hi hr hu is
+ it ja kn ko ml mr ms nb nl or pa pl pt pt_BR ro ru sk sr sr@latin sv ta te
+ tr uk vi zh_CN zh_TW )
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="gnome-keyring gtk policykit sasl ${VM_LINGUAS[@]/#/linguas_}"
+
+RDEPEND="!app-emulation/virtinst
+ dev-python/libvirt-python[${PYTHON_USEDEP}]
+ >=app-emulation/libvirt-glib-0.0.9[introspection,python,${PYTHON_USEDEP}]
+ ${PYTHON_DEPS}
+ dev-libs/libxml2[python,${PYTHON_USEDEP}]
+ dev-python/ipaddr[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ >=sys-libs/libosinfo-0.2.10[introspection]
+ gtk? (
+ x11-libs/gtk+:3[introspection]
+ gnome-base/dconf
+ >=net-libs/gtk-vnc-0.3.8[gtk3,introspection,python,${PYTHON_USEDEP}]
+ net-misc/spice-gtk[usbredir,gtk3,introspection,python,sasl?,${PYTHON_USEDEP}]
+ net-misc/x11-ssh-askpass
+ || ( x11-libs/vte:2.91[introspection] x11-libs/vte:2.90[introspection] )
+ gnome-keyring? ( dev-python/gnome-keyring-python )
+ policykit? ( sys-auth/polkit[introspection] )
+ x11-themes/gnome-icon-theme
+ )"
+DEPEND="${RDEPEND}
+ dev-lang/perl
+ dev-util/intltool"
+
+DOCS=( README NEWS )
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ local lang
+ for lang in ${VM_LINGUAS[@]}; do
+ use linguas_${lang} || rm -v "po/${lang}.po" || die
+ done
+}
+
+distutils-r1_python_compile() {
+ local defgraphics=
+
+ esetup.py configure \
+ --qemu-user=qemu \
+ --default-graphics=spice
+}
+
+src_install() {
+ local mydistutilsargs=( --no-update-icon-cache --no-compile-schemas )
+
+ distutils-r1_src_install
+
+ python_fix_shebang \
+ "${ED}"/usr/share/virt-manager/virt-{clone,convert,install,manager}
+}
+
+pkg_preinst() {
+ if use gtk; then
+ gnome2_pkg_preinst
+
+ cd "${ED}"
+ export GNOME2_ECLASS_ICONS=$(find 'usr/share/virt-manager/icons' -maxdepth 1 -mindepth 1 -type d 2> /dev/null)
+ else
+ rm -rf "${ED}/usr/share/virt-manager/virtManager"
+ rm -f "${ED}/usr/share/virt-manager/virt-manager"
+ rm -rf "${ED}/usr/share/virt-manager/ui/"
+ rm -rf "${ED}/usr/share/virt-manager/icons/"
+ rm -rf "${ED}/usr/share/man/man1/virt-manager.1*"
+ rm -rf "${ED}/usr/share/icons/"
+ rm -rf "${ED}/usr/share/applications/virt-manager.desktop"
+ rm -rf "${ED}/usr/bin/virt-manager"
+ fi
+}
+
+pkg_postinst() {
+ use gtk && gnome2_pkg_postinst
+}
diff --git a/app-emulation/virt-manager/virt-manager-9999.ebuild b/app-emulation/virt-manager/virt-manager-9999.ebuild
index 87e7fde7cb..9a6fb846d3 100644
--- a/app-emulation/virt-manager/virt-manager-9999.ebuild
+++ b/app-emulation/virt-manager/virt-manager-9999.ebuild
@@ -22,9 +22,13 @@ else
KEYWORDS="~amd64 ~x86"
fi
+VM_LINGUAS=( as bg bn_IN bs ca cmn cs da de en_GB es fi fr gu hi hr hu is
+ it ja kn ko ml mr ms nb nl or pa pl pt pt_BR ro ru sk sr sr@latin sv ta te
+ tr uk vi zh_CN zh_TW )
+
LICENSE="GPL-2"
SLOT="0"
-IUSE="gnome-keyring gtk policykit sasl"
+IUSE="gnome-keyring gtk policykit sasl ${VM_LINGUAS[@]/#/linguas_}"
RDEPEND="!app-emulation/virtinst
dev-python/libvirt-python[${PYTHON_USEDEP}]
@@ -38,7 +42,7 @@ RDEPEND="!app-emulation/virtinst
gtk? (
x11-libs/gtk+:3[introspection]
gnome-base/dconf
- >=net-libs/gtk-vnc-0.3.8[gtk3,introspection]
+ >=net-libs/gtk-vnc-0.3.8[gtk3,introspection,python,${PYTHON_USEDEP}]
net-misc/spice-gtk[usbredir,gtk3,introspection,python,sasl?,${PYTHON_USEDEP}]
net-misc/x11-ssh-askpass
x11-libs/vte:2.90[introspection]
@@ -54,6 +58,11 @@ DOCS=( README NEWS )
src_prepare() {
distutils-r1_src_prepare
+
+ local lang
+ for lang in ${VM_LINGUAS[@]}; do
+ use linguas_${lang} || rm -v "po/${lang}.po" || die
+ done
}
distutils-r1_python_compile() {
@@ -64,10 +73,13 @@ distutils-r1_python_compile() {
--default-graphics=spice
}
-python_install_all() {
- distutils-r1_python_install_all
+src_install() {
+ local mydistutilsargs=( --no-update-icon-cache --no-compile-schemas )
+
+ distutils-r1_src_install
+
python_fix_shebang \
- "${ED}"/usr/share/virt-manager/virt-{clone,convert,image,install,manager}
+ "${ED}"/usr/share/virt-manager/virt-{clone,convert,install,manager}
}
pkg_preinst() {
diff --git a/app-emulation/virt-viewer/Manifest b/app-emulation/virt-viewer/Manifest
index 307c60892f..85a94395de 100644
--- a/app-emulation/virt-viewer/Manifest
+++ b/app-emulation/virt-viewer/Manifest
@@ -1,2 +1,3 @@
-DIST virt-viewer-0.5.6.tar.gz 664421 SHA256 b397e9da15c454e8b53765cef65cdbf1b9939d4f9976965b7942ae9a9aa45857 SHA512 a4a7aa4dfe7fa9d5ae8e907831b27ad04b6337c6feaf5c5d2635ea308fa8eef8f9b138fd37ef2a574cd4b65b2f45cba5103003ee17db6430985edb8817323668 WHIRLPOOL 8843416e3b2f75e2e258f6e641b262cfd60b6e126565d6408af0ad3fc93351cd5ef1ed2eea87f2dfed4b0849ecd9ab92ec0863e81157e0e16f5adc2bf2e122df
DIST virt-viewer-2.0.tar.gz 771874 SHA256 e9c583bcb5acdabac6a8a13eff6ce4e093a3050645771628f832e15ce685d437 SHA512 271ded11e4af3f1dd208c7b8ab7d1c0cd24f641a79e05178d0762a03de3dcf99ae7432acde2b67460e7a98d1fa562587b6b08cf06ab3cf80f025a7b259e8203e WHIRLPOOL aba5eabc490c5b998dfb4b1f5bbac6ae43affc782ccf19072e3a23333607256ce65328e80d46673ab6c25e38ba1bcd8410c270e213d0e28534fd141fd7d90ed3
+DIST virt-viewer-3.0.tar.gz 832490 SHA256 6331fd64ef9e999e0943844ddc0f89d35bd91bcc9c8e919f7274500930e97144 SHA512 8a7ca7ef6315d63e15b5ed5232d82c1ce119468e7e0b098a4c2aaf7ef8b85b02070183275523f944ee8aa93e0d2feafa863f632eadc78d15bd4dfa81f0b2abd3 WHIRLPOOL d3fe3d9aea3c35e8554d0fe6bdecad47231f476d40e11f6303e54d8476aba524a9a6ce0edadb3302b903e5d7aec5ac5caaf28c376f7ffddc33ace23ee9dbcc48
+DIST virt-viewer-3.1.tar.gz 835147 SHA256 be4e49470b650fc22513c2c01f2e13e30ee2d494d0d7b319b6f414ca781078c7 SHA512 72deb289c32a315fc4e1d73148d0b0a366cf929ff9fb389b62d750d317d02a43e2bf3bc170f43d9f37a184d8c7754b3e282de404fbcfa59ff278a87e4aa0acaf WHIRLPOOL 90f47dfc79f1529272fae8fbaf7553c369a9c2161b63071037fcb5279050a5ff9391800922e2a43f5c37e133b13f6736b59f3574531e22ce7dd27d2de9c714cf
diff --git a/app-emulation/virt-viewer/files/virt-viewer-0.6.0-fix-c99-compat.patch b/app-emulation/virt-viewer/files/virt-viewer-0.6.0-fix-c99-compat.patch
deleted file mode 100644
index b6768381ad..0000000000
--- a/app-emulation/virt-viewer/files/virt-viewer-0.6.0-fix-c99-compat.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff --git a/src/virt-viewer-session.c b/src/virt-viewer-session.c
-index 20d5fb1..b600481 100644
---- a/src/virt-viewer-session.c
-+++ b/src/virt-viewer-session.c
-@@ -395,13 +395,14 @@ virt_viewer_session_on_monitor_geometry_changed(VirtViewerSession* self,
- gboolean all_fullscreen = TRUE;
- guint nmonitors = 0;
- GdkRectangle *monitors = NULL;
-+ GList *l;
-
- klass = VIRT_VIEWER_SESSION_GET_CLASS(self);
- if (!klass->apply_monitor_geometry)
- return;
-
- /* find highest monitor ID so we can create the sparse array */
-- for (GList *l = self->priv->displays; l; l = l->next) {
-+ for (l = self->priv->displays; l; l = l->next) {
- VirtViewerDisplay *d = VIRT_VIEWER_DISPLAY(l->data);
- guint nth = 0;
- g_object_get(d, "nth-display", &nth, NULL);
-@@ -410,7 +411,7 @@ virt_viewer_session_on_monitor_geometry_changed(VirtViewerSession* self,
- }
-
- monitors = g_new0(GdkRectangle, nmonitors);
-- for (GList *l = self->priv->displays; l; l = l->next) {
-+ for (l = self->priv->displays; l; l = l->next) {
- VirtViewerDisplay *d = VIRT_VIEWER_DISPLAY(l->data);
- guint nth = 0;
- GdkRectangle *rect = NULL;
diff --git a/app-emulation/virt-viewer/metadata.xml b/app-emulation/virt-viewer/metadata.xml
index cdeb87ceef..62904a2c95 100644
--- a/app-emulation/virt-viewer/metadata.xml
+++ b/app-emulation/virt-viewer/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>virtualization</herd>
+ <maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+ </maintainer>
<use>
<flag name="spice">Support connecting to SPICE-enabled virtual
machines.</flag>
@@ -9,4 +12,3 @@
machines.</flag>
</use>
</pkgmetadata>
-
diff --git a/app-emulation/virt-viewer/virt-viewer-0.5.6.ebuild b/app-emulation/virt-viewer/virt-viewer-3.0.ebuild
index 9cb96ba2ad..0e7c8b5778 100644
--- a/app-emulation/virt-viewer/virt-viewer-0.5.6.ebuild
+++ b/app-emulation/virt-viewer/virt-viewer-3.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
-inherit eutils gnome2 toolchain-funcs
+inherit eutils gnome2 fdo-mime
DESCRIPTION="Graphical console client for connecting to virtual machines"
HOMEPAGE="http://virt-manager.org/"
@@ -11,25 +11,25 @@ SRC_URI="http://virt-manager.org/download/sources/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="~amd64 ~x86"
IUSE="sasl +spice +vnc"
RDEPEND=">=app-emulation/libvirt-0.10.0[sasl?]
>=dev-libs/libxml2-2.6
x11-libs/gtk+:3
- spice? ( >=net-misc/spice-gtk-0.18[sasl?,gtk3] )
+ spice? ( >=net-misc/spice-gtk-0.30[sasl?,gtk3] )
vnc? ( >=net-libs/gtk-vnc-0.5.0[sasl?,gtk3] )"
DEPEND="${RDEPEND}
dev-lang/perl
>=dev-util/intltool-0.35.0
virtual/pkgconfig
- spice? ( >=app-emulation/spice-protocol-0.10.1 )"
+ spice? ( >=app-emulation/spice-protocol-0.12.10 )"
REQUIRED_USE="|| ( spice vnc )"
pkg_setup() {
G2CONF="$(use_with vnc gtk-vnc) $(use_with spice spice-gtk)"
- G2CONF="${G2CONF} --with-gtk=3.0"
+ G2CONF="${G2CONF} --with-gtk=3.0 --without-ovirt --disable-update-mimedb"
}
src_prepare() {
@@ -43,3 +43,7 @@ src_test() {
src_install() {
default
}
+
+pkg_postinst() {
+ fdo-mime_mime_database_update
+}
diff --git a/app-emulation/virt-viewer/virt-viewer-3.1.ebuild b/app-emulation/virt-viewer/virt-viewer-3.1.ebuild
new file mode 100644
index 0000000000..2aae4d7c57
--- /dev/null
+++ b/app-emulation/virt-viewer/virt-viewer-3.1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils gnome2 fdo-mime
+
+DESCRIPTION="Graphical console client for connecting to virtual machines"
+HOMEPAGE="http://virt-manager.org/"
+SRC_URI="http://virt-manager.org/download/sources/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="sasl +spice +vnc"
+
+RDEPEND=">=app-emulation/libvirt-0.10.0[sasl?]
+ >=dev-libs/libxml2-2.6
+ x11-libs/gtk+:3
+ spice? ( >=net-misc/spice-gtk-0.30[sasl?,gtk3] )
+ vnc? ( >=net-libs/gtk-vnc-0.5.0[sasl?,gtk3] )"
+DEPEND="${RDEPEND}
+ dev-lang/perl
+ >=dev-util/intltool-0.35.0
+ virtual/pkgconfig
+ spice? ( >=app-emulation/spice-protocol-0.12.10 )"
+
+REQUIRED_USE="|| ( spice vnc )"
+
+pkg_setup() {
+ G2CONF="$(use_with vnc gtk-vnc) $(use_with spice spice-gtk)"
+ G2CONF="${G2CONF} --with-gtk=3.0 --without-ovirt --disable-update-mimedb"
+}
+
+src_prepare() {
+ epatch_user
+}
+
+src_test() {
+ default
+}
+
+src_install() {
+ default
+}
+
+pkg_postinst() {
+ fdo-mime_mime_database_update
+}
diff --git a/app-emulation/virt-what/metadata.xml b/app-emulation/virt-what/metadata.xml
index 0bc914a7f9..5d38a8b1ce 100644
--- a/app-emulation/virt-what/metadata.xml
+++ b/app-emulation/virt-what/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>cardoe@gentoo.org</email>
<name>Doug Goldstein</name>
</maintainer>
<use>
- <flag name='dmi'>Use <pkg>sys-apps/dmidecode</pkg> to read firmware data</flag>
+ <flag name="dmi">Use <pkg>sys-apps/dmidecode</pkg> to read firmware data</flag>
</use>
</pkgmetadata>
-
diff --git a/app-emulation/virtualbox-additions/Manifest b/app-emulation/virtualbox-additions/Manifest
index 685e5fe987..2bbb6f9b0a 100644
--- a/app-emulation/virtualbox-additions/Manifest
+++ b/app-emulation/virtualbox-additions/Manifest
@@ -1,5 +1,5 @@
DIST VBoxGuestAdditions_4.3.28.iso 58241024 SHA256 9f52e186d6c9407b2676d4b2ed1cdf96940ec129cc2bd92e54b24526271a9733 SHA512 78055f389dc1a7bd62577f1fa670b8f8899ab3a58a87953d30fcaea1cd0c77f8662e15fea932c434309747971a2a61b61854b6f087654d9d2fb2de07fb6f1b5c WHIRLPOOL 64275e44c01f4f260899a7c16aaeb494ebe81277e7cbdec87e487736833cc239338f3c32c00759244b3be55c5754788593b81d06dab7d9ab26991369fa9d65fd
DIST VBoxGuestAdditions_4.3.32.iso 58349568 SHA256 187f49b567dea056d9de255c155f8eaa3449dffe08ccf22ae8ab1dda708f78fe SHA512 3938ade4fd030f2471b34b11296af3874c3936659c635a9d7e222697f2dc72c65fc4f73f42800def8a8bcc518951bb9a3504156811af18e00722a6f61c03b6a4 WHIRLPOOL 8e5f25709ea1b74f94f303f29ef7d1601f29681515981b2f16fddd4af4c9bec842101bfab7626112777284c3f243f8e4a66a23d09a23af353e4f1e0645043618
DIST VBoxGuestAdditions_4.3.34.iso 58361856 SHA256 a6f20f5b8ec11ae127ae48bcb19c20de488d38dbf807a8608a6468da7353a9a8 SHA512 b243558b510548518e1ed863bc4a5d8c849573f7664ce6c398766a10fe9cb5aa0f34e8ff4f9ac948e06929033800e8e2fa3583fcb92ecd44fb0cd755521be236 WHIRLPOOL 29019b8e14a9a28622b7c07c7049153aab7b846aa58713e7537d66addebe5a6627dcedbcd36944bc1a2ebe382f2f3acc3f793e2c2cee9bab9805f931e88b870e
-DIST VBoxGuestAdditions_5.0.10.iso 59002880 SHA256 8f7ffee3fac75793e48d1859b65a95879b3ed5bc1c3164c967e85d69244c594b SHA512 95080cc991f99d11aea771088b980faa42c9f0d33ee31afc53de758d49cb62db0275bd5907ff2bf29382194e6227e965986ccdbec7bf50e254e178689e291b65 WHIRLPOOL 24a2c79f3868d14da387c4f282af848411d0a78a8c4431b72f64474cc05ca2bb24aef923e3e1d9e0f1ae17cc342aa821c2ad782d8af233f3c09c4b26afb4c7f9
-DIST VBoxGuestAdditions_5.0.8.iso 58992640 SHA256 a6ab45a043e460c87f145ec626c1cc2a1ae74222f15aa725004cdc84bf48e9f3 SHA512 8a808b964b916930748cdde96cbf0b3657506758155336b5d7a294cde28129cff50ec5e88fdd5e0c3bad8a5df99e8244c08677811aa4e3982f4255273d66820a WHIRLPOOL a2fe1cb6c334f44a4dd962a0479b1a2956ebd9a9d5aee9c6a3a2203c22a1f764aa1829f1a813d14f60cfdebef27ddb59c554a0db50b18641df2da6a1d67d20c5
+DIST VBoxGuestAdditions_5.0.12.iso 58990592 SHA256 61a19c9ec4b449cbc6bb41b636b03a16bf5a47ffa4943423d262863017e8bc9b SHA512 9232752f1d71fde887755e917b9e146d53fabe3cc2736e96216a04b1a3faf692d00da47458f7c700587d424b5817debb56c375c068e3e5baa925b7f6732d0ab4 WHIRLPOOL a87eb9877c0a4d7c432d32c3d4ec408d1167d152a09feaf037bc37dc8c31be0287af93e2c6eb73d01cdda859430f7517e1a1a2aabaf92301aabb9d5a81ff8955
+DIST VBoxGuestAdditions_5.0.14.iso 59015168 SHA256 cec0df18671adfe62a34d3810543f76f76206b212b2b61791fe026214c77507c SHA512 4c4acf385260faa1339c27989ec712b4d0ecc2f873e8e3868d3aa79a34cb7b9d315ffeb7a3390afff26fbf4116f51251a8d4c55182d92c0fab72d5e86bf7136b WHIRLPOOL 3268930d2e3a2d341d578b6f8b9c9995bdc0adda953c6c94b90848bcfc3fc86ac84780ab246dcc3e8d8c0619e32fd23f96fced2d5a3ce38a67d4fc203b508da0
diff --git a/app-emulation/virtualbox-additions/metadata.xml b/app-emulation/virtualbox-additions/metadata.xml
index cefd27ea32..ff95e9c2ad 100644
--- a/app-emulation/virtualbox-additions/metadata.xml
+++ b/app-emulation/virtualbox-additions/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>polynomial-c@gentoo.org</email>
<name>Lars Wendler</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>patrick@gentoo.org</email>
<name>Patrick Lauer</name>
</maintainer>
diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-5.0.10.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-5.0.12.ebuild
index e46434cb51..e46434cb51 100644
--- a/app-emulation/virtualbox-additions/virtualbox-additions-5.0.10.ebuild
+++ b/app-emulation/virtualbox-additions/virtualbox-additions-5.0.12.ebuild
diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-5.0.8.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-5.0.14.ebuild
index e46434cb51..45e9b02a61 100644
--- a/app-emulation/virtualbox-additions/virtualbox-additions-5.0.8.ebuild
+++ b/app-emulation/virtualbox-additions/virtualbox-additions-5.0.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
diff --git a/app-emulation/virtualbox-bin/Manifest b/app-emulation/virtualbox-bin/Manifest
index 4df303773b..a980caf935 100644
--- a/app-emulation/virtualbox-bin/Manifest
+++ b/app-emulation/virtualbox-bin/Manifest
@@ -1,20 +1,20 @@
DIST Oracle_VM_VirtualBox_Extension_Pack-4.3.28-100309.tar.gz 15961939 SHA256 72e101d9dc5eabeb76d1ab5bd6d2f817a11c89adfe8bb72cc5d614a2eef532d1 SHA512 57ad44a99a7abcad195e6ceccc1fe7b494979da65601a52e0be8336bb819812d5cef48a8bc0fe9f74f3a05238e6fd29562ac678d4ef7e0c78587fe81c287a65e WHIRLPOOL fb08189c53841664119bffb4de6a76d6f72fb035f887ed5e948f38faa5be2891e35de0806da02d299e818370285bcddba06eb84bea7db4d3cfa09d92f8042db7
DIST Oracle_VM_VirtualBox_Extension_Pack-4.3.32-103443.tar.gz 15994576 SHA256 3f041c019985c35974bf034a9f7d941149fcc3e23a6200b47579140405af5f88 SHA512 212c21f6fc0af093e2d409827348d776377164b9c78b6c01dc710d4a63f53fa7ef52a66491d81b96dc64af4747d79ca0d0df55b052cf6b1c8ceb239c32dc1c75 WHIRLPOOL d67b55c409c6e06080010a25a4a64e660dcd0efaadffe2311166bed06c3f494a5f20cff131a42e07e82aba3cab7f53dea101fb3e5fabeecc2bdb0dd4a167c0ce
DIST Oracle_VM_VirtualBox_Extension_Pack-4.3.34-104062.tar.gz 15994268 SHA256 b9c03b6db79de16f70134884c18cb4854a8c24cb36f90e3a9d2b93eb09fb6b37 SHA512 39b06eb26fcc01dc70de0a9d099a8919c53f72d9a74133d803bb5d10ea06cd390a6dd3853a024b311695c57805d6e2b664ec667fa0d882142f4a33fdfb01b642 WHIRLPOOL 1a3e98def84beeb73a8cc531bc1bfb98cdb3a3c02373aff910c89b023c85d22eb46d349a2c6ca19f37032113bad2dbc7f61b0960f7af3b2ca4d4c63a301a27f7
-DIST Oracle_VM_VirtualBox_Extension_Pack-5.0.10-104061.tar.gz 16918255 SHA256 c846fa26fec8587e57180c85c408cad377c48ad26830b0dc839ebf9025e3d29c SHA512 ae6bab29c14b1ace849ebf5715360fc0921950c62345e18709347f44c07f88727bf1785d53437e39d67f8c56d92cef1f6e3d03c3f7d6dd76c6d4d9ee7f1f1d5b WHIRLPOOL 822c3c9b20f9171b3e9d1896c2ff648ead049d63e45b8353da5d37e7f874433878fedcfb2f10ae5f50e4860466560a37b6102e8ffb3e9625106ce5188f491726
-DIST Oracle_VM_VirtualBox_Extension_Pack-5.0.8-103449.tar.gz 16880584 SHA256 febd2c99909cb932a98c2b9f73ce8eb03fc183c8c8f2fc874985cf3d598f6b94 SHA512 6a29aa1c52b460bded6e342cc66bb28d93f7f4c71eb108854dd2ba6934ae399e6ee7bd8acd29dda934f2933eb05b2e3878568fee76e5eb55ae43a695123568df WHIRLPOOL d6865e702c787c441da30a49e5aaff818a7530f2a82313c326a509cb3bb98f7cf22d511e3265b99a14402b2b9a7c4614d40ed570e6a6ba5522f4752248e2f338
+DIST Oracle_VM_VirtualBox_Extension_Pack-5.0.12-104815.tar.gz 16937595 SHA256 ac1bc8452b7fdf183325272149e9f18b9810cc07adf18e48755385a9cd1b236d SHA512 4a21cd155d1e60d3b6a4f4864cd8ca8ccd75f02448e832d72b42284dde5aa3c4aeba7f7297e3e7e198e4b4c665d770ac65c1aeca3df1dfa6a8454c47553baad7 WHIRLPOOL bcf032d0e72b57be37fdfd40d3c2f418eab10e04bfcbf1b99374b1fa9d2b5ced38c5cfc560b1c13492144a32a3c035b72649d9ae57851f6d430a4e59897cebe2
+DIST Oracle_VM_VirtualBox_Extension_Pack-5.0.14-105127.tar.gz 16939032 SHA256 4a404b0d09dfd3952107e314ab63262293b2fb0a4dc6837b57fb7274bd016865 SHA512 b71cd8562d8bcd10a051d9b3c69183aa17d42b0866fc597b8412c28d5690d3369f9b4bcfae98c609df7ad19f84dcebe6057e6b9b0a44b650acdb573b7ce3b4f0 WHIRLPOOL abd49e5ec7dce4aeb74998b8e1e6d6174ba47808ac4d041a51b237cf32ec595b0c1d95bd992bd1a4f186bdf6722263898f9b99cb00ca21ba7f84695b4d3e4010
DIST VirtualBox-4.3.28-100309-Linux_amd64.run 85677523 SHA256 8c862533f876dc32fbfae993597b1123e2feac81a302c60e73b7ee891e17a77f SHA512 75dc2cd257b187b0a497b87c2f1e576a57ceece290327a98804c903810522444b0a64a704bc51a25945dbaa5c0caf30898ba258829577e2f17f7c736fcf59bb0 WHIRLPOOL c8d5d885807ad633bf1c4c6f98cac8dddf4002dc2e21ed2d2fb2f0a859f447b7ce06d1c49c4daff4147b25ca4992da14b6b75b39f47075c861732e6ef00091d1
DIST VirtualBox-4.3.28-100309-Linux_x86.run 85083598 SHA256 aeb224d7136314865db8175db665408a3dc08f50ed68fbd4bf1568b32b7ea2f6 SHA512 110e20a45657c7677fcab0158d31052c909893b8f618adad2a2c95ad119d47d7c35d4aedf3692dd650fda62ba0747acf202364c14034e5c10d17cd45a9918707 WHIRLPOOL 35c97248985d11c77194ac03448357331e08b7ef64a77ba416564b6051eaf74ffb5a0acdf835bfcf71657c5fdd58066947b0ba1c42e91d34dbf026434f662f67
DIST VirtualBox-4.3.32-103443-Linux_amd64.run 81100243 SHA256 e99dbf0e382081fa78cbc5803b473e2fe4bc945eb50cf0b5717853f4cdb34da3 SHA512 c68cf69de524ec0229d07943087bc433b0902710f48ddd67106f0f10500d38d38a0e3ff97e40bc81495f12f2bcd68ee0f3d19fda46c999960fd1b3f64bf220f3 WHIRLPOOL 15aa5ce0b49ac7c75fc6191e4a0283a721db247a667f63b94f04dbf1f00122958c8945181f4ec5791b1a6ba6425f98a3bf92f80eebf29b831260cc8274cf1cd7
DIST VirtualBox-4.3.32-103443-Linux_x86.run 80496078 SHA256 89e3493052b43574454c1f6bed2a1ddf3504dbcf5096cb2f541b242dd6636cfc SHA512 66455075385879364afe7c77051d7b7873dff543647bbbdcdb9e0e63ef9fa2c49a11a45ac3c2cb96cbb59fe75e5e502c3d4cd99ac1ba8c580e65ae3e3da5c427 WHIRLPOOL bdbd2b62fc8bf83604ffa217f5e592ff48058a6f6c10e0fb07e214847d6cc915f858fef03b6c196625339f3d31f2ce6c4614b9ae206eacfb35957253893bea06
DIST VirtualBox-4.3.34-104062-Linux_amd64.run 81212882 SHA256 4deaf99020c73b0a4911434579afb3659e87bfdc2d44bdc50d64902eead35706 SHA512 83b2da49ed126353532b6414a33fcbec0e260aae8bdd8a1205e63d1c5d8ea42722706e934fcc8e97e416913a8c6ad48d3166c2b1af5365ea2b5992f2f0457c09 WHIRLPOOL 3f09680e4b09d2aaf5691a24969b0372f8b7b8b25ccbb1ae02f35e21bbcffaf341f861785b92739783d926da6c20aae8fbc218610a803e57b5cafaee04f3595e
DIST VirtualBox-4.3.34-104062-Linux_x86.run 80567757 SHA256 c113c44582898436cec4374b0c1dd2e150227add4507a836664a5717e2bf8655 SHA512 cd47ee3fafaea2f43cfd01db29d380f9dde883039ad07ed9bc79a0b4884bfb0c9e1c97a9750642e73b6969af501cc34b59929b6ee6ac28e60d95ab2fdf41d24e WHIRLPOOL 5047c599b3a7f091f012a68889792d37e5463213ee5be151f1e2665c38f991aadf1bcf85df2495d9bf3e62e35f3e2627c103a0d293119d9550beed8d20b4dffb
-DIST VirtualBox-5.0.10-104061-Linux_amd64.run 84448721 SHA256 77c3500f460f24850c796fbef84d7ecd7cf05b5a34256e712172e6f159f119e9 SHA512 431edd417f7e7931dfa4314ef095aedc3eb489349d16a13cb8bae1c9fbf6b19aed00e845b9389ff1805959649b8cabb6b8e38c36cb7b65f8450d403f68b6d414 WHIRLPOOL 0d598ec0be6a8ea41c3908c47c072480bd37542a633493834367941c063734104d73f2cb2c8ceb2d34625d89249e18bc98383970f5647c69858b1caa0c7e9447
-DIST VirtualBox-5.0.10-104061-Linux_x86.run 83537357 SHA256 7860f1a07f2535873ccfe2a46f63d71fa8ee491e7f194e577001d2f27ba4f7c3 SHA512 657071112ce8b54335d1ff67feab8785c13e5e09370763472d8f99970bef41aa4da3a4db158d5f778e8a39af05464538047c71742156a5749c2858cf7d6a04aa WHIRLPOOL 78718e91978e13eacbc4ac9b035b07043effb5785ffec3475f710e775b94736df98c4b45a6fdcd93733e418fc62a91992cf761c41b98e7288ec4714599669aab
-DIST VirtualBox-5.0.8-103449-Linux_amd64.run 84540882 SHA256 91bea0393f0b0afdc139660f23d77512723d367446d482545ded2eeeaba851d0 SHA512 5ab4d98070ba062cdacd88f60454333bdfa416fe0065978d3358fe1aaa7bb839f4a940630e9bb2f0e114879f2a839e3e1daf6d5000d11094c56951decda5babf WHIRLPOOL 915e6c7f30012087d9e37283fe3f073b9119aaadfb8a996899d9201003a8b30a490a5ecd9c61e3c919e957cda5ba9483df15d59d7ea2a13b600818ec9cc5f9d4
-DIST VirtualBox-5.0.8-103449-Linux_x86.run 83752397 SHA256 3b18e5bb5cde12d4d91add03c500862292cf44a4d4e9831ab8668312644562f8 SHA512 d4b7d602ebfc93df92f6dd4b3e050ab765c2f0caf7bbf0b85e674f8a349f9fe6c878777e85fffb3b74888252dd94c7c3d0447e6463ac2d6d39af3a20a67f7397 WHIRLPOOL 94cdd4d5f1b4504ab681aa511cbb2befcf1cebbd61b9eeec694b4758d887769b458daa20afc68a5fbadabbe97627e7c81718f17f5902f5de3e80ce6b59d3fb25
+DIST VirtualBox-5.0.12-104815-Linux_amd64.run 84592081 SHA256 5f182a1c98f72888c973d9ebb8429835fef8c48e9bd2ed436dd7cbeebe0e0f02 SHA512 6a14d92794bab5fdf7b79e48b02afe91863d693aa5d94f15e5d69ac377c1597fe3b6e0e390cf5ae5b0de77f85f52aa07b776bb50f3ed4a89e504b38d28da0411 WHIRLPOOL 6c9531c6833bad16486300c04635e454e96ff15c1dfaed1f85602eadd21a269e2ede3499dfd2a0641527cf49276e7f1ccfa80578e3f296f03d86d5c3b1725e77
+DIST VirtualBox-5.0.12-104815-Linux_x86.run 83752398 SHA256 a428cc9e260ec6c730fe4efdd99ac4fb14d1523d57dc97f8e38f3dd6bbdb073e SHA512 4a89eaa5a269ac6624d7c9bc0d3937d77cfb0d024629850e9e3b9bb616282e8cf252aa23acc69008d9380cfbd20f99c0cd7f5e74f6edd1912094cf037ee51e71 WHIRLPOOL e016412b5ff2bf256a4a4e5d37b2ea73f12f55e0d3f10d17c090185a6dbfee1b1de474e99739de72dbbd898151db6ee51470e71453b4fedf98918e195e98ae90
+DIST VirtualBox-5.0.14-105127-Linux_amd64.run 84714962 SHA256 1c05ca5038dd299f28a6e5e253ddc01adb029a2ae2cac40c5d7affc8b2541945 SHA512 f5002a642eef08912172c52f5ff58febfcb62320b0920c8e2da93578cda51514a72094ef60fac41b57003236236f2b89fbccfa828741de5fa0b39d0d72a4019e WHIRLPOOL 688cfc2fa4e4ed67caeba3aeef74ef638b8c67edb16137fc0c02192def4f5fbd78d6ba035938d3f58a21016f9f9cc33c317c1b442552c77eb40556731063b45f
+DIST VirtualBox-5.0.14-105127-Linux_x86.run 83865038 SHA256 0014c6557a8c5b67b3d71a237f9abbd33ec809a8e9d8ad221397eb6fa812a171 SHA512 7f17957bfa46a0bc3cec9974d2b1c979ed6f1cd1ec6a5c35c0bb73460c3ed59d4da0081089b373375f828731ee893f06100faee1291f25b403011eaf96a6b231 WHIRLPOOL db2fed44be4c0a59478ad9e7995a92758e589a71307be26276fb01502b1f20bd99c58205d34a7e13651dddbd4ce26dcf05476bed34b80ce5700d7695f851386f
DIST VirtualBoxSDK-4.3.28-100309.zip 11698378 SHA256 fe0cc316cecb3dfe9bbb925e6c023620d4cfd8e137b2a9b9f40f22f527af16fa SHA512 6af7d2107cff080281a356cbf522961b2e9d1917e861e410b169ce5ca3cefe05cc87e4e01f78ae171f8716f7006c031f14fc01d8d282a872a4f619638049b11a WHIRLPOOL 23a77dbc410a28b2799264da88d79b2c4335c07da67dd8bf4be26cac271e3ed38a9bf4fb2966ec0a3c06fb869bb252f5fa6a34a9a9c62cbb9a2fb0ad76442f66
DIST VirtualBoxSDK-4.3.32-103443.zip 11435565 SHA256 84ff42f0e9d8f8945387247e7f57123d37cc2c53035ab1eca5414ca82102613a SHA512 914951d91adfa0d77e29863c7108d2e116a01562d0e0454b1203ae7d6e7e0a224f65a51cbf1e83b8067cb40da65708d2022ab5be35f2905a28f032653c827869 WHIRLPOOL 2e53a6f2d6e6e4f328139b03de8bf09b1a72ca3981addef7a2d02d8dbc02e8ea6c319b16facdcdb1be5d941d7d24b64598990112d3d52ca5e5c9b0a2c4d8e89e
DIST VirtualBoxSDK-4.3.34-104062.zip 11436429 SHA256 5663713e2eb0eb248941e332f8bd06c2e98c3411f7ec354bbc32d5460c2044ad SHA512 cb3a85317370788ac8aa23d12110feb5a821c51acb27fc83ee8912cb3e38391897b9174eea54c88be139c0083f637bbf0146253d92fbdc83cf0a377b27bf68f7 WHIRLPOOL c885e99160e7fe94879692cbaae7532542b5af74c18f3f68b09d0c9a190cd009978ae24c7321e27828b247e48ddaaedf6e42cdc3d1b6d05a3651113c868f5f4e
-DIST VirtualBoxSDK-5.0.10-104061.zip 9634423 SHA256 270b9e8eb29ca7490cabe94cb7992c1a91f3bb002d1698d64ab4c787e55e9d80 SHA512 69dbbd49b1bee9ccc23bc5e9b2fd001043687d3993d0ecc285158aeca1282cd18b8308aa340e2d7b18c9c170c55f229df7041408a1e9811d78ba890c0ebc4ed0 WHIRLPOOL 1ea777baff50ba59544e0dde00b9969477b229f6d9db705a5e64d035f9ca532dce3f453e0e59fe7a12976d431e9048d43a7c23f42bdbd58e25b1014e6366abfc
-DIST VirtualBoxSDK-5.0.8-103449.zip 9635495 SHA256 c79826d184058701d0d2dbd345b7f188cee5dcac4297895f326cc18fc1253e92 SHA512 7161e8366cc9487bcadabc4a9ed9b27df6abdbc7d3fd82b9f824cc3a3054a6840526204b4e0366962a50d54f19f528f90efcb27cd2ddbf7b9e36d27ae7a573de WHIRLPOOL 933b70e5ebf33f3512e8f25312d27ebcbd3b272f9e07e41edad60f7e3fe6dc88f3b5a9d3b00c2e6d23d2ae8ec9c2d7e6f64680678a168e4d67f94bd9d8b15b65
+DIST VirtualBoxSDK-5.0.12-104815.zip 9632898 SHA256 2abc87108dfbca1e1818c7d420d2aa6cc382d7722f29edce2f7fa1c63772f0af SHA512 1acf69cfe33ecea59b8294f758150c8ed6d64d209c700e0555ef17abb4e66e81398ee1512406d14f5833d10d7a61f9446a020e68ed360a228946824f4bae9cee WHIRLPOOL ae2f33d10c13ab2927c5457bde024c10badf63b440820c25302cea216ca684eb28983c68f49de2c1fb0200cb48d6741c7270cb99a8075177ec60183c8b5777b2
+DIST VirtualBoxSDK-5.0.14-105127.zip 9637074 SHA256 83ef500188bd10e30d0f4c7d2265ddd00ff55dc5a38fb986a6e47c1b5ffcf2b0 SHA512 691833d07c62025bf03a96e998bcf04d2a411bb42ab9b100c9374e70b659abf3c55f8849dc09184fcaa1fb8674b00e1b7369bf1e02408adfb13f43ced80e9d21 WHIRLPOOL a4e6364602dcac32cc602ec46264261e80827b488b85f3e60999029e0c18760007eba65e3d0c3c35ec98f66b5877c5be4fd9f0b98f5f0e73ffe232ccf0500808
diff --git a/app-emulation/virtualbox-bin/metadata.xml b/app-emulation/virtualbox-bin/metadata.xml
index 8ad5c4d1f4..606af8f29e 100644
--- a/app-emulation/virtualbox-bin/metadata.xml
+++ b/app-emulation/virtualbox-bin/metadata.xml
@@ -1,16 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>patrick@gentoo.org</email>
<name>Patrick Lauer</name>
</maintainer>
<use>
- <flag name='additions'>Install Guest System Tools ISO</flag>
- <flag name='chm'>Install kchmviewer binary to enable online help (in MS CHM format)</flag>
- <flag name='headless'>Install without any graphic frontend</flag>
- <flag name='sdk'>Enable building of SDK</flag>
- <flag name='vboxwebsrv'>Install the VirtualBox webservice</flag>
- <flag name='rdesktop-vrdp'>Install the rdesktop client integration</flag>
+ <flag name="additions">Install Guest System Tools ISO</flag>
+ <flag name="chm">Install kchmviewer binary to enable online help (in MS CHM format)</flag>
+ <flag name="headless">Install without any graphic frontend</flag>
+ <flag name="sdk">Enable building of SDK</flag>
+ <flag name="vboxwebsrv">Install the VirtualBox webservice</flag>
+ <flag name="rdesktop-vrdp">Install the rdesktop client integration</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/virtualbox-bin/virtualbox-bin-5.0.10.104061.ebuild b/app-emulation/virtualbox-bin/virtualbox-bin-5.0.12.104815.ebuild
index be7050520b..be7050520b 100644
--- a/app-emulation/virtualbox-bin/virtualbox-bin-5.0.10.104061.ebuild
+++ b/app-emulation/virtualbox-bin/virtualbox-bin-5.0.12.104815.ebuild
diff --git a/app-emulation/virtualbox-bin/virtualbox-bin-5.0.8.103449.ebuild b/app-emulation/virtualbox-bin/virtualbox-bin-5.0.14.105127.ebuild
index be7050520b..386cb6118f 100644
--- a/app-emulation/virtualbox-bin/virtualbox-bin-5.0.8.103449.ebuild
+++ b/app-emulation/virtualbox-bin/virtualbox-bin-5.0.14.105127.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
diff --git a/app-emulation/virtualbox-extpack-oracle/Manifest b/app-emulation/virtualbox-extpack-oracle/Manifest
index 7ce640622c..b9e517eca4 100644
--- a/app-emulation/virtualbox-extpack-oracle/Manifest
+++ b/app-emulation/virtualbox-extpack-oracle/Manifest
@@ -1,5 +1,5 @@
DIST Oracle_VM_VirtualBox_Extension_Pack-4.3.28-100309.tar.gz 15961939 SHA256 72e101d9dc5eabeb76d1ab5bd6d2f817a11c89adfe8bb72cc5d614a2eef532d1 SHA512 57ad44a99a7abcad195e6ceccc1fe7b494979da65601a52e0be8336bb819812d5cef48a8bc0fe9f74f3a05238e6fd29562ac678d4ef7e0c78587fe81c287a65e WHIRLPOOL fb08189c53841664119bffb4de6a76d6f72fb035f887ed5e948f38faa5be2891e35de0806da02d299e818370285bcddba06eb84bea7db4d3cfa09d92f8042db7
DIST Oracle_VM_VirtualBox_Extension_Pack-4.3.32-103443.tar.gz 15994576 SHA256 3f041c019985c35974bf034a9f7d941149fcc3e23a6200b47579140405af5f88 SHA512 212c21f6fc0af093e2d409827348d776377164b9c78b6c01dc710d4a63f53fa7ef52a66491d81b96dc64af4747d79ca0d0df55b052cf6b1c8ceb239c32dc1c75 WHIRLPOOL d67b55c409c6e06080010a25a4a64e660dcd0efaadffe2311166bed06c3f494a5f20cff131a42e07e82aba3cab7f53dea101fb3e5fabeecc2bdb0dd4a167c0ce
DIST Oracle_VM_VirtualBox_Extension_Pack-4.3.34-104062.tar.gz 15994268 SHA256 b9c03b6db79de16f70134884c18cb4854a8c24cb36f90e3a9d2b93eb09fb6b37 SHA512 39b06eb26fcc01dc70de0a9d099a8919c53f72d9a74133d803bb5d10ea06cd390a6dd3853a024b311695c57805d6e2b664ec667fa0d882142f4a33fdfb01b642 WHIRLPOOL 1a3e98def84beeb73a8cc531bc1bfb98cdb3a3c02373aff910c89b023c85d22eb46d349a2c6ca19f37032113bad2dbc7f61b0960f7af3b2ca4d4c63a301a27f7
-DIST Oracle_VM_VirtualBox_Extension_Pack-5.0.10-104061.tar.gz 16918255 SHA256 c846fa26fec8587e57180c85c408cad377c48ad26830b0dc839ebf9025e3d29c SHA512 ae6bab29c14b1ace849ebf5715360fc0921950c62345e18709347f44c07f88727bf1785d53437e39d67f8c56d92cef1f6e3d03c3f7d6dd76c6d4d9ee7f1f1d5b WHIRLPOOL 822c3c9b20f9171b3e9d1896c2ff648ead049d63e45b8353da5d37e7f874433878fedcfb2f10ae5f50e4860466560a37b6102e8ffb3e9625106ce5188f491726
-DIST Oracle_VM_VirtualBox_Extension_Pack-5.0.8-103449.tar.gz 16880584 SHA256 febd2c99909cb932a98c2b9f73ce8eb03fc183c8c8f2fc874985cf3d598f6b94 SHA512 6a29aa1c52b460bded6e342cc66bb28d93f7f4c71eb108854dd2ba6934ae399e6ee7bd8acd29dda934f2933eb05b2e3878568fee76e5eb55ae43a695123568df WHIRLPOOL d6865e702c787c441da30a49e5aaff818a7530f2a82313c326a509cb3bb98f7cf22d511e3265b99a14402b2b9a7c4614d40ed570e6a6ba5522f4752248e2f338
+DIST Oracle_VM_VirtualBox_Extension_Pack-5.0.12-104815.tar.gz 16937595 SHA256 ac1bc8452b7fdf183325272149e9f18b9810cc07adf18e48755385a9cd1b236d SHA512 4a21cd155d1e60d3b6a4f4864cd8ca8ccd75f02448e832d72b42284dde5aa3c4aeba7f7297e3e7e198e4b4c665d770ac65c1aeca3df1dfa6a8454c47553baad7 WHIRLPOOL bcf032d0e72b57be37fdfd40d3c2f418eab10e04bfcbf1b99374b1fa9d2b5ced38c5cfc560b1c13492144a32a3c035b72649d9ae57851f6d430a4e59897cebe2
+DIST Oracle_VM_VirtualBox_Extension_Pack-5.0.14-105127.tar.gz 16939032 SHA256 4a404b0d09dfd3952107e314ab63262293b2fb0a4dc6837b57fb7274bd016865 SHA512 b71cd8562d8bcd10a051d9b3c69183aa17d42b0866fc597b8412c28d5690d3369f9b4bcfae98c609df7ad19f84dcebe6057e6b9b0a44b650acdb573b7ce3b4f0 WHIRLPOOL abd49e5ec7dce4aeb74998b8e1e6d6174ba47808ac4d041a51b237cf32ec595b0c1d95bd992bd1a4f186bdf6722263898f9b99cb00ca21ba7f84695b4d3e4010
diff --git a/app-emulation/virtualbox-extpack-oracle/metadata.xml b/app-emulation/virtualbox-extpack-oracle/metadata.xml
index cefd27ea32..ff95e9c2ad 100644
--- a/app-emulation/virtualbox-extpack-oracle/metadata.xml
+++ b/app-emulation/virtualbox-extpack-oracle/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>polynomial-c@gentoo.org</email>
<name>Lars Wendler</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>patrick@gentoo.org</email>
<name>Patrick Lauer</name>
</maintainer>
diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.10.104061.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.12.104815.ebuild
index 19d40ce0c1..19d40ce0c1 100644
--- a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.10.104061.ebuild
+++ b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.12.104815.ebuild
diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.8.103449.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.14.105127.ebuild
index 19d40ce0c1..9cc2060128 100644
--- a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.8.103449.ebuild
+++ b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.0.14.105127.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest
index 2abbf724df..712f840d25 100644
--- a/app-emulation/virtualbox-guest-additions/Manifest
+++ b/app-emulation/virtualbox-guest-additions/Manifest
@@ -1,5 +1,5 @@
DIST VirtualBox-4.3.28.tar.bz2 100092002 SHA256 e157ab76d1958ae2c56b2a3875194fbff3de82486ad0e30032fd5bd772297c31 SHA512 b6e849a1420515b6dbda8cee0ab64940dd93296ec58cde76676ac257ff3dad0459aa1fd0bda7e1d0abc751d2d59f055465b198a546fdbb4e70e934a78654a8fc WHIRLPOOL 1b739f1f989032e07829a23ffadadd49e31109d70b0effbc44126a48a165218ff3ebafa576fa0e4f2af76a404033b60e5c9804ac43db5dd3024f1eca25ca70da
DIST VirtualBox-4.3.32.tar.bz2 98168101 SHA256 dc5bf4e6f9989792d31bac174d20d7fc9e638654fa5a99c02b20a60557927261 SHA512 856b36cd90647cdceb7e182d066e9e1489d2bae0b71ce8b2f6324cd2d9854806eaea0fe0aad2d4e8b84bd836c688e13258ae69e094320572729b7d886c8d35f0 WHIRLPOOL 441041947dcd190d73a9cc5007bc0001b6eeb36ba958f4a09fca775670faff690423095d334e258fc0d6dcbef01d74a085505c8549397ced5dbe75ca96724144
DIST VirtualBox-4.3.34.tar.bz2 98166680 SHA256 076507e924d3c5ae05c5e80a720b897da4a57a636a506a7d369b28f08b11d6c1 SHA512 1eeca08990d426155550d8920c159e41320bfedb53561b1752bd6816fa588588672ad364e73baf9b7b45e8352ae8feb1c649ba1748253da47586b55fe89e8fe3 WHIRLPOOL 1249e1d61aec38d439d1060457a1a0d0294a65d78dfa426026f3abe1882c429c628ea58f556bdeaf1a88d3cdd3b9095f1e4c6f1fae2176f39f8da5bb3d091809
-DIST VirtualBox-5.0.10.tar.bz2 110904399 SHA256 56eafae439b91ea3c3748f2128b2969ba76983acf821acaa08e043c129b45a89 SHA512 8836e5b57ed46b57b12a9fdb6a632e895c3106dad58c3ab3e28f9178ce69499c493a935b6df8b872dc4677c12eb826a46113bdb902e4fb3d2f8ee6d768e53930 WHIRLPOOL 05516c1d9a3cd876a67a73b86df47ec7d1ef08ed921cb3e25ef483676413982ac8a7ce6562f3003240d862a33759aee5e6c94a303a2a35b66025d72cb15d4404
-DIST VirtualBox-5.0.8.tar.bz2 110540476 SHA256 e043518b7ab150e478c00b622360a5feb95f4e5b19e72bfcc71174356e2dacb3 SHA512 2a8e0f3e5fbb4b45786aa48cb408cf712cd968af65b25219eb39d54274612978704359b620179d751e828783950eb29d4cf330ac408a84dd65edbd0d98e25aa4 WHIRLPOOL 2b054cdb5c7c39008e876f0703e154509f4a79183aa85c4998717ae07a72e015a71bd22dc0427c8a464b3e16db92ebe9d731971f9788fbe56c8cc936669496fe
+DIST VirtualBox-5.0.12.tar.bz2 111001547 SHA256 de0362b1d404d1ca0298db1984acb6f0f1c6210313aeb744fea345ad9201e86e SHA512 eef01d1a5121905d2fbfcd48081f18db06433187bfbfea6a006b3adea11cad8c8351025fd19fa115c132231592330b17bfeba033a3a168f3064176a3f7586d7a WHIRLPOOL bd73e67c83a524cb021ff92c4c3d655f6a1019e2d48f3ec97aee937543ca9da6f7ba2a1e70a6b75092dce3c8db8f3c7887300104fafa23432b94bc832c5e5447
+DIST VirtualBox-5.0.14.tar.bz2 111033626 SHA256 69abac7255b2251a18fd73c0b7c200d5f8ce72a59fa019b53a5cdbf7f2843002 SHA512 5547da58b50c9cf5d096f81c005134e1f56c4fb55d4d40a6fbd1efe1fe1fbeebc0747f0903933da9238a24c63eeed2c6c15bfc5cae5ce6e3e2eb4a18511d6258 WHIRLPOOL 785e0fa7a0652825b977562a1febbd95463ce49a9257a004827725597e0fbd59f9bdf75cc31f5b04e0f04be3d0d68e90148c06dd5d03875063312f8a3cd5bc86
diff --git a/app-emulation/virtualbox-guest-additions/metadata.xml b/app-emulation/virtualbox-guest-additions/metadata.xml
index e71fc2f6ed..4ed7567d1e 100644
--- a/app-emulation/virtualbox-guest-additions/metadata.xml
+++ b/app-emulation/virtualbox-guest-additions/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>patrick@gentoo.org</email>
<name>Patrick Lauer</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>polynomial-c@gentoo.org</email>
<name>Lars Wendler</name>
</maintainer>
diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.10.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.12.ebuild
index a1d8560671..a1d8560671 100644
--- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.10.ebuild
+++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.12.ebuild
diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.8.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.14.ebuild
index a1d8560671..b6b298ad98 100644
--- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.8.ebuild
+++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.0.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
diff --git a/app-emulation/virtualbox-modules/Manifest b/app-emulation/virtualbox-modules/Manifest
index 4e1b450874..f0c334a9e7 100644
--- a/app-emulation/virtualbox-modules/Manifest
+++ b/app-emulation/virtualbox-modules/Manifest
@@ -1,5 +1,5 @@
DIST vbox-kernel-module-src-4.3.28.tar.xz 539876 SHA256 fb052997ec4992b0ee102475051b5d7bd8485e17405c6b3dcc94e1fa4a53b761 SHA512 637149f8595cb023e75116f83237bb4cef1b05627f58d475fa952ac86a85aa3cbab5f0cec723d730979f831999c920f35248e5f8db8f6987fb4c15c4a29bd517 WHIRLPOOL ab1ed07ee148a1ef352c0fda3f09865405be4146b987a5dffcb753d7512a00aa88c2ba1f7184b56d694c88320b350c6ececd3bec5636dd1586fc14a6be8a874d
DIST vbox-kernel-module-src-4.3.32.tar.xz 546132 SHA256 4f0cf8a2d0f6714a5825551fa6ad38b85a70aac3a9949771bdcd85916ed12dae SHA512 7289dc1dd3a7e8812a57d3d1411c99ac25ddb33991e06e49a6212b030c6b6c2f08075c471f474c539b26be8a221934261af8f67a1aa4572f2e9cdb7433623a57 WHIRLPOOL 771c655bb5a7179d798330e438a3799d79cd1711844e491badaf7b6e0cb25fe2017a753675b0700b6ee2d8251bcc603f84a703cbe73b5bfcb46859b781d7c2d9
DIST vbox-kernel-module-src-4.3.34.tar.xz 543584 SHA256 ab9ab4c0c9e315ee447813a056b83b264e7baea073195c347903f9e7014dd0c8 SHA512 44eaf10a7063d0761c98e02ec8b6dda2c20de9cd188b8beedd9546dd348e976440ade034779a6adcaaf385fd34b4600f254dc5a987d580db4eb81da5c0b57509 WHIRLPOOL 3279d351493af02ab8ea3e66f14b3ab7e2073f3478b0cfd757424c825f512d739a65dc8d6d074f57d4639e61a6205ede63aa0483340d72ba938e823cf28e0ede
-DIST vbox-kernel-module-src-5.0.10.tar.xz 592612 SHA256 d62362fe55291e94dfde20461549a4898fa782869e0cf88301cc3c09e6638f30 SHA512 e9a6166912f0550dde2fc2d62a104480ed179c3121c43ca66e4ee17ade51c71b3d9bfb2fc00a9af318a8fe0b2115f650023a80612d3f279d2b3b33a767664bbb WHIRLPOOL 4889f17ca4b33a12bc1d99e9ac5418834003957d8590ffcad9875ba5172edb26055c74c3d0daf0dba2c7b0c60faf3eb1ac92c94c63b74abe7965a46ef080d972
-DIST vbox-kernel-module-src-5.0.8.tar.xz 594164 SHA256 16513e3bec113e6e594a58ff0999ba70de4214c889dafed90ca181a6a603457d SHA512 91faf0054cd359a7455c1933dea3a37829f092eb966d8d2c6855061d3ecadfa1ea91a2258479f5696f373577f7aef1939bdd5808f9ca336e15f5476f4f6d464e WHIRLPOOL 837578475126fe8484e89140248971ce89e637a629a26b1324dc0b8b22d65fe351a1860d5c009223723a9d420d1a6f859c12c17ade510451177a6213f1905328
+DIST vbox-kernel-module-src-5.0.12.tar.xz 593196 SHA256 c24f56bbd04ccfb34af94d7d89c921e23d470b5b5720c2b819811c93226a072c SHA512 d6d474db87d854f2932639e564f0f6bb12d8852d5bbf8e19408aff0c53280116a3c0177b83f61b1c034edaa7404e9ba6584f762ad3b9003846016c8f873a9715 WHIRLPOOL 19d555eb05dfc4fae67595cdb8f4db38710ec66fca95216ce7783ef46c15a04d9347c82403877c1ddb01f16b6b02c2f9196879905a1d40ac81ca5db965472d47
+DIST vbox-kernel-module-src-5.0.14.tar.xz 593192 SHA256 15934e23601195e4f6d63c9f01a8f996bf9d278c572efe21bdabd223011da32a SHA512 0745b56974b751f812aac24a6bddabbbb1d8253ca80e3f221435c4162846280dbff616c5391ee9fce977fe6c4cbb4af8694c589931b058f0ca9306622ad448e2 WHIRLPOOL dc00622a7bcd284683cc123235ac4b2a9c05ec5512726f8de914a36aa676c60968fc7f9ffae2dad9601de6f1494443455368785536eea71207efc9d28d5dc6ac
diff --git a/app-emulation/virtualbox-modules/metadata.xml b/app-emulation/virtualbox-modules/metadata.xml
index 7401e9b145..a4aa4afb29 100644
--- a/app-emulation/virtualbox-modules/metadata.xml
+++ b/app-emulation/virtualbox-modules/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>polynomial-c@gentoo.org</email>
<name>Lars Wendler</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>patrick@gentoo.org</email>
<name>Patrick Lauer</name>
</maintainer>
diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-5.0.10.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-5.0.12.ebuild
index 4bf941558d..4bf941558d 100644
--- a/app-emulation/virtualbox-modules/virtualbox-modules-5.0.10.ebuild
+++ b/app-emulation/virtualbox-modules/virtualbox-modules-5.0.12.ebuild
diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-5.0.8.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-5.0.14.ebuild
index 4bf941558d..8ae1ff2e98 100644
--- a/app-emulation/virtualbox-modules/virtualbox-modules-5.0.8.ebuild
+++ b/app-emulation/virtualbox-modules/virtualbox-modules-5.0.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
index 9453ddaced..6cc1e6a806 100644
--- a/app-emulation/virtualbox/Manifest
+++ b/app-emulation/virtualbox/Manifest
@@ -1,7 +1,7 @@
DIST VirtualBox-4.3.28.tar.bz2 100092002 SHA256 e157ab76d1958ae2c56b2a3875194fbff3de82486ad0e30032fd5bd772297c31 SHA512 b6e849a1420515b6dbda8cee0ab64940dd93296ec58cde76676ac257ff3dad0459aa1fd0bda7e1d0abc751d2d59f055465b198a546fdbb4e70e934a78654a8fc WHIRLPOOL 1b739f1f989032e07829a23ffadadd49e31109d70b0effbc44126a48a165218ff3ebafa576fa0e4f2af76a404033b60e5c9804ac43db5dd3024f1eca25ca70da
DIST VirtualBox-4.3.32.tar.bz2 98168101 SHA256 dc5bf4e6f9989792d31bac174d20d7fc9e638654fa5a99c02b20a60557927261 SHA512 856b36cd90647cdceb7e182d066e9e1489d2bae0b71ce8b2f6324cd2d9854806eaea0fe0aad2d4e8b84bd836c688e13258ae69e094320572729b7d886c8d35f0 WHIRLPOOL 441041947dcd190d73a9cc5007bc0001b6eeb36ba958f4a09fca775670faff690423095d334e258fc0d6dcbef01d74a085505c8549397ced5dbe75ca96724144
DIST VirtualBox-4.3.34.tar.bz2 98166680 SHA256 076507e924d3c5ae05c5e80a720b897da4a57a636a506a7d369b28f08b11d6c1 SHA512 1eeca08990d426155550d8920c159e41320bfedb53561b1752bd6816fa588588672ad364e73baf9b7b45e8352ae8feb1c649ba1748253da47586b55fe89e8fe3 WHIRLPOOL 1249e1d61aec38d439d1060457a1a0d0294a65d78dfa426026f3abe1882c429c628ea58f556bdeaf1a88d3cdd3b9095f1e4c6f1fae2176f39f8da5bb3d091809
-DIST VirtualBox-5.0.10.tar.bz2 110904399 SHA256 56eafae439b91ea3c3748f2128b2969ba76983acf821acaa08e043c129b45a89 SHA512 8836e5b57ed46b57b12a9fdb6a632e895c3106dad58c3ab3e28f9178ce69499c493a935b6df8b872dc4677c12eb826a46113bdb902e4fb3d2f8ee6d768e53930 WHIRLPOOL 05516c1d9a3cd876a67a73b86df47ec7d1ef08ed921cb3e25ef483676413982ac8a7ce6562f3003240d862a33759aee5e6c94a303a2a35b66025d72cb15d4404
-DIST VirtualBox-5.0.8.tar.bz2 110540476 SHA256 e043518b7ab150e478c00b622360a5feb95f4e5b19e72bfcc71174356e2dacb3 SHA512 2a8e0f3e5fbb4b45786aa48cb408cf712cd968af65b25219eb39d54274612978704359b620179d751e828783950eb29d4cf330ac408a84dd65edbd0d98e25aa4 WHIRLPOOL 2b054cdb5c7c39008e876f0703e154509f4a79183aa85c4998717ae07a72e015a71bd22dc0427c8a464b3e16db92ebe9d731971f9788fbe56c8cc936669496fe
+DIST VirtualBox-5.0.12.tar.bz2 111001547 SHA256 de0362b1d404d1ca0298db1984acb6f0f1c6210313aeb744fea345ad9201e86e SHA512 eef01d1a5121905d2fbfcd48081f18db06433187bfbfea6a006b3adea11cad8c8351025fd19fa115c132231592330b17bfeba033a3a168f3064176a3f7586d7a WHIRLPOOL bd73e67c83a524cb021ff92c4c3d655f6a1019e2d48f3ec97aee937543ca9da6f7ba2a1e70a6b75092dce3c8db8f3c7887300104fafa23432b94bc832c5e5447
+DIST VirtualBox-5.0.14.tar.bz2 111033626 SHA256 69abac7255b2251a18fd73c0b7c200d5f8ce72a59fa019b53a5cdbf7f2843002 SHA512 5547da58b50c9cf5d096f81c005134e1f56c4fb55d4d40a6fbd1efe1fe1fbeebc0747f0903933da9238a24c63eeed2c6c15bfc5cae5ce6e3e2eb4a18511d6258 WHIRLPOOL 785e0fa7a0652825b977562a1febbd95463ce49a9257a004827725597e0fbd59f9bdf75cc31f5b04e0f04be3d0d68e90148c06dd5d03875063312f8a3cd5bc86
DIST virtualbox-4.3.16-patches-01.tar.xz 4288 SHA256 270c4f01b2c13c4133987b3acc073dfbf78840212cf09f083dbf8fc80407ce6f SHA512 595f88c4b388b4807347c15c1750ec73aceba1c82ad993e9a05c7b78dfece7b679aff0338b3a48e2ccee7911fb5ed0dba803052332a270230078551f747052bc WHIRLPOOL 2157ee3fb9beed906cff28647c869e37d62551ad8c93801c0f0ec6893675f11786aa6d92acf11c348d30aa58b6e03a3faa879c664dddac6e5b8525035986c9ca
DIST virtualbox-5.0.2-patches-01.tar.xz 4556 SHA256 8fcfa7972b0942f3e65bda73a35a6feb234aad770016fb4caafba105757d7ada SHA512 14ce8f0b17e593b2de676e0beaab688f29606aaea330151038fbb9259d3f5e4c22f254d1fa6cc45f968d81cf9f7d71deb9a7a32f565d07c1d9fa615431472ca9 WHIRLPOOL be73fd5576732f70f6ebb33a9d604d46a8fabdbdb0e187af3435f75412e21f62c0774130a9a6315e6b87ecf96d02398ffce828b3ab8f584716ed9a12e06d7cde
diff --git a/app-emulation/virtualbox/files/virtualbox-5-localconfig b/app-emulation/virtualbox/files/virtualbox-5-localconfig
index efa8773cf5..05e7dbabda 100644
--- a/app-emulation/virtualbox/files/virtualbox-5-localconfig
+++ b/app-emulation/virtualbox/files/virtualbox-5-localconfig
@@ -43,3 +43,5 @@ VBOX_WITH_KCHMVIEWER :=
## don't build with -Werror
VBOX_WITH_WARNINGS_AS_ERRORS :=
+## fix compilation with USE="doc" (Gentoo bug #554932)
+VBOX_PATH_DOCBOOK_DTD := /usr/share/sgml/docbook/sgml-dtd-4.4
diff --git a/app-emulation/virtualbox/metadata.xml b/app-emulation/virtualbox/metadata.xml
index 7150ec6cbf..2e30fb8801 100644
--- a/app-emulation/virtualbox/metadata.xml
+++ b/app-emulation/virtualbox/metadata.xml
@@ -1,20 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>polynomial-c@gentoo.org</email>
<name>Lars Wendler</name>
</maintainer>
- <maintainer>
+ <maintainer type="person">
<email>patrick@gentoo.org</email>
<name>Patrick Lauer</name>
</maintainer>
<use>
- <flag name='additions'>Install Guest System Tools ISO</flag>
- <flag name='extensions'>Install extension module packages</flag>
- <flag name='headless'>Build without any graphic frontend</flag>
- <flag name='sdk'>Enable building of SDK</flag>
- <flag name='udev'>Controls installation of special USB udev rules.</flag>
- <flag name='vboxwebsrv'>Build and install the VirtualBox webservice</flag>
+ <flag name="additions">Install Guest System Tools ISO</flag>
+ <flag name="extensions">Install extension module packages</flag>
+ <flag name="headless">Build without any graphic frontend</flag>
+ <flag name="sdk">Enable building of SDK</flag>
+ <flag name="udev">Controls installation of special USB udev rules.</flag>
+ <flag name="vboxwebsrv">Build and install the VirtualBox webservice</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/virtualbox/virtualbox-5.0.10.ebuild b/app-emulation/virtualbox/virtualbox-5.0.12.ebuild
index 6a55b85601..6a55b85601 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.10.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.12.ebuild
diff --git a/app-emulation/virtualbox/virtualbox-5.0.8.ebuild b/app-emulation/virtualbox/virtualbox-5.0.14.ebuild
index 6a55b85601..4c09818cfd 100644
--- a/app-emulation/virtualbox/virtualbox-5.0.8.ebuild
+++ b/app-emulation/virtualbox/virtualbox-5.0.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
diff --git a/app-emulation/vmips-cross-bin/metadata.xml b/app-emulation/vmips-cross-bin/metadata.xml
index 10ebbcc16e..16f5903317 100644
--- a/app-emulation/vmips-cross-bin/metadata.xml
+++ b/app-emulation/vmips-cross-bin/metadata.xml
@@ -1,9 +1,6 @@
-<?xml version='1.0' encoding='UTF-8'?>
+<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<upstream>
<remote-id type="sourceforge">vmips</remote-id>
</upstream>
diff --git a/app-emulation/vmips/metadata.xml b/app-emulation/vmips/metadata.xml
index 54b23519c1..16f5903317 100644
--- a/app-emulation/vmips/metadata.xml
+++ b/app-emulation/vmips/metadata.xml
@@ -1,9 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
<upstream>
<remote-id type="sourceforge">vmips</remote-id>
</upstream>
diff --git a/app-emulation/vmware-modules/metadata.xml b/app-emulation/vmware-modules/metadata.xml
index 313c1627f0..dec09dcab0 100644
--- a/app-emulation/vmware-modules/metadata.xml
+++ b/app-emulation/vmware-modules/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>vmware</herd>
+ <maintainer type="project">
+ <email>vmware@gentoo.org</email>
+ <name>Gentoo VMware Project</name>
+ </maintainer>
<longdescription>
VMware kernel modules.
</longdescription>
diff --git a/app-emulation/vmware-player/metadata.xml b/app-emulation/vmware-player/metadata.xml
index 47a08130e1..611b1a2983 100644
--- a/app-emulation/vmware-player/metadata.xml
+++ b/app-emulation/vmware-player/metadata.xml
@@ -1,9 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>vmware</herd>
+ <maintainer type="project">
+ <email>vmware@gentoo.org</email>
+ <name>Gentoo VMware Project</name>
+ </maintainer>
<use>
- <flag name='ovftool'>Install OVF tool for importing and exporting appliance files</flag>
+ <flag name="ovftool">Install OVF tool for importing and exporting appliance files</flag>
<flag name="vmware-tools">Install VMware Tools images</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/vmware-tools/metadata.xml b/app-emulation/vmware-tools/metadata.xml
index 672ebec01f..4e48633499 100644
--- a/app-emulation/vmware-tools/metadata.xml
+++ b/app-emulation/vmware-tools/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>vmware</herd>
+ <maintainer type="project">
+ <email>vmware@gentoo.org</email>
+ <name>Gentoo VMware Project</name>
+ </maintainer>
</pkgmetadata>
diff --git a/app-emulation/vmware-vix/metadata.xml b/app-emulation/vmware-vix/metadata.xml
index bf1b34bea2..aa65fcbf15 100644
--- a/app-emulation/vmware-vix/metadata.xml
+++ b/app-emulation/vmware-vix/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>vmware</herd>
+ <maintainer type="project">
+ <email>vmware@gentoo.org</email>
+ <name>Gentoo VMware Project</name>
+ </maintainer>
<longdescription>
The VIX API allows you to write programs and scripts that automate
virtual machine operations, as well as the guests within virtual
diff --git a/app-emulation/vmware-workstation/Manifest b/app-emulation/vmware-workstation/Manifest
index b2c8179261..aad0aabb39 100644
--- a/app-emulation/vmware-workstation/Manifest
+++ b/app-emulation/vmware-workstation/Manifest
@@ -4,3 +4,4 @@ DIST VMware-Workstation-11.1.2-2780323.x86_64.bundle.tar 259133440 SHA256 085b50
DIST VMware-Workstation-9.0.3-1410761.i386.bundle.tar 264908800 SHA256 dfe9aaa75987793eac096c0fbdb364f94e354ab668213774ea3e90d5ddcecdc0 SHA512 5d0943400cb1fefca20f1a81d3989bf5cdda5e123d1a70b09ebc20a56498d36f597ed7a0730d2f6f752c3c4baad2c86d5ef7691e8d245147d944c6f7e4e708b0 WHIRLPOOL 14a950f2deb03c3b7a088d4fb50378c7109330d89903965c28ead0be1e2223dbce05a628b1ea859215d31a8978f497bd8f807652cf266667d67893eaf2d7372b
DIST VMware-Workstation-9.0.3-1410761.x86_64.bundle.tar 232724480 SHA256 2612f8a523c9f23164d7557c105520bc6e010af82b3e6d4a3ada04d8ff03cbf0 SHA512 07923231e481550cb0348e40ef341c2d0682ac0daf6c8e0ada130c03113f43a37bf322e64fb9dc73511dea0fd2851f3cb4f5e755bbad4beba9e3cc4e69566070 WHIRLPOOL d979f2d9ef8888be89d5747c16e0db7ca45609cd9d77d84baf8485b4956f9e9f99bf46c33a2690b7b1fea851c0495ed0a06b36e3e69b51abfc11604d9a62fe4d
DIST gentoo-01.tar.gz 1884 SHA256 e92c694865f1b29f4d7a39efa1dd87bc71dc5f922573f00a3d31ee8e27a8c335 SHA512 454ab93997781bd0a9accddb2ac7bb446f07ea7cddef5640369025c30e03592e14869e0f0f7b4457db2f1ada31c98051426016c86201afa8bc8e3aa4ccc2f875 WHIRLPOOL 9202583b617532ab2612b384da307218e7c93c2962f0d233e28bea066b07163c9bc51c0a599309f9d703c5575ebeb292d787716225624dc1c2fdff3c44fa3513
+DIST vmware-systemd-gentoo-01.tgz 1884 SHA256 e92c694865f1b29f4d7a39efa1dd87bc71dc5f922573f00a3d31ee8e27a8c335 SHA512 454ab93997781bd0a9accddb2ac7bb446f07ea7cddef5640369025c30e03592e14869e0f0f7b4457db2f1ada31c98051426016c86201afa8bc8e3aa4ccc2f875 WHIRLPOOL 9202583b617532ab2612b384da307218e7c93c2962f0d233e28bea066b07163c9bc51c0a599309f9d703c5575ebeb292d787716225624dc1c2fdff3c44fa3513
diff --git a/app-emulation/vmware-workstation/metadata.xml b/app-emulation/vmware-workstation/metadata.xml
index 7570b9e39a..9845071542 100644
--- a/app-emulation/vmware-workstation/metadata.xml
+++ b/app-emulation/vmware-workstation/metadata.xml
@@ -1,12 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>vmware</herd>
+ <maintainer type="project">
+ <email>vmware@gentoo.org</email>
+ <name>Gentoo VMware Project</name>
+ </maintainer>
<longdescription>
VMWare Workstation is a virtual machine which can be used to install
other operating systems in a virtual environment to run on top of Gentoo.
</longdescription>
<use>
+ <flag name="bundled-libs">Use precompiled bundled libraries instead of the system installation</flag>
<flag name="ovftool">Install OVF tool.</flag>
<flag name="server">Install VMware Workstation Server component.</flag>
<flag name="vix">Install VIX. The VIX API allows you to write programs and scripts
diff --git a/app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323.ebuild b/app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323-r4.ebuild
index cf0493d20c..530e270810 100644
--- a/app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323.ebuild
+++ b/app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323-r4.ebuild
@@ -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
-inherit eutils versionator fdo-mime systemd gnome2-utils pam vmware-bundle
+inherit eutils versionator readme.gentoo fdo-mime systemd gnome2-utils pam vmware-bundle
MY_PN="VMware-Workstation"
MY_PV=$(get_version_component_range 1-3)
@@ -14,33 +14,89 @@ MY_P="${MY_PN}-${MY_PV}-${PV_BUILD}"
SYSTEMD_UNITS_TAG="gentoo-01"
-DESCRIPTION="Emulate a complete PC on your PC without the usual performance overhead of most emulators"
+DESCRIPTION="Emulate a complete PC without the performance overhead of most emulators"
HOMEPAGE="http://www.vmware.com/products/workstation/"
BASE_URI="https://softwareupdate.vmware.com/cds/vmw-desktop/ws/${MY_PV}/${PV_BUILD}/linux/core/"
SRC_URI="
amd64? ( ${BASE_URI}${MY_P}.x86_64.bundle.tar )
- https://github.com/akhuettel/systemd-vmware/archive/${SYSTEMD_UNITS_TAG}.tar.gz
+ https://github.com/akhuettel/systemd-vmware/archive/${SYSTEMD_UNITS_TAG}.tar.gz -> vmware-systemd-${SYSTEMD_UNITS_TAG}.tgz
"
LICENSE="vmware GPL-2"
SLOT="0"
KEYWORDS="-* ~amd64"
-IUSE="cups doc ovftool server vix vmware-tools"
-RESTRICT="mirror strip"
+IUSE="cups bundled-libs doc ovftool server vix vmware-tools"
+RESTRICT="mirror strip preserve-libs"
+
+BUNDLED_LIBS_DIR=/opt/vmware/lib/vmware/lib
+
+BUNDLED_LIBS="
+ libXau.so.6
+ libXcomposite.so.1
+ libXcursor.so.1
+ libXdamage.so.1
+ libXdmcp.so.6
+ libXfixes.so.3
+ libXft.so.2
+ libXinerama.so.1
+ libXrandr.so.2
+ libXrender.so.1
+ libaio.so.1
+ libatk-1.0.so.0
+ libatkmm-1.6.so.1
+ libatspi.so.0
+ libcairo.so.2
+ libcairomm-1.0.so.1
+ libcurl.so.4
+ libdbus-1.so.3
+ libfontconfig.so.1
+ libfreetype.so.6
+ libfuse.so.2
+ libgailutil.so.18
+ libgdk-x11-2.0.so.0
+ libgcrypt.so.11
+ libgdk_pixbuf-2.0.so.0
+ libgdkmm-2.4.so.1
+ libgio-2.0.so.0
+ libgiomm-2.4.so.1
+"
+
+BUNDLED_LIB_DEPENDS="
+ x11-libs/libXau
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXdmcp
+ x11-libs/libXfixes
+ x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ dev-libs/libaio
+ dev-libs/atk
+ dev-cpp/atkmm
+ app-accessibility/at-spi2-core
+ x11-libs/cairo
+ dev-cpp/cairomm
+ net-misc/curl
+ media-libs/fontconfig
+ media-libs/freetype
+ sys-fs/fuse
+ x11-libs/gtk+:2
+ =dev-libs/libgcrypt-1.5*
+ x11-libs/gdk-pixbuf:2
+ dev-cpp/gtkmm:2.4
+ dev-libs/glib:2
+ dev-cpp/glibmm:2
+"
# vmware-workstation should not use virtual/libc as this is a
# precompiled binary package thats linked to glibc.
-RDEPEND="dev-cpp/cairomm
- dev-cpp/glibmm:2
- dev-cpp/gtkmm:2.4
+RDEPEND="
dev-cpp/libgnomecanvasmm
dev-cpp/pangomm
- dev-libs/atk
- dev-libs/glib:2
dev-libs/icu
dev-libs/expat
- dev-libs/libaio
- =dev-libs/libgcrypt-1.5*
- dev-libs/libsigc++
+ dev-libs/libsigc++:2
dev-libs/libxml2
dev-libs/openssl:0.9.8
dev-libs/xmlrpc-c
@@ -48,43 +104,30 @@ RDEPEND="dev-cpp/cairomm
gnome-base/libgtop:2
gnome-base/librsvg:2
gnome-base/orbit
- media-libs/fontconfig
- media-libs/freetype
media-libs/libart_lgpl
media-libs/libpng:1.2
media-libs/libpng
media-libs/tiff:3
- net-misc/curl
cups? ( net-print/cups )
sys-devel/gcc
- sys-fs/fuse
sys-libs/glibc
sys-libs/zlib
- x11-libs/cairo
- x11-libs/gtk+:2
x11-libs/libgksu
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
- x11-libs/libXau
x11-libs/libxcb
- x11-libs/libXcomposite
- x11-libs/libXcursor
- x11-libs/libXdamage
- x11-libs/libXdmcp
x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXft
x11-libs/libXi
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libXrender
x11-libs/libXtst
x11-libs/pango
x11-libs/pangox-compat
x11-libs/startup-notification
x11-themes/hicolor-icon-theme
- !app-emulation/vmware-player"
+ !app-emulation/vmware-player
+ !bundled-libs? ( ${BUNDLED_LIB_DEPENDS} )
+ sys-apps/dbus
+"
PDEPEND="~app-emulation/vmware-modules-304.${PV_MINOR}
vmware-tools? ( app-emulation/vmware-tools )"
@@ -93,6 +136,10 @@ VM_INSTALL_DIR="/opt/vmware"
VM_DATA_STORE_DIR="/var/lib/vmware/Shared VMs"
VM_HOSTD_USER="root"
+QA_PREBUILT="/opt/*"
+
+QA_WX_LOAD="/opt/vmware/lib/vmware/tools-upgraders/vmware-tools-upgrader-32 /opt/vmware/lib/vmware/bin/vmware-vmx-stats /opt/vmware/lib/vmware/bin/vmware-vmx-debug /opt/vmware/lib/vmware/bin/vmware-vmx"
+
src_unpack() {
default
local bundle
@@ -123,6 +170,13 @@ src_unpack() {
fi
}
+clean_bundled_libs() {
+ einfo Removing bundled libraries
+ for libname in ${BUNDLED_LIBS} ; do
+ rm -rv "${S}"/lib/lib/${libname} || die "Failed removing bundled ${libname}"
+ done
+}
+
src_prepare() {
rm -f bin/vmware-modconfig
rm -rf lib/modules/binary
@@ -135,20 +189,18 @@ src_prepare() {
find "${S}" -name '*.a' -delete
-# clean_bundled_libs
-}
+ if ! use bundled-libs ; then
+ clean_bundled_libs
+ fi
-clean_bundled_libs() {
- ebegin 'Removing superfluous libraries'
- cd lib/lib || die
- ldconfig -p | \
- sed 's:^\s\+\([^(]*[^( ]\).*=> /.*$:\1:g;t;d' | \
- fgrep -vx 'libcrypto.so.0.9.8
-libssl.so.0.9.8i
-libgcr.so.0
-libglib-2.0.so.0' |
- xargs -d'\n' -r rm -rf
- eend
+ DOC_CONTENTS="
+/etc/env.d is updated during ${PN} installation. Please run:\n
+env-update && source /etc/profile\n
+Before you can use vmware workstation, you must configure a default network setup.
+You can do this by running 'emerge --config ${PN}'.\n
+To be able to run ${PN} your user must be in the vmware group.\n
+You MUST set USE=bundled-libs if you are running gcc-5, otherwise vmware will not start.
+"
}
src_install() {
@@ -317,6 +369,9 @@ src_install() {
PATH='${VM_INSTALL_DIR}/bin'
ROOTPATH='${VM_INSTALL_DIR}/bin'
EOF
+
+ use bundled-libs && echo 'VMWARE_USE_SHIPPED_LIBS=1' >> "${envd}"
+
doenvd "${envd}"
# create the configuration
@@ -465,6 +520,8 @@ src_install() {
# install systemd unit files
systemd_dounit "${WORKDIR}/systemd-vmware-${SYSTEMD_UNITS_TAG}/"*.{service,target}
+
+ readme.gentoo_create_doc
}
pkg_config() {
@@ -478,12 +535,7 @@ pkg_preinst() {
pkg_postinst() {
fdo-mime_desktop_database_update
gnome2_icon_cache_update
-
- ewarn "/etc/env.d was updated. Please run:"
- ewarn "env-update && source /etc/profile"
- ewarn ""
- ewarn "Before you can use vmware workstation, you must configure a default network setup."
- ewarn "You can do this by running 'emerge --config ${PN}'."
+ readme.gentoo_pkg_postinst
}
pkg_prerm() {
diff --git a/app-emulation/vov/metadata.xml b/app-emulation/vov/metadata.xml
index 2abfac6f73..ea5b19f45f 100644
--- a/app-emulation/vov/metadata.xml
+++ b/app-emulation/vov/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>dlan@gentoo.org</email>
<name>Yixun Lan</name>
</maintainer>
@@ -12,6 +12,6 @@
manipulation. It is a very useful tool to see if your programs work and how.
</longdescription>
<use>
- <flag name='gprof'>build with profiling support</flag>
+ <flag name="gprof">build with profiling support</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/vpcs/metadata.xml b/app-emulation/vpcs/metadata.xml
index ae582a9022..dd7e2b1559 100644
--- a/app-emulation/vpcs/metadata.xml
+++ b/app-emulation/vpcs/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>bman@gentoo.org</email>
<name>Aaron Bauman</name>
</maintainer>
diff --git a/app-emulation/wine/Manifest b/app-emulation/wine/Manifest
index b3ed6a94c7..3592040b6f 100644
--- a/app-emulation/wine/Manifest
+++ b/app-emulation/wine/Manifest
@@ -38,9 +38,11 @@ DIST wine-1.7.51.tar.bz2 22639053 SHA256 397fc95b463d6ae1b65ab0477d9fe5d0871e8e2
DIST wine-1.7.52.tar.bz2 22707539 SHA256 0773b32a0c358323db4c383ceb1e9e28d5d4ed4ea37570af2bcb41fecf0d554b SHA512 834a77553d1352840c747ab5dc3e582b15da4ea65f16f9d58d0cc8afb460b4a0fded859929331dd32d9f4f66ab14bb890cf239d0a283bf9ffd92b48f9d1687de WHIRLPOOL 7e6cc679d994449e7f822c2593d1e8cc87d439df6084ad7d48897f3829b866219a0674e81e1fecdc5629225cd3c6ca2735212e1a0cb9d41a236af4674b62d077
DIST wine-1.7.53.tar.bz2 22763993 SHA256 efba70b106cde683a50a4b1f42df3d900f8ffc291a3689cb897afcc12cc2c6a3 SHA512 82c53c5a7913f5c3ab38239f6cd4dc5ec16db878b8ff9ff46162f11f72c13a3da9c1dc80e7eddef5eb2b909e7b8cd771294cfdc79d734d643aecfeefb0059401 WHIRLPOOL 054640d64794e0eac3b41c359353a8d322f9ae9a9a01969616fe6f9207d4276909d4fa17c7a2b167d705166490df523b3dcaf738efab0a71bfab26ea59eeafe1
DIST wine-1.7.54.tar.bz2 22800326 SHA256 e0f311f392815468df774b33312cde80bf1ff3a894c9c2b462825fd49619bb27 SHA512 15c9c80518d41486da416d531f7be101353d379bcd8fd309395d2932eceabb3fa5cd8180066f73d13c6a211495146bb544a8878657cf9ca8e5e14987a038a6c7 WHIRLPOOL b1f6f3e4149307f8c0b3feb443dd7b36e8a5c81b8b7b41f6c39167590fb13057174c95723f262082465fe1696c17d9216ea93ad2f8ce1e8f5c8d7aadc12d5425
+DIST wine-1.7.55-gstreamer-v5.patch.bz2 5800 SHA256 9ce03b6bc404dec4ed82208dcaa5cbe282c6df7da51392369fcb933de9273c2c SHA512 2f73c44ca66462cc64570645771fd4b3289525393098ef499ba7199745f836c313572145e3f3d259f9f1c6b7c876e15b2f909a914dd1e21eaa79d9671b40f105 WHIRLPOOL 444e456fb82de3b59342eb6d3a28805a3f068e70e6417a16489c784932c486e812807698f29dee5d9715d22bd1e31c733ed649d7396746008a552bc78ee27e55
DIST wine-1.7.55.tar.bz2 22814631 SHA256 a148f6c9cb45a75ef1a15e60a7db9c22fce985e0e58fe1350e7931dfe5d36119 SHA512 f47025017836ce1bbf2ed69c7d7421bd8a2f33ff94ced4a5caf92f4fabdf336119c80a28aeb8ba1ebe0239871a6ac62d8af8435d220c317624c17aabc2100dd7 WHIRLPOOL c5575d2ef687caccbdb5cc09a0c6a4ba9f65ec9674cbe3f23ecfced62710dcb0019a11ff66f2ec4c2eafdb30d9891abad158ac4f865cc580a2878067de7304d7
DIST wine-1.7.8.tar.bz2 21463503 SHA256 30e17f5f863a09416f3d229666566b318dbb40f683d4ca6630012c60bb511804 SHA512 1fdaddb7909f818050854bf351d20f445cf6a5906b1bcc789c96ee8d5058c90815a91bbbc6444f3e4527748764f03ab5297585c174b433093a3354a827402fea WHIRLPOOL 3b5b18384ff04b80b936160c2c6e03676d69663c023f484981305c9272d0601b74cda5c5f7d56008b3900d702b1a4fe1929f16b1fba304a6480b076ffede663a
DIST wine-1.7.9.tar.bz2 21323337 SHA256 79f99ecc24696915439c474c4953bb77652ab53f16b41daa4da270fe43279c5a SHA512 29f8aa715ebe47c8a06bd5f6a80cac3fb75b2ca7aa81648cc8aed5461cfd825e4da68b6209ca672dce42b968521cfd9bffffaadd2d85b904b55d99687a1c83d0 WHIRLPOOL 333fee72b2a0e9d6ab8a003712c38166bd27aaff384a2b940c089ecc846f7669c59efbeb5cdc2fc87a46d63b0d29d0335873bb7c22f05913bad430b81990241a
+DIST wine-1.8.tar.bz2 22843418 SHA256 f33b45c18112b2071fbf9edee0e8c575407f9e2a9855ca4ee918ed33efa7c6f4 SHA512 34308e82e04dee714fdbd10f29cd6cf6326e5e6e9134f7076e58b09988211065b8c6584881b7e5dcbc9b3906a819ab8a72b612b060cb9aa50b5b67f03bdab089 WHIRLPOOL 335a48f1b34cd1038d62290e52c3189b842d4077b7cf0bcb9d003595992360dc36eac1c592d31db44598de68010f3934daa1f4bcd0a2ca74aa130a39a74f7ce3
DIST wine-gentoo-2013.06.24.tar.bz2 85442 SHA256 bfbf6b25e98f717320de2ede467e3628fbc749d936b8449f8477c9dc6f41e04b SHA512 b6819889314f6a6ea16c1332f4b177c43623116763969c31b23b61754cd304dd085f5d3eafbe847159331eb97dddd9b4c10699430129ea4a71da418c1fe175f0 WHIRLPOOL 227e0ac6569736d4ad5813cef49f775dae956f4fc9255de95753d5d3cba1bf6cf3db31d23d3702bb54d2e60c5a6f779b602f0efb2096e4c827c924565b273d00
DIST wine-gentoo-2015.03.07.tar.bz2 85419 SHA256 f13f93dc49bbc33a294c4d511b6e01aec2d38bff77a1e44d07668291add1ab04 SHA512 bae1d2d5575d340d01f44008104f0e5ec0c4a4982995dec37d501594cd21d07a2b4ad4465c4273646d5bf6521996b4b82471097864be75342abe3e7d478a56bd WHIRLPOOL 0f254dd692e87a1f71dd19f6c1c8c59b8a91b994e75912a2e6e3ba5e875b85119fe497a331a95c2ce33bbf5f064143d23ee00275da92c494227de0807c9abb06
DIST wine-mono-0.0.8.msi 46967296 SHA256 3dfc23bbc29015e4e538dab8b83cb825d3248a0e5cf3b3318503ee7331115402 SHA512 d3009f2301b0a006136e880025a736f24612faa7a954956896124ec7282d35b678f02658e8be12b1c02ee217e594a2c728a9258c36ccb346b186a4781951adbd WHIRLPOOL 1d4b2e88ebab1f603326a238cc908982c7e135a33340087e8645572838d2b6034764e9fe787bb890792dea4c0531d26f9a6a811a7c200edb99ab82f975179389
@@ -74,6 +76,7 @@ DIST wine-staging-1.7.52.tar.gz 9654310 SHA256 84354a10e4226b5e456abb6d5727f4514
DIST wine-staging-1.7.53.tar.gz 9638222 SHA256 438f41165987a57635694dba2f67cc435cd630581b13cafe0c85daacf37a102a SHA512 716840c44923848a28b481f6b4e422ef84fe33bef33a650c183c62be0dbec34471375fe2b1911382282f293fd5135ce133cdb775acd7df98029be2e4646b6d9e WHIRLPOOL 702555a706e50521ca6864b7b29ee4a4774fc8d770775c5186728b19e2c71ba6040ce98f86a772435c0d2f0a4363bc2a1e8f0b13ffbbe9395c072d3d89d1118c
DIST wine-staging-1.7.54.tar.gz 9647030 SHA256 b244ab05326e0a4c149beba0684afc100d44dca8e6ff606bcfee883b21b27303 SHA512 f6e58be01ba10121d6904cb238b2d91dd79cb7d14d623c00a897e655adb88332bea125cedf3fad85e680c76aacfbab16dd5035c322278155defd3b493054aa23 WHIRLPOOL 4c053ad96e67f4e82c93d3cfa9b6f885c4c3fe693946dd0e2a30cef556aac55f9dcafb5c56ced0f714f8ea9448cb4e22f144ea7f3561cfdb5bbff1b049d34f07
DIST wine-staging-1.7.55.tar.gz 9604441 SHA256 856b630fe95250e3d2dfc80588529e42e92e37f2e974ce8d3da37b39bf5cc3c3 SHA512 a6fbfa01b6d6efc75f79235aea86091c32ddf91ca300c73325c8347949c627f53ceb0fe085d6c212602797b0496d36c0a79f08eae4644a17774e95906332032d WHIRLPOOL ad232568c9df5d436a79a3557c82e231eed121356d8db1f5a3c0e7249b6c2760d87bb433ff30d6db53ce190b2d49401aa387b06f0c3f74925aefea7b1d73f112
+DIST wine-staging-1.8.tar.gz 9632566 SHA256 c66f3dd6a760d516affe7467c4fb2d15ea8e2f0c72bcda1982219948dcdff11b SHA512 7b030b217ed0b37b8037d782406f75fcdb681c81371eafcab87175c0e6ac8b50fc58fe364e933e79eff168c1755412276fae3f914b7c36a6937aea1f6e35b022 WHIRLPOOL 8cff5d1d4c23405b820dbf9e7f73f7bba785e04ec2d9087b0977bb7aa1e6b84c2e6c3ac2f9cc72ba3c16f2b9c8c3607ea02ef1cd52d428a2b441333a424d9a21
DIST wine_gecko-2.21-x86.msi 20871680 SHA256 f01fafa6d7aab995c38add77315c4cbc2f32f52d5d6a9350056f42b62d631fd8 SHA512 f4ca9ca5b876dc39e906991e58c6da8ef4103782f83ba781ff27556c0ebdab7fe10c14f0551e900442a5d57a2c619da6e5ed6ed42323edcdd55ce9789c4c83ac WHIRLPOOL d1db97175b047652499c97c968b71c08c5b44774423f22ae626f89b4dde3d03b46295e5caae228f1f8614209e943e8246854b478eef3abb186e8de4c341b0a0d
DIST wine_gecko-2.21-x86_64.msi 21646336 SHA256 bc370bdc899f66d98f31c4d410a6952aa82c0c9c0a0ec27f2a11243c9b412c3f SHA512 2a48a7697beba4e45816a9eff09e181de353d8c93e02a70108fa77d27136cd5cd75b21c42caa7702a09f86544669ae2bbfc6975b1fc0d7fcb20150a4bc4ea514 WHIRLPOOL 2fce9b9a190a52c173551d47428dd8b8dc54d5878682733e0006a3f06f216cd9f47a88ada49f92fa5697ece8b2942a88f937bd2722b4cb85d2c35c19bda29b85
DIST wine_gecko-2.24-x86.msi 22373888 SHA256 6e38acae87ea66e2c1e8f2f0afe88f89eed3e6e0b431cd3da38dea814b71202c SHA512 f158d28ca09bc900a2680892e7ac10770e06050a9251e1ec3a953fee0bf9b1c326e166f92fb88a4648297b6587c91a5ef5af35f267bb2ba5f679da4c8fdb6898 WHIRLPOOL bbe7a2572d89dc5e0347ba11b2014bac79fc4427d7551655313a46b147a79c1607b7f46596877c459ddaa0e202337fb3d217429ddd6a4df49ee33b373a788487
diff --git a/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-post.patch b/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-post.patch
new file mode 100644
index 0000000000..c36dd4d750
--- /dev/null
+++ b/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-post.patch
@@ -0,0 +1,51 @@
+From 2f0514345d325ecd20a88e3b0cb896ca9d23deae Mon Sep 17 00:00:00 2001
+From: Sebastian Lackner <sebastian@fds-team.de>
+Date: Thu, 19 Mar 2015 07:56:04 +0100
+Subject: Reapply various changes conflicting with Maarten Lankhorst's
+ gstreamer hack v5.
+
+---
+ dlls/ntdll/ntdll_misc.h | 1 +
+ dlls/ntdll/thread.c | 7 +++++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/dlls/ntdll/ntdll_misc.h b/dlls/ntdll/ntdll_misc.h
+index e1be304..d5bc678 100644
+--- a/dlls/ntdll/ntdll_misc.h
++++ b/dlls/ntdll/ntdll_misc.h
+@@ -244,6 +244,7 @@ struct ntdll_thread_data
+ WINE_VM86_TEB_INFO vm86; /* 1fc vm86 private data */
+ void *exit_frame; /* 204 exit frame pointer */
+ #endif
++ void *pthread_stack; /* 208/318 pthread stack */
+ struct list entry;
+ BOOL detached;
+ };
+diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c
+index 2011c1e2..9f824eb 100644
+--- a/dlls/ntdll/thread.c
++++ b/dlls/ntdll/thread.c
+@@ -467,6 +467,8 @@ static void exit_thread_common( int status )
+ static void *prev_teb;
+ TEB *teb;
+ #endif
++ shmlocal_t *shmlocal;
++ sigset_t sigset;
+
+ if (status) /* send the exit code to the server (0 is already the default) */
+ {
+@@ -508,6 +510,11 @@ static void exit_thread_common( int status )
+ reap_thread(NtCurrentTeb());
+ #endif
+
++ sigemptyset( &sigset );
++ sigaddset( &sigset, SIGQUIT );
++ pthread_sigmask( SIG_BLOCK, &sigset, NULL );
++ if (interlocked_xchg_add( &nb_threads, -1 ) <= 1) _exit( status );
++
+ close( ntdll_get_thread_data()->wait_fd[0] );
+ close( ntdll_get_thread_data()->wait_fd[1] );
+ close( ntdll_get_thread_data()->reply_fd );
+--
+2.6.4
+
diff --git a/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-pre.patch b/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-pre.patch
new file mode 100644
index 0000000000..e9c9ac18a1
--- /dev/null
+++ b/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-pre.patch
@@ -0,0 +1,53 @@
+From c96187cdbddd742728557062b85d05ac320c3e8f Mon Sep 17 00:00:00 2001
+From: Sebastian Lackner <sebastian@fds-team.de>
+Date: Thu, 19 Mar 2015 07:51:48 +0100
+Subject: Revert various changes conflicting with Maarten Lankhorst's gstreamer
+ hack v5.
+
+Note: These changes have to be reapplied with the corresponding -post patchset
+afterwards.
+---
+ dlls/ntdll/ntdll_misc.h | 1 -
+ dlls/ntdll/thread.c | 7 -------
+ 2 files changed, 8 deletions(-)
+
+diff --git a/dlls/ntdll/ntdll_misc.h b/dlls/ntdll/ntdll_misc.h
+index e7facf3..88531df 100644
+--- a/dlls/ntdll/ntdll_misc.h
++++ b/dlls/ntdll/ntdll_misc.h
+@@ -243,7 +243,6 @@ struct ntdll_thread_data
+ WINE_VM86_TEB_INFO vm86; /* 1fc vm86 private data */
+ void *exit_frame; /* 204 exit frame pointer */
+ #endif
+- void *pthread_stack; /* 208/318 pthread stack */
+ };
+
+ C_ASSERT( FIELD_OFFSET(TEB, SpareBytes1) + sizeof(struct ntdll_thread_data) <=
+diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c
+index 6ad4b95..3ad51a2 100644
+--- a/dlls/ntdll/thread.c
++++ b/dlls/ntdll/thread.c
+@@ -391,8 +391,6 @@ void terminate_thread( int status )
+ void exit_thread( int status )
+ {
+ static void *prev_teb;
+- shmlocal_t *shmlocal;
+- sigset_t sigset;
+ TEB *teb;
+
+ if (status) /* send the exit code to the server (0 is already the default) */
+@@ -431,11 +429,6 @@ void exit_thread( int status )
+ }
+ }
+
+- sigemptyset( &sigset );
+- sigaddset( &sigset, SIGQUIT );
+- pthread_sigmask( SIG_BLOCK, &sigset, NULL );
+- if (interlocked_xchg_add( &nb_threads, -1 ) <= 1) _exit( status );
+-
+ close( ntdll_get_thread_data()->wait_fd[0] );
+ close( ntdll_get_thread_data()->wait_fd[1] );
+ close( ntdll_get_thread_data()->reply_fd );
+--
+2.6.4
+
diff --git a/app-emulation/wine/metadata.xml b/app-emulation/wine/metadata.xml
index fbf2c5b682..6efa58c54b 100644
--- a/app-emulation/wine/metadata.xml
+++ b/app-emulation/wine/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>wine</herd>
+ <maintainer type="project">
+ <email>wine@gentoo.org</email>
+ <name>Wine</name>
+ </maintainer>
<longdescription>
Wine is an Open Source implementation of the Windows API on top of X and Unix.
@@ -12,21 +15,25 @@ Think of Wine as a compatibility layer for running Windows programs. Wine does n
<flag name="custom-cflags">Bypass strip-flags; use at your own peril</flag>
<flag name="dos">Pull in <pkg>games-emulation/dosbox</pkg> to run DOS applications</flag>
<flag name="gecko">Add support for the Gecko engine when using iexplore</flag>
+ <flag name="gstreamer">Use <pkg>media-libs/gstreamer</pkg> to provide DirectShow functionality;
+ For versions less than wine-1.9.2, uses experimental patch which may break some apps</flag>
<flag name="mono">Add support for .NET using Wine's Mono add-on</flag>
<flag name="netapi">Use libnetapi from <pkg>net-fs/samba</pkg> to support Windows networks in netapi32.dll</flag>
<flag name="opencl">Enable OpenCL support</flag>
<flag name="osmesa">Add support for OpenGL in bitmaps using libOSMesa</flag>
<flag name="pcap">Support packet capture software (e.g. wireshark)</flag>
<flag name="perl">Install helpers written in perl (winedump/winemaker)</flag>
- <flag name="pipelight">Apply unofficial Wine-Staging patches for Pipelight/Silverlight support</flag>
- <flag name="prelink">Run prelink on DLLs during build -- do not disable if you do not know what this means as it can break things at runtime</flag>
+ <flag name="pipelight">Apply Wine-Staging patches for Pipelight/Silverlight support</flag>
+ <flag name="prelink">Run prelink on DLLs during build;
+ For versions less than wine-1.7.55 or hardened, do not disable if you do not know what this means as it can break things at runtime</flag>
<flag name="realtime">Pull in <pkg>sys-auth/rtkit</pkg> for low-latency pulseaudio support</flag>
<flag name="run-exes">Use Wine to open and run .EXE and .MSI files</flag>
<flag name="s3tc">Pull in <pkg>media-libs/libtxc_dxtn</pkg> for DXTn texture compression, needed for many games</flag>
<flag name="samba">Add support for NTLM auth. see
http://wiki.winehq.org/NtlmAuthSetupGuide and
http://wiki.winehq.org/NtlmSigningAndSealing</flag>
- <flag name="staging">Apply unofficial Wine-Staging patches for advanced feature support that haven't made it into upstream Wine yet</flag>
+ <flag name="staging">Apply Wine-Staging patches for advanced feature support that haven't made it into upstream Wine yet
+ For versions less than wine-1.8, this patchset is unofficial.</flag>
</use>
<upstream>
<remote-id type="github">wine-compholio/wine-staging</remote-id>
diff --git a/app-emulation/wine/wine-1.7.55.ebuild b/app-emulation/wine/wine-1.7.55.ebuild
index 74bf02a2c6..5150817f6c 100644
--- a/app-emulation/wine/wine-1.7.55.ebuild
+++ b/app-emulation/wine/wine-1.7.55.ebuild
@@ -203,7 +203,7 @@ pkg_setup() {
src_unpack() {
if [[ ${PV} == "9999" ]] ; then
git-r3_src_unpack
- if use staging || use pulseaudio; then
+ if use staging; then
EGIT_REPO_URI=${STAGING_EGIT_REPO_URI}
unset ${PN}_LIVE_REPO;
EGIT_CHECKOUT_DIR=${STAGING_DIR} git-r3_src_unpack
diff --git a/app-emulation/wine/wine-1.8.ebuild b/app-emulation/wine/wine-1.8.ebuild
new file mode 100644
index 0000000000..4c1b6f446a
--- /dev/null
+++ b/app-emulation/wine/wine-1.8.ebuild
@@ -0,0 +1,438 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+AUTOTOOLS_AUTORECONF=1
+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-utils 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
+
+GV="2.40"
+MV="4.5.6"
+STAGING_P="wine-staging-${PV}"
+STAGING_DIR="${WORKDIR}/${STAGING_P}"
+WINE_GENTOO="wine-gentoo-2015.03.07"
+GST_P="wine-1.7.55-gstreamer-v5"
+DESCRIPTION="Free implementation of Windows(tm) on Unix"
+HOMEPAGE="http://www.winehq.org/"
+SRC_URI="${SRC_URI}
+ gecko? (
+ abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86.msi )
+ abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
+ )
+ mono? ( https://dl.winehq.org/wine/wine-mono/${MV}/wine-mono-${MV}.msi )
+ gstreamer? ( 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}.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 +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 +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
+ test? ( abi_x86_32 )
+ elibc_glibc? ( threads )
+ mono? ( abi_x86_32 )
+ pipelight? ( staging )
+ s3tc? ( staging )
+ vaapi? ( staging )
+ osmesa? ( opengl )" #286560
+ #?? ( gstreamer staging ) #Should be fixed by pre/post patchset
+
+# 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="
+ truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
+ capi? ( net-dialup/capi4k-utils )
+ ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
+ udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+ fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
+ gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
+ openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
+ gstreamer? (
+ media-libs/gstreamer:0.10[${MULTILIB_USEDEP}]
+ media-libs/gst-plugins-base:0.10[${MULTILIB_USEDEP}]
+ )
+ 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}]
+ )
+ xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
+ alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+ cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+ opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+ opengl? (
+ virtual/glu[${MULTILIB_USEDEP}]
+ virtual/opengl[${MULTILIB_USEDEP}]
+ )
+ gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
+ jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
+ ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
+ lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
+ mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
+ netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
+ nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+ odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
+ osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
+ pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
+ pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
+ staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
+ xml? (
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+ dev-libs/libxslt[${MULTILIB_USEDEP}]
+ )
+ scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
+ ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
+ png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
+ v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
+ vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
+ xcomposite? ( x11-libs/libXcomposite[${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 )
+ perl? ( dev-lang/perl dev-perl/XML-Simple )
+ s3tc? ( >=media-libs/libtxc_dxtn-1.0.1-r1[${MULTILIB_USEDEP}] )
+ samba? ( >=net-fs/samba-3.0.25 )
+ selinux? ( sec-policy/selinux-wine )
+ udisks? ( sys-fs/udisks:2 )
+ pulseaudio? ( realtime? ( sys-auth/rtkit ) )"
+
+# tools/make_requests requires perl
+DEPEND="${COMMON_DEPEND}
+ staging? ( dev-lang/perl dev-perl/XML-Simple )
+ X? (
+ x11-proto/inputproto
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ )
+ xinerama? ( x11-proto/xineramaproto )
+ prelink? ( sys-devel/prelink )
+ >=sys-kernel/linux-headers-2.6
+ virtual/pkgconfig
+ virtual/yacc
+ sys-devel/flex"
+
+# 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_build_environment_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ # bug #549768
+ if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
+ einfo "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
+ if ! ( "${T}"/pr66838 || false ) >/dev/null 2>&1; 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
+
+ if use abi_x86_64 && [[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]]; then
+ eerror "You need gcc-4.4+ to build 64-bit wine"
+ eerror
+ return 1
+ fi
+
+ if use abi_x86_32 && use opencl && [[ x$(eselect opencl show 2> /dev/null) = "xintel" ]]; 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
+}
+
+pkg_pretend() {
+ wine_build_environment_check || die
+}
+
+pkg_setup() {
+ wine_build_environment_check || die
+}
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]] ; then
+ git-r3_src_unpack
+ if use staging; then
+ EGIT_REPO_URI=${STAGING_EGIT_REPO_URI}
+ unset ${PN}_LIVE_REPO;
+ EGIT_CHECKOUT_DIR=${STAGING_DIR} git-r3_src_unpack
+ fi
+ else
+ unpack ${P}.tar.bz2
+ use staging && unpack "${STAGING_P}.tar.gz"
+ fi
+
+ unpack "${WINE_GENTOO}.tar.bz2"
+ use gstreamer && unpack "${GST_P}.patch.bz2"
+
+ 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.4_rc2-multilib-portage.patch #395615
+ "${FILESDIR}"/${PN}-1.7.12-osmesa-check.patch #429386
+ "${FILESDIR}"/${PN}-1.6-memset-O3.patch #480508
+ )
+ if use gstreamer; then
+ # See http://bugs.winehq.org/show_bug.cgi?id=30557
+ ewarn "Applying experimental patch to fix GStreamer support. Note that"
+ ewarn "this patch has been reported to cause crashes in certain games."
+
+ # Wine-Staging 1.7.38 "ntdll: Fix race-condition when threads are killed
+ # during shutdown" patch and "Added patch to implement shared memory
+ # wineserver communication for various user32 functions" prevents the
+ # gstreamer patch from applying cleanly.
+ # So undo the staging patch, apply gstreamer, then re-apply rebased staging
+ # patch on top.
+ if use staging; then
+ PATCHES+=(
+ "${FILESDIR}/${PN}-1.7.55-gstreamer-v5-staging-pre.patch"
+ "${WORKDIR}/${GST_P}.patch"
+ "${FILESDIR}/${PN}-1.7.55-gstreamer-v5-staging-post.patch" )
+ else
+ PATCHES+=( "${WORKDIR}/${GST_P}.patch" )
+ fi
+ fi
+ 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 epatch as a backend, and gitapply.sh as a backend for binary patches
+ ebegin "Running Wine-Staging patch installer"
+ (
+ set -- DESTDIR="${S}" --backend=epatch --no-autoconf --all ${STAGING_EXCLUDE}
+ cd "${STAGING_DIR}/patches"
+ source "${STAGING_DIR}/patches/patchinstall.sh"
+ )
+ eend $?
+ fi
+ autotools-utils_src_prepare
+
+ # 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 # 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 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
+
+ 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
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+}
diff --git a/app-emulation/wine/wine-9999.ebuild b/app-emulation/wine/wine-9999.ebuild
index 74bf02a2c6..b44030bba0 100644
--- a/app-emulation/wine/wine-9999.ebuild
+++ b/app-emulation/wine/wine-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -27,16 +27,16 @@ MV="4.5.6"
STAGING_P="wine-staging-${PV}"
STAGING_DIR="${WORKDIR}/${STAGING_P}"
WINE_GENTOO="wine-gentoo-2015.03.07"
-GST_P="wine-1.7.34-gstreamer-v5"
+GST_P="wine-1.7.55-gstreamer-v5"
DESCRIPTION="Free implementation of Windows(tm) on Unix"
HOMEPAGE="http://www.winehq.org/"
SRC_URI="${SRC_URI}
gecko? (
- abi_x86_32? ( mirror://sourceforge/${PN}/Wine%20Gecko/${GV}/wine_gecko-${GV}-x86.msi )
- abi_x86_64? ( mirror://sourceforge/${PN}/Wine%20Gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
+ abi_x86_32? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86.msi )
+ abi_x86_64? ( https://dl.winehq.org/wine/wine-gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
)
- mono? ( mirror://sourceforge/${PN}/Wine%20Mono/${MV}/wine-mono-${MV}.msi )
- gstreamer? ( https://dev.gentoo.org/~tetromino/distfiles/${PN}/${GST_P}.patch.bz2 )
+ mono? ( https://dl.winehq.org/wine/wine-mono/${MV}/wine-mono-${MV}.msi )
+ gstreamer? ( 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
@@ -56,8 +56,8 @@ REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
pipelight? ( staging )
s3tc? ( staging )
vaapi? ( staging )
- ?? ( gstreamer staging )
osmesa? ( opengl )" #286560
+ #?? ( gstreamer staging ) #Should be fixed by pre/post patchset
# FIXME: the test suite is unsuitable for us; many tests require net access
# or fail due to Xvfb's opengl limitations.
@@ -203,10 +203,22 @@ pkg_setup() {
src_unpack() {
if [[ ${PV} == "9999" ]] ; then
git-r3_src_unpack
- if use staging || use pulseaudio; then
+ if use staging; then
+ local WINE_COMMIT=${EGIT_VERSION}
+
EGIT_REPO_URI=${STAGING_EGIT_REPO_URI}
unset ${PN}_LIVE_REPO;
+ unset EGIT_COMMIT;
+
EGIT_CHECKOUT_DIR=${STAGING_DIR} git-r3_src_unpack
+
+ local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+
+ if [[ "${WINE_COMMIT}" != "${STAGING_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: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+ fi
fi
else
unpack ${P}.tar.bz2
@@ -240,17 +252,16 @@ src_prepare() {
# patch on top.
if use staging; then
PATCHES+=(
- "${FILESDIR}/${PN}-1.7.39-gstreamer-v5-staging-pre.patch"
+ "${FILESDIR}/${PN}-1.7.55-gstreamer-v5-staging-pre.patch"
"${WORKDIR}/${GST_P}.patch"
- "${FILESDIR}/${PN}-1.7.39-gstreamer-v5-staging-post.patch" )
+ "${FILESDIR}/${PN}-1.7.55-gstreamer-v5-staging-post.patch" )
else
PATCHES+=( "${WORKDIR}/${GST_P}.patch" )
fi
fi
if use staging; then
- ewarn "Applying the unofficial Wine-Staging patchset which is unsupported"
- ewarn "by Wine developers. Please don't report bugs to Wine bugzilla"
- ewarn "unless you can reproduce them with USE=-staging"
+ 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"
@@ -318,7 +329,7 @@ multilib_src_configure() {
$(use_with oss)
$(use_with pcap)
$(use_with png)
- $(use_with pulseaudio)
+ $(use_with pulseaudio pulse)
$(use_with threads pthread)
$(use_with scanner sane)
$(use_enable test tests)
diff --git a/app-emulation/winetricks/Manifest b/app-emulation/winetricks/Manifest
index efbc594b16..b78a50da93 100644
--- a/app-emulation/winetricks/Manifest
+++ b/app-emulation/winetricks/Manifest
@@ -1,2 +1,2 @@
-DIST winetricks-20151116.tar.gz 174763 SHA256 a8947974f47ec575e62717abe591a737d7214557e7ece4c39de079599ba4bf70 SHA512 a769eefcc80725b871791dbec9b869bdfdbbbccf816b943a242ee17f3a35e91efeb4433330ade590b98ff7f6884d5f9900d195bb386f52907e91b543ce416230 WHIRLPOOL c15643186c30258d1e590b5a233aea893f071750e4369d1d95b0ff818e077fe0f51415b2e15ff3524429882cd13880aa3a198b3c01ccc5450fe9e68feba39836
+DIST winetricks-20160109.tar.gz 176741 SHA256 6a55db3c1441021bfcb8653b3f0c6eb4260e1ab22fbe98083d28f21470f0ca71 SHA512 41fd0f7bfa2155131d26eb185a584d6e276931f6cc22341847690fa82d3f35e0c9fdeec877a5dc6d4d6092d6a15299e98015be9aaa84677cd5442fbff4fa3891 WHIRLPOOL f6bfa5596c855a942a1ffebcc6252274c379187a9763c036795b3e431ccdcadb7116e48e23ac3109547d96e5cfa9302c3d99a911190ac0d70b073d355974f95e
DIST winetricks-gentoo-2012.11.24.tar.bz2 6398 SHA256 dded8c294cc5c2e71e4a5d1531ab165178cf3d2d1d890d0656368c2e499bfeb9 SHA512 59c93b73f3a7b2d11aefcde2ff66659ff1de21ad4b5f232f4b60572f3a48b15a6c49f369b1696862bf1b33fde190bf5598945e9536fb41ddec42d8def4d2be2a WHIRLPOOL 268da9e06712a678fbbcfff8eac1fca364b5e46f0a9c48a591eb88f03260b1a55f203eb2908bfe1f0a534b77c866127ff6f7049b0e43fe8abeaaa26fe55de75b
diff --git a/app-emulation/winetricks/metadata.xml b/app-emulation/winetricks/metadata.xml
index 0c912e8caf..723f372ad4 100644
--- a/app-emulation/winetricks/metadata.xml
+++ b/app-emulation/winetricks/metadata.xml
@@ -1,12 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>wine</herd>
- <herd>proxy-maintainers</herd>
- <maintainer>
+ <maintainer type="person">
<email>NP-Hardass@gentoo.org</email>
<name>NP-Hardass</name>
</maintainer>
+ <maintainer type="project">
+ <email>wine@gentoo.org</email>
+ <name>Wine</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<upstream>
<remote-id type="google-code">winetricks</remote-id>
<remote-id type="github">Winetricks/winetricks</remote-id>
diff --git a/app-emulation/winetricks/winetricks-20151116.ebuild b/app-emulation/winetricks/winetricks-20160109.ebuild
index dba352c251..dba352c251 100644
--- a/app-emulation/winetricks/winetricks-20151116.ebuild
+++ b/app-emulation/winetricks/winetricks-20160109.ebuild
diff --git a/app-emulation/x48/metadata.xml b/app-emulation/x48/metadata.xml
index 52455208f6..b1e78a979e 100644
--- a/app-emulation/x48/metadata.xml
+++ b/app-emulation/x48/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
+ <maintainer type="person">
<email>nimiux@gentoo.org</email>
<name>Chema Alonso</name>
</maintainer>
diff --git a/app-emulation/xe-guest-utilities/metadata.xml b/app-emulation/xe-guest-utilities/metadata.xml
index 789adcec8f..1f598c8eba 100644
--- a/app-emulation/xe-guest-utilities/metadata.xml
+++ b/app-emulation/xe-guest-utilities/metadata.xml
@@ -1,17 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>openstack</herd>
-<herd>virtualization</herd>
-<herd>xen</herd>
-<maintainer>
+<maintainer type="person">
<email>bugs@camisa.org</email>
<name>Christopher J. Camisa</name>
<description>proxy maintainer</description>
</maintainer>
-<maintainer>
+<maintainer type="person">
<email>robbat2@gentoo.org</email>
</maintainer>
+<maintainer type="project">
+ <email>openstack@gentoo.org</email>
+ <name>Openstack</name>
+</maintainer>
+<maintainer type="project">
+ <email>virtualization@gentoo.org</email>
+ <name>Gentoo Virtualization Project</name>
+</maintainer>
+<maintainer type="project">
+ <email>xen@gentoo.org</email>
+ <name>Gentoo Xen Project</name>
+</maintainer>
<longdescription>XenServer Virtual Machine Tools</longdescription>
<use>
<flag name="xenstore">Use xenstore binaries bundled by Citrix instead of building app-emulation/xen-tools</flag>
diff --git a/app-emulation/xen-pvgrub/Manifest b/app-emulation/xen-pvgrub/Manifest
index 1851d042ad..83297a8a64 100644
--- a/app-emulation/xen-pvgrub/Manifest
+++ b/app-emulation/xen-pvgrub/Manifest
@@ -3,8 +3,6 @@ DIST lwip-1.3.0.tar.gz 398933 SHA256 772e4d550e07826665ed0528c071dd5404ef7dbe182
DIST newlib-1.16.0.tar.gz 12024353 SHA256 db426394965c48c1d29023e1cc6d965ea6b9a9035d8a849be2750ca4659a3d07 SHA512 40eb96bbc6736a16b6399e0cdb73e853d0d90b685c967e77899183446664d64570277a633fdafdefc351b46ce210a99115769a1d9f47ac749d7e82837d4d1ac3 WHIRLPOOL 47f7afd525f482d79d9e964f0e75ee8a77e59551bd19cd94f9b95ac3af9406afa381c9d8d224f76eb568441ab613b2b194f8e5be50aa222f9ed2d9b9761829db
DIST pciutils-2.2.9.tar.bz2 212265 SHA256 f60ae61cfbd5da1d849d0beaa21f593c38dac9359f0b3ddc612f447408265b24 SHA512 2b3d98d027e46d8c08037366dde6f0781ca03c610ef2b380984639e4ef39899ed8d8b8e4cd9c9dc54df101279b95879bd66bfd4d04ad07fef41e847ea7ae32b5 WHIRLPOOL ce801947fcf7ba0b56710029f25e746d3e03a80699af9d3570efcd417b12b546264f286b2e78b1402cca766c08e35bdd0ff0a692ab4ad419295f00bcfe91130e
DIST polarssl-1.1.4-gpl.tgz 611340 SHA256 2d29fd04a0d0ba29dae6bd29fb418944c08d3916665dcca74afb297ef37584b6 SHA512 88da614e4d3f4409c4fd3bb3e44c7587ba051e3fed4e33d526069a67e8180212e1ea22da984656f50e290049f60ddca65383e5983c0f8884f648d71f698303ad WHIRLPOOL 39448c00dda142a836a78381b446c7b586272a44d8afc867a7ea702228f105bb2adffe757bd6c23af090cff64ef32e7af0c373dccc5145ff4c11552cf3f28383
-DIST xen-4.2.5.tar.gz 15671925 SHA256 3cf440866315e8085050eb0586f0447b6b47a08dbed6a72226bf5ed5d89ec567 SHA512 42c0fc241952fc55fc44480fb6752b004b54ae40e946159ec047adf229b65cbfbd810271d01b064ad8fdbddb73c640dcdcb6bc19f91e8968829889c129920dac WHIRLPOOL 762a91c0111892b33e6bd3e7f7714709b04697ad7c2b0919fef6cc9570a343a77fd5a2b82833e75dac9d12d4e41acdcf0743b0d593595910ddd326f5cd721368
-DIST xen-4.5.1.tar.gz 18410400 SHA256 668c11d4fca67ac44329e369f810356eacd37b28d28fb96e66aac77f3c5e1371 SHA512 9436243e26bc64bc836a179abdc3a6b1b6fa9d3f2170453092c18be71fa62e18cd4465a9154c0f28a7ac8d69d08361ba1defef240a51197f058c012c3855ba04 WHIRLPOOL 71d8559f86683dd9fb3eb09d3f602de227f281fbd3c8cc258bfdb67c425d9e7c4d21cb0284c123e4263262c1b821fea6d28109861ce60d627f6426d352808d99
DIST xen-4.5.2.tar.gz 18416220 SHA256 4c9e5dac4eea484974e9f76da2756c8e0973b4e884d28d37e955df9ebf00e7e8 SHA512 e0ce01a5356c254bfde48fae0b0e005c42c1615a7ccf4c1ba7dcf90784777b53995e9a9ae4575e3f19ef341014b34cb8c06e39d68be359f7fd69830501a144dd WHIRLPOOL b50ce28e58d8419915f7f85de7ab23128719fa07c54f28165c4ba864ffe57230230fa7cb61dd2ed7608b8bc178a072124aedc30c61a45fb8b745fc616715219b
DIST xen-4.6.0.tar.gz 19694350 SHA256 6fa1c2431df55aa5950d248e6093b8c8c0f11c357a0adbd348a2186478e80909 SHA512 b4b02f306ffea360f539dd8c231b2f58c00c3638fdb665cb659c7291b475b40f1075bc59d49a6144767729e57b8bc40a1cfd9030d61de2b8fa4ac97d43655c2b WHIRLPOOL d3f01183440ca1875b6e850bd116db0c382383433e50c0902d3268e9e36b39d184fc65e925bdb5363ef4ca7a232fee15b4749c89baf789137b8a8248565c75a8
DIST zlib-1.2.3.tar.gz 496597 SHA256 1795c7d067a43174113fdf03447532f373e1c6c57c08d61d9e4e9be5e244b05e SHA512 021b958fcd0d346c4ba761bcf0cc40f3522de6186cf5a0a6ea34a70504ce9622b1c2626fce40675bc8282cf5f5ade18473656abc38050f72f5d6480507a2106e WHIRLPOOL 8fd7010faf6a48a9c7ff4bcfe3ce4fe9061eb541259e0a2d0def214e8c4becf2b22e8d6f96f65ca827abffeaa9d96e95ed2402844f99835f7b079fc9f3e84276
diff --git a/app-emulation/xen-pvgrub/metadata.xml b/app-emulation/xen-pvgrub/metadata.xml
index cc9d568a33..64e6e97124 100644
--- a/app-emulation/xen-pvgrub/metadata.xml
+++ b/app-emulation/xen-pvgrub/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>xen</herd>
+<maintainer type="project">
+ <email>xen@gentoo.org</email>
+ <name>Gentoo Xen Project</name>
+</maintainer>
</pkgmetadata>
diff --git a/app-emulation/xen-pvgrub/xen-pvgrub-4.2.5.ebuild b/app-emulation/xen-pvgrub/xen-pvgrub-4.2.5.ebuild
deleted file mode 100644
index 6362385f92..0000000000
--- a/app-emulation/xen-pvgrub/xen-pvgrub-4.2.5.ebuild
+++ /dev/null
@@ -1,162 +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 )
-PYTHON_REQ_USE='xml,threads'
-
-inherit flag-o-matic eutils multilib python-single-r1 toolchain-funcs
-
-XEN_EXTFILES_URL="http://xenbits.xensource.com/xen-extfiles"
-LIBPCI_URL=ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci
-GRUB_URL=mirror://gnu-alpha/grub
-
-UPSTREAM_VER=
-GENTOO_VER=
-
-[[ -n ${UPSTREAM_VER} ]] && \
- UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-pvgrub/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
-[[ -n ${GENTOO_VER} ]] && \
- GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-pvgrub/}-gentoo-patches-${GENTOO_VER}.tar.xz"
-
-SRC_URI="
- http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
- $GRUB_URL/grub-0.97.tar.gz
- $XEN_EXTFILES_URL/zlib-1.2.3.tar.gz
- $LIBPCI_URL/pciutils-2.2.9.tar.bz2
- $XEN_EXTFILES_URL/lwip-1.3.0.tar.gz
- $XEN_EXTFILES_URL/newlib/newlib-1.16.0.tar.gz
- ${UPSTREAM_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}
- "
-
-S="${WORKDIR}/xen-${PV}"
-
-DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest filesystem"
-HOMEPAGE="http://xen.org/"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="custom-cflags"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="sys-devel/gettext
- sys-devel/bin86"
-
-RDEPEND=">=app-emulation/xen-4.2.1"
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-retar-externals() {
- # Purely to unclutter src_prepare
- local set="grub-0.97.tar.gz lwip-1.3.0.tar.gz newlib-1.16.0.tar.gz zlib-1.2.3.tar.gz"
-
- # epatch can't patch in $WORKDIR, requires a sed; Bug #455194. Patchable, but sed informative
- sed -e s':AR=${AR-"ar rc"}:AR=${AR-"ar"}:' \
- -i "${WORKDIR}"/zlib-1.2.3/configure
- sed -e 's:^AR=ar rc:AR=ar:' \
- -e s':$(AR) $@:$(AR) rc $@:' \
- -i "${WORKDIR}"/zlib-1.2.3/{Makefile,Makefile.in}
- einfo "zlib Makefile edited"
-
- cd "${WORKDIR}"
- tar czp zlib-1.2.3 -f zlib-1.2.3.tar.gz
- tar czp grub-0.97 -f grub-0.97.tar.gz
- tar czp lwip -f lwip-1.3.0.tar.gz
- tar czp newlib-1.16.0 -f newlib-1.16.0.tar.gz
- mv $set "${S}"/stubdom/
- einfo "tarballs moved to source"
-}
-
-src_prepare() {
- # Upstream's patchset
- if [[ -n ${UPSTREAM_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-upstream
- fi
-
- # Gentoo's patchset
- if [[ -n ${GENTOO_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-gentoo
- fi
-
- # if the user *really* wants to use their own custom-cflags, let them
- if use custom-cflags; then
- einfo "User wants their own CFLAGS - removing defaults"
- # try and remove all the default custom-cflags
- find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
- -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
- -i {} \;
- fi
-
- # Patch the unmergeable newlib, fix most of the leftover gcc QA issues
- cp "${FILESDIR}"/newlib-implicits.patch stubdom || die
-
- # Patch stubdom/Makefile to patch insource newlib & prevent internal downloading
- epatch "${FILESDIR}"/${PN/-pvgrub/}-4.2.1-externals.patch
-
- # Drop .config and Fix gcc-4.6
- epatch "${FILESDIR}"/${PN/-pvgrub/}-4-fix_dotconfig-gcc.patch
-
- # fix jobserver in Makefile
- epatch "${FILESDIR}"/${PN}-4.2-jserver.patch
-
- # gcc warnings/QA fix
- epatch "${FILESDIR}"/${PN}-4.2.3-qa.patch
-
- #Substitute for internal downloading. pciutils copied only due to the only .bz2
- cp "${DISTDIR}"/pciutils-2.2.9.tar.bz2 ./stubdom/ || die "pciutils not copied to stubdom"
- retar-externals || die "re-tar procedure failed"
-}
-
-src_compile() {
- use custom-cflags || unset CFLAGS
- if test-flag-CC -fno-strict-overflow; then
- append-flags -fno-strict-overflow
- fi
-
- emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" -C tools/include
-
- if use x86; then
- emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
- XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
- elif use amd64; then
- emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
- XEN_TARGET_ARCH="x86_64" -C stubdom pv-grub
- if has_multilib_profile; then
- multilib_toolchain_setup x86
- emake CC="$(tc-getCC)" AR="$(tc-getAR)" \
- XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
- fi
- fi
-}
-
-src_install() {
- if use x86; then
- emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
- fi
- if use amd64; then
- emake XEN_TARGET_ARCH="x86_64" DESTDIR="${D}" -C stubdom install-grub
- if has_multilib_profile; then
- emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
- fi
- fi
-}
-
-pkg_postinst() {
- elog "Official Xen Guide and the offical wiki page:"
- elog "https://www.gentoo.org/doc/en/xen-guide.xml"
- elog "http://wiki.xen.org/wiki/Main_Page"
-}
diff --git a/app-emulation/xen-pvgrub/xen-pvgrub-4.5.1.ebuild b/app-emulation/xen-pvgrub/xen-pvgrub-4.5.1.ebuild
deleted file mode 100644
index 8e1c138209..0000000000
--- a/app-emulation/xen-pvgrub/xen-pvgrub-4.5.1.ebuild
+++ /dev/null
@@ -1,143 +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 )
-PYTHON_REQ_USE='xml,threads'
-
-inherit flag-o-matic eutils multilib python-single-r1 toolchain-funcs
-
-XEN_EXTFILES_URL="http://xenbits.xensource.com/xen-extfiles"
-LIBPCI_URL=ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci
-GRUB_URL=mirror://gnu-alpha/grub
-SRC_URI="
- http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
- $GRUB_URL/grub-0.97.tar.gz
- $XEN_EXTFILES_URL/zlib-1.2.3.tar.gz
- $LIBPCI_URL/pciutils-2.2.9.tar.bz2
- $XEN_EXTFILES_URL/lwip-1.3.0.tar.gz
- $XEN_EXTFILES_URL/newlib/newlib-1.16.0.tar.gz
- $XEN_EXTFILES_URL/polarssl-1.1.4-gpl.tgz"
-
-S="${WORKDIR}/xen-${PV}"
-
-DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest filesystem"
-HOMEPAGE="http://xen.org/"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 -x86"
-IUSE="custom-cflags"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="sys-devel/gettext
- sys-devel/bin86
- sys-apps/texinfo"
-
-RDEPEND=">=app-emulation/xen-4.2.1"
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-retar-externals() {
- # Purely to unclutter src_prepare
- local set="grub-0.97.tar.gz lwip-1.3.0.tar.gz newlib-1.16.0.tar.gz polarssl-1.1.4-gpl.tgz zlib-1.2.3.tar.gz"
-
- # epatch can't patch in $WORKDIR, requires a sed; Bug #455194. Patchable, but sed informative
- sed -e s':AR=${AR-"ar rc"}:AR=${AR-"ar"}:' \
- -i "${WORKDIR}"/zlib-1.2.3/configure
- sed -e 's:^AR=ar rc:AR=ar:' \
- -e s':$(AR) $@:$(AR) rc $@:' \
- -i "${WORKDIR}"/zlib-1.2.3/{Makefile,Makefile.in}
- einfo "zlib Makefile edited"
-
- cd "${WORKDIR}"
- tar czp zlib-1.2.3 -f zlib-1.2.3.tar.gz
- tar czp grub-0.97 -f grub-0.97.tar.gz
- tar czp lwip -f lwip-1.3.0.tar.gz
- tar czp newlib-1.16.0 -f newlib-1.16.0.tar.gz
- tar czp polarssl-1.1.4 -f polarssl-1.1.4-gpl.tgz
- mv $set "${S}"/stubdom/
- einfo "tarballs moved to source"
-}
-
-src_prepare() {
- # if the user *really* wants to use their own custom-cflags, let them
- if use custom-cflags; then
- einfo "User wants their own CFLAGS - removing defaults"
- # try and remove all the default custom-cflags
- find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
- -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
- -i {} \;
- fi
-
- # Patch the unmergeable newlib, fix most of the leftover gcc QA issues
- cp "${FILESDIR}"/newlib-implicits.patch stubdom || die
-
- # Patch stubdom/Makefile to patch insource newlib & prevent internal downloading
- epatch "${FILESDIR}"/${PN/-pvgrub/}-4.3-externals.patch
-
- # fix jobserver in Makefile
- epatch "${FILESDIR}"/${PN}-4.2-jserver.patch
-
- #Substitute for internal downloading. pciutils copied only due to the only .bz2
- cp "${DISTDIR}"/pciutils-2.2.9.tar.bz2 ./stubdom/ || die "pciutils not copied to stubdom"
- retar-externals || die "re-tar procedure failed"
-}
-
-src_configure() {
- local myconf="--prefix=${PREFIX}/usr \
- --libdir=${PREFIX}/usr/$(get_libdir) \
- --libexecdir=${PREFIX}/usr/libexec \
- --disable-werror \
- --disable-xen"
-
- econf ${myconf}
-}
-
-src_compile() {
- use custom-cflags || unset CFLAGS
- if test-flag-CC -fno-strict-overflow; then
- append-flags -fno-strict-overflow
- fi
-
- emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" -C tools/include
-
- if use x86; then
- emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
- XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
- elif use amd64; then
- emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
- XEN_TARGET_ARCH="x86_64" -C stubdom pv-grub
- if has_multilib_profile; then
- multilib_toolchain_setup x86
- emake CC="$(tc-getCC)" AR="$(tc-getAR)" \
- XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
- fi
- fi
-}
-
-src_install() {
- if use x86; then
- emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
- fi
- if use amd64; then
- emake XEN_TARGET_ARCH="x86_64" DESTDIR="${D}" -C stubdom install-grub
- if has_multilib_profile; then
- emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
- fi
- fi
-}
-
-pkg_postinst() {
- elog "Official Xen Guide and the offical wiki page:"
- elog "https://wiki.gentoo.org/wiki/Xen"
- elog "http://wiki.xen.org/wiki/Main_Page"
-}
diff --git a/app-emulation/xen-pvgrub/xen-pvgrub-4.5.2.ebuild b/app-emulation/xen-pvgrub/xen-pvgrub-4.5.2.ebuild
index 8e1c138209..f074d914da 100644
--- a/app-emulation/xen-pvgrub/xen-pvgrub-4.5.2.ebuild
+++ b/app-emulation/xen-pvgrub/xen-pvgrub-4.5.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -27,7 +27,7 @@ DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest
HOMEPAGE="http://xen.org/"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 -x86"
+KEYWORDS="amd64 x86"
IUSE="custom-cflags"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
@@ -36,7 +36,7 @@ DEPEND="sys-devel/gettext
sys-devel/bin86
sys-apps/texinfo"
-RDEPEND=">=app-emulation/xen-4.2.1"
+RDEPEND=">=app-emulation/xen-tools-${PV}"
pkg_setup() {
python-single-r1_pkg_setup
diff --git a/app-emulation/xen-pvgrub/xen-pvgrub-4.6.0.ebuild b/app-emulation/xen-pvgrub/xen-pvgrub-4.6.0.ebuild
index a47af5897c..eb54859f43 100644
--- a/app-emulation/xen-pvgrub/xen-pvgrub-4.6.0.ebuild
+++ b/app-emulation/xen-pvgrub/xen-pvgrub-4.6.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -27,16 +27,17 @@ DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest
HOMEPAGE="http://xen.org/"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 -x86"
+KEYWORDS="amd64 x86"
IUSE="custom-cflags"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="sys-devel/gettext
sys-devel/bin86
- sys-apps/texinfo"
+ sys-apps/texinfo
+ x11-libs/pixman"
-RDEPEND=">=app-emulation/xen-4.2.1"
+RDEPEND=">=app-emulation/xen-tools-${PV}"
pkg_setup() {
python-single-r1_pkg_setup
diff --git a/app-emulation/xen-tools/Manifest b/app-emulation/xen-tools/Manifest
index 71bcf10ebc..4a880d308c 100644
--- a/app-emulation/xen-tools/Manifest
+++ b/app-emulation/xen-tools/Manifest
@@ -1,17 +1,16 @@
DIST ovmf-20150629.tar.bz2 24265640 SHA256 9f316dc44e192fa9d5d7486cf1dae3f3094ab4f20f282f80d6251632c2cd6118 SHA512 b15a896b5222b920a500ec8a1eba5d670505441ffd02accf9b6c0deb9a12c1c5513a016f91eae5cb33f75ee9f28435dc957686e6ce8b5d0744c11a7d7262fffd WHIRLPOOL 8db4360dcb85f183dbd827f7381787c84065f94eaf746068b11ef7b30412b16cc0ba75effb04f01dea5f4f67967721f7aca11a2550035e95c59645c7964526ac
-DIST seabios-1.6.3.2.tar.gz 422376 SHA256 888aafe37ef3d1f502a73518a5e4dd0e9373ce4cd41681c354771314f1e41dd7 SHA512 c54431d8e81d25b74427696da689e90d3ab68c7c1be1dec05c81658d28b650f53daa34dcee2da826c1cf5d5d39396b12b0b16ea20ed6fd89de8f732163c8cca5 WHIRLPOOL 826c0e034ca46291661faa363189ee6cf56098cabc39f8fc84d2c442cc2da2174c2fa027cc11e11a7c3fed619f2e524f2aee804d9836d256448cdad28631d69a
DIST seabios-1.7.5.tar.gz 537566 SHA256 858d9eda4ad91efa1c45a5a401d560ef9ca8dd172f03b0a106f06661c252dc51 SHA512 ecf5fb9ac44dde6e4ac00baa6c920dde51b923f23dd74e62c5a02eceaf235e57b885975c5a8bd0927e268115c72bd1143a080fdfd4eff4e168ebeaa30436280e WHIRLPOOL 5e1e99b3bd82a8607c5986fde4592c7437bec4bd78abd5873710f6c431d075436725e8d0d32e9f0dd2921c9d84b8613108b21d31c5309a73e337ead7adf35e90
-DIST xen-4.2.5-upstream-patches-10.tar.xz 41428 SHA256 b29ce85b049420838c3386b67184f4ba56794846d056837fa780ae89a80b40d0 SHA512 9e8046e27506d864e2d69728897cbba3eea1dd5ca748a3febb722901c5a67cca2ab49bb420071292538bd0345023fa337eb2d176b9ca05ca6bce47562f6710ec WHIRLPOOL 29e534ef6b951cf220a3a9476d1f76ac344bfc5c74998f2b472ec83cbe4781746298272e3c1fe8661a838cbc7d734d2730de6a1e9985b8a60f40c98f54449e2a
-DIST xen-4.2.5-upstream-patches-9.tar.xz 23208 SHA256 2206e9a8aeeed207abbae995c5d2baa14d5f0da4120ae44f2de733ecf7ea5af1 SHA512 8a2edaba48002449a521edf2ae078ffe1b3db4f491a85b063886a147a0be3ec7fdb819ce84c90cdae80ed34c10ab2d637506700be10052a67be6ef128fa40fb1 WHIRLPOOL 037820e0fad60d1f7ed054efa797585c992d08f1ffd533705c515ad289f8cdddc72b97f2a3d75ebd683c6bb6988d7285452b4f3cebbe9a879f701156e387ff3b
-DIST xen-4.2.5.tar.gz 15671925 SHA256 3cf440866315e8085050eb0586f0447b6b47a08dbed6a72226bf5ed5d89ec567 SHA512 42c0fc241952fc55fc44480fb6752b004b54ae40e946159ec047adf229b65cbfbd810271d01b064ad8fdbddb73c640dcdcb6bc19f91e8968829889c129920dac WHIRLPOOL 762a91c0111892b33e6bd3e7f7714709b04697ad7c2b0919fef6cc9570a343a77fd5a2b82833e75dac9d12d4e41acdcf0743b0d593595910ddd326f5cd721368
-DIST xen-4.5.1-upstream-patches-0.tar.xz 18236 SHA256 95910023cb99f11b4df6d57d82000bbd67714d4ed0700e152619c5b82c1bc6e5 SHA512 531e5bbe6b9920a58361f11bb1bb6df65ebaf01e3af13f9aca018e8512727d950009257dfc9b3d0b0f847968da499cf9423716de8a04869cec6f92f5274462e2 WHIRLPOOL 3e6dda862d1bbe736b85422117148c3db91a308a58eb1476e27bbb7355ea7793269cdfc489697c9e5eea5f0ac5319df5c88f2707b10c9a96b8142927a4169819
-DIST xen-4.5.1.tar.gz 18410400 SHA256 668c11d4fca67ac44329e369f810356eacd37b28d28fb96e66aac77f3c5e1371 SHA512 9436243e26bc64bc836a179abdc3a6b1b6fa9d3f2170453092c18be71fa62e18cd4465a9154c0f28a7ac8d69d08361ba1defef240a51197f058c012c3855ba04 WHIRLPOOL 71d8559f86683dd9fb3eb09d3f602de227f281fbd3c8cc258bfdb67c425d9e7c4d21cb0284c123e4263262c1b821fea6d28109861ce60d627f6426d352808d99
+DIST seabios-1.8.2.tar.gz 538497 SHA256 f59479307fdae840de398b75aacb2333c8eba24a5964d68c77e32ca6c987ee61 SHA512 798d222d5f5725a805cde9e6000b5ce714d0551fd4a3c2642cc6e77b2bdab1a9e239939a358a23bbe0e00112f5ad70696c87d20b90655463c835541fc04e1a00 WHIRLPOOL 9cda0ad502a59dd718c543b759ac3fcf5acb4adee70c3da9bfea95ab188415acf6425827de77f45421ec3be8fd9e0c37fb486e62828217ba3e83f88d942a3f4a
DIST xen-4.5.2.tar.gz 18416220 SHA256 4c9e5dac4eea484974e9f76da2756c8e0973b4e884d28d37e955df9ebf00e7e8 SHA512 e0ce01a5356c254bfde48fae0b0e005c42c1615a7ccf4c1ba7dcf90784777b53995e9a9ae4575e3f19ef341014b34cb8c06e39d68be359f7fd69830501a144dd WHIRLPOOL b50ce28e58d8419915f7f85de7ab23128719fa07c54f28165c4ba864ffe57230230fa7cb61dd2ed7608b8bc178a072124aedc30c61a45fb8b745fc616715219b
DIST xen-4.6.0-upstream-patches-0.tar.xz 19280 SHA256 8ef2d139f86cb52d2208a17c974e5a85356183ee359ab4b91882067548806e0c SHA512 9fde8d9def1d75e50c10069af7f9fea4b5b6992b7089eb554e1e2a4c78dd080f2977128d0dd541eeb735b951e7d6614a07101f7703457e7743ac6b3be962cdfe WHIRLPOOL 861c7f150811912422f6f5eb77437744d1456740a43bef3dfd88a2e6d6836c0e8460b788ccd4f14a7144652d65a825c08aa984ec4240b2b1ac6d09237695d19d
DIST xen-4.6.0.tar.gz 19694350 SHA256 6fa1c2431df55aa5950d248e6093b8c8c0f11c357a0adbd348a2186478e80909 SHA512 b4b02f306ffea360f539dd8c231b2f58c00c3638fdb665cb659c7291b475b40f1075bc59d49a6144767729e57b8bc40a1cfd9030d61de2b8fa4ac97d43655c2b WHIRLPOOL d3f01183440ca1875b6e850bd116db0c382383433e50c0902d3268e9e36b39d184fc65e925bdb5363ef4ca7a232fee15b4749c89baf789137b8a8248565c75a8
-DIST xen-gentoo-patches-1.tar.xz 23044 SHA256 dcff35bbc4b6946473c9b55ad595a5fea88e8dac1bd977cbe18a644b2cced2e0 SHA512 a4c66382d44112e7be09711e3ecf0f8ebd9a30b29e04d8aca536430172bdd111ab8bab7700433e0dc35165f876eb7e9cd2e554d74ce2a166fb2dfd4de482cb7a WHIRLPOOL d0443e1501ac813ac3226df32a6b050c03302c3d74e3b3bd1293ab4ad929b5c314cc0eac13505ce8a826ee357117e8eeaf0713fd8b9c55f40296966fda082c2e
DIST xen-gentoo-patches-4.tar.xz 23632 SHA256 5cdb0f93ee32d0a5fc4fc7282270ace73acfdc4df694f7b29c1135180d902049 SHA512 3006ce4cd67e80a9f79d9ba3814a64704b0d762159a439a140b1ec0a2699473cd5537950f0913b55f8f7e3d0fd2e9861f3199793120d8d2502aa3f8ef7816c8f WHIRLPOOL 4a921103df2825ccd8b0481708e7cd692fa45d5aadae286c1522c144a1576920e7d3567648565bb9af85bb6bb597ea9d0ec04ea6abd2115db4caf7e739717b1a
-DIST xen-gentoo-patches-5.tar.xz 23664 SHA256 41e23ec6fb5a4ef5a1f8746de0e33579de2c725368afed6bd2b7506df5e8c2b5 SHA512 8370cef1aa06585e8fa8f8c6eb7f29375ac6f5a240c859ebb6982d1c1ec159c9c331c861f39838f53093cdceca24ee1b0d98c1c92874dd4113e73eb884842eac WHIRLPOOL 4b65283220b66555a69b65331d3dcb8b8353fef584eb723c2a703712bc6eac57b70f500eeeffc511e75d3ab5d3a1eac8aac83133baf4c90ab498b1843764eb9f
DIST xen-ovmf-patches-1.tar.xz 4724 SHA256 d14e98e62c78c9f4b8a7e7b4a04de6dabf300f393eff44154d06f93aa43d7703 SHA512 a17467762f6d92018ff9bce783ce148039f23159405e801ec2aef4c3db72c3976c6f1e41d8c2a2cb704a9654556a2050302f284cfe8e32f28f393b8e2c6d2f1c WHIRLPOOL de53ad07f20aa14fe76d974db92d5b6808f0a2dd26a627b818914990add7adad8e6135d42641819dc22947031981c5815bae5aeeed0f28785c90beda0a6ff6c8
-DIST xen-security-patches-6.tar.xz 24780 SHA256 b41422583e5f7b4c85b82d89ab66f3e0fa8de8fdb2ae42aa3da40822e9507ef5 SHA512 c58831eb5e26a78a3072623b83bad125ddd4cd67c0075a708be81a7f50ee936cd2e5832a9b88129e11ec81ebafc9cfbc339fb8296d6f4b44c04630b349c4a621 WHIRLPOOL edecaefef0b6dd1a10c479362362640d9bd7a43623085c1f20b1171c65746220d7fdfd0e20892f60ea7d2f6052389da2a1d3c0179a88d7c4d52b3aa33cbef05e
+DIST xen-qemu-patches-0.tar.gz 3224 SHA256 ff1ac02a6d91e4abdbe069e1bb75d0b798deff5c2c72d1efb5459c72f4278f00 SHA512 4fd0c663a733436188aca364e927ac430d9bbef9859da65c074d7fd66c330645b05ff1f3e849f4581dfcd7054801d65edcff8445c1c63c2725f11e3903415af0 WHIRLPOOL 5504d7ffbd3c1970026c1f43252d9c76f10c5448ede247719e2698aa8f8e93b20e4cc353da5582b3b6887fb3fd7d1e13765f664ea60daeb6020f052eaca9b9f4
+DIST xen-security-patches-1.tar.gz 7040 SHA256 30733e9ca71bf4291ff212eb191afb22687ccd9b2579767fe0ee013152980c76 SHA512 89c72897f18a86c2060bb76a182e7cca72ad2f33a3aab964ecae66e057aeecafee2e9986204d6feb98f81ccb740460ee2cb37663b1ab79f47adc1dd73e0091bc WHIRLPOOL c27e612b87b4a30abbf59e6be019e2c21a78bfbdf1715da5498d95607d390d616251768d419ac5ce76087bbf7cdfc410dd0088ba48e425082cea971efcb64346
+DIST xen-security-patches-2.tar.gz 7370 SHA256 f24bf4b0cba29b51ee71f6ef82654cddf157c63d62fc1119f17255b2388e03ab SHA512 209dea670467ff1df18428c15b25229c05d676d1a2f646cddb221544ae888241ade48a22be037f97dce249ac322c1f30bb477675e5e2cc04a2fbd839e02f1f57 WHIRLPOOL ae66a2fbc0d0f0a555d407ebd3198fa58ee043515fb9821d7b9eda46d088bc87b3de16fe015fd1142294429dd2c1c7826e414a55980e27123185c1a86fb0a8a6
+DIST xen-security-patches-3.tar.gz 7349 SHA256 a1876b918c0a608618f349deed11b547a65c5909c31d72a89340d4908c572f46 SHA512 f5e8e7ab5d9be6aa036e52627931f1b2648de642664b2922f9cab64f44d19ac8682f5beb7fdbcb842ee19346202093fade3f10e39ba60fcb12a101deb4408818 WHIRLPOOL 14ee65babe4edd901914c8b8ddb5d7b54e6738d77642514fe611bf84541ae0a932bcb48f86179d5e7a6741135b9c7b129e8244cc22922c4e592604a696b6082f
+DIST xen-security-patches-5.tar.gz 8716 SHA256 afd114f2cb1b623ac1709d75c771006f91b5b2a0a0695f4da3d6aa6f6b340d9f SHA512 f2276759cb418e252052701f5e41e626e1d232098bd7e393e7e58286d356ef33f249c2f9d7b5b1219279de7c4c66832f0d4f761d36bc51e7c10cea973dd9882e WHIRLPOOL 18cb29a0fde10f1bac698c577713db1307c02408778b5d128a4f017ae8be6fba893feb9b8f09fe2d8164dc761d136190d1dbee8a3eb4caa35d8bf976a498d405
+DIST xen-security-patches-6.tar.gz 8308 SHA256 b0dc1df6b27073a83b12a17a04a01e74af8c19a1c96d9dda580bb738eaab25f3 SHA512 b9155eef3f18e47288a6a6bb570a073d4c84449fe11fbac4c35cceaa4f7c06624597f63a8768bddd735c345b8c430aeee18b71f43e9b188de3cfa0cbf608dc0a WHIRLPOOL 9933ed07a2419170070a9eedfda200ec5ebef67b6b98c1b435793008c126347cdc8c0ef9ff2cb4fe0b7333ff51211545a3fe2ff726ca7c22d46f231d6d1e82aa
DIST xen-security-patches-7.tar.xz 22604 SHA256 e831c71f830316f452eb8645a5e7ca497264587aa8b353945fd9535f485166e3 SHA512 051769f4118f5c6d5d961759f547526d3fb0e86a4c1dee265a7f0224f10a88e2217b5b5fcf8dbfc706a1ec3c8d1632ab688d3f70dfd89d830261dc7391dd41c2 WHIRLPOOL 8e6dfb4e1700a07e3e3207b67afaddc5d6aa6fd84db9b3e76bd9ff54f682740fed01070e5860bb5378d50903d5777b55dff88eb3444d45bdd63dba657889393d
+DIST xen-upstream-patches-0.tar.gz 2297 SHA256 bf21272ad029391d30bf31896efcadc75267538f6c7de5d239453f19659d58ee SHA512 3f5d60aaebd181bddab4dd02e0064de2f75672f44a687a7331fa40e81d56763fea84504081a449d11403b21ad0ba2dac075f0b1796809ef8d16e244f6be99e3d WHIRLPOOL 4ebe79c8f2ea1c45e88e59941e477ed5639dbca3fe95c9a67e07afb0f4b6fb8b7fea8e58422d7c8f906299e4f37c14b4db15200997e5a92b647df98fa93e10c7
diff --git a/app-emulation/xen-tools/metadata.xml b/app-emulation/xen-tools/metadata.xml
index dfd18d1ce5..9b082eb179 100644
--- a/app-emulation/xen-tools/metadata.xml
+++ b/app-emulation/xen-tools/metadata.xml
@@ -1,18 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>xen</herd>
+ <maintainer type="project">
+ <email>xen@gentoo.org</email>
+ <name>Gentoo Xen Project</name>
+ </maintainer>
<use>
- <flag name='api'>Build the C libxenapi bindings</flag>
- <flag name='flask'>Enable the Flask XSM module from NSA</flag>
- <flag name='hvm'>Enable support for hardware based virtualization (VT-x,AMD-v)</flag>
- <flag name='qemu'>Enable IOEMU support via the use of qemu-dm</flag>
- <flag name='pygrub'>Install the pygrub boot loader</flag>
- <flag name='screen'>Enable support for running domain U console in an <pkg>app-misc/screen</pkg> session</flag>
- <flag name='system-qemu'>Using <pkg>app-emulation/qemu</pkg> instead of the bundled one</flag>
- <flag name='system-seabios'>Using <pkg>sys-firmware/seabios</pkg> instead of the bundled one</flag>
- <flag name='ocaml'>Enable support for the ocaml language</flag>
- <flag name='ovmf'>Enable support to boot UEFI guest vm, needed by hvm</flag>
- <flag name='pam'>Enable pam support</flag>
+ <flag name="api">Build the C libxenapi bindings</flag>
+ <flag name="flask">Enable the Flask XSM module from NSA</flag>
+ <flag name="hvm">Enable support for hardware based virtualization (VT-x,AMD-v)</flag>
+ <flag name="qemu">Enable IOEMU support via the use of qemu-dm</flag>
+ <flag name="pygrub">Install the pygrub boot loader</flag>
+ <flag name="screen">Enable support for running domain U console in an <pkg>app-misc/screen</pkg> session</flag>
+ <flag name="system-qemu">Using <pkg>app-emulation/qemu</pkg> instead of the bundled one</flag>
+ <flag name="system-seabios">Using <pkg>sys-firmware/seabios</pkg> instead of the bundled one</flag>
+ <flag name="ocaml">Enable support for the ocaml language</flag>
+ <flag name="ovmf">Enable support to boot UEFI guest vm, needed by hvm</flag>
+ <flag name="pam">Enable pam support</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/xen-tools/xen-tools-4.2.5-r10.ebuild b/app-emulation/xen-tools/xen-tools-4.2.5-r10.ebuild
deleted file mode 100644
index 67e3d1c51a..0000000000
--- a/app-emulation/xen-tools/xen-tools-4.2.5-r10.ebuild
+++ /dev/null
@@ -1,391 +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 )
-PYTHON_REQ_USE='xml,threads'
-
-if [[ $PV == *9999 ]]; then
- KEYWORDS=""
- REPO="xen-unstable.hg"
- EHG_REPO_URI="http://xenbits.xensource.com/${REPO}"
- S="${WORKDIR}/${REPO}"
- live_eclass="mercurial"
-else
- KEYWORDS="amd64 x86"
- UPSTREAM_VER=9
- SECURITY_VER=6
- # xen-tools's gentoo patches tarball
- GENTOO_VER=1
- # xen-tools's gentoo patches version which apply to this specific ebuild
- GENTOO_GPV=0
- SEABIOS_VER=1.6.3.2
-
- [[ -n ${UPSTREAM_VER} ]] && \
- UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
- [[ -n ${SECURITY_VER} ]] && \
- SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz"
- [[ -n ${GENTOO_VER} ]] && \
- GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
-
- SRC_URI="http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
- http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
- https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
- ${UPSTREAM_PATCHSET_URI}
- ${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}"
- S="${WORKDIR}/xen-${PV}"
-fi
-
-inherit bash-completion-r1 eutils flag-o-matic multilib python-single-r1 toolchain-funcs udev ${live_eclass}
-
-DESCRIPTION="Xend daemon and tools"
-HOMEPAGE="http://xen.org/"
-DOCS=( README docs/README.xen-bugtool )
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="api custom-cflags debug doc flask hvm qemu ocaml pygrub screen static-libs system-seabios"
-
-REQUIRED_USE="hvm? ( qemu )
- ${PYTHON_REQUIRED_USE}"
-
-DEPEND="dev-libs/lzo:2
- dev-libs/glib:2
- dev-libs/yajl
- dev-libs/libgcrypt:0
- dev-python/lxml[${PYTHON_USEDEP}]
- dev-python/pypam[${PYTHON_USEDEP}]
- sys-libs/zlib
- sys-power/iasl
- system-seabios? ( sys-firmware/seabios )
- sys-firmware/ipxe
- dev-ml/findlib
- hvm? ( media-libs/libsdl )
- ${PYTHON_DEPS}
- api? ( dev-libs/libxml2
- net-misc/curl )
- ${PYTHON_DEPS}
- pygrub? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/ncurses} )
- sys-devel/bin86
- sys-devel/dev86
- dev-lang/perl
- app-misc/pax-utils
- doc? (
- app-doc/doxygen
- dev-tex/latex2html[png,gif]
- media-gfx/transfig
- media-gfx/graphviz
- dev-tex/xcolor
- dev-texlive/texlive-latexextra
- virtual/latex-base
- dev-tex/latexmk
- dev-texlive/texlive-latex
- dev-texlive/texlive-pictures
- dev-texlive/texlive-latexrecommended
- )
- hvm? ( x11-proto/xproto
- !net-libs/libiscsi )"
-RDEPEND="sys-apps/iproute2
- net-misc/bridge-utils
- ocaml? ( >=dev-lang/ocaml-4 )
- screen? (
- app-misc/screen
- app-admin/logrotate
- )
- virtual/udev"
-
-# hvmloader is used to bootstrap a fully virtualized kernel
-# Approved by QA team in bug #144032
-QA_WX_LOAD="usr/lib/xen/boot/hvmloader"
-
-RESTRICT="test"
-
-pkg_setup() {
- python-single-r1_pkg_setup
- export "CONFIG_LOMOUNT=y"
-
- #bug 522642, disable compile tools/tests
- export "CONFIG_TESTS=n"
-
- if has_version dev-libs/libgcrypt:0; then
- export "CONFIG_GCRYPT=y"
- fi
-
- if use qemu; then
- export "CONFIG_IOEMU=y"
- else
- export "CONFIG_IOEMU=n"
- fi
-
- if [[ -z ${XEN_TARGET_ARCH} ]] ; then
- if use x86 && use amd64; then
- die "Confusion! Both x86 and amd64 are set in your use flags!"
- elif use x86; then
- export XEN_TARGET_ARCH="x86_32"
- elif use amd64 ; then
- export XEN_TARGET_ARCH="x86_64"
- else
- die "Unsupported architecture!"
- fi
- fi
-
- use api && export "LIBXENAPI_BINDINGS=y"
- use flask && export "FLASK_ENABLE=y"
-}
-
-src_prepare() {
- # Upstream's patchset
- if [[ -n ${UPSTREAM_VER} ]]; then
- einfo "Try to apply Xen Upstream patcheset"
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- EPATCH_OPTS="-p1" \
- epatch "${WORKDIR}"/patches-upstream
- fi
-
- # Security patchset
- if [[ -n ${SECURITY_VER} ]]; then
- einfo "Try to apply Xen Security patcheset"
- source "${WORKDIR}"/patches-security/${PV}.conf
- # apply main xen patches
- for i in ${XEN_SECURITY_MAIN}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/xen/$i
- done
-
- # apply qemu-traditional patches
- pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
- for i in ${XEN_SECURITY_QEMUT}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/qemut/$i
- done
- popd > /dev/null
-
- # apply qemu-xen/upstream patches
- pushd "${S}"/tools/qemu-xen/ > /dev/null
- for i in ${XEN_SECURITY_QEMUU}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/qemuu/$i
- done
- popd > /dev/null
- fi
-
- # Gentoo's patchset
- if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
- einfo "Try to apply Gentoo specific patcheset"
- source "${FILESDIR}"/gentoo-patches.conf
- _gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
- for i in ${!_gpv}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-gentoo/$i
- done
- fi
-
- use system-seabios && epatch "${WORKDIR}"/patches-gentoo/${PN}-4-unbundle-seabios.patch
-
- if gcc-specs-pie; then
- epatch "${WORKDIR}"/patches-gentoo/ipxe-nopie.patch
- fi
-
- # if the user *really* wants to use their own custom-cflags, let them
- if use custom-cflags; then
- einfo "User wants their own CFLAGS - removing defaults"
-
- # try and remove all the default cflags
- find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
- -exec sed \
- -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
- -i {} + || die "failed to re-set custom-cflags"
- fi
-
- if ! use pygrub; then
- sed -e '/^SUBDIRS-$(PYTHON_TOOLS) += pygrub$/d' -i tools/Makefile || die
- fi
-
- # Disable hvm support on systems that don't support x86_32 binaries.
- if ! use hvm; then
- sed -e '/^CONFIG_IOEMU := y$/d' -i config/*.mk || die
- sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
- # Bug 351648
- elif ! use x86 && ! has x86 $(get_all_abis); then
- mkdir -p "${WORKDIR}"/extra-headers/gnu || die
- touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
- export CPATH="${WORKDIR}"/extra-headers
- fi
-
- # Don't bother with qemu, only needed for fully virtualised guests
- if ! use qemu; then
- sed -e "/^CONFIG_IOEMU := y$/d" -i config/*.mk || die
- sed -e "s:install-tools\: tools/ioemu-dir:install-tools\: :g" -i Makefile || die
- fi
-
- mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
- pushd tools/firmware/ > /dev/null
- ln -s seabios-dir-remote seabios-dir || die
- popd > /dev/null
-
- # Reset bash completion dir; Bug 472438
- sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
- -i Config.mk || die
- sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
-
- # Bug 445986
- sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' -i tools/firmware/Makefile || die
-
- # fix QA warning, create /var/run/, /var/lock dynamically
- sed -i -e "/\$(INSTALL_DIR) \$(DESTDIR)\$(XEN_RUN_DIR)/d" \
- tools/libxl/Makefile || die
-
- sed -i -e "/\/var\/run\//d" \
- tools/xenstore/Makefile \
- tools/pygrub/Makefile || die
-
- sed -i -e "/\/var\/lock\/subsys/d" \
- tools/Makefile || die
-
- # xencommons, Bug #492332, sed lighter weight than patching
- sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
- -i tools/hotplug/Linux/init.d/xencommons || die
-
- epatch_user
-}
-
-src_compile() {
- export VARTEXFONTS="${T}/fonts"
- local myopt
- use debug && myopt="${myopt} debug=y"
-
- use custom-cflags || unset CFLAGS
- if test-flag-CC -fno-strict-overflow; then
- append-flags -fno-strict-overflow
- fi
-
- unset LDFLAGS
- unset CFLAGS
- emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" -C tools ${myopt}
-
- use doc && emake -C docs txt html
- emake -C docs man-pages
-}
-
-src_install() {
- # Override auto-detection in the build system, bug #382573
- export INITD_DIR=/tmp/init.d
- export CONFIG_LEAF_DIR=../tmp/default
-
- # Let the build system compile installed Python modules.
- local PYTHONDONTWRITEBYTECODE
- export PYTHONDONTWRITEBYTECODE
-
- emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" install-tools \
- XEN_PYTHON_NATIVE_INSTALL=y install-tools
- # Fix the remaining Python shebangs.
- python_fix_shebang "${ED}"
-
- # Remove RedHat-specific stuff
- rm -rf "${D}"tmp || die
-
- # uncomment lines in xl.conf
- sed -e 's:^#autoballoon=1:autoballoon=1:' \
- -e 's:^#lockfile="/var/lock/xl":lockfile="/var/lock/xl":' \
- -e 's:^#vifscript="vif-bridge":vifscript="vif-bridge":' \
- -i tools/examples/xl.conf || die
-
- if use doc; then
- emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
-
- dohtml -r docs/
- docinto pdf
- dodoc ${DOCS[@]}
- [ -d "${D}"/usr/share/doc/xen ] && mv "${D}"/usr/share/doc/xen/* "${D}"/usr/share/doc/${PF}/html
- fi
-
- rm -rf "${D}"/usr/share/doc/xen/
- doman docs/man?/*
-
- newconfd "${FILESDIR}"/xendomains.confd xendomains
- newconfd "${FILESDIR}"/xenstored.confd xenstored
- newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
- newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
- newinitd "${FILESDIR}"/xenstored.initd xenstored
- newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
- newinitd "${FILESDIR}"/xencommons.initd xencommons
- newconfd "${FILESDIR}"/xencommons.confd xencommons
-
- if use screen; then
- cat "${FILESDIR}"/xendomains-screen.confd >> "${ED}"/etc/conf.d/xendomains || die
- cp "${FILESDIR}"/xen-consoles.logrotate "${ED}"/etc/xen/ || die
- keepdir /var/log/xen-consoles
- fi
-
- if [[ "${ARCH}" == 'amd64' ]] && use qemu; then
- mkdir -p "${D}"usr/$(get_libdir)/xen/bin || die
- mv "${D}"usr/lib/xen/bin/qemu* "${D}"usr/$(get_libdir)/xen/bin/ || die
- fi
-
- # For -static-libs wrt Bug 384355
- if ! use static-libs; then
- rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
- fi
-
- # xend expects these to exist
- keepdir /var/lib/xenstored /var/xen/dump /var/lib/xen /var/log/xen
-
- # for xendomains
- keepdir /etc/xen/auto
-
- # Temp QA workaround
- dodir "$(get_udevdir)"
- mv "${D}"/etc/udev/* "${D}/$(get_udevdir)"
- rm -rf "${D}"/etc/udev
-
- # Remove files failing QA AFTER emake installs them, avoiding seeking absent files
- find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
- -o -name openbios-ppc -o -name palcode-clipper \) -delete || die
-}
-
-pkg_postinst() {
- elog "Official Xen Guide and the offical wiki page:"
- elog "https://www.gentoo.org/doc/en/xen-gu"${D}"usr/ide.xml"
- elog "http://wiki.xen.org/wiki/Main_Page"
- elog ""
- elog "Recommended to utilise the xencommons script to config sytem at boot."
- elog "Add by use of rc-update on completion of the install"
-
- # TODO: we need to have the current Python slot here.
- if ! has_version "dev-lang/python[ncurses]"; then
- echo
- ewarn "NB: Your dev-lang/python is built without USE=ncurses."
- ewarn "Please rebuild python with USE=ncurses to make use of xenmon.py."
- fi
-
- if has_version "sys-apps/iproute2[minimal]"; then
- echo
- ewarn "Your sys-apps/iproute2 is built with USE=minimal. Networking"
- ewarn "will not work until you rebuild iproute2 without USE=minimal."
- fi
-
- if ! use hvm; then
- echo
- elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
- elog "support enable the hvm use flag."
- elog "An x86 or amd64 system is required to build HVM support."
- fi
-
- if grep -qsF XENSV= "${ROOT}/etc/conf.d/xend"; then
- echo
- elog "xensv is broken upstream (Gentoo bug #142011)."
- elog "Please remove '${ROOT%/}/etc/conf.d/xend', as it is no longer needed."
- fi
-}
diff --git a/app-emulation/xen-tools/xen-tools-4.5.2.ebuild b/app-emulation/xen-tools/xen-tools-4.5.2-r2.ebuild
index 7a70a4dec0..ba2f756b35 100644
--- a/app-emulation/xen-tools/xen-tools-4.5.2.ebuild
+++ b/app-emulation/xen-tools/xen-tools-4.5.2-r2.ebuild
@@ -19,6 +19,7 @@ else
KEYWORDS="amd64 ~arm ~arm64 -x86"
UPSTREAM_VER=
SECURITY_VER=7
+ SEC_VER=1
# xen-tools's gentoo patches tarball
GENTOO_VER=4
# xen-tools's gentoo patches version which apply to this specific ebuild
@@ -45,7 +46,9 @@ else
${OVMF_PATCHSET_URI} )
${UPSTREAM_PATCHSET_URI}
${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}"
+ ${GENTOO_PATCHSET_URI}
+ https://dev.gentoo.org/~idella4/distfiles/xen-security-patches-${SEC_VER}.tar.gz"
+
S="${WORKDIR}/xen-${MY_PV}"
fi
@@ -84,8 +87,8 @@ DEPEND="${COMMON_DEPEND}
${PYTHON_DEPS}
api? ( dev-libs/libxml2
net-misc/curl )
- pygrub? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/ncurses} )
- ovmf? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/sqlite} )
+ pygrub? ( $(python_gen_impl_dep ncurses) )
+ ovmf? ( $(python_gen_impl_dep sqlite) )
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-devel/bin86
system-seabios? ( sys-firmware/seabios )
@@ -94,9 +97,9 @@ DEPEND="${COMMON_DEPEND}
sys-power/iasl )
dev-lang/perl
app-misc/pax-utils
- dev-python/markdown[${PYTHON_USEDEP}]
doc? (
app-doc/doxygen
+ dev-python/markdown[${PYTHON_USEDEP}]
dev-tex/latex2html[png,gif]
media-gfx/graphviz
dev-tex/xcolor
@@ -174,6 +177,11 @@ src_prepare() {
einfo "Try to apply Xen Security patcheset"
source "${WORKDIR}"/patches-security/${PV}.conf
# apply main xen patches
+ # In contrast to xen-4.5.2-r2.ebuild, these are moved into the dir structure
+ # prepared and deposited by dlan in his devspace
+ mv "${WORKDIR}"/{xsa156-4.5.patch,xsa15[8-9].patch,xsa160-4.6.patch} \
+ "${WORKDIR}"/patches-security/xen || die
+ XEN_SECURITY_MAIN="${XEN_SECURITY_MAIN} xsa156-4.5.patch xsa15[8-9].patch xsa160-4.6.patch"
for i in ${XEN_SECURITY_MAIN}; do
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
@@ -181,6 +189,9 @@ src_prepare() {
done
# apply qemu-traditional patches
+ mv "${WORKDIR}"/xsa162-qemut.patch \
+ "${WORKDIR}"/patches-security/qemut/ || die
+ XEN_SECURITY_QEMUT="xsa162-qemut.patch"
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
for i in ${XEN_SECURITY_QEMUT}; do
EPATCH_SUFFIX="patch" \
@@ -190,6 +201,9 @@ src_prepare() {
popd > /dev/null
# apply qemu-xen/upstream patches
+ mv "${WORKDIR}"/xsa162-qemuu.patch \
+ "${WORKDIR}"/patches-security/qemuu/ || die
+ XEN_SECURITY_QEMUU="xsa162-qemuu.patch"
pushd "${S}"/tools/qemu-xen/ > /dev/null
for i in ${XEN_SECURITY_QEMUU}; do
EPATCH_SUFFIX="patch" \
@@ -207,7 +221,7 @@ src_prepare() {
# Gentoo's patchset
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
- einfo "Try to apply Gentoo specific patcheset"
+ einfo "Try to apply Gentoo specific patch set"
source "${FILESDIR}"/gentoo-patches.conf
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
for i in ${!_gpv}; do
@@ -219,7 +233,7 @@ src_prepare() {
# Ovmf's patchset
if [[ -n ${OVMF_VER} ]] && use ovmf; then
- einfo "Try to apply Ovmf patcheset"
+ einfo "Try to apply Ovmf patch set"
pushd "${WORKDIR}"/ovmf-*/ > /dev/null
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
diff --git a/app-emulation/xen-tools/xen-tools-4.6.0-r1.ebuild b/app-emulation/xen-tools/xen-tools-4.5.2-r3.ebuild
index 4b02971049..acef34ad2c 100644
--- a/app-emulation/xen-tools/xen-tools-4.6.0-r1.ebuild
+++ b/app-emulation/xen-tools/xen-tools-4.5.2-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -16,9 +16,12 @@ if [[ $PV == *9999 ]]; then
S="${WORKDIR}/${REPO}"
live_eclass="mercurial"
else
- KEYWORDS="~amd64 ~arm ~arm64 -x86"
- UPSTREAM_VER=0
+ KEYWORDS="amd64 ~arm ~arm64 x86"
+ UPSTREAM_VER=
SECURITY_VER=7
+ # vars set to reflect https://dev.gentoo.org/~idella4/
+ SEC_VER=2
+ QEMU_VER=0
# xen-tools's gentoo patches tarball
GENTOO_VER=4
# xen-tools's gentoo patches version which apply to this specific ebuild
@@ -32,7 +35,9 @@ else
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
[[ -n ${SECURITY_VER} ]] && \
- SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz"
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-qemu-patches-${QEMU_VER}.tar.gz"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz"
[[ -n ${OVMF_VER} ]] && \
@@ -46,6 +51,7 @@ else
${UPSTREAM_PATCHSET_URI}
${SECURITY_PATCHSET_URI}
${GENTOO_PATCHSET_URI}"
+
S="${WORKDIR}/xen-${MY_PV}"
fi
@@ -79,13 +85,15 @@ COMMON_DEPEND="
DEPEND="${COMMON_DEPEND}
dev-python/lxml[${PYTHON_USEDEP}]
+ x86? ( sys-devel/dev86
+ sys-power/iasl )
pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
hvm? ( media-libs/libsdl )
${PYTHON_DEPS}
api? ( dev-libs/libxml2
net-misc/curl )
- pygrub? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/ncurses} )
- ovmf? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/sqlite} )
+ pygrub? ( $(python_gen_impl_dep ncurses) )
+ ovmf? ( $(python_gen_impl_dep sqlite) )
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-devel/bin86
system-seabios? ( sys-firmware/seabios )
@@ -94,9 +102,9 @@ DEPEND="${COMMON_DEPEND}
sys-power/iasl )
dev-lang/perl
app-misc/pax-utils
- dev-python/markdown[${PYTHON_USEDEP}]
doc? (
app-doc/doxygen
+ dev-python/markdown[${PYTHON_USEDEP}]
dev-tex/latex2html[png,gif]
media-gfx/graphviz
dev-tex/xcolor
@@ -174,27 +182,34 @@ src_prepare() {
einfo "Try to apply Xen Security patcheset"
source "${WORKDIR}"/patches-security/${PV}.conf
# apply main xen patches
+ # Two parallel systems, both work
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
for i in ${XEN_SECURITY_MAIN}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/xen/$i
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
done
# apply qemu-traditional patches
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
for i in ${XEN_SECURITY_QEMUT}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/qemut/$i
+ epatch "${WORKDIR}"/patches-security/qemut/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemut/xsa*.patch; do
+ epatch $i
done
popd > /dev/null
# apply qemu-xen/upstream patches
pushd "${S}"/tools/qemu-xen/ > /dev/null
for i in ${XEN_SECURITY_QEMUU}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/qemuu/$i
+ epatch "${WORKDIR}"/patches-security/qemuu/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemuu/xsa*.patch; do
+ epatch $i
done
popd > /dev/null
fi
@@ -207,7 +222,7 @@ src_prepare() {
# Gentoo's patchset
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
- einfo "Try to apply Gentoo specific patcheset"
+ einfo "Try to apply Gentoo specific patch set"
source "${FILESDIR}"/gentoo-patches.conf
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
for i in ${!_gpv}; do
@@ -219,7 +234,7 @@ src_prepare() {
# Ovmf's patchset
if [[ -n ${OVMF_VER} ]] && use ovmf; then
- einfo "Try to apply Ovmf patcheset"
+ einfo "Try to apply Ovmf patch set"
pushd "${WORKDIR}"/ovmf-*/ > /dev/null
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
diff --git a/app-emulation/xen-tools/xen-tools-4.5.1-r3.ebuild b/app-emulation/xen-tools/xen-tools-4.5.2-r4.ebuild
index 80484cddc2..d2be7c5d90 100644
--- a/app-emulation/xen-tools/xen-tools-4.5.1-r3.ebuild
+++ b/app-emulation/xen-tools/xen-tools-4.5.2-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -16,9 +16,12 @@ if [[ $PV == *9999 ]]; then
S="${WORKDIR}/${REPO}"
live_eclass="mercurial"
else
- KEYWORDS="amd64 ~arm ~arm64 -x86"
- UPSTREAM_VER=0
- SECURITY_VER=6
+ KEYWORDS="amd64 ~arm ~arm64 x86"
+ UPSTREAM_VER=
+ SECURITY_VER=7
+ # vars set to reflect https://dev.gentoo.org/~idella4/
+ SEC_VER=6
+ QEMU_VER=0
# xen-tools's gentoo patches tarball
GENTOO_VER=4
# xen-tools's gentoo patches version which apply to this specific ebuild
@@ -32,7 +35,9 @@ else
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
[[ -n ${SECURITY_VER} ]] && \
- SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz"
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-qemu-patches-${QEMU_VER}.tar.gz"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz"
[[ -n ${OVMF_VER} ]] && \
@@ -46,6 +51,7 @@ else
${UPSTREAM_PATCHSET_URI}
${SECURITY_PATCHSET_URI}
${GENTOO_PATCHSET_URI}"
+
S="${WORKDIR}/xen-${MY_PV}"
fi
@@ -79,13 +85,15 @@ COMMON_DEPEND="
DEPEND="${COMMON_DEPEND}
dev-python/lxml[${PYTHON_USEDEP}]
+ x86? ( sys-devel/dev86
+ sys-power/iasl )
pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
hvm? ( media-libs/libsdl )
${PYTHON_DEPS}
api? ( dev-libs/libxml2
net-misc/curl )
- pygrub? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/ncurses} )
- ovmf? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/sqlite} )
+ pygrub? ( $(python_gen_impl_dep ncurses) )
+ ovmf? ( $(python_gen_impl_dep sqlite) )
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-devel/bin86
system-seabios? ( sys-firmware/seabios )
@@ -94,9 +102,9 @@ DEPEND="${COMMON_DEPEND}
sys-power/iasl )
dev-lang/perl
app-misc/pax-utils
- dev-python/markdown[${PYTHON_USEDEP}]
doc? (
app-doc/doxygen
+ dev-python/markdown[${PYTHON_USEDEP}]
dev-tex/latex2html[png,gif]
media-gfx/graphviz
dev-tex/xcolor
@@ -174,27 +182,34 @@ src_prepare() {
einfo "Try to apply Xen Security patcheset"
source "${WORKDIR}"/patches-security/${PV}.conf
# apply main xen patches
+ # Two parallel systems, both work
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
for i in ${XEN_SECURITY_MAIN}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/xen/$i
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
done
# apply qemu-traditional patches
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
for i in ${XEN_SECURITY_QEMUT}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/qemut/$i
+ epatch "${WORKDIR}"/patches-security/qemut/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemut/xsa*.patch; do
+ epatch $i
done
popd > /dev/null
# apply qemu-xen/upstream patches
pushd "${S}"/tools/qemu-xen/ > /dev/null
for i in ${XEN_SECURITY_QEMUU}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/qemuu/$i
+ epatch "${WORKDIR}"/patches-security/qemuu/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemuu/xsa*.patch; do
+ epatch $i
done
popd > /dev/null
fi
@@ -207,7 +222,7 @@ src_prepare() {
# Gentoo's patchset
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
- einfo "Try to apply Gentoo specific patcheset"
+ einfo "Try to apply Gentoo specific patch set"
source "${FILESDIR}"/gentoo-patches.conf
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
for i in ${!_gpv}; do
@@ -219,7 +234,7 @@ src_prepare() {
# Ovmf's patchset
if [[ -n ${OVMF_VER} ]] && use ovmf; then
- einfo "Try to apply Ovmf patcheset"
+ einfo "Try to apply Ovmf patch set"
pushd "${WORKDIR}"/ovmf-*/ > /dev/null
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
diff --git a/app-emulation/xen-tools/xen-tools-4.2.5-r11.ebuild b/app-emulation/xen-tools/xen-tools-4.6.0-r4.ebuild
index ae93f4d27c..e9f84c002c 100644
--- a/app-emulation/xen-tools/xen-tools-4.2.5-r11.ebuild
+++ b/app-emulation/xen-tools/xen-tools-4.6.0-r4.ebuild
@@ -5,80 +5,104 @@
EAPI=5
PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE='xml,threads'
+PYTHON_REQ_USE='ncurses,xml,threads'
+
+inherit eutils bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs versionator
+
+MY_PV=${PV/_/-}
+MAJOR_V="$(get_version_component_range 1-2)"
if [[ $PV == *9999 ]]; then
+ inherit git-r3
KEYWORDS=""
- REPO="xen-unstable.hg"
- EHG_REPO_URI="http://xenbits.xensource.com/${REPO}"
+ REPO="xen.git"
+ EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
- live_eclass="mercurial"
else
- KEYWORDS="amd64 x86"
- UPSTREAM_VER=10
+ KEYWORDS="~amd64 ~arm ~arm64 -x86"
+ UPSTREAM_VER=0
SECURITY_VER=7
+ SEC_VER=1
# xen-tools's gentoo patches tarball
- GENTOO_VER=5
+ GENTOO_VER=4
# xen-tools's gentoo patches version which apply to this specific ebuild
- GENTOO_GPV=1
- SEABIOS_VER=1.6.3.2
+ GENTOO_GPV=0
+ # xen-tools ovmf's patches
+ OVMF_VER=1
+
+ SEABIOS_VER=1.8.2
+ OVMF_PV=20150629
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
[[ -n ${SECURITY_VER} ]] && \
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz"
[[ -n ${GENTOO_VER} ]] && \
- GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ [[ -n ${OVMF_VER} ]] && \
+ OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
- SRC_URI="http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
+ SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/xen-${MY_PV}.tar.gz
http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
+ ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.bz2
+ ${OVMF_PATCHSET_URI} )
${UPSTREAM_PATCHSET_URI}
${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}"
- S="${WORKDIR}/xen-${PV}"
-fi
+ ${GENTOO_PATCHSET_URI}
+ https://dev.gentoo.org/~idella4/distfiles/xen-security-patches-${SEC_VER}.tar.gz"
-inherit bash-completion-r1 eutils flag-o-matic multilib python-single-r1 toolchain-funcs udev ${live_eclass}
+ S="${WORKDIR}/xen-${MY_PV}"
+fi
-DESCRIPTION="Xend daemon and tools"
+DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="http://xen.org/"
DOCS=( README docs/README.xen-bugtool )
LICENSE="GPL-2"
-SLOT="0"
-IUSE="api custom-cflags debug doc flask hvm qemu ocaml pygrub screen static-libs system-seabios"
-
-REQUIRED_USE="hvm? ( qemu )
- ${PYTHON_REQUIRED_USE}"
-
-DEPEND="dev-libs/lzo:2
+SLOT="0/${MAJOR_V}"
+# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
+# >=dev-lang/ocaml-4 stable
+# Masked in profiles/eapi-5-files instead
+IUSE="api custom-cflags debug doc flask hvm qemu ocaml ovmf +pam python pygrub screen sdl static-libs system-qemu system-seabios"
+
+REQUIRED_USE="hvm? ( || ( qemu system-qemu ) )
+ ${PYTHON_REQUIRED_USE}
+ pygrub? ( python )
+ ovmf? ( hvm )
+ qemu? ( !system-qemu )"
+
+COMMON_DEPEND="
+ dev-libs/lzo:2
dev-libs/glib:2
dev-libs/yajl
+ dev-libs/libaio
dev-libs/libgcrypt:0
- dev-python/lxml[${PYTHON_USEDEP}]
- dev-python/pypam[${PYTHON_USEDEP}]
sys-libs/zlib
- sys-power/iasl
- system-seabios? ( sys-firmware/seabios )
- sys-firmware/ipxe
- dev-ml/findlib
- hvm? ( media-libs/libsdl )
+"
+
+DEPEND="${COMMON_DEPEND}
+ dev-python/lxml[${PYTHON_USEDEP}]
+ pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
${PYTHON_DEPS}
api? ( dev-libs/libxml2
net-misc/curl )
- ${PYTHON_DEPS}
- pygrub? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/ncurses} )
- sys-devel/bin86
- sys-devel/dev86
+ ovmf? ( $(python_gen_impl_dep sqlite) )
+ !amd64? ( >=sys-apps/dtc-1.4.0 )
+ amd64? ( sys-devel/bin86
+ system-seabios? ( sys-firmware/seabios )
+ sys-firmware/ipxe
+ sys-devel/dev86
+ sys-power/iasl )
dev-lang/perl
app-misc/pax-utils
doc? (
app-doc/doxygen
+ dev-python/markdown[${PYTHON_USEDEP}]
dev-tex/latex2html[png,gif]
- media-gfx/transfig
media-gfx/graphviz
dev-tex/xcolor
+ media-gfx/transfig
dev-texlive/texlive-latexextra
virtual/latex-base
dev-tex/latexmk
@@ -86,20 +110,28 @@ DEPEND="dev-libs/lzo:2
dev-texlive/texlive-pictures
dev-texlive/texlive-latexrecommended
)
- hvm? ( x11-proto/xproto
- !net-libs/libiscsi )"
-RDEPEND="sys-apps/iproute2
+ hvm? ( x11-proto/xproto
+ !net-libs/libiscsi )
+ qemu? (
+ x11-libs/pixman
+ sdl? ( media-libs/libsdl[X] )
+ )
+ system-qemu? ( app-emulation/qemu[xen] )
+ ocaml? ( dev-ml/findlib
+ >=dev-lang/ocaml-4 )"
+
+RDEPEND="${COMMON_DEPEND}
+ sys-apps/iproute2[-minimal]
net-misc/bridge-utils
- ocaml? ( >=dev-lang/ocaml-4 )
screen? (
app-misc/screen
app-admin/logrotate
- )
- virtual/udev"
+ )"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
-QA_WX_LOAD="usr/lib/xen/boot/hvmloader"
+QA_WX_LOAD="usr/lib/xen/boot/hvmloader
+ usr/share/qemu-xen/qemu/s390-ccw.img"
RESTRICT="test"
@@ -114,12 +146,6 @@ pkg_setup() {
export "CONFIG_GCRYPT=y"
fi
- if use qemu; then
- export "CONFIG_IOEMU=y"
- else
- export "CONFIG_IOEMU=n"
- fi
-
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
@@ -127,19 +153,20 @@ pkg_setup() {
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
-
- use api && export "LIBXENAPI_BINDINGS=y"
- use flask && export "FLASK_ENABLE=y"
}
src_prepare() {
# Upstream's patchset
if [[ -n ${UPSTREAM_VER} ]]; then
- einfo "Try to apply Xen Upstream patcheset"
+ einfo "Try to apply Xen Upstream patch set"
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
EPATCH_OPTS="-p1" \
@@ -148,9 +175,14 @@ src_prepare() {
# Security patchset
if [[ -n ${SECURITY_VER} ]]; then
- einfo "Try to apply Xen Security patcheset"
+ einfo "Try to apply Xen Security patch set"
source "${WORKDIR}"/patches-security/${PV}.conf
# apply main xen patches
+ # In contrast to xen-4.5.2-r2.ebuild, these are moved into the dir structure
+ # prepared and deposited by dlan in his devspace
+ mv "${WORKDIR}"/{xsa15[6-9].patch,xsa160-4.6.patch} \
+ "${WORKDIR}"/patches-security/xen || die
+ XEN_SECURITY_MAIN="${XEN_SECURITY_MAIN} xsa15[6-9].patch xsa160-4.6.patch"
for i in ${XEN_SECURITY_MAIN}; do
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
@@ -158,6 +190,9 @@ src_prepare() {
done
# apply qemu-traditional patches
+ mv "${WORKDIR}"/xsa162-qemut.patch \
+ "${WORKDIR}"/patches-security/qemut/ || die
+ XEN_SECURITY_QEMUT="xsa162-qemut.patch"
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
for i in ${XEN_SECURITY_QEMUT}; do
EPATCH_SUFFIX="patch" \
@@ -167,6 +202,9 @@ src_prepare() {
popd > /dev/null
# apply qemu-xen/upstream patches
+ mv "${WORKDIR}"/xsa162-qemuu.patch \
+ "${WORKDIR}"/patches-security/qemuu/ || die
+ XEN_SECURITY_QEMUU="xsa162-qemuu.patch"
pushd "${S}"/tools/qemu-xen/ > /dev/null
for i in ${XEN_SECURITY_QEMUU}; do
EPATCH_SUFFIX="patch" \
@@ -176,9 +214,15 @@ src_prepare() {
popd > /dev/null
fi
+ # move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
+ mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
+ pushd tools/firmware/ > /dev/null
+ ln -s seabios-dir-remote seabios-dir || die
+ popd > /dev/null
+
# Gentoo's patchset
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
- einfo "Try to apply Gentoo specific patcheset"
+ einfo "Try to apply Gentoo specific patch set"
source "${FILESDIR}"/gentoo-patches.conf
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
for i in ${!_gpv}; do
@@ -188,12 +232,30 @@ src_prepare() {
done
fi
- use system-seabios && epatch "${WORKDIR}"/patches-gentoo/${PN}-4-unbundle-seabios.patch
-
- if gcc-specs-pie; then
- epatch "${WORKDIR}"/patches-gentoo/ipxe-nopie.patch
+ # Ovmf's patchset
+ if [[ -n ${OVMF_VER} ]] && use ovmf; then
+ einfo "Try to apply Ovmf patch set"
+ pushd "${WORKDIR}"/ovmf-*/ > /dev/null
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-ovmf
+ popd > /dev/null
+ mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
fi
+ mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
+
+ # Fix texi2html build error with new texi2html, qemu.doc.html
+ sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
+
+ use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
+ sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
+ -i tools/firmware/Makefile || die
+
+ # Drop .config, fixes to gcc-4.6
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
@@ -207,15 +269,22 @@ src_prepare() {
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} + || die "failed to re-set custom-cflags"
+ else
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+ unset CPPFLAGS
fi
if ! use pygrub; then
- sed -e '/^SUBDIRS-$(PYTHON_TOOLS) += pygrub$/d' -i tools/Makefile || die
+ sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
+ fi
+
+ if ! use python; then
+ sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
- # Disable hvm support on systems that don't support x86_32 binaries.
if ! use hvm; then
- sed -e '/^CONFIG_IOEMU := y$/d' -i config/*.mk || die
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
@@ -224,55 +293,86 @@ src_prepare() {
export CPATH="${WORKDIR}"/extra-headers
fi
- # Don't bother with qemu, only needed for fully virtualised guests
- if ! use qemu; then
- sed -e "/^CONFIG_IOEMU := y$/d" -i config/*.mk || die
- sed -e "s:install-tools\: tools/ioemu-dir:install-tools\: :g" -i Makefile || die
+ if use qemu; then
+ if use sdl; then
+ sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
+ tools/Makefile || die
+ else
+ sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
+ tools/qemu-xen-traditional/xen-setup || die
+ sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
+ tools/Makefile || die
+ fi
+ else
+ # Don't bother with qemu, only needed for fully virtualised guests
+ sed -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i Makefile || die
fi
- mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
- pushd tools/firmware/ > /dev/null
- ln -s seabios-dir-remote seabios-dir || die
- popd > /dev/null
-
# Reset bash completion dir; Bug 472438
sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
-i Config.mk || die
sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
- # Bug 445986
- sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' -i tools/firmware/Makefile || die
+ # xencommons, Bug #492332, sed lighter weight than patching
+ sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
+ -i tools/hotplug/Linux/init.d/xencommons.in || die
- # fix QA warning, create /var/run/, /var/lock dynamically
- sed -i -e "/\$(INSTALL_DIR) \$(DESTDIR)\$(XEN_RUN_DIR)/d" \
- tools/libxl/Makefile || die
+ # respect multilib, usr/lib/libcacard.so.0.0.0
+ sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
+ -i tools/qemu-xen/configure || die
- sed -i -e "/\/var\/run\//d" \
- tools/xenstore/Makefile \
- tools/pygrub/Makefile || die
+ #bug 518136, don't build 32bit exactuable for nomultilib profile
+ if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
+ sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
+ fi
- sed -i -e "/\/var\/lock\/subsys/d" \
- tools/Makefile || die
+ # use /var instead of /var/lib, consistat with previous ebuild
+ sed -i -e "/XEN_LOCK_DIR=/s/\$localstatedir/\/var/g" \
+ m4/paths.m4 configure tools/configure || die
+ # use /run instead of /var/run
+ sed -i -e "/XEN_RUN_DIR=/s/\$localstatedir//g" \
+ m4/paths.m4 configure tools/configure || die
- # xencommons, Bug #492332, sed lighter weight than patching
- sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
- -i tools/hotplug/Linux/init.d/xencommons || die
+ # uncomment lines in xl.conf
+ sed -e 's:^#autoballoon=:autoballoon=:' \
+ -e 's:^#lockfile=:lockfile=:' \
+ -e 's:^#vif.default.script=:vif.default.script=:' \
+ -i tools/examples/xl.conf || die
epatch_user
}
+src_configure() {
+ local myconf="--prefix=${PREFIX}/usr \
+ --libdir=${PREFIX}/usr/$(get_libdir) \
+ --libexecdir=${PREFIX}/usr/libexec \
+ --disable-werror \
+ --disable-xen \
+ --enable-tools \
+ --enable-docs \
+ $(use_with system-qemu) \
+ $(use_enable pam) \
+ $(use_enable api xenapi) \
+ $(use_enable ovmf) \
+ $(use_enable ocaml ocamltools) \
+ --with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
+ "
+
+ use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
+ use qemu || myconf+=" --with-system-qemu"
+ use amd64 && myconf+=" --enable-qemu-traditional"
+ econf ${myconf}
+}
+
src_compile() {
export VARTEXFONTS="${T}/fonts"
local myopt
use debug && myopt="${myopt} debug=y"
- use custom-cflags || unset CFLAGS
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
- unset LDFLAGS
- unset CFLAGS
emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" -C tools ${myopt}
use doc && emake -C docs txt html
@@ -288,20 +388,15 @@ src_install() {
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
- emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" install-tools \
+ emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
+
# Fix the remaining Python shebangs.
- python_fix_shebang "${ED}"
+ python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"tmp || die
- # uncomment lines in xl.conf
- sed -e 's:^#autoballoon=1:autoballoon=1:' \
- -e 's:^#lockfile="/var/lock/xl":lockfile="/var/lock/xl":' \
- -e 's:^#vifscript="vif-bridge":vifscript="vif-bridge":' \
- -i tools/examples/xl.conf || die
-
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
@@ -322,34 +417,23 @@ src_install() {
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
+ newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
+ newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
if use screen; then
- cat "${FILESDIR}"/xendomains-screen.confd >> "${ED}"/etc/conf.d/xendomains || die
- cp "${FILESDIR}"/xen-consoles.logrotate "${ED}"/etc/xen/ || die
+ cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
+ cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
- if [[ "${ARCH}" == 'amd64' ]] && use qemu; then
- mkdir -p "${D}"usr/$(get_libdir)/xen/bin || die
- mv "${D}"usr/lib/xen/bin/qemu* "${D}"usr/$(get_libdir)/xen/bin/ || die
- fi
-
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
fi
- # xend expects these to exist
- keepdir /var/lib/xenstored /var/xen/dump /var/lib/xen /var/log/xen
-
# for xendomains
keepdir /etc/xen/auto
- # Temp QA workaround
- dodir "$(get_udevdir)"
- mv "${D}"/etc/udev/* "${D}/$(get_udevdir)"
- rm -rf "${D}"/etc/udev
-
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
@@ -357,25 +441,12 @@ src_install() {
pkg_postinst() {
elog "Official Xen Guide and the offical wiki page:"
- elog "https://www.gentoo.org/doc/en/xen-gu"${D}"usr/ide.xml"
+ elog "https://wiki.gentoo.org/wiki/Xen"
elog "http://wiki.xen.org/wiki/Main_Page"
elog ""
- elog "Recommended to utilise the xencommons script to config sytem at boot."
+ elog "Recommended to utilise the xencommons script to config sytem At boot"
elog "Add by use of rc-update on completion of the install"
- # TODO: we need to have the current Python slot here.
- if ! has_version "dev-lang/python[ncurses]"; then
- echo
- ewarn "NB: Your dev-lang/python is built without USE=ncurses."
- ewarn "Please rebuild python with USE=ncurses to make use of xenmon.py."
- fi
-
- if has_version "sys-apps/iproute2[minimal]"; then
- echo
- ewarn "Your sys-apps/iproute2 is built with USE=minimal. Networking"
- ewarn "will not work until you rebuild iproute2 without USE=minimal."
- fi
-
if ! use hvm; then
echo
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
@@ -383,9 +454,10 @@ pkg_postinst() {
elog "An x86 or amd64 system is required to build HVM support."
fi
- if grep -qsF XENSV= "${ROOT}/etc/conf.d/xend"; then
- echo
- elog "xensv is broken upstream (Gentoo bug #142011)."
- elog "Please remove '${ROOT%/}/etc/conf.d/xend', as it is no longer needed."
+ if use qemu; then
+ elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
+ elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
+ elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
+ elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
fi
}
diff --git a/app-emulation/xen-tools/xen-tools-4.6.0-r5.ebuild b/app-emulation/xen-tools/xen-tools-4.6.0-r5.ebuild
new file mode 100644
index 0000000000..3481cb6960
--- /dev/null
+++ b/app-emulation/xen-tools/xen-tools-4.6.0-r5.ebuild
@@ -0,0 +1,465 @@
+# 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,xml,threads'
+
+inherit eutils bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs versionator
+
+MY_PV=${PV/_/-}
+MAJOR_V="$(get_version_component_range 1-2)"
+
+if [[ $PV == *9999 ]]; then
+ inherit git-r3
+ KEYWORDS=""
+ REPO="xen.git"
+ EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
+ S="${WORKDIR}/${REPO}"
+else
+ KEYWORDS="amd64 ~arm ~arm64 x86"
+ UPSTREAM_VER=0
+ SECURITY_VER=7
+ # vars set to reflect https://dev.gentoo.org/~idella4/
+ SEC_VER=3
+ QEMU_VER=0
+ # xen-tools's gentoo patches tarball
+ GENTOO_VER=4
+ # xen-tools's gentoo patches version which apply to this specific ebuild
+ GENTOO_GPV=0
+ # xen-tools ovmf's patches
+ OVMF_VER=1
+
+ SEABIOS_VER=1.8.2
+ OVMF_PV=20150629
+
+ [[ -n ${UPSTREAM_VER} ]] && \
+ UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
+ [[ -n ${SECURITY_VER} ]] && \
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-qemu-patches-${QEMU_VER}.tar.gz"
+ [[ -n ${GENTOO_VER} ]] && \
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ [[ -n ${OVMF_VER} ]] && \
+ OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
+
+ SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/xen-${MY_PV}.tar.gz
+ http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
+ https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
+ ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.bz2
+ ${OVMF_PATCHSET_URI} )
+ ${UPSTREAM_PATCHSET_URI}
+ ${SECURITY_PATCHSET_URI}
+ ${GENTOO_PATCHSET_URI}"
+
+ S="${WORKDIR}/xen-${MY_PV}"
+fi
+
+DESCRIPTION="Xen tools including QEMU and xl"
+HOMEPAGE="http://xen.org/"
+DOCS=( README docs/README.xen-bugtool )
+
+LICENSE="GPL-2"
+SLOT="0/${MAJOR_V}"
+# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
+# >=dev-lang/ocaml-4 stable
+# Masked in profiles/eapi-5-files instead
+IUSE="api custom-cflags debug doc flask hvm qemu ocaml ovmf +pam python pygrub screen sdl static-libs system-qemu system-seabios"
+
+REQUIRED_USE="hvm? ( || ( qemu system-qemu ) )
+ ${PYTHON_REQUIRED_USE}
+ pygrub? ( python )
+ ovmf? ( hvm )
+ qemu? ( !system-qemu )"
+
+COMMON_DEPEND="
+ dev-libs/lzo:2
+ dev-libs/glib:2
+ dev-libs/yajl
+ dev-libs/libaio
+ dev-libs/libgcrypt:0
+ sys-libs/zlib
+"
+
+DEPEND="${COMMON_DEPEND}
+ dev-python/lxml[${PYTHON_USEDEP}]
+ x86? ( sys-devel/dev86
+ sys-power/iasl )
+ pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
+ ${PYTHON_DEPS}
+ api? ( dev-libs/libxml2
+ net-misc/curl )
+ ovmf? ( $(python_gen_impl_dep sqlite) )
+ !amd64? ( >=sys-apps/dtc-1.4.0 )
+ amd64? ( sys-devel/bin86
+ system-seabios? ( sys-firmware/seabios )
+ sys-firmware/ipxe
+ sys-devel/dev86
+ sys-power/iasl )
+ dev-lang/perl
+ app-misc/pax-utils
+ doc? (
+ app-doc/doxygen
+ dev-python/markdown[${PYTHON_USEDEP}]
+ dev-tex/latex2html[png,gif]
+ media-gfx/graphviz
+ dev-tex/xcolor
+ media-gfx/transfig
+ dev-texlive/texlive-latexextra
+ virtual/latex-base
+ dev-tex/latexmk
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-pictures
+ dev-texlive/texlive-latexrecommended
+ )
+ hvm? ( x11-proto/xproto
+ !net-libs/libiscsi )
+ qemu? (
+ x11-libs/pixman
+ sdl? ( media-libs/libsdl[X] )
+ )
+ system-qemu? ( app-emulation/qemu[xen] )
+ ocaml? ( dev-ml/findlib
+ >=dev-lang/ocaml-4 )"
+
+RDEPEND="${COMMON_DEPEND}
+ sys-apps/iproute2[-minimal]
+ net-misc/bridge-utils
+ screen? (
+ app-misc/screen
+ app-admin/logrotate
+ )"
+
+# hvmloader is used to bootstrap a fully virtualized kernel
+# Approved by QA team in bug #144032
+QA_WX_LOAD="usr/lib/xen/boot/hvmloader
+ usr/share/qemu-xen/qemu/s390-ccw.img"
+
+RESTRICT="test"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ export "CONFIG_LOMOUNT=y"
+
+ #bug 522642, disable compile tools/tests
+ export "CONFIG_TESTS=n"
+
+ if has_version dev-libs/libgcrypt:0; then
+ export "CONFIG_GCRYPT=y"
+ fi
+
+ if [[ -z ${XEN_TARGET_ARCH} ]] ; then
+ if use x86 && use amd64; then
+ die "Confusion! Both x86 and amd64 are set in your use flags!"
+ elif use x86; then
+ export XEN_TARGET_ARCH="x86_32"
+ elif use amd64 ; then
+ export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
+ else
+ die "Unsupported architecture!"
+ fi
+ fi
+}
+
+src_prepare() {
+ # Upstream's patchset
+ if [[ -n ${UPSTREAM_VER} ]]; then
+ einfo "Try to apply Xen Upstream patch set"
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-upstream
+ fi
+
+ # Security patchset
+ if [[ -n ${SECURITY_VER} ]]; then
+ einfo "Try to apply Xen Security patch set"
+ source "${WORKDIR}"/patches-security/${PV}.conf
+ # apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
+ for i in ${XEN_SECURITY_MAIN}; do
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
+ done
+
+ # apply qemu-traditional patches
+ pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
+ for i in ${XEN_SECURITY_QEMUT}; do
+ epatch "${WORKDIR}"/patches-security/qemut/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemut/xsa*.patch; do
+ epatch $i
+ done
+ popd > /dev/null
+
+ # apply qemu-xen/upstream patches
+ pushd "${S}"/tools/qemu-xen/ > /dev/null
+ for i in ${XEN_SECURITY_QEMUU}; do
+ epatch "${WORKDIR}"/patches-security/qemuu/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemuu/xsa*.patch; do
+ epatch $i
+ done
+ popd > /dev/null
+ fi
+
+ # move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
+ mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
+ pushd tools/firmware/ > /dev/null
+ ln -s seabios-dir-remote seabios-dir || die
+ popd > /dev/null
+
+ # Gentoo's patchset
+ if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
+ einfo "Try to apply Gentoo specific patch set"
+ source "${FILESDIR}"/gentoo-patches.conf
+ _gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
+ for i in ${!_gpv}; do
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}"/patches-gentoo/$i
+ done
+ fi
+
+ # Ovmf's patchset
+ if [[ -n ${OVMF_VER} ]] && use ovmf; then
+ einfo "Try to apply Ovmf patch set"
+ pushd "${WORKDIR}"/ovmf-*/ > /dev/null
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-ovmf
+ popd > /dev/null
+ mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
+ fi
+
+ mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
+
+ # Fix texi2html build error with new texi2html, qemu.doc.html
+ sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
+
+ use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
+ sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
+ -i tools/firmware/Makefile || die
+
+ # Drop .config, fixes to gcc-4.6
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
+ # if the user *really* wants to use their own custom-cflags, let them
+ if use custom-cflags; then
+ einfo "User wants their own CFLAGS - removing defaults"
+
+ # try and remove all the default cflags
+ find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
+ -exec sed \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
+ -i {} + || die "failed to re-set custom-cflags"
+ else
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+ unset CPPFLAGS
+ fi
+
+ if ! use pygrub; then
+ sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
+ fi
+
+ if ! use python; then
+ sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
+ fi
+
+ if ! use hvm; then
+ sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
+ # Bug 351648
+ elif ! use x86 && ! has x86 $(get_all_abis); then
+ mkdir -p "${WORKDIR}"/extra-headers/gnu || die
+ touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
+ export CPATH="${WORKDIR}"/extra-headers
+ fi
+
+ if use qemu; then
+ if use sdl; then
+ sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
+ tools/Makefile || die
+ else
+ sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
+ tools/qemu-xen-traditional/xen-setup || die
+ sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
+ tools/Makefile || die
+ fi
+ else
+ # Don't bother with qemu, only needed for fully virtualised guests
+ sed -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i Makefile || die
+ fi
+
+ # Reset bash completion dir; Bug 472438
+ sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
+ -i Config.mk || die
+ sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
+
+ # xencommons, Bug #492332, sed lighter weight than patching
+ sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
+ -i tools/hotplug/Linux/init.d/xencommons.in || die
+
+ # respect multilib, usr/lib/libcacard.so.0.0.0
+ sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
+ -i tools/qemu-xen/configure || die
+
+ #bug 518136, don't build 32bit exactuable for nomultilib profile
+ if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
+ sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
+ fi
+
+ # use /var instead of /var/lib, consistat with previous ebuild
+ sed -i -e "/XEN_LOCK_DIR=/s/\$localstatedir/\/var/g" \
+ m4/paths.m4 configure tools/configure || die
+ # use /run instead of /var/run
+ sed -i -e "/XEN_RUN_DIR=/s/\$localstatedir//g" \
+ m4/paths.m4 configure tools/configure || die
+
+ # uncomment lines in xl.conf
+ sed -e 's:^#autoballoon=:autoballoon=:' \
+ -e 's:^#lockfile=:lockfile=:' \
+ -e 's:^#vif.default.script=:vif.default.script=:' \
+ -i tools/examples/xl.conf || die
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf="--prefix=${PREFIX}/usr \
+ --libdir=${PREFIX}/usr/$(get_libdir) \
+ --libexecdir=${PREFIX}/usr/libexec \
+ --disable-werror \
+ --disable-xen \
+ --enable-tools \
+ --enable-docs \
+ $(use_with system-qemu) \
+ $(use_enable pam) \
+ $(use_enable api xenapi) \
+ $(use_enable ovmf) \
+ $(use_enable ocaml ocamltools) \
+ --with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
+ "
+
+ use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
+ use qemu || myconf+=" --with-system-qemu"
+ use amd64 && myconf+=" --enable-qemu-traditional"
+ econf ${myconf}
+}
+
+src_compile() {
+ export VARTEXFONTS="${T}/fonts"
+ local myopt
+ use debug && myopt="${myopt} debug=y"
+
+ if test-flag-CC -fno-strict-overflow; then
+ append-flags -fno-strict-overflow
+ fi
+
+ emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" -C tools ${myopt}
+
+ use doc && emake -C docs txt html
+ emake -C docs man-pages
+}
+
+src_install() {
+ # Override auto-detection in the build system, bug #382573
+ export INITD_DIR=/tmp/init.d
+ export CONFIG_LEAF_DIR=../tmp/default
+
+ # Let the build system compile installed Python modules.
+ local PYTHONDONTWRITEBYTECODE
+ export PYTHONDONTWRITEBYTECODE
+
+ emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
+ XEN_PYTHON_NATIVE_INSTALL=y install-tools
+
+ # Fix the remaining Python shebangs.
+ python_fix_shebang "${D}"
+
+ # Remove RedHat-specific stuff
+ rm -rf "${D}"tmp || die
+
+ if use doc; then
+ emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
+
+ dohtml -r docs/
+ docinto pdf
+ dodoc ${DOCS[@]}
+ [ -d "${D}"/usr/share/doc/xen ] && mv "${D}"/usr/share/doc/xen/* "${D}"/usr/share/doc/${PF}/html
+ fi
+
+ rm -rf "${D}"/usr/share/doc/xen/
+ doman docs/man?/*
+
+ newconfd "${FILESDIR}"/xendomains.confd xendomains
+ newconfd "${FILESDIR}"/xenstored.confd xenstored
+ newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
+ newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
+ newinitd "${FILESDIR}"/xenstored.initd xenstored
+ newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
+ newinitd "${FILESDIR}"/xencommons.initd xencommons
+ newconfd "${FILESDIR}"/xencommons.confd xencommons
+ newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
+ newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
+
+ if use screen; then
+ cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
+ cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
+ keepdir /var/log/xen-consoles
+ fi
+
+ # For -static-libs wrt Bug 384355
+ if ! use static-libs; then
+ rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
+ fi
+
+ # for xendomains
+ keepdir /etc/xen/auto
+
+ # Remove files failing QA AFTER emake installs them, avoiding seeking absent files
+ find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
+ -o -name openbios-ppc -o -name palcode-clipper \) -delete || die
+}
+
+pkg_postinst() {
+ elog "Official Xen Guide and the offical wiki page:"
+ elog "https://wiki.gentoo.org/wiki/Xen"
+ elog "http://wiki.xen.org/wiki/Main_Page"
+ elog ""
+ elog "Recommended to utilise the xencommons script to config sytem At boot"
+ elog "Add by use of rc-update on completion of the install"
+
+ if ! use hvm; then
+ echo
+ elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
+ elog "support enable the hvm use flag."
+ elog "An x86 or amd64 system is required to build HVM support."
+ fi
+
+ if use qemu; then
+ elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
+ elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
+ elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
+ elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
+ fi
+}
diff --git a/app-emulation/xen-tools/xen-tools-4.6.0-r6.ebuild b/app-emulation/xen-tools/xen-tools-4.6.0-r6.ebuild
new file mode 100644
index 0000000000..b0c8b5fc82
--- /dev/null
+++ b/app-emulation/xen-tools/xen-tools-4.6.0-r6.ebuild
@@ -0,0 +1,469 @@
+# 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,xml,threads'
+
+inherit eutils bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs versionator
+
+MY_PV=${PV/_/-}
+MAJOR_V="$(get_version_component_range 1-2)"
+
+if [[ $PV == *9999 ]]; then
+ inherit git-r3
+ KEYWORDS=""
+ REPO="xen.git"
+ EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
+ S="${WORKDIR}/${REPO}"
+else
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+ UPSTREAM_VER=0
+ SECURITY_VER=7
+ # vars set to reflect https://dev.gentoo.org/~idella4/
+ # first instance of UPS_VER (usptream ver)
+ UPS_VER=0
+ SEC_VER=3
+ QEMU_VER=0
+ # xen-tools's gentoo patches tarball
+ GENTOO_VER=4
+ # xen-tools's gentoo patches version which apply to this specific ebuild
+ GENTOO_GPV=0
+ # xen-tools ovmf's patches
+ OVMF_VER=1
+
+ SEABIOS_VER=1.8.2
+ OVMF_PV=20150629
+
+ [[ -n ${UPSTREAM_VER} ]] && \
+ UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-upstream-patches-${UPS_VER}.tar.gz"
+ [[ -n ${SECURITY_VER} ]] && \
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-qemu-patches-${QEMU_VER}.tar.gz"
+ [[ -n ${GENTOO_VER} ]] && \
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ [[ -n ${OVMF_VER} ]] && \
+ OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
+
+ SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/xen-${MY_PV}.tar.gz
+ http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
+ https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
+ ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.bz2
+ ${OVMF_PATCHSET_URI} )
+ ${UPSTREAM_PATCHSET_URI}
+ ${SECURITY_PATCHSET_URI}
+ ${GENTOO_PATCHSET_URI}"
+
+ S="${WORKDIR}/xen-${MY_PV}"
+fi
+
+DESCRIPTION="Xen tools including QEMU and xl"
+HOMEPAGE="http://xen.org/"
+DOCS=( README docs/README.xen-bugtool )
+
+LICENSE="GPL-2"
+SLOT="0/${MAJOR_V}"
+# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
+# >=dev-lang/ocaml-4 stable
+# Masked in profiles/eapi-5-files instead
+IUSE="api custom-cflags debug doc flask hvm qemu ocaml ovmf +pam python pygrub screen sdl static-libs system-qemu system-seabios"
+
+REQUIRED_USE="hvm? ( || ( qemu system-qemu ) )
+ ${PYTHON_REQUIRED_USE}
+ pygrub? ( python )
+ ovmf? ( hvm )
+ qemu? ( !system-qemu )"
+
+COMMON_DEPEND="
+ dev-libs/lzo:2
+ dev-libs/glib:2
+ dev-libs/yajl
+ dev-libs/libaio
+ dev-libs/libgcrypt:0
+ sys-libs/zlib
+"
+
+DEPEND="${COMMON_DEPEND}
+ dev-python/lxml[${PYTHON_USEDEP}]
+ x86? ( sys-devel/dev86
+ sys-power/iasl )
+ pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
+ ${PYTHON_DEPS}
+ api? ( dev-libs/libxml2
+ net-misc/curl )
+ ovmf? ( $(python_gen_impl_dep sqlite) )
+ !amd64? ( >=sys-apps/dtc-1.4.0 )
+ amd64? ( sys-devel/bin86
+ system-seabios? ( sys-firmware/seabios )
+ sys-firmware/ipxe
+ sys-devel/dev86
+ sys-power/iasl )
+ dev-lang/perl
+ app-misc/pax-utils
+ doc? (
+ app-doc/doxygen
+ dev-python/markdown[${PYTHON_USEDEP}]
+ dev-tex/latex2html[png,gif]
+ media-gfx/graphviz
+ dev-tex/xcolor
+ media-gfx/transfig
+ dev-texlive/texlive-latexextra
+ virtual/latex-base
+ dev-tex/latexmk
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-pictures
+ dev-texlive/texlive-latexrecommended
+ )
+ hvm? ( x11-proto/xproto
+ !net-libs/libiscsi )
+ qemu? (
+ x11-libs/pixman
+ sdl? ( media-libs/libsdl[X] )
+ )
+ system-qemu? ( app-emulation/qemu[xen] )
+ ocaml? ( dev-ml/findlib
+ >=dev-lang/ocaml-4 )"
+
+RDEPEND="${COMMON_DEPEND}
+ sys-apps/iproute2[-minimal]
+ net-misc/bridge-utils
+ screen? (
+ app-misc/screen
+ app-admin/logrotate
+ )"
+
+# hvmloader is used to bootstrap a fully virtualized kernel
+# Approved by QA team in bug #144032
+QA_WX_LOAD="usr/lib/xen/boot/hvmloader
+ usr/share/qemu-xen/qemu/s390-ccw.img"
+
+RESTRICT="test"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ export "CONFIG_LOMOUNT=y"
+
+ #bug 522642, disable compile tools/tests
+ export "CONFIG_TESTS=n"
+
+ if has_version dev-libs/libgcrypt:0; then
+ export "CONFIG_GCRYPT=y"
+ fi
+
+ if [[ -z ${XEN_TARGET_ARCH} ]] ; then
+ if use x86 && use amd64; then
+ die "Confusion! Both x86 and amd64 are set in your use flags!"
+ elif use x86; then
+ export XEN_TARGET_ARCH="x86_32"
+ elif use amd64 ; then
+ export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
+ else
+ die "Unsupported architecture!"
+ fi
+ fi
+}
+
+src_prepare() {
+ # Upstream's patchset
+ if [[ -n ${UPSTREAM_VER} ]]; then
+ einfo "Try to apply Xen Upstream patch set"
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-upstream \
+ "${WORKDIR}"/libexec.patch
+ fi
+
+ # Security patchset
+ if [[ -n ${SECURITY_VER} ]]; then
+ einfo "Try to apply Xen Security patch set"
+ source "${WORKDIR}"/patches-security/${PV}.conf
+ # apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
+ for i in ${XEN_SECURITY_MAIN}; do
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
+ done
+
+ # apply qemu-traditional patches
+ pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
+ for i in ${XEN_SECURITY_QEMUT}; do
+ epatch "${WORKDIR}"/patches-security/qemut/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemut/xsa*.patch; do
+ epatch $i
+ done
+ popd > /dev/null
+
+ # apply qemu-xen/upstream patches
+ pushd "${S}"/tools/qemu-xen/ > /dev/null
+ for i in ${XEN_SECURITY_QEMUU}; do
+ epatch "${WORKDIR}"/patches-security/qemuu/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemuu/xsa*.patch; do
+ epatch $i
+ done
+ popd > /dev/null
+ fi
+
+ # move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
+ mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
+ pushd tools/firmware/ > /dev/null
+ ln -s seabios-dir-remote seabios-dir || die
+ popd > /dev/null
+
+ # Gentoo's patchset
+ if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
+ einfo "Try to apply Gentoo specific patch set"
+ source "${FILESDIR}"/gentoo-patches.conf
+ _gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
+ for i in ${!_gpv}; do
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}"/patches-gentoo/$i
+ done
+ fi
+
+ # Ovmf's patchset
+ if [[ -n ${OVMF_VER} ]] && use ovmf; then
+ einfo "Try to apply Ovmf patch set"
+ pushd "${WORKDIR}"/ovmf-*/ > /dev/null
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-ovmf
+ popd > /dev/null
+ mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
+ fi
+
+ mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
+
+ # Fix texi2html build error with new texi2html, qemu.doc.html
+ sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
+
+ use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
+ sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
+ -i tools/firmware/Makefile || die
+
+ # Drop .config, fixes to gcc-4.6
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
+ # if the user *really* wants to use their own custom-cflags, let them
+ if use custom-cflags; then
+ einfo "User wants their own CFLAGS - removing defaults"
+
+ # try and remove all the default cflags
+ find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
+ -exec sed \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
+ -i {} + || die "failed to re-set custom-cflags"
+ else
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+ unset CPPFLAGS
+ fi
+
+ if ! use pygrub; then
+ sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
+ fi
+
+ if ! use python; then
+ sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
+ fi
+
+ if ! use hvm; then
+ sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
+ # Bug 351648
+ elif ! use x86 && ! has x86 $(get_all_abis); then
+ mkdir -p "${WORKDIR}"/extra-headers/gnu || die
+ touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
+ export CPATH="${WORKDIR}"/extra-headers
+ fi
+
+ if use qemu; then
+ if use sdl; then
+ sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
+ tools/Makefile || die
+ else
+ sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
+ tools/qemu-xen-traditional/xen-setup || die
+ sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
+ tools/Makefile || die
+ fi
+ else
+ # Don't bother with qemu, only needed for fully virtualised guests
+ sed -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i Makefile || die
+ fi
+
+ # Reset bash completion dir; Bug 472438
+ sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
+ -i Config.mk || die
+ sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
+
+ # xencommons, Bug #492332, sed lighter weight than patching
+ sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
+ -i tools/hotplug/Linux/init.d/xencommons.in || die
+
+ # respect multilib, usr/lib/libcacard.so.0.0.0
+ sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
+ -i tools/qemu-xen/configure || die
+
+ #bug 518136, don't build 32bit exactuable for nomultilib profile
+ if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
+ sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
+ fi
+
+ # use /var instead of /var/lib, consistat with previous ebuild
+ sed -i -e "/XEN_LOCK_DIR=/s/\$localstatedir/\/var/g" \
+ m4/paths.m4 configure tools/configure || die
+ # use /run instead of /var/run
+ sed -i -e "/XEN_RUN_DIR=/s/\$localstatedir//g" \
+ m4/paths.m4 configure tools/configure || die
+
+ # uncomment lines in xl.conf
+ sed -e 's:^#autoballoon=:autoballoon=:' \
+ -e 's:^#lockfile=:lockfile=:' \
+ -e 's:^#vif.default.script=:vif.default.script=:' \
+ -i tools/examples/xl.conf || die
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf="--prefix=${PREFIX}/usr \
+ --libdir=${PREFIX}/usr/$(get_libdir) \
+ --libexecdir=${PREFIX}/usr/libexec \
+ --disable-werror \
+ --disable-xen \
+ --enable-tools \
+ --enable-docs \
+ $(use_with system-qemu) \
+ $(use_enable pam) \
+ $(use_enable api xenapi) \
+ $(use_enable ovmf) \
+ $(use_enable ocaml ocamltools) \
+ --with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
+ "
+
+ use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
+ use qemu || myconf+=" --with-system-qemu"
+ use amd64 && myconf+=" --enable-qemu-traditional"
+ econf ${myconf}
+}
+
+src_compile() {
+ export VARTEXFONTS="${T}/fonts"
+ local myopt
+ use debug && myopt="${myopt} debug=y"
+
+ if test-flag-CC -fno-strict-overflow; then
+ append-flags -fno-strict-overflow
+ fi
+
+ emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" -C tools ${myopt}
+
+ use doc && emake -C docs txt html
+ emake -C docs man-pages
+}
+
+src_install() {
+ # Override auto-detection in the build system, bug #382573
+ export INITD_DIR=/tmp/init.d
+ export CONFIG_LEAF_DIR=../tmp/default
+
+ # Let the build system compile installed Python modules.
+ local PYTHONDONTWRITEBYTECODE
+ export PYTHONDONTWRITEBYTECODE
+
+ emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
+ XEN_PYTHON_NATIVE_INSTALL=y install-tools
+
+ # Fix the remaining Python shebangs.
+ python_fix_shebang "${D}"
+
+ # Remove RedHat-specific stuff
+ rm -rf "${D}"tmp || die
+
+ if use doc; then
+ emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
+
+ dohtml -r docs/
+ docinto pdf
+ dodoc ${DOCS[@]}
+ [ -d "${D}"/usr/share/doc/xen ] && mv "${D}"/usr/share/doc/xen/* "${D}"/usr/share/doc/${PF}/html
+ fi
+
+ rm -rf "${D}"/usr/share/doc/xen/
+ doman docs/man?/*
+
+ newconfd "${FILESDIR}"/xendomains.confd xendomains
+ newconfd "${FILESDIR}"/xenstored.confd xenstored
+ newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
+ newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
+ newinitd "${FILESDIR}"/xenstored.initd xenstored
+ newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
+ newinitd "${FILESDIR}"/xencommons.initd xencommons
+ newconfd "${FILESDIR}"/xencommons.confd xencommons
+ newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
+ newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
+
+ if use screen; then
+ cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
+ cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
+ keepdir /var/log/xen-consoles
+ fi
+
+ # For -static-libs wrt Bug 384355
+ if ! use static-libs; then
+ rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
+ fi
+
+ # for xendomains
+ keepdir /etc/xen/auto
+
+ # Remove files failing QA AFTER emake installs them, avoiding seeking absent files
+ find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
+ -o -name openbios-ppc -o -name palcode-clipper \) -delete || die
+}
+
+pkg_postinst() {
+ elog "Official Xen Guide and the offical wiki page:"
+ elog "https://wiki.gentoo.org/wiki/Xen"
+ elog "http://wiki.xen.org/wiki/Main_Page"
+ elog ""
+ elog "Recommended to utilise the xencommons script to config sytem At boot"
+ elog "Add by use of rc-update on completion of the install"
+
+ if ! use hvm; then
+ echo
+ elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
+ elog "support enable the hvm use flag."
+ elog "An x86 or amd64 system is required to build HVM support."
+ fi
+
+ if use qemu; then
+ elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
+ elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
+ elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
+ elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
+ fi
+}
diff --git a/app-emulation/xen-tools/xen-tools-4.6.0-r7.ebuild b/app-emulation/xen-tools/xen-tools-4.6.0-r7.ebuild
new file mode 100644
index 0000000000..d4d83ffe55
--- /dev/null
+++ b/app-emulation/xen-tools/xen-tools-4.6.0-r7.ebuild
@@ -0,0 +1,469 @@
+# 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,xml,threads'
+
+inherit eutils bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs versionator
+
+MY_PV=${PV/_/-}
+MAJOR_V="$(get_version_component_range 1-2)"
+
+if [[ $PV == *9999 ]]; then
+ inherit git-r3
+ KEYWORDS=""
+ REPO="xen.git"
+ EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
+ S="${WORKDIR}/${REPO}"
+else
+ KEYWORDS="amd64 ~arm ~arm64 x86"
+ UPSTREAM_VER=0
+ SECURITY_VER=7
+ # vars set to reflect https://dev.gentoo.org/~idella4/
+ # first instance of UPS_VER (usptream ver)
+ UPS_VER=0
+ SEC_VER=5
+ QEMU_VER=0
+ # xen-tools's gentoo patches tarball
+ GENTOO_VER=4
+ # xen-tools's gentoo patches version which apply to this specific ebuild
+ GENTOO_GPV=0
+ # xen-tools ovmf's patches
+ OVMF_VER=1
+
+ SEABIOS_VER=1.8.2
+ OVMF_PV=20150629
+
+ [[ -n ${UPSTREAM_VER} ]] && \
+ UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-upstream-patches-${UPS_VER}.tar.gz"
+ [[ -n ${SECURITY_VER} ]] && \
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-qemu-patches-${QEMU_VER}.tar.gz"
+ [[ -n ${GENTOO_VER} ]] && \
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ [[ -n ${OVMF_VER} ]] && \
+ OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
+
+ SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/xen-${MY_PV}.tar.gz
+ http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
+ https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
+ ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.bz2
+ ${OVMF_PATCHSET_URI} )
+ ${UPSTREAM_PATCHSET_URI}
+ ${SECURITY_PATCHSET_URI}
+ ${GENTOO_PATCHSET_URI}"
+
+ S="${WORKDIR}/xen-${MY_PV}"
+fi
+
+DESCRIPTION="Xen tools including QEMU and xl"
+HOMEPAGE="http://xen.org/"
+DOCS=( README docs/README.xen-bugtool )
+
+LICENSE="GPL-2"
+SLOT="0/${MAJOR_V}"
+# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
+# >=dev-lang/ocaml-4 stable
+# Masked in profiles/eapi-5-files instead
+IUSE="api custom-cflags debug doc flask hvm qemu ocaml ovmf +pam python pygrub screen sdl static-libs system-qemu system-seabios"
+
+REQUIRED_USE="hvm? ( || ( qemu system-qemu ) )
+ ${PYTHON_REQUIRED_USE}
+ pygrub? ( python )
+ ovmf? ( hvm )
+ qemu? ( !system-qemu )"
+
+COMMON_DEPEND="
+ dev-libs/lzo:2
+ dev-libs/glib:2
+ dev-libs/yajl
+ dev-libs/libaio
+ dev-libs/libgcrypt:0
+ sys-libs/zlib
+"
+
+DEPEND="${COMMON_DEPEND}
+ dev-python/lxml[${PYTHON_USEDEP}]
+ x86? ( sys-devel/dev86
+ sys-power/iasl )
+ pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
+ ${PYTHON_DEPS}
+ api? ( dev-libs/libxml2
+ net-misc/curl )
+ ovmf? ( $(python_gen_impl_dep sqlite) )
+ !amd64? ( >=sys-apps/dtc-1.4.0 )
+ amd64? ( sys-devel/bin86
+ system-seabios? ( sys-firmware/seabios )
+ sys-firmware/ipxe
+ sys-devel/dev86
+ sys-power/iasl )
+ dev-lang/perl
+ app-misc/pax-utils
+ doc? (
+ app-doc/doxygen
+ dev-python/markdown[${PYTHON_USEDEP}]
+ dev-tex/latex2html[png,gif]
+ media-gfx/graphviz
+ dev-tex/xcolor
+ media-gfx/transfig
+ dev-texlive/texlive-latexextra
+ virtual/latex-base
+ dev-tex/latexmk
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-pictures
+ dev-texlive/texlive-latexrecommended
+ )
+ hvm? ( x11-proto/xproto
+ !net-libs/libiscsi )
+ qemu? (
+ x11-libs/pixman
+ sdl? ( media-libs/libsdl[X] )
+ )
+ system-qemu? ( app-emulation/qemu[xen] )
+ ocaml? ( dev-ml/findlib
+ >=dev-lang/ocaml-4 )"
+
+RDEPEND="${COMMON_DEPEND}
+ sys-apps/iproute2[-minimal]
+ net-misc/bridge-utils
+ screen? (
+ app-misc/screen
+ app-admin/logrotate
+ )"
+
+# hvmloader is used to bootstrap a fully virtualized kernel
+# Approved by QA team in bug #144032
+QA_WX_LOAD="usr/lib/xen/boot/hvmloader
+ usr/share/qemu-xen/qemu/s390-ccw.img"
+
+RESTRICT="test"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ export "CONFIG_LOMOUNT=y"
+
+ #bug 522642, disable compile tools/tests
+ export "CONFIG_TESTS=n"
+
+ if has_version dev-libs/libgcrypt:0; then
+ export "CONFIG_GCRYPT=y"
+ fi
+
+ if [[ -z ${XEN_TARGET_ARCH} ]] ; then
+ if use x86 && use amd64; then
+ die "Confusion! Both x86 and amd64 are set in your use flags!"
+ elif use x86; then
+ export XEN_TARGET_ARCH="x86_32"
+ elif use amd64 ; then
+ export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
+ else
+ die "Unsupported architecture!"
+ fi
+ fi
+}
+
+src_prepare() {
+ # Upstream's patchset
+ if [[ -n ${UPSTREAM_VER} ]]; then
+ einfo "Try to apply Xen Upstream patch set"
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-upstream \
+ "${WORKDIR}"/libexec.patch
+ fi
+
+ # Security patchset
+ if [[ -n ${SECURITY_VER} ]]; then
+ einfo "Try to apply Xen Security patch set"
+ source "${WORKDIR}"/patches-security/${PV}.conf
+ # apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
+ for i in ${XEN_SECURITY_MAIN}; do
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
+ done
+
+ # apply qemu-traditional patches
+ pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
+ for i in ${XEN_SECURITY_QEMUT}; do
+ epatch "${WORKDIR}"/patches-security/qemut/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemut/xsa*.patch; do
+ epatch $i
+ done
+ popd > /dev/null
+
+ # apply qemu-xen/upstream patches
+ pushd "${S}"/tools/qemu-xen/ > /dev/null
+ for i in ${XEN_SECURITY_QEMUU}; do
+ epatch "${WORKDIR}"/patches-security/qemuu/$i
+ done
+ for i in "${WORKDIR}"/qemu-patches/qemuu/xsa*.patch; do
+ epatch $i
+ done
+ popd > /dev/null
+ fi
+
+ # move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
+ mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
+ pushd tools/firmware/ > /dev/null
+ ln -s seabios-dir-remote seabios-dir || die
+ popd > /dev/null
+
+ # Gentoo's patchset
+ if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
+ einfo "Try to apply Gentoo specific patch set"
+ source "${FILESDIR}"/gentoo-patches.conf
+ _gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
+ for i in ${!_gpv}; do
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}"/patches-gentoo/$i
+ done
+ fi
+
+ # Ovmf's patchset
+ if [[ -n ${OVMF_VER} ]] && use ovmf; then
+ einfo "Try to apply Ovmf patch set"
+ pushd "${WORKDIR}"/ovmf-*/ > /dev/null
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-ovmf
+ popd > /dev/null
+ mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
+ fi
+
+ mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
+
+ # Fix texi2html build error with new texi2html, qemu.doc.html
+ sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
+
+ use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
+ sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
+ -i tools/firmware/Makefile || die
+
+ # Drop .config, fixes to gcc-4.6
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
+ # if the user *really* wants to use their own custom-cflags, let them
+ if use custom-cflags; then
+ einfo "User wants their own CFLAGS - removing defaults"
+
+ # try and remove all the default cflags
+ find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
+ -exec sed \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
+ -i {} + || die "failed to re-set custom-cflags"
+ else
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+ unset CPPFLAGS
+ fi
+
+ if ! use pygrub; then
+ sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
+ fi
+
+ if ! use python; then
+ sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
+ fi
+
+ if ! use hvm; then
+ sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
+ # Bug 351648
+ elif ! use x86 && ! has x86 $(get_all_abis); then
+ mkdir -p "${WORKDIR}"/extra-headers/gnu || die
+ touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
+ export CPATH="${WORKDIR}"/extra-headers
+ fi
+
+ if use qemu; then
+ if use sdl; then
+ sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
+ tools/Makefile || die
+ else
+ sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
+ tools/qemu-xen-traditional/xen-setup || die
+ sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
+ tools/Makefile || die
+ fi
+ else
+ # Don't bother with qemu, only needed for fully virtualised guests
+ sed -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i Makefile || die
+ fi
+
+ # Reset bash completion dir; Bug 472438
+ sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
+ -i Config.mk || die
+ sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
+
+ # xencommons, Bug #492332, sed lighter weight than patching
+ sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
+ -i tools/hotplug/Linux/init.d/xencommons.in || die
+
+ # respect multilib, usr/lib/libcacard.so.0.0.0
+ sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
+ -i tools/qemu-xen/configure || die
+
+ #bug 518136, don't build 32bit exactuable for nomultilib profile
+ if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
+ sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
+ fi
+
+ # use /var instead of /var/lib, consistat with previous ebuild
+ sed -i -e "/XEN_LOCK_DIR=/s/\$localstatedir/\/var/g" \
+ m4/paths.m4 configure tools/configure || die
+ # use /run instead of /var/run
+ sed -i -e "/XEN_RUN_DIR=/s/\$localstatedir//g" \
+ m4/paths.m4 configure tools/configure || die
+
+ # uncomment lines in xl.conf
+ sed -e 's:^#autoballoon=:autoballoon=:' \
+ -e 's:^#lockfile=:lockfile=:' \
+ -e 's:^#vif.default.script=:vif.default.script=:' \
+ -i tools/examples/xl.conf || die
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf="--prefix=${PREFIX}/usr \
+ --libdir=${PREFIX}/usr/$(get_libdir) \
+ --libexecdir=${PREFIX}/usr/libexec \
+ --disable-werror \
+ --disable-xen \
+ --enable-tools \
+ --enable-docs \
+ $(use_with system-qemu) \
+ $(use_enable pam) \
+ $(use_enable api xenapi) \
+ $(use_enable ovmf) \
+ $(use_enable ocaml ocamltools) \
+ --with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
+ "
+
+ use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
+ use qemu || myconf+=" --with-system-qemu"
+ use amd64 && myconf+=" --enable-qemu-traditional"
+ econf ${myconf}
+}
+
+src_compile() {
+ export VARTEXFONTS="${T}/fonts"
+ local myopt
+ use debug && myopt="${myopt} debug=y"
+
+ if test-flag-CC -fno-strict-overflow; then
+ append-flags -fno-strict-overflow
+ fi
+
+ emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" -C tools ${myopt}
+
+ use doc && emake -C docs txt html
+ emake -C docs man-pages
+}
+
+src_install() {
+ # Override auto-detection in the build system, bug #382573
+ export INITD_DIR=/tmp/init.d
+ export CONFIG_LEAF_DIR=../tmp/default
+
+ # Let the build system compile installed Python modules.
+ local PYTHONDONTWRITEBYTECODE
+ export PYTHONDONTWRITEBYTECODE
+
+ emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
+ XEN_PYTHON_NATIVE_INSTALL=y install-tools
+
+ # Fix the remaining Python shebangs.
+ python_fix_shebang "${D}"
+
+ # Remove RedHat-specific stuff
+ rm -rf "${D}"tmp || die
+
+ if use doc; then
+ emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
+
+ dohtml -r docs/
+ docinto pdf
+ dodoc ${DOCS[@]}
+ [ -d "${D}"/usr/share/doc/xen ] && mv "${D}"/usr/share/doc/xen/* "${D}"/usr/share/doc/${PF}/html
+ fi
+
+ rm -rf "${D}"/usr/share/doc/xen/
+ doman docs/man?/*
+
+ newconfd "${FILESDIR}"/xendomains.confd xendomains
+ newconfd "${FILESDIR}"/xenstored.confd xenstored
+ newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
+ newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
+ newinitd "${FILESDIR}"/xenstored.initd xenstored
+ newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
+ newinitd "${FILESDIR}"/xencommons.initd xencommons
+ newconfd "${FILESDIR}"/xencommons.confd xencommons
+ newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
+ newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
+
+ if use screen; then
+ cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
+ cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
+ keepdir /var/log/xen-consoles
+ fi
+
+ # For -static-libs wrt Bug 384355
+ if ! use static-libs; then
+ rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
+ fi
+
+ # for xendomains
+ keepdir /etc/xen/auto
+
+ # Remove files failing QA AFTER emake installs them, avoiding seeking absent files
+ find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
+ -o -name openbios-ppc -o -name palcode-clipper \) -delete || die
+}
+
+pkg_postinst() {
+ elog "Official Xen Guide and the offical wiki page:"
+ elog "https://wiki.gentoo.org/wiki/Xen"
+ elog "http://wiki.xen.org/wiki/Main_Page"
+ elog ""
+ elog "Recommended to utilise the xencommons script to config sytem At boot"
+ elog "Add by use of rc-update on completion of the install"
+
+ if ! use hvm; then
+ echo
+ elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
+ elog "support enable the hvm use flag."
+ elog "An x86 or amd64 system is required to build HVM support."
+ fi
+
+ if use qemu; then
+ elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
+ elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
+ elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
+ elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
+ fi
+}
diff --git a/app-emulation/xen/Manifest b/app-emulation/xen/Manifest
index 629a548eed..09a51fbac2 100644
--- a/app-emulation/xen/Manifest
+++ b/app-emulation/xen/Manifest
@@ -1,11 +1,10 @@
-DIST xen-4.2.5-upstream-patches-10.tar.xz 41428 SHA256 b29ce85b049420838c3386b67184f4ba56794846d056837fa780ae89a80b40d0 SHA512 9e8046e27506d864e2d69728897cbba3eea1dd5ca748a3febb722901c5a67cca2ab49bb420071292538bd0345023fa337eb2d176b9ca05ca6bce47562f6710ec WHIRLPOOL 29e534ef6b951cf220a3a9476d1f76ac344bfc5c74998f2b472ec83cbe4781746298272e3c1fe8661a838cbc7d734d2730de6a1e9985b8a60f40c98f54449e2a
-DIST xen-4.2.5-upstream-patches-9.tar.xz 23208 SHA256 2206e9a8aeeed207abbae995c5d2baa14d5f0da4120ae44f2de733ecf7ea5af1 SHA512 8a2edaba48002449a521edf2ae078ffe1b3db4f491a85b063886a147a0be3ec7fdb819ce84c90cdae80ed34c10ab2d637506700be10052a67be6ef128fa40fb1 WHIRLPOOL 037820e0fad60d1f7ed054efa797585c992d08f1ffd533705c515ad289f8cdddc72b97f2a3d75ebd683c6bb6988d7285452b4f3cebbe9a879f701156e387ff3b
-DIST xen-4.2.5.tar.gz 15671925 SHA256 3cf440866315e8085050eb0586f0447b6b47a08dbed6a72226bf5ed5d89ec567 SHA512 42c0fc241952fc55fc44480fb6752b004b54ae40e946159ec047adf229b65cbfbd810271d01b064ad8fdbddb73c640dcdcb6bc19f91e8968829889c129920dac WHIRLPOOL 762a91c0111892b33e6bd3e7f7714709b04697ad7c2b0919fef6cc9570a343a77fd5a2b82833e75dac9d12d4e41acdcf0743b0d593595910ddd326f5cd721368
-DIST xen-4.5.1.tar.gz 18410400 SHA256 668c11d4fca67ac44329e369f810356eacd37b28d28fb96e66aac77f3c5e1371 SHA512 9436243e26bc64bc836a179abdc3a6b1b6fa9d3f2170453092c18be71fa62e18cd4465a9154c0f28a7ac8d69d08361ba1defef240a51197f058c012c3855ba04 WHIRLPOOL 71d8559f86683dd9fb3eb09d3f602de227f281fbd3c8cc258bfdb67c425d9e7c4d21cb0284c123e4263262c1b821fea6d28109861ce60d627f6426d352808d99
DIST xen-4.5.2.tar.gz 18416220 SHA256 4c9e5dac4eea484974e9f76da2756c8e0973b4e884d28d37e955df9ebf00e7e8 SHA512 e0ce01a5356c254bfde48fae0b0e005c42c1615a7ccf4c1ba7dcf90784777b53995e9a9ae4575e3f19ef341014b34cb8c06e39d68be359f7fd69830501a144dd WHIRLPOOL b50ce28e58d8419915f7f85de7ab23128719fa07c54f28165c4ba864ffe57230230fa7cb61dd2ed7608b8bc178a072124aedc30c61a45fb8b745fc616715219b
DIST xen-4.6.0-upstream-patches-0.tar.xz 19280 SHA256 8ef2d139f86cb52d2208a17c974e5a85356183ee359ab4b91882067548806e0c SHA512 9fde8d9def1d75e50c10069af7f9fea4b5b6992b7089eb554e1e2a4c78dd080f2977128d0dd541eeb735b951e7d6614a07101f7703457e7743ac6b3be962cdfe WHIRLPOOL 861c7f150811912422f6f5eb77437744d1456740a43bef3dfd88a2e6d6836c0e8460b788ccd4f14a7144652d65a825c08aa984ec4240b2b1ac6d09237695d19d
DIST xen-4.6.0.tar.gz 19694350 SHA256 6fa1c2431df55aa5950d248e6093b8c8c0f11c357a0adbd348a2186478e80909 SHA512 b4b02f306ffea360f539dd8c231b2f58c00c3638fdb665cb659c7291b475b40f1075bc59d49a6144767729e57b8bc40a1cfd9030d61de2b8fa4ac97d43655c2b WHIRLPOOL d3f01183440ca1875b6e850bd116db0c382383433e50c0902d3268e9e36b39d184fc65e925bdb5363ef4ca7a232fee15b4749c89baf789137b8a8248565c75a8
DIST xen-security-patches-0.tar.xz 5944 SHA256 c0456793064185f0781668264a09a2412a25e2ff8c4ce0d332204e37b94d7e96 SHA512 de812e66563e608548b220aa00c8fd71973af748a00cea79959f46a5b6893a38248d2ea455026af43f47e3f5e566d08b5a6f3d18f22e940d75d2a2ca76cec3d3 WHIRLPOOL 3e18d32798bdfe584ee8d102963090b569ec3660fd5723d8c608091e5c7d935c1edced5e258d92bf51fe06975455a3ae33dfedd01702c6076aedf97ea61f2d1b
-DIST xen-security-patches-3.tar.xz 17028 SHA256 fb6301beb9a5c2d1e5d4de8783d8670e382b1bef48ec61e73d2d9be6901d289f SHA512 787fee8f7822577c6de91c4cf4d56d0e73ce46bac5524537ff66a718b6d7eae9d362265515743e8577b2c75f2841baed9837f71467b3b7b91a3111220da5f236 WHIRLPOOL 5c136289e654776bf918fe125fbecba7dac0929b236f7ae8158026a6bd6be12bc786a5ec96cb4022c18a5e7ffde82155deb57eb9639600e4c42c9c209f4a2ed6
-DIST xen-security-patches-7.tar.xz 22604 SHA256 e831c71f830316f452eb8645a5e7ca497264587aa8b353945fd9535f485166e3 SHA512 051769f4118f5c6d5d961759f547526d3fb0e86a4c1dee265a7f0224f10a88e2217b5b5fcf8dbfc706a1ec3c8d1632ab688d3f70dfd89d830261dc7391dd41c2 WHIRLPOOL 8e6dfb4e1700a07e3e3207b67afaddc5d6aa6fd84db9b3e76bd9ff54f682740fed01070e5860bb5378d50903d5777b55dff88eb3444d45bdd63dba657889393d
-DIST xen-security-patches.tar.gz 2105 SHA256 19409f15fdbfbfe41b86627dd929a362563610999fc4b73ab2a9165df0ba8182 SHA512 2733e77b6a9ba25e704e0a15a32a20efe7c74873cabc5e6490f41e8d1b96d9efa83c0d16bbda6169d4bab3f5e9e9a8d7f3400f63e6b2d11cf0c63711a858cc34 WHIRLPOOL 21dda4417d938c45bf46c41f2e9aba524f484b6526fcf59a840ca30aa270148990ffc66536431b2a4b8db6f1a761b02f2266b5935e68e85935ec8dd5511dc892
+DIST xen-security-patches-1.tar.gz 7040 SHA256 30733e9ca71bf4291ff212eb191afb22687ccd9b2579767fe0ee013152980c76 SHA512 89c72897f18a86c2060bb76a182e7cca72ad2f33a3aab964ecae66e057aeecafee2e9986204d6feb98f81ccb740460ee2cb37663b1ab79f47adc1dd73e0091bc WHIRLPOOL c27e612b87b4a30abbf59e6be019e2c21a78bfbdf1715da5498d95607d390d616251768d419ac5ce76087bbf7cdfc410dd0088ba48e425082cea971efcb64346
+DIST xen-security-patches-2.tar.gz 7370 SHA256 f24bf4b0cba29b51ee71f6ef82654cddf157c63d62fc1119f17255b2388e03ab SHA512 209dea670467ff1df18428c15b25229c05d676d1a2f646cddb221544ae888241ade48a22be037f97dce249ac322c1f30bb477675e5e2cc04a2fbd839e02f1f57 WHIRLPOOL ae66a2fbc0d0f0a555d407ebd3198fa58ee043515fb9821d7b9eda46d088bc87b3de16fe015fd1142294429dd2c1c7826e414a55980e27123185c1a86fb0a8a6
+DIST xen-security-patches-4.tar.gz 7731 SHA256 b51c6616a303b4d5123fed1e58240163c8e0cf8e0de32db58c11a40a48124d52 SHA512 cef89bb68bdb4a5f947d6be8ae7a799276fd187e396c5ba85f8aa2b0b5349ba606d3742d5b8d8212df6da38f8af9711416d9a25176e713240a0a7f2194d84fc5 WHIRLPOOL 912dc869fa4eb355a86023133adcb818e87f4979d537a885b3f1c6e35ff141b7d7a33e81105dcddf34aafa4c306df79a210346f5037337173923e1dc8280ac47
+DIST xen-security-patches-5.tar.gz 8716 SHA256 afd114f2cb1b623ac1709d75c771006f91b5b2a0a0695f4da3d6aa6f6b340d9f SHA512 f2276759cb418e252052701f5e41e626e1d232098bd7e393e7e58286d356ef33f249c2f9d7b5b1219279de7c4c66832f0d4f761d36bc51e7c10cea973dd9882e WHIRLPOOL 18cb29a0fde10f1bac698c577713db1307c02408778b5d128a4f017ae8be6fba893feb9b8f09fe2d8164dc761d136190d1dbee8a3eb4caa35d8bf976a498d405
+DIST xen-security-patches-6.tar.gz 8308 SHA256 b0dc1df6b27073a83b12a17a04a01e74af8c19a1c96d9dda580bb738eaab25f3 SHA512 b9155eef3f18e47288a6a6bb570a073d4c84449fe11fbac4c35cceaa4f7c06624597f63a8768bddd735c345b8c430aeee18b71f43e9b188de3cfa0cbf608dc0a WHIRLPOOL 9933ed07a2419170070a9eedfda200ec5ebef67b6b98c1b435793008c126347cdc8c0ef9ff2cb4fe0b7333ff51211545a3fe2ff726ca7c22d46f231d6d1e82aa
+DIST xen-upstream-patches-0.tar.gz 2297 SHA256 bf21272ad029391d30bf31896efcadc75267538f6c7de5d239453f19659d58ee SHA512 3f5d60aaebd181bddab4dd02e0064de2f75672f44a687a7331fa40e81d56763fea84504081a449d11403b21ad0ba2dac075f0b1796809ef8d16e244f6be99e3d WHIRLPOOL 4ebe79c8f2ea1c45e88e59941e477ed5639dbca3fe95c9a67e07afb0f4b6fb8b7fea8e58422d7c8f906299e4f37c14b4db15200997e5a92b647df98fa93e10c7
diff --git a/app-emulation/xen/metadata.xml b/app-emulation/xen/metadata.xml
index 67c5e0f5da..bdab928793 100644
--- a/app-emulation/xen/metadata.xml
+++ b/app-emulation/xen/metadata.xml
@@ -1,11 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>xen</herd>
+ <maintainer type="project">
+ <email>xen@gentoo.org</email>
+ <name>Gentoo Xen Project</name>
+ </maintainer>
<use>
- <flag name='flask'>Enable the Flask XSM module from NSA</flag>
- <flag name='pae'>Enable support for PAE kernels (usually x86-32 with >4GB memory)</flag>
- <flag name='xsm'>Enable the Xen Security Modules (XSM)</flag>
- <flag name='efi'>Adds efi boot support, requires LDFLAG -melf_x86_64 for amd64</flag>
+ <flag name="flask">Enable the Flask XSM module from NSA</flag>
+ <flag name="xsm">Enable the Xen Security Modules (XSM)</flag>
+ <flag name="efi">Adds efi boot support, requires LDFLAG -melf_x86_64 for amd64</flag>
</use>
</pkgmetadata>
diff --git a/app-emulation/xen/xen-4.2.5-r11.ebuild b/app-emulation/xen/xen-4.2.5-r11.ebuild
deleted file mode 100644
index ad795852c0..0000000000
--- a/app-emulation/xen/xen-4.2.5-r11.ebuild
+++ /dev/null
@@ -1,167 +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 )
-
-if [[ $PV == *9999 ]]; then
- KEYWORDS=""
- REPO="xen-unstable.hg"
- EHG_REPO_URI="http://xenbits.xensource.com/${REPO}"
- S="${WORKDIR}/${REPO}"
- live_eclass="mercurial"
-else
- KEYWORDS="amd64 x86"
- UPSTREAM_VER=9
- SECURITY_VER=3
- GENTOO_VER=
-
- [[ -n ${UPSTREAM_VER} ]] && \
- UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
- [[ -n ${SECURITY_VER} ]] && \
- SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
- [[ -n ${GENTOO_VER} ]] && \
- GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
- SRC_URI="http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
- ${UPSTREAM_PATCHSET_URI}
- ${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}"
-fi
-
-inherit mount-boot flag-o-matic python-any-r1 toolchain-funcs eutils ${live_eclass}
-
-DESCRIPTION="The Xen virtual machine monitor"
-HOMEPAGE="http://xen.org/"
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="custom-cflags debug efi flask pae xsm"
-
-DEPEND="${PYTHON_DEPS}
- efi? ( >=sys-devel/binutils-2.22[multitarget] )
- !efi? ( >=sys-devel/binutils-2.22[-multitarget] )"
-RDEPEND=""
-PDEPEND="~app-emulation/xen-tools-${PV}"
-
-RESTRICT="test"
-
-# Approved by QA team in bug #144032
-QA_WX_LOAD="boot/xen-syms-${PV}"
-
-REQUIRED_USE="
- flask? ( xsm )
- "
-
-pkg_setup() {
- python-any-r1_pkg_setup
- if [[ -z ${XEN_TARGET_ARCH} ]]; then
- if use x86 && use amd64; then
- die "Confusion! Both x86 and amd64 are set in your use flags!"
- elif use x86; then
- export XEN_TARGET_ARCH="x86_32"
- elif use amd64; then
- export XEN_TARGET_ARCH="x86_64"
- else
- die "Unsupported architecture!"
- fi
- fi
-
- if use flask ; then
- export "XSM_ENABLE=y"
- export "FLASK_ENABLE=y"
- elif use xsm ; then
- export "XSM_ENABLE=y"
- fi
-}
-
-src_prepare() {
- # Upstream's patchset
- if [[ -n ${UPSTREAM_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- EPATCH_OPTS="-p1" \
- epatch "${WORKDIR}"/patches-upstream
- fi
-
- # Security patchset
- if [[ -n ${SECURITY_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- EPATCH_OPTS="-p1" \
- epatch "${WORKDIR}/patches-security/${PV}"
- fi
-
- # Gentoo's patchset
- if [[ -n ${GENTOO_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-gentoo
- fi
-
- # Drop .config and fix gcc-4.6
- epatch "${FILESDIR}"/${PN/-pvgrub/}-4-fix_dotconfig-gcc.patch
-
- if use efi; then
- epatch "${FILESDIR}"/${PN}-4.2-efi.patch
- export EFI_VENDOR="gentoo"
- export EFI_MOUNTPOINT="boot"
- fi
-
- # if the user *really* wants to use their own custom-cflags, let them
- if use custom-cflags; then
- einfo "User wants their own CFLAGS - removing defaults"
- # try and remove all the default custom-cflags
- find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
- -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
- -i {} \; || die "failed to re-set custom-cflags"
- fi
-
- # not strictly necessary to fix this
- sed -i 's/, "-Werror"//' "${S}/tools/python/setup.py" || die "failed to re-set setup.py"
-
- epatch_user
-}
-
-src_configure() {
- use debug && myopt="${myopt} debug=y"
- use pae && myopt="${myopt} pae=y"
-
- if use custom-cflags; then
- filter-flags -fPIE -fstack-protector
- replace-flags -O3 -O2
- else
- unset CFLAGS
- fi
-}
-
-src_compile() {
- # Send raw LDFLAGS so that --as-needed works
- emake CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
-}
-
-src_install() {
- local myopt
- use debug && myopt="${myopt} debug=y"
- use pae && myopt="${myopt} pae=y"
-
- # The 'make install' doesn't 'mkdir -p' the subdirs
- if use efi; then
- mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
- fi
-
- emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
-}
-
-pkg_postinst() {
- elog "Official Xen Guide and the unoffical wiki page:"
- elog " https://wiki.gentoo.org/wiki/Xen"
- elog " http://en.gentoo-wiki.com/wiki/Xen/"
-
- use pae && ewarn "This is a PAE build of Xen. It will *only* boot PAE kernels!"
- use efi && einfo "The efi executable is installed in boot/efi/gentoo"
-}
diff --git a/app-emulation/xen/xen-4.2.5-r12.ebuild b/app-emulation/xen/xen-4.2.5-r12.ebuild
deleted file mode 100644
index dd72287ca4..0000000000
--- a/app-emulation/xen/xen-4.2.5-r12.ebuild
+++ /dev/null
@@ -1,170 +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 )
-
-if [[ $PV == *9999 ]]; then
- KEYWORDS=""
- REPO="xen-unstable.hg"
- EHG_REPO_URI="http://xenbits.xensource.com/${REPO}"
- S="${WORKDIR}/${REPO}"
- live_eclass="mercurial"
-else
- KEYWORDS="amd64 x86"
- UPSTREAM_VER=10
- SECURITY_VER=7
- GENTOO_VER=
-
- [[ -n ${UPSTREAM_VER} ]] && \
- UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
- [[ -n ${SECURITY_VER} ]] && \
- SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
- [[ -n ${GENTOO_VER} ]] && \
- GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
- SRC_URI="http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
- ${UPSTREAM_PATCHSET_URI}
- ${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}"
-fi
-
-inherit mount-boot flag-o-matic python-any-r1 toolchain-funcs eutils ${live_eclass}
-
-DESCRIPTION="The Xen virtual machine monitor"
-HOMEPAGE="http://xen.org/"
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="custom-cflags debug efi flask pae xsm"
-
-DEPEND="${PYTHON_DEPS}
- efi? ( >=sys-devel/binutils-2.22[multitarget] )
- !efi? ( >=sys-devel/binutils-2.22[-multitarget] )"
-RDEPEND=""
-PDEPEND="~app-emulation/xen-tools-${PV}"
-
-RESTRICT="test"
-
-# Approved by QA team in bug #144032
-QA_WX_LOAD="boot/xen-syms-${PV}"
-
-REQUIRED_USE="
- flask? ( xsm )
- "
-
-pkg_setup() {
- python-any-r1_pkg_setup
- if [[ -z ${XEN_TARGET_ARCH} ]]; then
- if use x86 && use amd64; then
- die "Confusion! Both x86 and amd64 are set in your use flags!"
- elif use x86; then
- export XEN_TARGET_ARCH="x86_32"
- elif use amd64; then
- export XEN_TARGET_ARCH="x86_64"
- else
- die "Unsupported architecture!"
- fi
- fi
-
- if use flask ; then
- export "XSM_ENABLE=y"
- export "FLASK_ENABLE=y"
- elif use xsm ; then
- export "XSM_ENABLE=y"
- fi
-}
-
-src_prepare() {
- # Upstream's patchset
- if [[ -n ${UPSTREAM_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- EPATCH_OPTS="-p1" \
- epatch "${WORKDIR}"/patches-upstream
- fi
-
- if [[ -n ${SECURITY_VER} ]]; then
- einfo "Try to apply Xen Security patcheset"
- source "${WORKDIR}"/patches-security/${PV}.conf
- # apply main xen patches
- for i in ${XEN_SECURITY_MAIN}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/xen/$i
- done
- fi
-
- # Gentoo's patchset
- if [[ -n ${GENTOO_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-gentoo
- fi
-
- # Drop .config and fix gcc-4.6
- epatch "${FILESDIR}"/${PN/-pvgrub/}-4-fix_dotconfig-gcc.patch
-
- if use efi; then
- epatch "${FILESDIR}"/${PN}-4.2-efi.patch
- export EFI_VENDOR="gentoo"
- export EFI_MOUNTPOINT="boot"
- fi
-
- # if the user *really* wants to use their own custom-cflags, let them
- if use custom-cflags; then
- einfo "User wants their own CFLAGS - removing defaults"
- # try and remove all the default custom-cflags
- find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
- -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
- -i {} \; || die "failed to re-set custom-cflags"
- fi
-
- # not strictly necessary to fix this
- sed -i 's/, "-Werror"//' "${S}/tools/python/setup.py" || die "failed to re-set setup.py"
-
- epatch_user
-}
-
-src_configure() {
- use debug && myopt="${myopt} debug=y"
- use pae && myopt="${myopt} pae=y"
-
- if use custom-cflags; then
- filter-flags -fPIE -fstack-protector
- replace-flags -O3 -O2
- else
- unset CFLAGS
- fi
-}
-
-src_compile() {
- # Send raw LDFLAGS so that --as-needed works
- emake CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
-}
-
-src_install() {
- local myopt
- use debug && myopt="${myopt} debug=y"
- use pae && myopt="${myopt} pae=y"
-
- # The 'make install' doesn't 'mkdir -p' the subdirs
- if use efi; then
- mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
- fi
-
- emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
-}
-
-pkg_postinst() {
- elog "Official Xen Guide and the unoffical wiki page:"
- elog " https://wiki.gentoo.org/wiki/Xen"
- elog " http://en.gentoo-wiki.com/wiki/Xen/"
-
- use pae && ewarn "This is a PAE build of Xen. It will *only* boot PAE kernels!"
- use efi && einfo "The efi executable is installed in boot/efi/gentoo"
-}
diff --git a/app-emulation/xen/xen-4.5.1.ebuild b/app-emulation/xen/xen-4.5.1.ebuild
deleted file mode 100644
index 16d7962af5..0000000000
--- a/app-emulation/xen/xen-4.5.1.ebuild
+++ /dev/null
@@ -1,176 +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 )
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${PV/_/-}
-
-if [[ $PV == *9999 ]]; then
- KEYWORDS=""
- EGIT_REPO_URI="git://xenbits.xen.org/${PN}.git"
- live_eclass="git-2"
-else
- KEYWORDS="amd64 ~arm ~arm64 -x86"
- UPSTREAM_VER=
- SECURITY_VER=
- GENTOO_VER=
-
- [[ -n ${UPSTREAM_VER} ]] && \
- UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
- [[ -n ${SECURITY_VER} ]] && \
- SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
- [[ -n ${GENTOO_VER} ]] && \
- GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
- SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
- ${UPSTREAM_PATCHSET_URI}
- ${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}"
-
-fi
-
-inherit mount-boot flag-o-matic python-any-r1 toolchain-funcs eutils ${live_eclass}
-
-DESCRIPTION="The Xen virtual machine monitor"
-HOMEPAGE="http://xen.org/"
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="custom-cflags debug efi flask xsm"
-
-DEPEND="${PYTHON_DEPS}
- efi? ( >=sys-devel/binutils-2.22[multitarget] )
- !efi? ( >=sys-devel/binutils-2.22[-multitarget] )"
-RDEPEND=""
-PDEPEND="~app-emulation/xen-tools-${PV}"
-
-RESTRICT="test"
-
-# Approved by QA team in bug #144032
-QA_WX_LOAD="boot/xen-syms-${PV}"
-
-REQUIRED_USE="flask? ( xsm )
- arm? ( debug )"
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_setup() {
- python-any-r1_pkg_setup
- if [[ -z ${XEN_TARGET_ARCH} ]]; then
- if use x86 && use amd64; then
- die "Confusion! Both x86 and amd64 are set in your use flags!"
- elif use x86; then
- export XEN_TARGET_ARCH="x86_32"
- elif use amd64; then
- export XEN_TARGET_ARCH="x86_64"
- elif use arm; then
- export XEN_TARGET_ARCH="arm32"
- elif use arm64; then
- export XEN_TARGET_ARCH="arm64"
- else
- die "Unsupported architecture!"
- fi
- fi
-
- if use flask ; then
- export "XSM_ENABLE=y"
- export "FLASK_ENABLE=y"
- elif use xsm ; then
- export "XSM_ENABLE=y"
- fi
-}
-
-src_prepare() {
- # Upstream's patchset
- if [[ -n ${UPSTREAM_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- EPATCH_OPTS="-p1" \
- epatch "${WORKDIR}"/patches-upstream
- fi
-
- # Security patchset
- if [[ -n ${SECURITY_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- EPATCH_OPTS="-p1" \
- epatch "${WORKDIR}/patches-security/${PV}"
- fi
-
- # Gentoo's patchset
- if [[ -n ${GENTOO_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-gentoo
- fi
-
- # Drop .config
- sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
-
- if use efi; then
- epatch "${FILESDIR}"/${PN}-4.5-efi.patch
- export EFI_VENDOR="gentoo"
- export EFI_MOUNTPOINT="boot"
- fi
-
- # if the user *really* wants to use their own custom-cflags, let them
- if use custom-cflags; then
- einfo "User wants their own CFLAGS - removing defaults"
- # try and remove all the default custom-cflags
- find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
- -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
- -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
- -i {} \; || die "failed to re-set custom-cflags"
- fi
-
- # remove -Werror for gcc-4.6's sake
- find "${S}" -name 'Makefile*' -o -name '*.mk' -o -name 'common.make' | \
- xargs sed -i 's/ *-Werror */ /'
- # not strictly necessary to fix this
- sed -i 's/, "-Werror"//' "${S}/tools/python/setup.py" || die "failed to re-set setup.py"
-
- epatch_user
-}
-
-src_configure() {
- use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
-
- use debug && myopt="${myopt} debug=y"
-
- if use custom-cflags; then
- filter-flags -fPIE -fstack-protector
- replace-flags -O3 -O2
- else
- unset CFLAGS
- fi
-}
-
-src_compile() {
- # Send raw LDFLAGS so that --as-needed works
- emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
-}
-
-src_install() {
- local myopt
- use debug && myopt="${myopt} debug=y"
-
- # The 'make install' doesn't 'mkdir -p' the subdirs
- if use efi; then
- mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
- fi
-
- emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
-}
-
-pkg_postinst() {
- elog "Official Xen Guide and the unoffical wiki page:"
- elog " https://wiki.gentoo.org/wiki/Xen"
- elog " http://en.gentoo-wiki.com/wiki/Xen/"
-
- use efi && einfo "The efi executable is installed in boot/efi/gentoo"
-}
diff --git a/app-emulation/xen/xen-4.5.2-r1.ebuild b/app-emulation/xen/xen-4.5.2-r2.ebuild
index 4c013352c4..d703dcf280 100644
--- a/app-emulation/xen/xen-4.5.2-r1.ebuild
+++ b/app-emulation/xen/xen-4.5.2-r2.ebuild
@@ -17,6 +17,7 @@ else
KEYWORDS="amd64 ~arm ~arm64 -x86"
UPSTREAM_VER=
SECURITY_VER=0
+ SEC_VER=1
GENTOO_VER=
[[ -n ${UPSTREAM_VER} ]] && \
@@ -29,7 +30,7 @@ else
${UPSTREAM_PATCHSET_URI}
${SECURITY_PATCHSET_URI}
${GENTOO_PATCHSET_URI}
- https://dev.gentoo.org/~idella4/distfiles/${PN}-security-patches.tar.gz"
+ https://dev.gentoo.org/~idella4/distfiles/xen-security-patches-${SEC_VER}.tar.gz"
fi
@@ -94,15 +95,18 @@ src_prepare() {
if [[ -n ${SECURITY_VER} ]]; then
einfo "Try to apply Xen Security patcheset"
- source "${WORKDIR}"/patches-security/${PV}.conf
# apply main xen patches
+ # Add patches from tarball in devspace ~idella4 to those from ~dlan
+ mkdir "${WORKDIR}"/patches-security/xen || die
+ mv "${WORKDIR}"/{xsa156-4.5.patch,xsa15[8-9].patch,xsa160-4.6.patch} \
+ "${WORKDIR}"/patches-security/xen || die
+ XEN_SECURITY_MAIN="xsa156-4.5.patch xsa15[8-9].patch xsa160-4.6.patch"
for i in ${XEN_SECURITY_MAIN}; do
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
epatch "${WORKDIR}"/patches-security/xen/$i
done
fi
- epatch "${WORKDIR}"/xsa156-4.5.patch
# Gentoo's patchset
if [[ -n ${GENTOO_VER} ]]; then
@@ -173,9 +177,14 @@ src_install() {
}
pkg_postinst() {
+ local msg="INSTALL_MASK=/boot/xen-syms"
elog "Official Xen Guide and the unoffical wiki page:"
elog " https://wiki.gentoo.org/wiki/Xen"
elog " http://en.gentoo-wiki.com/wiki/Xen/"
use efi && einfo "The efi executable is installed in boot/efi/gentoo"
+
+ elog "You can optionally block the installation of /boot/xen-syms by an entry"
+ elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
+ elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
}
diff --git a/app-emulation/xen/xen-4.5.2.ebuild b/app-emulation/xen/xen-4.5.2-r3.ebuild
index a905fa97be..d76cc3dbf4 100644
--- a/app-emulation/xen/xen-4.5.2.ebuild
+++ b/app-emulation/xen/xen-4.5.2-r3.ebuild
@@ -6,23 +6,29 @@ EAPI=5
PYTHON_COMPAT=( python2_7 )
+inherit eutils multilib mount-boot flag-o-matic python-any-r1 toolchain-funcs
+
MY_PV=${PV/_/-}
MY_P=${PN}-${PV/_/-}
if [[ $PV == *9999 ]]; then
+ inherit git-r3
KEYWORDS=""
EGIT_REPO_URI="git://xenbits.xen.org/${PN}.git"
- live_eclass="git-2"
+ SRC_URI=""
else
KEYWORDS="amd64 ~arm ~arm64 -x86"
UPSTREAM_VER=
- SECURITY_VER=
+ SECURITY_VER=0
+ # var set to reflect https://dev.gentoo.org/~idella4/
+ SEC_VER=2
GENTOO_VER=
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
[[ -n ${SECURITY_VER} ]] && \
- SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
@@ -32,8 +38,6 @@ else
fi
-inherit mount-boot flag-o-matic python-any-r1 toolchain-funcs eutils ${live_eclass}
-
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="http://xen.org/"
LICENSE="GPL-2"
@@ -93,12 +97,17 @@ src_prepare() {
if [[ -n ${SECURITY_VER} ]]; then
einfo "Try to apply Xen Security patcheset"
- source "${WORKDIR}"/patches-security/${PV}.conf
# apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
for i in ${XEN_SECURITY_MAIN}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/xen/$i
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
done
fi
@@ -176,4 +185,8 @@ pkg_postinst() {
elog " http://en.gentoo-wiki.com/wiki/Xen/"
use efi && einfo "The efi executable is installed in boot/efi/gentoo"
+
+ elog "You can optionally block the installation of /boot/xen-syms by an entry"
+ elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
+ elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
}
diff --git a/app-emulation/xen/xen-4.6.0-r1.ebuild b/app-emulation/xen/xen-4.5.2-r4.ebuild
index 960df2a839..659c2909bc 100644
--- a/app-emulation/xen/xen-4.6.0-r1.ebuild
+++ b/app-emulation/xen/xen-4.5.2-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -6,23 +6,29 @@ EAPI=5
PYTHON_COMPAT=( python2_7 )
+inherit eutils multilib mount-boot flag-o-matic python-any-r1 toolchain-funcs
+
MY_PV=${PV/_/-}
MY_P=${PN}-${PV/_/-}
if [[ $PV == *9999 ]]; then
+ inherit git-r3
KEYWORDS=""
EGIT_REPO_URI="git://xenbits.xen.org/${PN}.git"
- live_eclass="git-2"
+ SRC_URI=""
else
- KEYWORDS="~amd64 ~arm ~arm64 -x86"
- UPSTREAM_VER=0
- SECURITY_VER=
+ KEYWORDS="amd64 ~arm ~arm64 -x86"
+ UPSTREAM_VER=
+ SECURITY_VER=0
+ # var set to reflect https://dev.gentoo.org/~idella4/
+ SEC_VER=6
GENTOO_VER=
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
[[ -n ${SECURITY_VER} ]] && \
- SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
@@ -32,8 +38,6 @@ else
fi
-inherit mount-boot flag-o-matic python-any-r1 toolchain-funcs eutils ${live_eclass}
-
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="http://xen.org/"
LICENSE="GPL-2"
@@ -93,12 +97,17 @@ src_prepare() {
if [[ -n ${SECURITY_VER} ]]; then
einfo "Try to apply Xen Security patcheset"
- source "${WORKDIR}"/patches-security/${PV}.conf
# apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
for i in ${XEN_SECURITY_MAIN}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/xen/$i
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
done
fi
@@ -109,12 +118,11 @@ src_prepare() {
epatch "${WORKDIR}"/patches-gentoo
fi
- epatch "${FILESDIR}"/${PN}-4.6-efi.patch
-
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
+ epatch "${FILESDIR}"/${PN}-4.5-efi.patch
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="boot"
fi
@@ -177,4 +185,8 @@ pkg_postinst() {
elog " http://en.gentoo-wiki.com/wiki/Xen/"
use efi && einfo "The efi executable is installed in boot/efi/gentoo"
+
+ elog "You can optionally block the installation of /boot/xen-syms by an entry"
+ elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
+ elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
}
diff --git a/app-emulation/xen/xen-4.6.0-r2.ebuild b/app-emulation/xen/xen-4.6.0-r5.ebuild
index d6344ca8cf..f4d07387fe 100644
--- a/app-emulation/xen/xen-4.6.0-r2.ebuild
+++ b/app-emulation/xen/xen-4.6.0-r5.ebuild
@@ -6,44 +6,46 @@ EAPI=5
PYTHON_COMPAT=( python2_7 )
+inherit eutils multilib mount-boot flag-o-matic python-any-r1 toolchain-funcs
+
MY_PV=${PV/_/-}
MY_P=${PN}-${PV/_/-}
if [[ $PV == *9999 ]]; then
+ inherit git-r3
KEYWORDS=""
- EGIT_REPO_URI="git://xenbits.xen.org/${PN}.git"
- live_eclass="git-2"
+ EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
+ SRC_URI=""
else
- KEYWORDS="~amd64 ~arm ~arm64 -x86"
+ KEYWORDS="amd64 ~arm ~arm64 -x86"
UPSTREAM_VER=0
- SECURITY_VER=
+ SECURITY_VER=0
+ # var set to reflect https://dev.gentoo.org/~idella4/
+ SEC_VER=4
GENTOO_VER=
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
[[ -n ${SECURITY_VER} ]] && \
- SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
${UPSTREAM_PATCHSET_URI}
${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}
- https://dev.gentoo.org/~idella4/distfiles/${PN}-security-patches.tar.gz"
-
+ ${GENTOO_PATCHSET_URI}"
fi
-inherit mount-boot flag-o-matic python-any-r1 toolchain-funcs eutils ${live_eclass}
-
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="http://xen.org/"
LICENSE="GPL-2"
SLOT="0"
-IUSE="custom-cflags debug efi flask xsm"
+IUSE="custom-cflags debug efi flask"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
- !efi? ( >=sys-devel/binutils-2.22[-multitarget] )"
+ !efi? ( >=sys-devel/binutils-2.22 )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
@@ -52,19 +54,14 @@ RESTRICT="test"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
-REQUIRED_USE="flask? ( xsm )
- arm? ( debug )"
+REQUIRED_USE="arm? ( debug )"
S="${WORKDIR}/${MY_P}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
- if use x86 && use amd64; then
- die "Confusion! Both x86 and amd64 are set in your use flags!"
- elif use x86; then
- export XEN_TARGET_ARCH="x86_32"
- elif use amd64; then
+ if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
@@ -78,8 +75,6 @@ pkg_setup() {
if use flask ; then
export "XSM_ENABLE=y"
export "FLASK_ENABLE=y"
- elif use xsm ; then
- export "XSM_ENABLE=y"
fi
}
@@ -94,15 +89,19 @@ src_prepare() {
if [[ -n ${SECURITY_VER} ]]; then
einfo "Try to apply Xen Security patcheset"
- source "${WORKDIR}"/patches-security/${PV}.conf
# apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
for i in ${XEN_SECURITY_MAIN}; do
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-security/xen/$i
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
done
fi
- epatch "${WORKDIR}"/xsa156.patch
# Gentoo's patchset
if [[ -n ${GENTOO_VER} ]]; then
@@ -153,6 +152,8 @@ src_configure() {
replace-flags -O3 -O2
else
unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
fi
}
@@ -171,6 +172,9 @@ src_install() {
fi
emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
+
+ # make install likes to throw in some extra EFI bits if it built
+ use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}
pkg_postinst() {
@@ -179,4 +183,8 @@ pkg_postinst() {
elog " http://en.gentoo-wiki.com/wiki/Xen/"
use efi && einfo "The efi executable is installed in boot/efi/gentoo"
+
+ elog "You can optionally block the installation of /boot/xen-syms by an entry"
+ elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
+ elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
}
diff --git a/app-emulation/xen/xen-4.6.0-r6.ebuild b/app-emulation/xen/xen-4.6.0-r6.ebuild
new file mode 100644
index 0000000000..557fe40b34
--- /dev/null
+++ b/app-emulation/xen/xen-4.6.0-r6.ebuild
@@ -0,0 +1,193 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils multilib mount-boot flag-o-matic python-any-r1 toolchain-funcs
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${PV/_/-}
+
+if [[ $PV == *9999 ]]; then
+ inherit git-r3
+ KEYWORDS=""
+ EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
+ SRC_URI=""
+else
+ KEYWORDS="~amd64 ~arm ~arm64 -x86"
+ UPSTREAM_VER=0
+ SECURITY_VER=0
+ # var set to reflect https://dev.gentoo.org/~idella4/
+ SEC_VER=4
+ GENTOO_VER=
+
+ [[ -n ${UPSTREAM_VER} ]] && \
+ UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
+ [[ -n ${SECURITY_VER} ]] && \
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz"
+ [[ -n ${GENTOO_VER} ]] && \
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
+ ${UPSTREAM_PATCHSET_URI}
+ ${SECURITY_PATCHSET_URI}
+ ${GENTOO_PATCHSET_URI}"
+fi
+
+DESCRIPTION="The Xen virtual machine monitor"
+HOMEPAGE="http://xen.org/"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="custom-cflags debug efi flask"
+
+DEPEND="${PYTHON_DEPS}
+ efi? ( >=sys-devel/binutils-2.22[multitarget] )
+ !efi? ( >=sys-devel/binutils-2.22 )"
+RDEPEND=""
+PDEPEND="~app-emulation/xen-tools-${PV}"
+
+# no tests are available for the hypervisor
+# prevent the silliness of /usr/lib/debug/usr/lib/debug files
+# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
+RESTRICT="test splitdebug strip"
+
+# Approved by QA team in bug #144032
+QA_WX_LOAD="boot/xen-syms-${PV}"
+
+REQUIRED_USE="arm? ( debug )"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ if [[ -z ${XEN_TARGET_ARCH} ]]; then
+ if use amd64; then
+ export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
+ else
+ die "Unsupported architecture!"
+ fi
+ fi
+
+ if use flask ; then
+ export "XSM_ENABLE=y"
+ export "FLASK_ENABLE=y"
+ fi
+}
+
+src_prepare() {
+ # Upstream's patchset
+ if [[ -n ${UPSTREAM_VER} ]]; then
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-upstream
+ fi
+
+ if [[ -n ${SECURITY_VER} ]]; then
+ einfo "Try to apply Xen Security patcheset"
+ # apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
+ for i in ${XEN_SECURITY_MAIN}; do
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
+ done
+ fi
+
+ # Gentoo's patchset
+ if [[ -n ${GENTOO_VER} ]]; then
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}"/patches-gentoo
+ fi
+
+ epatch "${FILESDIR}"/${PN}-4.6-efi.patch
+
+ # Drop .config
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
+ if use efi; then
+ export EFI_VENDOR="gentoo"
+ export EFI_MOUNTPOINT="boot"
+ fi
+
+ # if the user *really* wants to use their own custom-cflags, let them
+ if use custom-cflags; then
+ einfo "User wants their own CFLAGS - removing defaults"
+ # try and remove all the default custom-cflags
+ find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
+ -i {} \; || die "failed to re-set custom-cflags"
+ fi
+
+ # remove -Werror for gcc-4.6's sake
+ find "${S}" -name 'Makefile*' -o -name '*.mk' -o -name 'common.make' | \
+ xargs sed -i 's/ *-Werror */ /'
+ # not strictly necessary to fix this
+ sed -i 's/, "-Werror"//' "${S}/tools/python/setup.py" || die "failed to re-set setup.py"
+
+ epatch_user
+}
+
+src_configure() {
+ use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
+
+ use debug && myopt="${myopt} debug=y"
+
+ if use custom-cflags; then
+ filter-flags -fPIE -fstack-protector
+ replace-flags -O3 -O2
+ else
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+ fi
+}
+
+src_compile() {
+ # Send raw LDFLAGS so that --as-needed works
+ emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
+}
+
+src_install() {
+ local myopt
+ use debug && myopt="${myopt} debug=y"
+
+ # The 'make install' doesn't 'mkdir -p' the subdirs
+ if use efi; then
+ mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
+ fi
+
+ emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
+
+ # make install likes to throw in some extra EFI bits if it built
+ use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
+}
+
+pkg_postinst() {
+ elog "Official Xen Guide and the unoffical wiki page:"
+ elog " https://wiki.gentoo.org/wiki/Xen"
+ elog " http://en.gentoo-wiki.com/wiki/Xen/"
+
+ use efi && einfo "The efi executable is installed in boot/efi/gentoo"
+
+ elog "You can optionally block the installation of /boot/xen-syms by an entry"
+ elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
+ elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
+}
diff --git a/app-emulation/xen/xen-4.6.0-r7.ebuild b/app-emulation/xen/xen-4.6.0-r7.ebuild
new file mode 100644
index 0000000000..c9b19e3fd9
--- /dev/null
+++ b/app-emulation/xen/xen-4.6.0-r7.ebuild
@@ -0,0 +1,197 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils multilib mount-boot flag-o-matic python-any-r1 toolchain-funcs
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${PV/_/-}
+
+if [[ $PV == *9999 ]]; then
+ inherit git-r3
+ KEYWORDS=""
+ EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
+ SRC_URI=""
+else
+ KEYWORDS="~amd64 ~arm ~arm64 -x86"
+ UPSTREAM_VER=0
+ SECURITY_VER=0
+ # var set to reflect https://dev.gentoo.org/~idella4/
+ # first instance of UPS_VER (usptream ver)
+ UPS_VER=0
+ SEC_VER=4
+ GENTOO_VER=
+
+ [[ -n ${UPSTREAM_VER} ]] && \
+ UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN}-upstream-patches-${UPS_VER}.tar.gz"
+ [[ -n ${SECURITY_VER} ]] && \
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SEC_VER}.tar.gz"
+ [[ -n ${GENTOO_VER} ]] && \
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
+ ${UPSTREAM_PATCHSET_URI}
+ ${SECURITY_PATCHSET_URI}
+ ${GENTOO_PATCHSET_URI}"
+fi
+
+DESCRIPTION="The Xen virtual machine monitor"
+HOMEPAGE="http://xen.org/"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="custom-cflags debug efi flask"
+
+DEPEND="${PYTHON_DEPS}
+ efi? ( >=sys-devel/binutils-2.22[multitarget] )
+ !efi? ( >=sys-devel/binutils-2.22 )"
+RDEPEND=""
+PDEPEND="~app-emulation/xen-tools-${PV}"
+
+# no tests are available for the hypervisor
+# prevent the silliness of /usr/lib/debug/usr/lib/debug files
+# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
+RESTRICT="test splitdebug strip"
+
+# Approved by QA team in bug #144032
+QA_WX_LOAD="boot/xen-syms-${PV}"
+
+REQUIRED_USE="arm? ( debug )"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ if [[ -z ${XEN_TARGET_ARCH} ]]; then
+ if use amd64; then
+ export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
+ else
+ die "Unsupported architecture!"
+ fi
+ fi
+
+ if use flask ; then
+ export "XSM_ENABLE=y"
+ export "FLASK_ENABLE=y"
+ fi
+}
+
+src_prepare() {
+ # Upstream's patchset
+ if [[ -n ${UPSTREAM_VER} ]]; then
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-upstream \
+ "${WORKDIR}"/libexec.patch
+ fi
+
+ if [[ -n ${SECURITY_VER} ]]; then
+ einfo "Try to apply Xen Security patcheset"
+ # apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
+ for i in ${XEN_SECURITY_MAIN}; do
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
+ done
+ fi
+
+ # Gentoo's patchset
+ if [[ -n ${GENTOO_VER} ]]; then
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}"/patches-gentoo
+ fi
+
+ epatch "${FILESDIR}"/${PN}-4.6-efi.patch
+
+ # Drop .config
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
+ if use efi; then
+ export EFI_VENDOR="gentoo"
+ export EFI_MOUNTPOINT="boot"
+ fi
+
+ # if the user *really* wants to use their own custom-cflags, let them
+ if use custom-cflags; then
+ einfo "User wants their own CFLAGS - removing defaults"
+ # try and remove all the default custom-cflags
+ find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
+ -i {} \; || die "failed to re-set custom-cflags"
+ fi
+
+ # remove -Werror for gcc-4.6's sake
+ find "${S}" -name 'Makefile*' -o -name '*.mk' -o -name 'common.make' | \
+ xargs sed -i 's/ *-Werror */ /'
+ # not strictly necessary to fix this
+ sed -i 's/, "-Werror"//' "${S}/tools/python/setup.py" || die "failed to re-set setup.py"
+
+ epatch_user
+}
+
+src_configure() {
+ use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
+
+ use debug && myopt="${myopt} debug=y"
+
+ if use custom-cflags; then
+ filter-flags -fPIE -fstack-protector
+ replace-flags -O3 -O2
+ else
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+ fi
+}
+
+src_compile() {
+ # Send raw LDFLAGS so that --as-needed works
+ emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
+}
+
+src_install() {
+ local myopt
+ use debug && myopt="${myopt} debug=y"
+
+ # The 'make install' doesn't 'mkdir -p' the subdirs
+ if use efi; then
+ mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
+ fi
+
+ emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
+
+ # make install likes to throw in some extra EFI bits if it built
+ use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
+}
+
+pkg_postinst() {
+ elog "Official Xen Guide and the unoffical wiki page:"
+ elog " https://wiki.gentoo.org/wiki/Xen"
+ elog " http://en.gentoo-wiki.com/wiki/Xen/"
+
+ use efi && einfo "The efi executable is installed in boot/efi/gentoo"
+
+ elog "You can optionally block the installation of /boot/xen-syms by an entry"
+ elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
+ elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
+}
diff --git a/app-emulation/xen/xen-4.6.0-r8.ebuild b/app-emulation/xen/xen-4.6.0-r8.ebuild
new file mode 100644
index 0000000000..45064a4b49
--- /dev/null
+++ b/app-emulation/xen/xen-4.6.0-r8.ebuild
@@ -0,0 +1,197 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils multilib mount-boot flag-o-matic python-any-r1 toolchain-funcs
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${PV/_/-}
+
+if [[ $PV == *9999 ]]; then
+ inherit git-r3
+ KEYWORDS=""
+ EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
+ SRC_URI=""
+else
+ KEYWORDS="amd64 ~arm ~arm64 -x86"
+ UPSTREAM_VER=0
+ SECURITY_VER=0
+ # var set to reflect https://dev.gentoo.org/~idella4/
+ # first instance of UPS_VER (usptream ver)
+ UPS_VER=0
+ SEC_VER=5
+ GENTOO_VER=
+
+ [[ -n ${UPSTREAM_VER} ]] && \
+ UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN}-upstream-patches-${UPS_VER}.tar.gz"
+ [[ -n ${SECURITY_VER} ]] && \
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~idella4/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
+ https://dev.gentoo.org/~idella4/distfiles/${PN}-security-patches-${SEC_VER}.tar.gz"
+ [[ -n ${GENTOO_VER} ]] && \
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
+ ${UPSTREAM_PATCHSET_URI}
+ ${SECURITY_PATCHSET_URI}
+ ${GENTOO_PATCHSET_URI}"
+fi
+
+DESCRIPTION="The Xen virtual machine monitor"
+HOMEPAGE="http://xen.org/"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="custom-cflags debug efi flask"
+
+DEPEND="${PYTHON_DEPS}
+ efi? ( >=sys-devel/binutils-2.22[multitarget] )
+ !efi? ( >=sys-devel/binutils-2.22 )"
+RDEPEND=""
+PDEPEND="~app-emulation/xen-tools-${PV}"
+
+# no tests are available for the hypervisor
+# prevent the silliness of /usr/lib/debug/usr/lib/debug files
+# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
+RESTRICT="test splitdebug strip"
+
+# Approved by QA team in bug #144032
+QA_WX_LOAD="boot/xen-syms-${PV}"
+
+REQUIRED_USE="arm? ( debug )"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ if [[ -z ${XEN_TARGET_ARCH} ]]; then
+ if use amd64; then
+ export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
+ else
+ die "Unsupported architecture!"
+ fi
+ fi
+
+ if use flask ; then
+ export "XSM_ENABLE=y"
+ export "FLASK_ENABLE=y"
+ fi
+}
+
+src_prepare() {
+ # Upstream's patchset
+ if [[ -n ${UPSTREAM_VER} ]]; then
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_OPTS="-p1" \
+ epatch "${WORKDIR}"/patches-upstream \
+ "${WORKDIR}"/libexec.patch
+ fi
+
+ if [[ -n ${SECURITY_VER} ]]; then
+ einfo "Try to apply Xen Security patcheset"
+ # apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ EPATCH_SUFFIX="patch"
+ EPATCH_FORCE="yes"
+ for i in ${XEN_SECURITY_MAIN}; do
+ epatch "${WORKDIR}"/patches-security/xen/$i
+ done
+
+ for i in "${WORKDIR}"/xen-sec/xsa*.patch; do
+ epatch $i
+ done
+ fi
+
+ # Gentoo's patchset
+ if [[ -n ${GENTOO_VER} ]]; then
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}"/patches-gentoo
+ fi
+
+ epatch "${FILESDIR}"/${PN}-4.6-efi.patch
+
+ # Drop .config
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
+ if use efi; then
+ export EFI_VENDOR="gentoo"
+ export EFI_MOUNTPOINT="boot"
+ fi
+
+ # if the user *really* wants to use their own custom-cflags, let them
+ if use custom-cflags; then
+ einfo "User wants their own CFLAGS - removing defaults"
+ # try and remove all the default custom-cflags
+ find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
+ -i {} \; || die "failed to re-set custom-cflags"
+ fi
+
+ # remove -Werror for gcc-4.6's sake
+ find "${S}" -name 'Makefile*' -o -name '*.mk' -o -name 'common.make' | \
+ xargs sed -i 's/ *-Werror */ /'
+ # not strictly necessary to fix this
+ sed -i 's/, "-Werror"//' "${S}/tools/python/setup.py" || die "failed to re-set setup.py"
+
+ epatch_user
+}
+
+src_configure() {
+ use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
+
+ use debug && myopt="${myopt} debug=y"
+
+ if use custom-cflags; then
+ filter-flags -fPIE -fstack-protector
+ replace-flags -O3 -O2
+ else
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+ fi
+}
+
+src_compile() {
+ # Send raw LDFLAGS so that --as-needed works
+ emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
+}
+
+src_install() {
+ local myopt
+ use debug && myopt="${myopt} debug=y"
+
+ # The 'make install' doesn't 'mkdir -p' the subdirs
+ if use efi; then
+ mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
+ fi
+
+ emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
+
+ # make install likes to throw in some extra EFI bits if it built
+ use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
+}
+
+pkg_postinst() {
+ elog "Official Xen Guide and the unoffical wiki page:"
+ elog " https://wiki.gentoo.org/wiki/Xen"
+ elog " http://en.gentoo-wiki.com/wiki/Xen/"
+
+ use efi && einfo "The efi executable is installed in boot/efi/gentoo"
+
+ elog "You can optionally block the installation of /boot/xen-syms by an entry"
+ elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
+ elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
+}
diff --git a/app-emulation/xtrs/metadata.xml b/app-emulation/xtrs/metadata.xml
index 8f00a04f28..c7db543a81 100644
--- a/app-emulation/xtrs/metadata.xml
+++ b/app-emulation/xtrs/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer>
+<maintainer type="person">
<email>ulm@gentoo.org</email>
</maintainer>
<longdescription>
@@ -18,6 +18,6 @@
bit spartan, but it gets the job done.
</longdescription>
<use>
- <flag name='ls-dos'>Install LS-DOS disk images for Model 4P</flag>
+ <flag name="ls-dos">Install LS-DOS disk images for Model 4P</flag>
</use>
</pkgmetadata>