diff options
| author | Mike McQuaid | 2013-02-08 08:55:42 -0800 | 
|---|---|---|
| committer | Mike McQuaid | 2013-02-21 21:42:18 +0000 | 
| commit | ba2b2356115c0106dc5ab7c555ed4e0f2d054017 (patch) | |
| tree | 5705930d4364a05c99d5eaa37bc89317d8971e33 | |
| parent | 8b9d620bd7cfea905d598fd2a84782958a996246 (diff) | |
| download | homebrew-ba2b2356115c0106dc5ab7c555ed4e0f2d054017.tar.bz2 | |
brew: use a shell wrapper script for brew
This reverts commit dfd4dd12a41e1697ee9d5feac12cc1ea7c3a590e.
Fixes the problems from #17683 and #17685.
| -rwxr-xr-x | Library/brew.rb | 3 | ||||
| -rwxr-xr-x | bin/brew | 24 | 
2 files changed, 26 insertions, 1 deletions
| diff --git a/Library/brew.rb b/Library/brew.rb index ea46c9b07..e532ca829 100755 --- a/Library/brew.rb +++ b/Library/brew.rb @@ -3,7 +3,8 @@  std_trap = trap("INT") { exit! 130 } # no backtrace thanks -HOMEBREW_BREW_FILE = ENV['HOMEBREW_BREW_FILE'] = File.expand_path(__FILE__) +HOMEBREW_BREW_FILE = ENV['HOMEBREW_BREW_FILE'] +HOMEBREW_BREW_FILE = ENV['HOMEBREW_BREW_FILE'] ||= File.expand_path(__FILE__)  if ARGV == %w{--prefix}    puts File.dirname(File.dirname(HOMEBREW_BREW_FILE)) diff --git a/bin/brew b/bin/brew new file mode 100755 index 000000000..027640677 --- /dev/null +++ b/bin/brew @@ -0,0 +1,24 @@ +#!/bin/sh +BREW_FILE_DIRECTORY=$(dirname "$0") +BREW_FILE_DIRECTORY=$(cd "$BREW_FILE_DIRECTORY" && pwd -P) + +BREW_FILENAME=$(basename "$0") +export HOMEBREW_BREW_FILE="$BREW_FILE_DIRECTORY/$BREW_FILENAME" + +BREW_SYMLINK=$(readlink $0) +if [ -n "$BREW_SYMLINK" ] +then +	BREW_SYMLINK_DIRECTORY=$(dirname "$BREW_SYMLINK") +	BREW_FILE_DIRECTORY=$(cd "$BREW_FILE_DIRECTORY" && +	                      cd "$BREW_SYMLINK_DIRECTORY" && pwd -P) +fi + +BREW_LIBRARY_DIRECTORY=$(cd "$BREW_FILE_DIRECTORY"/../Library && pwd -P) + +BREW_SYSTEM=$(uname -s | tr "[:upper:]" "[:lower:]") +if [ "$BREW_SYSTEM" = "darwin" ] +then +	exec "$BREW_LIBRARY_DIRECTORY/brew.rb" "$@" +else +	exec ruby -W0 "$BREW_LIBRARY_DIRECTORY/brew.rb" "$@" +fi | 
