Commit Graph

18 Commits

Author SHA1 Message Date
Alexis Jeandet
77d7bb5014 Meson build plugin initial support
Most basic project management is implemented:
- Project config/build
- Build options accessible to user
- Lists most build targets
- Meson and Ninja added to kit setup
- Basic project file tree with files known by Meson
- Some basic meson and ninja process output parsing
- Some project templates

Missing features, that will come later:
- Configurable project tree layout
- Locators for Meson
- Build importer
- Access to Machine files for better user fine tuning
- ...

Fixes: QTCREATORBUG-18117
Change-Id: I2811e71562c113fb0fc6b6177bcf0698fa71ef63
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-06-08 09:55:17 +00:00
Christian Kandeler
4702faba06 Wizards: Add the ability to remember user choices
Wizard authors can now provide a persistence key to values where that
makes sense.
For now, we make use of it for the build system type in all wizards and
the minimum Qt version as well as the virtual keyboard settings in the
QtQuick wizards.

Fixes: QTCREATORBUG-16657
Change-Id: I179930665bd163b1cf198467ab8b43bc72f8ec4a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-09-23 12:48:56 +00:00
Cristian Adam
36135aa261 CMake: Small clean-up of CMake Wizards
* Updated CMake minimum version to 3.5 (Ubuntu LTS 16.04)
* Lowercase commands
* Used the target name instead of ${PROJECT_NAME}, which nobody uses in practice
* No string quotes around the source filenames, which do not contain spaces

Change-Id: Ide9b3eb85535213798c6c35e08624cae080ebd9d
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2019-06-12 13:34:58 +00:00
Eike Ziller
e0d38ae414 Export Wizard values to JavaScript macro
Registers a new function "value('name')", available to the wizard json
files, which returns the value of the variable "name" as a JavaScript
object. So, variables with a string value are actual JavaScript strings,
booleans are booleans, lists are lists, and dictionaries are
dictionaries.

The patch also makes it actually possible to assign JSON lists and
dictionaries to values.

This removes some hacks involving creating complex JavaScript objects
through string substitution.

Change-Id: I4ac6da22bc5bccc9fadee97694c2fa14d44c9307
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-05-09 11:19:43 +00:00
Christian Kandeler
d8ebdf1a30 Project Wizards: Update the qbs templates
- Remove the unneeded Project item.
- Remove the minimumQbsVersion property. It was originally added to
suppress warnings in some ancient qbs.
- Install applications to the bin/ directory by default.
- Add main.qml to the files list in the QtQuick template. It is good
practice to list all source files in a project file, and in this case it
is even required for building against a static Qt.
- Remove an unused file.

Change-Id: I05f36e8ae64c0a2150639760db9630dd5d613ab9
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2018-09-07 15:05:43 +00:00
Thomas Hartmann
d110b2f4db CppEditor: Require CppEditor plugin for C/C++ wizards
Change-Id: Ia6371d6cdb8c42df92c3261050262c37a3ff2c60
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2018-02-05 09:06:24 +00:00
Eike Ziller
f58a617ea9 Merge remote-tracking branch 'origin/4.5'
Change-Id: Iab6befd5e713289877aa0a47b9ce6bddfb5e2593
2017-11-16 08:49:06 +01:00
Christian Stenger
895eed7164 Wizards: Fix project files for macOS
Task-number: QTCREATORBUG-19286
Change-Id: I81a7486edfd34570d7b4bd82646a2e5e39a585ee
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-11-14 10:55:33 +00:00
Andre Hartmann
57e35274c2 Wizards: Prettify template QMake project files
Having each source/header/form file on its own line
makes further moving around (e.g. sorting) much easier.

Also bring indentation for source/header sections to
the same level.

Amends commit cf40d98dc9

Change-Id: I95ad9c9298ae01e548a595b29d7f7651220adadd
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-10-17 10:29:41 +00:00
Jake Petroules
b0229acd54 Clean up projects wizards and support for Qbs+CMake+qmake to all
Task-number: QTCREATORBUG-17308
Change-Id: I5d320a52f2cc5c0adbaf513985e4be0d75219a7d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-02-10 18:19:57 +00:00
Tobias Hunger
e6d553ce59 Wizards: Explicitly list sources in CMakeLists.txt
Task-number: QTCREATORBUG-17196
Change-Id: I478f2f945a6f7ee3183aa09871bccc7e475e5501
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-10-31 10:09:31 +00:00
Tobias Hunger
137695cae7 Wizards: Move cmake required version before project line
This is apparently necessary to establish policy before setting up
things.

Task-number: QTCREATORBUG-17197
Change-Id: I8b12e752e05e65b2275c0a97cf1b727f60c88cd0
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-10-31 10:09:25 +00:00
Tobias Hunger
aa37df645d JsonWizard: Update to use supportedProjectType
Remove "kind" as that is no longer necessary (even though it is still
handled if that is in the wizard).

Change-Id: I3e56d5e0d936b622dae5091950427f9b2db60695
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-19 15:20:55 +00:00
Tobias Hunger
dfa2bc5b71 Wizard: Do not set c++11 for the plain C project wizard
... when building with qmake. All other buildsystems do not
have that problem anyway.

Task-number: QTCREATORBUG-15064
Change-Id: Ie7d5b1b8a497db841c340229dff577de9e580171
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-09-17 12:44:28 +00:00
Tobias Hunger
6bb78124ab Plain C/CPP Wizards: Use proper main signature
Change-Id: I1d6e83cda2685201aa4126e993dac85cda8315b3
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-09-09 11:24:29 +00:00
Jake Petroules
46910b46c3 Adapt Qbs code to latest changes.
type: application actually does nothing now, as the application type is
used for both bundled and unbundled products on Apple platforms.
Instead, consoleApplication being set to true influences Qbs not to use
a bundle.

cpp.infoPlistFile became bundle.infoPlistFile in Qbs 1.4.

Change-Id: I6540aa91b2db61ed4cbf2ff30bd46d69db5f9d92
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2015-08-21 20:51:12 +00:00
Tobias Hunger
bcc3cc992b JsonWizard: Make description on projects page default to the wizard description
Change-Id: Icb8a4856dda4298b3ee901bc7a5c22190ddca5a6
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2015-05-28 15:53:02 +00:00
Tobias Hunger
f76b9b549c Move plain C application wizards into one Json Wizard
Change-Id: If01fe6722c76df83015afa68b18d62ff1eaf523f
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2015-05-28 15:52:44 +00:00