bump(app-emulation/qemu): sync with upstream

Our current version, 1.2, is quite old. Bump to the latest stable (1.4)
with an eye towards bumping to 1.5 as soon.

Packages updated:
  app-emulation/qemu
  sys-firmware/ipxe
  sys-firmware/seabios
  x11-libs/pixman
This commit is contained in:
Michael Marineau 2013-07-31 13:26:41 -04:00
parent 577c0d96be
commit 65b47cfe2a
38 changed files with 3598 additions and 2230 deletions

View File

@ -1,6 +1,231 @@
# ChangeLog for app-emulation/qemu # ChangeLog for app-emulation/qemu
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/ChangeLog,v 1.178 2013/01/25 12:08:00 ago Exp $ # $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/ChangeLog,v 1.230 2013/08/04 18:28:54 cardoe Exp $
04 Aug 2013; Doug Goldstein <cardoe@gentoo.org> qemu-9999.ebuild:
Fix libseccomp depend for master. bug #479562
*qemu-1.5.2-r1 (03 Aug 2013)
03 Aug 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.5.2-r1.ebuild,
metadata.xml:
Version bump to include my tested stable patchset. Add support for GlusterFS,
bug #468726
*qemu-1.5.2 (27 Jul 2013)
27 Jul 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.5.2.ebuild,
-qemu-1.5.1.ebuild:
Version bump and start of the Gentoo patchset.
27 Jul 2013; Doug Goldstein <cardoe@gentoo.org>
-files/qemu-1.2.0-cflags.patch, -files/qemu-binfmt.initd, -files/qemu-kvm,
-qemu-1.2.2-r2.ebuild, -qemu-1.2.2-r3.ebuild, -qemu-1.2.2-r4.ebuild,
-qemu-1.4.0-r1.ebuild:
Cull old versions and old files from the tree
27 Jul 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.4.2-r1.ebuild:
Fix static-user builds needing to depend on glib with USE=static-libs. bug
#478138
*qemu-1.4.2-r1 (27 Jul 2013)
27 Jul 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.4.2-r1.ebuild:
Fix qxl rom size from old migrations. Fix rtl8139 large copies on Windows. Fix
large copy and pastes with SPICE. Fix inability to disable all softmmu targets
(bug #466806). Utilize readme.eclass. Other misc cleanups from 1.5.x ebuild.
26 Jul 2013; Sergei Trofimovich <slyfox@gentoo.org> qemu-9999.ebuild:
Fix configure phase. NPTL is not a user-configurable feature anymore.
*qemu-1.5.1 (19 Jul 2013)
19 Jul 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.5.1.ebuild:
Really need to get started on qemu 1.5.x
19 Jul 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.4.2.ebuild:
Swore this already was committed but I guess not. Fix depends for generating
the man pages and documentation. bug #477106
25 Jun 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.4.2.ebuild:
Stable for amd64, wrt bug #473426
25 Jun 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.4.2.ebuild:
Stable for x86, wrt bug #473426
22 Jun 2013; Sergei Trofimovich <slyfox@gentoo.org> qemu-9999.ebuild:
Adjust 'dtc' depend to require development snapshot. Add 's390-ccw.img' to
list of prebuilts.
20 Jun 2013; Mike Frysinger <vapier@gentoo.org> metadata.xml,
qemu-1.4.2.ebuild, qemu-9999.ebuild:
Change USE=brltty to the common USE=accessibility #473868.
04 Jun 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.4.1.ebuild:
Stable for x86, wrt bug #466092
04 Jun 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.4.1.ebuild:
Stable for amd64, wrt bug #466092
31 May 2013; Sergei Trofimovich <slyfox@gentoo.org> qemu-9999.ebuild:
Added system target: moxie; user targets: mips64, mips64el, mipsn32,
mipsn32el.
31 May 2013; Sergei Trofimovich <slyfox@gentoo.org> qemu-9999.ebuild:
Unbreak live ebuild: tried to apply nonexisting BACKPORTS, --enable-opengl was
renamed to --enable-glx.
30 May 2013; Doug Goldstein <cardoe@gentoo.org> qemu-9999.ebuild:
Updates to the live ebuild
30 May 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.4.2.ebuild:
Add a missing PYTHON_REQUIRED_USE for the conversion to python-r1 eclass.
*qemu-1.4.2 (30 May 2013)
30 May 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.4.2.ebuild:
Version bump. Install more python scripts for debugging purposes with
USE=python. Fix man pages not being installed. bug #435534
23 May 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.4.0-r1.ebuild:
Stable for amd64, wrt bug #468920
08 May 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.4.0-r1.ebuild:
Reverted on x86 because it is masked
07 May 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.4.0-r1.ebuild:
accidentally keyworded for amd64
07 May 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.4.0-r1.ebuild:
Stable for x86, wrt bug #468920
07 May 2013; Doug Goldstein <cardoe@gentoo.org> -qemu-1.1.1-r1.ebuild,
-qemu-1.1.2-r2.ebuild, qemu-1.2.2-r3.ebuild, qemu-1.2.2-r4.ebuild,
-qemu-1.3.1.ebuild, -qemu-1.4.0.ebuild, qemu-1.4.0-r1.ebuild,
qemu-1.4.1.ebuild, qemu-9999.ebuild:
Drop older versions. Fix HOMEPAGE. bug #463364
*qemu-1.4.1 (07 May 2013)
07 May 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.4.1.ebuild:
Version bump.
28 Mar 2013; Steev Klimaszewski <steev@gentoo.org> qemu-9999.ebuild:
Upstream has changed the qemu configure script, change requested by Cardoe
via email
19 Mar 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.4.0-r1.ebuild:
Always ensure the check-report is generated. fixes bug #462010
*qemu-1.4.0-r1 (17 Mar 2013)
17 Mar 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.4.0-r1.ebuild,
metadata.xml:
Further work on developing the qemu 1.4.1 stable bump, contains my entire
queue + qemu-kvm migration fixes shared with Fedora. Ensure any libraries
which maybe installed are installed into /usr/lib64 for 64-bit systems. Add
support for libiscsi. Add support for running qemu tests. Also fix bug
#459246, and bug #459120.
12 Mar 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.4.0.ebuild:
Add some information on what versions of dependencies we are using to emerge
--info
02 Mar 2013; Doug Goldstein <cardoe@gentoo.org> metadata.xml:
Update USE flag description based on confusion from upstream reported bug
01 Mar 2013; Tiziano Müller <dev-zero@gentoo.org> qemu-1.4.0.ebuild:
Don't block spice[smartcard] as libcacard is the real blocker and it doesn't
work as planned.
28 Feb 2013; Doug Goldstein <cardoe@gentoo.org> qemu-9999.ebuild:
TODO no longer exists in the top level. Items are tracked in the bug tracker
now
28 Feb 2013; Tiziano Müller <dev-zero@gentoo.org> qemu-1.4.0.ebuild:
Block libcacard since qemu is libcacard upstream and bundles/installs it from
now on. Also block spice[smartcard] if smartcard-support in qemu is requested
since that one is pulling in libcacard and to make sure users know what to do.
Renaming the binary is then not required anymore.
26 Feb 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.2.2-r4.ebuild,
qemu-1.4.0.ebuild:
Fix more typos
26 Feb 2013; Doug Goldstein <cardoe@gentoo.org> -qemu-1.3.0.ebuild:
Remove older version
26 Feb 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.2.2-r4.ebuild,
qemu-1.4.0.ebuild:
Fix fcaps usage
25 Feb 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.4.0.ebuild:
Fix patch to virtfs-proxy-helper
25 Feb 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.2.2-r3.ebuild:
Stable for x86, wrt bug #459094
25 Feb 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.2.2-r3.ebuild:
Stable for amd64, wrt bug #459094
25 Feb 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.4.0.ebuild,
metadata.xml:
Fix up depends. Disable building of tools for the user emulation targets to
remove some necessary depends. Fix automagical depend on GnuTLS when VNC
WebSockets are enabled.
25 Feb 2013; Doug Goldstein <cardoe@gentoo.org> +files/qemu-kvm-1.4,
qemu-1.4.0.ebuild:
Patches from Cole Robinson for qemu-kvm -> qemu migration fixes.
Start on the stable 1.4 patch series. New qemu-kvm wrapper.
*qemu-1.2.2-r4 (25 Feb 2013)
25 Feb 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.2.2-r4.ebuild,
qemu-1.4.0.ebuild:
Support file capabilities for helper binaries
21 Feb 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.2.2-r3.ebuild,
+files/bridge.conf:
Add example qemu-bridge-helper config script.
17 Feb 2013; Mike Frysinger <vapier@gentoo.org> files/qemu-binfmt.initd,
files/qemu-binfmt.initd-r1:
Simplify initial checks.
17 Feb 2013; Mike Frysinger <vapier@gentoo.org> files/qemu-binfmt.initd,
files/qemu-binfmt.initd-r1:
Fix bashisms in init.d scripts.
*qemu-1.4.0 (16 Feb 2013)
16 Feb 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.4.0.ebuild:
Initial 1.4.0 version bump
*qemu-1.3.1 (16 Feb 2013)
16 Feb 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.3.1.ebuild,
qemu-9999.ebuild:
Add a pending 1.3.1 version bump
10 Feb 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.2.2-r3.ebuild:
Fix PYTHON_DEPEND line
10 Feb 2013; Doug Goldstein <cardoe@gentoo.org> -qemu-1.2.1.ebuild,
-qemu-1.2.2.ebuild:
Remove older versions
*qemu-1.2.2-r3 (10 Feb 2013)
10 Feb 2013; Doug Goldstein <cardoe@gentoo.org> +qemu-1.2.2-r3.ebuild,
-qemu-1.2.2-r100.ebuild:
Bump to support two different builds for user targets and
system targets to allow you to build one static and one
dynamic. Additionally bump the patchset to include fixes for
bug #455552 and bug #454364
10 Feb 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.3.0.ebuild:
Add back vgabios which was removed incorrectly qemu-1.3.0.ebuild
25 Jan 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.2.2-r2.ebuild: 25 Jan 2013; Agostino Sarubbo <ago@gentoo.org> qemu-1.2.2-r2.ebuild:
Stable for x86, wrt bug #453284 Stable for x86, wrt bug #453284

View File

@ -1,25 +1,37 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
AUX 65-kvm.rules 40 SHA256 c16a8dc7855880b2651f1a3ff488ecc54d4ac1036c71fffd5007021d8d18a7c5 SHA512 98aad2a2f212a7ac0ee5b60a9c92744fa462bce5f26594845c7a31d692aaaca2d52cb57bdbede7dfc60b9862c2a6510665dbb03215d5cf76e62516a283decdd6 WHIRLPOOL 937de93a23930f6b8533f0c3e0dd249c99ddf7d54446dea857607266ac0a4b435c5b4a52b2986b138bace9c0a7ade66f94116b38e2bc4767ead54bd11baf0920 AUX 65-kvm.rules 40 SHA256 c16a8dc7855880b2651f1a3ff488ecc54d4ac1036c71fffd5007021d8d18a7c5 SHA512 98aad2a2f212a7ac0ee5b60a9c92744fa462bce5f26594845c7a31d692aaaca2d52cb57bdbede7dfc60b9862c2a6510665dbb03215d5cf76e62516a283decdd6 WHIRLPOOL 937de93a23930f6b8533f0c3e0dd249c99ddf7d54446dea857607266ac0a4b435c5b4a52b2986b138bace9c0a7ade66f94116b38e2bc4767ead54bd11baf0920
AUX qemu-1.2.0-cflags.patch 359 SHA256 8917142633d32497d63dd2f2934e17d86a2e2ab11be2c8551e7218c9251b66a1 SHA512 f60ecc9a0e6969436a77444193cdba4f3028db683de0963870cbac5bf3a1b47da815926236f127a5f56333efc21efc52eb732cfce6393b764bfa1b9f569df645 WHIRLPOOL e0b3b8e1e68a3b42ce7727f7fa2029dd382fe9c8f7260c29e52368a1cd3b29efcfc134cf9908b3590ed6fe57c785bd05bf676e61736dc321a7a4899dd8b0a861 AUX bridge.conf 454 SHA256 a51850dd39923f3482e4c575b48ad9fef9c9ebb2f2176225da399b79ce48c69d SHA512 a907ee86b81a1b61033bb7621ded65112504131ef7b698c53e4014b958ee6fc79e66f63069015a01e41362cb70a7d0ed26dd9a03033cf776f4846f0e1f8f1533 WHIRLPOOL 8fcbd4abf9b8f7ca3d16fe0eaf17196ebf708dfecf85ce0f020e0de22b64905114f7b310f361826c81bb961c6b1bbbf984bff1e595bb949993b8966ccb222c35
AUX qemu-9999-cflags.patch 347 SHA256 fe3bcbe83e81225b2c722578a0a976fcb724419d5208bbd6d02fb543e80b7e12 SHA512 e1b8be744170d61a2155b23a8394db01f8af6dc70ec033e71b2ff46f72975704836d42b96d7904e5d462289c5f8f24317f2fb28698f18a77ab1de02829e585eb WHIRLPOOL 2d972c7e40292f424fd37a4c1af04d2be095c215211ec2e1d15d8457df553342ffc02a7d39985f817fbbf5342e422d30e439c35a925341cf9b852ca7ff15a308 AUX qemu-9999-cflags.patch 347 SHA256 fe3bcbe83e81225b2c722578a0a976fcb724419d5208bbd6d02fb543e80b7e12 SHA512 e1b8be744170d61a2155b23a8394db01f8af6dc70ec033e71b2ff46f72975704836d42b96d7904e5d462289c5f8f24317f2fb28698f18a77ab1de02829e585eb WHIRLPOOL 2d972c7e40292f424fd37a4c1af04d2be095c215211ec2e1d15d8457df553342ffc02a7d39985f817fbbf5342e422d30e439c35a925341cf9b852ca7ff15a308
AUX qemu-binfmt.initd 7470 SHA256 32a4196e7b4ebf02d5717596e38630131379f69216d90afb553b70cbb3d810d6 SHA512 8e33148c62d41b270dbb8d1e383dd56d3b3c06b77bd00577486fbe54c5030a4a69b70a7c7773724325fb0e742efe6d4fdee6119f3cdd4e1336abd831ad74ac25 WHIRLPOOL 9e2526714853dbdde85aa447a3e9a944c2ec3ae77edf8bef882aa73982940c6e43de03618a826a79e5b13f3d796b9962b36ef64a0871a41fa26a601b665302eb AUX qemu-binfmt.initd-r1 7023 SHA256 3572c110c6f217754e638796400a5901910a2e61b8818c8569f8258b103ebcc6 SHA512 773af64fef164c00945acf5881e64a10141aa8fdc85491e57bf8dcc7c800a4f81879527998a0896a42f921edcbf5f741beb31ac2a82e45cba506c7b8461733c8 WHIRLPOOL 30382fe347248683e989c2b7fbd804ce26173b313746d80467029b2ad3594f414628f7537120b168a0e700c424d3525528eb632b07e16544c2fd07f418f3187c
AUX qemu-binfmt.initd-r1 7139 SHA256 d742ff5261603649c6126edee676ead11d9b0bfe93871580d4d25c9dd987e8b5 SHA512 c34bba1d00db0ed79093e86099a54599f636b5925dddbe39786ae848d7bba10c44608c2720a52fc96cac6a7b2bacebb197c66b5e54bb44b18905d2fa056d0564 WHIRLPOOL c6d3380e6d6d6e60b226245189311a549bafd082f8c264c72f984ec0bb491721ed2a28824b4df6283088b7fb303d23c9d187bb574129839ec4e2017a6b6ff192 AUX qemu-kvm-1.4 68 SHA256 8b1adf198129f001e75a2311fc420c168094d1084d2163cdf6a32b3b23c96137 SHA512 706fab4d155c410acc292e67fb354ce7dcd17f7e33f2ca8c9c44035ea128f8d36f89e27cf87ebe22721f5676be9e7f2ae5484fd000183c8ffd7854e02eb3d120 WHIRLPOOL ef795330b592cef8e3d92f52a77eb77a671e6aa1a47d07531917b5c1c09e72e5df1a44aea939b086e0a3c5ef2a5cea9223556a46ceae73e55300475c42f07067
AUX qemu-kvm 60 SHA256 ded08eb1c74a9581912a9ca7876de6f33d1c545ed2a7d275f9b1749539feb7ee SHA512 d973d70ffeb7f4cdc61b25a30bf7174ac05b8c136234478782367a16668ff617756e9862a9cd94acd4b6636fda36410762e069a2eccca99410aa6e3b4294e363 WHIRLPOOL 41937bf752a2f643085fbd04643fb7a5cb898fabe8625d80b730c9e930f48f8d63245d5acdffbe31ecede1e1eb83fd3a73aad925f020e5c016f1b6559e7426d3 DIST qemu-1.4.1-a2231a9d.tar.xz 5192 SHA256 5c6dacc243f55d00817dcc4fa24555c48665719bb4a1ea9f3d3542bea7606c52 SHA512 102e751d1dc972324a835fd2f2c88431856189a98505a9f8c1993b3bc5da390fed1cda04f719040c1c62b5cf4a7715d8d9fb15d6ceb511af5cf7cccd0dab0c09 WHIRLPOOL 8c22d6300c01a4afc9000bb0ab1c5a7626b61decb356d08731c715c417808a2801c3ca8c0192851a2f5ccfe36e30fc94da193365aaf69fdfbc44956c63c61142
DIST qemu-1.3.0.tar.bz2 10286423 SHA256 878055ec05bc28fecfe2da97eb8bc992e8635575b67cebdfc5ca1ede171140a8 SHA512 2b314590363697140c3f7b3c445a40782f34c3d8911ded66e15ddd4470c7f38d0035fa09b6e6d99122f209495b62111809ce2eb4fc308fc120b9c598d18c2bc7 WHIRLPOOL 4b312b1f32e7fddec642bf1835d9610f3567aed7c4507cb036e86fb440e98b9d4160ff97755a0f9e0a4105e2126c8bb4745c411ede5addb9a3cd00d2fe9b812e DIST qemu-1.4.1.tar.bz2 10417738 SHA256 75063a9326221607de3599e89fb5af80f2d8080ddc55ca253fff113843432df1 SHA512 b655d2816b9393ca30bbba2bc8a30076e1c933d593653a1f61b4d5f3aaa9b8eb390fa3aa6f3486f1d066b1e078a3d9e1a280d0e8dac68745b128ddc01ca1b149 WHIRLPOOL d45d290eb2877038f945d3aee88d28b5c81feb43b1ca4c8941b87fc225e4cfb7b7a601af8b8e639e831b7f41823b4d1723ca9149c0c072eb168907aa67e017be
DIST qemu-kvm-1.1.1-bp-1.tar.xz 2908 SHA256 16b7cd2e10b3a05d20006898bcfdb26eb596f7c7d3c0e18fb216cb2b2026af40 SHA512 781eae1fdc1cb7482d3d6fd1cf81e0d565588e3987fc4cab92abc06741b1b57d999b0de1fffce7270f50033b53c5707e4ef477ca3b7ddfca3dc1a432c1e15cc7 WHIRLPOOL 3f80b4cc9902021686bea823a41af136d21dd5a6b8aa59913aeb8697c3a38acc02d92ee59b9d052b6d161830a72d709fe684beb95f756a92216fe79cce4c5d9a DIST qemu-1.4.2-384a78f1.tar.xz 5652 SHA256 a0547d8d68eade3ef58038cb29aa19778cff62652ffc862ccaa4dde11011cb48 SHA512 5e45ffc374a894d609777efd4c98597dc66ea25690b3384ce32aef39e57ccb50402de52fb723baa27d270679b7068fcde7c0ba7eab204d08c102cc473f37cfb3 WHIRLPOOL 251a0fb2708b13651637a3f46a462d57cdae363a0fb5532fbf790c49d18954dd8445c4ee3134f83ce07ad6cd84b71e67a209bdd2899ce5ca3b2abad268f5ee9e
DIST qemu-kvm-1.1.1.tar.gz 6599376 SHA256 c6fab57ccadcad5deb34728623840a0141a0f3c8f29d0c253db577f059c796df SHA512 1106a35212cdac1fe5b043af6754595d03232f22bf74cdab86973759adb3cff2d3d7b42290883d2d99d97d163fe274de0108a05eed906ffdc3349c0631f52492 WHIRLPOOL 4d9b2b788a7f87104032635b3b6e2cd96275b92683e3003510b0951536ed6bcb959959bc7529e3f912a7a2055b5c1710b9310d591a8b443a17a231e5b86f6105 DIST qemu-1.4.2-6b5934f9.tar.xz 3132 SHA256 76af332ea3a731d04d5d2d909c4372250a156993ca56046dc607a7d43caa747e SHA512 c74cc6c3485cc19809676e7dc796d9f1d5b3d12decf1f0c61a948504471ac85f8b488c1acd0400b02827b1ad6b9745a6b47317c284365122ca772a842852f27e WHIRLPOOL 50dd6e7eed3902547dfae6c6cd73505232ed8abafc523c7df7e65a02cf9b29b3e7a29f4ce286b157c027f82e198ef23dd44a83c6925204317c7bb4d6e350617b
DIST qemu-kvm-1.1.2-6cee76f0.tar.xz 13096 SHA256 0bf503a494d78cc5a59682d22341caa594fcf89a8ce5bd222dd7c45ad009e0c3 SHA512 bb1aa5f40b24cf9860f4af2cbab8bf8d5800ca57c1dccc05f446b5001d426021a3ccc423228ce9607a20dd1fb9e5d93a62f883d5bf56c4ac25b5ebfd3b60940d WHIRLPOOL 3916563bd76d9ae50ddd168863dfada0f44289355c82491a992d2d56c9398c8392fc69a67844154dafb13f9ea315affd27909e3b675ba8b5eab32ab176700b5b DIST qemu-1.4.2.tar.bz2 10416877 SHA256 acae6c92b740ff89c0e31eca23338d4abd733432e51b081017757579b30ecf90 SHA512 aa296b3d06321c81b32fdd2fdcdf07f3c377123f18eadca977335592b64a4f2417eea421fe417b57e468741f707bda31ba907364d762983393272997fdef8999 WHIRLPOOL 782f3c6d8776210450a0c0ac24942d8e1c41995aeb8e910add704f8f6d95ae3392ee942c6b661d4674367d0e443453c7f29356b2b4c71be4ffed54436f90de8a
DIST qemu-kvm-1.1.2.tar.gz 6605075 SHA256 2be9cb9986c0b67ef97a2d21a51a945e91c4032b8c4229297461d8ed91f95178 SHA512 c1fc6a91276347ec2188c9fa8750b51ed14116ea0a7afc74e0ddf305e9f175a6c16d3dc6ef1ee52926c4d8b9bd0fd5465041f32ec24ce315059062a078e2df82 WHIRLPOOL f21af6107de2343c6a45cbd6aa97cbc58e36a37c37db42110397658a2c303d63e5af96b84b778b5f08e958a5e65a84088c596e1b83cbdcd4009efff64dab4d09 DIST qemu-1.5.2-2d2faaeb.tar.xz 4112 SHA256 8bcfb9d68307da6232b75894e5cd415e0b74afbd6eddda1df4583231c8c8d2d1 SHA512 c2f8f7456bf5dd1c9047e9468254de8b83330546fa2a64c2342801a9e6944232d78a1f57b03862c942706aa6c3460d9239699c2dccf19c34ffdfbfbc81185a89 WHIRLPOOL 655372d513cb79cfacba659a191a0a1db26dbf97aff7c6f955bc1ee089d8360100e2c0088c69251da9e93f75eb0032917d43e57f5fc651b7bfa28ae6a3d1f06c
DIST qemu-kvm-1.2.0-3a5940fb.tar.xz 238084 SHA256 031e290d85292e7fce1589fe492093069790c3094b7a302c71db8b2b98cbf3c6 SHA512 316a56a95c35cd304d63f6a444d0360510db79dbbf34c88f26f00998ddd0a1a35b6f6d7848abd6c7a8d7c65253e5449b3def0eefec17ad3989d2e02bc2743d8d WHIRLPOOL bcea3a5c22e7bc46b4c15580fde34de6ddcc3908dd8bb5b4d5f00724a960c5303db275c29b3741665bd47d9309d3d70294be27156958c5948cf17ece2af6da68 DIST qemu-1.5.2-e26b4ba6.tar.xz 21348 SHA256 877cc321b3bd5e30aaa7a481b359e16845ad731927a49df1fb2d5b0cfbfd0ad6 SHA512 1f015c5d9ca37475bddf9d474255b10ae3f03d01280270211deb1195a2ef288e6a1bbff9490cb4173a7af4b02787469278816fd5dee69d8e11d601b5a46b0e53 WHIRLPOOL 86a249c1339bb241a1534e5047bab696b8c26ad491eda073ee57ce1f9104df54ab7e251cd5ad9568a1381307b118029b7619bf689dec36f454d3f77f2f2f402a
DIST qemu-kvm-1.2.0-9489a8c0-1.tar.xz 268020 SHA256 3ac9715a6bb50d8e363ea0a225a23472d326c31189637eb7ad25fef47afe526d SHA512 9ea7da5384af22525db40fef62a480e551395907df6bf2420e1ccdaceddb24515f0e463e16e929b6da34ab0c2f0e5e567ef097f186a46c0d2fcc2d0d17fc3045 WHIRLPOOL 89ece68af896212cb9a868f6bb0d0df397d22131e3ae147f575177b39f015860ea0895a1edf938f46d3e2322182f131abc0767b07d8c05565a7ff40420f65464 DIST qemu-1.5.2.tar.bz2 11932902 SHA256 f661147d190ab8432045058a660d810f13dc528fe7017ce578e9f2da2997a250 SHA512 cae47d34b99d3d3ded688b5a434ba69a377a838dddd367d10e4a71cd697305870c9671e4291490c0028b8143870b0998469e508cd28922fbebd8ea5f86f591b9 WHIRLPOOL bd5e8063c40e3e2fc43934e3649562f594f249002209bf09e05fda06155d423587d714862c8b55f9b2621f3ce20154f4e81b5c73df65ef2513ae824ae5bbcee9
DIST qemu-kvm-1.2.0-b6773f5e.tar.xz 264756 SHA256 fbb0c3fd17304d6fe2f12064ac354edb8ec67fe09f6f1ab2bfe5534949728d15 SHA512 c8c94bf534f4e844782ada677bc608425b4d209fd01f9d9eab8b9f3d758b03e48b8a02110793e3555421761f3bc36f1363f0f7a8cbe8f3f64455463ae43e23fa WHIRLPOOL a6bb4fe13526a780f0c46e2838fb721b9fcd5642b7412f454d70118e8db144f606bec0a9daf6ae5ddb9ec8140895b8407beaa807599df4503e6a16a16650c555 EBUILD qemu-1.4.1.ebuild 16271 SHA256 126181b6968c1625623abece0f2214c450bd528c4b9c4abad688b083c0ed56c8 SHA512 40c1ffbcc45120829da28998d10d7b1fe4ce25e5b99e1da0ebb3f6f080d2b3f0a8ac7985b19002428ad78330ac3726e0bf4bfd74d58a98e818bc406f6d9478b9 WHIRLPOOL 4bd5b677964ea0eed7897ff59ea98e00182832837170070759cff1bb52529f9caca27ff8ba921a2e01586cae56ddd429e51cf7fd730b99f1327a1ecaf83ea687
DIST qemu-kvm-1.2.0.tar.gz 6839420 SHA256 e98ab96c24337e312864f2341016695ac11cb9a04be83548a8da89596d591b05 SHA512 c21354127d4585397ab400600ab1ac9aac80cc0431bbf615c8e906819075b00373f382954fbd9fa39bf6479126d8d8e3321b3713346d04abe2c249edfa4eb6fd WHIRLPOOL 3d0662b39174eee0cd8750f6bea5baf57e2dfa82b490c3f1e54f44720ddd05ad029c3011425f651e745973ddb03aaca310bc8acf9f8e656bbb8390a262f7013c EBUILD qemu-1.4.2-r1.ebuild 16637 SHA256 888060b5b23ab3f51b6ebbb259d3a9976d27ae29b2e84610c96a273b65e779c8 SHA512 4035fa1f1ae002a856d3cfe9ecfa4a56907193080a69e6d0f428d925c254e2573a11f281a5e3a0eac3716fe101bbf221f56bd332fcd7ebc1f6e08273766ccdf6 WHIRLPOOL 97925416d8104f56fb53f81c16df41f7c2d981a8a462ad7602f9bea2fe4dda55e976396cba311cc53210da9e0e3508c9ce45a09fdbbbb5c8bfac1c366e8d675c
EBUILD qemu-1.1.1-r1.ebuild 12063 SHA256 a3f92888f96d664c0dd26ca257ebce3dd1716c12156bd66a5baf9368f55d05d0 SHA512 6b516298b3819a1b4da1ddc23ea5ba7c6e71bbef44be976d8942f0b0ea474644549437cfb60c12b90d5ab3cfdbcb48e746f65603633a6b07d3f747e1eb6c5e3c WHIRLPOOL 66d8f516e0becd96dd6fa2b35590e7fc3968e8b26f3e51c17882bdc48c70015ac3e9dbfe79c79abaaf48e4c54593ca14a60834f8ff6974e092fac2cbf495655e EBUILD qemu-1.4.2.ebuild 16623 SHA256 3b047896a49c702a60f7df1bb0a2a3cfc1f8a6b5ec43ee29ee57047625115c7d SHA512 60a9d6ce25cb2182f81c30c49f16e863d4509be8ccfd96cabc4bfb7375777690bea265d5f977a530aef5d5ba6812c8d5e4190c815cc38c78e10d67b3685ad127 WHIRLPOOL 69c09d7df3a1965879c71d411e6ddd9649c82e1145a250e9aaf8ce0fc888ecc02dcc440cae794e878f350b88c34d5b73e363ff7aa41417a435fd0a7e2db59fff
EBUILD qemu-1.1.2-r2.ebuild 12149 SHA256 b73be920f461c0d416483776750668ce68deb4214049a29e600b6268a1e6fae2 SHA512 368d8086ec85fddc60189c8e53d9e407f1321a6ac7a98da04d048f436dbd56088eaca3fd77a5888ea8865b4f6a0311d75f82a736ecda5f9ca8e02a2c03931a25 WHIRLPOOL 943f6cb80fc610a4615783e1bd5b3152366ba80877cce142ef00709a5d8461ebee5c2bb975c8b9dca6452075fc810c3e601bb4aee01f6700b7c7aa8c149e8d6e EBUILD qemu-1.5.2-r1.ebuild 17389 SHA256 d70195826b6e596f8a49d7a124e88d514488f8bc3d20af423c970a34951b92ce SHA512 2bc5bf7e8ad6119d6a3128c17a8e01fcc23d426a0d2d35d5aae5e23389224ed14d3ac925783f3de90eae365869f52071add322a1f7a5da7be7d4b4e308830fdb WHIRLPOOL f2e4f38c51b17516fd8aa01739c4caac7ee649c858f13ab3e38ecf2cbeb0e539a246cb57b03ad668b8e4057a366de27cbdb56e74ac2ac7de80d2998fe62f2b7a
EBUILD qemu-1.2.1.ebuild 12715 SHA256 bd53340e0d01ec18df8a47a7c8b314dfdb4a10b8548634197f8f417e7b282cf9 SHA512 191ee242d50f5811dc22dd58a8fec4475eb80d3e38b2cd959c04f4c086251e2764f49373e6d4247d828265e8abd423be80c8d4c272d7bf506ce58027c9c7a59b WHIRLPOOL e00d063577478b979062f6c6813614441f4ab90fac8bf296e42d579a6fba258c997d0637ebde89b4d276810d9639b38756b06aa03a526c763a60f16d36d9231f EBUILD qemu-1.5.2.ebuild 17236 SHA256 646321c1dccb49084e12ef49702dee4ddb83e958151ddcf8dbd5d9d7862fa2b1 SHA512 29bfc4b9d7d5499ea4f0b90de041101df10ec0244181f4032617ecec8cebc85f4c3ebbdcb11fa6b082e78b6b11b384646c2e5d4af2f05c4b6107e3a6e69f5d05 WHIRLPOOL 9eae12bf727cab89caf9982bf0e840d606bf84f3b4c195480fdd3a2cc415c829fd13917e46b2172cf4f81d9af7d1cfba9e3542dce241cada543e2a2795887761
EBUILD qemu-1.2.2-r100.ebuild 15048 SHA256 cf3486756e66e58fd3fec68d7631bf857c8abecd951832372a8ca1c8b03eca52 SHA512 fc9a74ab7efd77f3ec34b94130e6491673988db583c0ec046eda2d182e1e19d892cefdea84bee61d228674d55c1299a28447c24a4a1d9b10d30cfbb1bb344d9b WHIRLPOOL c30cb80762f618152f78942a8dbb955ae8bf499bf4bcba854194425da8fa23c40fda4e7b5871fc550bdffbceb8a50ebab2474f288b4f7c0bc4b483b87c1b517f EBUILD qemu-9999.ebuild 16718 SHA256 ff71524998b25d4e50defa8c8efdc83df3953e560c66e88d1a6324a2e7ba6fa2 SHA512 d7e1550e202853efc7d38771a93d7e21d708bd3dc8aed507e4532d5091a5cd4413ee67ed21cce161cf4fef894ae151f20bbbabf551fe5c9a4a66c38f81868ec9 WHIRLPOOL ce048a5b8798e72a96de1bb9eca49cdaa7be1eddd5fbfb5b3a88fa6180a43a563d6b957cf6b64008b9a1c945e992a5b721ef90ad688d799beb5f5139d2ddab2d
EBUILD qemu-1.2.2-r2.ebuild 13797 SHA256 fed8d1598f3f6087029a89b2d263c9c5cb43dc3a451087d4ab7aadc21514d263 SHA512 7d2bec002f0f470bb10d08d54ca133395a68f1d6eb2827211c27f84c05f5282c3a33712b2d657ed3f3bfbc5629dd39d00b6fb1b1dc62410984413919ca57b714 WHIRLPOOL b48726f91f9e92cbd648661c60be64208c260da05651591863292b7f3ee91f7fa0f791d46c3e3b19be2b533b92b795741cb358de8c2a694477c94d2f23f6aacf MISC ChangeLog 37712 SHA256 7becb44ccdb63ce95bc2220292e00733ab25e6898fd7646a79e643a10da6b811 SHA512 cbc3746c2dd618f8314f0a097ea26068377b5da2cce4c11111592706300b3d514425c2eff58f8c9ec4c51e3697a67578d34366dd128ae7a989b79e2f6971a42f WHIRLPOOL 7f91293f26df8c5492dd0991e5fd1debe43b017e093f6014427410dc3af1488b96cde75c95acb435828941bbb9f68208a7876d3b3a1fa3e735731e22cdfd436c
EBUILD qemu-1.2.2.ebuild 13797 SHA256 b2a41e93a14fb42c80bdb137b1fdc6ccf5bdf362a55d0736fd7676593a25bd2e SHA512 bef1597bd1042cbe3fa7caefd80dd6c3252099fe433d9a1250d7a4ee4796f8d1ab960f39d2a0d7b66360e1be5bb77e7250001dd54cccb32a308ec66ee037849e WHIRLPOOL 56f29553a370ef3a16c700a69c26797e44abeb43d06303760fe15651328a6175202f8c17e628cd7784cdd9896f49c0f82732f68630316291f35a8d1e4d23ef94 MISC metadata.xml 3419 SHA256 77b0c4ef04debd695c5772f20f6a5eba7e07ea241380c91081fa9ea7a1ba91c0 SHA512 40b4cc90ae43f8d53ac4a95092296dbf32fcd33e9132865f053a0b23823c781132261c17ec4d350ef899dae9b4e2ab2f87e2a5d6e067b419ab256d712b1510b4 WHIRLPOOL ac3c88fed17bc04f1427ff76a6c7d7a2dfc241917cb8e45e0698d2cf7d51419d699870910a65d3773e53257231414d8e339d848377b3d4a2a4dbfd44320912f0
EBUILD qemu-1.3.0.ebuild 13656 SHA256 caf18754a7829d4b523642552180cca38566e7bd9fba51d5d71a3cc045d8259b SHA512 537311a5c4423c4c0450d27c78416aecd532e439314db7e291e1008534092a3cf72141ddff627a645b3906e91836855fd4889a4009a9c86efaa7ccd409aab8ba WHIRLPOOL ae88385d99db703cc344cc710dfafaa96e4141358e015ba6c83052c0091c316af57fb0f43a56ad4f3bbae4beb872a7042c1b6e4f61a167bcceddb68e004ec93b -----BEGIN PGP SIGNATURE-----
EBUILD qemu-9999.ebuild 13648 SHA256 c55c088f37cb6e563cd4b748638a65e19b5503fad0503b4c9a6802833647eb63 SHA512 b5e491c0b3fb4c3ac7b74181597f00abd37e837ecb7f408ac5ddd19c6964ccb56a4614b695b216650384b934db7fcd9ce6076f95653dc617663c8876f4fd59f4 WHIRLPOOL 97036cbd377d4a7a09e6fdbf6aaf9142599dcffa62555f53c3a929a71da1a62deddb7f9f5bf51aef09b3a6a0b0ce8ea1f240b9be6a3662a4f9cd2e0b6cdf6f1a Version: GnuPG v2.0.20 (GNU/Linux)
MISC ChangeLog 29118 SHA256 3365cea4b0cc7790ce3f516372c2410f24794381c7ec08bd334b9ffdaf8696bf SHA512 f62922fbc56507f88df6726fe7961d1eb6bcda04be5c5e110af07715ad6fab434dc1177c95bc56acf5ecb58ae16ca1555c57a20fcfa44df153989cfb461ab7c3 WHIRLPOOL 7ac2b7cf52c3c913e55b97b1125207ce69cc8d4ed9b75abfa25e2593f457664f666b453852010b2dbfcace2c6aa53b5a53242b8d643323f1fe09f73ad66ca26f
MISC metadata.xml 2969 SHA256 9495aaec1c617cecbd822c10da0e53e7c9a17bab2e68c1c66e134f47bcd7c0ce SHA512 bf03f0e60734551dfe32909a7aea4737d08488e7452ad2e0426f3150573459adc6324809bf797a6943030e567672172a9cd7b32be50e5d246cf33046bea66e9c WHIRLPOOL 987c938ab4d5bb54e0af0ef13d295ac3c0004ebba8b2e1f8a7116d38b5db9590bbfef4bd1154e9e5e7a1f91ae2b816e4c572885d90910975df191c77d56ebaec iQF8BAEBCABmBQJR/p1rXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRDMDRGNEJFMDZEQTJGRUY3NkI4MEM3NTlE
N0RGQThEMzE4RkE5QUVGAAoJENffqNMY+prvClkH/ihhrkf4Ucf0dyFTOspnsocY
Wpn4rHkS5xP1PLR+uf7cTSrSuI70NXFRWZ/fEWnFuA82hjJfs9DzZlqEW5YK1Jb2
xCXo0VFsZhzP1dHxB53UKZKXwVS3pgC9WvboV3xnRUpnqTDbKLEBiSaoQ/GTtyC2
dGLO3XIutH1h0adkVOFZhQsmnf6d/MUzPOs4M9EwJbUwXI5eqZnI2VncUhxwKh5F
Ew6eEPdTVkxMjOZuDianPYI434urxhkXMiAcqBWJ1jp6YSFE70Lbcosu79eZC3UO
ZA2hEWxNriCp3pb4l/zCCGHdeXr6VyqpDrauyOtIED/ePEHj9eS7lww+d27zcSk=
=+mj5
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,14 @@
# This should have the following permissions: root:qemu 0640
# allow br0
# Uncommenting the above would allow users in the 'qemu' group
# to add devices to 'br0'
# allow virbr0
# Uncommenting the above would allow users in the 'qemu' group
# to add devices to 'virbr0'
# include /etc/qemu/bob.conf
# Uncommenting the above would allow users in the 'bob' group
# to have permissions defined in it, iff it has the following
# permissions: root:bob 0640

View File

@ -1,15 +0,0 @@
don't override user cflags
--- a/configure
+++ b/configure
@@ -2995,10 +2995,6 @@ fi
# End of CC checks
# After here, no more $cc or $ld runs
-if test "$debug" = "no" ; then
- CFLAGS="-O2 -D_FORTIFY_SOURCE=2 $CFLAGS"
-fi
-
# Disable zero malloc errors for official releases unless explicitly told to
# enable/disable
if test -z "$zero_malloc" ; then

View File

@ -1,132 +0,0 @@
#!/sbin/runscript
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/files/qemu-binfmt.initd,v 1.1 2013/01/12 04:56:15 cardoe Exp $
# enable automatic i386/ARM/M68K/MIPS/SPARC/PPC/s390 program execution by the kernel
depend() {
after procfs
}
start() {
ebegin "Registering qemu-user binaries"
if [[ ! -d /proc/sys/fs/binfmt_misc ]] ; then
eerror "You need support for \"misc binaries\" in your kernel!"
eend 1
fi
if [[ $(mount | grep -c binfmt_misc) -eq 0 ]] ; then
mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc &> /dev/null
local result=$?
if [[ $result -ne 0 ]] ; then
eend $result
fi
fi
# probe cpu type
cpu=`uname -m`
case "$cpu" in
i386|i486|i586|i686|i86pc|BePC|x86_64)
cpu="i386"
;;
m68k)
cpu="m68k"
;;
mips*)
cpu="mips"
;;
"Power Macintosh"|ppc|ppc64)
cpu="ppc"
;;
armv[4-9]*)
cpu="arm"
;;
sparc*)
cpu="sparc"
;;
esac
# register the interpreter for each cpu except for the native one
if [ $cpu != "i386" -a -x "/usr/bin/qemu-static-i386-binfmt" ] ; then
echo ':i386:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-i386-binfmt:P' > /proc/sys/fs/binfmt_misc/register
echo ':i486:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x06\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-i386-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "alpha" -a -x "/usr/bin/qemu-static-alpha-binfmt" ] ; then
echo ':alpha:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x26\x90:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-alpha-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "arm" -a -x "/usr/bin/qemu-static-arm-binfmt" ] ; then
echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\x00\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-arm-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "arm" -a -x "/usr/bin/qemu-static-armeb-binfmt" ] ; then
echo ':armeb:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-armeb-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "sparc" -a -x "/usr/bin/qemu-static-sparc-binfmt" ] ; then
echo ':sparc:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-sparc-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "ppc" -a -x "/usr/bin/qemu-static-ppc-binfmt" ] ; then
echo ':ppc:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x14:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-ppc-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "m68k" -a -x "/usr/bin/qemu-static-m68k-binfmt" ] ; then
echo 'Please check cpu value and header information for m68k!'
echo ':m68k:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-m68k-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mips-binfmt" ] ; then
# FIXME: We could use the other endianness on a MIPS host.
echo ':mips:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-mips-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mipsel-binfmt" ] ; then
echo ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-mipsel-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mipsn32-binfmt" ] ; then
echo ':mipsn32:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-mipsn32-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mipsn32el-binfmt" ] ; then
echo ':mipsn32el:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-mipsn32el-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mips64-binfmt" ] ; then
echo ':mips64:M::\x7fELF\x02\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-mips64-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mips64el-binfmt" ] ; then
echo ':mips64el:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-mips64el-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "sh" -a -x "/usr/bin/qemu-static-sh4-binfmt" ] ; then
echo ':sh4:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x2a\x00:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-sh4-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "sh" -a -x "/usr/bin/qemu-static-sh4eb-binfmt" ] ; then
echo ':sh4eb:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x2a:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-sh4eb-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "s390x" -a -x "/usr/local/bin/qemu-static-s390x-binfmt" ] ; then
echo ':s390x:M::\x7fELF\x02\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x16:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/local/bin/qemu-static-s390x-binfmt:P' > /proc/sys/fs/binfmt_misc/register
fi
eend $?
}
stop() {
ebegin "Unregistering qemu-user binaries"
local arches
arches="${arches} i386 i486"
arches="${arches} alpha"
arches="${arches} arm armeb"
arches="${arches} sparc"
arches="${arches} ppc"
arches="${arches} m68k"
arches="${arches} mips mipsel mipsn32 mipsn32el mips64 mips64el"
arches="${arches} sh4 sh4eb"
arches="${arches} s390x"
for a in ${arches}; do
if [[ -f /proc/sys/fs/binfmt_misc/$a ]] ; then
echo '-1' > /proc/sys/fs/binfmt_misc/$a
fi
done
eend $?
}
# vim: ts=4 :

