2009-10-15 08:07:12 +00:00
|
|
|
require 'formula'
|
2009-07-30 01:25:18 +00:00
|
|
|
|
|
|
|
class Python <Formula
|
2009-10-26 12:06:12 +00:00
|
|
|
url 'http://python.org/ftp/python/2.6.4/Python-2.6.4.tar.bz2'
|
2009-10-02 04:00:15 +00:00
|
|
|
homepage 'http://www.python.org/'
|
2009-10-26 12:06:12 +00:00
|
|
|
md5 'fee5408634a54e721a93531aba37f8c1'
|
2009-07-30 01:25:18 +00:00
|
|
|
|
2009-09-18 18:16:39 +00:00
|
|
|
# You can build Python without readline, but you really don't want to.
|
2009-09-21 18:40:27 +00:00
|
|
|
depends_on 'readline' => :recommended
|
2009-10-02 04:00:15 +00:00
|
|
|
|
|
|
|
def options
|
|
|
|
[
|
|
|
|
["--framework", "Do a 'Framework' build instead of a UNIX-style build."],
|
|
|
|
["--intel", "Build for both 32 & 64 bit Intel."]
|
|
|
|
]
|
|
|
|
end
|
2009-09-17 20:56:49 +00:00
|
|
|
|
2009-08-03 22:22:04 +00:00
|
|
|
def skip_clean? path
|
2009-08-10 10:45:25 +00:00
|
|
|
path == bin+'python' or path == bin+'python2.6' or # if you strip these, it can't load modules
|
|
|
|
path == lib+'python2.6' # save a lot of time
|
2009-08-03 22:22:04 +00:00
|
|
|
end
|
2009-08-01 18:44:16 +00:00
|
|
|
|
2009-07-30 01:25:18 +00:00
|
|
|
def install
|
2009-10-02 04:00:15 +00:00
|
|
|
args = ["--prefix=#{prefix}"]
|
|
|
|
|
|
|
|
if ARGV.include? '--framework'
|
2009-10-12 12:01:21 +00:00
|
|
|
args << "--enable-framework"
|
2009-10-02 04:00:15 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
if ARGV.include? '--intel'
|
2009-10-12 12:01:21 +00:00
|
|
|
args << "--with-universal-archs=intel --enable-universalsdk=/"
|
2009-10-02 04:00:15 +00:00
|
|
|
end
|
|
|
|
|
2009-10-21 18:24:28 +00:00
|
|
|
# Speed up creation of libpython.a, backported from Unladen Swallow:
|
|
|
|
# http://code.google.com/p/unladen-swallow/source/detail?r=856
|
|
|
|
inreplace "Makefile.pre.in", "$(AR) cr", "$(AR) cqS"
|
|
|
|
|
2009-10-02 04:00:15 +00:00
|
|
|
system "./configure", *args
|
|
|
|
|
|
|
|
|
2009-07-30 01:25:18 +00:00
|
|
|
system "make"
|
|
|
|
system "make install"
|
2009-08-03 22:22:04 +00:00
|
|
|
|
|
|
|
# lib/python2.6/config contains a copy of libpython.a; make this a link instead
|
|
|
|
(lib+'python2.6/config/libpython2.6.a').unlink
|
|
|
|
(lib+'python2.6/config/libpython2.6.a').make_link lib+'libpython2.6.a'
|
2009-07-30 01:25:18 +00:00
|
|
|
end
|
|
|
|
end
|