| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
- Amends a48de6afbf127831aa46c1c006d777861bbbe9cb
- Simplify the developer doc for adding new tools
- Make build_scripts/__init__.py the primary place to add new tools
for the build process
Pick-to: 6.5
Change-Id: I1e8bd9e069471bf51a186c067773d7fbc2588769
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removed the "quiet" and "verbose" older approach,
and introduced a 3-level configuration so we can switch
between them depending of the amount of output we need.
By default, the log level is set to INFO,
but it can be changed to VERBOSE and QUIET.
The older "--verbose-build" and "--quiet" options were deprecated.
The new way for setting the log level is:
--log-level=quiet
--log-level=verbose
--log-level=info (default)
The default option was made less verbose, controlling the output
of the logging module, and cmake:
for verbose it uses DEBUG, quiet uses ERROR, and no option uses INFO.
Change-Id: Ida0289e3ea0ed09b7489a7513254137bba186fd0
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
| |
Many leftovers from the pathlib migration patches.
Pick-to: 6.4
Change-Id: I7126fadbe45dbb387bc8948ba777cb690f10a758
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make it possible to pass a Path or a str to copyfile()/copydir() for
both arguments or one of them. Turn the variables destination_dir,
destination_qt_dir and destination_qt_lib_dir introduced by
b32a791ea2c66ae9ef2896ea445d4752e4773f96 into Paths.
Task-number: PYSIDE-2080
Change-Id: I13b27179746019b9cbe575d783a67a025dac1ee5
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
It simplifies the code and paves the way for using identical
directories on the various platforms.
Pick-to: 6.4
Change-Id: Id50d06f100f13c83ea40b475dcf1a05a08ffa3bd
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- PySide tools which are wrappers around Qt tools are now only installed
if the corresponding Qt tool exists.
- PySide6 entry points for the Qt tool are now only created if the Qt
tool exists in the corresponding Qt installation.
- Incase the console entrypoint still exists and the corresponding Qt
tool does not exist, the tool would exit stating that the Qt tool does
not exist.
eg: 'pyside6-uic' is run and 'uic' does not exist. The the tool
outputs that the 'uic' does not exist.
Ideally as per this change, PySide6 entrypoints for missing Qt tools
should not exist at all.
- versions.py deleted and contents moved to __init__.py.
- Adds warning from Python incase if the tool does not exist. This
is in addition to the CMake warning.
Fixes: PYSIDE-2097
Pick-to: 6.4 6.2
Change-Id: I3f1b26d103679f7425d9ad85dfed8d9ad17f6fbf
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
| |
- Remnants of 6fe563b2aa15c2c23369acce353be69f6ea84c77
Pick-to: 6.4 6.3
Change-Id: I664b960324d49db08f7a8ec6cf5244fbcda970d0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
There is a usage of os.path.relpath that cannot be migrated
to pathlib, which remain the only usage of os.path
Task-number: PYSIDE-2080
Change-Id: Iac781e9c9324fb8b9d3559b4225912d56782072a
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
| |
Patch the binaries only when tools are enabled.
Fixes: PYSIDE-2060
Pick-to: 6.3
Change-Id: I75b2949e23a2d6cbfebcd64dfec7ab43e978881c
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removing some leftover common anti-patterns:
- remove unnecessary dict() usage
- remove unnecessary map()
- avoid index-based loops
- use capitalize() instead of index-based capitalization
- use f-strings for concatenation
Pick-to: 6.2 6.3
Change-Id: I0ffdf73ec47c6ef537789015052dea0fd047350d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Internally, we were using many words like 'filter', 'vars',
and 'dir' which are built-in functions in Python.
To avoid confusion and a possible wrong behavior, we renamed them.
Pick-to: 6.2 6.3
Change-Id: Idbadda3857705ef3a5f0440112ee923d3a61ffa0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2 6.3
Change-Id: Ibd2a6088f6a2826be38a13037fe2db6656630b34
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Replace the current license disclaimer in files by a
SPDX-License-Identifier. Files that have to be modified by hand are
modified. License files are organized under LICENSES directory.
Task-number: QTBUG-67283
Change-Id: I065150015bdb84a3096b5b39c061cf0a20ab637d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.3
Change-Id: Ie56b054ca32869a488356b31eea49cc985fc463e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.2
Change-Id: If83404731096e17889523ded362be31e5398a441
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
| |
Task-number: PYSIDE-535
Change-Id: I681a79b684e15802294fd5094afe35de0ce92c8a
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The QtWebEngine resources are not necessarily in $qt_prefix/resources.
On Linux, distro's might specify a different value for
QT_INSTALL_DATA.
Make sure to use that value.
Pick-to: 6.2
Change-Id: I5bed723de07d39d0bc72e7932161809150433037
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Qt Designer as bundled by PySide6 was unable to find the uic
binary in the libexec directory of the bundled Qt since that was only
copied when QtWebEngine was built and the rcc/uic binaries were copied
into the main directory.
Also, libexec existed as a file containing qt.conf, which was created
by a copy statement not checking for the target directory.
Fix that by actually creating a libexec directory for uic, rcc and
QtWebEngineProcess. Patch the executables accordingly.
Add checks before copying qt.conf.
Adapt pyside-tool to use libexec.
The Windows code path remains the same, everything uses
main directory there.
Change-Id: I0c9f46fb776ed0315eecb6ed00202ea8d8f17fe2
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
| |
[ChangeLog][PySide6] Assistant is now shipped along with PySide.
Fixes: PYSIDE-1378
Change-Id: Ie08778964f47378acf4e570b9a6dc3690257e411
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
| |
Prepare for adding more binaries.
Task-number: PYSIDE-1378
Change-Id: I1e3a39db28da19fe9a307145d599d7448428652d
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
| |
Complements 82afd88245a17b6ba759937a2b391c216857565a.
Pick-to: 6.1 6.1.0
Task-number: PYSIDE-1455
Change-Id: I52e7f07e3c2a70a9a57fa71a37f8dce0180da868
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
| |
Pick-to: 6.0
Change-Id: I165e9a39f968f67f9eae3a632739908d5f8fda59
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
| |
Pick-to: 6.0
Change-Id: I8a62512707b576ea79fff56779322c7e38bbb21b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
| |
Change-Id: I40ba653f38bf079a697f0a509300a87e45181c30
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
| |
Change-Id: Iac73fcf6e60f882968463d1c612f5ca5dc206222
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
| |
Since it was deprecated in 5.5, it's time to remove it
from the repository.
Change-Id: I0835f04d6c34079dfc289be8027985a1dc3674bc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
Designer is not statically compiled, so we need to add
a RUNPATH to use the Qt libraries we ship with the wheel.
Change-Id: I715fcd852b63da99104198be2a4587b042a1eab7
Fixes: PYSIDE-1165
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- We agreed on 100 columns time ago, so I move around a few things,
- Removing unused modules,
- Fix white-spaces tabs without being multiple of 4,
- Encourage the use of os.path.join when joining paths,
- Using .format() for string formatting,
- Remove white-spaces from default arguments,
- Adjusting white-spaces before inline comments,
- Adding extra newlines when expected,
- Adjust spaces for lines under-indented for visual indent,
- Remove white-spaces from parenthesis, and adding them for arithmetic operators.
Change-Id: I9cb28cefd114d63580b584a063c452f90d3ca885
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Actually this creates 3 wheel packages:
- shiboken2 (the python module and libshiboken shared library)
- shiboken2-generator (contains the generator executable, libclang and
dependent Qt libraries)
- PySide2 (the PySide2 modules and Qt shared libraries, and tools like
rcc, uic)
Calling the setup.py script will not do the actual build now (in the
sense of calling CMake, make, etc.). Instead it will spawn new
processes (via subprocess.call) calling the same setup.py script,
but with different arguments. These "sub-invocations" will do the
actual building. Thus, the "top-level invocation" will decide which
packages to build and delegate that to the "sub-invocations" of
setup.py.
A new optional command line argument is introduced called
"--build-type" which defaults to "all", and can also be set to
"shiboken2", "shiboken2-generator" and "pyside2". A user can choose
which packages to build using this option. The "top-level invocation"
uses this option to decide how many "sub-invocations" to execute.
A new command line argument called "--internal-build-type"
takes the same values as the one above. It defines which package
will actually be built in the new spawned "sub-invocation" process.
The "top-level invocation" sets this automatically for each
"sub-invocation" depending on the value of "--build-type".
This option is also useful for developers that may want to debug the
python building code in the "sub-invocation".
Developers can set this manually via the command line, and
thus avoid the process spawning indirection.
A new class Config is introduced to facilitate storage of
the various state needed for building a single package.
A new class SetupRunner is introduced that takes care of the
"--build-type" and "--internal-build-type" argument handling
and delegation of "sub-invocations".
A new class Options is introduced to 'hopefully', in the future, streamline
the mess of option handling that we currently have.
setup.py now is now simplified to mostly just call
SetupRunner.run_setup().
Certain refactorings were done to facilitate further clean-up of the
build code, the current code is definitely not the end all be all.
Various other changes that were needed to implement the wheel
separation:
- a new cmake_helpers directory is added to share common cmake
code between packages.
- the custom popenasync.py file is removed in favor of using
subprocess.call in as many places as possible, and thus
avoid 10 different functions for process creation.
- Manifest.in is removed, because copying to the setuptools
build dir is now done directly by prepare_packages functions.
- because prepare_packages copies directly to the setuptools
build dir, avoiding the pyside_package dir, we do less copying
of big Qt files now.
- versioning of PySide2 and shiboken2 packages is now separate.
shiboken2 and shiboken2-generator share the same versions for
now though.
- shiboken2 is now listed as a required package for PySide2, to
facilitate pip requirements.txt dependencies.
- coin_build_instructions currently needs to install an unreleased
version of wheel, due to a bug that breaks installation of
generated wheel files.
- added separate command line options to pyside2_config.py for
shiboken2-module and shiboken2-generator.
- adapted samplebinding and scriptableapplication projects due to
shiboken being a separate package.
- adapted pyside2-tool and shiboken2-tool python scripts for setup
tools entry points.
- made some optimizations not to invoke cmake for shiboken2-generator
when doing a top-level "all" build.
- fixed unnecessary rpaths not to be included on Linux (mainly the
Qt rpaths).
Task-nubmer: PYSIDE-749
Change-Id: I0336043955624c1d12ed254802c442608cced5fb
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
1) Don't copy pdb files for QML plugins on Windows
2) Don't copy debug variants of EGL library on Windows
3) Don't copy debug variants of shared libraries on macOS
Task-number: PYSIDE-661
Change-Id: I37c701f3b12f3ad08fbdd24ab70587132ddc0c95
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removing the word 'project' from all the headers,
and changing the PySide reference from the examples
to Qt for Python:
The following line was used inside the source/ and
build_scripts/ directory:
for i in $(grep -r "the Qt for Python project" * |grep -v "pyside2-tools" | awk '{print $1}' | sed 's/:.*//g');do sed -i 's/the\ Qt\ for\ Python\ project/Qt\ for\ Python/g' $i;done
and the following line was used inside the examples/ directory:
for i in $(grep -r "of the PySide" * |grep -v "pyside2-tools" | awk '{print $1}' | sed 's/:.*//g');do sed -i 's/of\ the\ PySide/of\ the\ Qt\ for\ Python/g' $i;done
Change-Id: Ic480714686ad62ac4d81c670f87f1c2033d4ffa1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
This is an initial effort to clean up setup.py.
A new directory called build_scripts contains most of the logic for
building, leaving setup.py as an entry point.
The build_scripts directory contains the usual qtinfo, utils, and the
setup.py content has been split into main.py and platform specific
files under platforms subfolder.
The testrunner script has been modified to find the new location of
the utils module.
Task-number: PYSIDE-558
Change-Id: I3e041d5116ca5c3f96c789317303b65a7b1bbd70
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|