homebrew-core/Formula/mpv.rb
2016-08-26 16:44:14 -07:00

90 lines
3 KiB
Ruby

class Mpv < Formula
desc "Free, open source, and cross-platform media player"
homepage "https://mpv.io"
url "https://github.com/mpv-player/mpv/archive/v0.20.0.tar.gz"
sha256 "fe6ec9d2ded5ce84b963f54b812d579d04f944f4a737f3ae639c4d5d9e842b56"
head "https://github.com/mpv-player/mpv.git"
bottle do
sha256 "4977b9931bad60e5d5053f1af0ecb8f68ba3118a3626e126086ba24d95d3b7b9" => :el_capitan
sha256 "b6fb5e178d3fbf73c0e3c516af182410531aeaee258c3791163d51290591ac1e" => :yosemite
sha256 "3f8935058046a493be054db4cd506b33f16bc1f9cbfb73b2bb3e2fae4220ea6a" => :mavericks
end
option "with-bundle", "Enable compilation of the .app bundle."
depends_on "pkg-config" => :build
depends_on :python3
depends_on "libass"
depends_on "ffmpeg"
depends_on "jpeg" => :recommended
depends_on "little-cms2" => :recommended
depends_on "lua" => :recommended
depends_on "youtube-dl" => :recommended
depends_on "libarchive" => :optional
depends_on "libcaca" => :optional
depends_on "libdvdread" => :optional
depends_on "libdvdnav" => :optional
depends_on "libbluray" => :optional
depends_on "libaacs" => :optional
depends_on "vapoursynth" => :optional
depends_on "uchardet" => :optional
depends_on :x11 => :optional
depends_on :macos => :mountain_lion
resource "waf" do
url "https://waf.io/waf-1.9.2"
sha256 "7abb4fbe61d12b8ef6a3163653536da7ee31709299d8f17400d71a43247cea81"
end
resource "docutils" do
url "https://files.pythonhosted.org/packages/37/38/ceda70135b9144d84884ae2fc5886c6baac4edea39550f28bcd144c1234d/docutils-0.12.tar.gz"
sha256 "c7db717810ab6965f66c8cf0398a98c9d8df982da39b4cd7f162911eb89596fa"
end
def install
# LANG is unset by default on osx and causes issues when calling getlocale
# or getdefaultlocale in docutils. Force the default c/posix locale since
# that's good enough for building the manpage.
ENV["LC_ALL"] = "C"
version = Language::Python.major_minor_version("python3")
ENV.prepend_create_path "PKG_CONFIG_PATH", Pathname.new(`python3-config --prefix`.chomp)/"lib/pkgconfig"
ENV.prepend_create_path "PYTHONPATH", libexec/"lib/python#{version}/site-packages"
ENV.prepend_create_path "PATH", libexec/"bin"
resource("docutils").stage do
system "python3", *Language::Python.setup_install_args(libexec)
end
bin.env_script_all_files(libexec/"bin", :PYTHONPATH => ENV["PYTHONPATH"])
args = %W[
--prefix=#{prefix}
--enable-zsh-comp
--enable-libmpv-shared
--confdir=#{etc}/mpv
--datadir=#{pkgshare}
--mandir=#{man}
--docdir=#{doc}
--zshdir=#{zsh_completion}
]
args << "--enable-libarchive" if build.with? "libarchive"
waf = resource("waf")
buildpath.install waf.files("waf-#{waf.version}" => "waf")
system "python3", "waf", "configure", *args
system "python3", "waf", "install"
if build.with? "bundle"
system "python3", "TOOLS/osxbundle.py", "build/mpv"
prefix.install "build/mpv.app"
end
end
test do
system bin/"mpv", "--ao=null", test_fixtures("test.wav")
end
end