44 lines
1.3 KiB
Ruby
44 lines
1.3 KiB
Ruby
require 'formula'
|
|
|
|
class Htmlcompressor < Formula
|
|
desc "Minify HTML or XML"
|
|
homepage 'http://code.google.com/p/htmlcompressor/'
|
|
url 'https://htmlcompressor.googlecode.com/files/htmlcompressor-1.5.3.jar'
|
|
sha1 '57db73b92499e018b2f2978f1c7aa7b1238c7a39'
|
|
|
|
option "with-yuicompressor", "Use YUICompressor for JS/CSS compression"
|
|
option "with-closure-compiler", "Use Closure Compiler for JS optimization"
|
|
|
|
deprecated_option "yuicompressor" => "with-yuicompressor"
|
|
deprecated_option "closure-compiler" => "with-closure-compiler"
|
|
|
|
depends_on "yuicompressor" => :optional
|
|
depends_on "closure-compiler" => :optional
|
|
|
|
def install
|
|
libexec.install "htmlcompressor-#{version}.jar"
|
|
bin.write_jar_script libexec/"htmlcompressor-#{version}.jar", "htmlcompressor"
|
|
|
|
if build.with? "yuicompressor"
|
|
yui = Formula["yuicompressor"]
|
|
libexec.install_symlink yui.opt_libexec/"yuicompressor-#{yui.version}.jar"
|
|
end
|
|
|
|
if build.with? "closure-compiler"
|
|
libexec.install_symlink Formula["closure-compiler"].opt_libexec/"build/compiler.jar"
|
|
end
|
|
end
|
|
|
|
test do
|
|
path = testpath/"index.xml"
|
|
path.write <<-EOS
|
|
<foo>
|
|
<bar /> <!-- -->
|
|
</foo>
|
|
EOS
|
|
|
|
output = `#{bin}/htmlcompressor #{path}`.strip
|
|
assert_equal "<foo><bar/></foo>", output
|
|
assert_equal 0, $?.exitstatus
|
|
end
|
|
end
|