| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
 | require 'formula'
class Mplayer < Formula
  homepage 'http://www.mplayerhq.hu/'
  stable do
    url "http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.1.1.tar.xz"
    sha1 "ba2f3bd1442d04b17b0143680850273d928689c1"
    # Fix compilation on 10.9, adapted from upstream revision r36500
    patch do
      url "https://gist.githubusercontent.com/jacknagel/7441175/raw/37657c264a6a3bb4d30dee14538c367f7ffccba9/vo_corevideo.h.patch"
      sha1 "92717335aed9ec5d01fcf62f9787c6d50cf5d911"
    end
  end
  bottle do
    revision 1
    sha1 "2c9bfd124fdd729bc8addd2ddfd45ed718c80e20" => :mavericks
    sha1 "ba213d5c1aadad6869cbb57f17f56971af8acffd" => :mountain_lion
    sha1 "7efc5960bc15c904a2893f23190d783b3d57d27a" => :lion
  end
  head do
    url "svn://svn.mplayerhq.hu/mplayer/trunk"
    depends_on "subversion" => :build if MacOS.version <= :leopard
    # When building SVN, configure prompts the user to pull FFmpeg from git.
    # Don't do that.
    patch :DATA
  end
  option 'without-osd', 'Build without OSD'
  depends_on 'yasm' => :build
  depends_on 'libcaca' => :optional
  depends_on :x11 => :optional
  deprecated_option "with-x" => "with-x11"
  if build.with? 'osd' or build.with? 'x11'
    # These are required for the OSD. We can get them from X11, or we can
    # build our own.
    depends_on "fontconfig"
    depends_on "freetype"
    depends_on "libpng"
  end
  fails_with :clang do
    build 211
    cause 'Inline asm errors during compile on 32bit Snow Leopard.'
  end unless MacOS.prefer_64_bit?
  # ld fails with: Unknown instruction for architecture x86_64
  fails_with :llvm
  def install
    # It turns out that ENV.O1 fixes link errors with llvm.
    ENV.O1 if ENV.compiler == :llvm
    # we disable cdparanoia because homebrew's version is hacked to work on OS X
    # and mplayer doesn't expect the hacks we apply. So it chokes.
    # Specify our compiler to stop ffmpeg from defaulting to gcc.
    # Disable openjpeg because it defines int main(), which hides mplayer's main().
    # This issue was reported upstream against openjpeg 1.5.0:
    # http://code.google.com/p/openjpeg/issues/detail?id=152
    args = %W[
      --prefix=#{prefix}
      --cc=#{ENV.cc}
      --host-cc=#{ENV.cc}
      --disable-cdparanoia
      --disable-libopenjpeg
    ]
    args << "--enable-menu" if build.with? 'osd'
    args << "--disable-x11" if build.without? 'x11'
    args << "--enable-freetype" if build.with?('osd') || build.with?('x11')
    args << "--enable-caca" if build.with? 'libcaca'
    system "./configure", *args
    system "make"
    system "make install"
  end
  test do
    system "#{bin}/mplayer", "-ao", "null", "/System/Library/Sounds/Glass.aiff"
  end
end
__END__
--- a/configure
+++ b/configure
@@ -1532,8 +1532,6 @@
 fi
 
 if test "$ffmpeg_a" != "no" && ! test -e ffmpeg ; then
-    echo "No FFmpeg checkout, press enter to download one with git or CTRL+C to abort"
-    read tmp
     if ! git clone -b $FFBRANCH --depth 1 git://source.ffmpeg.org/ffmpeg.git ffmpeg ; then
         rm -rf ffmpeg
         echo "Failed to get a FFmpeg checkout"
 |