aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Howell2009-06-26 13:04:22 +0100
committerMax Howell2009-06-26 13:04:22 +0100
commit67d418f71d1dffd9f808553dd2621b6a28a3112a (patch)
tree2ad03a89ce8d6a5c714983b0c6e1a95afd8b47fa
parentbcc7c19e8527538bd5a2f8dfc5514335443dbbe9 (diff)
downloadbrew-67d418f71d1dffd9f808553dd2621b6a28a3112a.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