Skip to content

Commit

Permalink
pygobject3: use Language::Python.
Browse files Browse the repository at this point in the history
  • Loading branch information
MikeMcQuaid committed Mar 12, 2014
1 parent eae8842 commit ab1ba4e
Showing 1 changed file with 3 additions and 43 deletions.
46 changes: 3 additions & 43 deletions Library/Formula/pygobject3.rb
@@ -1,29 +1,5 @@
require 'formula'

class PythonEnvironment < Requirement
fatal true

def error_message
if !Formula["python"].installed? && ARGV.include?("--with-python3")
error_message = <<-EOS.undent
You cannot use system Python 2 and Homebrew's Python 3
simultaneously.
Either `brew install python` or use `--without-python3`.
EOS
elsif ARGV.include?("--without-python") && !ARGV.include?("--with-python3")
error_message = " --with-python3 must be specified when using --without-python"
end
end

satisfy do
error_message == nil
end

def message
error_message
end
end

class Pygobject3 < Formula
homepage 'http://live.gnome.org/PyGObject'
url 'http://ftp.gnome.org/pub/GNOME/sources/pygobject/3.10/pygobject-3.10.2.tar.xz'
Expand Down Expand Up @@ -53,18 +29,6 @@ class Pygobject3 < Formula

option :universal

depends_on PythonEnvironment

def pythons
pythons = []
["python", "python3"].each do |python|
next if build.without? python
version = /\d\.\d/.match `#{python} --version 2>&1`
pythons << [python, version]
end
pythons
end

def patches
"https://gist.github.com/krrk/6439665/raw/a527e14cd3a77c19b089f27bea884ce46c988f55/pygobject-fix-module.patch" if build.with? 'tests'
end
Expand All @@ -79,12 +43,12 @@ def install
system "./autogen.sh"
end

pythons.each do |python, version|
Language::Python.each_python(build) do |python, version|
ENV["PYTHON"] = "#{python}" if Formula[python].installed?
system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}"
system "make", "install"
system "make", "check" if build.with? 'tests'
system "make", "clean" if pythons.length > 1
system "make", "clean"
end
end

Expand All @@ -93,11 +57,7 @@ def install
import gi
assert("__init__" in gi.__file__)
EOS
pythons.each do |python, version|
unless Formula[python].installed?
ENV["PYTHONPATH"] = HOMEBREW_PREFIX/"lib/python#{version}/site-packages"
ENV.append_path "PYTHONPATH", "#{opt_lib}/python#{version}/site-packages"
end
Language::Python.each_python(build) do |python, version|
system python, "test.py"
end
end
Expand Down

0 comments on commit ab1ba4e

Please sign in to comment.