summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/libguestfs/libguestfs-1.8.16.ebuild')
-rw-r--r--app-emulation/libguestfs/libguestfs-1.8.16.ebuild211
1 files changed, 211 insertions, 0 deletions
diff --git a/app-emulation/libguestfs/libguestfs-1.8.16.ebuild b/app-emulation/libguestfs/libguestfs-1.8.16.ebuild
new file mode 100644
index 000000000000..2e3d3e99d890
--- /dev/null
+++ b/app-emulation/libguestfs/libguestfs-1.8.16.ebuild
@@ -0,0 +1,211 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/libguestfs/libguestfs-1.8.16.ebuild,v 1.1 2012/01/05 11:23:23 maksbotan Exp $
+
+EAPI="3"
+
+WANT_AUTOMAKE="1.11"
+
+JAVA_PKG_OPT_USE="java"
+JAVA_PKG_ALLOW_VM_CHANGE="yes"
+APLANCE_PV="1.7.18"
+PYTHON_DEPEND="python? 2:2.6"
+USE_RUBY="ruby18"
+RUBY_OPTIONAL="yes"
+PHP_EXT_NAME="guestfs_php"
+USE_PHP="php5-3 php5-4"
+PHP_EXT_OPTIONAL_USE="php"
+
+inherit autotools bash-completion-r1 confutils versionator java-pkg-opt-2 perl-module python ruby-ng php-ext-source-r2 ghc-package
+
+MY_PV_1="$(get_version_component_range 1-2)"
+MY_PV_2="$(get_version_component_range 2)"
+
+[[ $(( $(get_version_component_range 2) % 2 )) -eq 0 ]] && SD="stable" || SD="development"
+
+DESCRIPTION="Library for accessing and modifying virtual machine (VM) disk images"
+HOMEPAGE="http://libguestfs.org/"
+SRC_URI="http://libguestfs.org/download/${MY_PV_1}-${SD}/${P}.tar.gz
+ http://rion-overlay.googlecode.com/files/${PN}-${APLANCE_PV}-x86_64.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+# Upstream NOT supported 32-bit version, keyword in own risk
+KEYWORDS="~amd64"
+IUSE="fuse +ocaml perl python ruby haskell +readline nls php debug doc nls source javadoc"
+
+COMMON_DEPEND="
+ virtual/perl-Getopt-Long
+ >=dev-perl/Sys-Virt-0.2.4
+ >=app-misc/hivex-1.2.1[perl]
+ dev-perl/libintl-perl
+ dev-perl/String-ShellQuote
+ dev-libs/libpcre
+ app-arch/cpio
+ dev-lang/perl
+ app-cdr/cdrkit
+ >=app-emulation/qemu-kvm-0.13[qemu_user_targets_x86_64,qemu_softmmu_targets_x86_64]
+ sys-apps/fakeroot
+ sys-apps/file
+ app-emulation/libvirt
+ dev-libs/libxml2:2
+ >=sys-apps/fakechroot-2.8
+ >=app-admin/augeas-0.7.1
+ sys-fs/squashfs-tools
+ perl? ( virtual/perl-ExtUtils-MakeMaker )
+ fuse? ( sys-fs/fuse )
+ readline? ( sys-libs/readline )
+ doc? ( dev-libs/libxml2 )
+ ocaml? ( dev-lang/ocaml
+ dev-ml/findlib
+ dev-ml/xml-light )
+ ruby? ( dev-lang/ruby
+ dev-ruby/rake )
+ java? ( virtual/jre )
+ haskell? ( dev-lang/ghc )"
+
+DEPEND="${COMMON_DEPEND}
+ java? ( >=virtual/jdk-1.6
+ source? ( app-arch/zip ) )
+ doc? ( app-text/po4a )"
+RDEPEND="${COMMON_DEPEND}
+ java? ( >=virtual/jre-1.6 )"
+
+PHP_EXT_S="${S}/php/extension"
+
+pkg_setup() {
+ use java && java-pkg-opt-2_pkg_setup
+
+ if use python; then
+ python_set_active_version 2
+ python_pkg_setup
+ python_need_rebuild
+ fi
+
+ confutils_use_depend_all source java
+ confutils_use_depend_all javadoc java
+
+ use ruby && ruby-ng_pkg_setup
+ use haskell && ghc-package_pkg_setup
+}
+
+src_unpack() {
+ unpack ${P}.tar.gz
+
+ cd "${WORKDIR}"
+ mkdir image || die
+ cd image || die
+ unpack libguestfs-${APLANCE_PV}-x86_64.tar.gz
+ cp "${WORKDIR}"/image/usr/local/lib/guestfs/* "${S}"/appliance/ || die
+
+ # part of php-ext-source-r2_src_unpack
+ # whole version cannot be called here as it will attempt to unpack ${A}
+ if use php; then
+ local slot orig_s="${PHP_EXT_S}"
+ for slot in $(php_get_slots); do
+ cp -r "${orig_s}" "${WORKDIR}/${slot}" || die
+ done
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/1.8/${PV}"/000*.patch
+
+ use java && java-pkg-opt-2_src_prepare
+ eautoreconf
+
+ if use php; then
+ php-ext-source-r2_src_prepare
+ fi
+}
+
+src_configure() {
+
+ # Disable feature test for kvm for more reason
+ # i.e: not loaded module in __build__ time,
+ # build server not supported kvm, etc. ...
+ #
+ # In fact, this feature is virtio support and requires
+ # configured kernel.
+ export vmchannel_test=no
+
+ econf \
+ --with-repo=fedora-12 \
+ --disable-appliance \
+ --disable-daemon \
+ --with-drive-if=virtio \
+ --with-net-if=virtio-net-pci \
+ --disable-rpath \
+ $(use_enable java) \
+ $(use_enable nls) \
+ $(use_with readline) \
+ $(use_enable ocaml ocaml-viewer) \
+ $(use_enable perl) \
+ $(use_enable fuse) \
+ $(use_enable ocaml) \
+ $(use_enable python) \
+ $(use_enable ruby) \
+ $(use_enable haskell) \
+ $(use_with doc po4a)
+
+ if use php; then
+ php-ext-source-r2_src_configure
+ fi
+}
+
+src_compile() {
+ emake || die
+
+ if use php; then
+ php-ext-source-r2_src_compile
+ fi
+}
+
+src_test() {
+ emake -j1 check || die
+}
+
+src_install() {
+ emake -j1 DESTDIR="${D}" install || die
+
+ dodoc BUGS HACKING README RELEASE-NOTES TODO
+
+ dobashcomp "${D}/etc"/bash_completion.d/guestfish-bash-completion.sh
+
+ rm -fr "${D}/etc"/bash* || die
+
+ insinto /usr/$(get_libdir)/guestfs/
+ doins "${WORKDIR}/image/usr/local/lib/"guestfs/*
+
+ find "${D}" -name '*.la' -exec rm -f '{}' +
+ if use java; then
+ java-pkg_newjar java/${P}.jar ${PN},jar
+ rm -fr "${D}/usr"/share/java
+ rm -fr "${D}/usr"/share/javadoc
+ if use source;then
+ java-pkg_dosrc java/com/redhat/et/libguestfs/*
+ fi
+ if use javadoc;then
+ java-pkg_dojavadoc java/api
+ fi
+ fi
+
+ use perl && fixlocalpod
+ python_clean_installation_image -q
+
+ if use php; then
+ php-ext-source-r2_src_install
+ fi
+}
+
+pkg_preinst() {
+ use java && java-pkg-opt-2_pkg_preinst
+}
+
+pkg_postinst() {
+ use haskell && ghc-package_pkg_postinst
+}
+
+pkg_prerm() {
+ use haskell && ghc-package_pkg_prerm
+}