| 
									
										
										
										
											2009-10-15 12:36:09 +01:00
										 |  |  | require 'extend/pathname' | 
					
						
							|  |  |  | require 'extend/ARGV' | 
					
						
							| 
									
										
										
										
											2010-02-27 17:26:27 +00:00
										 |  |  | require 'extend/string' | 
					
						
							| 
									
										
										
										
											2009-09-04 15:28:18 +01:00
										 |  |  | require 'utils' | 
					
						
							| 
									
										
										
										
											2010-09-11 20:22:54 +01:00
										 |  |  | require 'exceptions' | 
					
						
							|  |  |  | require 'compatibility' | 
					
						
							| 
									
										
										
										
											2009-09-04 15:28:18 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-10-15 12:36:09 +01:00
										 |  |  | ARGV.extend(HomebrewArgvExtension) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-12-31 09:11:30 -08:00
										 |  |  | HOMEBREW_VERSION = '0.8' | 
					
						
							| 
									
										
										
										
											2010-04-06 08:29:33 -07:00
										 |  |  | HOMEBREW_WWW = 'http://mxcl.github.com/homebrew/' | 
					
						
							| 
									
										
										
										
											2009-10-15 12:36:09 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-11-09 13:00:33 +00:00
										 |  |  | HOMEBREW_CACHE = if Process.uid == 0
 | 
					
						
							| 
									
										
										
										
											2009-09-04 15:28:18 +01:00
										 |  |  |   # technically this is not the correct place, this cache is for *all users* | 
					
						
							|  |  |  |   # so in that case, maybe we should always use it, root or not? | 
					
						
							| 
									
										
										
										
											2010-11-09 13:00:33 +00:00
										 |  |  |   Pathname.new("/Library/Caches/Homebrew") | 
					
						
							| 
									
										
										
										
											2009-09-04 15:28:18 +01:00
										 |  |  | else | 
					
						
							| 
									
										
										
										
											2010-11-09 13:00:33 +00:00
										 |  |  |   Pathname.new("~/Library/Caches/Homebrew").expand_path | 
					
						
							| 
									
										
										
										
											2009-09-04 15:28:18 +01:00
										 |  |  | end | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-11-07 18:09:48 +00:00
										 |  |  | if not defined? HOMEBREW_BREW_FILE | 
					
						
							| 
									
										
										
										
											2009-11-18 15:39:51 -08:00
										 |  |  |   HOMEBREW_BREW_FILE = ENV['HOMEBREW_BREW_FILE'] || `which brew`.chomp | 
					
						
							| 
									
										
										
										
											2009-11-07 18:09:48 +00:00
										 |  |  | end | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-11-07 18:08:26 +00:00
										 |  |  | HOMEBREW_PREFIX = Pathname.new(HOMEBREW_BREW_FILE).dirname.parent # Where we link under | 
					
						
							|  |  |  | HOMEBREW_REPOSITORY = Pathname.new(HOMEBREW_BREW_FILE).realpath.dirname.parent # Where .git is found | 
					
						
							| 
									
										
										
										
											2009-10-27 13:27:36 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-06-29 13:53:57 -07:00
										 |  |  | # Where we store built products; /usr/local/Cellar if it exists, | 
					
						
							|  |  |  | # otherwise a Cellar relative to the Repository. | 
					
						
							| 
									
										
										
										
											2010-12-31 11:00:15 -08:00
										 |  |  | HOMEBREW_CELLAR = if (HOMEBREW_PREFIX+"Cellar").exist? | 
					
						
							|  |  |  |   HOMEBREW_PREFIX+"Cellar" | 
					
						
							| 
									
										
										
										
											2009-10-27 13:27:36 -07:00
										 |  |  | else | 
					
						
							| 
									
										
										
										
											2010-12-31 11:00:15 -08:00
										 |  |  |   HOMEBREW_REPOSITORY+"Cellar" | 
					
						
							| 
									
										
										
										
											2009-10-27 13:27:36 -07:00
										 |  |  | end | 
					
						
							| 
									
										
										
										
											2009-09-30 02:36:21 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-09-16 11:28:50 +01:00
										 |  |  | MACOS_FULL_VERSION = `/usr/bin/sw_vers -productVersion`.chomp | 
					
						
							|  |  |  | MACOS_VERSION = /(10\.\d+)(\.\d+)?/.match(MACOS_FULL_VERSION).captures.first.to_f | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | HOMEBREW_USER_AGENT = "Homebrew #{HOMEBREW_VERSION} (Ruby #{RUBY_VERSION}-#{RUBY_PATCHLEVEL}; Mac OS X #{MACOS_FULL_VERSION})" | 
					
						
							| 
									
										
										
										
											2009-11-05 21:37:51 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-09-07 13:23:43 -07:00
										 |  |  | RECOMMENDED_LLVM = 2326
 | 
					
						
							|  |  |  | RECOMMENDED_GCC_40 = (MACOS_VERSION >= 10.6) ? 5494 : 5493
 | 
					
						
							|  |  |  | RECOMMENDED_GCC_42 = (MACOS_VERSION >= 10.6) ? 5664 : 5577
 | 
					
						
							| 
									
										
										
										
											2010-09-11 20:22:54 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | require 'fileutils' | 
					
						
							|  |  |  | module Homebrew extend self | 
					
						
							|  |  |  |   include FileUtils | 
					
						
							|  |  |  | end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | FORMULA_META_FILES = %w[README README.md ChangeLog COPYING LICENSE LICENCE COPYRIGHT AUTHORS] | 
					
						
							| 
									
										
										
										
											2011-02-13 10:10:57 +00:00
										 |  |  | PLEASE_REPORT_BUG = "#{Tty.white}Please report this bug: #{Tty.em}https://github.com/mxcl/homebrew/wiki/new-issue#{Tty.reset}" |