aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Howell2009-06-26 13:04:22 +0100
committerMax Howell2009-06-26 13:04:22 +0100
commitb1499e28c305cb18abe4a0426669c70350db7c78 (patch)
tree3834e3c41d6fc53c5a02f1d2eb09acb81874ce67
parent7dfe55d1edef36922a0ee0c06b059df37fcc8e44 (diff)
downloadhomebrew-b1499e28c305cb18abe4a0426669c70350db7c78.tar.bz2
bew install --interactive now works
Also mkpath only in normal install route, thus we don't "create" a keg when exiting --interactive
-rwxr-xr-xbin/brew12
1 files changed, 9 insertions, 3 deletions
diff --git a/bin/brew b/bin/brew
index b38d96ee3..89193a59f 100755
--- a/bin/brew
+++ b/bin/brew
@@ -232,16 +232,22 @@ begin
o=__obj(name)
begin
raise "#{o.prefix} already exists!" if o.prefix.exist?
- o.prefix.mkpath
o.brew do
if ARGV.include? '--interactive'
ohai "Entering interactive mode, type `exit' to return to this shell"
- exec "bash" # exec() because system() didn't work :(
+ puts "Install to this prefix: #{o.prefix}"
+ pid=fork
+ if pid.nil?
+ exec 'bash'
+ else
+ Process.wait pid
+ end
elsif ARGV.include? '--help'
ohai './configure --help'
puts `./configure --help`
exit
else
+ o.prefix.mkpath
o.install
['README','ChangeLog','COPYING','COPYRIGHT','AUTHORS'].each do |file|
FileUtils.cp file, o.prefix if File.file? file
@@ -277,7 +283,7 @@ begin
version=extract_version File.basename(url, Pathname.new(url).extname)
/(.*?)[-_.]?#{version}/.match File.basename(url)
- raise "Couldn't parse name from #{url}" if $1.nil?
+ raise "Couldn't parse name from #{url}" if $1.nil? or $1.empty?
path=$formula+($1.downcase+'.rb')
raise "#{path} already exists!" if File.exist? path