qt5base-lts/util/cmake
Simon Hausmann f2d15b9683 Minor fix to qt_process_qlalr API
It's probably best to make it follow the usual calling convention that
the associated (consuming) target is the first parameter of the
function. So first this change accepts both formats.

Change-Id: I1f20706b23d5e819e0eb689eecedb3afb49df3b7
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-10-11 12:02:08 +00:00
..
tests cmake scripts: move parser into separate file 2019-10-10 13:35:43 +00:00
cmakeconversionrate.py Improve styling of util/cmake scripts 2019-09-18 12:00:26 +00:00
condition_simplifier_cache.py cmake scripts: minor cleanup 2019-10-11 07:49:20 +00:00
condition_simplifier.py cmake scripts: fix type issues 2019-10-09 09:13:44 +00:00
configurejson2cmake.py Reformat conversion scripts with black 2019-10-10 14:35:52 +00:00
generate_module_map.sh Begin port of qtbase to CMake 2018-11-01 11:48:46 +00:00
helper.py Fix styling of configurejson2cmake script to make flake8 happy 2019-10-11 09:20:19 +00:00
json_parser.py cmake scripts: more type cleanup 2019-10-09 09:14:19 +00:00
Makefile cmake scripts: format with black 2019-10-11 08:13:54 +00:00
Pipfile cmake scripts: add portalocker as dependency for Pipenv 2019-10-10 13:58:26 +00:00
pro2cmake.py Minor fix to qt_process_qlalr API 2019-10-11 12:02:08 +00:00
pro_conversion_rate.py cmake scripts: make pro_conversion_rate.py mypy clean 2019-10-10 14:59:55 +00:00
qmake_parser.py Reformat conversion scripts with black 2019-10-10 14:35:52 +00:00
README.md Improve styling of util/cmake scripts 2019-09-18 12:00:26 +00:00
requirements.txt cmake scripts: format with black 2019-10-11 08:13:54 +00:00
run_pro2cmake.py cmake scripts: more type cleanup 2019-10-09 09:14:19 +00:00
special_case_helper.py Improve styling of util/cmake scripts 2019-09-18 12:00:26 +00:00

CMake Utils

This directory holds scripts to help the porting process from qmake to cmake for Qt6.

Requirements

  • Python 3.7,
  • pipenv or pip to manage the modules.

Python modules

Since Python has many ways of handling projects, you have a couple of options to install the dependencies of the scripts:

Using pipenv

The dependencies are specified on the Pipfile, so you just need to run pipenv install and that will automatically create a virtual environment that you can activate with a pipenv shell.

Using pip

It's highly recommended to use a virtualenvironment to avoid conflict with other packages that are already installed: pip install virtualenv.

  • Create an environment: virtualenv env,
  • Activate the environment: source env/bin/activate (on Windows: source env\Scripts\activate.bat)
  • Install the requirements: pip install -r requirements.txt

Contributing to the scripts

You can verify if the styling of a script complaint with PEP8, with a couple of exceptions:

Install flake8 (pip install flake8) and run it on the script you want to test:

flake8 <file>.py --ignore=E501,E266,W503
  • E501: Line too long (82>79 characters),
  • E266: Too many leading '#' for block comment,
  • W503: Line break occurred before a binary operator)

You can also modify the file with an automatic formatter, like black (pip install black), and execute it:

black -l 100 <file>.py

Using Qt's maximum line length, 100.