diff options
| author | Misty De Meo | 2011-12-12 09:10:52 -0600 |
|---|---|---|
| committer | Misty De Meo | 2011-12-12 09:10:52 -0600 |
| commit | d29184867bfd829b0ce84d7b533caf545c6e3f6e (patch) | |
| tree | 3e49bed3dafdfb7369545b905328e048c469a911 | |
| parent | 101a1679256f002b9deef5bfe1278e80e8484d7a (diff) | |
| parent | fbd51c114613c8b8b65039c37545dd9bf008f06c (diff) | |
| download | homebrew-d29184867bfd829b0ce84d7b533caf545c6e3f6e.tar.bz2 | |
Merge branch 'master' of git://github.com/mxcl/homebrew
41 files changed, 453 insertions, 150 deletions
diff --git a/Library/Contributions/brew_bash_completion.sh b/Library/Contributions/brew_bash_completion.sh index 028920471..355d6443f 100644 --- a/Library/Contributions/brew_bash_completion.sh +++ b/Library/Contributions/brew_bash_completion.sh @@ -63,11 +63,6 @@ _brew_to_completion() # handle subcommand options if [[ "$cur" == --* ]]; then case "${COMP_WORDS[1]}" in - audit) - local opts=$([[ "${COMP_WORDS[*]}" =~ "--strict" ]] || echo "--strict") - COMPREPLY=( $(compgen -W "$opts" -- ${cur}) ) - return - ;; cleanup) local opts=$([[ "${COMP_WORDS[*]}" =~ "--force" ]] || echo "--force") COMPREPLY=( $(compgen -W "$opts" -- ${cur}) ) @@ -205,9 +200,16 @@ _brew_to_completion() esac fi - case "$prev" in + # find the index of the *first* non-switch word + # we can use this to allow completion for multiple formula arguments + local cmd_index=1 + while [[ ${COMP_WORDS[cmd_index]} == -* ]]; do + cmd_index=$((++cmd_index)) + done + + case "${COMP_WORDS[cmd_index]}" in # Commands that take a formula - cat|deps|edit|fetch|home|homepage|info|install|log|missing|options|uses|versions) + audit|cat|deps|edit|fetch|home|homepage|info|install|log|missing|options|uses|versions) local ff=$(\ls $(brew --repository)/Library/Formula 2> /dev/null | sed "s/\.rb//g") local af=$(\ls $(brew --repository)/Library/Aliases 2> /dev/null | sed "s/\.rb//g") COMPREPLY=( $(compgen -W "${ff} ${af}" -- ${cur}) ) diff --git a/Library/Formula/audiofile.rb b/Library/Formula/audiofile.rb index 7383fa4fa..8c973e1f0 100644 --- a/Library/Formula/audiofile.rb +++ b/Library/Formula/audiofile.rb @@ -1,8 +1,8 @@ require 'formula' class Audiofile < Formula - url 'https://github.com/downloads/mpruett/audiofile/audiofile-0.3.1.tar.gz' - sha1 '39de137a691a7c12ea5dc468566eb7a146880ac3' + url 'https://github.com/downloads/mpruett/audiofile/audiofile-0.3.2.tar.gz' + sha1 'fb55a3c9153475daa8932d3626797e033d149c1d' homepage 'http://www.68k.org/~michael/audiofile/' depends_on 'lcov' if ARGV.include? '--with-lcov' diff --git a/Library/Formula/cfitsio.rb b/Library/Formula/cfitsio.rb index dcb9728ea..dd8cac5f8 100644 --- a/Library/Formula/cfitsio.rb +++ b/Library/Formula/cfitsio.rb @@ -7,10 +7,10 @@ class CfitsioExamples < Formula end class Cfitsio < Formula - url 'ftp://heasarc.gsfc.nasa.gov/software/fitsio/c/cfitsio3280.tar.gz' + url 'ftp://heasarc.gsfc.nasa.gov/software/fitsio/c/cfitsio3290.tar.gz' homepage 'http://heasarc.gsfc.nasa.gov/docs/software/fitsio/fitsio.html' - md5 'fdb9c0f51678b47e78592c70fb5dc793' - version '3.28' + md5 'd0d460c5e314a15fa6905b2096159827' + version '3.29' def options [ @@ -34,7 +34,7 @@ class Cfitsio < Formula Dir.glob('*.c').each do |f| # compressed_fits.c does not work (obsolete function call) if f != 'compress_fits.c' - system "#{ENV.compiler} #{f} -I#{include} -L#{lib} -lcfitsio -lm -o bin/#{f.sub('.c','')}" + system "#{ENV.cc} #{f} -I#{include} -L#{lib} -lcfitsio -lm -o bin/#{f.sub('.c','')}" end end bin.install Dir['bin/*'] diff --git a/Library/Formula/connect.rb b/Library/Formula/connect.rb index 5d6ab4096..1c8dcb7f0 100644 --- a/Library/Formula/connect.rb +++ b/Library/Formula/connect.rb @@ -7,7 +7,7 @@ class Connect < Formula md5 '5165e2fcd2cf58899f34878fe6b447c6' def install - system "gcc", "connect.c", "-o", "connect", "-lresolv" + system "#{ENV.cc}", "connect.c", "-o", "connect", "-lresolv" bin.install "connect" end end diff --git a/Library/Formula/coreutils.rb b/Library/Formula/coreutils.rb index a7f87749a..c3b1a2e36 100644 --- a/Library/Formula/coreutils.rb +++ b/Library/Formula/coreutils.rb @@ -27,9 +27,9 @@ end class Coreutils < Formula homepage 'http://www.gnu.org/software/coreutils' - url 'http://ftpmirror.gnu.org/coreutils/coreutils-8.12.tar.gz' - mirror 'http://ftp.gnu.org/gnu/coreutils/coreutils-8.12.tar.gz' - sha256 '9e233a62c98a3378a7b0483d2ae3d662dbaf6cd3917d3830d3514665e12a85c8' + url 'http://ftpmirror.gnu.org/coreutils/coreutils-8.14.tar.xz' + mirror 'http://ftp.gnu.org/gnu/coreutils/coreutils-8.14.tar.xz' + sha256 '0d120817c19292edb19e92ae6b8eac9020e03d51e0af9cb116cf82b65d18b02d' def options [['--default-names', "Do NOT prepend 'g' to the binary; will override system utils."]] diff --git a/Library/Formula/cups-pdf.rb b/Library/Formula/cups-pdf.rb index bf4f5eb58..7f118e1df 100644 --- a/Library/Formula/cups-pdf.rb +++ b/Library/Formula/cups-pdf.rb @@ -9,7 +9,7 @@ class CupsPdf < Formula def patches; DATA; end def install - system "gcc -O9 -o cups-pdf src/cups-pdf.c" + system "#{ENV.cc} #{ENV.cflags} -o cups-pdf src/cups-pdf.c" (etc+'cups').install "extra/cups-pdf.conf" (lib+'cups/backend').install "cups-pdf" diff --git a/Library/Formula/cvs2svn.rb b/Library/Formula/cvs2svn.rb index 9e4b06f54..e698828bb 100644 --- a/Library/Formula/cvs2svn.rb +++ b/Library/Formula/cvs2svn.rb @@ -17,7 +17,7 @@ class Cvs2svn < Formula system "python", "setup.py", "install", "--prefix=#{prefix}" system "make man" man1.install gzip('cvs2svn.1', 'cvs2git.1', 'cvs2bzr.1') - prefix.install %w[ BUGS CHANGES COMMITTERS HACKING + prefix.install %w[ BUGS COMMITTERS HACKING cvs2bzr-example.options cvs2git-example.options cvs2hg-example.options cvs2svn-example.options contrib ] diff --git a/Library/Formula/field3d.rb b/Library/Formula/field3d.rb new file mode 100644 index 000000000..1e9891fbe --- /dev/null +++ b/Library/Formula/field3d.rb @@ -0,0 +1,56 @@ +require 'formula' + +class Field3d < Formula + url 'https://github.com/imageworks/Field3D/tarball/v1.2.0' + homepage 'https://sites.google.com/site/field3d/' + sha1 '1bbd1c7cadca96d5f0d58f3f2a27241d481e205f' + + depends_on 'cmake' => :build + depends_on 'scons' => :build + depends_on 'doxygen' => :build + depends_on 'boost' + depends_on 'ilmbase' + depends_on 'hdf5' + + def install + # Set the compilers for Homebrew - was fixed to gcc & g++ + inreplace 'SConstruct', 'env = Environment()', + <<-EOS.undent + env = Environment()\n + env.Replace(CC = "#{ENV.cc}") + env.Replace(CXX = "#{ENV.cxx}") + EOS + + inreplace 'BuildSupport.py' do |s| + s.gsub! '/opt/local/include', "#{HOMEBREW_PREFIX}/include" + s.gsub! '/opt/local/lib', "#{HOMEBREW_PREFIX}/lib" + # Merge Homebrew's CFLAGS into the build's CCFLAGS passed to CC and CXX + s.gsub! 'env.Append(CCFLAGS = ["-Wall"])', "env.MergeFlags(['#{ENV.cflags}'])" + end + + # Build the software with scons. + if MacOS.prefer_64_bit? + system "scons do64=1" + else + system "scons" + end + + # Build the docs with cmake + mkdir 'macbuild' + Dir.chdir 'macbuild' do + system "cmake .." + system "make doc" + end + + # Install the libraries and docs. + b = if MacOS.prefer_64_bit? + 'install/darwin/m64/release/' + else + 'install/darwin/m32/release/' + end + + lib.install Dir[b+'lib/*'] + include.install Dir[b+'include/*'] + doc.install Dir['docs/html/*'] + end +end diff --git a/Library/Formula/gforth.rb b/Library/Formula/gforth.rb index 19381a7dc..b3937d438 100644 --- a/Library/Formula/gforth.rb +++ b/Library/Formula/gforth.rb @@ -9,7 +9,7 @@ class Gforth < Formula ENV.j1 # Parallel builds won't work # Install 32-bit only, even on Snow Leopard. See: # http://www.groupsrv.com/computers/about648918.html - ENV['CC'] = "gcc -m32" + ENV['CC'] = "#{ENV.cc} -m32" system "./configure", "--disable-debug", "--disable-dependency-tracking", "--prefix=#{prefix}" system "make" # Separate build steps. system "make install" diff --git a/Library/Formula/gnome-doc-utils.rb b/Library/Formula/gnome-doc-utils.rb new file mode 100644 index 000000000..4c6e66845 --- /dev/null +++ b/Library/Formula/gnome-doc-utils.rb @@ -0,0 +1,35 @@ +require 'formula' + +class GnomeDocUtils < Formula + homepage 'https://live.gnome.org/GnomeDocUtils' + url 'ftp://ftp.gnome.org/pub/gnome/sources/gnome-doc-utils/0.20/gnome-doc-utils-0.20.6.tar.bz2' + sha256 '091486e370480bf45349ad09dac799211092a02938b26a0d68206172cb6cebbf' + + depends_on 'pkg-config' => :build + depends_on 'intltool' + depends_on 'docbook' + depends_on 'libxml2' # --with-python + depends_on 'gettext' + + fails_with_llvm "Undefined symbols when linking", :build => "2326" + + def install + args = ["--prefix=#{prefix}", + "--disable-scrollkeeper", + "--enable-build-utils=yes"] + + system "./configure", *args + + # Compilation doesn't work right if we jump straight to make install + system "make" + system "make install" + end + + def caveats; <<-EOS.undent + Gnome-doc-utils requires libxml2 to be compiled + with the python modules enabled, to do so: + $ brew install libxml2 --with-python + EOS + end +end + diff --git a/Library/Formula/gv.rb b/Library/Formula/gv.rb index ae605d917..52bc4ff20 100644 --- a/Library/Formula/gv.rb +++ b/Library/Formula/gv.rb @@ -1,21 +1,16 @@ require 'formula' class Gv < Formula - url 'http://ftpmirror.gnu.org/gv/gv-3.7.2.tar.gz' - mirror 'http://ftp.gnu.org/gnu/gv/gv-3.7.2.tar.gz' + url 'http://ftpmirror.gnu.org/gv/gv-3.7.3.tar.gz' + mirror 'http://ftp.gnu.org/gnu/gv/gv-3.7.3.tar.gz' homepage 'http://www.gnu.org/s/gv/' - md5 'eb47d465755b7291870af66431c6f2e1' + md5 '98ae3e9ce338b64ba5ab622389c5960e' depends_on 'ghostscript' depends_on 'xaw3d' skip_clean 'share/gv/safe-gs-workdir' - def patches - # apply MacPorts typedef patch - { :p0 => "https://trac.macports.org/export/83941/trunk/dports/print/gv/files/patch-src-callbacks.c.diff" } - end - def install ENV.x11 system "./configure", "--disable-dependency-tracking", diff --git a/Library/Formula/ldid.rb b/Library/Formula/ldid.rb index 18fc4bc04..3c3cc149c 100644 --- a/Library/Formula/ldid.rb +++ b/Library/Formula/ldid.rb @@ -5,8 +5,25 @@ class Ldid < Formula homepage 'http://www.saurik.com/id/8' md5 '634c2f8b8a084046883e3793f6580e07' + def patches + DATA + end + def install - system "g++ -I . -o util/ldid{,.cpp} -x c util/{lookup2,sha1}.c" + system "#{ENV.cxx} -I . -o util/ldid{,.cpp} -x c util/{lookup2,sha1}.c" bin.install ["util/ldid"] end end + +__END__ +diff -ur ldid-1.0.610/util/ldid.cpp ldid-1.0.610-p/util/ldid.cpp +--- ldid-1.0.610/util/ldid.cpp 2009-05-20 14:33:45.000000000 +0800 ++++ ldid-1.0.610-gm/util/ldid.cpp 2011-10-14 16:58:56.000000000 +0800 +@@ -557,6 +557,7 @@ + case 12: switch (framework->cpusubtype) { + case 0: arch = "arm"; break; + case 6: arch = "armv6"; break; ++ case 9: arch = "armv7"; break; + default: arch = NULL; break; + } break; + diff --git a/Library/Formula/libgee.rb b/Library/Formula/libgee.rb index a7da7ec31..f43896d49 100644 --- a/Library/Formula/libgee.rb +++ b/Library/Formula/libgee.rb @@ -1,9 +1,9 @@ require 'formula' class Libgee < Formula - url 'http://download.gnome.org/sources/libgee/0.6/libgee-0.6.1.tar.bz2' + url 'http://download.gnome.org/sources/libgee/0.6/libgee-0.6.3.tar.bz2' homepage 'http://live.gnome.org/Libgee' - md5 '9cf60f41f3aa10ac7f1f7e1d094e05a1' + sha256 'fc3479d692752289c6c1e312fdd79d1f9fdf5322d16fa8f4faf0d6a5e61c5af8' depends_on 'vala' diff --git a/Library/Formula/libid3tag.rb b/Library/Formula/libid3tag.rb index 79423b339..07c34b651 100644 --- a/Library/Formula/libid3tag.rb +++ b/Library/Formula/libid3tag.rb @@ -26,6 +26,28 @@ Cflags: -I${includedir} Formula.factory('mad').homepage end + # Fixes serious memory leaks; see https://bugs.launchpad.net/mixxx/+bug/403586 + def patches + base = "http://mirror.ovh.net/gentoo-portage/media-libs/libid3tag/files/0.15.1b/" + # patch for utf-16 (memory leaks) + { :p1 => ["libid3tag-0.15.1b-utf16.patchlibid3tag-0.15.1b-utf16.patch", + "libid3tag-0.15.1b-unknown-encoding.patch", + "libid3tag-0.15.1b-compat.patch", + "libid3tag-0.15.1b-file-write.patch", + ].map { |file_name| "#{base}/#{file_name}" }, + + # typedef for 64-bit long + buffer overflow + :p0 => ["libid3tag-0.15.1b-64bit-long.patch", + "libid3tag-0.15.1b-fix_overflow.patch", + "libid3tag-0.15.1b-tag.patch", + ].map { |file_name| "#{base}/#{file_name}" }, + + # corrects "a cappella" typo + :p2 => ["libid3tag-0.15.1b-a_capella.patch", + ].map { |file_name| "#{base}/#{file_name}" } + } + end + def install system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking" system "make install" diff --git a/Library/Formula/libksba.rb b/Library/Formula/libksba.rb index b226df978..7c262747f 100644 --- a/Library/Formula/libksba.rb +++ b/Library/Formula/libksba.rb @@ -8,7 +8,7 @@ class Libksba < Formula depends_on 'libgpg-error' def install - system "./configure", "--disable-debug", "--disable-dependency-tracking", "--prefix=#{prefix}" + system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}" system "make install" end end diff --git a/Library/Formula/libmikmod.rb b/Library/Formula/libmikmod.rb index b7e8984f9..cd55ee651 100644 --- a/Library/Formula/libmikmod.rb +++ b/Library/Formula/libmikmod.rb @@ -1,61 +1,90 @@ require 'formula' class Libmikmod < Formula - url 'http://mikmod.raphnet.net/files/libmikmod-3.2.0-beta2.tar.bz2' + url 'https://github.com/mistydemeo/libmikmod.git', :tag => '446324a45a6d165b1941a4758f6cd221301b479e' homepage 'http://mikmod.raphnet.net/' - md5 '5b05f3b1167eba7855b8e38bde2b8070' + version '3.2.0b2' + + def options + [[ '--with-debug', 'Enable debugging symbols and build without optimization' ]] + end - # MacPorts patches to fix broken audio in 64-bit, crash on accessing samples menu def patches - DATA + # When aclocal is run on configure.in, it is told to use a macro AM_PATH_ESD that + # only exists if esound is installed. Here CoreAudio is used not esound. + DATA unless Formula.factory('esound').installed? end def install - system "./configure", "--disable-debug", "--disable-dependency-tracking", - "--prefix=#{prefix}", "--mandir=#{man}", - "--infodir=#{info}" - system "make install" + ENV.no_optimization if ARGV.include? '--with-debug' # leave code unoptimzed 4 debug + ENV['LIBTOOLIZE'] = '/usr/bin/glibtoolize' # system libtoolize for autoreconf + acpath = "#{HOMEBREW_PREFIX}/share/aclocal" # esd.m4 if installed would be here + ENV['ACLOCAL'] = "/usr/bin/aclocal -I #{acpath}" if Formula.factory('esound').installed? + + # Macports patched libmikmod-3.2.0-beta2.tar.bz2 in 2004. Most of their work + # was merged into the upstream source by 2005 when the devs moved to sourceforge. + # Development stopped a year later, after many more bug fixes and improvements. + # The version was never changed. It is still called 3.2.0b2 inside their code. + # This formula builds 3.2.0b2 from cvs, the final libmikmod at this time. + + # The patch below is the only one from Macports the devs didn't merge. It + # prevents a crash on accessing the samples menu in Mikmod. Check if Samples[] + # exists before letting the subsequent code try to access the array items. + + # Also in cvs is one error that stops the build. Below is a new patch + # that fixes the error when linking libmikmod.dylib, where the build outputs: + # ld: duplicate symbol _vc_callback in .libs/virtch2.o and .libs/virtch.o + # Problem: vc_callback is declared twice globally and once as an extern. + # Solution: Switch it to declared once globally and twice as extern. + + # And finally in cvs the function vc_callback() is defined to use unsigned char*. + # With this patch, virtch2.c and virtch.c will use vc_callback() identically. + + inreplace 'playercode/virtch_common.c', '(handle<MAXSAMPLEHANDLES)', + '(Samples && handle<MAXSAMPLEHANDLES)' + + inreplace 'playercode/mdriver.c', 'extern MikMod_callback_t vc_callback', + 'MikMod_callback_t vc_callback' + inreplace 'playercode/virtch_common.c', 'MikMod_callback_t vc_callback', + 'extern MikMod_callback_t vc_callback' + + inreplace 'playercode/virtch2.c', 'vc_callback((char*)vc_tickbuf, portion)', + 'vc_callback((unsigned char*)vc_tickbuf, portion)' + + + # OSX has CoreAudio, but ALSA is not for this OS nor is SAM9407 nor ULTRA. + # The osx and x11 tests may work automatically. They are explicit to be thorough. + args = ["--prefix=#{prefix}", + "--mandir=#{man}", + "--infodir=#{info}", + "--disable-alsa", + "--disable-sam9407", + "--disable-ultra", + "--enable-osx", + "--with-x", + "--x-includes=/usr/X11/include", + "--x-libraries=/usr/X11/lib"] + args << ((ARGV.include? '--with-debug') ? '--enable-debug' : '--disable-debug') + # autoreconf w/glibtoolize will fix PIC flags, flat_namespace from 2005 era code. + system "autoreconf -ivf" + # An oos build is recommended in the documentation. + Dir.mkdir 'macbuild' + Dir.chdir 'macbuild' do + system "../configure", *args + system "make" + system "make install" + end end end - __END__ -diff --git a/include/mikmod.h.in b/include/mikmod.h.in -index 9b98f43..c39f779 100644 ---- a/include/mikmod.h.in -+++ b/include/mikmod.h.in -@@ -85,7 +85,7 @@ typedef char CHAR; - - @DOES_NOT_HAVE_SIGNED@ - --#if defined(__arch64__) || defined(__alpha) -+#if defined(__arch64__) || defined(__alpha) || defined(_LP64) - /* 64 bit architectures */ - - typedef signed char SBYTE; /* 1 byte, signed */ -diff --git a/include/mikmod_internals.h b/include/mikmod_internals.h -index c61dab1..4fab08d 100644 ---- a/include/mikmod_internals.h -+++ b/include/mikmod_internals.h -@@ -50,7 +50,7 @@ extern "C" { - /*========== More type definitions */ - - /* SLONGLONG: 64bit, signed */ --#if defined (__arch64__) || defined(__alpha) -+#if defined(__arch64__) || defined(__alpha) || defined(_LP64) - typedef long SLONGLONG; - #define NATIVE_64BIT_INT - #elif defined(__WATCOMC__) -diff --git a/playercode/virtch_common.c b/playercode/virtch_common.c -index 17ffaac..9b4f976 100644 ---- a/playercode/virtch_common.c -+++ b/playercode/virtch_common.c -@@ -351,7 +351,7 @@ void VC1_VoiceSetPanning(UBYTE voice,ULONG pan) - - void VC1_SampleUnload(SWORD handle) - { -- if (handle<MAXSAMPLEHANDLES) { -+ if (Samples && handle<MAXSAMPLEHANDLES) { - if (Samples[handle]) - free(Samples[handle]); - Samples[handle]=NULL; +--- a/configure.in 2007-12-03 12:50:05.000000000 -0800 ++++ b/configure.in 2011-11-18 22:08:41.000000000 -0800 +@@ -331,7 +331,6 @@ + if test $libmikmod_driver_esd = yes + then + libmikmod_driver_esd=no +- AM_PATH_ESD(0.2.6,libmikmod_driver_esd=yes) + # We also need to know if esd is compiled with alsa support + if test $libmikmod_driver_esd = yes + then diff --git a/Library/Formula/libmms.rb b/Library/Formula/libmms.rb index 6e473e452..895ddc415 100644 --- a/Library/Formula/libmms.rb +++ b/Library/Formula/libmms.rb @@ -8,6 +8,13 @@ class Libmms < Formula depends_on 'pkg-config' => :build depends_on 'glib' + def patches + # see https://trac.macports.org/ticket/27988 + if MacOS.leopard? + { :p0 => "https://svn.macports.org/repository/macports/!svn/bc/87883/trunk/dports/multimedia/libmms/files/src_mms-common.h.patch" } + end + end + def install ENV.append 'LDFLAGS', '-liconv' system "./configure", "--prefix=#{prefix}", "--disable-dependency-tracking" diff --git a/Library/Formula/libmpdclient.rb b/Library/Formula/libmpdclient.rb index 9c7eb2b12..684ae14fb 100644 --- a/Library/Formula/libmpdclient.rb +++ b/Library/Formula/libmpdclient.rb @@ -1,9 +1,9 @@ require 'formula' class Libmpdclient < Formula - url 'http://downloads.sourceforge.net/project/musicpd/libmpdclient/2.5/libmpdclient-2.5.tar.bz2' + url 'http://downloads.sourceforge.net/project/musicpd/libmpdclient/2.6/libmpdclient-2.6.tar.bz2' homepage 'http://mpd.wikia.com/wiki/ClientLib:libmpdclient' - sha1 '4e3c0925c92c27ddcb13113adc7ebe6dc975abc6' + sha1 '00d88152c0e8599f56d01625da41b55d3a43c264' def options [[ '--universal', 'Build a universal library.' ]] diff --git a/Library/Formula/libpano.rb b/Library/Formula/libpano.rb index 0e6b7f14a..67f0acc70 100644 --- a/Library/Formula/libpano.rb +++ b/Library/Formula/libpano.rb @@ -1,10 +1,10 @@ require 'formula' class Libpano < Formula - url 'http://downloads.sourceforge.net/project/panotools/libpano13/libpano13-2.9.17/libpano13-2.9.17.tar.gz' - version '13-2.9.17' + url 'http://downloads.sourceforge.net/project/panotools/libpano13/libpano13-2.9.18/libpano13-2.9.18.tar.gz' + version '13-2.9.18' homepage 'http://panotools.sourceforge.net/' - md5 '54ec7c505cf38521f2fbb6e2acd2c433' + md5 '9c3a4fce8b6f1d79e395896ce5d8776e' depends_on 'jpeg' depends_on 'libtiff' diff --git a/Library/Formula/lua.rb b/Library/Formula/lua.rb index 1830bd28e..75e2a3818 100644 --- a/Library/Formula/lua.rb +++ b/Library/Formula/lua.rb @@ -92,7 +92,7 @@ index e4a3cd6..e35a1b5 100644 $(LUA_A): $(CORE_O) $(LIB_O) - $(AR) $@ $? - $(RANLIB) $@ -+ $(CC) -dynamiclib -install_name /usr/local/lib/liblua.5.1.dylib \ ++ $(CC) -dynamiclib -install_name HOMEBREW_PREFIX/lib/liblua.5.1.dylib \ + -compatibility_version 5.1 -current_version 5.1.4 \ + -o liblua.5.1.4.dylib $^ diff --git a/Library/Formula/mcrypt-php.rb b/Library/Formula/mcrypt-php.rb new file mode 100644 index 000000000..bc78a2e43 --- /dev/null +++ b/Library/Formula/mcrypt-php.rb @@ -0,0 +1,28 @@ +require 'formula' + +class McryptPhp < Formula + url 'http://us.php.net/get/php-5.3.6.tar.gz/from/fr.php.net/mirror' + homepage 'http://php.net/manual/fr/book.mcrypt.php' + md5 '88a2b00047bc53afbbbdf10ebe28a57e' + version '5.3.6' + + depends_on 'mcrypt' + + def install + Dir.chdir "ext/mcrypt" + system "phpize" + system "./configure", "--disable-dependency-tracking", + "--prefix=#{prefix}" + system "make" + prefix.install 'modules/mcrypt.so' + end + + def caveats; <<-EOS.undent + To finish mcrypt-php installation, you need to add the + following line into php.ini: + extension="#{prefix}/mcrypt.so" + Then, restart your webserver and check in phpinfo if + you're able to see something about mcrypt + EOS + end +end diff --git a/Library/Formula/mpd.rb b/Library/Formula/mpd.rb index d51675857..1893e40aa 100644 --- a/Library/Formula/mpd.rb +++ b/Library/Formula/mpd.rb @@ -1,9 +1,9 @@ require 'formula' class Mpd < Formula - url 'http://downloads.sourceforge.net/project/musicpd/mpd/0.16.5/mpd-0.16.5.tar.bz2' + url 'http://sourceforge.net/projects/musicpd/files/mpd/0.16.6/mpd-0.16.6.tar.gz' homepage 'http://mpd.wikia.com' - md5 'f7564cff12035f6a1112cce770655df7' + md5 '8fd6266dc313bddad406f876a845157f' depends_on 'pkg-config' => :build depends_on 'glib' diff --git a/Library/Formula/ocp.rb b/Library/Formula/ocp.rb new file mode 100644 index 000000000..711eed67f --- /dev/null +++ b/Library/Formula/ocp.rb @@ -0,0 +1,40 @@ +require "formula" + +class Ocp < Formula + url "http://downloads.sourceforge.net/project/opencubicplayer/ocp-0.1.21/ocp-0.1.21.tar.bz2" + md5 '558a6eacfadfd9c60c97a6e9c7f83f47' + homepage "http://sourceforge.net/p/opencubicplayer/home/" + + depends_on "mad" unless ARGV.include? "--without-mad" + depends_on "flac" unless ARGV.include? "--without-flac" + depends_on "adplug" if ARGV.include? "--with-adplug" + + def options + [ + ["--without-mad", "disable mad mpeg audio support"], + ["--without-flac", "disable FLAC support"], + ["--with-adplug", "enable adplug support"], + ] + end + + def install + ENV.deparallelize + + args = ["--prefix=#{prefix}", + "--without-x11", + "--without-sdl", + "--without-desktop_file_install"] + + if ARGV.include? "--without-mad" + args << "--without-mad" + elsif ARGV.include? "--without-flac" + args << "--without-flac" + elsif ARGV.include? "--with-adplug" + args << "--with-adplug" + end + + system "./configure", *args + system "make" + system "make install" + end +end diff --git a/Library/Formula/pig.rb b/Library/Formula/pig.rb index 36a6e3b9c..d8071eb24 100644 --- a/Library/Formula/pig.rb +++ b/Library/Formula/pig.rb @@ -10,25 +10,30 @@ class Pig < Formula end def install - rm_f Dir["bin/*.bat"] - prefix.install ['bin', "pig-#{version}.jar"] + bin.install 'bin/pig' + prefix.install "pig-#{version}.jar" + prefix.install "pig-#{version}-withouthadoop.jar" end end # There's something weird with Pig's launch script, it doesn't find the correct -# path. This patch removes a test that should fail, but doesn't. +# path. This patch finds PIG_HOME from the pig binary path's symlink. __END__ -diff --git a/bin/pig b/bin/pig -index 97fc649..79056cf 100644 ---- a/bin/pig -+++ b/bin/pig -@@ -61,6 +61,10 @@ - script="$(basename -- "$this")" - this="$bin/$script" +diff -u a/bin/pig b/bin/pig +--- a/bin/pig 2011-09-30 08:55:58.000000000 +1000 ++++ b/bin/pig 2011-11-28 11:18:36.000000000 +1100 +@@ -55,11 +55,8 @@ + + # resolve links - $0 may be a softlink + this="${BASH_SOURCE-$0}" +- +-# convert relative path to absolute path +-bin=$(cd -P -- "$(dirname -- "$this")">/dev/null && pwd -P) +-script="$(basename -- "$this")" +-this="$bin/$script" ++here=$(dirname $this) ++this="$here"/$(readlink $this) -+ls=`ls -ld "$this"` -+link=`expr "$ls" : '.*-> \(.*\)$'` -+this=`dirname "$this"`/"$link" -+ # the root of the Pig installation export PIG_HOME=`dirname "$this"`/.. + diff --git a/Library/Formula/postgresql.rb b/Library/Formula/postgresql.rb index a96c9f6fc..66b5e2538 100644 --- a/Library/Formula/postgresql.rb +++ b/Library/Formula/postgresql.rb @@ -3,8 +3,8 @@ require 'hardware' class Postgresql < Formula homepage 'http://www.postgresql.org/' - url 'http://ftp.postgresql.org/pub/source/v9.1.1/postgresql-9.1.1.tar.bz2' - md5 '061a9f17323117c9358ed60f33ecff78' + url 'http://ftp.postgresql.org/pub/source/v9.1.2/postgresql-9.1.2.tar.bz2' + md5 '7dbff52221954c46595313eb7f92c3e0' depends_on 'readline' depends_on 'libxml2' if MacOS.leopard? # Leopard libxml is too old diff --git a/Library/Formula/rsyslog.rb b/Library/Formula/rsyslog.rb index 03bf1eae9..ae7e42246 100644 --- a/Library/Formula/rsyslog.rb +++ b/Library/Formula/rsyslog.rb @@ -12,16 +12,8 @@ class Rsyslog < Formula end def install - if ARGV.build_universal? - ENV['CC'] = "gcc -arch i386 -arch x86_64" - ENV['CXX'] = "g++ -arch i386 -arch x86_64" - ENV['CPP'] = "gcc -E" - ENV['CXXCPP'] = "g++ -E" - system "./configure", "--prefix=#{prefix}" - else - system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}" - end - + ENV.universal_binary if ARGV.build_universal? + system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}" system "make" system "make install" end diff --git a/Library/Formula/ruby.rb b/Library/Formula/ruby.rb index 016f2bfc8..11ef1702b 100644 --- a/Library/Formula/ruby.rb +++ b/Library/Formula/ruby.rb @@ -41,9 +41,7 @@ class Ruby < Formula system "autoconf" unless File.exists? 'configure' - # Configure claims that "--with-readline-dir" is unused, but it works. args = ["--prefix=#{prefix}", - "--with-readline-dir=#{Formula.factory('readline').prefix}", "--disable-debug", "--disable-dependency-tracking", "--enable-shared"] diff --git a/Library/Formula/sqlite.rb b/Library/Formula/sqlite.rb index 085c13319..9063e062d 100644 --- a/Library/Formula/sqlite.rb +++ b/Library/Formula/sqlite.rb @@ -6,18 +6,27 @@ class SqliteFunctions < Formula version '2010-01-06' end +class SqliteDocs < Formula + url 'http://www.sqlite.org/sqlite-doc-3070900.zip' + sha1 '2d4a25f75cc6b7251f1b49b828f9fd1d699fc8a2' + version '3.7.9' +end + class Sqlite < Formula homepage 'http://sqlite.org/' - url 'http://www.sqlite.org/sqlite-autoconf-3070701.tar.gz' - md5 '554026fe7fac47b1cf61c18d5fe43419' - version '3.7.7.1' + url 'http://www.sqlite.org/sqlite-autoconf-3070900.tar.gz' + sha1 'a9da98a4bde4d9dae5c29a969455d11a03600e11' + version '3.7.9' + + depends_on 'readline' => :optional def options [ - ["--with-rtree", "Enables the R*Tree index module"], - ["--with-fts", "Enables the FTS Module"], - ["--universal", "Build a universal binary."], - ["--with-functions", "Enables more math and string functions for SQL queries."] + ["--with-docs", "Install HTML documentation"], + ["--with-rtree", "Enable the R*Tree index module"], + ["--with-fts", "Enable the FTS Module"], + ["--universal", "Build a universal binary"], + ["--with-functions", "Enable more math and string functions for SQL queries"] ] end @@ -25,8 +34,14 @@ class Sqlite < Formula # O2 and O3 leads to corrupt/invalid rtree indexes # http://groups.google.com/group/spatialite-users/browse_thread/thread/8e1cfa79f2d02a00# ENV.Os - ENV.append "CFLAGS", "-DSQLITE_ENABLE_RTREE=1" if ARGV.include? "--with-rtree" - ENV.append "CPPFLAGS","-DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS" if ARGV.include? "--with-fts" + + ENV.append 'CPPFLAGS', "-DSQLITE_ENABLE_RTREE" if ARGV.include? "--with-rtree" + ENV.append 'CPPFLAGS', "-DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS" if ARGV.include? "--with-fts" + + # enable these options by default + ENV.append 'CPPFLAGS', "-DSQLITE_ENABLE_COLUMN_METADATA" + ENV.append 'CPPFLAGS', "-DSQLITE_ENABLE_STAT3" + ENV.universal_binary if ARGV.build_universal? system "./configure", "--prefix=#{prefix}", "--disable-dependency-tracking", @@ -39,6 +54,8 @@ class Sqlite < Formula system ENV.cc, "-fno-common", "-dynamiclib", "extension-functions.c", "-o", "libsqlitefunctions.dylib", *ENV.cflags.split lib.install "libsqlitefunctions.dylib" end + + SqliteDocs.new.brew { doc.install Dir['*'] } if ARGV.include? "--with-docs" end if ARGV.include? "--with-functions" diff --git a/Library/Formula/tophat.rb b/Library/Formula/tophat.rb index 0cd5b0f6c..60d64ae9e 100644 --- a/Library/Formula/tophat.rb +++ b/Library/Formula/tophat.rb @@ -1,9 +1,9 @@ require 'formula' class Tophat < Formula - url 'http://tophat.cbcb.umd.edu/downloads/tophat-1.3.2.tar.gz' + url 'http://tophat.cbcb.umd.edu/downloads/tophat-1.3.3.tar.gz' homepage 'http://tophat.cbcb.umd.edu/' - md5 'b214c54928805eb1095828b1c7c1bbab' + md5 '5858f423fb9736aac5186953d5c5778f' depends_on 'samtools' diff --git a/Library/Formula/tth.rb b/Library/Formula/tth.rb index 3a0f71278..adb2b5f07 100644 --- a/Library/Formula/tth.rb +++ b/Library/Formula/tth.rb @@ -7,7 +7,7 @@ class Tth < Formula version '4.00' def install - system 'gcc -Os -o tth tth.c' + system "#{ENV.cc} -o tth tth.c" bin.install %w(tth latex2gif ps2gif ps2png) man1.install 'tth.1' end diff --git a/Library/Formula/uwsgi.rb b/Library/Formula/uwsgi.rb index 94ab03b82..fff6cf8a1 100644 --- a/Library/Formula/uwsgi.rb +++ b/Library/Formula/uwsgi.rb @@ -1,9 +1,9 @@ require 'formula' class Uwsgi < Formula - url 'http://projects.unbit.it/downloads/uwsgi-0.9.9.2.tar.gz' + url 'http://projects.unbit.it/downloads/uwsgi-0.9.9.3.tar.gz' homepage 'http://projects.unbit.it/uwsgi/' - md5 'fafecf7dc86a36f003d2fadaa44483f1' + md5 'bbf4ac40901fb9d26c8286e7637b77f5' def install # Find the arch for the Python we are building against. diff --git a/Library/Formula/vala.rb b/Library/Formula/vala.rb index 2ee8fccef..74f8ff17a 100644 --- a/Library/Formula/vala.rb +++ b/Library/Formula/vala.rb @@ -2,9 +2,9 @@ require 'formula' class Vala < Formula head 'git://git.gnome.org/vala' - url 'http://download.gnome.org/sources/vala/0.11/vala-0.11.7.tar.bz2' + url 'http://download.gnome.org/sources/vala/0.14/vala-0.14.1.tar.xz' homepage 'http://live.gnome.org/Vala' - md5 '5515f32552ee45ed5c7541c119009caa' + sha256 'bef8c803e6e84d6dd2c6e771b72245ae268f49f554f3d00b2c4a0b7a28f4a439' depends_on 'pkg-config' => :build depends_on 'gettext' diff --git a/Library/Formula/vcftools.rb b/Library/Formula/vcftools.rb new file mode 100644 index 000000000..e3a7401be --- /dev/null +++ b/Library/Formula/vcftools.rb @@ -0,0 +1,57 @@ +require 'formula' + +class Vcftools < Formula + url 'http://downloads.sourceforge.net/project/vcftools/vcftools_0.1.7.tar.gz' + homepage 'http://vcftools.sourceforge.net/index.html' + md5 'd3e68027a7fe40d3f8cb28c3006c7248' + + def patches + # Install Perl modules to /lib/perl5/site_perl and ensure VcfStats.pm is installed + # This is fixed in vcf source tree, will not be needed after version 0.1.7 + DATA + end + + def install + system "make install PREFIX=#{prefix} CPP=#{ENV.cxx}" + end + + def test + system "vcftools" + end + + def caveats; <<-EOS.undent + To use the Perl modules, make sure Vcf.pm, VcfStats.pm, and FaSlice.pm + are included in your PERL5LIB environment variable: + export PERL5LIB=#{HOMEBREW_PREFIX}/lib/perl5/site_perl:${PERL5LIB} + EOS + end +end + +__END__ +diff --git a/Makefile b/Makefile +index 39c042b..055afd0 100644 +--- a/Makefile ++++ b/Makefile +@@ -17,7 +17,7 @@ ifndef PREFIX + export PREFIX = $(dir $(realpath $(lastword $(MAKEFILE_LIST)))) + endif + export BINDIR = ${PREFIX}/bin +-export MODDIR = ${PREFIX}/lib ++export MODDIR = ${PREFIX}/lib/perl5/site_perl + + DIRS = cpp perl + install: + +diff --git a/perl/Makefile b/perl/Makefile +index 222b75d..2e8b49f 100644 +--- a/perl/Makefile ++++ b/perl/Makefile +@@ -1,7 +1,7 @@ + + BIN = vcf-compare fill-aa vcf-annotate vcf-merge vcf-isec vcf-stats vcf-to-tab fill-an-ac \ + vcf-query vcf-convert vcf-subset vcf-validator vcf-concat vcf-sort +-MOD = FaSlice.pm Vcf.pm ++MOD = FaSlice.pm Vcf.pm VcfStats.pm + + install: + @for i in $(BIN); do cp $(CURDIR)/$$i $(BINDIR)/$$i; done; \ diff --git a/Library/Formula/wine.rb b/Library/Formula/wine.rb index 55df718b7..24e9b0706 100644 --- a/Library/Formula/wine.rb +++ b/Library/Formula/wine.rb @@ -1,8 +1,8 @@ require 'formula' class WineGecko < Formula - url 'http://downloads.sourceforge.net/wine/wine_gecko-1.2.0-x86.msi', :using => :nounzip - sha1 '6964d1877668ab7da07a60f6dcf23fb0e261a808' + url 'http://downloads.sourceforge.net/wine/wine_gecko-1.4-x86.msi', :using => :nounzip + sha1 'c30aa99621e98336eb4b7e2074118b8af8ea2ad5' end class WineGeckoOld < Formula @@ -14,8 +14,8 @@ class Wine < Formula homepage 'http://winehq.org/' if ARGV.build_devel? - url 'http://downloads.sourceforge.net/project/wine/Source/wine-1.3.33.tar.bz2' - sha256 'd49b96e3f999a7380898c3c09cf3d920c369756cb735d9c05295b5bb73c19f8c' + url 'http://downloads.sourceforge.net/project/wine/Source/wine-1.3.34.tar.bz2' + sha256 'ac597a63c289bfedd75dcdc1cfaf342ad816669167868ad97490d0c08b7f1c52' else url 'http://downloads.sourceforge.net/project/wine/Source/wine-1.2.3.tar.bz2' sha256 '3fd8d3f2b466d07eb90b8198cdc9ec3005917a4533db7b8c6c69058a2e57c61f' @@ -29,7 +29,7 @@ class Wine < Formula # gnutls not needed since 1.3.16 depends_on 'gnutls' unless ARGV.build_devel? or ARGV.build_head? - fails_with_llvm 'Wine dies with an "Unhandled exception code" when built with LLVM' + fails_with_llvm 'Wine dies with an "Unhandled exception code" when built with LLVM', :build => 2336 # the following libraries are currently not specified as dependencies, or not built as 32-bit: # configure: libsane, libv4l, libgphoto2, liblcms, gstreamer-0.10, libcapi20, libgsm, libtiff diff --git a/Library/Formula/yamdi.rb b/Library/Formula/yamdi.rb index ecc04212d..f4cf269f4 100644 --- a/Library/Formula/yamdi.rb +++ b/Library/Formula/yamdi.rb @@ -6,7 +6,7 @@ class Yamdi < Formula md5 '3f8395373e941f235015a92d4da047c8' def install - system "gcc yamdi.c -o yamdi -O2 -Wall" + system "#{ENV.cc} #{ENV.cflags} yamdi.c -o yamdi" bin.install "yamdi" man1.install "man1/yamdi.1" end diff --git a/Library/Formula/yaz.rb b/Library/Formula/yaz.rb index d29c38078..ea6f91f8a 100644 --- a/Library/Formula/yaz.rb +++ b/Library/Formula/yaz.rb @@ -1,12 +1,9 @@ require 'formula' -# NOTE this formula conflicts with icu4c on Snow Leopard at the moment -# if this is a problem for you then please fix it! Thanks. - class Yaz < Formula - url 'http://ftp.indexdata.dk/pub/yaz/yaz-4.2.7.tar.gz' + url 'http://ftp.indexdata.dk/pub/yaz/yaz-4.2.22.tar.gz' homepage 'http://www.indexdata.com/yaz' - md5 '7bb9d007ce288b6c4095bd3a1f9ef627' + md5 'b28ecda4073a950a1f915829475e5238' depends_on 'pkg-config' => :build diff --git a/Library/Formula/zebra.rb b/Library/Formula/zebra.rb index 80768054e..0cd844777 100644 --- a/Library/Formula/zebra.rb +++ b/Library/Formula/zebra.rb @@ -1,9 +1,9 @@ require 'formula' class Zebra < Formula - url 'http://ftp.indexdata.dk/pub/zebra/idzebra-2.0.45.tar.gz' + url 'http://ftp.indexdata.dk/pub/zebra/idzebra-2.0.50.tar.gz' homepage 'http://www.indexdata.com/zebra' - md5 '50aa282d76b4fa86a02c28e6dad4e24b' + md5 '4393217c9973bf5959396ad4150ee24e' depends_on 'yaz' diff --git a/Library/Homebrew/download_strategy.rb b/Library/Homebrew/download_strategy.rb index 58221c28f..625dbaf9a 100644 --- a/Library/Homebrew/download_strategy.rb +++ b/Library/Homebrew/download_strategy.rb @@ -76,8 +76,8 @@ class CurlDownloadStrategy < AbstractDownloadStrategy # Use more than 4 characters to not clash with magicbytes magic_bytes = "____pkg" else - # get the first four bytes - File.open(@tarball_path) { |f| magic_bytes = f.read(4) } + # get the first six bytes + File.open(@tarball_path) { |f| magic_bytes = f.read(6) } end # magic numbers stolen from /usr/share/file/magic/ @@ -89,6 +89,10 @@ class CurlDownloadStrategy < AbstractDownloadStrategy # TODO check if it's really a tar archive safe_system '/usr/bin/tar', 'xf', @tarball_path chdir + when /^\xFD7zXZ\x00/ # xz compressed + raise "You must install XZutils: brew install xz" unless system "/usr/bin/which -s xz" + safe_system "xz -dc #{@tarball_path} | /usr/bin/tar xf -" + chdir when '____pkg' safe_system '/usr/sbin/pkgutil', '--expand', @tarball_path, File.basename(@url) chdir diff --git a/Library/Homebrew/extend/pathname.rb b/Library/Homebrew/extend/pathname.rb index 65d34d450..018547ff8 100644 --- a/Library/Homebrew/extend/pathname.rb +++ b/Library/Homebrew/extend/pathname.rb @@ -62,9 +62,9 @@ class Pathname return dst end - # extended to support the double extensions .tar.gz and .tar.bz2 + # extended to support the double extensions .tar.gz, .tar.bz2, and .tar.xz def extname - /(\.tar\.(gz|bz2))$/.match to_s + /(\.tar\.(gz|bz2|xz))$/.match to_s return $1 if $1 return File.extname(to_s) end diff --git a/Library/Homebrew/global.rb b/Library/Homebrew/global.rb index bded21143..fda41c5d3 100644 --- a/Library/Homebrew/global.rb +++ b/Library/Homebrew/global.rb @@ -56,7 +56,7 @@ module Homebrew extend self include FileUtils end -FORMULA_META_FILES = %w[README README.md ChangeLog COPYING LICENSE LICENCE COPYRIGHT AUTHORS] +FORMULA_META_FILES = %w[README README.md ChangeLog CHANGES COPYING LICENSE LICENCE COPYRIGHT AUTHORS] ISSUES_URL = "https://github.com/mxcl/homebrew/wiki/checklist-before-filing-a-new-issue" unless ARGV.include? "--no-compat" or ENV['HOMEBREW_NO_COMPAT'] diff --git a/Library/Homebrew/test/test_bucket.rb b/Library/Homebrew/test/test_bucket.rb index 010c06761..f328dacca 100644 --- a/Library/Homebrew/test/test_bucket.rb +++ b/Library/Homebrew/test/test_bucket.rb @@ -32,8 +32,10 @@ class BeerTasting < Test::Unit::TestCase assert_nothing_raised do MockFormula.new 'test-0.1.tar.gz' MockFormula.new 'test-0.1.tar.bz2' + MockFormula.new 'test-0.1.tar.xz' MockFormula.new 'test-0.1.tgz' MockFormula.new 'test-0.1.bgz' + MockFormula.new 'test-0.1.txz' MockFormula.new 'test-0.1.zip' end end |
