aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula/pil.rb
blob: cbb1138d86853c71f0d3e43b054f7cac809dc984 (plain)
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
require 'formula'

class Pil <Formula
  url 'http://effbot.org/downloads/Imaging-1.1.7.tar.gz'
  homepage 'http://www.pythonware.com/products/pil/'
  md5 'fc14a54e1ce02a0225be8854bfba478e'

  depends_on 'jpeg' => :recommended
  depends_on 'little-cms' => :optional

  def install
    # barfs with any of  -march=core2 -mmmx -msse4.1
    ENV.minimal_optimization

    inreplace "setup.py" do |s|
      # Tell setup where Freetype2 is on 10.5/10.6
      s.gsub! 'add_directory(include_dirs, "/sw/include/freetype2")',
              'add_directory(include_dirs, "/usr/X11/include")'

      s.gsub! 'add_directory(include_dirs, "/sw/lib/freetype2/include")',
              'add_directory(library_dirs, "/usr/X11/lib")'

      # Tell setup where our stuff is
      s.gsub! 'add_directory(library_dirs, "/sw/lib")',
              "add_directory(library_dirs, \"#{HOMEBREW_PREFIX}/lib\")"

      s.gsub! 'add_directory(include_dirs, "/sw/include")',
              "add_directory(include_dirs, \"#{HOMEBREW_PREFIX}/include\")"
    end

    system "python", "setup.py", "build_ext"
    system "python", "setup.py", "install", "--prefix=#{prefix}"
  end

  def caveats
    <<-EOS.undent
      This formula installs PIL against whatever Python is first in your path.
      This Python needs to have either setuptools or distribute installed or the
      build will fail.

      If you are using a Homebrew-built Python, you can do:
        brew install distribute
      to get this support library.

      If you are using a custom Python, run:
        brew info distribute
      to see manual setup instructions.
    EOS
  end
end