aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula
diff options
context:
space:
mode:
authorTianyi Cui2010-10-05 11:39:21 +0800
committerAdam Vandenberg2010-10-31 15:09:43 -0700
commitfdf609438918ab19b4d2df88ed7a3112b1f82ae3 (patch)
treeae243f6ed5107409943645f46cd919093f8852f0 /Library/Formula
parent564901dda130372453b8b6eec17543367286d2e6 (diff)
downloadhomebrew-fdf609438918ab19b4d2df88ed7a3112b1f82ae3.tar.bz2
New formula: clisp
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Diffstat (limited to 'Library/Formula')
-rw-r--r--Library/Formula/clisp.rb47
1 files changed, 47 insertions, 0 deletions
diff --git a/Library/Formula/clisp.rb b/Library/Formula/clisp.rb
new file mode 100644
index 000000000..596bbaffb
--- /dev/null
+++ b/Library/Formula/clisp.rb
@@ -0,0 +1,47 @@
+require 'formula'
+
+class Clisp <Formula
+ url 'http://ftp.gnu.org/pub/gnu/clisp/release/2.49/clisp-2.49.tar.bz2'
+ homepage 'http://clisp.cons.org/'
+ md5 '1962b99d5e530390ec3829236d168649'
+
+ depends_on 'libiconv'
+ depends_on 'libsigsegv'
+ depends_on 'readline'
+
+ skip_clean :all # otherwise abort trap
+
+ def install
+ # This build isn't parallel safe.
+ ENV.j1
+
+ # Clisp requires to select word size explicitly this way,
+ # set it in CFLAGS won't work.
+ ENV['CC'] = "#{ENV.cc} -m#{snow_leopard_64? ? 64 : 32}"
+
+ system "./configure", "--prefix=#{prefix}",
+ "--with-readline=yes"
+
+ cd "src" do
+ # Multiple -O options will be in the generated Makefile,
+ # make Homebrew's the last such option so it's effective.
+ inreplace "Makefile" do |s|
+ cf = s.get_make_var("CFLAGS")
+ cf.gsub! ENV['CFLAGS'], ''
+ cf += ' '+ENV['CFLAGS']
+ s.change_make_var! 'CFLAGS', cf
+ end
+
+ # The ulimit must be set, otherwise `make` will fail and tell you to do so
+ system "ulimit -s 16384 && make"
+
+ # Considering the complexity of this package, a self-check is highly recommended.
+ system "make check"
+ system "make install"
+ end
+ end
+
+ def test
+ system "clisp --version"
+ end
+end