diff options
| -rw-r--r-- | Library/Formula/mercurial.rb | 55 | ||||
| -rw-r--r-- | Library/Homebrew/download_strategy.rb | 1 |
2 files changed, 22 insertions, 34 deletions
diff --git a/Library/Formula/mercurial.rb b/Library/Formula/mercurial.rb index 10d482970..2254d7233 100644 --- a/Library/Formula/mercurial.rb +++ b/Library/Formula/mercurial.rb @@ -10,63 +10,50 @@ class Mercurial < Formula depends_on :python # its written in Python, so this is a hard dep depends_on 'docutils' => :python if build.head? or build.include? 'doc' - option 'doc', "Build the documentation" - def install - # Don't add compiler specific flags so we can build against - # System-provided Python. - ENV.minimal_optimization - - # install the completion script - bash_completion.install 'contrib/bash_completion' => 'hg-completion.bash' - python do + # Inside this python do block, the PYTHONPATH (and more) is alreay set up if python.from_osx? && !MacOS::CLT.installed? # Help castrated system python on Xcode find the Python.h: # Setting CFLAGS does not work :-( inreplace 'setup.py', 'get_python_inc()', "'#{python.incdir}'" end - system "make doc" if build.head? or build.include? 'doc' - system "make local" - - libexec.install 'hg', 'mercurial', 'hgext' - # If we get it working with python3, we would need the next line instead: - #['hg', 'mercurial', 'hgext'].each{ |f| libexec.install "#{f}#{python.if3then3}" } - # Symlink the hg binary into bin - bin.install_symlink libexec/"hg#{python.if3then3}" + # Man pages come pre-built in source releases + system "make doc" if build.head? or build.include? 'doc' + system "make", "PREFIX=#{prefix}", "install" # Install some contribs - bin.install "contrib/hgk#{python.if3then3}" + bin.install "contrib/hgk" # Install man pages man1.install 'doc/hg.1' man5.install 'doc/hgignore.5', 'doc/hgrc.5' - - system 'make clean' end + # install the completion scripts + bash_completion.install 'contrib/bash_completion' => 'hg-completion.bash' + zsh_completion.install 'contrib/zsh_completion' => '_hg' end def caveats - s = '' - - s += <<-EOS.undent - Extensions have been installed to: - #{opt_prefix}/libexec/hgext + s = <<-EOS.undent + In order to use the graphical `hgk`, you may have to set: + export HG=hg + and add to your ~/.hgrc file: + [extensions] + hgk= EOS if build.head? then s += <<-EOS.undent - - Mercurial is required to fetch its own repository, so there are now two - installations of mercurial on this machine. If the previous installation - was done via Homebrew, the old version may need to be cleaned up and new - version linked: - - brew cleanup mercurial && brew link mercurial + To install the --HEAD version of mercurial, you have to: + 1. `brew install mercurial` # so brew can use this to fetch sources! + 2. `brew unlink mercurial` + 3. `brew install mercurial --HEAD` + 4. `brew cleanup mercurial` # to remove the older non-HEAD version EOS end - - return s + s += python.standard_caveats if python + s end def test diff --git a/Library/Homebrew/download_strategy.rb b/Library/Homebrew/download_strategy.rb index 72a0652fb..90fa724dc 100644 --- a/Library/Homebrew/download_strategy.rb +++ b/Library/Homebrew/download_strategy.rb @@ -552,6 +552,7 @@ class MercurialDownloadStrategy < AbstractDownloadStrategy @path ||= %W[ #{which("hg")} #{HOMEBREW_PREFIX}/bin/hg + #{Formula.factory('mercurial').opt_prefix}/bin/hg #{HOMEBREW_PREFIX}/share/python/hg ].find { |p| File.executable? p } end |