View File

@ -1,7 +1,7 @@
#!/sbin/runscript #!/sbin/runscript
# Copyright 1999-2013 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/files/qemu-binfmt.initd-r1,v 1.1 2013/01/19 03:42:06 cardoe Exp $ # $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/files/qemu-binfmt.initd-r1,v 1.3 2013/02/17 22:05:22 vapier Exp $
# enable automatic i386/ARM/M68K/MIPS/SPARC/PPC/s390 program execution by the kernel # enable automatic i386/ARM/M68K/MIPS/SPARC/PPC/s390 program execution by the kernel
@ -12,24 +12,17 @@ depend() {
start() { start() {
ebegin "Registering qemu-user binaries" ebegin "Registering qemu-user binaries"
if [[ ! -d /proc/sys/fs/binfmt_misc ]] ; then if [ ! -d /proc/sys/fs/binfmt_misc ] ; then
/sbin/modprobe binfmt_misc modprobe -q binfmt_misc
fi fi
if [[ ! -d /proc/sys/fs/binfmt_misc ]] ; then if [ ! -d /proc/sys/fs/binfmt_misc ] ; then
eerror "You need \"binfmt_misc\" support in your kernel." eend $? "You need support for 'misc binaries' in your kernel!" || return
eend 1
return 1
fi fi
if [[ ! -f /proc/sys/fs/binfmt_misc/register ]] ; then if [ ! -f /proc/sys/fs/binfmt_misc/register ] ; then
mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc &> /dev/null mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc >/dev/null 2>&1
local result=$? eend $? || return
if [[ $result -ne 0 ]] ; then
eend $result
return $result
fi
fi fi
# probe cpu type # probe cpu type
@ -125,7 +118,7 @@ stop() {
arches="${arches} s390x" arches="${arches} s390x"
for a in ${arches}; do for a in ${arches}; do
if [[ -f /proc/sys/fs/binfmt_misc/$a ]] ; then if [ -f /proc/sys/fs/binfmt_misc/$a ] ; then
echo '-1' > /proc/sys/fs/binfmt_misc/$a echo '-1' > /proc/sys/fs/binfmt_misc/$a
fi fi
done done

View File

@ -1,2 +0,0 @@
#!/bin/sh
exec /usr/bin/qemu-system-x86_64 -enable-kvm "$@"

View File

@ -0,0 +1,3 @@
#!/bin/sh
exec /usr/bin/qemu-system-x86_64 -machine accel=kvm "$@"

View File

@ -7,11 +7,17 @@
<name>Doug Goldstein</name> <name>Doug Goldstein</name>
</maintainer> </maintainer>
<use> <use>
<flag name='accessibility'>Adds support for braille displays using brltty</flag>
<flag name='aio'>Enables support for Linux's Async IO</flag> <flag name='aio'>Enables support for Linux's Async IO</flag>
<flag name='alsa'>Enable alsa output for sound emulation</flag> <flag name='alsa'>Enable alsa output for sound emulation</flag>
<flag name='brltty'>Adds support for braille displays using brltty</flag> <flag name='brltty'>Adds support for braille displays using brltty</flag>
<flag name='curl'>Support ISOs / -cdrom directives vis HTTP or HTTPS.</flag> <flag name='curl'>Support ISOs / -cdrom directives vis HTTP or HTTPS.</flag>
<flag name='fdt'>Enables firmware device tree support</flag> <flag name='fdt'>Enables firmware device tree support</flag>
<flag name='glusterfs'>Enables GlusterFS cluster fileystem via
<pkg>sys-cluster/glusterfs</pkg></flag>
<flag name='iscsi'>Enable direct iSCSI support via
<pkg>net-libs/libiscsi</pkg> instead of indirectly via the Linux
block layer that <pkg>sys-block/open-iscsi</pkg> does.</flag>
<flag name='mixemu'>Enable audio mixer emulation. On Fedora, known to cause performance problems when using SDL output and ALSA. For OSS, locks the sound device from other applications.</flag> <flag name='mixemu'>Enable audio mixer emulation. On Fedora, known to cause performance problems when using SDL output and ALSA. For OSS, locks the sound device from other applications.</flag>
<flag name='ncurses'>Enable the ncurses-based console</flag> <flag name='ncurses'>Enable the ncurses-based console</flag>
<flag name='pulseaudio'>Enable pulseaudio output for sound emulation</flag> <flag name='pulseaudio'>Enable pulseaudio output for sound emulation</flag>
@ -24,7 +30,8 @@
<flag name='static'>Enables both 'static-softmmu' and 'static-user'</flag> <flag name='static'>Enables both 'static-softmmu' and 'static-user'</flag>
<flag name='systemtap'>Enable SystemTAP/DTrace tracing</flag> <flag name='systemtap'>Enable SystemTAP/DTrace tracing</flag>
<flag name='tci'>Enable the TCG Interpreter which can speed up or slowdown workloads depending on the host and guest CPUs being emulated. In the future it will be a runtime option but for now its compile time.</flag> <flag name='tci'>Enable the TCG Interpreter which can speed up or slowdown workloads depending on the host and guest CPUs being emulated. In the future it will be a runtime option but for now its compile time.</flag>
<flag name='tls'>Enable TLS support for the VNC console server</flag> <flag name='tls'>Enable TLS support for the VNC console server.
For 1.4 and newer this also enables WebSocket support.</flag>
<flag name='jpeg'>Enable jpeg image support for the VNC console server</flag> <flag name='jpeg'>Enable jpeg image support for the VNC console server</flag>
<flag name='png'>Enable png image support for the VNC console server</flag> <flag name='png'>Enable png image support for the VNC console server</flag>
<flag name="usbredir">Use <pkg>sys-apps/usbredir</pkg> to redirect USB <flag name="usbredir">Use <pkg>sys-apps/usbredir</pkg> to redirect USB
@ -32,7 +39,7 @@
<flag name='uuid'>Enable UUID support in the vdi block driver</flag> <flag name='uuid'>Enable UUID support in the vdi block driver</flag>
<flag name='vde'>Enable VDE-based networking</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='vhost-net'>Enable accelerated networking using vhost-net, see http://www.linux-kvm.org/page/VhostNet</flag>
<flag name='virtfs'>Enable VirtFS support. See http://wiki.qemu.org/Documentation/9psetup</flag> <flag name='virtfs'>Enable VirtFS via virtio-9p-pci / fsdev. See http://wiki.qemu.org/Documentation/9psetup</flag>
<flag name='xattr'> <flag name='xattr'>
Add support for getting and setting POSIX extended attributes, through Add support for getting and setting POSIX extended attributes, through
<pkg>sys-apps/attr</pkg>. Requisite for the virtfs backend. <pkg>sys-apps/attr</pkg>. Requisite for the virtfs backend.

View File

@ -1,377 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.1.1-r1.ebuild,v 1.11 2013/01/12 23:08:29 cardoe Exp $
EAPI="4"
MY_PN="qemu-kvm"
MY_P=${MY_PN}-${PV}
PYTHON_DEPEND="2"
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev
BACKPORTS=1
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git"
inherit git-2
SRC_URI=""
KEYWORDS=""
else
SRC_URI="mirror://sourceforge/kvm/${MY_PN}/${MY_P}.tar.gz
${BACKPORTS:+
http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-bp-${BACKPORTS}.tar.xz}"
KEYWORDS="amd64 ~ppc ~ppc64 x86 ~x86-fbsd"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="http://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt kernel_linux \
kernel_FreeBSD ncurses opengl pulseaudio python rbd sasl sdl \
smartcard spice static tci tls usbredir vde +vhost-net virtfs xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips mipsel ppc ppc64 sh4 sh4eb sparc sparc64 s390x"
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} mips64 mips64el ppcemb xtensa xtensaeb"
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb ppc64abi32 sparc32plus unicore32"
# Setup the default SoftMMU targets, while using the loops
# below to setup the other targets. x86_64 should be the only
# defaults on for qemu-kvm
IUSE="${IUSE} +qemu_softmmu_targets_x86_64"
for target in ${IUSE_SOFTMMU_TARGETS}; do
if [ "x${target}" = "xx86_64" ]; then
continue
fi
IUSE="${IUSE} qemu_softmmu_targets_${target}"
done
for target in ${IUSE_USER_TARGETS}; do
IUSE="${IUSE} qemu_user_targets_${target}"
done
REQUIRED_USE="static? ( !alsa !pulseaudio !bluetooth )
amd64? ( qemu_softmmu_targets_x86_64 )
x86? ( qemu_softmmu_targets_x86_64 )
virtfs? ( xattr )"
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
RDEPEND="
!app-emulation/kqemu
>=dev-libs/glib-2.0
media-libs/libpng
sys-apps/pciutils
~sys-firmware/seabios-1.7.0
~sys-firmware/vgabios-0.6c
virtual/jpeg
aio? ( dev-libs/libaio )
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez )
brltty? ( app-accessibility/brltty )
caps? ( sys-libs/libcap-ng )
curl? ( >=net-misc/curl-7.15.4 )
fdt? ( >=sys-apps/dtc-1.2.0 )
kernel_linux? ( >=sys-apps/util-linux-2.16.0 )
ncurses? ( sys-libs/ncurses )
opengl? ( virtual/opengl )
pulseaudio? ( media-sound/pulseaudio )
python? ( =dev-lang/python-2*[ncurses] )
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl )
sdl? ( static? ( >=media-libs/libsdl-1.2.11[static-libs,X] )
!static? ( >=media-libs/libsdl-1.2.11[X] ) )
static? ( sys-libs/zlib[static-libs(+)] )
!static? ( sys-libs/zlib )
smartcard? ( dev-libs/nss )
spice? ( >=app-emulation/spice-protocol-0.8.1
static? ( >=app-emulation/spice-0.9.0[static-libs] )
!static? ( >=app-emulation/spice-0.9.0 )
)
tls? ( net-libs/gnutls )
usbredir? (
>=sys-apps/usbredir-0.3.4
<sys-apps/usbredir-0.5
)
vde? ( net-misc/vde )
virtfs? ( sys-libs/libcap )
xattr? ( sys-apps/attr )
xen? ( app-emulation/xen-tools )
xfs? ( sys-fs/xfsprogs )"
DEPEND="${RDEPEND}
virtual/pkgconfig
doc? ( app-text/texi2html )
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )"
S="${WORKDIR}/${MY_P}"
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"
QA_WX_LOAD="${QA_PRESTRIPPED}
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-mips
usr/bin/qemu-mipsel
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"
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 use static; then
ewarn "USE=static is very much a moving target because of the packages"
ewarn "we depend on will have their static libs ripped out or wrapped"
ewarn "with USE=static-libs or USE=static due to continued dicsussion"
ewarn "on the mailing list about USE=static's place in Gentoo. As a"
ewarn "result what worked today may not work tomorrow."
fi
}
pkg_setup() {
python_set_active_version 2
python_pkg_setup
enewgroup kvm 78
}
src_prepare() {
# Alter target makefiles to accept CFLAGS set via flag-o
sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \
Makefile Makefile.target || die
# remove part to make udev happy
#sed -e 's~NAME="%k", ~~' -i kvm/scripts/65-kvm.rules || die
python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat"
[[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch
epatch_user
}
src_configure() {
local conf_opts audio_opts user_targets
for target in ${IUSE_SOFTMMU_TARGETS} ; do
use "qemu_softmmu_targets_${target}" && \
softmmu_targets="${softmmu_targets} ${target}-softmmu"
done
for target in ${IUSE_USER_TARGETS} ; do
use "qemu_user_targets_${target}" && \
user_targets="${user_targets} ${target}-linux-user"
done
if [[ -z ${softmmu_targets} ]]; then
eerror "All SoftMMU targets are disabled. This is invalid for qemu-kvm"
die "At least 1 SoftMMU target must be enabled"
else
einfo "Building the following softmmu targets: ${softmmu_targets}"
fi
if [[ -n ${user_targets} ]]; then
einfo "Building the following user targets: ${user_targets}"
conf_opts="${conf_opts} --enable-linux-user"
else
conf_opts="${conf_opts} --disable-linux-user"
fi
# Fix QA issues. QEMU needs executable heaps and we need to mark it as such
conf_opts="${conf_opts} --extra-ldflags=-Wl,-z,execheap"
# Add support for static builds
use static && conf_opts="${conf_opts} --static --disable-pie"
# 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 && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
# audio options
audio_opts="oss"
use alsa && audio_opts="alsa ${audio_opts}"
use pulseaudio && audio_opts="pa ${audio_opts}"
use sdl && audio_opts="sdl ${audio_opts}"
# conditionally making UUID work on Linux only is wrong
# but the Gentoo/FreeBSD guys need to figure out what
# provides libuuid on their platform
# --enable-vnc-thread will go away in 1.2
# $(use_enable xen xen-pci-passthrough) for 1.2
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-bsd-user \
--disable-libiscsi \
--disable-strip \
--disable-werror \
--enable-guest-agent \
--enable-vnc-jpeg \
--enable-vnc-png \
--enable-vnc-thread \
--python=python2 \
$(use_enable aio linux-aio) \
$(use_enable bluetooth bluez) \
$(use_enable brltty brlapi) \
$(use_enable caps cap-ng) \
$(use_enable curl) \
$(use_enable debug debug-info) \
$(use_enable debug debug-mon) \
$(use_enable debug debug-tcg) \
$(use_enable doc docs) \
$(use_enable fdt) \
$(use_enable kernel_linux kvm) \
$(use_enable kernel_linux kvm-device-assignment) \
$(use_enable kernel_linux nptl) \
$(use_enable kernel_linux uuid) \
$(use_enable ncurses curses) \
$(use_enable opengl) \
$(use_enable rbd) \
$(use_enable sasl vnc-sasl) \
$(use_enable sdl) \
$(use_enable smartcard smartcard) \
$(use_enable smartcard smartcard-nss) \
$(use_enable spice) \
$(use_enable tci tcg-interpreter) \
$(use_enable tls vnc-tls) \
$(use_enable usbredir usb-redir) \
$(use_enable vde) \
$(use_enable vhost-net) \
$(use_enable virtfs) \
$(use_enable xattr attr) \
$(use_enable xen) \
$(use_enable xfs xfsctl) \
--audio-drv-list="${audio_opts}" \
--target-list="${softmmu_targets} ${user_targets}" \
--cc="$(tc-getCC)" \
--host-cc="$(tc-getBUILD_CC)" \
${conf_opts} \
|| die "configure failed"
# this is for qemu upstream's threaded support which is
# in development and broken
# the kvm project has its own support for threaded IO
# which is always on and works
# --enable-io-thread \
# FreeBSD's kernel does not support QEMU assigning/grabbing
# host USB devices yet
use kernel_FreeBSD && \
sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak
}
src_install() {
emake DESTDIR="${ED}" install
if [[ -n ${softmmu_targets} ]]; then
if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules
fi
if use qemu_softmmu_targets_x86_64 ; then
dobin "${FILESDIR}"/qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}"
else
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of /usr/bin/qemu-kvm and /usr/bin/kvm"
fi
fi
dodoc Changelog MAINTAINERS TODO pci-ids.txt
newdoc pc-bios/README README.pc-bios
if use doc; then
dohtml qemu-doc.html qemu-tech.html || die
fi
use python && dobin scripts/kvm/kvm_stat
# Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin"
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
# 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"
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
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]]; then
elog "If you don't have kvm compiled into the kernel, make sure you have"
elog "the kernel module loaded before running kvm. The easiest way to"
elog "ensure that the kernel module is loaded is to load it on boot."
elog "For AMD CPUs the module is called 'kvm-amd'"
elog "For Intel CPUs the module is called 'kvm-intel'"
elog "Please review /etc/conf.d/modules for how to load these"
elog
elog "Make sure your user is in the 'kvm' group"
elog "Just run 'gpasswd -a <USER> kvm', then have <USER> re-login."
elog
elog "The ssl USE flag was renamed to tls, so adjust your USE flags."
elog "The nss USE flag was renamed to smartcard, so adjust your USE flags."
fi
}

View File

@ -1,369 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.1.2-r2.ebuild,v 1.13 2013/01/12 23:08:29 cardoe Exp $
EAPI="4"
MY_PN="qemu-kvm"
MY_P=${MY_PN}-${PV}
PYTHON_DEPEND="2"
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev
BACKPORTS=6cee76f0
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git"
inherit git-2
SRC_URI=""
KEYWORDS=""
else
SRC_URI="mirror://sourceforge/kvm/${MY_PN}/${MY_P}.tar.gz
${BACKPORTS:+
http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}"
KEYWORDS="amd64 ~ppc ~ppc64 x86 ~x86-fbsd"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="http://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \
kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl sdl selinux \
smartcard spice static systemtap tci +threads tls usbredir +uuid vde +vhost-net \
virtfs +vnc xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips mipsel ppc ppc64 sh4 sh4eb sparc sparc64 s390x"
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 mips64 mips64el ppcemb xtensa xtensaeb"
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb ppc64abi32 sparc32plus unicore32"
# Setup the default SoftMMU targets, while using the loops
# below to setup the other targets.
REQUIRED_USE="|| ("
for target in ${IUSE_SOFTMMU_TARGETS}; do
IUSE="${IUSE} qemu_softmmu_targets_${target}"
REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}"
done
REQUIRED_USE="${REQUIRED_USE} )"
for target in ${IUSE_USER_TARGETS}; do
IUSE="${IUSE} qemu_user_targets_${target}"
done
# Block USE flag configurations known to not work
REQUIRED_USE="${REQUIRED_USE}
static? ( !alsa !pulseaudio !bluetooth )
virtfs? ( xattr )"
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sys-apps/pciutils[static-libs(+)]
sys-libs/zlib[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.2.0[static-libs(+)] )
jpeg? ( virtual/jpeg[static-libs(+)] )
ncurses? ( sys-libs/ncurses[static-libs(+)] )
png? ( media-libs/libpng[static-libs(+)] )
rbd? ( sys-cluster/ceph[static-libs(+)] )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] )
spice? ( >=app-emulation/spice-0.9.0[static-libs(+)] )
tls? ( net-libs/gnutls[static-libs(+)] )
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
xattr? ( sys-apps/attr[static-libs(+)] )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
!app-emulation/kqemu
~sys-firmware/seabios-1.7.0
~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.6c
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez )
brltty? ( app-accessibility/brltty )
opengl? ( virtual/opengl )
pulseaudio? ( media-sound/pulseaudio )
python? ( =dev-lang/python-2*[ncurses] )
sdl? ( media-libs/libsdl[X] )
selinux? ( sec-policy/selinux-qemu )
smartcard? ( dev-libs/nss )
spice? ( >=app-emulation/spice-protocol-0.8.1 )
systemtap? ( dev-util/systemtap )
usbredir? (
>=sys-apps/usbredir-0.3.4
<sys-apps/usbredir-0.5
)
virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools )"
DEPEND="${RDEPEND}
virtual/pkgconfig
doc? ( app-text/texi2html )
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? ( ${LIB_DEPEND} )"
S="${WORKDIR}/${MY_P}"
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"
QA_WX_LOAD="${QA_PRESTRIPPED}
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-mips
usr/bin/qemu-mipsel
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"
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 use static; then
ewarn "USE=static is very much a moving target because of the packages"
ewarn "we depend on will have their static libs ripped out or wrapped"
ewarn "with USE=static-libs or USE=static due to continued dicsussion"
ewarn "on the mailing list about USE=static's place in Gentoo. As a"
ewarn "result what worked today may not work tomorrow."
fi
}
pkg_setup() {
python_set_active_version 2
python_pkg_setup
enewgroup kvm 78
}
src_prepare() {
# Alter target makefiles to accept CFLAGS set via flag-o
sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \
Makefile Makefile.target || die
python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat"
[[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch
epatch_user
}
src_configure() {
local conf_opts audio_opts user_targets
for target in ${IUSE_SOFTMMU_TARGETS} ; do
use "qemu_softmmu_targets_${target}" && \
softmmu_targets="${softmmu_targets} ${target}-softmmu"
done
for target in ${IUSE_USER_TARGETS} ; do
use "qemu_user_targets_${target}" && \
user_targets="${user_targets} ${target}-linux-user"
done
einfo "Building the following softmmu targets: ${softmmu_targets}"
if [[ -n ${user_targets} ]]; then
einfo "Building the following user targets: ${user_targets}"
conf_opts="${conf_opts} --enable-linux-user"
else
conf_opts="${conf_opts} --disable-linux-user"
fi
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Fix QA issues. QEMU needs executable heaps and we need to mark it as such
#conf_opts="${conf_opts} --extra-ldflags=-Wl,-z,execheap"
# Add support for static builds
use static && conf_opts="${conf_opts} --static --disable-pie"
# 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 && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
# audio options
audio_opts="oss"
use alsa && audio_opts="alsa,${audio_opts}"
use sdl && audio_opts="sdl,${audio_opts}"
use pulseaudio && audio_opts="pa,${audio_opts}"
use mixemu && conf_opts="${conf_opts} --enable-mixemu"
# --enable-vnc-thread will go away in 1.2
# $(use_enable xen xen-pci-passthrough) for 1.2
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-bsd-user \
--disable-guest-agent \
--disable-libiscsi \
--disable-strip \
--disable-werror \
--python=python2 \
$(use_enable aio linux-aio) \
$(use_enable bluetooth bluez) \
$(use_enable brltty brlapi) \
$(use_enable caps cap-ng) \
$(use_enable curl) \
$(use_enable debug debug-info) \
$(use_enable debug debug-mon) \
$(use_enable debug debug-tcg) \
$(use_enable doc docs) \
$(use_enable fdt) \
$(use_enable jpeg vnc-jpeg) \
$(use_enable kernel_linux kvm) \
$(use_enable kernel_linux kvm-device-assignment) \
$(use_enable kernel_linux nptl) \
$(use_enable ncurses curses) \
$(use_enable opengl) \
$(use_enable png vnc-png) \
$(use_enable rbd) \
$(use_enable sasl vnc-sasl) \
$(use_enable sdl) \
$(use_enable smartcard smartcard) \
$(use_enable smartcard smartcard-nss) \
$(use_enable spice) \
$(use_enable tci tcg-interpreter) \
$(use_enable threads vnc-thread) \
$(use_enable tls vnc-tls) \
$(use_enable usbredir usb-redir) \
$(use_enable uuid) \
$(use_enable vde) \
$(use_enable vhost-net) \
$(use_enable virtfs) \
$(use_enable vnc) \
$(use_enable xattr attr) \
$(use_enable xen) \
$(use_enable xfs xfsctl) \
--audio-drv-list=${audio_opts} \
--target-list="${softmmu_targets} ${user_targets}" \
--cc="$(tc-getCC)" \
--host-cc="$(tc-getBUILD_CC)" \
${conf_opts} \
|| die "configure failed"
# FreeBSD's kernel does not support QEMU assigning/grabbing
# host USB devices yet
use kernel_FreeBSD && \
sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak
}
src_install() {
emake DESTDIR="${ED}" install
if [[ -n ${softmmu_targets} ]]; then
if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules
fi
if use qemu_softmmu_targets_x86_64 ; then
dobin "${FILESDIR}"/qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}"
else
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of /usr/bin/qemu-kvm"
fi
fi
dodoc Changelog MAINTAINERS TODO pci-ids.txt
newdoc pc-bios/README README.pc-bios
if use doc; then
dohtml qemu-doc.html qemu-tech.html || die
fi
use python && dobin scripts/kvm/kvm_stat
# Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin"
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
# 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"
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
# Remove sgabios since we're using the sgabios packaged one
rm "${ED}/usr/share/qemu/sgabios.bin"
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]]; then
elog "If you don't have kvm compiled into the kernel, make sure you have"
elog "the kernel module loaded before running kvm. The easiest way to"
elog "ensure that the kernel module is loaded is to load it on boot."
elog "For AMD CPUs the module is called 'kvm-amd'"
elog "For Intel CPUs the module is called 'kvm-intel'"
elog "Please review /etc/conf.d/modules for how to load these"
elog
elog "Make sure your user is in the 'kvm' group"
elog "Just run 'gpasswd -a <USER> kvm', then have <USER> re-login."
elog
elog "The ssl USE flag was renamed to tls, so adjust your USE flags."
elog "The nss USE flag was renamed to smartcard, so adjust your USE flags."
fi
}

View File

@ -1,378 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.2.1.ebuild,v 1.8 2013/01/12 23:08:29 cardoe Exp $
EAPI="4"
MY_PN="qemu-kvm"
MY_P=${MY_PN}-1.2.0
PYTHON_DEPEND="2"
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev
BACKPORTS=3a5940fb
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git"
inherit git-2
SRC_URI=""
KEYWORDS=""
else
SRC_URI="mirror://sourceforge/kvm/${MY_PN}/${MY_P}.tar.gz
${BACKPORTS:+
http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="http://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \
kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl +seccomp \
sdl selinux smartcard spice static systemtap tci +threads tls usbredir +uuid vde \
+vhost-net virtfs +vnc xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips mipsel ppc ppc64 sh4 sh4eb sparc sparc64 s390x"
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 mips64 mips64el ppcemb xtensa xtensaeb"
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb ppc64abi32 sparc32plus unicore32"
# Setup the default SoftMMU targets, while using the loops
# below to setup the other targets.
REQUIRED_USE="|| ("
for target in ${IUSE_SOFTMMU_TARGETS}; do
IUSE="${IUSE} qemu_softmmu_targets_${target}"
REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}"
done
REQUIRED_USE="${REQUIRED_USE} )"
for target in ${IUSE_USER_TARGETS}; do
IUSE="${IUSE} qemu_user_targets_${target}"
done
# Block USE flag configurations known to not work
REQUIRED_USE="${REQUIRED_USE}
static? ( !alsa !pulseaudio !bluetooth )
virtfs? ( xattr )"
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sys-apps/pciutils[static-libs(+)]
sys-libs/zlib[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.2.0[static-libs(+)] )
jpeg? ( virtual/jpeg[static-libs(+)] )
ncurses? ( sys-libs/ncurses[static-libs(+)] )
png? ( media-libs/libpng[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-1.0.0[static-libs(+)] )
spice? ( >=app-emulation/spice-0.9.0[static-libs(+)] )
tls? ( net-libs/gnutls[static-libs(+)] )
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
xattr? ( sys-apps/attr[static-libs(+)] )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
!app-emulation/kqemu
sys-firmware/ipxe
~sys-firmware/seabios-1.7.1
~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez )
brltty? ( app-accessibility/brltty )
opengl? ( virtual/opengl )
pulseaudio? ( media-sound/pulseaudio )
python? ( =dev-lang/python-2*[ncurses] )
sdl? ( media-libs/libsdl[X] )
selinux? ( sec-policy/selinux-qemu )
smartcard? ( dev-libs/nss )
spice? ( >=app-emulation/spice-protocol-0.12.0 )
systemtap? ( dev-util/systemtap )
usbredir? ( ~sys-apps/usbredir-0.4.4 )
virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools )"
DEPEND="${RDEPEND}
virtual/pkgconfig
doc? ( app-text/texi2html )
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? ( ${LIB_DEPEND} )"
S="${WORKDIR}/${MY_P}"
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"
QA_WX_LOAD="${QA_PRESTRIPPED}
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-mips
usr/bin/qemu-mipsel
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"
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 use static; then
ewarn "USE=static is very much a moving target because of the packages"
ewarn "we depend on will have their static libs ripped out or wrapped"
ewarn "with USE=static-libs or USE=static due to continued dicsussion"
ewarn "on the mailing list about USE=static's place in Gentoo. As a"
ewarn "result what worked today may not work tomorrow."
fi
}
pkg_setup() {
python_set_active_version 2
python_pkg_setup
enewgroup kvm 78
}
src_prepare() {
# Alter target makefiles to accept CFLAGS set via flag-o
sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \
Makefile Makefile.target || die
python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat"
epatch "${FILESDIR}"/qemu-1.2.0-cflags.patch
[[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch
epatch_user
}
src_configure() {
local conf_opts audio_opts user_targets
for target in ${IUSE_SOFTMMU_TARGETS} ; do
use "qemu_softmmu_targets_${target}" && \
softmmu_targets="${softmmu_targets} ${target}-softmmu"
done
for target in ${IUSE_USER_TARGETS} ; do
use "qemu_user_targets_${target}" && \
user_targets="${user_targets} ${target}-linux-user"
done
einfo "Building the following softmmu targets: ${softmmu_targets}"
if [[ -n ${user_targets} ]]; then
einfo "Building the following user targets: ${user_targets}"
conf_opts="${conf_opts} --enable-linux-user"
else
conf_opts="${conf_opts} --disable-linux-user"
fi
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Fix QA issues. QEMU needs executable heaps and we need to mark it as such
#conf_opts="${conf_opts} --extra-ldflags=-Wl,-z,execheap"
# Add support for static builds
use static && conf_opts="${conf_opts} --static --disable-pie"
# 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 && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
# audio options
audio_opts="oss"
use alsa && audio_opts="alsa,${audio_opts}"
use sdl && audio_opts="sdl,${audio_opts}"
use pulseaudio && audio_opts="pa,${audio_opts}"
use mixemu && conf_opts="${conf_opts} --enable-mixemu"
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-bsd-user \
--disable-guest-agent \
--disable-libiscsi \
--disable-strip \
--disable-werror \
--python=python2 \
$(use_enable aio linux-aio) \
$(use_enable bluetooth bluez) \
$(use_enable brltty brlapi) \
$(use_enable caps cap-ng) \
$(use_enable curl) \
$(use_enable debug debug-info) \
$(use_enable debug debug-tcg) \
$(use_enable doc docs) \
$(use_enable fdt) \
$(use_enable jpeg vnc-jpeg) \
$(use_enable kernel_linux kvm) \
$(use_enable kernel_linux nptl) \
$(use_enable ncurses curses) \
$(use_enable opengl) \
$(use_enable png vnc-png) \
$(use_enable rbd) \
$(use_enable sasl vnc-sasl) \
$(use_enable sdl) \
$(use_enable seccomp) \
$(use_enable smartcard smartcard) \
$(use_enable smartcard smartcard-nss) \
$(use_enable spice) \
$(use_enable tci tcg-interpreter) \
$(use_enable tls vnc-tls) \
$(use_enable usbredir usb-redir) \
$(use_enable uuid) \
$(use_enable vde) \
$(use_enable vhost-net) \
$(use_enable virtfs) \
$(use_enable vnc) \
$(use_enable xattr attr) \
$(use_enable xen) \
$(use_enable xen xen-pci-passthrough) \
$(use_enable xfs xfsctl) \
--audio-drv-list=${audio_opts} \
--target-list="${softmmu_targets} ${user_targets}" \
--cc="$(tc-getCC)" \
--host-cc="$(tc-getBUILD_CC)" \
${conf_opts} \
|| die "configure failed"
# FreeBSD's kernel does not support QEMU assigning/grabbing
# host USB devices yet
use kernel_FreeBSD && \
sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak
}
src_install() {
emake DESTDIR="${ED}" install
if [[ -n ${softmmu_targets} ]]; then
if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules
fi
if use qemu_softmmu_targets_x86_64 ; then
dosym /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}"
else
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of the /usr/bin/qemu-kvm symlink."
fi
fi
dodoc Changelog MAINTAINERS TODO pci-ids.txt
newdoc pc-bios/README README.pc-bios
if use doc; then
dohtml qemu-doc.html qemu-tech.html || die
fi
use python && dobin scripts/kvm/kvm_stat
# Avoid collision with app-emulation/libcacard
use smartcard && mv "${ED}/usr/bin/vscclient" "${ED}/usr/bin/qemu-vscclient"
# Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin"
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
# 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"
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
# Remove sgabios since we're using the sgabios packaged one
rm "${ED}/usr/share/qemu/sgabios.bin"
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
# Remove iPXE since we're using the iPXE packaged one
rm "${ED}"/usr/share/qemu/pxe-*.rom
dosym ../ipxe/808610de.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
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]]; then
elog "If you don't have kvm compiled into the kernel, make sure you have"
elog "the kernel module loaded before running kvm. The easiest way to"
elog "ensure that the kernel module is loaded is to load it on boot."
elog "For AMD CPUs the module is called 'kvm-amd'"
elog "For Intel CPUs the module is called 'kvm-intel'"
elog "Please review /etc/conf.d/modules for how to load these"
elog
elog "Make sure your user is in the 'kvm' group"
elog "Just run 'gpasswd -a <USER> kvm', then have <USER> re-login."
elog
elog "The ssl USE flag was renamed to tls, so adjust your USE flags."
elog "The nss USE flag was renamed to smartcard, so adjust your USE flags."
fi
}

View File

