homebrew-core/Formula/bash-completion.rb
Jack Nagel d96187e1a3 bash-completion: fix-up HEAD install
The bash-completion that is installed from head has an entirely new
directory structure. I believe it has some measure of backwards
compatibility in that it will find completion scripts in the old
location, but users still have to source a different file to get it to
actually work, so the caveats have been updated to reflect that.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-09-02 15:15:46 -05:00

64 lines
2.2 KiB
Ruby

require 'formula'
class BashCompletion < Formula
url 'http://bash-completion.alioth.debian.org/files/bash-completion-1.3.tar.bz2'
homepage 'http://bash-completion.alioth.debian.org/'
md5 'a1262659b4bbf44dc9e59d034de505ec'
head 'git://git.debian.org/git/bash-completion/bash-completion.git'
def install
inreplace "bash_completion" do |s|
s.gsub! '/etc/bash_completion', "#{etc}/bash_completion"
s.gsub! 'readlink -f', "readlink"
end
if ARGV.build_head?
system "aclocal"
system "autoconf"
system "automake --add-missing"
system "./configure", "--prefix=#{prefix}"
inreplace 'Makefile' do |s|
s.change_make_var! "pkgconfigdir", "#{lib}/pkgconfig"
end
else
system "./configure", "--prefix=#{prefix}"
end
system "make install"
# Cause the build to fails if you haven't already installed git or something else that
# creates a bash_completion.d
# ln_s "#{HOMEBREW_PREFIX}/Library/Contributions/brew_bash_completion.sh", "#{etc}/bash_completion.d" unless
# File.exists? "#{etc}/bash_completion.d/brew_bash_completion.sh" or File.symlink? "#{etc}/bash_completion.d/brew_bash_completion.sh"
end
def caveats
if ARGV.build_head?
<<-EOS.undent
Add the following lines to your ~/.bash_profile file:
if [ -f `brew --prefix`/share/bash-completion/bash_completion ]; then
. `brew --prefix`/share/bash-completion/bash_completion
fi
Some formula install their own completion scripts. To use them with the
HEAD version of bash-completion, link them into
#{HOMEBREW_PREFIX}/share/bash-completion/completions
To install Homebrew's own completion script:
ln -s "#{HOMEBREW_PREFIX}/Library/Contributions/brew_bash_completion.sh" "#{HOMEBREW_PREFIX}/share/bash-completion/completions"
EOS
else
<<-EOS.undent
Add the following lines to your ~/.bash_profile file:
if [ -f `brew --prefix`/etc/bash_completion ]; then
. `brew --prefix`/etc/bash_completion
fi
To install Homebrew's own completion script:
ln -s "#{HOMEBREW_PREFIX}/Library/Contributions/brew_bash_completion.sh" "#{etc}/bash_completion.d"
EOS
end
end
end