Review Request 119302: Make FindPyQt4 work with PyQt's new build system.
Scott Kitterman
kde at kitterman.com
Wed Jul 16 01:42:33 UTC 2014
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/119302/#review62457
-----------------------------------------------------------
This is the method used in qscintilla2's configure.py (which upstream has generally endorsed):
#! /usr/bin/python
import sys
import os
if sys.platform == 'win32':
data_dir = sys.prefix
else:
data_dir = sys.prefix + '/share'
py_sip_dir = os.path.join(data_dir, 'sip')
# Note: Set this by hand since the logic to figure out if we're using PyQt4 or
# PyQt5 isn't relevant to the question (QScintilla does do this, but it's not
# germane).
pyqt = 'PyQt4'
if pyqt is not None:
pyqt_sip_dir = os.path.join(py_sip_dir, pyqt)
else:
pyqt_sip_dir = None
print(pyqt_sip_dir)
# prints /usr/share/sip/PyQt4
We should use something similar.
- Scott Kitterman
On July 15, 2014, 9:19 p.m., Raphael Kubo da Costa wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/119302/
> -----------------------------------------------------------
>
> (Updated July 15, 2014, 9:19 p.m.)
>
>
> Review request for Build System, KDE Bindings, kdelibs, Alex Merry, Luca Beltrame, and Simon Edwards.
>
>
> Bugs: 337462
> http://bugs.kde.org/show_bug.cgi?id=337462
>
>
> Repository: kdelibs
>
>
> Description
> -------
>
> Since PyQt 4.10, PyQt.pyqtconfig is deprecated and not available unless
> PyQt is built using the old configure script.
>
> There is no direct replacement for it, as PyQt's new build system does
> not provide as much information as before by design. Luckily, most of
> the variables we are interested in can be obtained from PyQt's QtCore
> module itself even if its old build system is used.
>
> The only exception is `pyqt_sip_dir`, which cannot be determined at all
> if pyqtconfig is not available. In this case, there is nothing we can do
> but ask the user to specify it manually via CMake with something like
> `-DPYQT4_SIP_DIR=/usr/share/sip`. To this effect, all variables set by
> FindPyQt4.cmake have been made cache variables, which means their values
> can be overriden by the user, thus ignoring the contents read via
> FindPyQt.py.
>
>
> Diffs
> -----
>
> cmake/modules/FindPyQt.py 5d2f9514d87553d5a16a95943618572316c92861
> cmake/modules/FindPyQt4.cmake b176b4f8cfee471a1b7aecdd2723d165b0496a85
>
> Diff: https://git.reviewboard.kde.org/r/119302/diff/
>
>
> Testing
> -------
>
> I was able to make Kate find PyQt by passing `-DPYQT4_SIP_DIR=<...>` with my PyQt installation without `pyqtconfig.py`, and calling `FindPyQt.py` by hand on a Debian system with `pyqtconfig.py` worked as before.
>
>
> Thanks,
>
> Raphael Kubo da Costa
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-buildsystem/attachments/20140716/22132efa/attachment-0001.html>
More information about the Kde-buildsystem
mailing list