2012-05-26 19:09:34 +00:00
|
|
|
require 'formula'
|
|
|
|
|
2013-09-05 15:04:14 +00:00
|
|
|
class ErlangInstalled < Requirement
|
|
|
|
fatal true
|
|
|
|
env :userpaths
|
2014-06-16 15:06:55 +00:00
|
|
|
default_formula "erlang"
|
2013-09-05 15:04:14 +00:00
|
|
|
|
|
|
|
satisfy {
|
|
|
|
erl = which('erl') and begin
|
2014-04-21 17:08:52 +00:00
|
|
|
`#{erl} -noshell -eval 'io:fwrite("~s~n", [erlang:system_info(otp_release)]).' -s erlang halt | grep -q '^1[789]'`
|
2013-09-05 15:04:14 +00:00
|
|
|
$?.exitstatus == 0
|
|
|
|
end
|
|
|
|
}
|
|
|
|
|
|
|
|
def message; <<-EOS.undent
|
2014-04-21 17:08:52 +00:00
|
|
|
Erlang 17 is required to install.
|
2013-09-05 15:04:14 +00:00
|
|
|
|
|
|
|
You can install this with:
|
2014-06-16 15:06:55 +00:00
|
|
|
brew install erlang
|
2013-09-05 15:04:14 +00:00
|
|
|
|
|
|
|
Or you can use an official installer from:
|
|
|
|
http://www.erlang.org/
|
|
|
|
EOS
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2012-05-26 19:09:34 +00:00
|
|
|
class Elixir < Formula
|
|
|
|
homepage 'http://elixir-lang.org/'
|
2015-02-12 10:19:43 +00:00
|
|
|
url 'https://github.com/elixir-lang/elixir/archive/v1.0.3.tar.gz'
|
|
|
|
sha1 'db40ad4f66ea9ca25257dbfa405cdb2028c56eec'
|
2014-08-30 20:42:30 +00:00
|
|
|
|
2013-01-28 17:23:25 +00:00
|
|
|
head 'https://github.com/elixir-lang/elixir.git'
|
2012-05-26 19:09:34 +00:00
|
|
|
|
2014-06-29 10:06:37 +00:00
|
|
|
bottle do
|
2015-02-12 10:37:25 +00:00
|
|
|
sha1 "e87e4e568d79d91e72732993579608b1c5a0a10d" => :yosemite
|
|
|
|
sha1 "2b306d49528a6031c2f2222e81abcc93952afbc6" => :mavericks
|
|
|
|
sha1 "1be346fd8b8a829ec839bb41f73547d8d3888d76" => :mountain_lion
|
2014-06-29 10:06:37 +00:00
|
|
|
end
|
|
|
|
|
2013-09-05 15:04:14 +00:00
|
|
|
depends_on ErlangInstalled
|
2012-10-03 13:55:31 +00:00
|
|
|
|
2012-05-26 19:09:34 +00:00
|
|
|
def install
|
|
|
|
system "make"
|
2014-06-18 14:21:22 +00:00
|
|
|
bin.install Dir['bin/*'] - Dir['bin/*.{bat,ps1}']
|
2012-08-01 06:58:27 +00:00
|
|
|
|
2014-05-31 15:00:24 +00:00
|
|
|
Dir.glob("lib/*/ebin") do |path|
|
2013-09-05 20:25:42 +00:00
|
|
|
app = File.basename(File.dirname(path))
|
|
|
|
(lib/app).install path
|
2012-08-01 06:58:27 +00:00
|
|
|
end
|
2012-05-26 19:09:34 +00:00
|
|
|
end
|
|
|
|
|
2013-03-25 18:34:48 +00:00
|
|
|
test do
|
|
|
|
system "#{bin}/elixir", "-v"
|
2012-05-26 19:09:34 +00:00
|
|
|
end
|
|
|
|
end
|