aboutsummaryrefslogtreecommitdiffstats
path: root/setup.py
Commit message (Collapse)AuthorAgeFilesLines
* Remove the wiki submoduleFriedemann Kleint2018-02-011-4/+2
| | | | | | Change-Id: Iad43ac9dd8b51dee4eaba7f844d90639912cae73 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Cristian Tarsoaga <cristian.tarsoaga@gmail.com>
* Remove examples submoduleFriedemann Kleint2018-01-251-8/+0
| | | | | Change-Id: I0e4e3472e1d5644db281fb46ce4ba4ddfc1eafae Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2018-01-191-1/+3
|\ | | | | | | Change-Id: I5f2e1660a27efafa445592898db4dfe3250306e0
| * setup.py: Fix bundling of pyside2uic.CompilerFredrik Averpil2018-01-171-1/+3
| | | | | | | | | | | | | | | | | | | | Add the compiler. Task-number: PYSIDE-357 Change-Id: I7138c583382d60933a921fd2f0dc4ef880a0c31b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Fredrik Averpil <fredrik@averpil.com>
* | Move examples from submodule to pyside-setupFriedemann Kleint2018-01-121-12/+8
| | | | | | | | | | | | | | | | | | | | Move PySide2 examples that are owned by the Qt Company to a new examples directory. Done-with: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Task-number: PYSIDE-363 Change-Id: I14099764d9eef2bc35e067086121427955862e3a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2018-01-121-0/+46
|\| | | | | | | Change-Id: I18387b329e61646e8d68e678140b533281e359cd
| * Extract iculibs for linux standalone wheelSimo Fält2018-01-111-0/+46
| | | | | | | | | | | | | | | | | | When creating PIP wheel for linux from Qt CI binaries we have to include ICU libs among Qt binaries. Change-Id: I30adf7041784cf3558c064d6ab6ad295ed1f5551 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | setup.py: Ensure that the Qt source path is correctVenugopal Shivashankar2018-01-051-6/+14
| | | | | | | | | | | | | | | | | | | | | | - Add the -qt-src-dir option - Set qtSrcDir variable only if the -qt-src-dir option is None (auto-detect SDKs and in-source builds) Task-number: PYSIDE-363 Change-Id: Iac63c5b4fde0c9f6769ae4fc7e0e899e8bf84b76 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-11-291-1/+1
|\| | | | | | | Change-Id: Ibef497a2439a05114eb2123e5f39c00aec8dc460
| * FIXUP: Make standalone option work on LinuxAlexandru Croitor2017-11-281-1/+1
| | | | | | | | | | | | | | | | | | There was an indentation error in the rpath linux handling function, which ended up not adding any rpaths in regular builds, thus breaking PySide2 module importing. Change-Id: I18488f78aca50435f69ce091e46a77e4ec55d396 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-11-271-35/+264
|\| | | | | | | Change-Id: I79637555fbfbd596dee4313baf80149d03bb5206
| * Update description of standalone option in setup.pyAlexandru Croitor2017-11-151-1/+3
| | | | | | | | | | | | | | | | | | Mention that it is usable on Linux and macOS, whereas on Windows it is used implicitly. Change-Id: I17f2086e7d4f9ac9ac084bddbcf73644af4bc0d4 Task-number: PYSIDE-558 Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Make standalone installations relocatableAlexandru Croitor2017-11-151-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is achieved by registering a qt.conf file with a Prefix pointing to a directory relative to the loaded PySide2 module (e.g. QtCore). Thus Qt does not crash due to not finding platform plugins. Because this change would affect tests, which are ran before the PySide package is installed, a new environment variable called PYSIDE_DISABLE_INTERNAL_QT_CONF is introduced. This variable disables the registration of the internal qt.conf file, thus it will not point to a not yet created location, which will allow tests to run as before. Change-Id: I5a96037adfafe1f08ea57535aa4a2a0d1660dfaf Task-number: PYSIDE-558 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Make standalone option work on WindowsAlexandru Croitor2017-11-151-0/+20
| | | | | | | | | | | | | | Change-Id: Ib2429a3cefb9ecc8804d384f9560e15d27d48198 Task-number: PYSIDE-558 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Make standalone option work on LinuxAlexandru Croitor2017-11-151-35/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | Changes were made to copy the correct Qt shared libraries into the package (updated to Qt5 naming). A new rpath value will be inserted alongside $ORIGIN, to point to the copied over libraries. Also because symlinks are not supported by wheels, the actual Qt libraries have to be copied instead of the symlinks. Change-Id: I656a89a0b0136a290752bca141125bdeb5bb44d5 Task-number: PYSIDE-558 Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Fix rpath handling on LinuxAlexandru Croitor2017-11-151-1/+10
| | | | | | | | | | | | | | | | | | | | | | In addition to adding $ORIGIN, add an RPATH to the Qt lib directory (the one used when building PySide) so that there is no necessity to set LD_LIBRARY_PATH. Change-Id: I0d54da2ef084abbe503bd427b0773481264334e6 Task-number: PYSIDE-558 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Make standalone option work on macOSAlexandru Croitor2017-11-151-31/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Implements standalone option on macOS, both for .dylib Qt build and framework build. Multiple rules are applied to figure out which files need to be copied into the final package. We also take care to embed a proper LC_RPATH for the PySide libraries, so that they point to the copied over Qt libraries. Change-Id: I442749e7c2318a66a22e3a1dd0ae703fb8943acf Task-number: PYSIDE-558 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Preserve symlinks instead of duplicating filesAlexandru Croitor2017-11-151-1/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change overrides some of the commands provided by distutils / setuptools to preserve symlinks when copying directories. This is mostly to decrease the time spent and amount of space used by copying into the pyside_package, build/xxx and site-packages directories (copying around WebEngine libraries takes a bit of time and space). It is not useful for bdist_wheels or eggs, because Python's zip module does not preserve symlinks when archiving the files. Ultimately this will probably go away, once we figure out which if any of the symlinks are needed. Task-number: PYSIDE-495 Change-Id: I8766266c9ab51d610c9a5377618ab06020637d7d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Fix rpath handling on macOSAlexandru Croitor2017-11-151-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change ultimately allows running python scripts that use PySide2 without setting DYLD_LIBRARY_PATH / DYLD_FRAMEWORK_PATH. It is achieved by embedding a @loader_path LC_RPATH into all PySide shared libraries, so that they can load each other if they have dependencies. Also an additional LC_RPATH is embedded to point to the Qt libraries directory which was used for building PySide2. A new option "--rpath='your_value'" is available to allow manually specifying the rpath value to be embedded into the libraries. Change-Id: Id783196e908877692312b1d40fef4ad0b09f3e68 Task-number: PYSIDE-558 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Allow building subset of Qt modulesFriedemann Kleint2017-11-141-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Collect the list of essential and optional modules in list variables and concatenate them to a list variable MODULES unless its value was passed in on the command line with -D. Remove the additional parameter indicating the module type to COLLECT_MODULE_IF_FOUND() and let it determine that by checking the essentials list instead. Add a command line option --module-subset to setup.py which can be used like "--module-subset=QtCore,QtGui,QtWidgets,QtTest" to specify the modules to be built. Change-Id: Ibb0fa16a8d9b0d7aeeaf8a8cfcbd50cb910ecc97 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-09-281-0/+10
|\| | | | | | | Change-Id: I47521e21977b1f17fcc65590f565270b2440a48b
| * Implement introspection with __signature__ packageChristian Tismer2017-09-201-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The signature module was turned into a package under 'PySide2/support/signature'. The package is completely isolated so that nothing is leaking into the normal import machinery. The package is also not initialized unless a __signature__ attribute is accessed. The only change to Python during a PySide run is the existence of the __signature__ attribute. As a side effect, all tests run at the same speed as before this extension. The module does not actively import PySide modules. Instead, it inspects sys.modules and reloads its mapping.py if needed. Example usage: >>> PySide2.QtWidgets.QGraphicsAnchorLayout.addAnchors.__signature__ >>> PySide2.QtWidgets.QGraphicsAnchorLayout.__signature__ The module has been thoroughly tested on macOS. I consider this ready. Task-number: PYSIDE-510 Change-Id: Ibb231a7fbb4ccc1a7249df55e3881a4e21a19c0d Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-08-281-13/+0
|\| | | | | | | Change-Id: I073b05f8b39c0af32aa57ce3589c1aac2d712213
| * Streamline Qt5 detection on macOSAlexandru Croitor2017-08-241-13/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This consists of a few things: - Remove the detection and usage of ALTERNATIVE_QT_INCLUDE_DIR in setup.py, because CMake takes care of finding the correct Qt include headers. - Add detection of framework / non-framework includes in the CMake rules, instead of in the setup.py script. - Don't pass QT_QMAKE_EXECUTABLE from setup.py to CMake, because it is not being used. It was previously used for detecting Qt4 via the CMake FindQt4.cmake file. Now it is done by find_package() which detects qmake from the environment. - Get rid of the old "/Library/Frameworks" QT_INCLUDE_DIR, which was where the official Qt 4.8.x packages installed Qt. - Deprecate usage of ALTERNATIVE_QT_INCLUDE_DIR. Now it is only used if CMake fails to detect the proper include headers of Qt5 (which should not happen). Change-Id: I829b92bc0d40ae7eb418be27c735fc095e557820 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-07-141-17/+40
|\| | | | | | | Change-Id: I1dd2958b252b82e8699e8d2212afdce0086a16d2
| * Fix Windows module extensions and tests to work with --debug buildAlexandru Croitor2017-07-121-14/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the same imp.get_suffixes() mechanism as on Unix, to determine the suffix part of module extension files. This fixes debug builds to work on Windows. Note that the whole build stack has to use the same configuration, no mixing is allowed on Windows. For release build you need: python.exe + setup.py without --debug flag + release build of Qt5. For debug build you need: python_d.exe + setup.py with --debug flag + debug build of Qt5. Change-Id: I6188c859b5757d11e87d6a9e32b9ba558f7f609e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Improve suffix names for shared libraries and cmake config filesAlexandru Croitor2017-07-121-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change decouples the naming of general shared libraries, python module extensions, and cmake configuration files. All of them are now computed depending on the python version and python build configuration, and can also be manually set via CMake variables. The module extensions names now use the most detailed 'import' prefix, which usually informs whether a debug or release python was used, or the Python ABI flags (for Python >= 3.2). When a debug Python interpreter is used for building PySide2, the preprocessor define Py_Debug is now correctly propagated to PySide2 sources, which fixes previous crashes in debug builds. This affects only Linux and macOS builds. There is a subsequent change for making it work for Windows builds. All in all, this now allows proper mixing of debug / release versions of the Python interpreter with debug / release versions of PySide2 on Linux and macOS. Task-number: PYSIDE-508 Change-Id: I88a05c3ada0fb32c7c29bdb86d7a2c15acc963b8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-06-091-1/+1
|\| | | | | | | Change-Id: I73f39966a2af7aa935e1890e29c9b71573aae97c
| * utils: Handle SymlinksFriedemann Kleint2017-06-091-1/+1
| | | | | | | | | | | | | | | | | | Try to recreate the .so version symlinks correctly on Linux instead of copying the files. Task-number: PYSIDE-526 Change-Id: I3b015efe4f2f57abe418f171a8631d194ed08f65 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | testrunner.py/Windows: Add Clang to the pathFriedemann Kleint2017-06-061-17/+1
| | | | | | | | | | | | | | | | | | | | | | It is required for shiboken's ApiExtractor tests. Move subroutine detectClang into utils.py for usage by testrunner.py/setup.py. Task-number: PYSIDE-431 Change-Id: I9f1984ea9fc9857ad3e7fddf621884fdc96ef52f Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-06-021-1/+1
|\| | | | | | | Change-Id: Ia6485d1b1caa93c4ecdd02b0544f19d197a43fb0
| * Fix .so filter for LinuxFriedemann Kleint2017-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | Previously, libpyside.so would not match .so.* and so, the libraries were not copied. Task-number: PYSIDE-526 Change-Id: I407db564beaee1f443dc7b816bc0bf798c8aacf1 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-05-231-9/+7
|\| | | | | | | Change-Id: Iae075ebf8614dd016166bcb5f105f695e7dc3de2
| * setup.py/prepare_coin_sources.py: Adapt to repository mergeFriedemann Kleint2017-05-231-7/+7
| | | | | | | | | | | | | | | | Remove the former submodules pyside2/shiboken2 from the modules lists. Change-Id: I41de78f5519c24cce1e649eaf3b2f2d1cabcc9b0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | setup.py/Windows: Add Clang to PATHFriedemann Kleint2017-05-191-1/+31
| | | | | | | | | | | | | | | | | | | | This removes the need for PATH to be added by COIN and makes provisioning easier. It should be revisited once Clang is shipped as 3rdparty library for Qt. Task-number: PYSIDE-431 Change-Id: I6868a2cfda4b519065c8db33e0779e6c48ba9fae Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-05-191-19/+49
|\| | | | | | | Change-Id: I551cb95411e934d2a9f2b747ca70cf9a063b65c1
| * Fix Python libraries to be found for macOS Python 2.6 interpreterAlexandru Croitor2017-05-031-18/+40
| | | | | | | | | | Change-Id: I0dbd65a23bde599f923811c74d0565f329116c93 Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Fix Python libraries to be found on OpenSuSE 13.01Alexandru Croitor2017-05-031-0/+2
| | | | | | | | | | Change-Id: I8bc9f18e5e85ff22ab4e6f24d9bf0917730b7a23 Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Fix syntax error for format method on Python 2.6Alexandru Croitor2017-05-031-2/+2
| | | | | | | | | | Change-Id: I5f2ecb29ca904b6b5a011f461debda62f38dbdc2 Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Fix CMake bug where incorrect CMAKE_OSX_SYSROOT was chosenAlexandru Croitor2017-04-281-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | Apparently in earlier versions of CMake, if the OS version found in CMAKE_OSX_DEPLOYMENT_TARGET did not have a corresponding SDK with the same version in XCode, the CMake build would fail. Make sure to use the latest SDK available to XCode. Change-Id: Ie2317c1d285377b0cd5c7a75c94628b03aef557e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.9Friedemann Kleint2017-04-211-30/+34
|\| | | | | | | Change-Id: I722a7c48e44380241dc8f6b013830e07bb0438f5
| * setup.py: Wrap prepare_packages in try/exceptFriedemann Kleint2017-04-201-26/+30
| | | | | | | | | | | | | | | | Print a message mentioning the function as otherwise it is quite hard to figure out where failures come from. Change-Id: Ib007c666e0ef406261c80e317004d1e439cf0403 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
| * setup.py: Fix .pdb file namesFriedemann Kleint2017-04-201-4/+4
| | | | | | | | | | | | | | | | | | | | | | Remove the python version suffix, fixing error error: [Errno 2] No such file or directory: 'pyside-setup56d\\testenv3d_build\\py3.5-qt5.6.3-64bit-debug/shiboken2/libshiboken/shiboken2-python3.5.pdb' when building Windows with debug. Change-Id: I4352e77d67732ea5f2a60766a47f0dfca163a9a5 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Add version 5.9 and make it defaultFriedemann Kleint2017-04-071-1/+8
| | | | | | | | | | Change-Id: Ie7814933cb257a0ce495ad40d98dcacec4b78903 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Merge branch '5.6' into devFriedemann Kleint2017-04-051-0/+7
|\| | | | | | | | | | | | | Drop the change changing the default version to 5.6 in setup.py. Change-Id: Ifafc76c36ad9170271d7ed9db9ab5303b4606242
| * Add version 5.6 and make it defaultFriedemann Kleint2017-04-051-1/+8
|/ | | | | Change-Id: I323c5f69ee4ba1b1c04addd2eeb9a4a76b99a54c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* setup.py: Create a tracking branch for version unless it existsFriedemann Kleint2017-03-201-1/+11
| | | | | Change-Id: Ie7832668e0a4adf4dcbf78e49c2af4b65ebe5107 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Support python 3.6Christian Tismer2017-02-071-2/+3
| | | | | | | | The necessary support for python 3.6 is just changing the setup.py file. Task-number: PYSIDE-471 Change-Id: Id5c0ad67d1bb9d360f333a415bed65e62c30b53e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add explanatory comment to repository checkFriedemann Kleint2017-02-071-0/+1
| | | | | | | Amends change b97da3efa0462a4de6ae20904dde3843bc18bce2. Change-Id: I8a48aa0d313f370f3933ff699ec2ed347f760e8b Reviewed-by: Christian Tismer <tismer@stackless.com>
* setup.py: Check whether files are present in a submoduleFriedemann Kleint2017-01-121-1/+1
| | | | | | | | | | Calling setup.py to initialize the submodules from scratch would fail complaining about the missing 'master' branch in 'wiki', since it assumed the submodules were initialized if the directory was present. Check the directory contents instead. Change-Id: I577a97d8cacf408f7caf52565e13e88815475a3b Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>