105 lines
3.2 KiB
Ruby
105 lines
3.2 KiB
Ruby
class GstPluginsGood < Formula
|
|
desc "GStreamer plugins (well-supported, under the LGPL)"
|
|
homepage "https://gstreamer.freedesktop.org/"
|
|
revision 2
|
|
|
|
stable do
|
|
url "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.14.0.tar.xz"
|
|
sha256 "6afa35747d528d3ab4ed8f5eac13f7235d7d28100d6a24dd78f81ec7c0d04688"
|
|
|
|
if MacOS.version == :high_sierra
|
|
# Fix for illegal instruction error in osxvideosink https://bugzilla.gnome.org/show_bug.cgi?id=786047
|
|
patch do
|
|
url "https://bug786047.bugzilla-attachments.gnome.org/attachment.cgi?id=357262"
|
|
sha256 "1268a98ae3463ee61e5be3ea186701e75fb84fc9a0c9d280c2fc07faa2732201"
|
|
end
|
|
end
|
|
depends_on "check" => :optional
|
|
end
|
|
|
|
bottle do
|
|
sha256 "999b68468918483a764a23bb92d4069bb017751276100ec7f6886844d2388334" => :high_sierra
|
|
sha256 "b44a2a8ebec5d6a1957b05e76f8f287bca69ec4cebe3f7a701a6ad3646fe6857" => :sierra
|
|
sha256 "19874be2a3749c2b4f4f9c6c31c3b04062117894644a6f333c31e96111e2705a" => :el_capitan
|
|
end
|
|
|
|
head do
|
|
url "https://anongit.freedesktop.org/git/gstreamer/gst-plugins-good.git"
|
|
|
|
depends_on "autoconf" => :build
|
|
depends_on "automake" => :build
|
|
depends_on "libtool" => :build
|
|
depends_on "check"
|
|
end
|
|
|
|
depends_on "pkg-config" => :build
|
|
depends_on "gettext"
|
|
depends_on "gst-plugins-base"
|
|
depends_on "libsoup"
|
|
|
|
depends_on :x11 => :optional
|
|
|
|
# Dependencies based on the intersection of
|
|
# https://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/REQUIREMENTS
|
|
# and Homebrew formulae.
|
|
depends_on "jpeg" => :recommended
|
|
depends_on "orc" => :recommended
|
|
depends_on "gdk-pixbuf" => :optional
|
|
depends_on "aalib" => :optional
|
|
depends_on "cairo" => :optional
|
|
depends_on "flac" => [:optional, "with-libogg"]
|
|
depends_on "gtk+3" => :optional
|
|
depends_on "libcaca" => :optional
|
|
depends_on "libdv" => :optional
|
|
depends_on "libpng" => :optional
|
|
depends_on "libshout" => :optional
|
|
depends_on "speex" => :optional
|
|
depends_on "taglib" => :optional
|
|
|
|
depends_on "libvpx" => :optional
|
|
depends_on "pulseaudio" => :optional
|
|
depends_on "jack" => :optional
|
|
|
|
depends_on "libogg" if build.with? "flac"
|
|
|
|
def install
|
|
args = %W[
|
|
--prefix=#{prefix}
|
|
--disable-gtk-doc
|
|
--disable-goom
|
|
--with-default-videosink=ximagesink
|
|
--disable-debug
|
|
--disable-dependency-tracking
|
|
--disable-silent-rules
|
|
]
|
|
|
|
args << "--with-gtk=3.0" if build.with? "gtk+3"
|
|
|
|
if build.with? "x11"
|
|
args << "--with-x"
|
|
else
|
|
args << "--disable-x"
|
|
end
|
|
|
|
# This plugin causes hangs on Snow Leopard (and possibly other versions?)
|
|
# Upstream says it hasn't "been actively tested in a long time";
|
|
# successor is glimagesink (in gst-plugins-bad).
|
|
# https://bugzilla.gnome.org/show_bug.cgi?id=756918
|
|
args << "--disable-osx_video" if MacOS.version == :snow_leopard
|
|
|
|
if build.head?
|
|
ENV["NOCONFIGURE"] = "yes"
|
|
system "./autogen.sh"
|
|
end
|
|
|
|
system "./configure", *args
|
|
system "make"
|
|
system "make", "install"
|
|
end
|
|
|
|
test do
|
|
gst = Formula["gstreamer"].opt_bin/"gst-inspect-1.0"
|
|
output = shell_output("#{gst} --plugin cairo")
|
|
assert_match version.to_s, output
|
|
end
|
|
end
|