022e8bee0c
Groovy can take advantage of Java 1.7's invokedynamic support if you swap out the jars with the `-indy` versions. Closes Homebrew/homebrew#19348. Signed-off-by: Adam Vandenberg <flangy@gmail.com>
34 lines
952 B
Ruby
34 lines
952 B
Ruby
require 'formula'
|
|
|
|
class Groovy < Formula
|
|
homepage 'http://groovy.codehaus.org/'
|
|
url 'http://dist.groovy.codehaus.org/distributions/groovy-binary-2.1.3.zip'
|
|
sha1 'fa41789263ca6c7af145a3e5f568f264b4fd7a12'
|
|
|
|
option 'invokedynamic', "Install the InvokeDynamic version of Groovy (only works with Java 1.7+)"
|
|
|
|
def install
|
|
# Don't need Windows files.
|
|
# Why are icons in bin?
|
|
rm_f Dir["bin/*.bat","bin/groovy.{icns,ico}"]
|
|
|
|
if build.include? 'invokedynamic'
|
|
Dir['indy/*.jar'].each do |src_path|
|
|
dst_file = File.basename(src_path, '-indy.jar') + '.jar'
|
|
dst_path = File.join('lib', dst_file)
|
|
mv src_path, dst_path
|
|
end
|
|
end
|
|
|
|
prefix.install_metafiles
|
|
libexec.install %w(bin conf lib embeddable)
|
|
bin.install_symlink Dir["#{libexec}/bin/*"]
|
|
end
|
|
|
|
def caveats
|
|
<<-EOS.undent
|
|
You should set the environment variable GROOVY_HOME to
|
|
#{opt_prefix}/libexec
|
|
EOS
|
|
end
|
|
end
|