diff options
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Formula/spidermonkey.rb | 54 |
1 files changed, 40 insertions, 14 deletions
diff --git a/Library/Formula/spidermonkey.rb b/Library/Formula/spidermonkey.rb index 6f42d1dc3..a2f0e8a28 100644 --- a/Library/Formula/spidermonkey.rb +++ b/Library/Formula/spidermonkey.rb @@ -1,12 +1,13 @@ require 'formula' class Spidermonkey <Formula - # Use a 3rd party tarball, since Mozilla hasn't made a stable one since version 1.7 - # Use 1.9.3 for proper x64 support on OS X. - url 'http://packaging-spidermonkey.googlecode.com/files/libmozjs-1.9.3-1.5.tar.bz2' + # There are no proper releases of spidermonkey, so pick a version that's known + # to work (especially with CouchDB). + # revision: r35345 + url 'http://hg.mozilla.org/tracemonkey/archive/57a6ad20eae9.tar.gz' homepage 'https://developer.mozilla.org/en/SpiderMonkey' - sha1 '6ab671497497da12f0a17790b19a1d2d487d3c63' - version '1.9.3' + md5 '2d8cf22da82b30c36f47675a8486a3f3' + version '1.8.5' depends_on 'readline' depends_on 'nspr' @@ -19,18 +20,36 @@ class Spidermonkey <Formula ENV['CFLAGS'] = ENV['CFLAGS'].gsub(/-msse[^\s]+/, '') end - # Remove the broken *(for anyone but FF) install_name - inreplace "config/rules.mk", "-install_name @executable_path/$(SHARED_LIBRARY) ", "" + # For some reason SpiderMonkey requires Autoconf-2.13 + ac213_prefix = Pathname.pwd.join('ac213') + Autoconf213.new.brew do |f| + # probably no longer required, see issue #751 + inreplace 'configure', 'for ac_prog in mawk gawk nawk awk', 'for ac_prog in awk' + + system "./configure", "--disable-debug", + "--program-suffix=213", + "--prefix=#{ac213_prefix}" + system "make install" + end + + Dir.chdir "js/src" do + # Fixes a bug with linking against CoreFoundation. Tests all pass after + # building like this. See: http://openradar.appspot.com/7209349 + inreplace "configure.in", "LDFLAGS=\"$LDFLAGS -framework Cocoa\"", "" + system "#{ac213_prefix}/bin/autoconf213" + # Remove the broken *(for anyone but FF) install_name + inreplace "config/rules.mk", "-install_name @executable_path/$(SHARED_LIBRARY) ", "" + end + + FileUtils.mkdir "brew-build" - mkdir "brew-build" Dir.chdir "brew-build" do - system "../configure", "--prefix=#{prefix}", - "--enable-readline", - "--enable-threadsafe", - "--with-system-nspr", - "--enable-macos-target=#{MACOS_VERSION}" - inreplace "js-config", /JS_CONFIG_LIBS=.*?$/, "JS_CONFIG_LIBS=''" + system "../js/src/configure", "--prefix=#{prefix}", + "--enable-readline", + "--enable-threadsafe", + "--with-system-nspr" + inreplace "js-config", /JS_CONFIG_LIBS=.*?$/, "JS_CONFIG_LIBS=''" # Can't do `make install` right off the bat sadly system "make" system "make install" @@ -40,3 +59,10 @@ class Spidermonkey <Formula end end end + + +class Autoconf213 <Formula + url 'http://ftp.gnu.org/pub/gnu/autoconf/autoconf-2.13.tar.gz' + md5 '9de56d4a161a723228220b0f425dc711' + homepage 'http://www.gnu.org/software/autoconf/' +end |