@ -1,411 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.2.2.ebuild,v 1.10 2013/01/14 23:06:16 cardoe Exp $
EAPI="4"
MY_PN="qemu-kvm"
MY_P=${MY_PN}-1.2.0
PYTHON_DEPEND="2"
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev
BACKPORTS=b6773f5e
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git"
inherit git-2
SRC_URI=""
KEYWORDS=""
else
SRC_URI="mirror://sourceforge/kvm/${MY_PN}/${MY_P}.tar.gz
${BACKPORTS:+
http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="http://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \
kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl +seccomp \
sdl selinux smartcard spice static systemtap tci +threads tls usbredir +uuid \
vde +vhost-net virtfs +vnc xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips
mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32"
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 mips64 mips64el ppcemb xtensa xtensaeb"
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb ppc64abi32 sparc32plus"
# Setup the default SoftMMU targets, while using the loops
# below to setup the other targets.
REQUIRED_USE="|| ("
for target in ${IUSE_SOFTMMU_TARGETS}; do
IUSE="${IUSE} qemu_softmmu_targets_${target}"
REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}"
done
REQUIRED_USE="${REQUIRED_USE} )"
for target in ${IUSE_USER_TARGETS}; do
IUSE="${IUSE} qemu_user_targets_${target}"
done
# Block USE flag configurations known to not work
REQUIRED_USE="${REQUIRED_USE}
static? ( !alsa !pulseaudio !bluetooth !opengl )
virtfs? ( xattr )"
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sys-apps/pciutils[static-libs(+)]
sys-libs/zlib[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.2.0[static-libs(+)] )
jpeg? ( virtual/jpeg[static-libs(+)] )
ncurses? ( sys-libs/ncurses[static-libs(+)] )
png? ( media-libs/libpng[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-1.0.1[static-libs(+)] )
spice? ( >=app-emulation/spice-0.9.0[static-libs(+)] )
tls? ( net-libs/gnutls[static-libs(+)] )
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
xattr? ( sys-apps/attr[static-libs(+)] )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
!app-emulation/kqemu
qemu_softmmu_targets_i386? (
sys-firmware/ipxe
~sys-firmware/seabios-1.7.1
~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
)
qemu_softmmu_targets_x86_64? (
sys-firmware/ipxe
~sys-firmware/seabios-1.7.1
~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
)
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez )
brltty? ( app-accessibility/brltty )
opengl? ( virtual/opengl )
pulseaudio? ( media-sound/pulseaudio )
python? ( =dev-lang/python-2*[ncurses] )
sdl? ( media-libs/libsdl[X] )
selinux? ( sec-policy/selinux-qemu )
smartcard? ( dev-libs/nss )
spice? ( >=app-emulation/spice-protocol-0.12.2 )
systemtap? ( dev-util/systemtap )
usbredir? ( ~sys-apps/usbredir-0.4.4 )
virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools )"
DEPEND="${RDEPEND}
virtual/pkgconfig
doc? ( app-text/texi2html )
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? ( ${LIB_DEPEND} )"
S="${WORKDIR}/${MY_P}"
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"
QA_WX_LOAD="${QA_PRESTRIPPED}
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"
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 use static; then
ewarn "USE=static is very much a moving target because of the packages"
ewarn "we depend on will have their static libs ripped out or wrapped"
ewarn "with USE=static-libs or USE=static due to continued dicsussion"
ewarn "on the mailing list about USE=static's place in Gentoo. As a"
ewarn "result what worked today may not work tomorrow."
fi
}
pkg_setup() {
python_set_active_version 2
python_pkg_setup
enewgroup kvm 78
}
src_prepare() {
# Alter target makefiles to accept CFLAGS set via flag-o
sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \
Makefile Makefile.target || die
python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat"
python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap"
epatch "${FILESDIR}"/qemu-1.2.0-cflags.patch
[[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch
# Fix ld and objcopy being called directly
tc-export LD OBJCOPY
# Verbose builds
MAKEOPTS+=" V=1"
epatch_user
}
src_configure() {
local conf_opts audio_opts
for target in ${IUSE_SOFTMMU_TARGETS} ; do
use "qemu_softmmu_targets_${target}" && \
softmmu_targets="${softmmu_targets} ${target}-softmmu"
done
for target in ${IUSE_USER_TARGETS} ; do
use "qemu_user_targets_${target}" && \
user_targets="${user_targets} ${target}-linux-user"
done
einfo "Building the following softmmu targets: ${softmmu_targets}"
if [[ -n ${user_targets} ]]; then
einfo "Building the following user targets: ${user_targets}"
conf_opts="${conf_opts} --enable-linux-user"
else
conf_opts="${conf_opts} --disable-linux-user"
fi
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Fix QA issues. QEMU needs executable heaps and we need to mark it as such
#conf_opts="${conf_opts} --extra-ldflags=-Wl,-z,execheap"
# Add support for static builds
use static && conf_opts="${conf_opts} --static --disable-pie"
# 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 && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
# audio options
audio_opts="oss"
use alsa && audio_opts="alsa,${audio_opts}"
use sdl && audio_opts="sdl,${audio_opts}"
use pulseaudio && audio_opts="pa,${audio_opts}"
use mixemu && conf_opts="${conf_opts} --enable-mixemu"
./configure --prefix=/usr \
--sysconfdir=/etc \
--docdir=/usr/share/doc/${PF}/html \
--disable-bsd-user \
--disable-guest-agent \
--disable-libiscsi \
--disable-strip \
--disable-werror \
--python=python2 \
$(use_enable aio linux-aio) \
$(use_enable bluetooth bluez) \
$(use_enable brltty brlapi) \
$(use_enable caps cap-ng) \
$(use_enable curl) \
$(use_enable debug debug-info) \
$(use_enable debug debug-tcg) \
$(use_enable doc docs) \
$(use_enable fdt) \
$(use_enable jpeg vnc-jpeg) \
$(use_enable kernel_linux kvm) \
$(use_enable kernel_linux nptl) \
$(use_enable ncurses curses) \
$(use_enable opengl) \
$(use_enable png vnc-png) \
$(use_enable rbd) \
$(use_enable sasl vnc-sasl) \
$(use_enable sdl) \
$(use_enable seccomp) \
$(use_enable smartcard smartcard) \
$(use_enable smartcard smartcard-nss) \
$(use_enable spice) \
$(use_enable tci tcg-interpreter) \
$(use_enable tls vnc-tls) \
$(use_enable usbredir usb-redir) \
$(use_enable uuid) \
$(use_enable vde) \
$(use_enable vhost-net) \
$(use_enable virtfs) \
$(use_enable vnc) \
$(use_enable xattr attr) \
$(use_enable xen) \
$(use_enable xen xen-pci-passthrough) \
$(use_enable xfs xfsctl) \
--audio-drv-list=${audio_opts} \
--target-list="${softmmu_targets} ${user_targets}" \
--cc="$(tc-getCC)" \
--host-cc="$(tc-getBUILD_CC)" \
${conf_opts} \
|| die "configure failed"
# FreeBSD's kernel does not support QEMU assigning/grabbing
# host USB devices yet
use kernel_FreeBSD && \
sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak
}
src_install() {
emake DESTDIR="${ED}" install
if [[ -n ${softmmu_targets} ]]; then
if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules
fi
if use qemu_softmmu_targets_x86_64 ; then
dosym /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}"
elif use x86 || use amd64; then
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of the /usr/bin/qemu-kvm symlink."
fi
fi
dodoc Changelog MAINTAINERS TODO pci-ids.txt
newdoc pc-bios/README README.pc-bios
use python && dobin scripts/kvm/kvm_stat
use python && dobin scripts/kvm/vmxcap
# Avoid collision with app-emulation/libcacard
use smartcard && mv "${ED}/usr/bin/vscclient" "${ED}/usr/bin/qemu-vscclient"
# Install binfmt handler init script for user targets
[[ -n ${user_targets} ]] && \
newinitd "${FILESDIR}/qemu-binfmt.initd" qemu-binfmt
# 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/808610de.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
}
pkg_postinst() {
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
elog "If you don't have kvm compiled into the kernel, make sure you have"
elog "the kernel module loaded before running kvm. The easiest way to"
elog "ensure that the kernel module is loaded is to load it on boot."
elog "For AMD CPUs the module is called 'kvm-amd'"
elog "For Intel CPUs the module is called 'kvm-intel'"
elog "Please review /etc/conf.d/modules for how to load these"
elog
elog "Make sure your user is in the 'kvm' group"
elog "Just run 'gpasswd -a <USER> kvm', then have <USER> re-login."
elog
fi
elog "The ssl USE flag was renamed to tls, so adjust your USE flags."
elog "The nss USE flag was renamed to smartcard, so adjust your USE flags."
}

View File

@ -1,37 +1,36 @@
# Copyright 1999-2013 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.2.2-r100.ebuild,v 1.2 2013/02/02 01:14:38 mr_bones_ Exp $ # $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.4.1.ebuild,v 1.4 2013/06/04 12:32:54 ago Exp $
EAPI=5 EAPI=5
MY_PN="qemu-kvm" PYTHON_DEPEND="2:2.4"
MY_P=${MY_PN}-1.2.0 inherit eutils flag-o-matic linux-info toolchain-funcs multilib python \
user udev fcaps
PYTHON_DEPEND="2" BACKPORTS=a2231a9d
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev
BACKPORTS=9489a8c0-1
if [[ ${PV} = *9999* ]]; then if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git" EGIT_REPO_URI="git://git.qemu.org/qemu.git"
inherit git-2 inherit git-2
SRC_URI="" SRC_URI=""
KEYWORDS="" KEYWORDS=""
else else
SRC_URI="mirror://sourceforge/kvm/${MY_PN}/${MY_P}.tar.gz SRC_URI="http://wiki.qemu-project.org/download//${P}.tar.bz2
${BACKPORTS:+ ${BACKPORTS:+
http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}" http://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd" KEYWORDS="amd64 ~ppc ~ppc64 x86 ~x86-fbsd"
fi fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="http://www.linux-kvm.org" HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2" LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0" SLOT="0"
IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \ IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt iscsi +jpeg \
kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl +seccomp \ kernel_linux kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python \
sdl selinux smartcard spice static static-softmmu static-user systemtap tci \ rbd sasl +seccomp sdl selinux smartcard spice static static-softmmu \
+threads tls usbredir +uuid vde +vhost-net virtfs +vnc xattr xen xfs" static-user systemtap tci test +threads tls usbredir +uuid vde +vhost-net \
virtfs +vnc xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips
mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32" mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32"
@ -62,6 +61,7 @@ REQUIRED_USE="${REQUIRED_USE}
LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)] LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sys-apps/pciutils[static-libs(+)] sys-apps/pciutils[static-libs(+)]
sys-libs/zlib[static-libs(+)] sys-libs/zlib[static-libs(+)]
>=x11-libs/pixman-0.28.0[static-libs(+)]
aio? ( dev-libs/libaio[static-libs(+)] ) aio? ( dev-libs/libaio[static-libs(+)] )
caps? ( sys-libs/libcap-ng[static-libs(+)] ) caps? ( sys-libs/libcap-ng[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
@ -73,7 +73,7 @@ LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] ) sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] )
seccomp? ( >=sys-libs/libseccomp-1.0.1[static-libs(+)] ) seccomp? ( >=sys-libs/libseccomp-1.0.1[static-libs(+)] )
spice? ( >=app-emulation/spice-0.9.0[static-libs(+)] ) spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] )
tls? ( net-libs/gnutls[static-libs(+)] ) tls? ( net-libs/gnutls[static-libs(+)] )
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] ) uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] ) vde? ( net-misc/vde[static-libs(+)] )
@ -83,28 +83,29 @@ RDEPEND="!static-softmmu? ( ${LIB_DEPEND//\[static-libs(+)]} )
!app-emulation/kqemu !app-emulation/kqemu
qemu_softmmu_targets_i386? ( qemu_softmmu_targets_i386? (
sys-firmware/ipxe sys-firmware/ipxe
~sys-firmware/seabios-1.7.1 ~sys-firmware/seabios-1.7.2.1
~sys-firmware/sgabios-0.1_pre8 ~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a ~sys-firmware/vgabios-0.7a
) )
qemu_softmmu_targets_x86_64? ( qemu_softmmu_targets_x86_64? (
sys-firmware/ipxe sys-firmware/ipxe
~sys-firmware/seabios-1.7.1 ~sys-firmware/seabios-1.7.2.1
~sys-firmware/sgabios-0.1_pre8 ~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a ~sys-firmware/vgabios-0.7a
) )
alsa? ( >=media-libs/alsa-lib-1.0.13 ) alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez ) bluetooth? ( net-wireless/bluez )
brltty? ( app-accessibility/brltty ) brltty? ( app-accessibility/brltty )
iscsi? ( net-libs/libiscsi )
opengl? ( virtual/opengl ) opengl? ( virtual/opengl )
pulseaudio? ( media-sound/pulseaudio ) pulseaudio? ( media-sound/pulseaudio )
python? ( =dev-lang/python-2*[ncurses] ) python? ( =dev-lang/python-2*[ncurses] )
sdl? ( media-libs/libsdl[X] ) sdl? ( media-libs/libsdl[X] )
selinux? ( sec-policy/selinux-qemu ) selinux? ( sec-policy/selinux-qemu )
smartcard? ( dev-libs/nss ) smartcard? ( dev-libs/nss !app-emulation/libcacard )
spice? ( >=app-emulation/spice-protocol-0.12.2 ) spice? ( >=app-emulation/spice-protocol-0.12.3 )
systemtap? ( dev-util/systemtap ) systemtap? ( dev-util/systemtap )
usbredir? ( ~sys-apps/usbredir-0.4.4 ) usbredir? ( >=sys-apps/usbredir-0.6 )
virtfs? ( sys-libs/libcap ) virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools )" xen? ( app-emulation/xen-tools )"
@ -112,9 +113,11 @@ DEPEND="${RDEPEND}
virtual/pkgconfig virtual/pkgconfig
doc? ( app-text/texi2html ) doc? ( app-text/texi2html )
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static-softmmu? ( ${LIB_DEPEND} )" static-softmmu? ( ${LIB_DEPEND} )
test? (
S="${WORKDIR}/${MY_P}" dev-libs/glib[utils]
sys-devel/bc
)"
STRIP_MASK="/usr/share/qemu/palcode-clipper" STRIP_MASK="/usr/share/qemu/palcode-clipper"
@ -207,7 +210,7 @@ src_prepare() {
python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat" python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat"
python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap" python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap"
epatch "${FILESDIR}"/qemu-1.2.0-cflags.patch epatch "${FILESDIR}"/qemu-9999-cflags.patch
[[ -n ${BACKPORTS} ]] && \ [[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch epatch
@ -235,10 +238,10 @@ qemu_src_configure() {
conf_opts="--prefix=/usr" conf_opts="--prefix=/usr"
conf_opts+=" --sysconfdir=/etc" conf_opts+=" --sysconfdir=/etc"
conf_opts+=" --libdir=/usr/$(get_libdir)"
conf_opts+=" --docdir=/usr/share/doc/${PF}/html" conf_opts+=" --docdir=/usr/share/doc/${PF}/html"
conf_opts+=" --disable-bsd-user" conf_opts+=" --disable-bsd-user"
conf_opts+=" --disable-guest-agent" conf_opts+=" --disable-guest-agent"
conf_opts+=" --disable-libiscsi"
conf_opts+=" --disable-strip" conf_opts+=" --disable-strip"
conf_opts+=" --disable-werror" conf_opts+=" --disable-werror"
conf_opts+=" --python=python2" conf_opts+=" --python=python2"
@ -253,13 +256,22 @@ qemu_src_configure() {
conf_opts+=" --enable-linux-user" conf_opts+=" --enable-linux-user"
conf_opts+=" --disable-system" conf_opts+=" --disable-system"
conf_opts+=" --target-list=${user_targets}" conf_opts+=" --target-list=${user_targets}"
conf_opts+=" --disable-blobs"
conf_opts+=" --disable-bluez" conf_opts+=" --disable-bluez"
conf_opts+=" --disable-curses"
conf_opts+=" --disable-kvm"
conf_opts+=" --disable-libiscsi"
conf_opts+=" $(use_enable seccomp)"
conf_opts+=" --disable-sdl" conf_opts+=" --disable-sdl"
conf_opts+=" --disable-smartcard-nss"
conf_opts+=" --disable-tools"
conf_opts+=" --disable-vde"
fi fi
if [[ ${buildtype} == "softmmu" ]]; then if [[ ${buildtype} == "softmmu" ]]; then
conf_opts+=" --disable-linux-user" conf_opts+=" --disable-linux-user"
conf_opts+=" --enable-system" conf_opts+=" --enable-system"
conf_opts+=" --with-system-pixman"
conf_opts+=" --target-list=${softmmu_targets}" conf_opts+=" --target-list=${softmmu_targets}"
conf_opts+=" $(use_enable bluetooth bluez)" conf_opts+=" $(use_enable bluetooth bluez)"
conf_opts+=" $(use_enable sdl)" conf_opts+=" $(use_enable sdl)"
@ -268,6 +280,7 @@ qemu_src_configure() {
conf_opts+=" $(use_enable caps cap-ng)" conf_opts+=" $(use_enable caps cap-ng)"
conf_opts+=" $(use_enable curl)" conf_opts+=" $(use_enable curl)"
conf_opts+=" $(use_enable fdt)" conf_opts+=" $(use_enable fdt)"
conf_opts+=" $(use_enable iscsi libiscsi)"
conf_opts+=" $(use_enable jpeg vnc-jpeg)" conf_opts+=" $(use_enable jpeg vnc-jpeg)"
conf_opts+=" $(use_enable kernel_linux kvm)" conf_opts+=" $(use_enable kernel_linux kvm)"
conf_opts+=" $(use_enable kernel_linux nptl)" conf_opts+=" $(use_enable kernel_linux nptl)"
@ -277,10 +290,10 @@ qemu_src_configure() {
conf_opts+=" $(use_enable rbd)" conf_opts+=" $(use_enable rbd)"
conf_opts+=" $(use_enable sasl vnc-sasl)" conf_opts+=" $(use_enable sasl vnc-sasl)"
conf_opts+=" $(use_enable seccomp)" conf_opts+=" $(use_enable seccomp)"
conf_opts+=" $(use_enable smartcard smartcard)"
conf_opts+=" $(use_enable smartcard smartcard-nss)" conf_opts+=" $(use_enable smartcard smartcard-nss)"
conf_opts+=" $(use_enable spice)" conf_opts+=" $(use_enable spice)"
conf_opts+=" $(use_enable tls vnc-tls)" conf_opts+=" $(use_enable tls vnc-tls)"
conf_opts+=" $(use_enable tls vnc-ws)"
conf_opts+=" $(use_enable usbredir usb-redir)" conf_opts+=" $(use_enable usbredir usb-redir)"
conf_opts+=" $(use_enable uuid)" conf_opts+=" $(use_enable uuid)"
conf_opts+=" $(use_enable vde)" conf_opts+=" $(use_enable vde)"
@ -293,6 +306,7 @@ qemu_src_configure() {
conf_opts+=" $(use_enable xfs xfsctl)" conf_opts+=" $(use_enable xfs xfsctl)"
use mixemu && conf_opts+=" --enable-mixemu" use mixemu && conf_opts+=" --enable-mixemu"
conf_opts+=" --audio-drv-list=${audio_opts}" conf_opts+=" --audio-drv-list=${audio_opts}"
conf_opts+=" --enable-migration-from-qemu-kvm"
fi fi
conf_opts+=" $(use_enable debug debug-info)" conf_opts+=" $(use_enable debug debug-info)"
@ -348,31 +362,37 @@ src_configure() {
einfo "Building the following user targets: ${user_targets}" einfo "Building the following user targets: ${user_targets}"
if [[ -n ${softmmu_targets} ]]; then if [[ -n ${softmmu_targets} ]]; then
mkdir ${S}/softmmu-build mkdir "${S}/softmmu-build"
qemu_src_configure "softmmu" "${S}/softmmu-build" qemu_src_configure "softmmu" "${S}/softmmu-build"
fi fi
if [[ -n ${user_targets} ]]; then if [[ -n ${user_targets} ]]; then
mkdir ${S}/user-build mkdir "${S}/user-build"
qemu_src_configure "user" "${S}/user-build" qemu_src_configure "user" "${S}/user-build"
fi fi
} }
src_compile() { src_compile() {
if [[ -n ${user_targets} ]]; then if [[ -n ${user_targets} ]]; then
cd ${S}/user-build cd "${S}/user-build"
default default
fi fi
if [[ -n ${softmmu_targets} ]]; then if [[ -n ${softmmu_targets} ]]; then
cd ${S}/softmmu-build cd "${S}/softmmu-build"
default default
fi fi
} }
src_test() {
cd "${S}/softmmu-build"
emake -j1 check
emake -j1 check-report.html
}
src_install() { src_install() {
if [[ -n ${user_targets} ]]; then if [[ -n ${user_targets} ]]; then
cd ${S}/user-build cd "${S}/user-build"
emake DESTDIR="${ED}" install emake DESTDIR="${ED}" install
# Install binfmt handler init script for user targets # Install binfmt handler init script for user targets
@ -380,34 +400,39 @@ src_install() {
fi fi
if [[ -n ${softmmu_targets} ]]; then if [[ -n ${softmmu_targets} ]]; then
cd ${S}/softmmu-build cd "${S}/softmmu-build"
emake DESTDIR="${ED}" install emake DESTDIR="${ED}" install
if use test; then
dohtml check-report.html
fi
if use kernel_linux; then if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules udev_dorules "${FILESDIR}"/65-kvm.rules
fi fi
if use qemu_softmmu_targets_x86_64 ; then if use qemu_softmmu_targets_x86_64 ; then
dosym /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm newbin "${FILESDIR}/qemu-kvm-1.4" qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed" ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit" ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}" ewarn "your libvirt configs or other wrappers for ${PN}"
elif use x86 || use amd64; then elif use x86 || use amd64; then
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of the /usr/bin/qemu-kvm symlink." elog "of the /usr/bin/qemu-kvm script."
fi fi
use python && dobin ${S}/scripts/kvm/kvm_stat use python && dobin "${S}/scripts/kvm/kvm_stat"
use python && dobin ${S}/scripts/kvm/vmxcap use python && dobin "${S}/scripts/kvm/vmxcap"
fi fi
cd ${S} # Install config file example for qemu-bridge-helper
dodoc Changelog MAINTAINERS TODO pci-ids.txt insinto "/etc/qemu"
doins "${FILESDIR}/bridge.conf"
cd "${S}"
dodoc Changelog MAINTAINERS TODO docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios newdoc pc-bios/README README.pc-bios
# Avoid collision with app-emulation/libcacard
use smartcard && mv "${ED}/usr/bin/vscclient" "${ED}/usr/bin/qemu-vscclient"
# Remove SeaBIOS since we're using the SeaBIOS packaged one # Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin" rm "${ED}/usr/share/qemu/bios.bin"
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
@ -447,6 +472,8 @@ src_install() {
} }
pkg_postinst() { pkg_postinst() {
local virtfs_caps=
if qemu_support_kvm; then if qemu_support_kvm; then
elog "If you don't have kvm compiled into the kernel, make sure you have" elog "If you don't have kvm compiled into the kernel, make sure you have"
elog "the kernel module loaded before running kvm. The easiest way to" elog "the kernel module loaded before running kvm. The easiest way to"
@ -460,6 +487,25 @@ pkg_postinst() {
elog elog
fi fi
virtfs_caps+="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,"
virtfs_caps+="cap_setgid,cap_mknod,cap_setuid"
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
use virtfs && fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
elog "The ssl USE flag was renamed to tls, so adjust your USE flags." elog "The ssl USE flag was renamed to tls, so adjust your USE flags."
elog "The nss USE flag was renamed to smartcard, so adjust your USE flags." elog "The nss USE flag was renamed to smartcard, so adjust your USE flags."
} }
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)"
}

View File

@ -1,37 +1,39 @@
# Copyright 1999-2013 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.2.2-r2.ebuild,v 1.4 2013/01/25 12:08:00 ago Exp $ # $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.4.2-r1.ebuild,v 1.2 2013/07/27 03:50:41 cardoe Exp $
EAPI=5 EAPI=5
MY_PN="qemu-kvm" PYTHON_COMPAT=( python{2_5,2_6,2_7} )
MY_P=${MY_PN}-1.2.0 PYTHON_REQ_USE="ncurses,readline"
PYTHON_DEPEND="2" inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev user udev fcaps readme.gentoo
BACKPORTS=9489a8c0-1
BACKPORTS=384a78f1
if [[ ${PV} = *9999* ]]; then if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git" EGIT_REPO_URI="git://git.qemu.org/qemu.git"
inherit git-2 inherit git-2
SRC_URI="" SRC_URI=""
KEYWORDS="" KEYWORDS=""
else else
SRC_URI="mirror://sourceforge/kvm/${MY_PN}/${MY_P}.tar.gz SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2
${BACKPORTS:+ ${BACKPORTS:+
http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}" http://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}"
KEYWORDS="amd64 ~ppc ~ppc64 x86 ~x86-fbsd" KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
fi fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="http://www.linux-kvm.org" HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2" LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0" SLOT="0"
IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \ IUSE="accessibility +aio alsa bluetooth +caps +curl debug fdt iscsi +jpeg \
kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl +seccomp \ kernel_linux kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python \
sdl selinux smartcard spice static systemtap tci +threads tls usbredir +uuid \ rbd sasl +seccomp sdl selinux smartcard spice static static-softmmu \
vde +vhost-net virtfs +vnc xattr xen xfs" static-user systemtap tci test +threads tls usbredir +uuid vde +vhost-net \
virtfs +vnc xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips
mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32" mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32"
@ -46,21 +48,25 @@ for target in ${IUSE_SOFTMMU_TARGETS}; do
IUSE="${IUSE} qemu_softmmu_targets_${target}" IUSE="${IUSE} qemu_softmmu_targets_${target}"
REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}" REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}"
done done
REQUIRED_USE="${REQUIRED_USE} )"
for target in ${IUSE_USER_TARGETS}; do for target in ${IUSE_USER_TARGETS}; do
IUSE="${IUSE} qemu_user_targets_${target}" IUSE="${IUSE} qemu_user_targets_${target}"
REQUIRED_USE="${REQUIRED_USE} qemu_user_targets_${target}"
done done
REQUIRED_USE="${REQUIRED_USE} )"
# Block USE flag configurations known to not work # Block USE flag configurations known to not work
REQUIRED_USE="${REQUIRED_USE} REQUIRED_USE="${REQUIRED_USE}
static? ( !alsa !pulseaudio !bluetooth !opengl ) python? ( ${PYTHON_REQUIRED_USE} )
static? ( static-softmmu static-user )
static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl )
virtfs? ( xattr )" virtfs? ( xattr )"
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. # Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)] LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sys-apps/pciutils[static-libs(+)] sys-apps/pciutils[static-libs(+)]
sys-libs/zlib[static-libs(+)] sys-libs/zlib[static-libs(+)]
>=x11-libs/pixman-0.28.0[static-libs(+)]
aio? ( dev-libs/libaio[static-libs(+)] ) aio? ( dev-libs/libaio[static-libs(+)] )
caps? ( sys-libs/libcap-ng[static-libs(+)] ) caps? ( sys-libs/libcap-ng[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
@ -72,48 +78,53 @@ LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] ) sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] )
seccomp? ( >=sys-libs/libseccomp-1.0.1[static-libs(+)] ) seccomp? ( >=sys-libs/libseccomp-1.0.1[static-libs(+)] )
spice? ( >=app-emulation/spice-0.9.0[static-libs(+)] ) spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] )
tls? ( net-libs/gnutls[static-libs(+)] ) tls? ( net-libs/gnutls[static-libs(+)] )
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] ) uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] ) vde? ( net-misc/vde[static-libs(+)] )
xattr? ( sys-apps/attr[static-libs(+)] ) xattr? ( sys-apps/attr[static-libs(+)] )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )" xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} ) RDEPEND="!static-softmmu? ( ${LIB_DEPEND//\[static-libs(+)]} )
!app-emulation/kqemu static-user? ( >=dev-libs/glib-2.0[static-libs(+)] )
qemu_softmmu_targets_i386? ( qemu_softmmu_targets_i386? (
sys-firmware/ipxe >=sys-firmware/ipxe-1.0.0_p20130225
~sys-firmware/seabios-1.7.1 ~sys-firmware/seabios-1.7.2.2
~sys-firmware/sgabios-0.1_pre8 ~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a ~sys-firmware/vgabios-0.7a
) )
qemu_softmmu_targets_x86_64? ( qemu_softmmu_targets_x86_64? (
sys-firmware/ipxe >=sys-firmware/ipxe-1.0.0_p20130225
~sys-firmware/seabios-1.7.1 ~sys-firmware/seabios-1.7.2.2
~sys-firmware/sgabios-0.1_pre8 ~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a ~sys-firmware/vgabios-0.7a
) )
accessibility? ( app-accessibility/brltty )
alsa? ( >=media-libs/alsa-lib-1.0.13 ) alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez ) bluetooth? ( net-wireless/bluez )
brltty? ( app-accessibility/brltty ) iscsi? ( net-libs/libiscsi )
opengl? ( virtual/opengl ) opengl? ( virtual/opengl )
pulseaudio? ( media-sound/pulseaudio ) pulseaudio? ( media-sound/pulseaudio )
python? ( =dev-lang/python-2*[ncurses] ) python? ( ${PYTHON_DEPS} )
sdl? ( media-libs/libsdl[X] ) sdl? ( media-libs/libsdl[X] )
selinux? ( sec-policy/selinux-qemu ) selinux? ( sec-policy/selinux-qemu )
smartcard? ( dev-libs/nss ) smartcard? ( dev-libs/nss !app-emulation/libcacard )
spice? ( >=app-emulation/spice-protocol-0.12.2 ) spice? ( >=app-emulation/spice-protocol-0.12.3 )
systemtap? ( dev-util/systemtap ) systemtap? ( dev-util/systemtap )
usbredir? ( ~sys-apps/usbredir-0.4.4 ) usbredir? ( >=sys-apps/usbredir-0.6 )
virtfs? ( sys-libs/libcap ) virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools )" xen? ( app-emulation/xen-tools )"
DEPEND="${RDEPEND} DEPEND="${RDEPEND}
dev-lang/perl
=dev-lang/python-2*
sys-apps/texinfo
virtual/pkgconfig virtual/pkgconfig
doc? ( app-text/texi2html )
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? ( ${LIB_DEPEND} )" static-softmmu? ( ${LIB_DEPEND} )
test? (
S="${WORKDIR}/${MY_P}" dev-libs/glib[utils]
sys-devel/bc
)"
STRIP_MASK="/usr/share/qemu/palcode-clipper" STRIP_MASK="/usr/share/qemu/palcode-clipper"
@ -123,8 +134,7 @@ QA_PREBUILT="
usr/share/qemu/openbios-sparc32 usr/share/qemu/openbios-sparc32
usr/share/qemu/palcode-clipper" usr/share/qemu/palcode-clipper"
QA_WX_LOAD="${QA_PRESTRIPPED} QA_WX_LOAD="usr/bin/qemu-i386
usr/bin/qemu-i386
usr/bin/qemu-x86_64 usr/bin/qemu-x86_64
usr/bin/qemu-alpha usr/bin/qemu-alpha
usr/bin/qemu-arm usr/bin/qemu-arm
@ -147,6 +157,25 @@ QA_WX_LOAD="${QA_PRESTRIPPED}
usr/bin/qemu-s390x usr/bin/qemu-s390x
usr/bin/qemu-unicore32" 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() { pkg_pretend() {
if use kernel_linux && kernel_is lt 2 6 25; then 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." eerror "This version of KVM requres a host kernel of 2.6.25 or higher."
@ -180,21 +209,12 @@ pkg_pretend() {
check_extra_config check_extra_config
fi fi
fi fi
if use static; then
ewarn "USE=static is very much a moving target because of the packages"
ewarn "we depend on will have their static libs ripped out or wrapped"
ewarn "with USE=static-libs or USE=static due to continued dicsussion"
ewarn "on the mailing list about USE=static's place in Gentoo. As a"
ewarn "result what worked today may not work tomorrow."
fi
} }
pkg_setup() { pkg_setup() {
python_set_active_version 2
python_pkg_setup
enewgroup kvm 78 enewgroup kvm 78
python_export_best
} }
src_prepare() { src_prepare() {
@ -202,10 +222,7 @@ src_prepare() {
sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \
Makefile Makefile.target || die Makefile Makefile.target || die
python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat" epatch "${FILESDIR}"/qemu-9999-cflags.patch
python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap"
epatch "${FILESDIR}"/qemu-1.2.0-cflags.patch
[[ -n ${BACKPORTS} ]] && \ [[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch epatch
@ -219,96 +236,112 @@ src_prepare() {
epatch_user epatch_user
} }
src_configure() { ##
# 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 conf_opts audio_opts local conf_opts audio_opts
local static_flag="static-${buildtype}"
for target in ${IUSE_SOFTMMU_TARGETS} ; do conf_opts="--prefix=/usr"
use "qemu_softmmu_targets_${target}" && \ conf_opts+=" --sysconfdir=/etc"
softmmu_targets="${softmmu_targets} ${target}-softmmu" conf_opts+=" --libdir=/usr/$(get_libdir)"
done conf_opts+=" --docdir=/usr/share/doc/${PF}/html"
conf_opts+=" --disable-bsd-user"
for target in ${IUSE_USER_TARGETS} ; do conf_opts+=" --disable-guest-agent"
use "qemu_user_targets_${target}" && \ conf_opts+=" --disable-strip"
user_targets="${user_targets} ${target}-linux-user" conf_opts+=" --disable-werror"
done conf_opts+=" --python=${PYTHON}"
einfo "Building the following softmmu targets: ${softmmu_targets}"
if [[ -n ${user_targets} ]]; then
einfo "Building the following user targets: ${user_targets}"
conf_opts="${conf_opts} --enable-linux-user"
else
conf_opts="${conf_opts} --disable-linux-user"
fi
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Fix QA issues. QEMU needs executable heaps and we need to mark it as such
#conf_opts="${conf_opts} --extra-ldflags=-Wl,-z,execheap"
# Add support for static builds
use static && conf_opts="${conf_opts} --static --disable-pie"
# 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 && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
# audio options # audio options
audio_opts="oss" audio_opts="oss"
use alsa && audio_opts="alsa,${audio_opts}" use alsa && audio_opts="alsa,${audio_opts}"
use sdl && audio_opts="sdl,${audio_opts}" use sdl && audio_opts="sdl,${audio_opts}"
use pulseaudio && audio_opts="pa,${audio_opts}" use pulseaudio && audio_opts="pa,${audio_opts}"
use mixemu && conf_opts="${conf_opts} --enable-mixemu"
./configure --prefix=/usr \ if [[ ${buildtype} == "user" ]]; then
--sysconfdir=/etc \ conf_opts+=" --enable-linux-user"
--docdir=/usr/share/doc/${PF}/html \ conf_opts+=" --disable-system"
--disable-bsd-user \ conf_opts+=" --target-list=${user_targets}"
--disable-guest-agent \ conf_opts+=" --disable-blobs"
--disable-libiscsi \ conf_opts+=" --disable-bluez"
--disable-strip \ conf_opts+=" --disable-curses"
--disable-werror \ conf_opts+=" --disable-kvm"
--python=python2 \ conf_opts+=" --disable-libiscsi"
$(use_enable aio linux-aio) \ conf_opts+=" $(use_enable seccomp)"
$(use_enable bluetooth bluez) \ conf_opts+=" --disable-sdl"
$(use_enable brltty brlapi) \ conf_opts+=" --disable-smartcard-nss"
$(use_enable caps cap-ng) \ conf_opts+=" --disable-tools"
$(use_enable curl) \ conf_opts+=" --disable-vde"
$(use_enable debug debug-info) \ fi
$(use_enable debug debug-tcg) \
$(use_enable doc docs) \ if [[ ${buildtype} == "softmmu" ]]; then
$(use_enable fdt) \ conf_opts+=" --disable-linux-user"
$(use_enable jpeg vnc-jpeg) \ conf_opts+=" --enable-system"
$(use_enable kernel_linux kvm) \ conf_opts+=" --with-system-pixman"
$(use_enable kernel_linux nptl) \ conf_opts+=" --target-list=${softmmu_targets}"
$(use_enable ncurses curses) \ conf_opts+=" $(use_enable bluetooth bluez)"
$(use_enable opengl) \ conf_opts+=" $(use_enable sdl)"
$(use_enable png vnc-png) \ conf_opts+=" $(use_enable aio linux-aio)"
$(use_enable rbd) \ conf_opts+=" $(use_enable accessibility brlapi)"
$(use_enable sasl vnc-sasl) \ conf_opts+=" $(use_enable caps cap-ng)"
$(use_enable sdl) \ conf_opts+=" $(use_enable curl)"
$(use_enable seccomp) \ conf_opts+=" $(use_enable fdt)"
$(use_enable smartcard smartcard) \ conf_opts+=" $(use_enable iscsi libiscsi)"
$(use_enable smartcard smartcard-nss) \ conf_opts+=" $(use_enable jpeg vnc-jpeg)"
$(use_enable spice) \ conf_opts+=" $(use_enable kernel_linux kvm)"
$(use_enable tci tcg-interpreter) \ conf_opts+=" $(use_enable kernel_linux nptl)"
$(use_enable tls vnc-tls) \ conf_opts+=" $(use_enable ncurses curses)"
$(use_enable usbredir usb-redir) \ conf_opts+=" $(use_enable opengl)"
$(use_enable uuid) \ conf_opts+=" $(use_enable png vnc-png)"
$(use_enable vde) \ conf_opts+=" $(use_enable rbd)"
$(use_enable vhost-net) \ conf_opts+=" $(use_enable sasl vnc-sasl)"
$(use_enable virtfs) \ conf_opts+=" $(use_enable seccomp)"
$(use_enable vnc) \ conf_opts+=" $(use_enable smartcard smartcard-nss)"
$(use_enable xattr attr) \ conf_opts+=" $(use_enable spice)"
$(use_enable xen) \ conf_opts+=" $(use_enable tls vnc-tls)"
$(use_enable xen xen-pci-passthrough) \ conf_opts+=" $(use_enable tls vnc-ws)"
$(use_enable xfs xfsctl) \ conf_opts+=" $(use_enable usbredir usb-redir)"
--audio-drv-list=${audio_opts} \ conf_opts+=" $(use_enable uuid)"
--target-list="${softmmu_targets} ${user_targets}" \ conf_opts+=" $(use_enable vde)"
conf_opts+=" $(use_enable vhost-net)"
conf_opts+=" $(use_enable virtfs)"
conf_opts+=" $(use_enable vnc)"
conf_opts+=" $(use_enable xattr attr)"
conf_opts+=" $(use_enable xen)"
conf_opts+=" $(use_enable xen xen-pci-passthrough)"
conf_opts+=" $(use_enable xfs xfsctl)"
use mixemu && conf_opts+=" --enable-mixemu"
conf_opts+=" --audio-drv-list=${audio_opts}"
conf_opts+=" --enable-migration-from-qemu-kvm"
fi
conf_opts+=" $(use_enable debug debug-info)"
conf_opts+=" $(use_enable debug debug-tcg)"
conf_opts+=" --enable-docs"
conf_opts+=" $(use_enable tci tcg-interpreter)"
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Add support for static builds
use ${static_flag} && conf_opts="${conf_opts} --static --disable-pie"
# 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} && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
einfo "./configure ${conf_opts}"
cd ${builddir}
../configure \
--cc="$(tc-getCC)" \ --cc="$(tc-getCC)" \
--host-cc="$(tc-getBUILD_CC)" \ --host-cc="$(tc-getBUILD_CC)" \
${conf_opts} \ ${conf_opts} \
@ -320,37 +353,111 @@ src_configure() {
sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak
} }
src_install() { src_configure() {
emake DESTDIR="${ED}" install softmmu_targets=
user_targets=
for target in ${IUSE_SOFTMMU_TARGETS} ; do
use "qemu_softmmu_targets_${target}" && \
softmmu_targets="${softmmu_targets},${target}-softmmu"
done
for target in ${IUSE_USER_TARGETS} ; do
use "qemu_user_targets_${target}" && \
user_targets="${user_targets},${target}-linux-user"
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 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() {
cd "${S}/softmmu-build"
emake -j1 check
emake -j1 check-report.html
}
qemu_python_install() {
python_domodule "${S}/QMP/qmp.py"
python_doscript "${S}/scripts/kvm/kvm_stat"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/QMP/qmp-shell"
python_doscript "${S}/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
if use test; then
dohtml check-report.html
fi
if use kernel_linux; then if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules udev_dorules "${FILESDIR}"/65-kvm.rules
fi fi
if use qemu_softmmu_targets_x86_64 ; then if use qemu_softmmu_targets_x86_64 ; then
dosym /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm newbin "${FILESDIR}/qemu-kvm-1.4" qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed" ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit" ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}" ewarn "your libvirt configs or other wrappers for ${PN}"
elif use x86 || use amd64; then elif use x86 || use amd64; then
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of the /usr/bin/qemu-kvm symlink." elog "of the /usr/bin/qemu-kvm script."
fi
if use python; then
python_foreach_impl qemu_python_install
fi fi
fi fi
dodoc Changelog MAINTAINERS TODO pci-ids.txt # 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}/QMP/"
cd "${S}"
dodoc Changelog MAINTAINERS TODO docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios newdoc pc-bios/README README.pc-bios
dodoc QMP/qmp-commands.txt QMP/qmp-events.txt QMP/qmp-spec.txt
use python && dobin scripts/kvm/kvm_stat
use python && dobin scripts/kvm/vmxcap
# Avoid collision with app-emulation/libcacard
use smartcard && mv "${ED}/usr/bin/vscclient" "${ED}/usr/bin/qemu-vscclient"
# Install binfmt handler init script for user targets
[[ -n ${user_targets} ]] && \
newinitd "${FILESDIR}/qemu-binfmt.initd-r1" qemu-binfmt
# Remove SeaBIOS since we're using the SeaBIOS packaged one # Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin" rm "${ED}/usr/share/qemu/bios.bin"
@ -381,31 +488,40 @@ src_install() {
# Remove iPXE since we're using the iPXE packaged one # Remove iPXE since we're using the iPXE packaged one
rm "${ED}"/usr/share/qemu/pxe-*.rom rm "${ED}"/usr/share/qemu/pxe-*.rom
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../ipxe/808610de.rom /usr/share/qemu/pxe-e1000.rom dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
fi fi
qemu_support_kvm && readme.gentoo_create_doc
} }
pkg_postinst() { pkg_postinst() {
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \ local virtfs_caps=
use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \
use qemu_softmmu_targets_s390x; then if qemu_support_kvm; then
elog "If you don't have kvm compiled into the kernel, make sure you have" readme.gentoo_print_elog
elog "the kernel module loaded before running kvm. The easiest way to"
elog "ensure that the kernel module is loaded is to load it on boot."
elog "For AMD CPUs the module is called 'kvm-amd'"
elog "For Intel CPUs the module is called 'kvm-intel'"
elog "Please review /etc/conf.d/modules for how to load these"
elog
elog "Make sure your user is in the 'kvm' group"
elog "Just run 'gpasswd -a <USER> kvm', then have <USER> re-login."
elog
fi fi
elog "The ssl USE flag was renamed to tls, so adjust your USE flags." virtfs_caps+="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,"
elog "The nss USE flag was renamed to smartcard, so adjust your USE flags." virtfs_caps+="cap_setgid,cap_mknod,cap_setuid"
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
use virtfs && fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/seabios)"
if has_version sys-firmware/seabios[binary]; then
echo " USE=binary"
else
echo " USE=''"
fi
echo " $(best_version sys-firmware/vgabios)"
} }

View File

@ -1,12 +1,16 @@
# Copyright 1999-2013 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.3.0.ebuild,v 1.5 2013/02/02 01:14:38 mr_bones_ Exp $ # $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.4.2.ebuild,v 1.6 2013/07/19 03:57:50 cardoe Exp $
EAPI=5 EAPI=5
PYTHON_DEPEND="2" PYTHON_COMPAT=( python{2_5,2_6,2_7} )
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev PYTHON_REQ_USE="ncurses,readline"
#BACKPORTS=49a7da83
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
user udev fcaps
BACKPORTS=6b5934f9
if [[ ${PV} = *9999* ]]; then if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.qemu.org/qemu.git" EGIT_REPO_URI="git://git.qemu.org/qemu.git"
@ -17,18 +21,19 @@ else
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2 SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2
${BACKPORTS:+ ${BACKPORTS:+
http://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}" http://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd" KEYWORDS="amd64 ~ppc ~ppc64 x86 ~x86-fbsd"
fi fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="http://www.linux-kvm.org" HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2" LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0" SLOT="0"
IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \ IUSE="accessibility +aio alsa bluetooth +caps +curl debug fdt iscsi +jpeg \
kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl +seccomp \ kernel_linux kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python \
sdl selinux smartcard spice static systemtap tci +threads tls usbredir +uuid \ rbd sasl +seccomp sdl selinux smartcard spice static static-softmmu \
vde +vhost-net virtfs +vnc xattr xen xfs" static-user systemtap tci test +threads tls usbredir +uuid vde +vhost-net \
virtfs +vnc xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips
mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32" mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32"
@ -51,13 +56,16 @@ done
# Block USE flag configurations known to not work # Block USE flag configurations known to not work
REQUIRED_USE="${REQUIRED_USE} REQUIRED_USE="${REQUIRED_USE}
static? ( !alsa !pulseaudio !bluetooth !opengl ) python? ( ${PYTHON_REQUIRED_USE} )
static? ( static-softmmu static-user )
static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl )
virtfs? ( xattr )" virtfs? ( xattr )"
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. # Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)] LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sys-apps/pciutils[static-libs(+)] sys-apps/pciutils[static-libs(+)]
sys-libs/zlib[static-libs(+)] sys-libs/zlib[static-libs(+)]
>=x11-libs/pixman-0.28.0[static-libs(+)]
aio? ( dev-libs/libaio[static-libs(+)] ) aio? ( dev-libs/libaio[static-libs(+)] )
caps? ( sys-libs/libcap-ng[static-libs(+)] ) caps? ( sys-libs/libcap-ng[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
@ -75,38 +83,47 @@ LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
vde? ( net-misc/vde[static-libs(+)] ) vde? ( net-misc/vde[static-libs(+)] )
xattr? ( sys-apps/attr[static-libs(+)] ) xattr? ( sys-apps/attr[static-libs(+)] )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )" xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} ) RDEPEND="!static-softmmu? ( ${LIB_DEPEND//\[static-libs(+)]} )
!app-emulation/kqemu !app-emulation/kqemu
qemu_softmmu_targets_i386? ( qemu_softmmu_targets_i386? (
sys-firmware/ipxe sys-firmware/ipxe
~sys-firmware/seabios-1.7.2 ~sys-firmware/seabios-1.7.2.1
~sys-firmware/sgabios-0.1_pre8 ~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
) )
qemu_softmmu_targets_x86_64? ( qemu_softmmu_targets_x86_64? (
sys-firmware/ipxe sys-firmware/ipxe
~sys-firmware/seabios-1.7.2 ~sys-firmware/seabios-1.7.2.1
~sys-firmware/sgabios-0.1_pre8 ~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
) )
alsa? ( >=media-libs/alsa-lib-1.0.13 ) alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez ) bluetooth? ( net-wireless/bluez )
brltty? ( app-accessibility/brltty ) accessibility? ( app-accessibility/brltty )
iscsi? ( net-libs/libiscsi )
opengl? ( virtual/opengl ) opengl? ( virtual/opengl )
pulseaudio? ( media-sound/pulseaudio ) pulseaudio? ( media-sound/pulseaudio )
python? ( =dev-lang/python-2*[ncurses] ) python? ( ${PYTHON_DEPS} )
sdl? ( media-libs/libsdl[X] ) sdl? ( media-libs/libsdl[X] )
selinux? ( sec-policy/selinux-qemu ) selinux? ( sec-policy/selinux-qemu )
smartcard? ( dev-libs/nss ) smartcard? ( dev-libs/nss !app-emulation/libcacard )
spice? ( >=app-emulation/spice-protocol-0.12.2 ) spice? ( >=app-emulation/spice-protocol-0.12.3 )
systemtap? ( dev-util/systemtap ) systemtap? ( dev-util/systemtap )
usbredir? ( >=sys-apps/usbredir-0.4.4 ) usbredir? ( >=sys-apps/usbredir-0.6 )
virtfs? ( sys-libs/libcap ) virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools )" xen? ( app-emulation/xen-tools )"
DEPEND="${RDEPEND} DEPEND="${RDEPEND}
dev-lang/perl
=dev-lang/python-2*
sys-apps/texinfo
virtual/pkgconfig virtual/pkgconfig
doc? ( app-text/texi2html )
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? ( ${LIB_DEPEND} )" static-softmmu? ( ${LIB_DEPEND} )
test? (
dev-libs/glib[utils]
sys-devel/bc
)"
STRIP_MASK="/usr/share/qemu/palcode-clipper" STRIP_MASK="/usr/share/qemu/palcode-clipper"
@ -116,8 +133,7 @@ QA_PREBUILT="
usr/share/qemu/openbios-sparc32 usr/share/qemu/openbios-sparc32
usr/share/qemu/palcode-clipper" usr/share/qemu/palcode-clipper"
QA_WX_LOAD="${QA_PRESTRIPPED} QA_WX_LOAD="usr/bin/qemu-i386
usr/bin/qemu-i386
usr/bin/qemu-x86_64 usr/bin/qemu-x86_64
usr/bin/qemu-alpha usr/bin/qemu-alpha
usr/bin/qemu-arm usr/bin/qemu-arm
@ -140,6 +156,16 @@ QA_WX_LOAD="${QA_PRESTRIPPED}
usr/bin/qemu-s390x usr/bin/qemu-s390x
usr/bin/qemu-unicore32" usr/bin/qemu-unicore32"
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() { pkg_pretend() {
if use kernel_linux && kernel_is lt 2 6 25; then 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." eerror "This version of KVM requres a host kernel of 2.6.25 or higher."
@ -173,21 +199,12 @@ pkg_pretend() {
check_extra_config check_extra_config
fi fi
fi fi
if use static; then
ewarn "USE=static is very much a moving target because of the packages"
ewarn "we depend on will have their static libs ripped out or wrapped"
ewarn "with USE=static-libs or USE=static due to continued dicsussion"
ewarn "on the mailing list about USE=static's place in Gentoo. As a"
ewarn "result what worked today may not work tomorrow."
fi
} }
pkg_setup() { pkg_setup() {
python_set_active_version 2
python_pkg_setup
enewgroup kvm 78 enewgroup kvm 78
python_export_best
} }
src_prepare() { src_prepare() {
@ -195,10 +212,7 @@ src_prepare() {
sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \
Makefile Makefile.target || die Makefile Makefile.target || die
python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat" epatch "${FILESDIR}"/qemu-9999-cflags.patch
python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap"
epatch "${FILESDIR}"/qemu-1.2.0-cflags.patch
[[ -n ${BACKPORTS} ]] && \ [[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch epatch
@ -212,96 +226,112 @@ src_prepare() {
epatch_user epatch_user
} }
src_configure() { ##
# 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 conf_opts audio_opts local conf_opts audio_opts
local static_flag="static-${buildtype}"
for target in ${IUSE_SOFTMMU_TARGETS} ; do conf_opts="--prefix=/usr"
use "qemu_softmmu_targets_${target}" && \ conf_opts+=" --sysconfdir=/etc"
softmmu_targets="${softmmu_targets} ${target}-softmmu" conf_opts+=" --libdir=/usr/$(get_libdir)"
done conf_opts+=" --docdir=/usr/share/doc/${PF}/html"
conf_opts+=" --disable-bsd-user"
for target in ${IUSE_USER_TARGETS} ; do conf_opts+=" --disable-guest-agent"
use "qemu_user_targets_${target}" && \ conf_opts+=" --disable-strip"
user_targets="${user_targets} ${target}-linux-user" conf_opts+=" --disable-werror"
done conf_opts+=" --python=${PYTHON}"
einfo "Building the following softmmu targets: ${softmmu_targets}"
if [[ -n ${user_targets} ]]; then
einfo "Building the following user targets: ${user_targets}"
conf_opts="${conf_opts} --enable-linux-user"
else
conf_opts="${conf_opts} --disable-linux-user"
fi
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Fix QA issues. QEMU needs executable heaps and we need to mark it as such
#conf_opts="${conf_opts} --extra-ldflags=-Wl,-z,execheap"
# Add support for static builds
use static && conf_opts="${conf_opts} --static --disable-pie"
# 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 && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
# audio options # audio options
audio_opts="oss" audio_opts="oss"
use alsa && audio_opts="alsa,${audio_opts}" use alsa && audio_opts="alsa,${audio_opts}"
use sdl && audio_opts="sdl,${audio_opts}" use sdl && audio_opts="sdl,${audio_opts}"
use pulseaudio && audio_opts="pa,${audio_opts}" use pulseaudio && audio_opts="pa,${audio_opts}"
use mixemu && conf_opts="${conf_opts} --enable-mixemu"
./configure --prefix=/usr \ if [[ ${buildtype} == "user" ]]; then
--sysconfdir=/etc \ conf_opts+=" --enable-linux-user"
--docdir=/usr/share/doc/${PF}/html \ conf_opts+=" --disable-system"
--disable-bsd-user \ conf_opts+=" --target-list=${user_targets}"
--disable-guest-agent \ conf_opts+=" --disable-blobs"
--disable-libiscsi \ conf_opts+=" --disable-bluez"
--disable-strip \ conf_opts+=" --disable-curses"
--disable-werror \ conf_opts+=" --disable-kvm"
--python=python2 \ conf_opts+=" --disable-libiscsi"
$(use_enable aio linux-aio) \ conf_opts+=" $(use_enable seccomp)"
$(use_enable bluetooth bluez) \ conf_opts+=" --disable-sdl"
$(use_enable brltty brlapi) \ conf_opts+=" --disable-smartcard-nss"
$(use_enable caps cap-ng) \ conf_opts+=" --disable-tools"
$(use_enable curl) \ conf_opts+=" --disable-vde"
$(use_enable debug debug-info) \ fi
$(use_enable debug debug-tcg) \
$(use_enable doc docs) \ if [[ ${buildtype} == "softmmu" ]]; then
$(use_enable fdt) \ conf_opts+=" --disable-linux-user"
$(use_enable jpeg vnc-jpeg) \ conf_opts+=" --enable-system"
$(use_enable kernel_linux kvm) \ conf_opts+=" --with-system-pixman"
$(use_enable kernel_linux nptl) \ conf_opts+=" --target-list=${softmmu_targets}"
$(use_enable ncurses curses) \ conf_opts+=" $(use_enable bluetooth bluez)"
$(use_enable opengl) \ conf_opts+=" $(use_enable sdl)"
$(use_enable png vnc-png) \ conf_opts+=" $(use_enable aio linux-aio)"
$(use_enable rbd) \ conf_opts+=" $(use_enable accessibility brlapi)"
$(use_enable sasl vnc-sasl) \ conf_opts+=" $(use_enable caps cap-ng)"
$(use_enable sdl) \ conf_opts+=" $(use_enable curl)"
$(use_enable seccomp) \ conf_opts+=" $(use_enable fdt)"
$(use_enable smartcard smartcard) \ conf_opts+=" $(use_enable iscsi libiscsi)"
$(use_enable smartcard smartcard-nss) \ conf_opts+=" $(use_enable jpeg vnc-jpeg)"
$(use_enable spice) \ conf_opts+=" $(use_enable kernel_linux kvm)"
$(use_enable tci tcg-interpreter) \ conf_opts+=" $(use_enable kernel_linux nptl)"
$(use_enable tls vnc-tls) \ conf_opts+=" $(use_enable ncurses curses)"
$(use_enable usbredir usb-redir) \ conf_opts+=" $(use_enable opengl)"
$(use_enable uuid) \ conf_opts+=" $(use_enable png vnc-png)"
$(use_enable vde) \ conf_opts+=" $(use_enable rbd)"
$(use_enable vhost-net) \ conf_opts+=" $(use_enable sasl vnc-sasl)"
$(use_enable virtfs) \ conf_opts+=" $(use_enable seccomp)"
$(use_enable vnc) \ conf_opts+=" $(use_enable smartcard smartcard-nss)"
$(use_enable xattr attr) \ conf_opts+=" $(use_enable spice)"
$(use_enable xen) \ conf_opts+=" $(use_enable tls vnc-tls)"
$(use_enable xen xen-pci-passthrough) \ conf_opts+=" $(use_enable tls vnc-ws)"
$(use_enable xfs xfsctl) \ conf_opts+=" $(use_enable usbredir usb-redir)"
--audio-drv-list=${audio_opts} \ conf_opts+=" $(use_enable uuid)"
--target-list="${softmmu_targets} ${user_targets}" \ conf_opts+=" $(use_enable vde)"
conf_opts+=" $(use_enable vhost-net)"
conf_opts+=" $(use_enable virtfs)"
conf_opts+=" $(use_enable vnc)"
conf_opts+=" $(use_enable xattr attr)"
conf_opts+=" $(use_enable xen)"
conf_opts+=" $(use_enable xen xen-pci-passthrough)"
conf_opts+=" $(use_enable xfs xfsctl)"
use mixemu && conf_opts+=" --enable-mixemu"
conf_opts+=" --audio-drv-list=${audio_opts}"
conf_opts+=" --enable-migration-from-qemu-kvm"
fi
conf_opts+=" $(use_enable debug debug-info)"
conf_opts+=" $(use_enable debug debug-tcg)"
conf_opts+=" --enable-docs"
conf_opts+=" $(use_enable tci tcg-interpreter)"
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Add support for static builds
use ${static_flag} && conf_opts="${conf_opts} --static --disable-pie"
# 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} && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
einfo "./configure ${conf_opts}"
cd ${builddir}
../configure \
--cc="$(tc-getCC)" \ --cc="$(tc-getCC)" \
--host-cc="$(tc-getBUILD_CC)" \ --host-cc="$(tc-getBUILD_CC)" \
${conf_opts} \ ${conf_opts} \
@ -313,37 +343,111 @@ src_configure() {
sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak
} }
src_install() { src_configure() {
emake DESTDIR="${ED}" install softmmu_targets=
user_targets=
for target in ${IUSE_SOFTMMU_TARGETS} ; do
use "qemu_softmmu_targets_${target}" && \
softmmu_targets="${softmmu_targets},${target}-softmmu"
done
for target in ${IUSE_USER_TARGETS} ; do
use "qemu_user_targets_${target}" && \
user_targets="${user_targets},${target}-linux-user"
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 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() {
cd "${S}/softmmu-build"
emake -j1 check
emake -j1 check-report.html
}
qemu_python_install() {
python_domodule "${S}/QMP/qmp.py"
python_doscript "${S}/scripts/kvm/kvm_stat"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/QMP/qmp-shell"
python_doscript "${S}/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
if use test; then
dohtml check-report.html
fi
if use kernel_linux; then if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules udev_dorules "${FILESDIR}"/65-kvm.rules
fi fi
if use qemu_softmmu_targets_x86_64 ; then if use qemu_softmmu_targets_x86_64 ; then
dosym /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm newbin "${FILESDIR}/qemu-kvm-1.4" qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed" ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit" ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}" ewarn "your libvirt configs or other wrappers for ${PN}"
elif use x86 || use amd64; then elif use x86 || use amd64; then
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of the /usr/bin/qemu-kvm symlink." elog "of the /usr/bin/qemu-kvm script."
fi
if use python; then
python_foreach_impl qemu_python_install
fi fi
fi fi
dodoc Changelog MAINTAINERS TODO pci-ids.txt # 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}/QMP/"
cd "${S}"
dodoc Changelog MAINTAINERS TODO docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios newdoc pc-bios/README README.pc-bios
dodoc QMP/qmp-commands.txt QMP/qmp-events.txt QMP/qmp-spec.txt
use python && dobin scripts/kvm/kvm_stat
use python && dobin scripts/kvm/vmxcap
# Avoid collision with app-emulation/libcacard
use smartcard && mv "${ED}/usr/bin/vscclient" "${ED}/usr/bin/qemu-vscclient"
# Install binfmt handler init script for user targets
[[ -n ${user_targets} ]] && \
newinitd "${FILESDIR}/qemu-binfmt.initd" qemu-binfmt
# Remove SeaBIOS since we're using the SeaBIOS packaged one # Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin" rm "${ED}/usr/share/qemu/bios.bin"
@ -384,9 +488,9 @@ src_install() {
} }
pkg_postinst() { pkg_postinst() {
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \ local virtfs_caps=
use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \
use qemu_softmmu_targets_s390x; then if qemu_support_kvm; then
elog "If you don't have kvm compiled into the kernel, make sure you have" elog "If you don't have kvm compiled into the kernel, make sure you have"
elog "the kernel module loaded before running kvm. The easiest way to" elog "the kernel module loaded before running kvm. The easiest way to"
elog "ensure that the kernel module is loaded is to load it on boot." elog "ensure that the kernel module is loaded is to load it on boot."
@ -399,6 +503,25 @@ pkg_postinst() {
elog elog
fi fi
virtfs_caps+="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,"
virtfs_caps+="cap_setgid,cap_mknod,cap_setuid"
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
use virtfs && fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
elog "The ssl USE flag was renamed to tls, so adjust your USE flags." elog "The ssl USE flag was renamed to tls, so adjust your USE flags."
elog "The nss USE flag was renamed to smartcard, so adjust your USE flags." elog "The nss USE flag was renamed to smartcard, so adjust your USE flags."
} }
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)"
}

View File

@ -0,0 +1,546 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.5.2-r1.ebuild,v 1.1 2013/08/03 19:47:09 cardoe Exp $
EAPI=5
PYTHON_COMPAT=( python{2_5,2_6,2_7} )
PYTHON_REQ_USE="ncurses,readline"
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
user udev fcaps readme.gentoo
BACKPORTS=e26b4ba6
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.qemu.org/qemu.git"
inherit git-2
SRC_URI=""
KEYWORDS=""
else
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2
${BACKPORTS:+
http://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 iscsi +jpeg \
kernel_linux kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python \
rbd sasl +seccomp sdl selinux smartcard spice static static-softmmu \
static-user systemtap tci test +threads tls usbredir +uuid vde +vhost-net \
virtfs +vnc xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips
mipsel mips64 mips64el or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32"
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 moxie ppcemb xtensa xtensaeb"
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb mipsn32 mipsn32el ppc64abi32 sparc32plus"
# Setup the default SoftMMU targets, while using the loops
# below to setup the other targets.
REQUIRED_USE="|| ("
for target in ${IUSE_SOFTMMU_TARGETS}; do
IUSE="${IUSE} qemu_softmmu_targets_${target}"
REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}"
done
for target in ${IUSE_USER_TARGETS}; do
IUSE="${IUSE} qemu_user_targets_${target}"
REQUIRED_USE="${REQUIRED_USE} qemu_user_targets_${target}"
done
REQUIRED_USE="${REQUIRED_USE} )"
# Block USE flag configurations known to not work
REQUIRED_USE="${REQUIRED_USE}
python? ( ${PYTHON_REQUIRED_USE} )
static? ( static-softmmu static-user )
static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl !gtk )
virtfs? ( xattr )"
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sys-apps/pciutils[static-libs(+)]
sys-libs/zlib[static-libs(+)]
>=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.2.0[static-libs(+)] )
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
jpeg? ( virtual/jpeg[static-libs(+)] )
ncurses? ( sys-libs/ncurses[static-libs(+)] )
png? ( media-libs/libpng[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-1.0.1[static-libs(+)] )
spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] )
tls? ( net-libs/gnutls[static-libs(+)] )
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
xattr? ( sys-apps/attr[static-libs(+)] )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
RDEPEND="!static-softmmu? ( ${LIB_DEPEND//\[static-libs(+)]} )
static-user? ( >=dev-libs/glib-2.0[static-libs(+)] )
qemu_softmmu_targets_i386? (
>=sys-firmware/ipxe-1.0.0_p20130624
~sys-firmware/seabios-1.7.2.2
~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
)
qemu_softmmu_targets_x86_64? (
>=sys-firmware/ipxe-1.0.0_p20130624
~sys-firmware/seabios-1.7.2.2
~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
)
accessibility? ( app-accessibility/brltty )
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez )
gtk? (
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] )
selinux? ( sec-policy/selinux-qemu )
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="${RDEPEND}
dev-lang/perl
=dev-lang/python-2*
sys-apps/texinfo
virtual/pkgconfig
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static-softmmu? ( ${LIB_DEPEND} )
test? (
dev-libs/glib[utils]
sys-devel/bc
)"
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"
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
}
pkg_setup() {
enewgroup kvm 78
python_export_best
}
src_prepare() {
# Alter target makefiles to accept CFLAGS set via flag-o
sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \
Makefile Makefile.target || die
epatch "${FILESDIR}"/qemu-9999-cflags.patch
[[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch
# Fix ld and objcopy being called directly
tc-export 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 conf_opts audio_opts
local static_flag="static-${buildtype}"
conf_opts="--prefix=/usr"
conf_opts+=" --sysconfdir=/etc"
conf_opts+=" --libdir=/usr/$(get_libdir)"
conf_opts+=" --docdir=/usr/share/doc/${PF}/html"
conf_opts+=" --disable-bsd-user"
conf_opts+=" --disable-guest-agent"
conf_opts+=" --disable-strip"
conf_opts+=" --disable-werror"
conf_opts+=" --python=${PYTHON}"
# audio options
audio_opts="oss"
use alsa && audio_opts="alsa,${audio_opts}"
use sdl && audio_opts="sdl,${audio_opts}"
use pulseaudio && audio_opts="pa,${audio_opts}"
if [[ ${buildtype} == "user" ]]; then
conf_opts+=" --enable-linux-user"
conf_opts+=" --disable-system"
conf_opts+=" --target-list=${user_targets}"
conf_opts+=" --disable-blobs"
conf_opts+=" --disable-bluez"
conf_opts+=" --disable-curses"
conf_opts+=" --disable-kvm"
conf_opts+=" --disable-libiscsi"
conf_opts+=" --disable-glusterfs"
conf_opts+=" $(use_enable seccomp)"
conf_opts+=" --disable-sdl"
conf_opts+=" --disable-smartcard-nss"
conf_opts+=" --disable-tools"
conf_opts+=" --disable-vde"
fi
if [[ ${buildtype} == "softmmu" ]]; then
conf_opts+=" --disable-linux-user"
conf_opts+=" --enable-system"
conf_opts+=" --with-system-pixman"
conf_opts+=" --target-list=${softmmu_targets}"
conf_opts+=" $(use_enable bluetooth bluez)"
conf_opts+=" $(use_enable gtk)"
use gtk && conf_opts+=" --with-gtkabi=3.0"
conf_opts+=" $(use_enable sdl)"
conf_opts+=" $(use_enable aio linux-aio)"
conf_opts+=" $(use_enable accessibility brlapi)"
conf_opts+=" $(use_enable caps cap-ng)"
conf_opts+=" $(use_enable curl)"
conf_opts+=" $(use_enable fdt)"
conf_opts+=" $(use_enable glusterfs)"
conf_opts+=" $(use_enable iscsi libiscsi)"
conf_opts+=" $(use_enable jpeg vnc-jpeg)"
conf_opts+=" $(use_enable kernel_linux kvm)"
conf_opts+=" $(use_enable kernel_linux nptl)"
conf_opts+=" $(use_enable ncurses curses)"
conf_opts+=" $(use_enable opengl glx)"
conf_opts+=" $(use_enable png vnc-png)"
conf_opts+=" $(use_enable rbd)"
conf_opts+=" $(use_enable sasl vnc-sasl)"
conf_opts+=" $(use_enable seccomp)"
conf_opts+=" $(use_enable smartcard smartcard-nss)"
conf_opts+=" $(use_enable spice)"
conf_opts+=" $(use_enable tls vnc-tls)"
conf_opts+=" $(use_enable tls vnc-ws)"
conf_opts+=" $(use_enable usbredir usb-redir)"
conf_opts+=" $(use_enable uuid)"
conf_opts+=" $(use_enable vde)"
conf_opts+=" $(use_enable vhost-net)"
conf_opts+=" $(use_enable virtfs)"
conf_opts+=" $(use_enable vnc)"
conf_opts+=" $(use_enable xattr attr)"
conf_opts+=" $(use_enable xen)"
conf_opts+=" $(use_enable xen xen-pci-passthrough)"
conf_opts+=" $(use_enable xfs xfsctl)"
use mixemu && conf_opts+=" --enable-mixemu"
conf_opts+=" --audio-drv-list=${audio_opts}"
conf_opts+=" --enable-migration-from-qemu-kvm"
fi
conf_opts+=" $(use_enable debug debug-info)"
conf_opts+=" $(use_enable debug debug-tcg)"
conf_opts+=" --enable-docs"
conf_opts+=" $(use_enable tci tcg-interpreter)"
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Add support for static builds
use ${static_flag} && conf_opts="${conf_opts} --static --disable-pie"
# 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} && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
einfo "./configure ${conf_opts}"
cd ${builddir}
../configure \
--cc="$(tc-getCC)" \
--host-cc="$(tc-getBUILD_CC)" \
${conf_opts} \
|| die "configure failed"
# FreeBSD's kernel does not support QEMU assigning/grabbing
# host USB devices yet
use kernel_FreeBSD && \
sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak
}
src_configure() {
softmmu_targets=
user_targets=
for target in ${IUSE_SOFTMMU_TARGETS} ; do
use "qemu_softmmu_targets_${target}" && \
softmmu_targets="${softmmu_targets},${target}-softmmu"
done
for target in ${IUSE_USER_TARGETS} ; do
use "qemu_user_targets_${target}" && \
user_targets="${user_targets},${target}-linux-user"
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() {
cd "${S}/softmmu-build"
emake -j1 check
emake -j1 check-report.html
}
qemu_python_install() {
python_domodule "${S}/QMP/qmp.py"
python_doscript "${S}/scripts/kvm/kvm_stat"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/QMP/qmp-shell"
python_doscript "${S}/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
if use test; then
dohtml check-report.html
fi
if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules
fi
if use qemu_softmmu_targets_x86_64 ; then
newbin "${FILESDIR}/qemu-kvm-1.4" qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}"
elif use x86 || use amd64; then
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of the /usr/bin/qemu-kvm script."
fi
if use python; then
python_foreach_impl qemu_python_install
fi
fi
# 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}/QMP/"
cd "${S}"
dodoc Changelog MAINTAINERS docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios
dodoc QMP/qmp-commands.txt QMP/qmp-events.txt QMP/qmp-spec.txt
# 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
qemu_support_kvm && readme.gentoo_create_doc
}
pkg_postinst() {
local virtfs_caps=
if qemu_support_kvm; then
readme.gentoo_print_elog
ewarn "Migration from qemu-kvm instances and loading qemu-kvm created"
ewarn "save states will be removed in the next release (1.6.x)"
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"
fi
virtfs_caps+="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,"
virtfs_caps+="cap_setgid,cap_mknod,cap_setuid"
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
use virtfs && fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/seabios)"
if has_version sys-firmware/seabios[binary]; then
echo " USE=binary"
else
echo " USE=''"
fi
echo " $(best_version sys-firmware/vgabios)"
}

View File

@ -0,0 +1,542 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.5.2.ebuild,v 1.1 2013/07/27 04:14:19 cardoe Exp $
EAPI=5
PYTHON_COMPAT=( python{2_5,2_6,2_7} )
PYTHON_REQ_USE="ncurses,readline"
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
user udev fcaps readme.gentoo
BACKPORTS=2d2faaeb
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.qemu.org/qemu.git"
inherit git-2
SRC_URI=""
KEYWORDS=""
else
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2
${BACKPORTS:+
http://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 gtk iscsi +jpeg \
kernel_linux kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python \
rbd sasl +seccomp sdl selinux smartcard spice static static-softmmu \
static-user systemtap tci test +threads tls usbredir +uuid vde +vhost-net \
virtfs +vnc xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips
mipsel mips64 mips64el or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32"
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 moxie ppcemb xtensa xtensaeb"
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb mipsn32 mipsn32el ppc64abi32 sparc32plus"
# Setup the default SoftMMU targets, while using the loops
# below to setup the other targets.
REQUIRED_USE="|| ("
for target in ${IUSE_SOFTMMU_TARGETS}; do
IUSE="${IUSE} qemu_softmmu_targets_${target}"
REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}"
done
for target in ${IUSE_USER_TARGETS}; do
IUSE="${IUSE} qemu_user_targets_${target}"
REQUIRED_USE="${REQUIRED_USE} qemu_user_targets_${target}"
done
REQUIRED_USE="${REQUIRED_USE} )"
# Block USE flag configurations known to not work
REQUIRED_USE="${REQUIRED_USE}
python? ( ${PYTHON_REQUIRED_USE} )
static? ( static-softmmu static-user )
static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl !gtk )
virtfs? ( xattr )"
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sys-apps/pciutils[static-libs(+)]
sys-libs/zlib[static-libs(+)]
>=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.2.0[static-libs(+)] )
jpeg? ( virtual/jpeg[static-libs(+)] )
ncurses? ( sys-libs/ncurses[static-libs(+)] )
png? ( media-libs/libpng[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-1.0.1[static-libs(+)] )
spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] )
tls? ( net-libs/gnutls[static-libs(+)] )
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
xattr? ( sys-apps/attr[static-libs(+)] )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
RDEPEND="!static-softmmu? ( ${LIB_DEPEND//\[static-libs(+)]} )
static-user? ( >=dev-libs/glib-2.0[static-libs(+)] )
qemu_softmmu_targets_i386? (
>=sys-firmware/ipxe-1.0.0_p20130624
~sys-firmware/seabios-1.7.2.2
~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
)
qemu_softmmu_targets_x86_64? (
>=sys-firmware/ipxe-1.0.0_p20130624
~sys-firmware/seabios-1.7.2.2
~sys-firmware/sgabios-0.1_pre8
~sys-firmware/vgabios-0.7a
)
accessibility? ( app-accessibility/brltty )
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez )
gtk? (
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] )
selinux? ( sec-policy/selinux-qemu )
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="${RDEPEND}
dev-lang/perl
=dev-lang/python-2*
sys-apps/texinfo
virtual/pkgconfig
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static-softmmu? ( ${LIB_DEPEND} )
test? (
dev-libs/glib[utils]
sys-devel/bc
)"
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"
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
}
pkg_setup() {
enewgroup kvm 78
python_export_best
}
src_prepare() {
# Alter target makefiles to accept CFLAGS set via flag-o
sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \
Makefile Makefile.target || die
epatch "${FILESDIR}"/qemu-9999-cflags.patch
[[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch
# Fix ld and objcopy being called directly
tc-export 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 conf_opts audio_opts
local static_flag="static-${buildtype}"
conf_opts="--prefix=/usr"
conf_opts+=" --sysconfdir=/etc"
conf_opts+=" --libdir=/usr/$(get_libdir)"
conf_opts+=" --docdir=/usr/share/doc/${PF}/html"
conf_opts+=" --disable-bsd-user"
conf_opts+=" --disable-guest-agent"
conf_opts+=" --disable-strip"
conf_opts+=" --disable-werror"
conf_opts+=" --python=${PYTHON}"
# audio options
audio_opts="oss"
use alsa && audio_opts="alsa,${audio_opts}"
use sdl && audio_opts="sdl,${audio_opts}"
use pulseaudio && audio_opts="pa,${audio_opts}"
if [[ ${buildtype} == "user" ]]; then
conf_opts+=" --enable-linux-user"
conf_opts+=" --disable-system"
conf_opts+=" --target-list=${user_targets}"
conf_opts+=" --disable-blobs"
conf_opts+=" --disable-bluez"
conf_opts+=" --disable-curses"
conf_opts+=" --disable-kvm"
conf_opts+=" --disable-libiscsi"
conf_opts+=" $(use_enable seccomp)"
conf_opts+=" --disable-sdl"
conf_opts+=" --disable-smartcard-nss"
conf_opts+=" --disable-tools"
conf_opts+=" --disable-vde"
fi
if [[ ${buildtype} == "softmmu" ]]; then
conf_opts+=" --disable-linux-user"
conf_opts+=" --enable-system"
conf_opts+=" --with-system-pixman"
conf_opts+=" --target-list=${softmmu_targets}"
conf_opts+=" $(use_enable bluetooth bluez)"
conf_opts+=" $(use_enable gtk)"
use gtk && conf_opts+=" --with-gtkabi=3.0"
conf_opts+=" $(use_enable sdl)"
conf_opts+=" $(use_enable aio linux-aio)"
conf_opts+=" $(use_enable accessibility brlapi)"
conf_opts+=" $(use_enable caps cap-ng)"
conf_opts+=" $(use_enable curl)"
conf_opts+=" $(use_enable fdt)"
conf_opts+=" $(use_enable iscsi libiscsi)"
conf_opts+=" $(use_enable jpeg vnc-jpeg)"
conf_opts+=" $(use_enable kernel_linux kvm)"
conf_opts+=" $(use_enable kernel_linux nptl)"
conf_opts+=" $(use_enable ncurses curses)"
conf_opts+=" $(use_enable opengl glx)"
conf_opts+=" $(use_enable png vnc-png)"
conf_opts+=" $(use_enable rbd)"
conf_opts+=" $(use_enable sasl vnc-sasl)"
conf_opts+=" $(use_enable seccomp)"
conf_opts+=" $(use_enable smartcard smartcard-nss)"
conf_opts+=" $(use_enable spice)"
conf_opts+=" $(use_enable tls vnc-tls)"
conf_opts+=" $(use_enable tls vnc-ws)"
conf_opts+=" $(use_enable usbredir usb-redir)"
conf_opts+=" $(use_enable uuid)"
conf_opts+=" $(use_enable vde)"
conf_opts+=" $(use_enable vhost-net)"
conf_opts+=" $(use_enable virtfs)"
conf_opts+=" $(use_enable vnc)"
conf_opts+=" $(use_enable xattr attr)"
conf_opts+=" $(use_enable xen)"
conf_opts+=" $(use_enable xen xen-pci-passthrough)"
conf_opts+=" $(use_enable xfs xfsctl)"
use mixemu && conf_opts+=" --enable-mixemu"
conf_opts+=" --audio-drv-list=${audio_opts}"
conf_opts+=" --enable-migration-from-qemu-kvm"
fi
conf_opts+=" $(use_enable debug debug-info)"
conf_opts+=" $(use_enable debug debug-tcg)"
conf_opts+=" --enable-docs"
conf_opts+=" $(use_enable tci tcg-interpreter)"
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Add support for static builds
use ${static_flag} && conf_opts="${conf_opts} --static --disable-pie"
# 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} && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
einfo "./configure ${conf_opts}"
cd ${builddir}
../configure \
--cc="$(tc-getCC)" \
--host-cc="$(tc-getBUILD_CC)" \
${conf_opts} \
|| die "configure failed"
# FreeBSD's kernel does not support QEMU assigning/grabbing
# host USB devices yet
use kernel_FreeBSD && \
sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak
}
src_configure() {
softmmu_targets=
user_targets=
for target in ${IUSE_SOFTMMU_TARGETS} ; do
use "qemu_softmmu_targets_${target}" && \
softmmu_targets="${softmmu_targets},${target}-softmmu"
done
for target in ${IUSE_USER_TARGETS} ; do
use "qemu_user_targets_${target}" && \
user_targets="${user_targets},${target}-linux-user"
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() {
cd "${S}/softmmu-build"
emake -j1 check
emake -j1 check-report.html
}
qemu_python_install() {
python_domodule "${S}/QMP/qmp.py"
python_doscript "${S}/scripts/kvm/kvm_stat"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/QMP/qmp-shell"
python_doscript "${S}/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
if use test; then
dohtml check-report.html
fi
if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules
fi
if use qemu_softmmu_targets_x86_64 ; then
newbin "${FILESDIR}/qemu-kvm-1.4" qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}"
elif use x86 || use amd64; then
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of the /usr/bin/qemu-kvm script."
fi
if use python; then
python_foreach_impl qemu_python_install
fi
fi
# 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}/QMP/"
cd "${S}"
dodoc Changelog MAINTAINERS docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios
dodoc QMP/qmp-commands.txt QMP/qmp-events.txt QMP/qmp-spec.txt
# 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
qemu_support_kvm && readme.gentoo_create_doc
}
pkg_postinst() {
local virtfs_caps=
if qemu_support_kvm; then
readme.gentoo_print_elog
ewarn "Migration from qemu-kvm instances and loading qemu-kvm created"
ewarn "save states will be removed in the next release (1.6.x)"
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"
fi
virtfs_caps+="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,"
virtfs_caps+="cap_setgid,cap_mknod,cap_setuid"
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
use virtfs && fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/seabios)"
if has_version sys-firmware/seabios[binary]; then
echo " USE=binary"
else
echo " USE=''"
fi
echo " $(best_version sys-firmware/vgabios)"
}

View File

@ -1,18 +1,23 @@
# Copyright 1999-2013 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-9999.ebuild,v 1.45 2013/01/21 15:07:32 cardoe Exp $ # $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-9999.ebuild,v 1.56 2013/08/04 18:28:54 cardoe Exp $
EAPI="4" EAPI=5
PYTHON_DEPEND="2" PYTHON_COMPAT=( python{2_5,2_6,2_7} )
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev PYTHON_REQ_USE="ncurses,readline"
#BACKPORTS=6cee76f0
inherit eutils flag-o-matic linux-info toolchain-funcs multilib python-r1 \
user udev fcaps
BACKPORTS=6b5934f9
if [[ ${PV} = *9999* ]]; then if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="git://git.qemu.org/qemu.git" EGIT_REPO_URI="git://git.qemu.org/qemu.git"
inherit git-2 inherit git-2
SRC_URI="" SRC_URI=""
KEYWORDS="" KEYWORDS=""
BACKPORTS="" # live does not need backporting
else else
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2 SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2
${BACKPORTS:+ ${BACKPORTS:+
@ -21,18 +26,20 @@ else
fi fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="http://www.linux-kvm.org" HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2" LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0" SLOT="0"
IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \ IUSE="accessibility +aio alsa bluetooth +caps +curl debug fdt iscsi +jpeg \
kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl +seccomp \ kernel_linux kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python \
sdl selinux smartcard spice static systemtap tci +threads tls usbredir +uuid vde \ rbd sasl +seccomp sdl selinux smartcard spice static static-softmmu \
+vhost-net virtfs +vnc xattr xen xfs" static-user systemtap tci test +threads tls usbredir +uuid vde +vhost-net \
virtfs +vnc xattr xen xfs"
COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32" COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 mips64 mips64el ppcemb xtensa xtensaeb" mipsel mips64 mips64el or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32"
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb ppc64abi32 sparc32plus" IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 moxie ppcemb xtensa xtensaeb"
IUSE_USER_TARGETS="${COMMON_TARGETS} armeb mipsn32 mipsn32el ppc64abi32 sparc32plus"
# Setup the default SoftMMU targets, while using the loops # Setup the default SoftMMU targets, while using the loops
# below to setup the other targets. # below to setup the other targets.
@ -50,64 +57,74 @@ done
# Block USE flag configurations known to not work # Block USE flag configurations known to not work
REQUIRED_USE="${REQUIRED_USE} REQUIRED_USE="${REQUIRED_USE}
static? ( !alsa !pulseaudio !bluetooth !opengl ) python? ( ${PYTHON_REQUIRED_USE} )
static? ( static-softmmu static-user )
static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl )
virtfs? ( xattr )" virtfs? ( xattr )"
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. # Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
# Currently, >=sys-apps/dtc-1.4.0 means -9999 as <libfdt_env.h> appeared only in git tree (after 1.3.0)
LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)] LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)]
sys-apps/pciutils[static-libs(+)] sys-apps/pciutils[static-libs(+)]
sys-libs/zlib[static-libs(+)] sys-libs/zlib[static-libs(+)]
>=x11-libs/pixman-0.28.0[static-libs(+)]
aio? ( dev-libs/libaio[static-libs(+)] ) aio? ( dev-libs/libaio[static-libs(+)] )
caps? ( sys-libs/libcap-ng[static-libs(+)] ) caps? ( sys-libs/libcap-ng[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
fdt? ( >=sys-apps/dtc-1.2.0[static-libs(+)] ) fdt? ( >=sys-apps/dtc-1.4.0[static-libs(+)] )
jpeg? ( virtual/jpeg[static-libs(+)] ) jpeg? ( virtual/jpeg[static-libs(+)] )
ncurses? ( sys-libs/ncurses[static-libs(+)] ) ncurses? ( sys-libs/ncurses[static-libs(+)] )
png? ( media-libs/libpng[static-libs(+)] ) png? ( media-libs/libpng[static-libs(+)] )
rbd? ( sys-cluster/ceph[static-libs(+)] ) rbd? ( sys-cluster/ceph[static-libs(+)] )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] ) sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] )
seccomp? ( >=sys-libs/libseccomp-1.0.1[static-libs(+)] ) seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] ) spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] )
tls? ( net-libs/gnutls[static-libs(+)] ) tls? ( net-libs/gnutls[static-libs(+)] )
uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] ) uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] ) vde? ( net-misc/vde[static-libs(+)] )
xattr? ( sys-apps/attr[static-libs(+)] ) xattr? ( sys-apps/attr[static-libs(+)] )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )" xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} ) RDEPEND="!static-softmmu? ( ${LIB_DEPEND//\[static-libs(+)]} )
!app-emulation/kqemu !app-emulation/kqemu
qemu_softmmu_targets_i386? ( qemu_softmmu_targets_i386? (
sys-firmware/ipxe sys-firmware/ipxe
>=sys-firmware/seabios-1.7.0 sys-firmware/seabios
sys-firmware/sgabios sys-firmware/sgabios
sys-firmware/vgabios sys-firmware/vgabios
) )
qemu_softmmu_targets_x86_64? ( qemu_softmmu_targets_x86_64? (
sys-firmware/ipxe sys-firmware/ipxe
>=sys-firmware/seabios-1.7.0 sys-firmware/seabios
sys-firmware/sgabios sys-firmware/sgabios
sys-firmware/vgabios sys-firmware/vgabios
) )
alsa? ( >=media-libs/alsa-lib-1.0.13 ) alsa? ( >=media-libs/alsa-lib-1.0.13 )
bluetooth? ( net-wireless/bluez ) bluetooth? ( net-wireless/bluez )
brltty? ( app-accessibility/brltty ) accessibility? ( app-accessibility/brltty )
iscsi? ( net-libs/libiscsi )
opengl? ( virtual/opengl ) opengl? ( virtual/opengl )
pulseaudio? ( media-sound/pulseaudio ) pulseaudio? ( media-sound/pulseaudio )
python? ( =dev-lang/python-2*[ncurses] ) python? ( ${PYTHON_DEPS} )
sdl? ( media-libs/libsdl[X] ) sdl? ( media-libs/libsdl[X] )
selinux? ( sec-policy/selinux-qemu ) selinux? ( sec-policy/selinux-qemu )
smartcard? ( dev-libs/nss ) smartcard? ( dev-libs/nss !app-emulation/libcacard )
spice? ( >=app-emulation/spice-protocol-0.12.2 ) spice? ( >=app-emulation/spice-protocol-0.12.3 )
systemtap? ( dev-util/systemtap ) systemtap? ( dev-util/systemtap )
usbredir? ( >=sys-apps/usbredir-0.6 ) usbredir? ( >=sys-apps/usbredir-0.6 )
virtfs? ( sys-libs/libcap ) virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools )" xen? ( app-emulation/xen-tools )"
DEPEND="${RDEPEND} DEPEND="${RDEPEND}
app-text/texi2html
=dev-lang/python-2*
virtual/pkgconfig virtual/pkgconfig
doc? ( app-text/texi2html )
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? ( ${LIB_DEPEND} )" static-softmmu? ( ${LIB_DEPEND} )
test? (
dev-libs/glib[utils]
sys-devel/bc
)"
STRIP_MASK="/usr/share/qemu/palcode-clipper" STRIP_MASK="/usr/share/qemu/palcode-clipper"
@ -115,10 +132,10 @@ QA_PREBUILT="
usr/share/qemu/openbios-ppc usr/share/qemu/openbios-ppc
usr/share/qemu/openbios-sparc64 usr/share/qemu/openbios-sparc64
usr/share/qemu/openbios-sparc32 usr/share/qemu/openbios-sparc32
usr/share/qemu/palcode-clipper" usr/share/qemu/palcode-clipper
usr/share/qemu/s390-ccw.img"
QA_WX_LOAD="${QA_PRESTRIPPED} QA_WX_LOAD="usr/bin/qemu-i386
usr/bin/qemu-i386
usr/bin/qemu-x86_64 usr/bin/qemu-x86_64
usr/bin/qemu-alpha usr/bin/qemu-alpha
usr/bin/qemu-arm usr/bin/qemu-arm
@ -137,10 +154,20 @@ QA_WX_LOAD="${QA_PRESTRIPPED}
usr/bin/qemu-sparc usr/bin/qemu-sparc
usr/bin/qemu-sparc64 usr/bin/qemu-sparc64
usr/bin/qemu-armeb usr/bin/qemu-armeb
usr/bin/qemu-s390x
usr/bin/qemu-sparc32plus usr/bin/qemu-sparc32plus
usr/bin/qemu-s390x
usr/bin/qemu-unicore32" usr/bin/qemu-unicore32"
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() { pkg_pretend() {
if use kernel_linux && kernel_is lt 2 6 25; then 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." eerror "This version of KVM requres a host kernel of 2.6.25 or higher."
@ -174,21 +201,12 @@ pkg_pretend() {
check_extra_config check_extra_config
fi fi
fi fi
if use static; then
ewarn "USE=static is very much a moving target because of the packages"
ewarn "we depend on will have their static libs ripped out or wrapped"
ewarn "with USE=static-libs or USE=static due to continued dicsussion"
ewarn "on the mailing list about USE=static's place in Gentoo. As a"
ewarn "result what worked today may not work tomorrow."
fi
} }
pkg_setup() { pkg_setup() {
python_set_active_version 2
python_pkg_setup
enewgroup kvm 78 enewgroup kvm 78
python_export_best
} }
src_prepare() { src_prepare() {
@ -196,10 +214,7 @@ src_prepare() {
sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \
Makefile Makefile.target || die Makefile Makefile.target || die
python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat" epatch "${FILESDIR}"/qemu-9999-cflags.patch
python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap"
epatch "${FILESDIR}"/${P}-cflags.patch
[[ -n ${BACKPORTS} ]] && \ [[ -n ${BACKPORTS} ]] && \
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
epatch epatch
@ -213,95 +228,111 @@ src_prepare() {
epatch_user epatch_user
} }
src_configure() { ##
# 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 conf_opts audio_opts local conf_opts audio_opts
local static_flag="static-${buildtype}"
for target in ${IUSE_SOFTMMU_TARGETS} ; do conf_opts="--prefix=/usr"
use "qemu_softmmu_targets_${target}" && \ conf_opts+=" --sysconfdir=/etc"
softmmu_targets="${softmmu_targets} ${target}-softmmu" conf_opts+=" --libdir=/usr/$(get_libdir)"
done conf_opts+=" --docdir=/usr/share/doc/${PF}/html"
conf_opts+=" --disable-bsd-user"
for target in ${IUSE_USER_TARGETS} ; do conf_opts+=" --disable-guest-agent"
use "qemu_user_targets_${target}" && \ conf_opts+=" --disable-strip"
user_targets="${user_targets} ${target}-linux-user" conf_opts+=" --disable-werror"
done conf_opts+=" --python=${PYTHON}"
einfo "Building the following softmmu targets: ${softmmu_targets}"
if [[ -n ${user_targets} ]]; then
einfo "Building the following user targets: ${user_targets}"
conf_opts="${conf_opts} --enable-linux-user"
else
conf_opts="${conf_opts} --disable-linux-user"
fi
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Fix QA issues. QEMU needs executable heaps and we need to mark it as such
#conf_opts="${conf_opts} --extra-ldflags=-Wl,-z,execheap"
# Add support for static builds
use static && conf_opts="${conf_opts} --static --disable-pie"
# 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 && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
# audio options # audio options
audio_opts="oss" audio_opts="oss"
use alsa && audio_opts="alsa,${audio_opts}" use alsa && audio_opts="alsa,${audio_opts}"
use sdl && audio_opts="sdl,${audio_opts}" use sdl && audio_opts="sdl,${audio_opts}"
use pulseaudio && audio_opts="pa,${audio_opts}" use pulseaudio && audio_opts="pa,${audio_opts}"
use mixemu && conf_opts="${conf_opts} --enable-mixemu"
./configure --prefix=/usr \ if [[ ${buildtype} == "user" ]]; then
--sysconfdir=/etc \ conf_opts+=" --enable-linux-user"
--docdir=/usr/share/doc/${PF}/html \ conf_opts+=" --disable-system"
--disable-bsd-user \ conf_opts+=" --target-list=${user_targets}"
--disable-guest-agent \ conf_opts+=" --disable-blobs"
--disable-libiscsi \ conf_opts+=" --disable-bluez"
--disable-strip \ conf_opts+=" --disable-curses"
--disable-werror \ conf_opts+=" --disable-kvm"
--python=python2 \ conf_opts+=" --disable-libiscsi"
$(use_enable aio linux-aio) \ conf_opts+=" $(use_enable seccomp)"
$(use_enable bluetooth bluez) \ conf_opts+=" --disable-sdl"
$(use_enable brltty brlapi) \ conf_opts+=" --disable-smartcard-nss"
$(use_enable caps cap-ng) \ conf_opts+=" --disable-tools"
$(use_enable curl) \ conf_opts+=" --disable-vde"
$(use_enable debug debug-info) \ fi
$(use_enable debug debug-tcg) \
$(use_enable doc docs) \ if [[ ${buildtype} == "softmmu" ]]; then
$(use_enable fdt) \ conf_opts+=" --disable-linux-user"
$(use_enable jpeg vnc-jpeg) \ conf_opts+=" --enable-system"
$(use_enable kernel_linux kvm) \ conf_opts+=" --with-system-pixman"
$(use_enable kernel_linux nptl) \ conf_opts+=" --target-list=${softmmu_targets}"
$(use_enable ncurses curses) \ conf_opts+=" $(use_enable bluetooth bluez)"
$(use_enable opengl) \ conf_opts+=" $(use_enable sdl)"
$(use_enable png vnc-png) \ conf_opts+=" $(use_enable aio linux-aio)"
$(use_enable rbd) \ conf_opts+=" $(use_enable accessibility brlapi)"
$(use_enable sasl vnc-sasl) \ conf_opts+=" $(use_enable caps cap-ng)"
$(use_enable sdl) \ conf_opts+=" $(use_enable curl)"
$(use_enable seccomp) \ conf_opts+=" $(use_enable fdt)"
$(use_enable smartcard smartcard-nss) \ conf_opts+=" $(use_enable iscsi libiscsi)"
$(use_enable spice) \ conf_opts+=" $(use_enable jpeg vnc-jpeg)"
$(use_enable tci tcg-interpreter) \ conf_opts+=" $(use_enable kernel_linux kvm)"
$(use_enable tls vnc-tls) \ conf_opts+=" $(use_enable ncurses curses)"
$(use_enable usbredir usb-redir) \ conf_opts+=" $(use_enable opengl glx)"
$(use_enable uuid) \ conf_opts+=" $(use_enable png vnc-png)"
$(use_enable vde) \ conf_opts+=" $(use_enable rbd)"
$(use_enable vhost-net) \ conf_opts+=" $(use_enable sasl vnc-sasl)"
$(use_enable virtfs) \ conf_opts+=" $(use_enable seccomp)"
$(use_enable vnc) \ conf_opts+=" $(use_enable smartcard smartcard-nss)"
$(use_enable xattr attr) \ conf_opts+=" $(use_enable spice)"
$(use_enable xen) \ conf_opts+=" $(use_enable tls vnc-tls)"
$(use_enable xen xen-pci-passthrough) \ conf_opts+=" $(use_enable tls vnc-ws)"
$(use_enable xfs xfsctl) \ conf_opts+=" $(use_enable usbredir usb-redir)"
--audio-drv-list=${audio_opts} \ conf_opts+=" $(use_enable uuid)"
--target-list="${softmmu_targets} ${user_targets}" \ conf_opts+=" $(use_enable vde)"
conf_opts+=" $(use_enable vhost-net)"
conf_opts+=" $(use_enable virtfs)"
conf_opts+=" $(use_enable vnc)"
conf_opts+=" $(use_enable xattr attr)"
conf_opts+=" $(use_enable xen)"
conf_opts+=" $(use_enable xen xen-pci-passthrough)"
conf_opts+=" $(use_enable xfs xfsctl)"
use mixemu && conf_opts+=" --enable-mixemu"
conf_opts+=" --audio-drv-list=${audio_opts}"
#conf_opts+=" --enable-migration-from-qemu-kvm"
fi
conf_opts+=" $(use_enable debug debug-info)"
conf_opts+=" $(use_enable debug debug-tcg)"
conf_opts+=" --enable-docs"
conf_opts+=" $(use_enable tci tcg-interpreter)"
# Add support for SystemTAP
use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace"
# Add support for static builds
use ${static_flag} && conf_opts="${conf_opts} --static --disable-pie"
# 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} && gcc-specs-pie; then
conf_opts="${conf_opts} --enable-pie"
fi
einfo "./configure ${conf_opts}"
cd ${builddir}
../configure \
--cc="$(tc-getCC)" \ --cc="$(tc-getCC)" \
--host-cc="$(tc-getBUILD_CC)" \ --host-cc="$(tc-getBUILD_CC)" \
${conf_opts} \ ${conf_opts} \
@ -313,37 +344,111 @@ src_configure() {
sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak
} }
src_install() { src_configure() {
emake DESTDIR="${ED}" install softmmu_targets=
user_targets=
for target in ${IUSE_SOFTMMU_TARGETS} ; do
use "qemu_softmmu_targets_${target}" && \
softmmu_targets="${softmmu_targets},${target}-softmmu"
done
for target in ${IUSE_USER_TARGETS} ; do
use "qemu_user_targets_${target}" && \
user_targets="${user_targets},${target}-linux-user"
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 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() {
cd "${S}/softmmu-build"
emake -j1 check
emake -j1 check-report.html
}
qemu_python_install() {
python_domodule "${S}/QMP/qmp.py"
python_doscript "${S}/scripts/kvm/kvm_stat"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/QMP/qmp-shell"
python_doscript "${S}/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
if use test; then
dohtml check-report.html
fi
if use kernel_linux; then if use kernel_linux; then
udev_dorules "${FILESDIR}"/65-kvm.rules udev_dorules "${FILESDIR}"/65-kvm.rules
fi fi
if use qemu_softmmu_targets_x86_64 ; then if use qemu_softmmu_targets_x86_64 ; then
dosym /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm newbin "${FILESDIR}/qemu-kvm-1.4" qemu-kvm
ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed" ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed"
ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit" ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit"
ewarn "your libvirt configs or other wrappers for ${PN}" ewarn "your libvirt configs or other wrappers for ${PN}"
elif use x86 || use amd64; then elif use x86 || use amd64; then
elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install"
elog "of the /usr/bin/qemu-kvm symlink." elog "of the /usr/bin/qemu-kvm script."
fi
if use python; then
python_foreach_impl qemu_python_install
fi fi
fi fi
dodoc Changelog MAINTAINERS TODO docs/specs/pci-ids.txt # 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}/QMP/"
cd "${S}"
dodoc Changelog MAINTAINERS docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios newdoc pc-bios/README README.pc-bios
dodoc QMP/qmp-commands.txt QMP/qmp-events.txt QMP/qmp-spec.txt
use python && dobin scripts/kvm/kvm_stat
use python && dobin scripts/kvm/vmxcap
# Avoid collision with app-emulation/libcacard
use smartcard && mv "${ED}/usr/bin/vscclient" "${ED}/usr/bin/qemu-vscclient"
# Install binfmt handler init script for user targets
[[ -n ${user_targets} ]] && \
newinitd "${FILESDIR}/qemu-binfmt.initd" qemu-binfmt
# Remove SeaBIOS since we're using the SeaBIOS packaged one # Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin" rm "${ED}/usr/share/qemu/bios.bin"
@ -384,9 +489,9 @@ src_install() {
} }
pkg_postinst() { pkg_postinst() {
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \ local virtfs_caps=
use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \
use qemu_softmmu_targets_s390x; then if qemu_support_kvm; then
elog "If you don't have kvm compiled into the kernel, make sure you have" elog "If you don't have kvm compiled into the kernel, make sure you have"
elog "the kernel module loaded before running kvm. The easiest way to" elog "the kernel module loaded before running kvm. The easiest way to"
elog "ensure that the kernel module is loaded is to load it on boot." elog "ensure that the kernel module is loaded is to load it on boot."
@ -399,6 +504,25 @@ pkg_postinst() {
elog elog
fi fi
virtfs_caps+="cap_chown,cap_dac_override,cap_fowner,cap_fsetid,"
virtfs_caps+="cap_setgid,cap_mknod,cap_setuid"
fcaps cap_net_admin /usr/libexec/qemu-bridge-helper
use virtfs && fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper
elog "The ssl USE flag was renamed to tls, so adjust your USE flags." elog "The ssl USE flag was renamed to tls, so adjust your USE flags."
elog "The nss USE flag was renamed to smartcard, so adjust your USE flags." elog "The nss USE flag was renamed to smartcard, so adjust your USE flags."
} }
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)"
}

View File

@ -1,6 +1,36 @@
# ChangeLog for sys-firmware/ipxe # ChangeLog for sys-firmware/ipxe
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/ipxe/ChangeLog,v 1.5 2013/01/26 20:16:13 cardoe Exp $ # $Header: /var/cvsroot/gentoo-x86/sys-firmware/ipxe/ChangeLog,v 1.12 2013/07/04 12:25:59 ago Exp $
04 Jul 2013; Agostino Sarubbo <ago@gentoo.org> ipxe-1.0.0_p20130225.ebuild:
Stable for x86, wrt bug #475110
30 Jun 2013; Doug Goldstein <cardoe@gentoo.org> ipxe-1.0.0_p20130624.ebuild:
Updates from Jeroen Roovers <jer@gentoo.org> and Michael Weber
<xmw@gentoo.org> to handle users using the gold linker instead of the default
bfd linker more gracefully.
28 Jun 2013; Agostino Sarubbo <ago@gentoo.org> ipxe-1.0.0_p20130225.ebuild:
Stable for amd64, wrt bug #475110
27 Jun 2013; Doug Goldstein <cardoe@gentoo.org> ipxe-1.0.0_p20130225.ebuild,
ipxe-1.0.0_p20130624.ebuild:
Use filename pointers to give a meaningful name to the tarball.
27 Jun 2013; Doug Goldstein <cardoe@gentoo.org> ipxe-1.0.0_p20130624.ebuild:
Simplify generating our configs for VMWare.
27 Jun 2013; Doug Goldstein <cardoe@gentoo.org> ipxe-1.0.0_p20120905.ebuild,
ipxe-1.0.0_p20130225.ebuild, ipxe-1.0.0_p20130624.ebuild:
Generally disable -Werror.
*ipxe-1.0.0_p20130225 (27 Jun 2013)
*ipxe-1.0.0_p20130624 (27 Jun 2013)
27 Jun 2013; Doug Goldstein <cardoe@gentoo.org> +ipxe-1.0.0_p20130225.ebuild,
+ipxe-1.0.0_p20130624.ebuild:
Add latest iPXE and add the current version that QEMU uses as well. bug
#462898
26 Jan 2013; Doug Goldstein <cardoe@gentoo.org> ipxe-1.0.0_p20120905.ebuild: 26 Jan 2013; Doug Goldstein <cardoe@gentoo.org> ipxe-1.0.0_p20120905.ebuild:
USE=iso needs virtual/cdrtools to successfully build as discovered by Homer USE=iso needs virtual/cdrtools to successfully build as discovered by Homer

View File

@ -1,4 +1,28 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
DIST e6427b7ee117ea4af0812bb13b57999bccd8e058.tar.bz2 2198003 SHA256 008a80b80a8b19ef6963581b5599880d51171aad13f96690589cbc0fa895eaf3 SHA512 8456ef3c27f3f4de827ae4c744cbe2eaacb96cf703a5525f490c53ac26ed597635acb744a50607d733d7bd5014dcbbb333f74da8fe68fddca19e11d047377d73 WHIRLPOOL 814cda89fa52afec2b1a8811407ce3b361c1d7548e40255fdffda2bd0fbb8485352575f19b6935de50582a97c31758cd9bcc2194cb2b222b89313868a032a828 DIST e6427b7ee117ea4af0812bb13b57999bccd8e058.tar.bz2 2198003 SHA256 008a80b80a8b19ef6963581b5599880d51171aad13f96690589cbc0fa895eaf3 SHA512 8456ef3c27f3f4de827ae4c744cbe2eaacb96cf703a5525f490c53ac26ed597635acb744a50607d733d7bd5014dcbbb333f74da8fe68fddca19e11d047377d73 WHIRLPOOL 814cda89fa52afec2b1a8811407ce3b361c1d7548e40255fdffda2bd0fbb8485352575f19b6935de50582a97c31758cd9bcc2194cb2b222b89313868a032a828
EBUILD ipxe-1.0.0_p20120905.ebuild 1716 SHA256 d89c35934acfb2b9ceedd48781af6a1c577577407f0496c0a3a80f91799ca039 SHA512 890d881b0043a774ec6cb9568ae0d80f66a57aa4e7171f84ed62d33f15ac78b4e1b27b40c4c1f2b47f3f8952e323df05d1f29b0853474b097349139478eb783a WHIRLPOOL 2720f4aa0c79089a39394e886c60e07a1c3e0679a2d6ce00a3ec38d2aa34ec4047d31c99bbbb585d147cf9c9346ffb535fdce46c5ab5af38a767398f5a8f4f6a DIST ipxe-1.0.0_p20130225-09c5109.tar.bz2 2208235 SHA256 58fd3470c4807c7206550badbc709c9a48af201b4bfa629379143b21426189fa SHA512 74b72a336ee4874ee134fe2bfa8540a864ddd169e09a7d6dfa688624f674962ea33f01bb287b90fda0cdfe5bf4d38e49362934c22a2da932dd3e4c702ebd56dc WHIRLPOOL fad62b8d15bb67ab194954671ae9e1cfa0df06c2d237b9312994ecaf440f0bb22b72ba28824ee8a13c19fe90f8bd3b2847a80d93da5f10368b096cdfa8230a06
MISC ChangeLog 919 SHA256 d4068dc7d1d167fb201a61f22c3f864f019bad739dad107c0eec1fe53a39d4b8 SHA512 33fc7688abef609d3cbcf41b1d3134740ce1e6c4b792dfa870299cbf9a22b9914bb3e7169b9b6a2b362b12e7df548414a0c1bb704e9aae96c46d2617170e3176 WHIRLPOOL 841310540a6028e2ce7dc42fbbac6e2fb01e6dfe4829e5835fcd810ec6551f76173ff1dc167490787ab0da82e5cbdf59d9fc5efad1569b4e3575e509aa5e2f9b DIST ipxe-1.0.0_p20130624-936134e.tar.bz2 2230605 SHA256 bbf9435515a481ab4e5bfc4e49d5eeb005b60169bad3db269e31228fafbb7bbc SHA512 8a1332794acd0db7bf485bfc2c1c52b4e7e5545e5cc1e4e39bbe6f190a684682613b063cc5c31c94d7715fa07555a851f04abb45e604325c0bb4ab73526df0c9 WHIRLPOOL 1338fc4f8bf69a98713d72ad0a8749bc53e42d99c8088e5536b78001d0f738dcc8aaa537cce7dcb5f4f66818880b936c964fc6bed8ff00e674cf400da9521f5b
EBUILD ipxe-1.0.0_p20120905.ebuild 1736 SHA256 6f5fa565d43bee60cc94023f93e21cb5e5d2247d2740d477014ca70d13434429 SHA512 7ee3a59899941bb80cfbad7b0c09301bcd2b0fdc070382a77fa46972451b4abdd0a9085ff09231b18c69ffff6a94806845e149e7b1512bd52a91ebffd5f8fe6b WHIRLPOOL 3449f9f7a0e0c58de80adf05a02bdc1d4151a353e561c000b0ca4ba2c78bb51b3b447995db62cc82a67492712a13c2f68560c96da1ea558c0eac6a63e930ee3f
EBUILD ipxe-1.0.0_p20130225.ebuild 1923 SHA256 c6f6e5928b38f5848b101d4bf1135abdd628cf5c9c30fee567d3bde595917c2a SHA512 20b13e4750ef7a79cde0751225b8286e3498cf69799d7553e02d94ab40ec745ca355813424cc7dce24862fdc8c2a188a1a0671676953911d3917656c0330396c WHIRLPOOL 6e6a26b99522ea58144cf8a4ab3ce6389138866b692daabd6735e90ee5d0b7f69772de22874421771bf57eb55899509598843722ca3923f06cce7f3d47d2e6c4
EBUILD ipxe-1.0.0_p20130624.ebuild 2340 SHA256 b402f4073f82cc33174f5bd5a06bfe5c33f4c539644d0f41c478b20781abe16f SHA512 c76d6b0ce5ac254526ce63cffbb6bea03a195972cdee9598107299ab5092ce1e12d6c5534ce8de35f66df054e82be3710e7169da98a7cf71eb306ea79921c503 WHIRLPOOL 50348f4b64f7c672d2d77a305b427600fbeca00e919540273935e5144633684f8518ef1edd61c3f450b029152a17ac5fb3c58e07012393a75ff34a71af0c2e7a
MISC ChangeLog 2142 SHA256 c140d11e2d9dfc8b074b46dd27e17ea203ac82ff8ac4f38fe979224cd2084919 SHA512 aea497e7633883a81ded6d3e5206a2f4c69522c3d33a90f177efc37435a29f81c208b590ed87c836743c1c55c745e81282e9f5106444285500b10f3a64564213 WHIRLPOOL 73dee7b659b066e2212cabc987363e7318e463eeb2a5ad5997cb079fa497a8da66c9e5abf47625712db398bb046db9dd947a3d50bebc1fa787813e26975ee98c
MISC metadata.xml 691 SHA256 f0f4dc35384ae2bbc0e938812ae3ec259c490e101fe978e2a7cc8ce8eb3d6a7b SHA512 1e1063f205a4a284224e229fa675f6eb83f03ee80c3874198740da15744961664c3f6fe0ec6c1211dcabfe1204bc92ec355b98075c5d626c3493bfbc7de08ae7 WHIRLPOOL 435dfad45383449b30a12b1caf484f05b39102d5132c9dd5573fddb84cfa2c987e6db700b0bc656e821cbc7fde5b04af5504fd367d665027b7eeef06853ff413 MISC metadata.xml 691 SHA256 f0f4dc35384ae2bbc0e938812ae3ec259c490e101fe978e2a7cc8ce8eb3d6a7b SHA512 1e1063f205a4a284224e229fa675f6eb83f03ee80c3874198740da15744961664c3f6fe0ec6c1211dcabfe1204bc92ec355b98075c5d626c3493bfbc7de08ae7 WHIRLPOOL 435dfad45383449b30a12b1caf484f05b39102d5132c9dd5573fddb84cfa2c987e6db700b0bc656e821cbc7fde5b04af5504fd367d665027b7eeef06853ff413
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.20 (GNU/Linux)
iQIcBAEBCgAGBQJR1WnYAAoJELp701BxlEWfyHkQAJaQl+rSRuSJZqn/SbZ2AoMF
2IBKjmjcs7t0kD71dHq/oIJJs2UqH65ZSTGA626PminMq+zc6+NHMU6Gm+PMLEqY
P1CNlihHTkZrMMmSyRNbBQ/m/6Pab3fQnzlLVX4TQ3QDc4mqzmBCt5RDqS5YE+zf
FmD2/PKVbMvTwqDxeaJ9XrHGY0wHvNf5AS21shscCCvhU9JZQI35dRFqS4IS6gUO
QLhArGMz296ihXR82dg2r51KvKVR9ClM9I7B6c/zbqRWxqzWRZVgI0e6+stsEU5c
sT28g2s3t4hnPRfueZ1xBg1U+PqzebrpXA4H3X5IqgQtL3SGUh4dzjRuiWFV4m9V
AptUWewTg9fOSH1t3aYwgXE5KAbh5Jw4bc90iFtz9eqGceb/NCkWRAh0puRD6W8G
ScoNha0CNSdRSFjZOHqaGEy+venBCJSxqj6dMPG1y0B755kWFQB2L6lH29PW8HaS
41i+nkpolt8VjVqhmiOqgjqjw641daMIO2unZUN8/83xsTxxfxKpmoqFwL2vnCKR
H6K3Keny+/rWkSikBaQxjTd3/3qGWz//BF3SEf2FoZZwnFWJCc3foYdZbO91O6ph
bK5jY5ui1j3cstYTZi4Tcu2ViZ1WvfRd/nV6vBgBEkUIfY1qnx15Ic6PDH35OeQk
CxrBij/uzLPcarvW4ZKz
=TMBx
-----END PGP SIGNATURE-----

View File

@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/ipxe/ipxe-1.0.0_p20120905.ebuild,v 1.5 2013/01/26 20:16:13 cardoe Exp $ # $Header: /var/cvsroot/gentoo-x86/sys-firmware/ipxe/ipxe-1.0.0_p20120905.ebuild,v 1.6 2013/06/27 22:10:51 cardoe Exp $
EAPI=4 EAPI=4
@ -37,6 +37,7 @@ src_configure() {
} }
src_compile() { src_compile() {
export NO_WERROR=1
if use qemu; then if use qemu; then
emake bin/808610de.rom # pxe-e1000.rom emake bin/808610de.rom # pxe-e1000.rom
emake bin/80861209.rom # pxe-eepro100.rom emake bin/80861209.rom # pxe-eepro100.rom

View File

@ -0,0 +1,80 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/ipxe/ipxe-1.0.0_p20130225.ebuild,v 1.5 2013/07/04 12:25:59 ago Exp $
EAPI=5
GIT_REV="09c5109b8585178172c7608de8d52e9d9af0b680"
GIT_SHORT="09c5109"
DESCRIPTION="Open source network boot (PXE) firmware"
HOMEPAGE="http://ipxe.org"
SRC_URI="https://git.ipxe.org/ipxe.git/snapshot/${GIT_REV}.tar.bz2 -> ${P}-${GIT_SHORT}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="iso +qemu undi usb vmware"
DEPEND="sys-devel/make
dev-lang/perl
sys-libs/zlib
iso? (
sys-boot/syslinux
virtual/cdrtools
)"
RDEPEND=""
S="${WORKDIR}/ipxe-${GIT_SHORT}/src"
src_prepare() {
cat <<-EOF > "${S}"/config/local/general.h
#undef BANNER_TIMEOUT
#define BANNER_TIMEOUT 0
EOF
}
src_configure() {
if use vmware; then
sed -i config/sideband.h \
-e 's|//#define[[:space:]]VMWARE_SETTINGS|#define VMWARE_SETTINGS|'
sed -i config/console.h \
-e 's|//#define[[:space:]]CONSOLE_VMWARE|#define CONSOLE_VMWARE|'
fi
}
src_compile() {
export NO_WERROR=1
if use qemu; then
emake bin/808610de.rom # pxe-e1000.rom (old)
emake bin/8086100e.rom # pxe-e1000.rom
emake bin/80861209.rom # pxe-eepro100.rom
emake bin/10500940.rom # pxe-ne2k_pci.rom
emake bin/10222000.rom # pxe-pcnet.rom
emake bin/10ec8139.rom # pxe-rtl8139.rom
emake bin/1af41000.rom # pxe-virtio.rom
fi
if use vmware; then
emake bin/8086100f.mrom # e1000
emake bin/808610d3.mrom # e1000e
emake bin/10222000.mrom # vlance
emake bin/15ad07b0.rom # vmxnet3
fi
use iso && emake bin/ipxe.iso
use undi && emake bin/undionly.kpxe
use usb && emake bin/ipxe.usb
}
src_install() {
insinto /usr/share/ipxe/
if use qemu || use vmware; then
doins bin/*.rom
fi
use vmware && doins bin/*.mrom
use iso && doins bin/*.iso
use undi && doins bin/*.kpxe
use usb && doins bin/*.usb
}

View File

@ -0,0 +1,100 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/ipxe/ipxe-1.0.0_p20130624.ebuild,v 1.5 2013/06/30 02:29:33 cardoe Exp $
EAPI=5
inherit toolchain-funcs
GIT_REV="936134ed460618e18cc05d677a442d43d5e739a1"
GIT_SHORT="936134e"
DESCRIPTION="Open source network boot (PXE) firmware"
HOMEPAGE="http://ipxe.org"
SRC_URI="https://git.ipxe.org/ipxe.git/snapshot/${GIT_REV}.tar.bz2 -> ${P}-${GIT_SHORT}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="iso +qemu undi usb vmware"
DEPEND="sys-devel/make
dev-lang/perl
sys-libs/zlib
iso? (
sys-boot/syslinux
virtual/cdrtools
)"
RDEPEND=""
S="${WORKDIR}/ipxe-${GIT_SHORT}/src"
pkg_setup() {
local myld=$(tc-getLD)
${myld} -v | grep -q "GNU gold" && \
ewarn "gold linker unable to handle 16-bit code using ld.bfd. bug #438058"
}
src_prepare() {
cat <<-EOF > "${S}"/config/local/general.h
#undef BANNER_TIMEOUT
#define BANNER_TIMEOUT 0
EOF
if use vmware; then
cat <<-EOF >> "${S}"/config/local/general.h
#define VMWARE_SETTINGS
#define CONSOLE_VMWARE
EOF
fi
}
src_compile() {
ipxemake() {
# Q='' makes the build verbose since that's what everyone loves now
emake Q='' \
CC=$(tc-getCC) \
LD="$(tc-getLD).bfd" \
AR=$(tc-getAR) \
OBJCOPY=$(tc-getOBJCOPY) \
RANLIB=$(tc-getRANLIB) \
OBJDUMP=$(tc-getPROG OBJDUMP objdump) \
HOST_CC=$(tc-getBUILD_CC) \
${*}
}
export NO_WERROR=1
if use qemu; then
ipxemake bin/808610de.rom # pxe-e1000.rom (old)
ipxemake bin/8086100e.rom # pxe-e1000.rom
ipxemake bin/80861209.rom # pxe-eepro100.rom
ipxemake bin/10500940.rom # pxe-ne2k_pci.rom
ipxemake bin/10222000.rom # pxe-pcnet.rom
ipxemake bin/10ec8139.rom # pxe-rtl8139.rom
ipxemake bin/1af41000.rom # pxe-virtio.rom
fi
if use vmware; then
ipxemake bin/8086100f.mrom # e1000
ipxemake bin/808610d3.mrom # e1000e
ipxemake bin/10222000.mrom # vlance
ipxemake bin/15ad07b0.rom # vmxnet3
fi
use iso && ipxemake bin/ipxe.iso
use undi && ipxemake bin/undionly.kpxe
use usb && ipxemake bin/ipxe.usb
}
src_install() {
insinto /usr/share/ipxe/
if use qemu || use vmware; then
doins bin/*.rom
fi
use vmware && doins bin/*.mrom
use iso && doins bin/*.iso
use undi && doins bin/*.kpxe
use usb && doins bin/*.usb
}

View File

@ -1,6 +1,47 @@
# ChangeLog for sys-firmware/seabios # ChangeLog for sys-firmware/seabios
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/ChangeLog,v 1.10 2013/01/24 22:10:19 ago Exp $ # $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/ChangeLog,v 1.20 2013/07/28 09:27:54 jcallen Exp $
28 Jul 2013; Jonathan Callen <jcallen@gentoo.org> seabios-1.7.2.2.ebuild:
Add missing python dependency, switch to using python-any-r1 as it is usually
more appropriate when the package does not install anything that would depend
on python at runtime.
*seabios-1.7.2.2 (05 Jul 2013)
05 Jul 2013; Doug Goldstein <cardoe@gentoo.org> +seabios-1.7.2.2.ebuild:
Version bump. Switch to python-single-r1 from python eclass. Use QEMU's pre-
built binary to supply the 'upstream' pre-built binary since upstream has not
provided one for this version.
04 Jun 2013; Agostino Sarubbo <ago@gentoo.org> seabios-1.7.2.1.ebuild:
Stable for x86, wrt bug #466092
04 Jun 2013; Agostino Sarubbo <ago@gentoo.org> seabios-1.7.2.1.ebuild:
Stable for amd64, wrt bug #466092
07 May 2013; Agostino Sarubbo <ago@gentoo.org> seabios-1.7.2.ebuild:
Stable for x86, wrt bug #468918
07 May 2013; Agostino Sarubbo <ago@gentoo.org> seabios-1.7.2.ebuild:
Stable for amd64, wrt bug #468918
*seabios-1.7.2.1 (07 May 2013)
07 May 2013; Doug Goldstein <cardoe@gentoo.org> +seabios-1.7.2.1.ebuild:
Version bump. I generated the tarball from the git tag. The bios.bin file is
from qemu 1.4.1.
17 Mar 2013; Doug Goldstein <cardoe@gentoo.org> seabios-1.7.1.ebuild,
seabios-1.7.2.ebuild:
These versions are not compatible with iasl-20130117.
16 Mar 2013; Doug Goldstein <cardoe@gentoo.org> seabios-1.7.2.ebuild:
Need to include eutils, not user eclass.
12 Mar 2013; Doug Goldstein <cardoe@gentoo.org> seabios-1.6.3.ebuild,
seabios-1.7.0.ebuild, seabios-1.7.1.ebuild, seabios-1.7.2.ebuild:
Add a clear warning for people not using USE=binary.
24 Jan 2013; Agostino Sarubbo <ago@gentoo.org> seabios-1.7.1.ebuild: 24 Jan 2013; Agostino Sarubbo <ago@gentoo.org> seabios-1.7.1.ebuild:
Stable for x86, wrt bug #453282 Stable for x86, wrt bug #453282

View File

@ -1,13 +1,39 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
DIST bios.bin-1.7.1.gz 69911 SHA256 faf2385918ca5b7866b23a30a566334a2d9b70f9c0bf2904ff7b8940db4ce4d4 SHA512 eed48b6c985d6f96e419a830e9679ca739bf13f0f3f7099d4fb5c5176fbd5dd5f5d0e3998ec2132eb0a4221b55c7a71624f2845ef040c092b88f1b2c16864de6 WHIRLPOOL 47bebbebe100d35e1427ac10df09fc8df1297dd3b6015cbcd802029dc2a3854503b6551397f38ee83a079a728cce8ab788ebb5b5dc4ed68a8c079704d96c896e DIST bios.bin-1.7.1.gz 69911 SHA256 faf2385918ca5b7866b23a30a566334a2d9b70f9c0bf2904ff7b8940db4ce4d4 SHA512 eed48b6c985d6f96e419a830e9679ca739bf13f0f3f7099d4fb5c5176fbd5dd5f5d0e3998ec2132eb0a4221b55c7a71624f2845ef040c092b88f1b2c16864de6 WHIRLPOOL 47bebbebe100d35e1427ac10df09fc8df1297dd3b6015cbcd802029dc2a3854503b6551397f38ee83a079a728cce8ab788ebb5b5dc4ed68a8c079704d96c896e
DIST bios.bin-1.7.2.1.gz 71961 SHA256 b76824976a43a4379dbdd676b153e762b4e9f0097441a31d70e18c9acc1cae06 SHA512 1e66fec890842b48d11bcb81b63a0b04e3ffca2e1285c356430944819407eb08dc85c50cddab1459a8f94ec1d4492f15207f98ee30263417c47bfd31b8f2a7f1 WHIRLPOOL fc278ccb3763342ab2fc5e1e8fdf05650cc87f23f7620e148ee93918913c2e217b8246e33c1940bf812bbf262180722acbc1ad415c681f3e15409f92b637e510
DIST bios.bin-1.7.2.2.gz 71896 SHA256 c285c3f6c6819ded8e536d2719e28d1840f50730bc4ef790125cc905c91b0416 SHA512 f14a66733a8806d3d12dc3e58dd0969172f1aef9c3826f2b6e87b805cb789cbea7d1e766e8b0e0f1d729e30def575f0ed6515a702ef709e932e78f7e87279db9 WHIRLPOOL 1e9748c768bbc9886e60cb3d6ad091e0193b3e2f9e44867d30bc2270126e8087f04911ab7c9788d3107c067d9ad4929b9a7e9f5fc18e4baa53416a21fbd184d0
DIST bios.bin-1.7.2.gz 71796 SHA256 e0b0b4b08745a9ef89ebdbea5e252ce2c6a5f7659085a4c429ec1597282c5c73 SHA512 ea845bdd0eb51891c343215fc8449284a29b440689673a067fa7ca4cb5f21dde662cc948becc27a1ef44043a9acb0a2c5f62077f8c5898744ee11ee2377f1d6e WHIRLPOOL 89aa58d18b9dfc77d697ca8259d37939b68d1099ea189dccd0316bed1dd589b2162477708307dfa52e66f675d4c77cb8fcb1ddc367ab8d37ad4d8d375629bc2b DIST bios.bin-1.7.2.gz 71796 SHA256 e0b0b4b08745a9ef89ebdbea5e252ce2c6a5f7659085a4c429ec1597282c5c73 SHA512 ea845bdd0eb51891c343215fc8449284a29b440689673a067fa7ca4cb5f21dde662cc948becc27a1ef44043a9acb0a2c5f62077f8c5898744ee11ee2377f1d6e WHIRLPOOL 89aa58d18b9dfc77d697ca8259d37939b68d1099ea189dccd0316bed1dd589b2162477708307dfa52e66f675d4c77cb8fcb1ddc367ab8d37ad4d8d375629bc2b
DIST seabios-1.6.3.tar.gz 438403 SHA256 7bca2e6a0972f16dd238d1ead2f4d12d38dc56e1801237c1205f902d5ea4c799 SHA512 c54991c4250339d04f00600f7b27528d7e31e10032c093409ebb9b0740edf7f179f9b7620f7e77413db51ee27381c40645bddf2550ae450805599cbe8ecbb335 WHIRLPOOL a0d99ceb4b024ed88ae91a2743ec65a0019e2641ac3430592b1204895b24a27e8ae8fe4d9c48ebd13c02eea2b110b8a5bd693a5f7fb603588329a1fa928e89bb DIST seabios-1.6.3.tar.gz 438403 SHA256 7bca2e6a0972f16dd238d1ead2f4d12d38dc56e1801237c1205f902d5ea4c799 SHA512 c54991c4250339d04f00600f7b27528d7e31e10032c093409ebb9b0740edf7f179f9b7620f7e77413db51ee27381c40645bddf2550ae450805599cbe8ecbb335 WHIRLPOOL a0d99ceb4b024ed88ae91a2743ec65a0019e2641ac3430592b1204895b24a27e8ae8fe4d9c48ebd13c02eea2b110b8a5bd693a5f7fb603588329a1fa928e89bb
DIST seabios-1.7.0-bins.tar.xz 59756 SHA256 e444725b5e64e96cfd086560250d6931b085d2c5be014b4fb3227a4e317766d4 SHA512 b47ec7847d8ea8b80ce1658bdca3644570f3c640d380bdd2ac531de652ece83c052f35407b34f96274ff490c0b88ee194c388377c22364f8d7da3813bbc2bf44 WHIRLPOOL d91b8e1c179b0ff294974e954a5a5f6ce7d7470d00754ac6cc1492413df526eb23ff7dd715ef38ed32970f76afe656d0edec8fe90a3434c498105046322663c6 DIST seabios-1.7.0-bins.tar.xz 59756 SHA256 e444725b5e64e96cfd086560250d6931b085d2c5be014b4fb3227a4e317766d4 SHA512 b47ec7847d8ea8b80ce1658bdca3644570f3c640d380bdd2ac531de652ece83c052f35407b34f96274ff490c0b88ee194c388377c22364f8d7da3813bbc2bf44 WHIRLPOOL d91b8e1c179b0ff294974e954a5a5f6ce7d7470d00754ac6cc1492413df526eb23ff7dd715ef38ed32970f76afe656d0edec8fe90a3434c498105046322663c6
DIST seabios-1.7.0.tar.gz 450977 SHA256 54113c953be055e5ad2e54a32bdd9c9b109b50a7a18bbca70d148807ba2f2cd6 SHA512 770d12535638d63a000323aabdac81ffb9576c95f1d21daf5f67b211a9b350ab339221a2929110f80644c5ee610603537cc72136b8cd3ccc76853092b32bd2c1 WHIRLPOOL bd84e3ef1bdb1505ce336e2bec9c51c97a7781837192ee2159fad1de7d2bea564fec57b27c6dca8fcf10e5c48b9a5947762d15a0b887e697469ba9b292b6fb84 DIST seabios-1.7.0.tar.gz 450977 SHA256 54113c953be055e5ad2e54a32bdd9c9b109b50a7a18bbca70d148807ba2f2cd6 SHA512 770d12535638d63a000323aabdac81ffb9576c95f1d21daf5f67b211a9b350ab339221a2929110f80644c5ee610603537cc72136b8cd3ccc76853092b32bd2c1 WHIRLPOOL bd84e3ef1bdb1505ce336e2bec9c51c97a7781837192ee2159fad1de7d2bea564fec57b27c6dca8fcf10e5c48b9a5947762d15a0b887e697469ba9b292b6fb84
DIST seabios-1.7.1.tar.gz 455617 SHA256 40db5ec149dabd94fdf46809fc2c1d4a2cc32af533ca1097463594ceb3cc3eb0 SHA512 b23250e6bec417a81f18200632155c31f30413d9d3400e9a51a882451f08811925ca98ce217a596ae04f065762eae633867ccb5f46c81b443bf88e2e62eaf9bb WHIRLPOOL b90a0e105e93f55b9523f635c0b6b27d1c5ae8e8a41a00633ed4108076680ae1232c5277e818846e196ccc44dbf554325b17a6dad4b900d250903c0ab30fb775 DIST seabios-1.7.1.tar.gz 455617 SHA256 40db5ec149dabd94fdf46809fc2c1d4a2cc32af533ca1097463594ceb3cc3eb0 SHA512 b23250e6bec417a81f18200632155c31f30413d9d3400e9a51a882451f08811925ca98ce217a596ae04f065762eae633867ccb5f46c81b443bf88e2e62eaf9bb WHIRLPOOL b90a0e105e93f55b9523f635c0b6b27d1c5ae8e8a41a00633ed4108076680ae1232c5277e818846e196ccc44dbf554325b17a6dad4b900d250903c0ab30fb775
DIST seabios-1.7.2.1.tar.gz 458187 SHA256 0d9d5012e753eb2e32718aec3982f7305bd36f4eaf1d0261a49d0b118aa6c8dc SHA512 403454c17f7f61fb45e4749ce62247371c4547510b6f2f9ff5aa97836963d43401d1528139674b68a4dbb92ee275ed47ace2e2efb3e6db92be414d2f30db5bc3 WHIRLPOOL 25cc00c4ecef56cd2cad89c4eea53ca3adf1e2b91aad82edff16d89b92d21b5c0c7e09d241e1ea03209ec6317ad0f4a2760a62631e4ce7802785292468e48509
DIST seabios-1.7.2.2.tar.gz 448904 SHA256 5ef40e80c8e4ae825922766e82f28232958056f82912a72916ca5dae2147deaa SHA512 2fbe56d04af92b7e7166d2c4b0af0395750c57449735302ee4ef3794a5789a1d1922f9fce53970d3f1923f8ca82daa1d3e4041caaae884c9366c41e11e316e17 WHIRLPOOL 1ffcdc294f7827f669db34e120ccbf6da183359360010288556157d9287b2f55097c90750c3a3f252560363f2b938e8ce95bfb17300e1bc6549a2ae3216a041e
DIST seabios-1.7.2.tar.gz 467079 SHA256 59d853550925840b0b3f556ec65037d145e113796e9ba7f23578283613f0f2bd SHA512 5321839dda165d488ab315a8e50ee76ed6442e3a18d28783e4512206b771413cd8ac6cfde066edbd7045d8f68747ed21fd3b6f04e3c82244e8c4a1d0762c03b7 WHIRLPOOL ae938d4e935650e53b774c8a4a14dafd07c19d3ad5dcd72281229e934f7c7ee9c4a97d4ad21c8de1cb78a65ca0ebce1859f80834aa312d76ad82332dbb241183 DIST seabios-1.7.2.tar.gz 467079 SHA256 59d853550925840b0b3f556ec65037d145e113796e9ba7f23578283613f0f2bd SHA512 5321839dda165d488ab315a8e50ee76ed6442e3a18d28783e4512206b771413cd8ac6cfde066edbd7045d8f68747ed21fd3b6f04e3c82244e8c4a1d0762c03b7 WHIRLPOOL ae938d4e935650e53b774c8a4a14dafd07c19d3ad5dcd72281229e934f7c7ee9c4a97d4ad21c8de1cb78a65ca0ebce1859f80834aa312d76ad82332dbb241183
EBUILD seabios-1.6.3.ebuild 1247 SHA256 deadd0afd9f5a16d80440a57707e97f3bbb8212815b7cb1a65e1b87459d15e9b SHA512 a8abaeef3d4e8b3326fb3f92b85a5999098f4d71914b0177b40ac4aa2ea9ef01299eb193999dd8c0ffd52fd2f260b52c72c2f8d3566664be1af3cfbe6f6aa25b WHIRLPOOL 9e571b7dc326c225a82078265015372522a9c1de9e5596462d9b1ae393299f25dc2532dcc3326a17aa486ce11487d5e3daad0d2324052679cadbc660efa4d7f2 EBUILD seabios-1.6.3.ebuild 1702 SHA256 31e2ca5abe18d889b6d6b74738fe366b9b9a4c78f1106ec6077de9b0895324eb SHA512 c790b0d09fe4bea784d1c0cb8ded5ee8c76ec7c32df69083febca46fb25e24f3827cd386b927625c10bfb5c6f81aab187e2192a4176fdd89c5026314b26183e1 WHIRLPOOL 07f740498083f6a9187ce2a827962ddd75e5ec593c0fb7730cf636df2eef1d4504671fb9973c7578b5553984e0db980f5ab825dd720001cf17e9cd9451b1ab15
EBUILD seabios-1.7.0.ebuild 1359 SHA256 edadb91d94678dafc176676d9c57ec8a5c5cf45acae10b92b51c0d61eded2b4e SHA512 7745cf19590278f0dab0308dce075b1fc30a6f9a21095e53159b94194a445df63069900198d0423073611bc10fe097461939b11f487415349120e33a1e0a0595 WHIRLPOOL 752f3ae35f7760d7a7ba4c01db88cfcace5341fc183bc6e22690231e7b2d9acaba2c5821f8a3b7fc269c8f03d4cc4fd0d56faa5c1379943f5d906cf46611ffdf EBUILD seabios-1.7.0.ebuild 1814 SHA256 7beb44ca1e25af940157d8cc52f2976f7ad01ec8129061d4d8d541b57b4d8fa8 SHA512 265f919694b82d4b7630f3ad9d46cdec61e6ecb63f0e8f8d126e2501613044f41b7d863cb1c95847ff403ea054eee777e29cc67f46350de8996dfc0bae496283 WHIRLPOOL 8ef6cae0fefd799aa7f69e280684b7c716d159c038a307d8d13a8e48d628d322b5d6bd8a940f19056743b9c0ccfcb97c1f18f6058087b945c8a9236bd50a7e64
EBUILD seabios-1.7.1.ebuild 1449 SHA256 a9f243e9f7afec0f6a6f9c6340d0f99118261daa6c5ac606bdf96160f30a7d34 SHA512 4fe84453122f6f8ed2093a34f4ba5b1b5946a84994a83e31143e7e247eaa2f6ba9b83d6b6ca920706d9cdbe4b4808308d4241df055c25342d2211514f4e00448 WHIRLPOOL e43e9919467c44534bde701bdd9f0900eb3fecf51395475bf37d01b88fb2a738e657049b737ebea2d0a42cff46979d6a4b566f3d04b75112f3ef08199271983c EBUILD seabios-1.7.1.ebuild 1949 SHA256 1201ab8d0e8d4b2d69d65ed2465fec64898dddf1c6b740f0bd112d094c5ff094 SHA512 6df0534d25e9b08680f075a5fc1ad5ad070848da8877f306a453b1ae14fcf53502318b95524cf0547b73f2fbcb75dec2367c37bdd79bb92b95e9dc9f09b1038b WHIRLPOOL f790ca4c28691a6e7f5ad2db96a410a6a525039fabef8c5db4d441c4c5ef0d1dddb98c4e0d11a2a7eb1462d0e20ece3c4cd8639cf2bfa1ec78596ec72e6a2d10
EBUILD seabios-1.7.2.ebuild 1454 SHA256 4cdb2f5659e4e4a966a0f2d134251fe7745e620cbccd088f1eaaf069b2c5d97d SHA512 4e5c483ee41b0a8f96d163e8fc0ecf66aeb01a2ad8c9811d1213f03eac754e02390bf922c04abec24dc87b16c904ec775972c8804217030189d5c8f27792efc4 WHIRLPOOL 8a6b66ce4bc69af5584734ff74c1d06cadad6812d841e567998a01ee72914dc7df9c0bd1076e6240654fef1feea3eb063cccb04bb1ed3ec571cf9249bf72f66d EBUILD seabios-1.7.2.1.ebuild 2050 SHA256 ca60215d41c2220bea30f01564798b31a1b8c0290f7ccb3b6fc7d8dbd8dc4dd5 SHA512 f438901a089672835a7c46650bd3cf8b7b960bb1a3f690eb7e7bb90fa389ac1e736f55717dd0cdea657edb6812d11d45535e93ca2dbb0035aa8f58d010397295 WHIRLPOOL ccd184d2035b062a56ebffdab0921932ab775719c3817b09ac059a41038c3b503134608cdae4539ae524d3c4fd07bb0966a435d0084ab6691431e7849eb452dd
MISC ChangeLog 3412 SHA256 a7d8275e897327f4ededb2f2fce94f954469625d4216bf2f483e43db11d16cae SHA512 57a15a2e80947d072c1fda5ff1119126c4fac6355005894287cb88306e853187a8de8f89e78dcf12fcaad2dece7a0e3dde0353471e00348df212d2d5f40fa679 WHIRLPOOL dcd23c53595a4ed11ac4c5493e3910d08b9faa8ba70abcee725b374fa28f0402e6b8561d30b0f7e39da6724904742ebaaa11b1cc2acacd2974c4e120661230f7 EBUILD seabios-1.7.2.2.ebuild 2393 SHA256 223c714a7bb44ec876548246ba57ccbd8af4b822c4d7761adf7e35af1a3a3736 SHA512 d693e8d471694fb3c7e23ab65e7241bd43afe9b763ca056a6c965b26bf5949f4892557798226e07ca782bfd19d0a356cb4274032e3e64e18f4a752cb2c55652e WHIRLPOOL 714d7b14d621767b07c7a730af8c7a3f88b86eaf7ea1b1f25edd553a4df7c1bed6b18e1ba96d556921e00fbd402a9b16b091f3d6c503a2003673518a16cbea23
EBUILD seabios-1.7.2.ebuild 1967 SHA256 f7c5af4a96b276e2cd1ff580aab0892e701ce32b43a3581f1ba946813433ae91 SHA512 2b8d5ab8a5a7a116d4d992116a6e932cdd6ee286118a23485b94f3b5fa26594d5e7b864c7c2b95e12dbde508a00e651c615c3e9efbac65111af8cec9da092d02 WHIRLPOOL 1fa38077f0a839a8d897fe5c51f2af9ef692ff4cdc2a031c499a390950b7de1c242bbe9af561f27dc398ca9f1f08f861d9f39cd3f7293c53ca49f6fca6922edc
MISC ChangeLog 5080 SHA256 6cab9ca222d558d71d882de5877dac8d2333e18a48727fefc518a157d9d95f07 SHA512 deb7a28637f570b4e956d41f6874be3bfdc60181b28cb0350e7c4039850b4d43f6cdeb0f72f32feb1b987216ec19e5272093808e54b7f9551a0690e2c6350bf6 WHIRLPOOL 2cb51bba4d0e5c86db469c16e2ec7df6ad094e9b282531adf7286d6c10ac4e5b2020de6278c55f3579641bb39df1a39813bb57be1ab1b4df1ec34876f430070c
MISC metadata.xml 348 SHA256 d3c5d1a4872e9f9c7006e20ea9abdd6b4f661041eb00111b09f4d7054b9a875c SHA512 a8424c71b656df412b38b171638815f32476496cd08faccb5504f9371960442af6fa0ed531609e43ca527f7a2df1ff2821938a060c35d43cfa2612e7c6ed3998 WHIRLPOOL ee7ccf452f7de334cfb398a4e735f139a7e24363b82409838062662755b565ca7f43e9bdc5c31c839352d8a4d64dd419722b7e413b243ad470199a4aeca12544 MISC metadata.xml 348 SHA256 d3c5d1a4872e9f9c7006e20ea9abdd6b4f661041eb00111b09f4d7054b9a875c SHA512 a8424c71b656df412b38b171638815f32476496cd08faccb5504f9371960442af6fa0ed531609e43ca527f7a2df1ff2821938a060c35d43cfa2612e7c6ed3998 WHIRLPOOL ee7ccf452f7de334cfb398a4e735f139a7e24363b82409838062662755b565ca7f43e9bdc5c31c839352d8a4d64dd419722b7e413b243ad470199a4aeca12544
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.20 (GNU/Linux)
iQIcBAEBCAAGBQJR9OQbAAoJELHSF2kinlg4HcYP/1yOaDla2uQ7s7tafWSQo4Sm
jTrmLUXgZxEdl7NSZCA7ihy2Iic8APjdZk+ZmUon8AJrfEZjfXej0r2KWdubMHo4
RY56GunVqyl2IxrDtYRnruBzf74fxvZ/z7QgUl/P1WhCyWYJMO7DnSATnJ6+pvRh
SsUv/T9+21PGadeo4LuzTwqqnQu5h2YOyCYNtoLi1ev+Tm1bcgrbdFIgXbQ1bQh5
0/THHD3Jqf/IeTQyl8JfD3AFAKjWW7A8VD7DNJHmNVz8iNEdWDcDQ24J+8JySp/y
VvOJ5LWL0GFBMX+6xUliDK75gcUsv1xwnjQK7B2QNV7x8togIUOumeRId2teB6pa
FeH+S4wH4o/qXl2zFX8NvXg3MU8vMPJ8CYj7QAq2doPtfi6m5WSz5/bu/XjvB26e
m0xy1ndAxGgzpohXx4//kHuBanaMdmjRg85x5i67QfFsEpNAIuPf62+3EnQeM0o4
UUnoJdS7ZkNYV9Mms3zQ+aILGK57rlKGFHKg0lenLFOlfIfTqg0he3HHmMmEISPB
qHhBtpO45wojyOXIfwtk3dH4mVXqnW+Jcsb1IXNBLHeF1DVkVhgwFE/fsr7Lvmoq
MO/PB48/K8LQxhRE19J1lHtH2hP2BR4cOxuWfgpMCMh1gzlRtOAhQhUPuhPWDdNJ
QCfcDp4uJEZ91lpYSP4F
=b0Tf
-----END PGP SIGNATURE-----

View File

@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.6.3.ebuild,v 1.2 2012/10/09 20:25:02 cardoe Exp $ # $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.6.3.ebuild,v 1.3 2013/03/12 14:50:52 cardoe Exp $
EAPI=4 EAPI=4
@ -33,6 +33,19 @@ IUSE=""
DEPEND="" DEPEND=""
RDEPEND="${DEPEND}" RDEPEND="${DEPEND}"
pkg_pretend() {
if ! use binary; then
ewarn "You have decided to compile your own SeaBIOS. This is not"
ewarn "supported by upstream unless you use their recommended"
ewarn "toolchain (which you are not)."
elog
ewarn "If you are intending to use this build with QEMU, realize"
ewarn "you will not receive any support if you have compiled your"
ewarn "own SeaBIOS. Virtual machines subtly fail based on changes"
ewarn "in SeaBIOS."
fi
}
pkg_setup() { pkg_setup() {
python_set_active_version 2 python_set_active_version 2
} }

View File

@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.7.0.ebuild,v 1.5 2012/10/17 03:39:28 cardoe Exp $ # $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.7.0.ebuild,v 1.6 2013/03/12 14:50:52 cardoe Exp $
EAPI=4 EAPI=4
@ -32,6 +32,19 @@ IUSE=""
DEPEND="" DEPEND=""
RDEPEND="${DEPEND}" RDEPEND="${DEPEND}"
pkg_pretend() {
if ! use binary; then
ewarn "You have decided to compile your own SeaBIOS. This is not"
ewarn "supported by upstream unless you use their recommended"
ewarn "toolchain (which you are not)."
elog
ewarn "If you are intending to use this build with QEMU, realize"
ewarn "you will not receive any support if you have compiled your"
ewarn "own SeaBIOS. Virtual machines subtly fail based on changes"
ewarn "in SeaBIOS."
fi
}
pkg_setup() { pkg_setup() {
python_set_active_version 2 python_set_active_version 2
} }

View File

@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.7.1.ebuild,v 1.4 2013/01/24 22:10:19 ago Exp $ # $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.7.1.ebuild,v 1.6 2013/03/17 03:14:42 cardoe Exp $
EAPI=4 EAPI=4
@ -32,9 +32,25 @@ IUSE="+binary"
REQUIRED_USE="ppc? ( binary ) REQUIRED_USE="ppc? ( binary )
ppc64? ( binary )" ppc64? ( binary )"
DEPEND="!binary? ( sys-power/iasl )" DEPEND="!binary? (
>=sys-power/iasl-20060912
<sys-power/iasl-20130117
)"
RDEPEND="" RDEPEND=""
pkg_pretend() {
if ! use binary; then
ewarn "You have decided to compile your own SeaBIOS. This is not"
ewarn "supported by upstream unless you use their recommended"
ewarn "toolchain (which you are not)."
elog
ewarn "If you are intending to use this build with QEMU, realize"
ewarn "you will not receive any support if you have compiled your"
ewarn "own SeaBIOS. Virtual machines subtly fail based on changes"
ewarn "in SeaBIOS."
fi
}
pkg_setup() { pkg_setup() {
python_set_active_version 2 python_set_active_version 2
} }

View File

@ -0,0 +1,86 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.7.2.1.ebuild,v 1.3 2013/06/04 12:32:59 ago Exp $
EAPI=5
PYTHON_DEPEND="2"
inherit eutils python
#BACKPORTS=1
if [[ ${PV} = *9999* || ! -z "${EGIT_COMMIT}" ]]; then
EGIT_REPO_URI="git://git.seabios.org/seabios.git"
inherit git-2
KEYWORDS=""
SRC_URI=""
else
KEYWORDS="amd64 ~ppc ~ppc64 x86 ~amd64-fbsd ~x86-fbsd"
SRC_URI="http://code.coreboot.org/p/seabios/downloads/get/${P}.tar.gz
http://code.coreboot.org/p/seabios/downloads/get/bios.bin-${PV}.gz
http://dev.gentoo.org/~cardoe/distfiles/${P}.tar.gz
http://dev.gentoo.org/~cardoe/distfiles/bios.bin-${PV}.gz
${BACKPORTS:+http://dev.gentoo.org/~cardoe/distfiles/${P}-bp-${BACKPORTS}.tar.bz2}"
fi
DESCRIPTION="Open Source implementation of a 16-bit x86 BIOS"
HOMEPAGE="http://www.seabios.org"
LICENSE="LGPL-3 GPL-3"
SLOT="0"
IUSE="+binary"
REQUIRED_USE="ppc? ( binary )
ppc64? ( binary )"
DEPEND="!binary? ( >=sys-power/iasl-20060912 )"
RDEPEND=""
pkg_pretend() {
if ! use binary; then
ewarn "You have decided to compile your own SeaBIOS. This is not"
ewarn "supported by upstream unless you use their recommended"
ewarn "toolchain (which you are not)."
elog
ewarn "If you are intending to use this build with QEMU, realize"
ewarn "you will not receive any support if you have compiled your"
ewarn "own SeaBIOS. Virtual machines subtly fail based on changes"
ewarn "in SeaBIOS."
fi
}
pkg_setup() {
python_set_active_version 2
}
src_prepare() {
if [[ -z "${EGIT_COMMIT}" ]]; then
sed -e "s/VERSION=.*/VERSION=${PV}/" \
-i "${S}/Makefile"
else
sed -e "s/VERSION=.*/VERSION=${PV}_pre${EGIT_COMMIT}/" \
-i "${S}/Makefile"
fi
epatch_user
}
src_configure() {
:
}
src_compile() {
if ! use binary ; then
LANG=C emake out/bios.bin
fi
}
src_install() {
insinto /usr/share/seabios
if ! use binary ; then
doins out/bios.bin
else
newins ../bios.bin-${PV} bios.bin
fi
}

View File

@ -0,0 +1,98 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.7.2.2.ebuild,v 1.2 2013/07/28 09:27:54 jcallen Exp $
EAPI=5
PYTHON_COMPAT=( python{2_6,2_7} )
inherit eutils python-any-r1
#BACKPORTS=1
# SeaBIOS maintainers don't release stable tarballs or stable binaries
# to generate the stable tarball the following is necessary:
# git clone git://git.seabios.org/seabios.git && cd seabios
# git archive --output seabios-${PV}.tar.gz --prefix seabios-${PV}/ rel-${PV}
if [[ ${PV} = *9999* || ! -z "${EGIT_COMMIT}" ]]; then
EGIT_REPO_URI="git://git.seabios.org/seabios.git"
inherit git-2
KEYWORDS=""
SRC_URI=""
else
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd"
SRC_URI="http://code.coreboot.org/p/seabios/downloads/get/${P}.tar.gz
http://code.coreboot.org/p/seabios/downloads/get/bios.bin-${PV}.gz
http://dev.gentoo.org/~cardoe/distfiles/${P}.tar.gz
http://dev.gentoo.org/~cardoe/distfiles/bios.bin-${PV}.gz
${BACKPORTS:+http://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}"
fi
DESCRIPTION="Open Source implementation of a 16-bit x86 BIOS"
HOMEPAGE="http://www.seabios.org"
LICENSE="LGPL-3 GPL-3"
SLOT="0"
IUSE="+binary"
REQUIRED_USE="ppc? ( binary )
ppc64? ( binary )"
DEPEND="
!binary? (
>=sys-power/iasl-20060912
${PYTHON_DEPS}
)
"
RDEPEND=""
pkg_pretend() {
if ! use binary; then
ewarn "You have decided to compile your own SeaBIOS. This is not"
ewarn "supported by upstream unless you use their recommended"
ewarn "toolchain (which you are not)."
elog
ewarn "If you are intending to use this build with QEMU, realize"
ewarn "you will not receive any support if you have compiled your"
ewarn "own SeaBIOS. Virtual machines subtly fail based on changes"
ewarn "in SeaBIOS."
fi
}
pkg_setup() {
if ! use binary; then
python-any-r1_pkg_setup
fi
}
src_prepare() {
if [[ -z "${EGIT_COMMIT}" ]]; then
sed -e "s/VERSION=.*/VERSION=${PV}/" \
-i "${S}/Makefile"
else
sed -e "s/VERSION=.*/VERSION=${PV}_pre${EGIT_COMMIT}/" \
-i "${S}/Makefile"
fi
epatch_user
}
src_configure() {
:
}
src_compile() {
if ! use binary ; then
LANG=C emake out/bios.bin
fi
}
src_install() {
insinto /usr/share/seabios
if ! use binary ; then
doins out/bios.bin
else
newins ../bios.bin-${PV} bios.bin
fi
}

View File

@ -1,12 +1,12 @@
# Copyright 1999-2013 Gentoo Foundation # Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.7.2.ebuild,v 1.1 2013/01/23 21:21:40 cardoe Exp $ # $Header: /var/cvsroot/gentoo-x86/sys-firmware/seabios/seabios-1.7.2.ebuild,v 1.6 2013/05/07 19:33:10 ago Exp $
EAPI=5 EAPI=5
PYTHON_DEPEND="2" PYTHON_DEPEND="2"
inherit python inherit eutils python
#BACKPORTS=1 #BACKPORTS=1
@ -16,7 +16,7 @@ if [[ ${PV} = *9999* || ! -z "${EGIT_COMMIT}" ]]; then
KEYWORDS="" KEYWORDS=""
SRC_URI="" SRC_URI=""
else else
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd" KEYWORDS="amd64 ~ppc ~ppc64 x86 ~amd64-fbsd ~x86-fbsd"
SRC_URI="http://code.coreboot.org/p/seabios/downloads/get/${P}.tar.gz SRC_URI="http://code.coreboot.org/p/seabios/downloads/get/${P}.tar.gz
http://code.coreboot.org/p/seabios/downloads/get/bios.bin-${PV}.gz http://code.coreboot.org/p/seabios/downloads/get/bios.bin-${PV}.gz
${BACKPORTS:+http://dev.gentoo.org/~cardoe/distfiles/${P}-bp-${BACKPORTS}.tar.bz2}" ${BACKPORTS:+http://dev.gentoo.org/~cardoe/distfiles/${P}-bp-${BACKPORTS}.tar.bz2}"
@ -32,9 +32,25 @@ IUSE="+binary"
REQUIRED_USE="ppc? ( binary ) REQUIRED_USE="ppc? ( binary )
ppc64? ( binary )" ppc64? ( binary )"
DEPEND="!binary? ( sys-power/iasl )" DEPEND="!binary? (
>=sys-power/iasl-20060912
<sys-power/iasl-20130117
)"
RDEPEND="" RDEPEND=""
pkg_pretend() {
if ! use binary; then
ewarn "You have decided to compile your own SeaBIOS. This is not"
ewarn "supported by upstream unless you use their recommended"
ewarn "toolchain (which you are not)."
elog
ewarn "If you are intending to use this build with QEMU, realize"
ewarn "you will not receive any support if you have compiled your"
ewarn "own SeaBIOS. Virtual machines subtly fail based on changes"
ewarn "in SeaBIOS."
fi
}
pkg_setup() { pkg_setup() {
python_set_active_version 2 python_set_active_version 2
} }
@ -47,6 +63,8 @@ src_prepare() {
sed -e "s/VERSION=.*/VERSION=${PV}_pre${EGIT_COMMIT}/" \ sed -e "s/VERSION=.*/VERSION=${PV}_pre${EGIT_COMMIT}/" \
-i "${S}/Makefile" -i "${S}/Makefile"
fi fi
epatch_user
} }
src_configure() { src_configure() {

View File

@ -0,0 +1,639 @@
# ChangeLog for x11-libs/pixman
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/x11-libs/pixman/ChangeLog,v 1.162 2013/06/05 00:43:48 vapier Exp $
05 Jun 2013; Mike Frysinger <vapier@gentoo.org> metadata.xml:
Add upstream CPE tag (security info) from ChromiumOS.
09 May 2013; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
-pixman-0.29.4.ebuild:
Drop old prerelease.
*pixman-0.30.0 (09 May 2013)
09 May 2013; Matt Turner <mattst88@gentoo.org> +pixman-0.30.0.ebuild:
Version bump to 0.30.0.
*pixman-0.29.4 (04 May 2013)
04 May 2013; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+pixman-0.29.4.ebuild, -pixman-0.29.2.ebuild:
Bump to latest prerelease.
21 Feb 2013; Zac Medico <zmedico@gentoo.org> pixman-0.29.2.ebuild:
Add ~arm-linux keyword.
07 Feb 2013; Matt Turner <mattst88@gentoo.org> pixman-0.29.2.ebuild:
Typo fix for loongson-mmi, bug 455966.
06 Feb 2013; Matt Turner <mattst88@gentoo.org> metadata.xml,
pixman-0.29.2.ebuild:
Add loongson2f USE flag, bug 431422.
06 Feb 2013; Matt Turner <mattst88@gentoo.org>
-files/pixman-0.24.0-posix-test.patch,
-files/pixman-0.26.0-add-missing-_mm_empty-calls.patch, -pixman-0.20.2.ebuild,
-pixman-0.22.0.ebuild, -pixman-0.22.2.ebuild, -pixman-0.24.0.ebuild,
-pixman-0.24.2.ebuild, -pixman-0.24.4.ebuild, -pixman-0.26.0.ebuild,
-pixman-0.26.2.ebuild, metadata.xml, pixman-0.28.0.ebuild,
pixman-0.28.2.ebuild, pixman-0.29.2.ebuild:
Drop old. Rename mmx USE flag to mmxext to reflect reality.
31 Jan 2013; Matt Turner <mattst88@gentoo.org> pixman-0.20.2.ebuild,
pixman-0.22.0.ebuild, pixman-0.22.2.ebuild, pixman-0.24.0.ebuild,
pixman-0.24.2.ebuild, pixman-0.24.4.ebuild, pixman-0.26.0.ebuild,
pixman-0.26.2.ebuild, pixman-0.28.0.ebuild, pixman-0.28.2.ebuild,
pixman-0.29.2.ebuild:
Add --disable-libpng, bug 453510.
*pixman-0.29.2 (31 Jan 2013)
31 Jan 2013; Matt Turner <mattst88@gentoo.org> +pixman-0.29.2.ebuild:
Version bump to 0.29.2.
04 Jan 2013; Jeroen Roovers <jer@gentoo.org> pixman-0.28.0.ebuild:
Stable for HPPA (bug #440872).
01 Jan 2013; Raúl Porcel <armin76@gentoo.org> pixman-0.28.0.ebuild:
s390/sh stable wrt #440872
30 Dec 2012; Agostino Sarubbo <ago@gentoo.org> pixman-0.28.0.ebuild:
Stable for alpha, wrt bug #440872
28 Dec 2012; Agostino Sarubbo <ago@gentoo.org> pixman-0.28.0.ebuild:
Stable for sparc, wrt bug #440872
28 Dec 2012; Agostino Sarubbo <ago@gentoo.org> pixman-0.28.0.ebuild:
Stable for ia64, wrt bug #440872
17 Dec 2012; Markus Meier <maekke@gentoo.org> pixman-0.28.0.ebuild:
arm stable, bug #440872
*pixman-0.28.2 (10 Dec 2012)
10 Dec 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+pixman-0.28.2.ebuild:
Version bump.
08 Dec 2012; Agostino Sarubbo <ago@gentoo.org> pixman-0.28.0.ebuild:
Stable for ppc64, wrt bug #440872
28 Nov 2012; Brent Baude <ranger@gentoo.org> pixman-0.28.0.ebuild:
Marking pixman-0.28.0 ppc stable for bug 440872
18 Nov 2012; Agostino Sarubbo <ago@gentoo.org> pixman-0.28.0.ebuild:
Stable for x86, wrt bug #440872
16 Nov 2012; Agostino Sarubbo <ago@gentoo.org> pixman-0.28.0.ebuild:
Stable for amd64, wrt bug #440872
*pixman-0.28.0 (10 Nov 2012)
10 Nov 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+pixman-0.28.0.ebuild, -pixman-0.27.2.ebuild, -pixman-0.27.4.ebuild:
Version bump.
*pixman-0.27.4 (26 Oct 2012)
26 Oct 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+pixman-0.27.4.ebuild:
Version bump.
26 Aug 2012; Raúl Porcel <armin76@gentoo.org> pixman-0.26.0.ebuild:
alpha/ia64/s390/sh/sparc stable wrt #419473
*pixman-0.27.2 (02 Aug 2012)
02 Aug 2012; Matt Turner <mattst88@gentoo.org> +pixman-0.27.2.ebuild:
Version bump, bug 429460.
12 Jul 2012; Brent Baude <ranger@gentoo.org> pixman-0.26.0.ebuild:
Marking pixman-0.26.0 ppc stable for bug 419473
11 Jul 2012; Brent Baude <ranger@gentoo.org> pixman-0.26.0.ebuild:
Marking pixman-0.26.0 ppc64 stable for bug 419473
*pixman-0.26.2 (30 Jun 2012)
30 Jun 2012; Matt Turner <mattst88@gentoo.org> +pixman-0.26.2.ebuild:
Version bump.
29 Jun 2012; Markus Meier <maekke@gentoo.org> pixman-0.26.0.ebuild:
arm stable, bug #419473
28 Jun 2012; Jeroen Roovers <jer@gentoo.org> pixman-0.26.0.ebuild:
Stable for HPPA (bug #419473).
24 Jun 2012; Agostino Sarubbo <ago@gentoo.org> pixman-0.26.0.ebuild:
Stable for x86, wrt bug #419473
22 Jun 2012; Agostino Sarubbo <ago@gentoo.org> pixman-0.26.0.ebuild:
Stable for amd64, wrt bug #419473
*pixman-0.26.0 (27 May 2012)
27 May 2012; Matt Turner <mattst88@gentoo.org> +pixman-0.26.0.ebuild,
+files/pixman-0.26.0-add-missing-_mm_empty-calls.patch:
Version bump.
26 Apr 2012; Alexis Ballier <aballier@gentoo.org> pixman-0.24.4.ebuild:
keyword ~amd64-fbsd
14 Mar 2012; Matt Turner <mattst88@gentoo.org> pixman-0.24.4.ebuild:
Drop code to disable sse2 if <gcc-4.2 or if MMX is disabled.
03 Mar 2012; Brent Baude <ranger@gentoo.org> pixman-0.24.0.ebuild:
Marking pixman-0.24.0 ppc64 stable for bug 394393
25 Feb 2012; Samuli Suominen <ssuominen@gentoo.org> pixman-0.24.0.ebuild:
Move XORG_EAUTORECONF above inherit line to pick up dependencies wrt #400629
*pixman-0.24.4 (24 Feb 2012)
24 Feb 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+pixman-0.24.4.ebuild:
Version bump.
19 Feb 2012; Raúl Porcel <armin76@gentoo.org> pixman-0.24.0.ebuild:
alpha/ia64/s390/sh/sparc stable wrt #394393
15 Feb 2012; Brent Baude <ranger@gentoo.org> pixman-0.24.0.ebuild:
Marking pixman-0.24.0 ppc stable for bug 394393
*pixman-0.24.2 (31 Jan 2012)
31 Jan 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+pixman-0.24.2.ebuild:
Version bump.
02 Jan 2012; Samuli Suominen <ssuominen@gentoo.org> metadata.xml:
USE description for flag "neon" is in use.desc now.
27 Dec 2011; Markus Meier <maekke@gentoo.org> pixman-0.24.0.ebuild:
x86 stable, bug #394393
21 Dec 2011; Markus Meier <maekke@gentoo.org> pixman-0.24.0.ebuild:
arm stable, bug #394393
20 Dec 2011; Jeroen Roovers <jer@gentoo.org> pixman-0.24.0.ebuild:
Stable for HPPA (bug #394393).
20 Dec 2011; Agostino Sarubbo <ago@gentoo.org> pixman-0.24.0.ebuild:
Stable for AMD64, wrt bug #394393
25 Nov 2011; Naohiro Aota <naota@gentoo.org> pixman-0.24.0.ebuild,
+files/pixman-0.24.0-posix-test.patch:
Add patch to replace non-POSIX test. Bug #387087
*pixman-0.24.0 (07 Nov 2011)
07 Nov 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
-pixman-0.23.8.ebuild, +pixman-0.24.0.ebuild:
Version bump.
*pixman-0.23.8 (31 Oct 2011)
31 Oct 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
-pixman-0.23.6.ebuild, +pixman-0.23.8.ebuild:
Bump to latest development release.
*pixman-0.23.6 (22 Oct 2011)
22 Oct 2011; Matt Turner <mattst88@gentoo.org> +pixman-0.23.6.ebuild:
Version bump. Add ARM's iwmmxt USE flag.
03 Oct 2011; Joseph Jezak <josejx@gentoo.org> pixman-0.22.2.ebuild:
Marked ppc ppc64 stable for bug #380421.
02 Oct 2011; Raúl Porcel <armin76@gentoo.org> pixman-0.22.2.ebuild:
alpha/ia64/s390/sh/sparc stable wrt #380421
21 Sep 2011; Jeroen Roovers <jer@gentoo.org> pixman-0.22.2.ebuild:
Stable for HPPA (bug #380421).
05 Sep 2011; Markus Meier <maekke@gentoo.org> pixman-0.22.2.ebuild:
arm stable, bug #380421
04 Sep 2011; Markus Meier <maekke@gentoo.org> pixman-0.22.2.ebuild:
x86 stable, bug #380421
30 Aug 2011; Tony Vroon <chainsaw@gentoo.org> pixman-0.22.2.ebuild:
Marked stable on AMD64 based on arch testing by Agostino "ago" Sarubbo in bug
#380421 filed by Chí-Thanh Christopher Nguyễn.
20 Aug 2011; Jeroen Roovers <jer@gentoo.org> pixman-0.22.0.ebuild:
Stable for HPPA (bug #371857).
30 Jul 2011; Raúl Porcel <armin76@gentoo.org> pixman-0.22.0.ebuild:
alpha/ia64/s390/sh/sparc stable wrt #371857
29 Jul 2011; Kacper Kowalik <xarthisius@gentoo.org> pixman-0.22.0.ebuild:
ppc64 stable wrt #371857
13 Jul 2011; Markus Meier <maekke@gentoo.org> pixman-0.22.0.ebuild:
x86 stable, bug #371857
*pixman-0.22.2 (06 Jul 2011)
06 Jul 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+pixman-0.22.2.ebuild:
Version bump.
28 Jun 2011; Brent Baude <ranger@gentoo.org> pixman-0.22.0.ebuild:
Marking pixman-0.22.0 ppc stable for bug 371857
26 Jun 2011; Markus Meier <maekke@gentoo.org> pixman-0.22.0.ebuild:
arm stable, bug #371857
23 Jun 2011; Markos Chandras <hwoarang@gentoo.org> pixman-0.22.0.ebuild:
Stable on amd64 wrt bug #372333
*pixman-0.22.0 (02 May 2011)
02 May 2011; Tomáš Chvátal <scarabeus@gentoo.org> -pixman-0.21.8.ebuild,
+pixman-0.22.0.ebuild:
Version bump to latest.
*pixman-0.21.8 (20 Apr 2011)
20 Apr 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+pixman-0.21.8.ebuild:
Bump to release candidate.
20 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org> pixman-0.20.2.ebuild,
metadata.xml:
Add neon USE flag to enable SIMD optimisations on ARM.
07 Mar 2011; Tomáš Chvátal <scarabeus@gentoo.org> -pixman-0.20.0.ebuild:
old
05 Mar 2011; Kacper Kowalik <xarthisius@gentoo.org> pixman-0.20.2.ebuild:
ppc64 stable wrt #354237
05 Mar 2011; Raúl Porcel <armin76@gentoo.org> pixman-0.20.2.ebuild:
alpha/arm/ia64/s390/sh/sparc stable wrt #354237
23 Feb 2011; Jeroen Roovers <jer@gentoo.org> pixman-0.20.2.ebuild:
Stable for HPPA (bug #354237).
15 Feb 2011; Tomáš Chvátal <scarabeus@gentoo.org> -pixman-0.18.2.ebuild:
old
14 Feb 2011; Kacper Kowalik <xarthisius@gentoo.org> pixman-0.20.2.ebuild:
ppc stable wrt #344827, #354237
12 Feb 2011; Raúl Porcel <armin76@gentoo.org> pixman-0.20.0.ebuild:
alpha/ia64/s390/sh/sparc stable wrt #344827
12 Feb 2011; Christian Faulhammer <fauli@gentoo.org> pixman-0.20.2.ebuild:
stable x86, bug 354237
12 Feb 2011; Markos Chandras <hwoarang@gentoo.org> pixman-0.20.2.ebuild:
Stable on amd64 wrt bug #354237
27 Jan 2011; Jeremy Olexa <darkside@gentoo.org> pixman-0.20.2.ebuild:
Push Gentoo Prefix changes from x11 overlay, as approved
*pixman-0.20.2 (19 Jan 2011)
19 Jan 2011; Tomáš Chvátal <scarabeus@gentoo.org> +pixman-0.20.2.ebuild:
Version bump to latest.
31 Dec 2010; Jeroen Roovers <jer@gentoo.org> pixman-0.20.0.ebuild:
Stable for HPPA (bug #344827).
29 Dec 2010; Markus Meier <maekke@gentoo.org> pixman-0.20.0.ebuild:
arm stable, bug #344827
25 Dec 2010; Christian Faulhammer <fauli@gentoo.org> pixman-0.20.0.ebuild:
x86 stable, bug 344827
23 Dec 2010; Samuli Suominen <ssuominen@gentoo.org> pixman-0.20.0.ebuild:
amd64 stable wrt #344827
19 Dec 2010; Samuli Suominen <ssuominen@gentoo.org> pixman-0.20.0.ebuild:
ppc64 stable wrt #344827
20 Nov 2010; Tomáš Chvátal <scarabeus@gentoo.org> -pixman-0.18.4.ebuild:
old
*pixman-0.20.0 (28 Oct 2010)
28 Oct 2010; Tomáš Chvátal <scarabeus@gentoo.org>
+pixman-0.20.0.ebuild:
Version bump.
21 Oct 2010; Tomáš Chvátal <scarabeus@gentoo.org>
-pixman-0.17.2.ebuild, -files/pixman-0.17.2-armv7.patch:
old
21 Oct 2010; Brent Baude <ranger@gentoo.org> pixman-0.18.2.ebuild:
Marking pixman-0.18.2 ppc stable for bug 239063
28 Sep 2010; Samuli Suominen <ssuominen@gentoo.org> pixman-0.18.2.ebuild:
ppc64 stable wrt #327777
19 Sep 2010; Raúl Porcel <armin76@gentoo.org> pixman-0.18.2.ebuild:
ia64/s390/sh/sparc stable wrt #327777
12 Sep 2010; Tobias Klausmann <klausman@gentoo.org> pixman-0.18.2.ebuild:
Stable on alpha, bug #327777
*pixman-0.18.4 (17 Aug 2010)
17 Aug 2010; Tomáš Chvátal <scarabeus@gentoo.org>
+pixman-0.18.4.ebuild:
Version bump.
22 Jul 2010; Markus Meier <maekke@gentoo.org> pixman-0.18.2.ebuild:
arm stable, bug #327777
14 Jul 2010; Jeroen Roovers <jer@gentoo.org> pixman-0.18.2.ebuild:
Stable for HPPA (bug #327777).
13 Jul 2010; Christian Faulhammer <fauli@gentoo.org> pixman-0.18.2.ebuild:
x86 stable, bug 327777
12 Jul 2010; Markos Chandras <hwoarang@gentoo.org> pixman-0.18.2.ebuild:
Stable on amd64 wrt bug #327777
*pixman-0.18.2 (12 May 2010)
12 May 2010; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
-pixman-0.18.0.ebuild, +pixman-0.18.2.ebuild:
Version bump.
08 Apr 2010; Tomáš Chvátal <scarabeus@gentoo.org>
-pixman-0.16.0.ebuild, -pixman-0.16.4.ebuild:
Drop old
*pixman-0.18.0 (02 Apr 2010)
02 Apr 2010; Tomáš Chvátal <scarabeus@gentoo.org>
-pixman-0.17.4.ebuild, -pixman-0.17.14.ebuild, +pixman-0.18.0.ebuild:
Version bump. Drop dev. releases.
*pixman-0.17.14 (31 Mar 2010)
31 Mar 2010; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+pixman-0.17.14.ebuild:
Version bump.
*pixman-0.17.4 (22 Jan 2010)
*pixman-0.16.4 (22 Jan 2010)
22 Jan 2010; Tomáš Chvátal <scarabeus@gentoo.org>
-pixman-0.10.0.ebuild, -pixman-0.12.0.ebuild,
-files/pixman-0.12.0-sse.patch, -pixman-0.14.0-r1.ebuild,
-pixman-0.16.2.ebuild, +pixman-0.16.4.ebuild, +pixman-0.17.4.ebuild:
Version bumps. Drop old.
19 Jan 2010; Raúl Porcel <armin76@gentoo.org> pixman-0.17.2.ebuild:
s390 stable wrt #294958
18 Jan 2010; Raúl Porcel <armin76@gentoo.org> pixman-0.17.2.ebuild:
alpha/ia64/sh/sparc stable wrt #294958
16 Jan 2010; Raúl Porcel <armin76@gentoo.org> pixman-0.17.2.ebuild:
arm stable
14 Jan 2010; Jeroen Roovers <jer@gentoo.org> pixman-0.17.2.ebuild:
Stable for HPPA (bug #294958).
12 Jan 2010; Raúl Porcel <armin76@gentoo.org> pixman-0.16.2.ebuild,
pixman-0.17.2.ebuild, +files/pixman-0.17.2-armv7.patch:
Add patch to fix build failure on armv4 and mark 0.16.2 stable on arm
27 Dec 2009; Joseph Jezak <josejx@gentoo.org> pixman-0.17.2.ebuild:
Marked ppc stable for bug #294958.
15 Dec 2009; Brent Baude <ranger@gentoo.org> pixman-0.17.2.ebuild:
Marking pixman-0.17.2 ppc64 stable for bug 294958
15 Dec 2009; Raúl Porcel <armin76@gentoo.org> pixman-0.16.0.ebuild:
alpha/ia64/s390/sh/sparc stable wrt #282290
10 Dec 2009; Christian Faulhammer <fauli@gentoo.org> pixman-0.17.2.ebuild:
x86 stable, bug 294958
10 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> pixman-0.17.2.ebuild:
amd64 stable wrt #294958
*pixman-0.17.2 (21 Nov 2009)
21 Nov 2009; Tomáš Chvátal <scarabeus@gentoo.org>
+pixman-0.17.2.ebuild:
Version bump.
26 Oct 2009; Jeroen Roovers <jer@gentoo.org> pixman-0.16.0.ebuild:
Stable for HPPA (bug #282290).
11 Oct 2009; nixnut <nixnut@gentoo.org> pixman-0.16.0.ebuild:
ppc stable #282290
09 Oct 2009; Markus Meier <maekke@gentoo.org> pixman-0.16.0.ebuild:
arm stable, bug #282290
05 Oct 2009; Christian Faulhammer <fauli@gentoo.org> pixman-0.16.0.ebuild:
x86 stable, bug 282290
30 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> pixman-0.16.0.ebuild:
amd64 stable wrt #282290
*pixman-0.16.2 (29 Sep 2009)
29 Sep 2009; Rémi Cardona <remi@gentoo.org> +pixman-0.16.2.ebuild:
bump to 0.16.2, sync with x11 overlay
01 Sep 2009; Jeroen Roovers <jer@gentoo.org> pixman-0.12.0.ebuild:
Stable for HPPA (scarabeus).
*pixman-0.16.0 (01 Sep 2009)
01 Sep 2009; Tomáš Chvátal <scarabeus@gentoo.org> -pixman-0.9.6.ebuild,
-files/pixman-0.11.4-memleak.patch, -pixman-0.11.6.ebuild,
-pixman-0.11.8.ebuild, -files/pixman-0.11.8-sse.patch,
-files/pixman-0.11.8-sse2-intrinsics-check.patch, -pixman-0.14.0.ebuild,
-pixman-0.15.20.ebuild, +pixman-0.16.0.ebuild:
Version bump, remove old unstable. Keep 3 stable version branches .10 .12
and .14.
0.16 is new stable branch. Has few fixes over 0.15.20. Moreover it has
some performance gains and losses in comparsion to 0.14.
*pixman-0.15.20 (12 Aug 2009)
12 Aug 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
+pixman-0.15.20.ebuild:
Version bump (bug #267437).
15 May 2009; Raúl Porcel <armin76@gentoo.org> pixman-0.14.0-r1.ebuild:
arm/s390 stable
04 May 2009; Samuli Suominen <ssuominen@gentoo.org> pixman-0.11.6.ebuild,
pixman-0.11.8.ebuild, pixman-0.12.0.ebuild, pixman-0.14.0.ebuild:
Move use_ functions out of global scope.
16 Apr 2009; Jeroen Roovers <jer@gentoo.org> pixman-0.14.0-r1.ebuild:
Stable for HPPA (bug #251832).
15 Apr 2009; Raúl Porcel <armin76@gentoo.org> pixman-0.14.0-r1.ebuild:
ia64/sh stable wrt #251832
06 Apr 2009; Friedrich Oslage <bluebird@gentoo.org>
pixman-0.14.0-r1.ebuild:
Stable on sparc, bug #251832
05 Apr 2009; Markus Meier <maekke@gentoo.org> pixman-0.14.0-r1.ebuild:
x86 stable, bug #251832
05 Apr 2009; Olivier Crête <tester@gentoo.org> pixman-0.14.0-r1.ebuild:
Stable on amd64, bug #251832
03 Apr 2009; Brent Baude <ranger@gentoo.org> pixman-0.14.0-r1.ebuild:
Marking pixman-0.14.0-r1 ppc64 stable for bug 251832
03 Apr 2009; Brent Baude <ranger@gentoo.org> pixman-0.14.0-r1.ebuild:
Marking pixman-0.14.0-r1 ppc stable for bug 251832
27 Mar 2009; Raúl Porcel <armin76@gentoo.org> pixman-0.12.0.ebuild:
arm/s390/sh/sparc stable
*pixman-0.14.0-r1 (24 Mar 2009)
24 Mar 2009; Rémi Cardona <remi@gentoo.org> +pixman-0.14.0-r1.ebuild:
drop the useless sse USE flag, disable mmx/sse2 instead of dying (fixes
bugs #236558 and #260287 among others)
18 Mar 2009; Raúl Porcel <armin76@gentoo.org> pixman-0.12.0.ebuild:
alpha/ia64 stable wrt #260063
15 Mar 2009; Markus Meier <maekke@gentoo.org> pixman-0.12.0.ebuild:
x86 stable, bug #260063
11 Mar 2009; Daniel Gryniewicz <dang@gentoo.org> pixman-0.12.0.ebuild:
Marked stable on amd64
06 Mar 2009; Brent Baude <ranger@gentoo.org> pixman-0.12.0.ebuild:
Marking pixman-0.12.0 ppc stable for bug 260063
05 Mar 2009; Brent Baude <ranger@gentoo.org> pixman-0.12.0.ebuild:
Marking pixman-0.12.0 ppc64 stable for bug 260063
03 Mar 2009; Raúl Porcel <armin76@gentoo.org> pixman-0.14.0.ebuild:
Re-add ~s390 keyword
*pixman-0.14.0 (26 Feb 2009)
26 Feb 2009; Donnie Berkholz <dberkholz@gentoo.org>;
+pixman-0.14.0.ebuild:
Version bump.
24 Feb 2009; Raúl Porcel <armin76@gentoo.org> pixman-0.10.0.ebuild,
pixman-0.11.6.ebuild, pixman-0.11.8.ebuild:
Fix some s390 keywording
07 Dec 2008; Mike Frysinger <vapier@gentoo.org> pixman-0.12.0.ebuild:
Add s390 love #202529.
29 Sep 2008; Donnie Berkholz <dberkholz@gentoo.org>; pixman-0.12.0.ebuild:
(#238716) sse2 + gcc 4.2 check is only required for x86.
*pixman-0.12.0 (26 Sep 2008)
26 Sep 2008; Saleem Abdulrasool <compnerd@gentoo.org>
+files/pixman-0.12.0-sse.patch, +pixman-0.12.0.ebuild:
Version bump from upstream
26 Jul 2008; Jeroen Roovers <jer@gentoo.org> pixman-0.10.0.ebuild:
Stable for HPPA (bug #224929).
21 Jul 2008; Doug Goldstein <cardoe@gentoo.org> pixman-0.11.8.ebuild:
Add pkg_setup() checks for SSE & SSE2 use flags as well as SSE2 and GCC
4.2
20 Jul 2008; Ben de Groot <yngwin@gentoo.org>
+files/pixman-0.11.8-sse.patch, pixman-0.11.8.ebuild:
Fixing libtool problems as reported in bug #232301 and adding sse useflag
and patch from bug #232126.
19 Jul 2008; Doug Goldstein <cardoe@gentoo.org>
+files/pixman-0.11.8-sse2-intrinsics-check.patch, -pixman-0.11.4.ebuild,
-pixman-0.11.4-r1.ebuild, pixman-0.11.8.ebuild:
fix bug #232126. Patch from Søren Sandmann <sandmann@redhat.com> to fix
SSE2 check
*pixman-0.11.8 (17 Jul 2008)
17 Jul 2008; Doug Goldstein <cardoe@gentoo.org> +pixman-0.11.8.ebuild:
version bump. should fix SSE2 issues people were having
02 Jul 2008; Doug Goldstein <cardoe@gentoo.org> pixman-0.11.6.ebuild:
add altivec, mmx and sse2 USE flags. disable gtk always for tests since
GTK won't be installed when you install pixman
*pixman-0.11.6 (30 Jun 2008)
30 Jun 2008; Doug Goldstein <cardoe@gentoo.org> +pixman-0.11.6.ebuild:
bump to new pixman release
*pixman-0.11.4-r1 (12 Jun 2008)
12 Jun 2008; Doug Goldstein <cardoe@gentoo.org>
+files/pixman-0.11.4-memleak.patch, +pixman-0.11.4-r1.ebuild:
fix #225907. Patch by Maximilian Grothusmann <maxi@own-hero.net> fixing
the memory leak
*pixman-0.11.4 (10 Jun 2008)
10 Jun 2008; Donnie Berkholz <dberkholz@gentoo.org>;
-pixman-0.11.2.ebuild, +pixman-0.11.4.ebuild:
Bump to fix some compilation issues with the last one.
*pixman-0.11.2 (09 Jun 2008)
09 Jun 2008; Donnie Berkholz <dberkholz@gentoo.org>;
+pixman-0.11.2.ebuild:
Bump. Notable new features: many compositing operations in SSE2 & VMX
(AltiVec), opacity-based optimization for operators, and 32-bit regions.
07 Jun 2008; Kenneth Prugh <ken69267@gentoo.org> pixman-0.10.0.ebuild:
amd64 stable, bug #224929
07 Jun 2008; nixnut <nixnut@gentoo.org> pixman-0.10.0.ebuild:
Stable on ppc wrt bug 224929
05 Jun 2008; Raúl Porcel <armin76@gentoo.org> pixman-0.10.0.ebuild:
alpha/ia64/sparc/x86 stable wrt #224929
04 Jun 2008; Markus Rothe <corsair@gentoo.org> pixman-0.10.0.ebuild:
Stable on ppc64; bug #224929
*pixman-0.10.0 (02 Apr 2008)
02 Apr 2008; Donnie Berkholz <dberkholz@gentoo.org>;
+pixman-0.10.0.ebuild:
Bump. Lots of bugfixes and optimizations.
31 Jan 2008; Donnie Berkholz <dberkholz@gentoo.org>;
-files/0.9.5-pixman-compose-fix.patch, -pixman-0.9.5.ebuild,
-pixman-0.9.5-r1.ebuild:
Clean up.
*pixman-0.9.6 (07 Nov 2007)
07 Nov 2007; Donnie Berkholz <dberkholz@gentoo.org>; +pixman-0.9.6.ebuild:
Bump. Incorporates a slightly different amd64 fix.
*pixman-0.9.5-r1 (14 Oct 2007)
14 Oct 2007; Donnie Berkholz <dberkholz@gentoo.org>;
+files/0.9.5-pixman-compose-fix.patch, +pixman-0.9.5-r1.ebuild:
(#12398, fd.o #12398) Add an amd64 crasher fix.
*pixman-0.9.5 (08 Sep 2007)
08 Sep 2007; Donnie Berkholz <dberkholz@gentoo.org>; +metadata.xml,
+pixman-0.9.5.ebuild:
Add a low-level pixel manipulation routine library used by Xorg and cairo.
Since the code basically originated in xorg-server, I'm retaining the
keywords.

View File

@ -0,0 +1,28 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
DIST pixman-0.28.0.tar.bz2 641962 SHA256 6056f9aa0e0578a0492e34fc2ce6dd7bfb181090ed687993c03b969c8cec4828 SHA512 b0b53b09252a01ffc59875a878f8031d099febf3f8d8425b440bc6af93c2d75bb9c95d4cd7b8a7e45c356f3b6327c1b755628b8c36064d9272bb868d0d0d82f5 WHIRLPOOL 67ed10f7ecd293022e311de2036bc4527034452f097cae8947f75ff793fbacde2e7199da6910ee240cb7dd61d4bf07b2d4fc0380c396704fe268051fe3b86375
DIST pixman-0.28.2.tar.bz2 625655 SHA256 583686afbfa5a1dfc40a21e888a3eacf31fe0e02469d20b821b5d8f719165a51 SHA512 8c296b4eb76b69d23891e5fe6958729ce9d2a8779491b59f480c30c63458a2fdebfe81d6ca31a5c27f2f8630bc0602c5516ddc7383065867a826e7219952ff67 WHIRLPOOL e07eb74ff06915e0ff73612ecd0021b60fa42040a2463f84cf790c18d783be513a78d0f85e8ad764c88c109710f286adc4af3be42092ed0427ffb4b749b5a8e2
DIST pixman-0.30.0.tar.bz2 681343 SHA256 77e756dc7fafdf17f39a4f23bdc8be59f9f6a65c08704f5cac1d8aa87cfaf517 SHA512 1e594fee7d36b4faae1f3cb0a268563eceef8b2b3bb71a6fd2b14c30b7df87f6c7f8fd78274620b9aceda84994a88fbbd436db0b67201a03ca2e3584732a7eea WHIRLPOOL 86fa4f7ef261aaa3ff10ee35e53e37221c6945fd3108646e40d1032a2eddd4be12d0fe1038f6d769805033dd75cbffc4cfabc31cab398e09f54b1daf11ad1209
EBUILD pixman-0.28.0.ebuild 914 SHA256 fa06f76c7c8533ba7c09454e878f7e05619b6ef0b85b79066b4316845297a8af SHA512 9b649b7180f1cb898045533eabfef4554e869adbe8960a1534c533cb28119a507992ee446a9a7cd8e9b576950ecf43ee9a258b6cdf9c3d9e4e06b53c1d922ff5 WHIRLPOOL 46a4cb8c0599b4ad50b8ca4cf1f2d0ec7172c85bddc6e9b007a219067e4384850bda10db236048a17fa561172e80667bc92a5b78d704e807b20ef8c87f460cd3
EBUILD pixman-0.28.2.ebuild 924 SHA256 b00ca0f60c845a3250ba012cf5be7bf9db126f4f4a0b7176a0a9a70c4fb6aec7 SHA512 35f9ef1d8038f1b65ae13866987421495ac970501e22bd2eeb55dd229db5fedd22191b9df7d2a5763e5f23ceb6e00223275e22dc74929d5eb0a75e46d4aa82a3 WHIRLPOOL 217427be429c5c11927ee78f2613f6acb57b5e4f9e40f58d336efb9b0c8744977fc72ee523503c2a42059c3ae107290963e73daf669b838c40fe40b4e7904bb4
EBUILD pixman-0.30.0.ebuild 975 SHA256 c7b9140bdd4d80da8505c29d30de21123131e8d86a4c1e098b0d8d84882ac5ee SHA512 bc52a0300bcd52e543a46239fcd95fbd66ade27872dcce869c7fdaeb5f341d4449151c34f58d27a1bf9b7199dfa79461dabeb129662b476dc5a6bf0150c2baa2 WHIRLPOOL ae14f0794530f9c466172800bec129f21a52654c98606ef47b1eabef4f2a8e2788e11615dac1337008dfacffa689af2c7fa16324dd0d994bca0ad007c7bdee84
MISC ChangeLog 21785 SHA256 fbc32e7a227b8ba2a2a1af870cd440120109edd5aba04cf3224de9675dc6c236 SHA512 3a8f46f4011c7fe75a1c4575738f5d3640d4b86cb30e117855cfdf6bb701e730998bff9f2f2df6448452c4b019728d5980c54e4ed99f7bf0447a940dbadd4a53 WHIRLPOOL 281d3720dfb1a5363dd7a3538fb6a68b8a9f1c1834c4094af3db3d178e5767ee4c1f6fdf799a0de15d39f7860c139ad6298d3bf117f031f3174dd1ef465740d0
MISC metadata.xml 366 SHA256 e6f0d8eaf65b773307ca6593d8342681c2cb7998a7470d5385975080edff5a36 SHA512 cbf86dd5097709c89d3ebe73ffe6cfe3aea2bcc5eabc2209db0f1dfcf27bf1f938180caa007f962fc8e55f3037363d37f378de306187d6841f604f3a46916e0f WHIRLPOOL 598bd5344f63a6e47eeb2b82245d6698fe2ac16e7f315f3f5223fd4b019567be6523e2fefe0ec2a3b0f5be8ebda3c9edcffda760549eabec55389b0f4739c5cd
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
iQIcBAEBCAAGBQJRronLAAoJELEHsLL7fEFW0E0P/2oBRLrgwfLXkabehxVAcRPC
8eMyNtWvZZ4OTlINTNMFmRLeYnEy0Fw5NY7gQnqdcbRzJDAqe+eD+wwRtGIpF7ZV
TT5a3Z7D6oIkrQGkWDgK68EPfgELqhHsz7NKBtqN8pTu1RGQwngRfDZVrTr/2HXc
h7YymBQrZLyeWZ8wENLqjaIben5M7WEVtKlslRTdppGLkmGFbvsSuRdiMx8sfAJs
oXIq8jjSveXuLrSuYKI3upCTw6RXGrrLaW7hwfe8Ue4RmN8xsDzMqDwVAFynZgaH
8ST1Wkd3z67VV4W328sB2zlBGWdOOlUFe1WEvbyW1G0OSkbhqytRKLW0PHWocdsA
1q48r9zJ4IVxrIBs3i9TLjD0RrVcGDeci2HmbphzqsJadl7X+hnQNjduUkl0wC6A
aXSBcyy4wJ2g4Yk90a5h/IHQwSDHeMDB7bTWBt4eGhf06EQPgwdc4HbNxPrx2Tqm
5KESMmm+3RNBhHIkzwByA3uOqKOOmisjOCwSBePNuUPEEhFNd/bCRT27r3WQpT03
CF+shHXbz01DEfk1oqzGANjngx6LlXFUq6em3dwetVSb+ouzUHT0bhI93daeYDjJ
VxrJ28XOyBm6Ft5m6gY2XwTUzzzOTMGGIby07DjOwxFzKukIvsk+eZl4O2c914vC
N4oaBVCfpSnQ7KHkkNIW
=ZblE
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>x11</herd>
<use>
<flag name="loongson2f">Enable Loongson2f MMI optimizations.</flag>
<flag name="mmxext">Enable MMX2 support.</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:pixman:pixman</remote-id>
</upstream>
</pkgmetadata>

View File

@ -0,0 +1,25 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/x11-libs/pixman/pixman-0.28.0.ebuild,v 1.13 2013/02/06 22:55:59 mattst88 Exp $
EAPI=4
inherit xorg-2 toolchain-funcs versionator
EGIT_REPO_URI="git://anongit.freedesktop.org/git/pixman"
DESCRIPTION="Low-level pixel manipulation routines"
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE="altivec iwmmxt mmxext neon sse2"
src_configure() {
XORG_CONFIGURE_OPTIONS=(
$(use_enable mmxext mmx)
$(use_enable sse2)
$(use_enable altivec vmx)
$(use_enable neon arm-neon)
$(use_enable iwmmxt arm-iwmmxt)
--disable-gtk
--disable-libpng
)
xorg-2_src_configure
}

View File

@ -0,0 +1,25 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/x11-libs/pixman/pixman-0.28.2.ebuild,v 1.3 2013/02/06 22:55:59 mattst88 Exp $
EAPI=4
inherit xorg-2 toolchain-funcs versionator
EGIT_REPO_URI="git://anongit.freedesktop.org/git/pixman"
DESCRIPTION="Low-level pixel manipulation routines"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE="altivec iwmmxt mmxext neon sse2"
src_configure() {
XORG_CONFIGURE_OPTIONS=(
$(use_enable mmxext mmx)
$(use_enable sse2)
$(use_enable altivec vmx)
$(use_enable neon arm-neon)
$(use_enable iwmmxt arm-iwmmxt)
--disable-gtk
--disable-libpng
)
xorg-2_src_configure
}

View File

@ -0,0 +1,26 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/x11-libs/pixman/pixman-0.30.0.ebuild,v 1.1 2013/05/09 01:59:07 mattst88 Exp $
EAPI=5
inherit xorg-2 toolchain-funcs versionator
EGIT_REPO_URI="git://anongit.freedesktop.org/git/pixman"
DESCRIPTION="Low-level pixel manipulation routines"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE="altivec iwmmxt loongson2f mmxext neon sse2"
src_configure() {
XORG_CONFIGURE_OPTIONS=(
$(use_enable mmxext mmx)
$(use_enable sse2)
$(use_enable altivec vmx)
$(use_enable neon arm-neon)
$(use_enable iwmmxt arm-iwmmxt)
$(use_enable loongson2f loongson-mmi)
--disable-gtk
--disable-libpng
)
xorg-2_src_configure
}