homebrew-core/Formula/libvirt.rb

78 lines
2.3 KiB
Ruby

class Libvirt < Formula
desc "C virtualization API"
homepage "https://www.libvirt.org"
url "https://libvirt.org/sources/libvirt-4.4.0.tar.xz"
sha256 "46631d63cb61af8042593a93fa046dddfff204d29858f20df77a125bd6f84ab6"
head "https://github.com/libvirt/libvirt.git"
bottle do
sha256 "a1cfd61da6720b45f5e1a9ed9c4613783ba3392d586cd16bad3082b672472fd5" => :high_sierra
sha256 "03b2b253d6f5c841421f23a2eb6d9bc9634dcbe2da7142e63cd27caba40f79c8" => :sierra
sha256 "f52195542da09385175ec889c0e7698b745d900b16e44d3a8414a9cdabaeb9a2" => :el_capitan
end
option "without-libvirtd", "Build only the virsh client and development libraries"
depends_on "pkg-config" => :build
depends_on "gnutls"
depends_on "libgcrypt"
depends_on "yajl"
if build.head?
depends_on "autoconf" => :build
depends_on "automake" => :build
depends_on "gettext" => :build
depends_on "libtool" => :build
depends_on "rpcgen" => :build
end
def install
args = %W[
--prefix=#{prefix}
--localstatedir=#{var}
--mandir=#{man}
--sysconfdir=#{etc}
--with-esx
--with-init-script=none
--with-remote
--with-test
--with-vbox
--with-vmware
--with-yajl
--without-qemu
]
args << "ac_cv_path_RPCGEN=#{Formula["rpcgen"].opt_prefix}/bin/rpcgen" if build.head?
args << "--without-libvirtd" if build.without? "libvirtd"
system "./autogen.sh" if build.head?
system "./configure", *args
# Compilation of docs doesn't get done if we jump straight to "make install"
system "make"
system "make", "install"
# Update the SASL config file with the Homebrew prefix
inreplace "#{etc}/sasl2/libvirt.conf", "/etc/", "#{HOMEBREW_PREFIX}/etc/"
# If the libvirt daemon is built, update its config file to reflect
# the Homebrew prefix
if build.with? "libvirtd"
inreplace "#{etc}/libvirt/libvirtd.conf" do |s|
s.gsub! "/etc/", "#{HOMEBREW_PREFIX}/etc/"
s.gsub! "/var/", "#{HOMEBREW_PREFIX}/var/"
end
end
end
test do
if build.head?
output = shell_output("#{bin}/virsh -V")
assert_match "Compiled with support for:", output
else
output = shell_output("#{bin}/virsh -v")
assert_match version.to_s, output
end
end
end