diff options
| author | Adam Vandenberg | 2010-06-23 12:59:02 -0700 |
|---|---|---|
| committer | Adam Vandenberg | 2010-06-23 12:59:02 -0700 |
| commit | cdb5b2e0d5ea018c406d036ff7b27f123dba74ae (patch) | |
| tree | a2e1809e3e0832e4aee17490ec217d00e011bdc6 | |
| parent | 6fbf1259707a359111ddf2478dfe3a62535744e0 (diff) | |
| download | brew-cdb5b2e0d5ea018c406d036ff7b27f123dba74ae.tar.bz2 | |
Extract "brew_install".
This was supposed to go in with the "brew-upgrade" external command,
but must have been lost in the merge.
| -rw-r--r-- | Library/Homebrew/brew.h.rb | 45 | ||||
| -rwxr-xr-x | bin/brew | 44 |
2 files changed, 46 insertions, 43 deletions
diff --git a/Library/Homebrew/brew.h.rb b/Library/Homebrew/brew.h.rb index c660b1886..3f30ca6e8 100644 --- a/Library/Homebrew/brew.h.rb +++ b/Library/Homebrew/brew.h.rb @@ -418,6 +418,51 @@ def search_brews text 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 def initialize path @@ -259,49 +259,7 @@ begin when 'install' check_for_blacklisted_formula(ARGV.named) - - 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 + brew_install when 'log' Dir.chdir HOMEBREW_REPOSITORY |
