diff options
Diffstat (limited to 'Library/Formula/pyside.rb')
| -rw-r--r-- | Library/Formula/pyside.rb | 59 |
1 files changed, 28 insertions, 31 deletions
diff --git a/Library/Formula/pyside.rb b/Library/Formula/pyside.rb index 25b8f7c1e..87d3b8d2c 100644 --- a/Library/Formula/pyside.rb +++ b/Library/Formula/pyside.rb @@ -7,42 +7,39 @@ class Pyside < Formula sha1 'c0119775f2500e48efebdd50b7be7543e71b2c24' depends_on 'cmake' => :build - depends_on 'shiboken' - - def which_python - "python" + `python -c 'import sys;print(sys.version[:3])'`.strip - end + depends_on :python => :recommended + depends_on :python3 => :optional + depends_on 'shiboken' => '--with-python3' if build.with? 'python3' + depends_on 'qt' def install - # The build will be unable to find Qt headers buried inside frameworks - # unless the folder containing those frameworks is added to the compiler - # search path. - qt = Formula.factory 'qt' - ENV.append_to_cflags "-F#{qt.frameworks}" - - # Also need `ALTERNATIVE_QT_INCLUDE_DIR` to prevent "missing file" errors. - # Add out of tree build because one of its deps, shiboken, itself needs an - # out of tree build in shiboken.rb. - args = std_cmake_args + %W[ - -DALTERNATIVE_QT_INCLUDE_DIR=#{qt.frameworks} - -DSITE_PACKAGE=lib/#{which_python}/site-packages - -DBUILD_TESTS=NO - .. - ] - mkdir 'macbuild' do - system 'cmake', *args - system 'make' - system 'make install' + python do + # Add out of tree build because one of its deps, shiboken, itself needs an + # out of tree build in shiboken.rb. + mkdir "macbuild#{python.if3then3}" do + args = std_cmake_args + %W[ + -DSITE_PACKAGE=#{lib}/#{python.xy}/site-packages + -DALTERNATIVE_QT_INCLUDE_DIR=#{Formula.factory('qt').frameworks} + -DBUILD_TESTS=NO + .. + ] + # The next two lines are because shiboken needs them + args << "-DPYTHON_SUFFIX='-python2.7'" if python2 + args << "-DPYTHON_SUFFIX='.cpython-33m'" if python3 + system 'cmake', *args + system 'make' + system 'make install' + # Todo: How to deal with pyside.pc file? It doesn't support 2.x and 3.x! + end end end - def caveats - <<-EOS -PySide Python modules have been linked to: - #{HOMEBREW_PREFIX}/lib/#{which_python}/site-packages + def test + system 'python', '-c', "from PySide import QtCore" if Tab.for_formula('Pyside').with? 'python' + system 'python3', '-c', "from PySide import QtCore" if Tab.for_formula('Pyside').with? 'python3' + end -Make sure this folder is on your PYTHONPATH. For PySide development tools, -install the `pyside-tools` formula. - EOS + def caveats + python.standard_caveats if python end end |
