homebrew-core/Formula/shocco.rb
Jack Nagel 5c93643ee7 Infer path to be added for requirements that search PATH
When a requirement is specified like:

  satisfy { which "foo" }

There is no reason that we should inject all of ENV.userpaths! into the
build environment. Instead, infer the directory to be added to PATH from
the Pathname that is returned.

This is another step towards condensing the "which program" requirements
down into a one-liner DSL element.
2013-01-22 14:59:10 -06:00

53 lines
1.3 KiB
Ruby

require 'formula'
# Include a private copy of this Python app
# so we don't have to worry about clashing dependencies.
class Pygments < Formula
homepage 'http://pygments.org/'
url 'http://pypi.python.org/packages/source/P/Pygments/Pygments-1.5.tar.gz'
sha1 '4fbd937fd5cebc79fa4b26d4cce0868c4eec5ec5'
end
class MarkdownProvider < Requirement
fatal true
satisfy { which 'markdown' }
def message; <<-EOS.undent
shocco requires a `markdown` command.
You can satisfy this requirement with either of two formulae:
brew install markdown
brew install discount
Please install one and try again.
EOS
end
end
class Shocco < Formula
homepage 'http://rtomayko.github.com/shocco/'
url 'https://github.com/rtomayko/shocco/tarball/a1ee000613946335f54a8f236ee9fe6f7f22bcb8'
sha1 '8feb66dad3c957fabdfa368e710dfb2a078a732f'
depends_on MarkdownProvider.new
def install
Pygments.new.brew { libexec.install 'pygmentize','pygments' }
# Brew along with Pygments
system "./configure", "PYGMENTIZE=#{libexec}/pygmentize", "--prefix=#{prefix}"
# Shocco's Makefile does not combine the make and make install steps.
system "make"
system "make install"
end
def caveats
<<-EOS.undent
You may also want to install browser:
brew install browser
shocco `which shocco` | browser
EOS
end
end