Extract "brew_install".
This was supposed to go in with the "brew-upgrade" external command, but must have been lost in the merge.
This commit is contained in:
parent
6fbf125970
commit
cdb5b2e0d5
@ -418,6 +418,51 @@ def search_brews text
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def brew_install
|
||||||
|
require 'formula_installer'
|
||||||
|
require 'hardware'
|
||||||
|
|
||||||
|
############################################################ sanity checks
|
||||||
|
case Hardware.cpu_type when :ppc, :dunno
|
||||||
|
abort "Sorry, Homebrew does not support your computer's CPU architecture.\n"+
|
||||||
|
"For PPC support, see: http://github.com/sceaga/homebrew/tree/powerpc"
|
||||||
|
end
|
||||||
|
|
||||||
|
raise "Cannot write to #{HOMEBREW_CELLAR}" if HOMEBREW_CELLAR.exist? and not HOMEBREW_CELLAR.writable?
|
||||||
|
raise "Cannot write to #{HOMEBREW_PREFIX}" unless HOMEBREW_PREFIX.writable?
|
||||||
|
|
||||||
|
################################################################# warnings
|
||||||
|
begin
|
||||||
|
if MACOS_VERSION >= 10.6
|
||||||
|
opoo "You should upgrade to Xcode 3.2.1" if llvm_build < RECOMMENDED_LLVM
|
||||||
|
else
|
||||||
|
opoo "You should upgrade to Xcode 3.1.4" if (gcc_40_build < RECOMMENDED_GCC_40) or (gcc_42_build < RECOMMENDED_GCC_42)
|
||||||
|
end
|
||||||
|
rescue
|
||||||
|
# the reason we don't abort is some formula don't require Xcode
|
||||||
|
# TODO allow formula to declare themselves as "not needing Xcode"
|
||||||
|
opoo "Xcode is not installed! Builds may fail!"
|
||||||
|
end
|
||||||
|
|
||||||
|
if macports_or_fink_installed?
|
||||||
|
opoo "It appears you have Macports or Fink installed"
|
||||||
|
puts "Although, unlikely, this can break builds or cause obscure runtime issues."
|
||||||
|
puts "If you experience problems try uninstalling these tools."
|
||||||
|
end
|
||||||
|
|
||||||
|
################################################################# install!
|
||||||
|
installer = FormulaInstaller.new
|
||||||
|
installer.install_deps = !ARGV.include?('--ignore-dependencies')
|
||||||
|
|
||||||
|
ARGV.formulae.each do |f|
|
||||||
|
if not f.installed? or ARGV.force?
|
||||||
|
installer.install f
|
||||||
|
else
|
||||||
|
puts "Formula already installed: #{f.prefix}"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
########################################################## class PrettyListing
|
########################################################## class PrettyListing
|
||||||
class PrettyListing
|
class PrettyListing
|
||||||
def initialize path
|
def initialize path
|
||||||
|
44
bin/brew
44
bin/brew
@ -259,49 +259,7 @@ begin
|
|||||||
|
|
||||||
when 'install'
|
when 'install'
|
||||||
check_for_blacklisted_formula(ARGV.named)
|
check_for_blacklisted_formula(ARGV.named)
|
||||||
|
brew_install
|
||||||
require 'formula_installer'
|
|
||||||
require 'hardware'
|
|
||||||
|
|
||||||
############################################################ sanity checks
|
|
||||||
case Hardware.cpu_type when :ppc, :dunno
|
|
||||||
abort "Sorry, Homebrew does not support your computer's CPU architecture.\n"+
|
|
||||||
"For PPC support, see: http://github.com/sceaga/homebrew/tree/powerpc"
|
|
||||||
end
|
|
||||||
|
|
||||||
raise "Cannot write to #{HOMEBREW_CELLAR}" if HOMEBREW_CELLAR.exist? and not HOMEBREW_CELLAR.writable?
|
|
||||||
raise "Cannot write to #{HOMEBREW_PREFIX}" unless HOMEBREW_PREFIX.writable?
|
|
||||||
|
|
||||||
################################################################# warnings
|
|
||||||
begin
|
|
||||||
if MACOS_VERSION >= 10.6
|
|
||||||
opoo "You should upgrade to Xcode 3.2.1" if llvm_build < RECOMMENDED_LLVM
|
|
||||||
else
|
|
||||||
opoo "You should upgrade to Xcode 3.1.4" if (gcc_40_build < RECOMMENDED_GCC_40) or (gcc_42_build < RECOMMENDED_GCC_42)
|
|
||||||
end
|
|
||||||
rescue
|
|
||||||
# the reason we don't abort is some formula don't require Xcode
|
|
||||||
# TODO allow formula to declare themselves as "not needing Xcode"
|
|
||||||
opoo "Xcode is not installed! Builds may fail!"
|
|
||||||
end
|
|
||||||
|
|
||||||
if macports_or_fink_installed?
|
|
||||||
opoo "It appears you have Macports or Fink installed"
|
|
||||||
puts "Although, unlikely, this can break builds or cause obscure runtime issues."
|
|
||||||
puts "If you experience problems try uninstalling these tools."
|
|
||||||
end
|
|
||||||
|
|
||||||
################################################################# install!
|
|
||||||
installer = FormulaInstaller.new
|
|
||||||
installer.install_deps = !ARGV.include?('--ignore-dependencies')
|
|
||||||
|
|
||||||
ARGV.formulae.each do |f|
|
|
||||||
if not f.installed? or ARGV.force?
|
|
||||||
installer.install f
|
|
||||||
else
|
|
||||||
puts "Formula already installed: #{f.prefix}"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
when 'log'
|
when 'log'
|
||||||
Dir.chdir HOMEBREW_REPOSITORY
|
Dir.chdir HOMEBREW_REPOSITORY
|
||||||
|
Loading…
x
Reference in New Issue
Block a user