diff options
| author | Samuel John | 2013-06-04 16:59:15 +0200 |
|---|---|---|
| committer | Samuel John | 2013-06-04 17:05:02 +0200 |
| commit | f1a4dad61fd706f95d3280dc0b2efade296f0bb5 (patch) | |
| tree | 1914e8780317aae187a42b5d8607499e9d3aff0e /Library/Formula | |
| parent | 09d5f8abd69779d094df28fd4370315dac6b0817 (diff) | |
| download | homebrew-f1a4dad61fd706f95d3280dc0b2efade296f0bb5.tar.bz2 | |
mercurial: Install python bindings properly
Also allow to build with --HEAD by making brew's
download strategy aware of a brewed but unlined hg.
Adapted the caveats so that the procedure to brew
hg --HEAD is clear.
Mention how to config hgk in the caveats.
Diffstat (limited to 'Library/Formula')
| -rw-r--r-- | Library/Formula/mercurial.rb | 55 |
1 files changed, 21 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 |
