2010-04-28 01:43:16 +00:00
|
|
|
require 'formula'
|
|
|
|
|
|
|
|
# Include a private copy of this Python app
|
|
|
|
# so we don't have to worry about clashing dependencies.
|
2011-03-10 05:11:03 +00:00
|
|
|
class Pygments < Formula
|
2010-04-28 01:43:16 +00:00
|
|
|
homepage 'http://pygments.org/'
|
2012-12-21 22:41:03 +00:00
|
|
|
url 'http://pypi.python.org/packages/source/P/Pygments/Pygments-1.5.tar.gz'
|
|
|
|
sha1 '4fbd937fd5cebc79fa4b26d4cce0868c4eec5ec5'
|
2010-04-28 01:43:16 +00:00
|
|
|
end
|
|
|
|
|
shocco: move hard markdown dep to Requirement
schocco requires a `markdown` command. The previous version of the formula
checked for the markdown formula. However, there's an edge case involved.
The discount formula installs a command `markdown` which can also satisfy
shocco's requirement. (And I would add that discount's implementation of
the `markdown` command is far superior to markdown's, though I grant that's
debatable.)
This update checks for any `markdown`-providing install, and if one is not
found tells the user what options are available.
I think this is better than just installing the markdown formula. First, if
discount is already installed, then when `brew` tries to install markdown,
the linking stage will fail. Although the shocco install as a whole will go
through, the failure message about linking markdown is likely to confuse
the user. Also, if discount is already installed, that problably means the
user doesn't want the markdown formula. Finally, this way of handling
things is more easily extended if other formulas become available which
provide a valid `markdown` command.
Closes Homebrew/homebrew#16740.
Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
2012-12-25 11:59:08 +00:00
|
|
|
class MarkdownProvider < Requirement
|
2013-01-19 01:30:43 +00:00
|
|
|
fatal true
|
2013-05-10 12:35:38 +00:00
|
|
|
default_formula 'markdown'
|
2013-01-19 01:30:43 +00:00
|
|
|
|
2013-01-20 02:45:59 +00:00
|
|
|
satisfy { which 'markdown' }
|
|
|
|
|
shocco: move hard markdown dep to Requirement
schocco requires a `markdown` command. The previous version of the formula
checked for the markdown formula. However, there's an edge case involved.
The discount formula installs a command `markdown` which can also satisfy
shocco's requirement. (And I would add that discount's implementation of
the `markdown` command is far superior to markdown's, though I grant that's
debatable.)
This update checks for any `markdown`-providing install, and if one is not
found tells the user what options are available.
I think this is better than just installing the markdown formula. First, if
discount is already installed, then when `brew` tries to install markdown,
the linking stage will fail. Although the shocco install as a whole will go
through, the failure message about linking markdown is likely to confuse
the user. Also, if discount is already installed, that problably means the
user doesn't want the markdown formula. Finally, this way of handling
things is more easily extended if other formulas become available which
provide a valid `markdown` command.
Closes Homebrew/homebrew#16740.
Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
2012-12-25 11:59:08 +00:00
|
|
|
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
|
|
|
|
|
2011-03-10 05:11:03 +00:00
|
|
|
class Shocco < Formula
|
2013-04-07 02:34:41 +00:00
|
|
|
homepage 'http://rtomayko.github.io/shocco/'
|
2013-03-15 22:47:15 +00:00
|
|
|
url 'https://github.com/rtomayko/shocco/archive/1.0.tar.gz'
|
|
|
|
sha1 'e29d58fb8109040b4fb4a816f330bb1c67064f6d'
|
2010-04-28 01:43:16 +00:00
|
|
|
|
2013-01-27 22:48:56 +00:00
|
|
|
depends_on MarkdownProvider
|
2013-01-21 09:33:56 +00:00
|
|
|
depends_on :python
|
2010-04-28 01:43:16 +00:00
|
|
|
|
2013-03-16 13:40:12 +00:00
|
|
|
def patches
|
|
|
|
DATA
|
|
|
|
end
|
|
|
|
|
2010-04-28 01:43:16 +00:00
|
|
|
def install
|
2012-02-12 19:16:20 +00:00
|
|
|
Pygments.new.brew { libexec.install 'pygmentize','pygments' }
|
2010-04-28 01:43:16 +00:00
|
|
|
|
2012-12-21 22:41:03 +00:00
|
|
|
# Brew along with Pygments
|
2013-03-16 13:40:12 +00:00
|
|
|
system "./configure",
|
|
|
|
"PYGMENTIZE=#{libexec}/pygmentize",
|
|
|
|
"MARKDOWN=#{HOMEBREW_PREFIX}/bin/markdown",
|
|
|
|
"--prefix=#{prefix}"
|
2010-04-28 01:43:16 +00:00
|
|
|
|
2012-12-21 22:41:03 +00:00
|
|
|
# Shocco's Makefile does not combine the make and make install steps.
|
|
|
|
system "make"
|
|
|
|
system "make install"
|
2010-04-28 01:43:16 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
def caveats
|
|
|
|
<<-EOS.undent
|
|
|
|
You may also want to install browser:
|
|
|
|
brew install browser
|
|
|
|
shocco `which shocco` | browser
|
|
|
|
EOS
|
|
|
|
end
|
|
|
|
end
|
2013-03-16 13:40:12 +00:00
|
|
|
|
|
|
|
__END__
|
|
|
|
diff --git a/configure b/configure
|
|
|
|
index 2262477..bf0af62 100755
|
|
|
|
--- a/configure
|
|
|
|
+++ b/configure
|
|
|
|
@@ -193,7 +193,7 @@ else stdutil xdg-open XDG_OPEN xdg-open
|
|
|
|
fi
|
|
|
|
|
|
|
|
stdutil ronn RONN ronn
|
|
|
|
-stdutil markdown MARKDOWN markdown Markdown.pl
|
|
|
|
+stdutil markdown MARKDOWN markdown Markdown.pl $MARKDOWN
|
|
|
|
stdutil perl PERL perl
|
|
|
|
stdutil pygmentize PYGMENTIZE pygmentize $PYGMENTIZE
|