Skip to content

Instantly share code, notes, and snippets.

@i8degrees
Created October 26, 2013 08:55
Show Gist options
  • Select an option

  • Save i8degrees/7167015 to your computer and use it in GitHub Desktop.

Select an option

Save i8degrees/7167015 to your computer and use it in GitHub Desktop.
Fix OS X v10.9 compiling of mplayer homebrew package
require 'formula'
class Mplayer < Formula
homepage 'http://www.mplayerhq.hu/'
url 'http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.1.tar.xz'
sha1 '913a4bbeab7cbb515c2f43ad39bc83071b2efd75'
head 'svn://svn.mplayerhq.hu/mplayer/trunk', :using => StrictSubversionDownloadStrategy
option 'with-x', 'Build with X11 support'
option 'without-osd', 'Build without OSD'
depends_on 'yasm' => :build
depends_on 'xz' => :build
depends_on 'libcaca' => :optional
depends_on :x11 if build.include? 'with-x'
unless build.include? 'without-osd' or build.include? 'with-x'
# These are required for the OSD. We can get them from X11, or we can
# build our own.
depends_on :fontconfig
depends_on :freetype
end
fails_with :clang do
build 211
cause 'Inline asm errors during compile on 32bit Snow Leopard.'
end unless MacOS.prefer_64_bit?
def patches
# When building SVN, configure prompts the user to pull FFmpeg from git.
# Don't do that.
DATA if build.head?
end
def install
# (A) Do not use pipes, per bug report and MacPorts
# * https://github.com/mxcl/homebrew/issues/622
# * http://trac.macports.org/browser/trunk/dports/multimedia/mplayer-devel/Portfile
# (B) Any kind of optimisation breaks the build
# (C) It turns out that ENV.O1 fixes link errors with llvm.
ENV['CFLAGS'] = ''
ENV['CXXFLAGS'] = ''
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" unless build.include? 'without-osd'
args << "--disable-x11" unless build.include? 'with-x'
args << "--enable-caca" if build.with? 'libcaca'
system "./configure", *args
system "make"
system "make install"
end
def test
system "#{bin}/mplayer", "-ao", "null", "/System/Library/Sounds/Glass.aiff"
end
end
__END__
diff --git a/configure b/configure
index a1fba5f..5deaa80 100755
--- a/configure
+++ b/configure
@@ -49,8 +49,6 @@ if test -e ffmpeg/mp_auto_pull ; then
fi
if ! 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 --depth 1 git://source.ffmpeg.org/ffmpeg.git ffmpeg ; then
rm -rf ffmpeg
echo "Failed to get a FFmpeg checkout"
diff --git i/libvo/osx_common.h w/libvo/osx_common.h
index 21bb3d8..d568e3f 100644
--- i/libvo/osx_common.h
+++ w/libvo/osx_common.h
@@ -19,6 +19,8 @@
#ifndef MPLAYER_OSX_COMMON_H
#define MPLAYER_OSX_COMMON_H
+#include "gl.h"
+
int convert_key(unsigned key, unsigned charcode);
void change_movie_aspect(float new_aspect);
void config_movie_aspect(float config_aspect);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment