parent
e33c390665
commit
bbf7c3c1b8
@ -1,4 +1 @@
|
||||
DIST speechd-el-0.4.tar.gz 131535 SHA256 a34e3093a788e948420965144f6f79fffbe15e64e611eb2a2278e9004199c5cd SHA512 6c144c464d94d9bc278b92097e893d473d4c5c64004a10cbf522a5cc20cb3a5ebc55fa5a5f40cd4b325567556bac4790b3f92bea02c25b0476221bc55bcb16c1 WHIRLPOOL 39ca8fc5cca7ec994ef0b8279365e8ddd6cce5ab2432ccf1b1ddd178f093443e9ce77b5d009dc1a3a5db5390801a0f9ea8178937d44c13474defb300a199db63
|
||||
DIST speechd-el-2.2.tar.gz 177968 SHA256 6d57638fb20ef09207bea02b5d6cd65834aa4bbaf9b1b24833ae43c883298657 SHA512 f444f9b553ecfad82218f8d41f9928ff990b55ebed99a9fedffa6ad6273bca87fff2e3464ed934db3d60088c69eb2ba0db61526aa32d8e831129ba4dc5243eaf WHIRLPOOL 9522191c06b055b711135932e603632dddedca1b39d67346eb01d4df92f7d8a84d7f650f6c4785dc2c9c39c3103a7f1782707893a8fe7b9f820b88b41fd61f4c
|
||||
DIST speechd-el-2.4.tar.gz 182959 SHA256 bccf6a26cdb6123001473b5a618dc658fef6630014eddaf12fde4b7628458fda SHA512 394c94c32a91ef8a4914b19b57060de42368842a0fb1470d3e478c9b22c591ac05e908490b7da91a279f0c09643e0581bdcc260d4b329b923b4a5b75ebf062bd WHIRLPOOL 34a5c482b9eb7ee52e7922ba7be3bce847152a2d40a864016e7b2926b604b2984ef0777d746db8c742e1eec75775b7be481e5b8594175e0951883e9a7b63fdff
|
||||
DIST speechd-el-2.5.tar.gz 183278 SHA256 1ec52b27248e1c68d3ac37bee78842f3e124dc78e63891a1b706519349e4824e SHA512 b4e5d00d3a86be9c42172ab48c5b0c0f5f25817cb542302f04e29f594422247e4b008428dfaaa1bb2e208a71f126b9c86d25186974606bf5764212a0d6a1a09f WHIRLPOOL 3063e34e19e239653455ebe51bbc0e2e8630c21d5bd2342a24e39c1c8d6a831bb595165611cfa9b441fb6e9ccab50d956b81e63bb4235a86a03464812ffbe4ac
|
||||
|
@ -1,62 +0,0 @@
|
||||
diff --git a/speechd-braille.el b/speechd-braille.el
|
||||
index a79b24e..dfbae4b 100644
|
||||
--- a/speechd-braille.el
|
||||
+++ b/speechd-braille.el
|
||||
@@ -116,9 +116,14 @@
|
||||
|
||||
(defclass speechd-braille-emu-driver (speechd-driver)
|
||||
((name :initform 'braille-emu)
|
||||
- (manager :initform (lambda () (speechd-braille--create-manager
|
||||
- #'speechd-braille--display)))
|
||||
- (priority :initform (lambda () speechd-default-text-priority))))
|
||||
+ (manager)
|
||||
+ (priority)))
|
||||
+
|
||||
+(defmethod initialize-instance :after
|
||||
+ ((this speechd-braille-emu-driver) slots)
|
||||
+ (progn
|
||||
+ (oset this priority speechd-default-text-priority)
|
||||
+ (oset this manager (speechd-braille--create-manager #'speechd-braille--display))))
|
||||
|
||||
(defmethod speechd-braille--make-message
|
||||
((driver speechd-braille-emu-driver) text cursor)
|
||||
diff --git a/speechd-brltty.el b/speechd-brltty.el
|
||||
index f6bf353..ec89d04 100644
|
||||
--- a/speechd-brltty.el
|
||||
+++ b/speechd-brltty.el
|
||||
@@ -237,10 +237,14 @@ is not recommended to assign or call user commands here."
|
||||
|
||||
(defclass speechd-brltty-driver (speechd-braille-emu-driver)
|
||||
((name :initform 'brltty)
|
||||
- (manager :initform (lambda () (speechd-brltty--create-manager)))
|
||||
+ (manager)
|
||||
(brltty-connection :initform 'uninitialized)
|
||||
(brltty-last-try-time :initform 0)))
|
||||
|
||||
+(defmethod initialize-instance :after
|
||||
+ ((this speechd-brltty-driver) slots)
|
||||
+ (oset this manager (speechd-brltty--create-manager)))
|
||||
+
|
||||
(defmethod speechd-braille--make-message
|
||||
((driver speechd-brltty-driver) text message)
|
||||
(list (speechd-brltty--connection driver) text message))
|
||||
diff --git a/speechd-out.el b/speechd-out.el
|
||||
index aa82f10..0a484e3 100644
|
||||
--- a/speechd-out.el
|
||||
+++ b/speechd-out.el
|
||||
@@ -87,9 +87,14 @@
|
||||
|
||||
|
||||
(defclass speechd-driver ()
|
||||
- ((name :initform (error "Driver name not given") :initarg :name
|
||||
+ ((name :initarg :name
|
||||
:reader speechd-driver.name)))
|
||||
|
||||
+(defmethod initialize-instance :after
|
||||
+ ((this speechd-driver) slots)
|
||||
+ (if (not (slot-boundp this 'name))
|
||||
+ (error "Driver name not given")))
|
||||
+
|
||||
(defun speechd-out-register-driver (driver)
|
||||
(let ((class (class-of driver)))
|
||||
(labels ((replace (list)
|
@ -1,35 +0,0 @@
|
||||
# Copyright 1999-2009 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-accessibility/speechd-el/speechd-el-0.4.ebuild,v 1.7 2009/10/17 22:01:46 halcy0n Exp $
|
||||
|
||||
inherit elisp-common
|
||||
|
||||
DESCRIPTION="emacs speech support"
|
||||
HOMEPAGE="http://www.freebsoft.org/speechd-el"
|
||||
SRC_URI="http://www.freebsoft.org/pub/projects/speechd-el/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="x86 ppc"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=">=app-emacs/elib-1.0
|
||||
app-accessibility/speech-dispatcher"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_compile() {
|
||||
einfo "Nothing to compile."
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/emacs/site-lisp/speechd-el
|
||||
doins *.el
|
||||
exeinto /usr/bin
|
||||
doexe speechd-log-extractor
|
||||
dodoc README EMACSPEAK
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Execute the following command from within emacs to get it to speak:"
|
||||
elog " M-x load-library RET speechd-speak RET"
|
||||
}
|
@ -1,41 +0,0 @@
|
||||
# Copyright 1999-2009 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-accessibility/speechd-el/speechd-el-2.2.ebuild,v 1.3 2009/10/17 22:01:46 halcy0n Exp $
|
||||
|
||||
inherit elisp
|
||||
|
||||
DESCRIPTION="Emacs speech support"
|
||||
HOMEPAGE="http://www.freebsoft.org/speechd-el"
|
||||
SRC_URI="http://www.freebsoft.org/pub/projects/speechd-el/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~ppc x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=">=app-emacs/cedet-1.0_pre4-r2
|
||||
>=app-accessibility/speech-dispatcher-0.5"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_compile() {
|
||||
einfo "Nothing to compile."
|
||||
}
|
||||
|
||||
src_install() {
|
||||
elisp-install ${PN} *.el
|
||||
exeinto /usr/bin
|
||||
doexe speechd-log-extractor
|
||||
dodoc ANNOUNCE NEWS README speechd-speak.pdf
|
||||
doinfo speechd-el.info
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Execute the following commands from within emacs to get it to speak:"
|
||||
elog " M-x load-library RET speechd-speak RET"
|
||||
elog " M-x speechd-speak RET"
|
||||
elog
|
||||
elog "or add the following to your ~/.emacs file:"
|
||||
elog
|
||||
elog '(autoload \''speechd-speak "speechd-speak" nil t)'
|
||||
elog '(speechd-speak)'
|
||||
}
|
@ -1,46 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-accessibility/speechd-el/speechd-el-2.4.ebuild,v 1.3 2012/10/19 19:54:09 ago Exp $
|
||||
|
||||
EAPI="4"
|
||||
NEED_EMACS=23
|
||||
inherit elisp eutils
|
||||
|
||||
DESCRIPTION="Emacs speech support"
|
||||
HOMEPAGE="http://www.freebsoft.org/speechd-el"
|
||||
SRC_URI="http://www.freebsoft.org/pub/projects/speechd-el/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86"
|
||||
IUSE="brltty"
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=">=app-accessibility/speech-dispatcher-0.7
|
||||
brltty? ( app-accessibility/brltty )"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${P}-emacs23.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
elisp-install ${PN} *.el *.elc
|
||||
dobin speechd-log-extractor
|
||||
dodoc ANNOUNCE NEWS README speechd-speak.pdf
|
||||
doinfo speechd-el.info
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Execute the following commands from within emacs to get it to speak:"
|
||||
elog " M-x load-library RET speechd-speak RET"
|
||||
elog " M-x speechd-speak RET"
|
||||
elog
|
||||
elog "or add the following to your ~/.emacs file:"
|
||||
elog
|
||||
elog "(autoload 'speechd-speak \"speechd-speak\" nil t)"
|
||||
elog '(speechd-speak)'
|
||||
}
|
@ -1,2 +1 @@
|
||||
DIST lib_users-0.5.tar.gz 12067 SHA256 2d884bb8b4298918185bb71173a86d337f7647252781a325472d41504b06a206 SHA512 ae7734aeab5048b55e7229afb960c97dad7f8dfa793661af2cddde7f9f88b39e500fdf532d0a03fef3a6bffd8622017a4182b0739d989474c51c5ef0284297ba WHIRLPOOL a2e1aed7b2cf5dfef6e780ff96496762497e597797c5422dd29b0ddaf4af1903d708abffad0c8d2a1dfb0c382254f046342224a0e79609a1ddccc8fd13064421
|
||||
DIST lib_users-0.6.tar.gz 13314 SHA256 127cacaf8e108e4254401976e376b7ef9520cabc21b7b469b5cce39dd794a2dd SHA512 9f13878a309e0f879630dd45e5a27601cffc6816eec8497026815e85873e60f4991f2d412b9c82985cbc3c9088bcd6b8cb5b06bc15bbd327cfc5b002644f3db0 WHIRLPOOL 36430733778872bb18b83258c5bfe1e13c187d96d336d49fdc237ceccde662a14fb53faf9c6317194c49a943a0c32bd147797f82fcbbac2ec5a7c5f37d94c276
|
||||
|
@ -1,38 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-admin/lib_users/lib_users-0.5.ebuild,v 1.8 2013/08/09 15:44:41 jlec Exp $
|
||||
|
||||
EAPI=3
|
||||
|
||||
PYTHON_DEPEND="2"
|
||||
|
||||
inherit python
|
||||
|
||||
DESCRIPTION="Checks /proc for libraries being mapped but marked as deleted"
|
||||
HOMEPAGE="http://schwarzvogel.de/software-misc.shtml"
|
||||
SRC_URI="http://schwarzvogel.de/pkgs/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 hppa ppc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="test"
|
||||
|
||||
DEPEND="test? ( dev-python/nose )"
|
||||
RDEPEND=""
|
||||
|
||||
pkg_setup() {
|
||||
python_set_active_version 2
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
python_convert_shebangs -r 2 .
|
||||
}
|
||||
|
||||
src_test() {
|
||||
python_execute_nosetests -P .
|
||||
}
|
||||
|
||||
src_install() {
|
||||
newbin lib_users.py lib_users
|
||||
dodoc README TODO
|
||||
}
|
@ -1,37 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-admin/lib_users/lib_users-0.6.ebuild,v 1.7 2013/08/18 13:28:42 ago Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit python
|
||||
|
||||
DESCRIPTION="Checks /proc for libraries being mapped but marked as deleted"
|
||||
HOMEPAGE="http://schwarzvogel.de/software-misc.shtml"
|
||||
SRC_URI="http://schwarzvogel.de/pkgs/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 hppa ppc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="test"
|
||||
|
||||
DEPEND="test? ( dev-python/nose )"
|
||||
RDEPEND=""
|
||||
|
||||
pkg_setup() {
|
||||
python_set_active_version 2
|
||||
python_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
python_convert_shebangs -r 2 .
|
||||
}
|
||||
|
||||
src_test() {
|
||||
python_execute_nosetests -P .
|
||||
}
|
||||
|
||||
src_install() {
|
||||
newbin lib_users.py lib_users
|
||||
dodoc README TODO
|
||||
}
|
@ -1,2 +1 @@
|
||||
DIST python-updater-0.10.tar.bz2 9245 SHA256 7defcf844e3751ce0ead132116b727f947715c7545a7a2f8ffba7cf375213520 SHA512 4e6ce62fef67bc7fd7738d15b49ddff5f0c5c202a197b783bc4ce78005134d0c541ef32e3591cb6523976b2d6a38441677e819905f127e7b25ec1c0f5bf9d68b WHIRLPOOL b68db0d05c03a6aa68f595d23ff072deafa67e1460350e71bac6a30465c4d60459ff6cef54a1bbc4c87711f5d20843aedb575c1248fd698478b23abfbef26eee
|
||||
DIST python-updater-0.11.tar.bz2 9355 SHA256 5c88b2a56febe67e783855a1c51c4c89637e948704834ad1f5d1b6e46cc4a7b8 SHA512 613d0b772faed65690b3999fb557f4414926f72f2f6084cf2e91c225a036df8c1a3c73e4fa6feac191cb7ac89035d3bcae9a6b23f479e2cf63d69bb8c57217fe WHIRLPOOL 9eab112192a3515e71d4971b89282d3f9725629af5b4db6a090d74f4c3dc9421dbfbc9c6c0393b3d6387d4926b1eb1bbc6291ac18ae31e86ecfeb37cfba68b14
|
||||
|
@ -1,46 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-admin/python-updater/python-updater-0.10-r2.ebuild,v 1.2 2012/04/26 14:54:37 aballier Exp $
|
||||
|
||||
inherit eutils
|
||||
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
inherit subversion
|
||||
fi
|
||||
|
||||
DESCRIPTION="Script used to reinstall Python packages after changing of active Python versions"
|
||||
HOMEPAGE="http://www.gentoo.org/proj/en/Python/"
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
SRC_URI=""
|
||||
ESVN_REPO_URI="https://gentoo-progress.googlecode.com/svn/projects/python-updater/trunk"
|
||||
else
|
||||
SRC_URI="http://people.apache.org/~Arfrever/gentoo/${P}.tar.bz2"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="$([[ "${PV}" == "9999" ]] && echo "sys-apps/help2man")"
|
||||
RDEPEND="dev-lang/python
|
||||
|| ( >=sys-apps/portage-2.1.6 >=sys-apps/paludis-0.56.0 )"
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
cd "${S}"
|
||||
epatch "${FILESDIR}"/${P}-expand-aliases.patch
|
||||
epatch "${FILESDIR}"/${P}-only-alias-sed-if-exists.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
emake ${PN}.1 || die "Generation of man page failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dosbin ${PN} || die "dosbin failed"
|
||||
doman ${PN}.1 || die "doman failed"
|
||||
dodoc AUTHORS || die "dodoc failed"
|
||||
}
|
@ -1,37 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-admin/python-updater/python-updater-0.10.ebuild,v 1.7 2012/03/02 22:08:06 ranger Exp $
|
||||
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
inherit subversion
|
||||
fi
|
||||
|
||||
DESCRIPTION="Script used to reinstall Python packages after changing of active Python versions"
|
||||
HOMEPAGE="http://www.gentoo.org/proj/en/Python/"
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
SRC_URI=""
|
||||
ESVN_REPO_URI="https://gentoo-progress.googlecode.com/svn/projects/python-updater/trunk"
|
||||
else
|
||||
SRC_URI="http://people.apache.org/~Arfrever/gentoo/${P}.tar.bz2"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="$([[ "${PV}" == "9999" ]] && echo "sys-apps/help2man")"
|
||||
RDEPEND="dev-lang/python
|
||||
|| ( >=sys-apps/portage-2.1.6 >=sys-apps/paludis-0.56.0 )"
|
||||
|
||||
src_compile() {
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
emake ${PN}.1 || die "Generation of man page failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dosbin ${PN} || die "dosbin failed"
|
||||
doman ${PN}.1 || die "doman failed"
|
||||
dodoc AUTHORS || die "dodoc failed"
|
||||
}
|
@ -0,0 +1,177 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-admin/setools/setools-3.3.8-r3.ebuild,v 1.1 2014/01/19 20:36:55 swift Exp $
|
||||
|
||||
EAPI="2"
|
||||
PYTHON_DEPEND="python? *"
|
||||
SUPPORT_PYTHON_ABIS="1"
|
||||
RESTRICT_PYTHON_ABIS="*-jython *-pypy-* 3.*"
|
||||
|
||||
inherit autotools java-pkg-opt-2 python eutils
|
||||
|
||||
DESCRIPTION="SELinux policy tools"
|
||||
HOMEPAGE="http://www.tresys.com/selinux/selinux_policy_tools.shtml"
|
||||
SRC_URI="http://oss.tresys.com/projects/setools/chrome/site/dists/${P}/${P}.tar.bz2
|
||||
http://dev.gentoo.org/~swift/patches/setools/${P}-01-fedora-patches.tar.gz
|
||||
http://dev.gentoo.org/~swift/patches/setools/${P}-02-gentoo-patches.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="X debug java python"
|
||||
|
||||
DEPEND=">=sys-libs/libsepol-2.1.4
|
||||
sys-libs/libselinux
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
>=dev-db/sqlite-3.2:3
|
||||
dev-libs/libxml2:2
|
||||
virtual/pkgconfig
|
||||
java? (
|
||||
dev-lang/swig:1
|
||||
>=virtual/jdk-1.4
|
||||
)
|
||||
python? ( dev-lang/swig:1 )
|
||||
X? (
|
||||
>=dev-lang/tk-8.4.9
|
||||
>=gnome-base/libglade-2.0
|
||||
>=x11-libs/gtk+-2.8:2
|
||||
)"
|
||||
|
||||
RDEPEND=">=sys-libs/libsepol-2.1.4
|
||||
sys-libs/libselinux
|
||||
>=dev-db/sqlite-3.2:3
|
||||
dev-libs/libxml2:2
|
||||
java? ( >=virtual/jre-1.4 )
|
||||
X? (
|
||||
>=dev-lang/tk-8.4.9
|
||||
>=dev-tcltk/bwidget-1.8
|
||||
>=gnome-base/libglade-2.0
|
||||
>=x11-libs/gtk+-2.8:2
|
||||
)"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
if use java; then
|
||||
java-pkg-opt-2_pkg_setup
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
python_pkg_setup
|
||||
PYTHON_DIRS="libapol/swig/python libpoldiff/swig/python libqpol/swig/python libseaudit/swig/python libsefs/swig/python python"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
EPATCH_MULTI_MSG="Applying various (Fedora-provided) setools fixes... " \
|
||||
EPATCH_SUFFIX="patch" \
|
||||
EPATCH_SOURCE="${WORKDIR}" \
|
||||
EPATCH_FORCE="yes" \
|
||||
epatch
|
||||
|
||||
EPATCH_MULTI_MSG="Applying various (Gentoo) setool fixes... " \
|
||||
EPATCH_SUFFIX="patch" \
|
||||
EPATCH_SOURCE="${WORKDIR}/gentoo-patches" \
|
||||
EPATCH_FORCE="yes" \
|
||||
epatch
|
||||
|
||||
# Disable broken check for SWIG version.
|
||||
sed -e "s/AC_PROG_SWIG(2.0.0)/AC_PROG_SWIG/" -i configure.ac || die "sed failed"
|
||||
# Use swig1.3
|
||||
sed -e 's/AC_PATH_PROG(\[SWIG\],\[swig\])/AC_PATH_PROG([SWIG],[swig1.3])/' -i m4/ac_pkg_swig.m4 || die "failed to set swig1.3"
|
||||
# Fix build failure due to double __init__.py installation
|
||||
sed -e "s/^wrappedpy_DATA = qpol.py \$(pkgpython_PYTHON)/wrappedpy_DATA = qpol.py/" -i libqpol/swig/python/Makefile.am || die
|
||||
|
||||
local dir
|
||||
for dir in ${PYTHON_DIRS}; do
|
||||
# Python bindings are built/installed manually.
|
||||
sed -e "s/MAYBE_PYSWIG = python/MAYBE_PYSWIG =/" -i ${dir%python}Makefile.am || die "sed failed"
|
||||
# Make PYTHON_LDFLAGS replaceable during running `make`.
|
||||
sed -e "/^AM_LDFLAGS =/s/@PYTHON_LDFLAGS@/\$(PYTHON_LDFLAGS)/" -i ${dir}/Makefile.am || die "sed failed"
|
||||
done
|
||||
|
||||
# temporary work around bug #424581 until automake-1.12 is stable (then
|
||||
# depend on it). Need to use MKDIR_P in the mean time for 1.12+.
|
||||
has_version ">=sys-devel/automake-1.12.1" && { find . -name 'Makefile.*' -exec sed -i -e 's:mkdir_p:MKDIR_P:g' {} + || die; }
|
||||
|
||||
eautoreconf
|
||||
|
||||
# Disable byte-compilation of Python modules.
|
||||
echo '#!/bin/sh' > py-compile
|
||||
|
||||
epatch_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--with-java-prefix=${JAVA_HOME} \
|
||||
--disable-selinux-check \
|
||||
--disable-bwidget-check \
|
||||
$(use_enable python swig-python) \
|
||||
$(use_enable java swig-java) \
|
||||
$(use_enable X swig-tcl) \
|
||||
$(use_enable X gui) \
|
||||
$(use_enable debug)
|
||||
|
||||
# work around swig c99 issues. it does not require
|
||||
# c99 anyway.
|
||||
sed -i -e 's/-std=gnu99//' "${S}/libseaudit/swig/python/Makefile"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake || die "Failed to build setools"
|
||||
|
||||
if use python; then
|
||||
local dir
|
||||
for dir in ${PYTHON_DIRS}; do
|
||||
python_copy_sources ${dir}
|
||||
building() {
|
||||
emake \
|
||||
SWIG_PYTHON_CPPFLAGS="-I$(python_get_includedir)" \
|
||||
PYTHON_LDFLAGS="$(python_get_library -l)" \
|
||||
pyexecdir="$(python_get_sitedir)" \
|
||||
pythondir="$(python_get_sitedir)"
|
||||
}
|
||||
python_execute_function \
|
||||
--action-message "Building of Python bindings from ${dir} directory with \$(python_get_implementation) \$(python_get_version)" \
|
||||
--failure-message "Building of Python bindings from ${dir} directory with \$(python_get_implementation) \$(python_get_version) failed" \
|
||||
-s --source-dir ${dir} \
|
||||
building
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install || die "emake install failed"
|
||||
|
||||
if use python; then
|
||||
local dir
|
||||
for dir in ${PYTHON_DIRS}; do
|
||||
installation() {
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
pyexecdir="$(python_get_sitedir)" \
|
||||
pythondir="$(python_get_sitedir)" \
|
||||
install
|
||||
}
|
||||
python_execute_function \
|
||||
--action-message "Installation of Python bindings from ${dir} directory with \$(python_get_implementation) \$(python_get_version)" \
|
||||
--failure-message "Installation of Python bindings from ${dir} directory with \$(python_get_implementation) \$(python_get_version) failed" \
|
||||
-s --source-dir ${dir} \
|
||||
installation
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use python; then
|
||||
python_mod_optimize setools
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
if use python; then
|
||||
python_mod_cleanup setools
|
||||
fi
|
||||
}
|
@ -1,96 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-arch/dpkg/dpkg-1.16.10.ebuild,v 1.14 2013/07/02 07:41:42 ago Exp $
|
||||
|
||||
EAPI=4
|
||||
inherit eutils multilib autotools toolchain-funcs
|
||||
|
||||
DESCRIPTION="Package maintenance system for Debian"
|
||||
HOMEPAGE="http://packages.qa.debian.org/dpkg"
|
||||
SRC_URI="mirror://debian/pool/main/d/${PN}/${P/-/_}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ppc ppc64 s390 sh sparc x86 ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-solaris ~x86-solaris"
|
||||
IUSE="bzip2 dselect nls test unicode zlib"
|
||||
|
||||
LANGS="
|
||||
ast bs ca cs da de dz el eo es et eu fr gl hu id it ja km ko ku lt mr nb ne
|
||||
nl nn pa pl pt_BR pt ro ru sk sv th tl vi zh_CN zh_TW
|
||||
"
|
||||
|
||||
for X in ${LANGS} ; do
|
||||
IUSE="${IUSE} linguas_${X}"
|
||||
done
|
||||
|
||||
RDEPEND=">=dev-lang/perl-5.6.0
|
||||
dev-perl/TimeDate
|
||||
>=sys-libs/ncurses-5.2-r7
|
||||
zlib? ( >=sys-libs/zlib-1.1.4 )
|
||||
bzip2? ( app-arch/bzip2 )"
|
||||
DEPEND="${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
nls? ( app-text/po4a )
|
||||
sys-devel/flex
|
||||
virtual/pkgconfig
|
||||
test? (
|
||||
dev-perl/DateTime-Format-DateParse
|
||||
dev-perl/IO-String
|
||||
dev-perl/Test-Pod
|
||||
)"
|
||||
REQUIRED_USE="dselect? ( nls )"
|
||||
|
||||
src_prepare() {
|
||||
# do not expect Debian's gzip --rsyncable extension
|
||||
epatch "${FILESDIR}"/${PN}-1.16.4.2-gzip-rsyncable.patch
|
||||
|
||||
# Force the use of the running bash for get-version (this file is never
|
||||
# installed, so no need to worry about hardcoding a temporary bash)
|
||||
sed -i -e '1c\#!'"${BASH}" get-version || die
|
||||
|
||||
# this test depends on a Debian only gzip extension that adds --rsyncable
|
||||
# which will therefore always fail on Gentoo. (bug #310847).
|
||||
sed -i scripts/Makefile.am \
|
||||
-e '/850_Dpkg_Compression.t/d' \
|
||||
|| die "sed failed"
|
||||
|
||||
# test fails (bug #414095)
|
||||
sed -i utils/Makefile.am \
|
||||
-e '/^test_cases/d;/100_update_alternatives/d' || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
econf \
|
||||
$(use_enable dselect) \
|
||||
$(use_enable unicode) \
|
||||
$(use_with bzip2 bz2) \
|
||||
$(use_with zlib) \
|
||||
${myconf} \
|
||||
--disable-compiler-optimisations \
|
||||
--disable-compiler-warnings \
|
||||
--disable-linker-optimisations \
|
||||
--disable-silent-rules \
|
||||
--disable-start-stop-daemon \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--without-selinux
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake AR=$(tc-getAR)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
strip-linguas ${LANGS}
|
||||
if [ -z "${LINGUAS}" ] ; then
|
||||
LINGUAS=none
|
||||
fi
|
||||
|
||||
emake DESTDIR="${D}" LINGUAS="${LINGUAS}" install
|
||||
rm "${ED}"/usr/sbin/install-info || die "rm install-info failed"
|
||||
dodoc ChangeLog THANKS TODO
|
||||
keepdir /usr/$(get_libdir)/db/methods/{mnt,floppy,disk}
|
||||
keepdir /usr/$(get_libdir)/db/{alternatives,info,methods,parts,updates}
|
||||
}
|
@ -1,96 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-arch/dpkg/dpkg-1.16.11.ebuild,v 1.1 2013/09/28 13:55:18 jer Exp $
|
||||
|
||||
EAPI=4
|
||||
inherit eutils multilib autotools toolchain-funcs
|
||||
|
||||
DESCRIPTION="Package maintenance system for Debian"
|
||||
HOMEPAGE="http://packages.qa.debian.org/dpkg"
|
||||
SRC_URI="mirror://debian/pool/main/d/${PN}/${P/-/_}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-solaris ~x86-solaris"
|
||||
IUSE="bzip2 dselect nls test unicode zlib"
|
||||
|
||||
LANGS="
|
||||
ast bs ca cs da de dz el eo es et eu fr gl hu id it ja km ko ku lt mr nb ne
|
||||
nl nn pa pl pt_BR pt ro ru sk sv th tl vi zh_CN zh_TW
|
||||
"
|
||||
|
||||
for X in ${LANGS} ; do
|
||||
IUSE="${IUSE} linguas_${X}"
|
||||
done
|
||||
|
||||
RDEPEND=">=dev-lang/perl-5.6.0
|
||||
dev-perl/TimeDate
|
||||
>=sys-libs/ncurses-5.2-r7
|
||||
zlib? ( >=sys-libs/zlib-1.1.4 )
|
||||
bzip2? ( app-arch/bzip2 )"
|
||||
DEPEND="${RDEPEND}
|
||||
app-arch/xz-utils
|
||||
nls? ( app-text/po4a )
|
||||
sys-devel/flex
|
||||
virtual/pkgconfig
|
||||
test? (
|
||||
dev-perl/DateTime-Format-DateParse
|
||||
dev-perl/IO-String
|
||||
dev-perl/Test-Pod
|
||||
)"
|
||||
REQUIRED_USE="dselect? ( nls )"
|
||||
|
||||
src_prepare() {
|
||||
# do not expect Debian's gzip --rsyncable extension
|
||||
epatch "${FILESDIR}"/${PN}-1.16.4.2-gzip-rsyncable.patch
|
||||
|
||||
# Force the use of the running bash for get-version (this file is never
|
||||
# installed, so no need to worry about hardcoding a temporary bash)
|
||||
sed -i -e '1c\#!'"${BASH}" get-version || die
|
||||
|
||||
# this test depends on a Debian only gzip extension that adds --rsyncable
|
||||
# which will therefore always fail on Gentoo. (bug #310847).
|
||||
sed -i scripts/Makefile.am \
|
||||
-e '/850_Dpkg_Compression.t/d' \
|
||||
|| die "sed failed"
|
||||
|
||||
# test fails (bug #414095)
|
||||
sed -i utils/Makefile.am \
|
||||
-e '/^test_cases/d;/100_update_alternatives/d' || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
econf \
|
||||
$(use_enable dselect) \
|
||||
$(use_enable unicode) \
|
||||
$(use_with bzip2 bz2) \
|
||||
$(use_with zlib) \
|
||||
${myconf} \
|
||||
--disable-compiler-optimisations \
|
||||
--disable-compiler-warnings \
|
||||
--disable-linker-optimisations \
|
||||
--disable-silent-rules \
|
||||
--disable-start-stop-daemon \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--without-selinux
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake AR=$(tc-getAR)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
strip-linguas ${LANGS}
|
||||
if [ -z "${LINGUAS}" ] ; then
|
||||
LINGUAS=none
|
||||
fi
|
||||
|
||||
emake DESTDIR="${D}" LINGUAS="${LINGUAS}" install
|
||||
rm "${ED}"/usr/sbin/install-info || die "rm install-info failed"
|
||||
dodoc ChangeLog THANKS TODO
|
||||
keepdir /usr/$(get_libdir)/db/methods/{mnt,floppy,disk}
|
||||
keepdir /usr/$(get_libdir)/db/{alternatives,info,methods,parts,updates}
|
||||
}
|
@ -0,0 +1,55 @@
|
||||
--- a/src/slave/kprop.c
|
||||
+++ b/src/slave/kprop.c
|
||||
@@ -91,7 +91,7 @@ main(argc, argv)
|
||||
int argc;
|
||||
char **argv;
|
||||
{
|
||||
- int fd, database_fd, database_size;
|
||||
+ int fd = -1, database_fd, database_size;
|
||||
krb5_error_code retval;
|
||||
krb5_context context;
|
||||
krb5_creds *my_creds;
|
||||
--- a/src/kadmin/ktutil/ktutil_funcs.c
|
||||
+++ b/src/kadmin/ktutil/ktutil_funcs.c
|
||||
@@ -64,7 +64,7 @@
|
||||
krb5_kt_list *list;
|
||||
int idx;
|
||||
{
|
||||
- krb5_kt_list lp, prev;
|
||||
+ krb5_kt_list lp, prev = NULL;
|
||||
int i;
|
||||
|
||||
for (lp = *list, i = 1; lp; prev = lp, lp = lp->next, i++) {
|
||||
--- a/src/lib/kadm5/alt_prof.c
|
||||
+++ b/src/lib/kadm5/alt_prof.c
|
||||
@@ -164,7 +164,7 @@
|
||||
char **values;
|
||||
char *valp;
|
||||
int idx;
|
||||
- krb5_boolean val;
|
||||
+ krb5_boolean val = 0;
|
||||
|
||||
kret = krb5_aprof_getvals (acontext, hierarchy, &values);
|
||||
if (kret)
|
||||
|
||||
--- a/src/util/profile/prof_init.c
|
||||
+++ b/src/util/profile/prof_init.c
|
||||
@@ -255,7 +255,7 @@ copy_vtable_profile(profile_t profile, profile_t *ret_new_profile)
|
||||
{
|
||||
errcode_t err;
|
||||
void *cbdata;
|
||||
- profile_t new_profile;
|
||||
+ profile_t new_profile = NULL;
|
||||
|
||||
*ret_new_profile = NULL;
|
||||
|
||||
--- a/src/tests/asn.1/trval.c 2013-04-12 12:51:36.000000000 -0500
|
||||
+++ b/src/tests/asn.1/trval.c 2013-05-24 04:31:14.077036380 -0500
|
||||
@@ -404,7 +404,7 @@
|
||||
{
|
||||
int n;
|
||||
int r = 0;
|
||||
- int rlen2;
|
||||
+ int rlen2 = 0;
|
||||
int rlent;
|
||||
int save_appl;
|
@ -0,0 +1,12 @@
|
||||
Bug #448778
|
||||
--- a/src/build-tools/krb5-config.in 2012-12-18 02:47:04.000000000 +0000
|
||||
+++ b/src/build-tools/krb5-config.in 2012-12-28 07:13:16.582693363 +0000
|
||||
@@ -217,7 +217,7 @@
|
||||
-e 's#\$(PROG_RPATH)#'$libdir'#' \
|
||||
-e 's#\$(PROG_LIBPATH)#'$libdirarg'#' \
|
||||
-e 's#\$(RPATH_FLAG)#'"$RPATH_FLAG"'#' \
|
||||
- -e 's#\$(LDFLAGS)#'"$LDFLAGS"'#' \
|
||||
+ -e 's#\$(LDFLAGS)##' \
|
||||
-e 's#\$(PTHREAD_CFLAGS)#'"$PTHREAD_CFLAGS"'#' \
|
||||
-e 's#\$(CFLAGS)##'`
|
||||
|
@ -1,7 +1,7 @@
|
||||
DIST libvirt-1.0.5.6.tar.gz 23998470 SHA256 171e2497d4d4109f4839f6f4b727b92f02530776b87b7246189d7ca6b44372bf SHA512 119c8c7a584a0fb6ea8e6385d5d5aac814e9f0a975adf4e75ee012d116a139c558ecb121da544e073700f1eb95a9b360fb457ce6cfebeddfb703fe42d41546a7 WHIRLPOOL 5f3b17f07e124816facf847d43bde74cbcd90213206085f770b1cb86240b0ba2a7cde8f1846665ecdaaf261d1ca44eb14226d27223e98b652efcbb834d00a103
|
||||
DIST libvirt-1.1.3-062ad8b2.tar.xz 18836 SHA256 a16a72d9cc6b49564e234b39f94a987e20da9fd511203ec1cb4534ccf4570121 SHA512 0734836972ef3e7a2d8bcb1d1ab001b3f15202c2921107c28a17f6ccf4002849c920133969b611560a88ca7f969eea468b1a8bc14b432b270f624c6594fc1ade WHIRLPOOL 340ca175f7322ede982455ba311a19cd5cbb33ea49e1fa3a7ab13a0fdb31c37a8a0fc58cec189efb19a861a21d6c677c3c3533e58e9fb9eaa4ce0f3dde721ec9
|
||||
DIST libvirt-1.1.3.1.tar.gz 26595900 SHA256 00383e0beef1854610d8d47fd9347564b3654ce0e4a263e06b0de364a118c93e SHA512 59f79d0fc52ae0c9ae97bcc8fd90f799d6daf63c9a36d38738ec7d7392e630e39347f0c472b02434e83888b3ee0ab62d2b0b4eaa92eed3102ff36ca30f2598aa WHIRLPOOL 92be678e7ef84f9437bb91b1a621e6b35f9ce1383b945e466b4b864c0df1cfb95900da6267263bb1984663ea8e2b5b358bd516748a934835a87be822f5d27e90
|
||||
DIST libvirt-1.1.3.3.tar.gz 26611343 SHA256 81f3527b5e647d128af18b21ea924ffb4f8b6420fe87d19f09829af7b31982e9 SHA512 01fb1b70fc537cdb0986f09066df3af61ed3d949814c42438842e4ceb44e919a1a1a4f1d9e3d4adaab050fbcb4dffc218b1b9f7fbbae1d035a7c0edc2fc3f03e WHIRLPOOL cf5cc9d298deac77c7f6ff5a3a8edac8f63bdf93a423fefa8a4969fa0d03ec35864a7fd1894c4fd37daad731c018d3c0b7e55fe92321bbc3f106fb73728f1e8d
|
||||
DIST libvirt-1.1.3.tar.gz 26578000 SHA256 af83e65b4b26520662ddd183c1358be0d05138dba3e66745419f06441eff5a7c SHA512 895f8ccf1fdf7a36918e4d460b44b1bf67d06842e39142c89c620f6191e299b53c50f80ab47677d7cba6bd570177d79b5ee0d7d2a11472991590389db51fab9d WHIRLPOOL c046f1182976bbd6bf65b460b2017996e63f67b5cce44f0af859d90f892278d0236192e6e7172e16c85183da6e258a003d9c8757af2079ab4d77de9ca300d986
|
||||
DIST libvirt-1.1.4.tar.gz 26799019 SHA256 5910f5cf607a50c606d959e6b1e5d6e67966b7aa7324982afd7f85d9c24bd98f SHA512 64455585b8d7e5c0f701e9803ae00d277ee27f9bec92b9890e487cd0298f5f8ff9075d0b2bc81be67e8d8e03bfe58eb2e4fd6292439acd9d22a3f3e7f5b87efc WHIRLPOOL c8de6024b51988415847463064ccf2bcc9d7cb42be8765fbfcf901b594d963351f312d962ca4fb2a5ecce7c2247a60b6201e57a41ba44caa6211148585d65352
|
||||
DIST libvirt-1.2.0-36378d1a.tar.xz 5200 SHA256 1c1448051bad702eccd7a122496f7995427218152b65de12e3d418f7faaf6412 SHA512 4c01d90dc1e2c46ed65a61321887d1337ea2733dfda1361de9560bd5aba68ff51e425190bbe140893dd96f902111ed5be1ba9bc72a356abc0251f30fff645746 WHIRLPOOL f3778cfd56c0a0857607af1c301e3cf8a96ecf87b5ec85d23dbf98512692fd2bb428c923eab69234e6fdad95ed6e195bb01ebdd843df7a18e910e55bb6dccf82
|
||||
DIST libvirt-1.2.0.tar.gz 26916717 SHA256 a8e578ae7861db2ac5f454073293d2ef3229fd3f6c4f9029101763244db22ddd SHA512 834274b0249eb39439d21cd9b494fa2acbaee9e5337557b8d57977b483f3e5d00fd0a6743f8f4a02e826114c15d2468ab0c9385e4e4c9537abba18da3d8c5fa6 WHIRLPOOL 057a91ad4296710833721d3a7f9eff616755422462479709b72e5fe679ed8825c5bbfd47fde9f7abaf1e6f4104a680ad874c41bf9759cf45ac7d863061a38cd0
|
||||
DIST libvirt-1.2.1.tar.gz 27228694 SHA256 bc29b5751bf36753c17e2fdbb75e70c7b07df3d9527586d3426e90f5f4abb898 SHA512 6184840623156ca01ee7f59078ebf031bc84c25b37bb110372c7bcf230a79b74e267475f989fb73db5e3c096dcc74f03cb30adfc5de022f756ed2cd6ab05bfd0 WHIRLPOOL 75c2a37b1101950474aad8931d999564ff575512d38c9e8d2cf989cef3ad7057853046b738b20bd77be80c1e6677319aea7227797ae95ce91512dc36bd05a142
|
||||
|
@ -1,433 +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/libvirt/libvirt-1.0.5.6.ebuild,v 1.2 2013/10/25 18:10:42 cardoe Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
#BACKPORTS=b8430867
|
||||
AUTOTOOLIZE=yes
|
||||
|
||||
MY_P="${P/_rc/-rc}"
|
||||
|
||||
PYTHON_DEPEND="python? 2:2.5"
|
||||
#RESTRICT_PYTHON_ABIS="3.*"
|
||||
#SUPPORT_PYTHON_ABIS="1"
|
||||
|
||||
inherit eutils python user autotools linux-info systemd
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
inherit git-2
|
||||
EGIT_REPO_URI="git://libvirt.org/libvirt.git"
|
||||
AUTOTOOLIZE=yes
|
||||
SRC_URI=""
|
||||
KEYWORDS=""
|
||||
else
|
||||
SRC_URI="http://libvirt.org/sources/stable_updates/${MY_P}.tar.gz
|
||||
ftp://libvirt.org/libvirt/stable_updates/${MY_P}.tar.gz
|
||||
${BACKPORTS:+
|
||||
http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}"
|
||||
KEYWORDS="amd64 x86"
|
||||
fi
|
||||
S="${WORKDIR}/${P%_rc*}"
|
||||
|
||||
DESCRIPTION="C toolkit to manipulate virtual machines"
|
||||
HOMEPAGE="http://www.libvirt.org/"
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
IUSE="audit avahi +caps firewalld fuse iscsi +libvirtd lvm lxc +macvtap nfs \
|
||||
nls numa openvz parted pcap phyp policykit python +qemu rbd sasl \
|
||||
selinux +udev uml +vepa virtualbox virt-network xen elibc_glibc \
|
||||
systemd"
|
||||
REQUIRED_USE="libvirtd? ( || ( lxc openvz qemu uml virtualbox xen ) )
|
||||
lxc? ( caps libvirtd )
|
||||
openvz? ( libvirtd )
|
||||
qemu? ( libvirtd )
|
||||
uml? ( libvirtd )
|
||||
vepa? ( macvtap )
|
||||
virtualbox? ( libvirtd )
|
||||
xen? ( libvirtd )
|
||||
virt-network? ( libvirtd )
|
||||
firewalld? ( virt-network )"
|
||||
|
||||
# gettext.sh command is used by the libvirt command wrappers, and it's
|
||||
# non-optional, so put it into RDEPEND.
|
||||
# We can use both libnl:1.1 and libnl:3, but if you have both installed, the
|
||||
# package will use 3 by default. Since we don't have slot pinning in an API,
|
||||
# we must go with the most recent
|
||||
RDEPEND="sys-libs/readline
|
||||
sys-libs/ncurses
|
||||
>=net-misc/curl-7.18.0
|
||||
dev-libs/libgcrypt
|
||||
>=dev-libs/libxml2-2.7.6
|
||||
dev-libs/libnl:3
|
||||
>=net-libs/gnutls-1.0.25
|
||||
net-libs/libssh2
|
||||
sys-apps/dmidecode
|
||||
>=sys-apps/util-linux-2.17
|
||||
sys-devel/gettext
|
||||
>=net-analyzer/netcat6-1.0-r2
|
||||
app-misc/scrub
|
||||
audit? ( sys-process/audit )
|
||||
avahi? ( >=net-dns/avahi-0.6[dbus] )
|
||||
caps? ( sys-libs/libcap-ng )
|
||||
fuse? ( >=sys-fs/fuse-2.8.6 )
|
||||
iscsi? ( sys-block/open-iscsi )
|
||||
lxc? ( sys-power/pm-utils )
|
||||
lvm? ( >=sys-fs/lvm2-2.02.48-r2 )
|
||||
nfs? ( net-fs/nfs-utils )
|
||||
numa? (
|
||||
>sys-process/numactl-2.0.2
|
||||
sys-process/numad
|
||||
)
|
||||
openvz? ( sys-kernel/openvz-sources )
|
||||
parted? (
|
||||
>=sys-block/parted-1.8[device-mapper]
|
||||
sys-fs/lvm2
|
||||
)
|
||||
pcap? ( >=net-libs/libpcap-1.0.0 )
|
||||
policykit? ( >=sys-auth/polkit-0.9 )
|
||||
qemu? (
|
||||
>=app-emulation/qemu-0.13.0
|
||||
dev-libs/yajl
|
||||
sys-power/pm-utils
|
||||
)
|
||||
rbd? ( sys-cluster/ceph )
|
||||
sasl? ( dev-libs/cyrus-sasl )
|
||||
selinux? ( >=sys-libs/libselinux-2.0.85 )
|
||||
virtualbox? ( || ( app-emulation/virtualbox >=app-emulation/virtualbox-bin-2.2.0 ) )
|
||||
xen? ( app-emulation/xen-tools app-emulation/xen )
|
||||
udev? ( virtual/udev >=x11-libs/libpciaccess-0.10.9 )
|
||||
virt-network? ( net-dns/dnsmasq
|
||||
>=net-firewall/iptables-1.4.10
|
||||
net-misc/radvd
|
||||
net-firewall/ebtables
|
||||
sys-apps/iproute2[-minimal]
|
||||
firewalld? ( net-firewall/firewalld )
|
||||
)
|
||||
elibc_glibc? ( || ( >=net-libs/libtirpc-0.2.2-r1 <sys-libs/glibc-2.14 ) )"
|
||||
# one? ( dev-libs/xmlrpc-c )
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
app-text/xhtml1
|
||||
dev-libs/libxslt
|
||||
dev-lang/perl
|
||||
=dev-lang/python-2*"
|
||||
|
||||
LXC_CONFIG_CHECK="
|
||||
~CGROUPS
|
||||
~CGROUP_FREEZER
|
||||
~CGROUP_DEVICE
|
||||
~CGROUP_CPUACCT
|
||||
~CGROUP_SCHED
|
||||
~CGROUP_PERF
|
||||
~BLK_CGROUP
|
||||
~NET_CLS_CGROUP
|
||||
~NETPRIO_CGROUP
|
||||
~CPUSETS
|
||||
~RESOURCE_COUNTERS
|
||||
~NAMESPACES
|
||||
~UTS_NS
|
||||
~IPC_NS
|
||||
~PID_NS
|
||||
~NET_NS
|
||||
~DEVPTS_MULTIPLE_INSTANCES
|
||||
~VETH
|
||||
~MACVLAN
|
||||
~POSIX_MQUEUE
|
||||
~!GRKERNSEC_CHROOT_MOUNT
|
||||
~!GRKERNSEC_CHROOT_DOUBLE
|
||||
~!GRKERNSEC_CHROOT_PIVOT
|
||||
~!GRKERNSEC_CHROOT_CHMOD
|
||||
~!GRKERNSEC_CHROOT_CAPS
|
||||
"
|
||||
|
||||
VIRTNET_CONFIG_CHECK="
|
||||
~BRIDGE_NF_EBTABLES
|
||||
~BRIDGE_EBT_MARK_T
|
||||
~NETFILTER_ADVANCED
|
||||
~NETFILTER_XT_TARGET_CHECKSUM
|
||||
~NETFILTER_XT_CONNMARK
|
||||
~NETFILTER_XT_MARK
|
||||
"
|
||||
|
||||
MACVTAP_CONFIG_CHECK="~MACVTAP"
|
||||
|
||||
pkg_setup() {
|
||||
python_set_active_version 2
|
||||
python_pkg_setup
|
||||
|
||||
enewgroup qemu 77
|
||||
enewuser qemu 77 -1 -1 qemu kvm
|
||||
|
||||
# Some people used the masked ebuild which was not adding the qemu
|
||||
# user to the kvm group originally. This results in VMs failing to
|
||||
# start for some users. bug #430808
|
||||
egetent group kvm | grep -q qemu
|
||||
if [[ $? -ne 0 ]]; then
|
||||
gpasswd -a qemu kvm
|
||||
fi
|
||||
|
||||
# Handle specific kernel versions for different features
|
||||
kernel_is lt 3 6 && LXC_CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
|
||||
kernel_is ge 3 6 && LXC_CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP ~MEMCG_KMEM"
|
||||
|
||||
CONFIG_CHECK=""
|
||||
use fuse && CONFIG_CHECK+=" ~FUSE_FS"
|
||||
use lxc && CONFIG_CHECK+="${LXC_CONFIG_CHECK}"
|
||||
use macvtap && CONFIG_CHECK+="${MACVTAP}"
|
||||
use virt-network && CONFIG_CHECK+="${VIRTNET_CONFIG_CHECK}"
|
||||
if [[ -n ${CONFIG_CHECK} ]]; then
|
||||
linux-info_pkg_setup
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
touch "${S}/.mailmap"
|
||||
[[ -n ${BACKPORTS} ]] && \
|
||||
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
|
||||
epatch
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
|
||||
# git checkouts require bootstrapping to create the configure script.
|
||||
# Additionally the submodules must be cloned to the right locations
|
||||
# bug #377279
|
||||
./bootstrap || die "bootstrap failed"
|
||||
(
|
||||
git submodule status | sed 's/^[ +-]//;s/ .*//'
|
||||
git hash-object bootstrap.conf
|
||||
) >.git-module-status
|
||||
fi
|
||||
|
||||
epatch_user
|
||||
|
||||
[[ -n ${AUTOTOOLIZE} ]] && eautoreconf
|
||||
|
||||
# Tweak the init script
|
||||
local avahi_init=
|
||||
local iscsi_init=
|
||||
local rbd_init=
|
||||
local firewalld_init=
|
||||
cp "${FILESDIR}/libvirtd.init-r12" "${S}/libvirtd.init"
|
||||
use avahi && avahi_init='avahi-daemon'
|
||||
use iscsi && iscsi_init='iscsid'
|
||||
use rbd && rbd_init='ceph'
|
||||
use firewalld && firewalld_init='need firewalld'
|
||||
|
||||
sed -e "s/USE_FLAG_FIREWALLD/${firewalld_init}/" -i "${S}/libvirtd.init"
|
||||
sed -e "s/USE_FLAG_AVAHI/${avahi_init}/" -i "${S}/libvirtd.init"
|
||||
sed -e "s/USE_FLAG_ISCSI/${iscsi_init}/" -i "${S}/libvirtd.init"
|
||||
sed -e "s/USE_FLAG_RBD/${rbd_init}/" -i "${S}/libvirtd.init"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=""
|
||||
|
||||
## enable/disable daemon, otherwise client only utils
|
||||
myconf="${myconf} $(use_with libvirtd)"
|
||||
|
||||
## enable/disable the daemon using avahi to find VMs
|
||||
myconf="${myconf} $(use_with avahi)"
|
||||
|
||||
## hypervisors on the local host
|
||||
myconf="${myconf} $(use_with xen) $(use_with xen xen-inotify)"
|
||||
myconf+=" --without-xenapi"
|
||||
if use xen && has_version ">=app-emulation/xen-tools-4.2.0"; then
|
||||
myconf+=" --with-libxl"
|
||||
else
|
||||
myconf+=" --without-libxl"
|
||||
fi
|
||||
myconf="${myconf} $(use_with openvz)"
|
||||
myconf="${myconf} $(use_with lxc)"
|
||||
if use virtualbox && has_version app-emulation/virtualbox-ose; then
|
||||
myconf="${myconf} --with-vbox=/usr/lib/virtualbox-ose/"
|
||||
else
|
||||
myconf="${myconf} $(use_with virtualbox vbox)"
|
||||
fi
|
||||
myconf="${myconf} $(use_with uml)"
|
||||
myconf="${myconf} $(use_with qemu)"
|
||||
myconf="${myconf} $(use_with qemu yajl)" # Use QMP over HMP
|
||||
myconf="${myconf} $(use_with phyp)"
|
||||
myconf="${myconf} --with-esx"
|
||||
myconf="${myconf} --with-vmware"
|
||||
|
||||
## additional host drivers
|
||||
myconf="${myconf} $(use_with virt-network network)"
|
||||
myconf="${myconf} --with-storage-fs"
|
||||
myconf="${myconf} $(use_with lvm storage-lvm)"
|
||||
myconf="${myconf} $(use_with iscsi storage-iscsi)"
|
||||
myconf="${myconf} $(use_with parted storage-disk)"
|
||||
myconf="${myconf} $(use_with lvm storage-mpath)"
|
||||
myconf="${myconf} $(use_with rbd storage-rbd)"
|
||||
myconf="${myconf} $(use_with numa numactl)"
|
||||
myconf="${myconf} $(use_with numa numad)"
|
||||
myconf="${myconf} $(use_with selinux)"
|
||||
myconf="${myconf} $(use_with fuse)"
|
||||
|
||||
# udev for device support details
|
||||
myconf="${myconf} $(use_with udev)"
|
||||
|
||||
# linux capability support so we don't need privileged accounts
|
||||
myconf="${myconf} $(use_with caps capng)"
|
||||
|
||||
## auth stuff
|
||||
myconf="${myconf} $(use_with policykit polkit)"
|
||||
myconf="${myconf} $(use_with sasl)"
|
||||
|
||||
# network bits
|
||||
myconf="${myconf} $(use_with macvtap)"
|
||||
myconf="${myconf} $(use_with pcap libpcap)"
|
||||
myconf="${myconf} $(use_with vepa virtualport)"
|
||||
myconf="${myconf} $(use_with firewalld)"
|
||||
|
||||
## other
|
||||
myconf="${myconf} $(use_enable nls)"
|
||||
myconf="${myconf} $(use_with python)"
|
||||
|
||||
# user privilege bits fir qemu/kvm
|
||||
if use caps; then
|
||||
myconf="${myconf} --with-qemu-user=qemu"
|
||||
myconf="${myconf} --with-qemu-group=qemu"
|
||||
else
|
||||
myconf="${myconf} --with-qemu-user=root"
|
||||
myconf="${myconf} --with-qemu-group=root"
|
||||
fi
|
||||
|
||||
# audit support
|
||||
myconf="${myconf} $(use_with audit)"
|
||||
|
||||
## stuff we don't yet support
|
||||
myconf="${myconf} --without-netcf"
|
||||
|
||||
# we use udev over hal
|
||||
myconf="${myconf} --without-hal"
|
||||
|
||||
# locking support
|
||||
myconf="${myconf} --without-sanlock"
|
||||
|
||||
# systemd unit files
|
||||
use systemd && myconf="${myconf} --with-init-script=systemd"
|
||||
|
||||
# this is a nasty trick to work around the problem in bug
|
||||
# #275073. The reason why we don't solve this properly is that
|
||||
# it'll require us to rebuild autotools (and we don't really want
|
||||
# to do that right now). The proper solution has been sent
|
||||
# upstream and should hopefully land in 0.7.7, in the mean time,
|
||||
# mime the same functionality with this.
|
||||
case ${CHOST} in
|
||||
*cygwin* | *mingw* )
|
||||
;;
|
||||
*)
|
||||
ac_cv_prog_WINDRES=no
|
||||
;;
|
||||
esac
|
||||
|
||||
econf \
|
||||
${myconf} \
|
||||
--disable-static \
|
||||
--docdir=/usr/share/doc/${PF} \
|
||||
--with-remote \
|
||||
--localstatedir=/var
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
# Restore gnulib's config.sub and config.guess
|
||||
# bug #377279
|
||||
(cd .gnulib && git reset --hard > /dev/null)
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Explicitly allow parallel build of tests
|
||||
export VIR_TEST_DEBUG=1
|
||||
HOME="${T}" emake check || die "tests failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake install \
|
||||
DESTDIR="${D}" \
|
||||
HTML_DIR=/usr/share/doc/${PF}/html \
|
||||
DOCS_DIR=/usr/share/doc/${PF}/python \
|
||||
EXAMPLE_DIR=/usr/share/doc/${PF}/python/examples \
|
||||
SYSTEMD_UNIT_DIR="$(systemd_get_unitdir)" \
|
||||
|| die "emake install failed"
|
||||
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
|
||||
use libvirtd || return 0
|
||||
# From here, only libvirtd-related instructions, be warned!
|
||||
|
||||
newinitd "${S}/libvirtd.init" libvirtd || die
|
||||
newconfd "${FILESDIR}/libvirtd.confd-r4" libvirtd || die
|
||||
|
||||
keepdir /var/lib/libvirt/images
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# we only ever want to generate this once
|
||||
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
|
||||
rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
|
||||
fi
|
||||
|
||||
# We really don't want to use or support old PolicyKit cause it
|
||||
# screws with the new polkit integration
|
||||
if has_version sys-auth/policykit; then
|
||||
rm -rf "${D}"/usr/share/PolicyKit/policy/org.libvirt.unix.policy
|
||||
fi
|
||||
|
||||
# Only sysctl files ending in .conf work
|
||||
mv "${D}"/usr/lib/sysctl.d/libvirtd.conf "${D}"/etc/sysctl.d/libvirtd.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use python && python_mod_optimize libvirt.py
|
||||
|
||||
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
|
||||
touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml
|
||||
fi
|
||||
|
||||
# support for dropped privileges
|
||||
if use qemu; then
|
||||
fperms 0750 "${EROOT}/var/lib/libvirt/qemu"
|
||||
fperms 0750 "${EROOT}/var/cache/libvirt/qemu"
|
||||
fi
|
||||
|
||||
if use caps && use qemu; then
|
||||
fowners -R qemu:qemu "${EROOT}/var/lib/libvirt/qemu"
|
||||
fowners -R qemu:qemu "${EROOT}/var/cache/libvirt/qemu"
|
||||
elif use qemu; then
|
||||
fowners -R root:root "${EROOT}/var/lib/libvirt/qemu"
|
||||
fowners -R root:root "${EROOT}/var/cache/libvirt/qemu"
|
||||
fi
|
||||
|
||||
if ! use policykit; then
|
||||
elog "To allow normal users to connect to libvirtd you must change the"
|
||||
elog "unix sock group and/or perms in /etc/libvirt/libvirtd.conf"
|
||||
fi
|
||||
|
||||
use libvirtd || return 0
|
||||
# From here, only libvirtd-related instructions, be warned!
|
||||
|
||||
elog
|
||||
elog "For the basic networking support (bridged and routed networks)"
|
||||
elog "you don't need any extra software. For more complex network modes"
|
||||
elog "including but not limited to NATed network, you can enable the"
|
||||
elog "'virt-network' USE flag."
|
||||
elog
|
||||
if has_version net-dns/dnsmasq; then
|
||||
ewarn "If you have a DNS server setup on your machine, you will have"
|
||||
ewarn "to configure /etc/dnsmasq.conf to enable the following settings: "
|
||||
ewarn " bind-interfaces"
|
||||
ewarn " interface or except-interface"
|
||||
ewarn
|
||||
ewarn "Otherwise you might have issues with your existing DNS server."
|
||||
fi
|
||||
|
||||
if use caps && use qemu; then
|
||||
elog "libvirt will now start qemu/kvm VMs with non-root privileges."
|
||||
elog "Ensure any resources your VMs use are accessible by qemu:qemu"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
use python && python_mod_cleanup libvirt.py
|
||||
}
|
@ -1,433 +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/libvirt/libvirt-1.1.4.ebuild,v 1.2 2013/11/11 03:41:44 floppym Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
#BACKPORTS=062ad8b2
|
||||
AUTOTOOLIZE=yes
|
||||
|
||||
MY_P="${P/_rc/-rc}"
|
||||
|
||||
PYTHON_COMPAT=( python{2_6,2_7} )
|
||||
|
||||
inherit eutils python-single-r1 user autotools linux-info systemd readme.gentoo
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
inherit git-2
|
||||
EGIT_REPO_URI="git://libvirt.org/libvirt.git"
|
||||
AUTOTOOLIZE=yes
|
||||
SRC_URI=""
|
||||
KEYWORDS=""
|
||||
else
|
||||
SRC_URI="http://libvirt.org/sources/${MY_P}.tar.gz
|
||||
ftp://libvirt.org/libvirt/${MY_P}.tar.gz
|
||||
${BACKPORTS:+
|
||||
http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
fi
|
||||
S="${WORKDIR}/${P%_rc*}"
|
||||
|
||||
DESCRIPTION="C toolkit to manipulate virtual machines"
|
||||
HOMEPAGE="http://www.libvirt.org/"
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
IUSE="audit avahi +caps firewalld fuse iscsi +libvirtd lvm lxc +macvtap nfs \
|
||||
nls numa openvz parted pcap phyp policykit python +qemu rbd sasl \
|
||||
selinux +udev uml +vepa virtualbox virt-network xen elibc_glibc \
|
||||
systemd"
|
||||
REQUIRED_USE="libvirtd? ( || ( lxc openvz qemu uml virtualbox xen ) )
|
||||
lxc? ( caps libvirtd )
|
||||
openvz? ( libvirtd )
|
||||
qemu? ( libvirtd )
|
||||
uml? ( libvirtd )
|
||||
vepa? ( macvtap )
|
||||
virtualbox? ( libvirtd )
|
||||
xen? ( libvirtd )
|
||||
virt-network? ( libvirtd )
|
||||
firewalld? ( virt-network )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
# gettext.sh command is used by the libvirt command wrappers, and it's
|
||||
# non-optional, so put it into RDEPEND.
|
||||
# We can use both libnl:1.1 and libnl:3, but if you have both installed, the
|
||||
# package will use 3 by default. Since we don't have slot pinning in an API,
|
||||
# we must go with the most recent
|
||||
RDEPEND="sys-libs/readline
|
||||
sys-libs/ncurses
|
||||
>=net-misc/curl-7.18.0
|
||||
dev-libs/libgcrypt
|
||||
>=dev-libs/libxml2-2.7.6
|
||||
dev-libs/libnl:3
|
||||
>=net-libs/gnutls-1.0.25
|
||||
net-libs/libssh2
|
||||
sys-apps/dmidecode
|
||||
>=sys-apps/util-linux-2.17
|
||||
sys-devel/gettext
|
||||
>=net-analyzer/netcat6-1.0-r2
|
||||
app-misc/scrub
|
||||
audit? ( sys-process/audit )
|
||||
avahi? ( >=net-dns/avahi-0.6[dbus] )
|
||||
caps? ( sys-libs/libcap-ng )
|
||||
fuse? ( >=sys-fs/fuse-2.8.6 )
|
||||
iscsi? ( sys-block/open-iscsi )
|
||||
lxc? ( sys-power/pm-utils )
|
||||
lvm? ( >=sys-fs/lvm2-2.02.48-r2 )
|
||||
nfs? ( net-fs/nfs-utils )
|
||||
numa? (
|
||||
>sys-process/numactl-2.0.2
|
||||
sys-process/numad
|
||||
)
|
||||
openvz? ( sys-kernel/openvz-sources )
|
||||
parted? (
|
||||
>=sys-block/parted-1.8[device-mapper]
|
||||
sys-fs/lvm2
|
||||
)
|
||||
pcap? ( >=net-libs/libpcap-1.0.0 )
|
||||
policykit? ( >=sys-auth/polkit-0.9 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
qemu? (
|
||||
>=app-emulation/qemu-0.13.0
|
||||
dev-libs/yajl
|
||||
sys-power/pm-utils
|
||||
)
|
||||
rbd? ( sys-cluster/ceph )
|
||||
sasl? ( dev-libs/cyrus-sasl )
|
||||
selinux? ( >=sys-libs/libselinux-2.0.85 )
|
||||
virtualbox? ( || ( app-emulation/virtualbox >=app-emulation/virtualbox-bin-2.2.0 ) )
|
||||
xen? ( app-emulation/xen-tools app-emulation/xen )
|
||||
udev? ( virtual/udev >=x11-libs/libpciaccess-0.10.9 )
|
||||
virt-network? ( net-dns/dnsmasq
|
||||
>=net-firewall/iptables-1.4.10
|
||||
net-misc/radvd
|
||||
net-firewall/ebtables
|
||||
sys-apps/iproute2[-minimal]
|
||||
firewalld? ( net-firewall/firewalld )
|
||||
)
|
||||
elibc_glibc? ( || ( >=net-libs/libtirpc-0.2.2-r1 <sys-libs/glibc-2.14 ) )"
|
||||
# one? ( dev-libs/xmlrpc-c )
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
app-text/xhtml1
|
||||
dev-lang/perl
|
||||
dev-libs/libxslt"
|
||||
|
||||
DOC_CONTENTS="For the basic networking support (bridged and routed networks)
|
||||
you don't need any extra software. For more complex network modes
|
||||
including but not limited to NATed network, you can enable the
|
||||
'virt-network' USE flag.\n\n
|
||||
If you are using dnsmasq on your system, you will have
|
||||
to configure /etc/dnsmasq.conf to enable the following settings:\n\n
|
||||
bind-interfaces\n
|
||||
interface or except-interface\n\n
|
||||
Otherwise you might have issues with your existing DNS server."
|
||||
|
||||
LXC_CONFIG_CHECK="
|
||||
~CGROUPS
|
||||
~CGROUP_FREEZER
|
||||
~CGROUP_DEVICE
|
||||
~CGROUP_CPUACCT
|
||||
~CGROUP_SCHED
|
||||
~CGROUP_PERF
|
||||
~BLK_CGROUP
|
||||
~NET_CLS_CGROUP
|
||||
~NETPRIO_CGROUP
|
||||
~CPUSETS
|
||||
~RESOURCE_COUNTERS
|
||||
~NAMESPACES
|
||||
~UTS_NS
|
||||
~IPC_NS
|
||||
~PID_NS
|
||||
~NET_NS
|
||||
~USER_NS
|
||||
~DEVPTS_MULTIPLE_INSTANCES
|
||||
~VETH
|
||||
~MACVLAN
|
||||
~POSIX_MQUEUE
|
||||
~SECURITYFS
|
||||
~!GRKERNSEC_CHROOT_MOUNT
|
||||
~!GRKERNSEC_CHROOT_DOUBLE
|
||||
~!GRKERNSEC_CHROOT_PIVOT
|
||||
~!GRKERNSEC_CHROOT_CHMOD
|
||||
~!GRKERNSEC_CHROOT_CAPS
|
||||
"
|
||||
|
||||
VIRTNET_CONFIG_CHECK="
|
||||
~BRIDGE_NF_EBTABLES
|
||||
~BRIDGE_EBT_MARK_T
|
||||
~NETFILTER_ADVANCED
|
||||
~NETFILTER_XT_TARGET_CHECKSUM
|
||||
~NETFILTER_XT_CONNMARK
|
||||
~NETFILTER_XT_MARK
|
||||
"
|
||||
|
||||
MACVTAP_CONFIG_CHECK=" ~MACVTAP"
|
||||
|
||||
LVM_CONFIG_CHECK=" ~BLK_DEV_DM ~DM_SNAPSHOT ~DM_MULTIPATH"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup qemu 77
|
||||
enewuser qemu 77 -1 -1 qemu kvm
|
||||
|
||||
# Some people used the masked ebuild which was not adding the qemu
|
||||
# user to the kvm group originally. This results in VMs failing to
|
||||
# start for some users. bug #430808
|
||||
egetent group kvm | grep -q qemu
|
||||
if [[ $? -ne 0 ]]; then
|
||||
gpasswd -a qemu kvm
|
||||
fi
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
|
||||
# Handle specific kernel versions for different features
|
||||
kernel_is lt 3 6 && LXC_CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
|
||||
kernel_is ge 3 6 && LXC_CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP ~MEMCG_KMEM"
|
||||
|
||||
CONFIG_CHECK=""
|
||||
use fuse && CONFIG_CHECK+=" ~FUSE_FS"
|
||||
use lvm && CONFIG_CHECK+="${LVM_CONFIG_CHECK}"
|
||||
use lxc && CONFIG_CHECK+="${LXC_CONFIG_CHECK}"
|
||||
use macvtap && CONFIG_CHECK+="${MACVTAP_CONFIG_CHECK}"
|
||||
use virt-network && CONFIG_CHECK+="${VIRTNET_CONFIG_CHECK}"
|
||||
if [[ -n ${CONFIG_CHECK} ]]; then
|
||||
linux-info_pkg_setup
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
touch "${S}/.mailmap"
|
||||
[[ -n ${BACKPORTS} ]] && \
|
||||
EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
|
||||
epatch
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
|
||||
# git checkouts require bootstrapping to create the configure script.
|
||||
# Additionally the submodules must be cloned to the right locations
|
||||
# bug #377279
|
||||
./bootstrap || die "bootstrap failed"
|
||||
(
|
||||
git submodule status | sed 's/^[ +-]//;s/ .*//'
|
||||
git hash-object bootstrap.conf
|
||||
) >.git-module-status
|
||||
fi
|
||||
|
||||
epatch_user
|
||||
|
||||
[[ -n ${AUTOTOOLIZE} ]] && eautoreconf
|
||||
|
||||
# Tweak the init script
|
||||
local avahi_init=
|
||||
local iscsi_init=
|
||||
local rbd_init=
|
||||
local firewalld_init=
|
||||
cp "${FILESDIR}/libvirtd.init-r13" "${S}/libvirtd.init"
|
||||
use avahi && avahi_init='avahi-daemon'
|
||||
use iscsi && iscsi_init='iscsid'
|
||||
use rbd && rbd_init='ceph'
|
||||
use firewalld && firewalld_init='need firewalld'
|
||||
|
||||
sed -e "s/USE_FLAG_FIREWALLD/${firewalld_init}/" -i "${S}/libvirtd.init"
|
||||
sed -e "s/USE_FLAG_AVAHI/${avahi_init}/" -i "${S}/libvirtd.init"
|
||||
sed -e "s/USE_FLAG_ISCSI/${iscsi_init}/" -i "${S}/libvirtd.init"
|
||||
sed -e "s/USE_FLAG_RBD/${rbd_init}/" -i "${S}/libvirtd.init"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=""
|
||||
|
||||
## enable/disable daemon, otherwise client only utils
|
||||
myconf="${myconf} $(use_with libvirtd)"
|
||||
|
||||
## enable/disable the daemon using avahi to find VMs
|
||||
myconf="${myconf} $(use_with avahi)"
|
||||
|
||||
## hypervisors on the local host
|
||||
myconf="${myconf} $(use_with xen) $(use_with xen xen-inotify)"
|
||||
myconf+=" --without-xenapi"
|
||||
if use xen && has_version ">=app-emulation/xen-tools-4.2.0"; then
|
||||
myconf+=" --with-libxl"
|
||||
else
|
||||
myconf+=" --without-libxl"
|
||||
fi
|
||||
myconf="${myconf} $(use_with openvz)"
|
||||
myconf="${myconf} $(use_with lxc)"
|
||||
if use virtualbox && has_version app-emulation/virtualbox-ose; then
|
||||
myconf="${myconf} --with-vbox=/usr/lib/virtualbox-ose/"
|
||||
else
|
||||
myconf="${myconf} $(use_with virtualbox vbox)"
|
||||
fi
|
||||
myconf="${myconf} $(use_with uml)"
|
||||
myconf="${myconf} $(use_with qemu)"
|
||||
myconf="${myconf} $(use_with qemu yajl)" # Use QMP over HMP
|
||||
myconf="${myconf} $(use_with phyp)"
|
||||
myconf="${myconf} --with-esx"
|
||||
myconf="${myconf} --with-vmware"
|
||||
|
||||
## additional host drivers
|
||||
myconf="${myconf} $(use_with virt-network network)"
|
||||
myconf="${myconf} --with-storage-fs"
|
||||
myconf="${myconf} $(use_with lvm storage-lvm)"
|
||||
myconf="${myconf} $(use_with iscsi storage-iscsi)"
|
||||
myconf="${myconf} $(use_with parted storage-disk)"
|
||||
myconf="${myconf} $(use_with lvm storage-mpath)"
|
||||
myconf="${myconf} $(use_with rbd storage-rbd)"
|
||||
myconf="${myconf} $(use_with numa numactl)"
|
||||
myconf="${myconf} $(use_with numa numad)"
|
||||
myconf="${myconf} $(use_with selinux)"
|
||||
myconf="${myconf} $(use_with fuse)"
|
||||
|
||||
# udev for device support details
|
||||
myconf="${myconf} $(use_with udev)"
|
||||
|
||||
# linux capability support so we don't need privileged accounts
|
||||
myconf="${myconf} $(use_with caps capng)"
|
||||
|
||||
## auth stuff
|
||||
myconf="${myconf} $(use_with policykit polkit)"
|
||||
myconf="${myconf} $(use_with sasl)"
|
||||
|
||||
# network bits
|
||||
myconf="${myconf} $(use_with macvtap)"
|
||||
myconf="${myconf} $(use_with pcap libpcap)"
|
||||
myconf="${myconf} $(use_with vepa virtualport)"
|
||||
myconf="${myconf} $(use_with firewalld)"
|
||||
|
||||
## other
|
||||
myconf="${myconf} $(use_enable nls)"
|
||||
myconf="${myconf} $(use_with python)"
|
||||
|
||||
# user privilege bits fir qemu/kvm
|
||||
if use caps; then
|
||||
myconf="${myconf} --with-qemu-user=qemu"
|
||||
myconf="${myconf} --with-qemu-group=qemu"
|
||||
else
|
||||
myconf="${myconf} --with-qemu-user=root"
|
||||
myconf="${myconf} --with-qemu-group=root"
|
||||
fi
|
||||
|
||||
# audit support
|
||||
myconf="${myconf} $(use_with audit)"
|
||||
|
||||
## stuff we don't yet support
|
||||
myconf="${myconf} --without-netcf"
|
||||
|
||||
# we use udev over hal
|
||||
myconf="${myconf} --without-hal"
|
||||
|
||||
# locking support
|
||||
myconf="${myconf} --without-sanlock"
|
||||
|
||||
# systemd unit files
|
||||
use systemd && myconf="${myconf} --with-init-script=systemd"
|
||||
|
||||
# this is a nasty trick to work around the problem in bug
|
||||
# #275073. The reason why we don't solve this properly is that
|
||||
# it'll require us to rebuild autotools (and we don't really want
|
||||
# to do that right now). The proper solution has been sent
|
||||
# upstream and should hopefully land in 0.7.7, in the mean time,
|
||||
# mime the same functionality with this.
|
||||
case ${CHOST} in
|
||||
*cygwin* | *mingw* )
|
||||
;;
|
||||
*)
|
||||
ac_cv_prog_WINDRES=no
|
||||
;;
|
||||
esac
|
||||
|
||||
econf \
|
||||
${myconf} \
|
||||
--disable-static \
|
||||
--docdir=/usr/share/doc/${PF} \
|
||||
--with-remote \
|
||||
--localstatedir=/var
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
# Restore gnulib's config.sub and config.guess
|
||||
# bug #377279
|
||||
(cd .gnulib && git reset --hard > /dev/null)
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Explicitly allow parallel build of tests
|
||||
export VIR_TEST_DEBUG=1
|
||||
HOME="${T}" emake check || die "tests failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake install \
|
||||
DESTDIR="${D}" \
|
||||
HTML_DIR=/usr/share/doc/${PF}/html \
|
||||
DOCS_DIR=/usr/share/doc/${PF} \
|
||||
EXAMPLE_DIR=/usr/share/doc/${PF}/examples \
|
||||
SYSTEMD_UNIT_DIR="$(systemd_get_unitdir)" \
|
||||
|| die "emake install failed"
|
||||
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
|
||||
use libvirtd || return 0
|
||||
# From here, only libvirtd-related instructions, be warned!
|
||||
|
||||
newinitd "${S}/libvirtd.init" libvirtd || die
|
||||
newconfd "${FILESDIR}/libvirtd.confd-r4" libvirtd || die
|
||||
newinitd "${FILESDIR}/virtlockd.init" virtlockd || die
|
||||
|
||||
keepdir /var/lib/libvirt/images
|
||||
|
||||
use python && python_optimize
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# we only ever want to generate this once
|
||||
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
|
||||
rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
|
||||
fi
|
||||
|
||||
# We really don't want to use or support old PolicyKit cause it
|
||||
# screws with the new polkit integration
|
||||
if has_version sys-auth/policykit; then
|
||||
rm -rf "${D}"/usr/share/PolicyKit/policy/org.libvirt.unix.policy
|
||||
fi
|
||||
|
||||
# Only sysctl files ending in .conf work
|
||||
dodir /etc/sysctl.d
|
||||
mv "${D}"/usr/lib/sysctl.d/libvirtd.conf "${D}"/etc/sysctl.d/libvirtd.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
|
||||
touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml
|
||||
fi
|
||||
|
||||
# support for dropped privileges
|
||||
if use qemu; then
|
||||
fperms 0750 "${EROOT}/var/lib/libvirt/qemu"
|
||||
fperms 0750 "${EROOT}/var/cache/libvirt/qemu"
|
||||
fi
|
||||
|
||||
if use caps && use qemu; then
|
||||
fowners -R qemu:qemu "${EROOT}/var/lib/libvirt/qemu"
|
||||
fowners -R qemu:qemu "${EROOT}/var/cache/libvirt/qemu"
|
||||
elif use qemu; then
|
||||
fowners -R root:root "${EROOT}/var/lib/libvirt/qemu"
|
||||
fowners -R root:root "${EROOT}/var/cache/libvirt/qemu"
|
||||
fi
|
||||
|
||||
if ! use policykit; then
|
||||
elog "To allow normal users to connect to libvirtd you must change the"
|
||||
elog "unix sock group and/or perms in /etc/libvirt/libvirtd.conf"
|
||||
fi
|
||||
|
||||
use libvirtd || return 0
|
||||
# From here, only libvirtd-related instructions, be warned!
|
||||
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use caps && use qemu; then
|
||||
elog "libvirt will now start qemu/kvm VMs with non-root privileges."
|
||||
elog "Ensure any resources your VMs use are accessible by qemu:qemu"
|
||||
fi
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/libvirt/libvirt-1.2.0.ebuild,v 1.2 2013/12/03 18:45:34 cardoe Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/libvirt/libvirt-1.2.1.ebuild,v 1.1 2014/01/19 21:35:51 cardoe Exp $
|
||||
|
||||
EAPI=5
|
||||
|
@ -0,0 +1,123 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/open-vm-tools/open-vm-tools-2013.09.16.1328054-r2.ebuild,v 1.1 2014/01/19 19:22:52 floppym Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils multilib pam user versionator flag-o-matic systemd toolchain-funcs
|
||||
|
||||
MY_PV="$(replace_version_separator 3 '-')"
|
||||
MY_P="${PN}-${MY_PV}"
|
||||
|
||||
DESCRIPTION="Opensourced tools for VMware guests"
|
||||
HOMEPAGE="http://open-vm-tools.sourceforge.net/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="X doc fuse icu modules pam +pic xinerama"
|
||||
|
||||
COMMON_DEPEND="
|
||||
dev-libs/glib:2
|
||||
dev-libs/libdnet
|
||||
sys-apps/ethtool
|
||||
sys-process/procps
|
||||
pam? ( virtual/pam )
|
||||
X? (
|
||||
dev-cpp/gtkmm:2.4
|
||||
x11-base/xorg-server
|
||||
x11-drivers/xf86-input-vmmouse
|
||||
x11-drivers/xf86-video-vmware
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/libnotify
|
||||
x11-libs/libX11
|
||||
x11-libs/libXtst
|
||||
)
|
||||
fuse? ( sys-fs/fuse )
|
||||
icu? ( dev-libs/icu:= )
|
||||
xinerama? ( x11-libs/libXinerama )
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
doc? ( app-doc/doxygen )
|
||||
virtual/pkgconfig
|
||||
virtual/linux-sources
|
||||
sys-apps/findutils
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
modules? ( app-emulation/open-vm-tools-kmod )
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup vmware
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Do not filter out Werror
|
||||
# Upstream Bug http://sourceforge.net/tracker/?func=detail&aid=2959749&group_id=204462&atid=989708
|
||||
# sed -i -e 's/CFLAGS=.*Werror/#&/g' configure || die "sed comment out Werror failed"
|
||||
sed -i -e 's:\(TEST_PLUGIN_INSTALLDIR=\).*:\1\$libdir/open-vm-tools/plugins/tests:g' configure || die "sed test_plugin_installdir failed"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# http://bugs.gentoo.org/402279
|
||||
if has_version '>=sys-process/procps-3.3.2'; then
|
||||
export CUSTOM_PROCPS_NAME=procps
|
||||
export CUSTOM_PROCPS_LIBS="$($(tc-getPKG_CONFIG) --libs libprocps)"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
--with-procps
|
||||
--with-dnet
|
||||
--without-kernel-modules
|
||||
$(use_enable doc docs)
|
||||
--docdir=/usr/share/doc/${PF}
|
||||
$(use_with X x)
|
||||
$(use_with X gtk2)
|
||||
$(use_with X gtkmm)
|
||||
$(use_with icu)
|
||||
$(use_with pam)
|
||||
$(use_with pic)
|
||||
$(use_enable xinerama multimon)
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
|
||||
# Bugs 260878, 326761
|
||||
find ./ -name Makefile | xargs sed -i -e 's/-Werror//g' || die "sed out Werror failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
rm "${D}"/etc/pam.d/vmtoolsd
|
||||
pamd_mimic_system vmtoolsd auth account
|
||||
|
||||
rm "${D}"/usr/$(get_libdir)/*.la
|
||||
rm "${D}"/usr/$(get_libdir)/open-vm-tools/plugins/common/*.la
|
||||
|
||||
newinitd "${FILESDIR}/open-vm-tools.initd" vmware-tools
|
||||
newconfd "${FILESDIR}/open-vm-tools.confd" vmware-tools
|
||||
systemd_dounit "${FILESDIR}"/vmtoolsd.service
|
||||
|
||||
exeinto /etc/vmware-tools/scripts/vmware/
|
||||
doexe "${FILESDIR}"/network
|
||||
|
||||
if use X;
|
||||
then
|
||||
fperms 4755 "/usr/bin/vmware-user-suid-wrapper"
|
||||
|
||||
dobin "${S}"/scripts/common/vmware-xdg-detect-de
|
||||
|
||||
insinto /etc/xdg/autostart
|
||||
doins "${FILESDIR}/open-vm-tools.desktop"
|
||||
|
||||
elog "To be able to use the drag'n'drop feature of VMware for file"
|
||||
elog "exchange, please add the users to the 'vmware' group."
|
||||
fi
|
||||
elog "Add 'vmware-tools' service to the default runlevel."
|
||||
}
|
@ -1,546 +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.5.2-r1.ebuild,v 1.4 2013/09/05 18:20:53 mgorny Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python{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(+)] <sys-apps/dtc-1.4.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)"
|
||||
}
|
@ -1,546 +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.5.2-r2.ebuild,v 1.4 2013/09/05 18:20:53 mgorny Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python{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=fd9f079c
|
||||
|
||||
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(+)] <sys-apps/dtc-1.4.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)"
|
||||
}
|
@ -1,549 +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.6.0.ebuild,v 1.4 2013/09/06 15:27:14 cardoe Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python{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=49bdd50f
|
||||
|
||||
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} )
|
||||
qemu_softmmu_targets_arm? ( fdt )
|
||||
qemu_softmmu_targets_microblaze? ( fdt )
|
||||
qemu_softmmu_targets_ppc? ( fdt )
|
||||
qemu_softmmu_targets_ppc64? ( fdt )
|
||||
static? ( static-softmmu static-user )
|
||||
static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl !gtk )
|
||||
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.4.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-2.1.0[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.3
|
||||
~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.3
|
||||
~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 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.7.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)"
|
||||
}
|
@ -1,4 +1 @@
|
||||
DIST gentoo-0.19.13.tar.gz 1541738 SHA256 6afafeacd54a18d97e217ad10df1b555274ac856f050e10888109d405ebdc092 SHA512 51bffcc73a1c81697bed975169286afefc46f02b956da17985a5a4082188ffe155f0943d4cf0718c1097823e4f7d41399efda8309a5ecc6e2c02bd80adee4bac WHIRLPOOL be4d1fa32c814ecbfc2dc149931104c9c9d93b3e9491c4de5630ae737cc5f01f6b389e9a7a435b4423e9fc714aaa526782624b2739d8f80304618f05d1de1936
|
||||
DIST gentoo-0.20.1.tar.gz 1552672 SHA256 3f7a57681a2bade54a0096bdcaad1ff776bca51486fd42cb7518d33e29b3835f SHA512 30a7adf6c8987cb9b158545cc11f8b87691f4b85056d1b2653143055b53232a9a6bc2995b7f0d9c1f2b79350a03d57470c6b0656ab07ed72bcda29a7a86ca507 WHIRLPOOL a531a7b2c2d005be4157c3a7c0756b1dbb09e9a7416752a7156d35ffb03d5bb6a6e282daa5a456d078a6d4b9430945090288c9b4d4d4f06677f89a9df085131e
|
||||
DIST gentoo-0.20.3.tar.gz 1554789 SHA256 0d3f8cb103916ae3e86e5f01379634ab21568a312f77ba3f90cd3ce876170fb0 SHA512 d237a0ecb9d4efd8506518c3fa6b388509dcf890d742d539978f1e724e34efa71e77b2e0e117494832fe2c98052401540abf98311a7d30e2f573f07d5f41c1ba WHIRLPOOL 62daadb711b2506a0c200389a1ddc6ebc6e1e93b7880d1ef00f5c3995a00bb5e9509ccacc02c1ef0e232a2fb293566bedf45688123adb690bcd406eb539ca854
|
||||
DIST gentoo-0.20.4.tar.gz 1559764 SHA256 2993ceb7509c45db10e7f3d515389ede978b24d6cb9932a59588fd7c9923bc80 SHA512 841726987cbbd81a48dac9195ae41557c4af54fba0bad99c1346a52b6cc25129b245b431ea8b42b8e47d30ee783928857fc772acf6228809bdb86b7eb74eda31 WHIRLPOOL aaff175847753c2f712e044278ad6fd2e092e62ca7cdcfc41751adeaf31e8e9873ad469e8e9df2008ff857673ffe6db0d7cce6e4192d2679a392226801f44535
|
||||
|
@ -1,57 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/gentoo/gentoo-0.19.13.ebuild,v 1.8 2013/12/17 16:06:38 jer Exp $
|
||||
|
||||
EAPI=4
|
||||
inherit autotools eutils
|
||||
|
||||
DESCRIPTION="A modern GTK+ based filemanager for any WM"
|
||||
HOMEPAGE="http://www.obsession.se/gentoo/ http://gentoo.sourceforge.net/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 sparc x86"
|
||||
IUSE="nls"
|
||||
|
||||
RDEPEND=">=x11-libs/gtk+-2.24:2
|
||||
>=dev-libs/glib-2
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/pango"
|
||||
DEPEND="${RDEPEND}
|
||||
nls? ( sys-devel/gettext )"
|
||||
|
||||
DOCS=(
|
||||
AUTHORS BUGS CONFIG-CHANGES CREDITS NEWS README TODO docs/{FAQ,menus.txt}
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
sed -i \
|
||||
-e 's^icons/gnome/16x16/mimetypes^gentoo/icons^' \
|
||||
gentoorc.in || die
|
||||
sed -i \
|
||||
-e '/GTK_DISABLE_DEPRECATED/ d' \
|
||||
-e '/^GENTOO_CFLAGS=/s|".*"|"${CFLAGS}"|g' \
|
||||
-e 's|AM_CONFIG_HEADER|AC_CONFIG_HEADERS|g' \
|
||||
configure.in || die #357343
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--sysconfdir=/etc/gentoo \
|
||||
$(use_enable nls)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
dohtml -r docs/{images,config,*.{html,css}}
|
||||
newman docs/gentoo.1x gentoo.1
|
||||
docinto scratch
|
||||
dodoc docs/scratch/*
|
||||
|
||||
make_desktop_entry ${PN} Gentoo \
|
||||
/usr/share/${PN}/icons/${PN}.png \
|
||||
"System;FileTools;FileManager"
|
||||
}
|
@ -1,62 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/gentoo/gentoo-0.20.1.ebuild,v 1.10 2013/12/17 16:06:38 jer Exp $
|
||||
|
||||
EAPI=5
|
||||
inherit autotools eutils
|
||||
|
||||
DESCRIPTION="A modern GTK+ based filemanager for any WM"
|
||||
HOMEPAGE="http://www.obsession.se/gentoo/ http://gentoo.sourceforge.net/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 sparc x86"
|
||||
IUSE="nls"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/glib:2
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
DOCS=(
|
||||
AUTHORS BUGS CONFIG-CHANGES CREDITS NEWS README TODO docs/{FAQ,menus.txt}
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
sed -i \
|
||||
-e 's^icons/gnome/16x16/mimetypes^gentoo/icons^' \
|
||||
gentoorc.in || die
|
||||
sed -i \
|
||||
-e '/GTK_DISABLE_DEPRECATED/ d' \
|
||||
-e '/^GENTOO_CFLAGS=/s|".*"|"${CFLAGS}"|g' \
|
||||
-e 's|AM_CONFIG_HEADER|AC_CONFIG_HEADERS|g' \
|
||||
configure.in || die #357343
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--sysconfdir=/etc/gentoo \
|
||||
$(use_enable nls)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
dohtml -r docs/{images,config,*.{html,css}}
|
||||
newman docs/gentoo.1x gentoo.1
|
||||
docinto scratch
|
||||
dodoc docs/scratch/*
|
||||
|
||||
make_desktop_entry ${PN} Gentoo \
|
||||
/usr/share/${PN}/icons/${PN}.png \
|
||||
"System;FileTools;FileManager"
|
||||
}
|
@ -1,62 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/gentoo/gentoo-0.20.3.ebuild,v 1.6 2013/12/21 16:36:56 ago Exp $
|
||||
|
||||
EAPI=5
|
||||
inherit autotools eutils
|
||||
|
||||
DESCRIPTION="A modern GTK+ based filemanager for any WM"
|
||||
HOMEPAGE="http://www.obsession.se/gentoo/ http://gentoo.sourceforge.net/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 hppa ~ia64 ppc ~ppc64 ~sparc ~x86"
|
||||
IUSE="nls"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/glib:2
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
DOCS=(
|
||||
AUTHORS BUGS CONFIG-CHANGES CREDITS NEWS README TODO docs/{FAQ,menus.txt}
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
sed -i \
|
||||
-e 's^icons/gnome/16x16/mimetypes^gentoo/icons^' \
|
||||
gentoorc.in || die
|
||||
sed -i \
|
||||
-e '/GTK_DISABLE_DEPRECATED/d' \
|
||||
-e '/^GENTOO_CFLAGS=/s|".*"|"${CFLAGS}"|g' \
|
||||
-e 's|AM_CONFIG_HEADER|AC_CONFIG_HEADERS|g' \
|
||||
configure.in || die #357343
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--sysconfdir=/etc/gentoo \
|
||||
$(use_enable nls)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
dohtml -r docs/{images,config,*.{html,css}}
|
||||
newman docs/gentoo.1x gentoo.1
|
||||
docinto scratch
|
||||
dodoc docs/scratch/*
|
||||
|
||||
make_desktop_entry ${PN} Gentoo \
|
||||
/usr/share/${PN}/icons/${PN}.png \
|
||||
"System;FileTools;FileManager"
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/smtm/smtm-1.6.6.ebuild,v 1.7 2012/03/18 15:36:02 armin76 Exp $
|
||||
|
||||
inherit perl-app
|
||||
|
||||
DESCRIPTION="Stock ticker, profit/loss calculator and chart tool"
|
||||
HOMEPAGE="http://eddelbuettel.com/dirk/code/smtm.html"
|
||||
SRC_URI="http://eddelbuettel.com/dirk/code/smtm/smtm_${PV}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="ppc x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=">=dev-lang/perl-5
|
||||
dev-perl/perl-tk
|
||||
dev-perl/DateManip
|
||||
dev-perl/HTML-Parser
|
||||
dev-perl/Finance-YahooQuote
|
||||
dev-perl/libwww-perl"
|
||||
|
||||
mydoc="BUGS THANKS TODO examples/*"
|
@ -0,0 +1,35 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-portage/metagen/metagen-0.6.2-r1.ebuild,v 1.1 2014/01/20 03:46:53 floppym Exp $
|
||||
|
||||
EAPI="5"
|
||||
PYTHON_COMPAT=( python{2_6,2_7} pypy2_0 )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="metadata.xml generator for ebuilds"
|
||||
HOMEPAGE="http://git.overlays.gentoo.org/gitweb/?p=proj/metagen.git;a=summary"
|
||||
SRC_URI="http://dev.gentoo.org/~neurogeek/metagen_releases/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~hppa ~ppc ~x86"
|
||||
|
||||
IUSE=""
|
||||
DEPEND=">=dev-python/jaxml-3.01[${PYTHON_USEDEP}]
|
||||
>=sys-apps/portage-2.1.9.42[${PYTHON_USEDEP}]"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
python_install() {
|
||||
distutils-r1_python_install
|
||||
python_newscript metagen/main.py metagen
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
doman docs/metagen.1
|
||||
}
|
||||
|
||||
python_test() {
|
||||
"${PYTHON}" -c "from metagen import metagenerator; metagenerator.do_tests()" || die
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue