diff options
Diffstat (limited to 'Library/Homebrew/language/python.rb')
| -rw-r--r-- | Library/Homebrew/language/python.rb | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Library/Homebrew/language/python.rb b/Library/Homebrew/language/python.rb new file mode 100644 index 000000000..c35dde488 --- /dev/null +++ b/Library/Homebrew/language/python.rb @@ -0,0 +1,26 @@ +require "utils.rb" + +module Language + module Python + def self.major_minor_version python + version = /\d\.\d/.match `#{python} --version 2>&1` + return unless version + Version.new(version.to_s) + end + + def self.each_python build, &block + original_pythonpath = ENV["PYTHONPATH"] + ["python", "python3"].each do |python| + next if build.without? python + version = self.major_minor_version python + ENV["PYTHONPATH"] = if Formula.factory(python).installed? + nil + else + "#{HOMEBREW_PREFIX}/lib/python#{version}/site-packages" + end + block.call python, version if block + end + ENV["PYTHONPATH"] = original_pythonpath + end + end +end |
