homebrew-core/Formula/pyside.rb
2015-09-27 21:16:43 -07:00

80 lines
2.7 KiB
Ruby

class Pyside < Formula
desc "Python bindings for Qt"
homepage "https://wiki.qt.io/PySide"
url "https://download.qt.io/official_releases/pyside/pyside-qt4.8+1.2.2.tar.bz2"
mirror "https://distfiles.macports.org/py-pyside/pyside-qt4.8+1.2.2.tar.bz2"
sha256 "a1a9df746378efe52211f1a229f77571d1306fb72830bbf73f0d512ed9856ae1"
revision 1
head "https://github.com/PySide/PySide.git"
bottle do
sha256 "d1f7a38b75e85ebdbb73d15ecd4b2154b236c80a790f021c9f70f95bc839d926" => :el_capitan
sha256 "8c2463514cd2133b9237143ceb2d73e64f96ff162c5c302b28f894132ad88490" => :yosemite
sha256 "fbc427b84b145fe0fa0a2a52e246f673e763da2b1eeec8deda872571602bb7b1" => :mavericks
end
# don't use depends_on :python because then bottles install Homebrew's python
option "without-python", "Build without python 2 support"
depends_on :python => :recommended if MacOS.version <= :snow_leopard
depends_on :python3 => :optional
option "without-docs", "Skip building documentation"
depends_on "cmake" => :build
depends_on "qt"
if build.with? "python3"
depends_on "shiboken" => "with-python3"
else
depends_on "shiboken"
end
resource "sphinx" do
url "https://pypi.python.org/packages/source/S/Sphinx/Sphinx-1.2.3.tar.gz"
sha256 "94933b64e2fe0807da0612c574a021c0dac28c7bd3c4a23723ae5a39ea8f3d04"
end
def install
if build.with? "docs"
ENV.prepend_create_path "PYTHONPATH", buildpath+"sphinx/lib/python2.7/site-packages"
resources.each do |r|
r.stage do
system "python", *Language::Python.setup_install_args(buildpath/"sphinx")
end
end
ENV.prepend_path "PATH", (buildpath/"sphinx/bin")
else
rm buildpath/"doc/CMakeLists.txt"
end
# Add out of tree build because one of its deps, shiboken, itself needs an
# out of tree build in shiboken.rb.
Language::Python.each_python(build) do |python, version|
abi = `#{python} -c 'import sysconfig as sc; print(sc.get_config_var("SOABI"))'`.strip
python_suffix = python == "python" ? "-python2.7" : ".#{abi}"
mkdir "macbuild#{version}" do
qt = Formula["qt"].opt_prefix
args = std_cmake_args + %W[
-DSITE_PACKAGE=#{lib}/python#{version}/site-packages
-DALTERNATIVE_QT_INCLUDE_DIR=#{qt}/include
-DQT_SRC_DIR=#{qt}/src
-DPYTHON_SUFFIX=#{python_suffix}
]
args << ".."
system "cmake", *args
system "make"
system "make", "install"
end
end
inreplace include/"PySide/pyside_global.h", Formula["qt"].prefix, Formula["qt"].opt_prefix
end
test do
Language::Python.each_python(build) do |python, _version|
system python, "-c", "from PySide import QtCore"
end
end
end