Commit Graph

310 Commits

Author SHA1 Message Date
Eike Ziller
9d8be9ce58 build.py: Add option for 7z multi-threading behavior
Fixes: QTCREATORBUG-25590
Change-Id: I4234928cfd4e2d76afe5acf76cd53eb1d67fa5a0
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-04-21 12:18:25 +00:00
Viacheslav Tertychnyi
2a456e5439 Deploy: Use objdump for MinGW build
Change-Id: Icb22aaecf3ca010b49d04af2ead7fb627a40c1db
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-04-20 20:16:53 +00:00
Eike Ziller
89acd38b40 macOS: Adapt build_plugin.py for possibly branded application bundle
Change-Id: I0d9860db78c2f617f5e8631064b271c0207f01de
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2021-04-12 09:38:06 +00:00
Eike Ziller
4b3a746332 CMake build: Fix remaining issues with Devel package
On Linux (and Windows) we should not create toplevel files (README.md
etc) or directories (doc/, scripts/ etc).

On macOS, move the whole Devel package contents into the app bundle,
because that is installed toplevel in the Qt installers, and we
shouldn't even create include/, lib/ or any other directory at the
toplevel at all.

Since the prefix path must now point to the Resources folder inside the
app bundle, adapt build_plugin.py to also accept --qtc-path pointing to
the app bundle (Qt Creator.app) itself, and also to the app bundles
parent directory. Adapt the Qt Creator plugin project template
similarly.

Task-number: QTCREATORBUG-25414
Fixes: QTCREATORBUG-25415
Change-Id: Ic756237fb920b54b1ec95d076649ad947b39a7e8
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-04-06 10:59:27 +00:00
Cristian Adam
a96a94ac79 GitHub Actions: Build without PCH
ccache is not working very well when pch is enabled.

Change-Id: I2922d2261bf4040ccd2837b2cc5c505ec2881207
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-03-26 17:11:16 +00:00
Eike Ziller
92de8402c4 build.py: Do not enforce building without PCH
We have a guard for the CMake version in QtCreatorAPIInternal since a
while.

Change-Id: Ie76010b39e33d57c77b993db375a7821687145ea
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-03-25 15:44:00 +00:00
Eike Ziller
c5d4515ec1 build.py: Make it possible to skip building Qt Creator
And only build the windows tools qtcreatorcdbext and wininterrupt.
For minimal 32bit Windows build.

Change-Id: I126c0963a8917c95300c0b2e9f00da274a62887d
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-02-24 16:07:49 +00:00
Eike Ziller
cc0d70dd99 build.py: Build wininterrupt and qtcreatorcdbext separately
The build of wininterrupt and qtcreatorcdbext was using the fully
configured & built Qt Creator as a base. Now that we have separate CMake
projects for these tools, build them really separately.

This will be needed for building them on Windows 32bit for the Qt 6
build, since that doesn't provide Qt builds on that platform anymore.

Change-Id: I50a662c6366814cbb6f4ce62adca2c1c3e9d546f
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-02-23 13:56:46 +00:00
Eike Ziller
0f9a206bd5 cmake build: Make separate debug info optional
In the CMake build in general, but still use it for
RelWithDebInfo builds with the build*.py scripts.

Fixes: QTCREATORBUG-25151
Change-Id: I8414f953278ebb395f73414c12af0ed7bd4fcdbe
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-12-22 13:02:03 +00:00
Eike Ziller
909f74dc56 Fix deployment of clang tools on Windows
Amends ca016bfb2e

Change-Id: I529f7f37b86f086167774e3c8d03761d4cc654a9
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-12-16 12:31:42 +00:00
Ivan Komissarov
962918629b qbs: fix installing doc dependenices on macOS and Windows
python still aliases to python 2.7 on macOS, so we need a smarter way to
find python3.

Change-Id: I229d8c1e124fb599119991b44c0f6d88d39b1684
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-12-14 09:42:40 +00:00
Eike Ziller
ca016bfb2e deploy.py: Support Python 2.7, do not require all clang executables
FileNotFoundException is new in Python 3.
We might not have a LLVM build with e.g. clazy-standalone and clang-tidy,
make deployment of Clang executables optional.

Change-Id: Id25b2f65a8d060bac9cb7a66fb2cd7022e2724e0
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-12-09 13:35:38 +00:00
Eike Ziller
b47d95449d deploy.py: Fix when running with Python 3.6
Which happens to be the default version on macOS 10.14.
Python 3.6 does not return a sensible default encoding if you don't
fiddle with your environment (like explicitly setting LANG). Fall back
to UTF-8.

Change-Id: I12534e4745e9c29b40a02c4946d8079d395cc650
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2020-11-24 16:13:56 +00:00
Eike Ziller
d04355dfb0 cmake build: Re-add a "Dependencies" component that runs deploy script
And use that from the build script.

Change-Id: I97d5b593cf703bb8e51556240f37c80aad654732
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-24 14:10:07 +00:00
Eike Ziller
ee6b329f10 Fix Qt deployment on Windows
Broke with 07128078b9

Change-Id: Icfc1ef7766017abf983115b20428931214a2a7c5
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-24 12:02:13 +00:00
Eike Ziller
07128078b9 Integrate deployqtHelp_mac.sh into deployqt.py
For now this is a dummy integration by just calling the former from
the latter, which has the advantage that
- only one script needs to be used for all platforms
- passing just qmake instead of individual install paths is enough
  also on macOS

Change-Id: Ie05077ada950addd287b87d88045605d3bddb48f
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-24 09:36:56 +00:00
Eike Ziller
eb4d230e38 cmake build: Create DebugInfo component with separate debug info
When building with RelWithDebInfo. The CMake code is adapted from
corresponding (internal) functions from Qt 6.
Also let the scripts create an additional *-debug.7z with the debug
info.

Task-number: QTCREATORBUG-24916
Change-Id: Ibc3c8c0013718b9c5e868136e5ce01e1e99f84c4
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-17 11:32:32 +00:00
Eike Ziller
093d5f5ab1 Build in release mode on GitHub
Add option to build scripts to override build type, so it can be
freely chosen.
Build in release mode on GitHub - RelWithDebInfo was too big.

Amends b1640074e3

Change-Id: Ibba6e60d4e9b2eee24e789bfd28bddffb1e782f6
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-11-12 16:22:19 +00:00
Eike Ziller
46d2046173 Merge remote-tracking branch 'origin/4.13' into 4.14
Conflicts:
    src/shared/qbs

Change-Id: If75741825f5788165f9bf2f0248e976811273b6a
2020-11-12 11:39:01 +01:00
Tim Jenssen
b1640074e3 scripts: make release with debug info default
Change-Id: If08eeb64bfda42780f6ba9223c3394ce8daf6a6b
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-11 19:23:23 +00:00
Eike Ziller
8edae33b42 macOS: Fix deployment of QML2 imports
Amends e101e83f84

Change-Id: I43ee85d9e0c144ec9a25d811d17604c91e709cd8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-11-10 12:08:06 +00:00
Eike Ziller
88498101a0 Build scripts: Fix path format for cmake calls
Make sure to pass posix style paths to CMAKE_PREFIX_PATH,
CMAKE_MODULE_PATH and CMAKE_INSTALL_PREFIX. Otherwise this can lead to
funny "Unknown control sequence \U" kind of errors.

Follow-up of fceaff1a6f

Change-Id: I1c8445f9c298a17115bca6b42f099a99e33d6de2
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-11-10 09:50:23 +00:00
Tim Jenssen
fceaff1a6f cmake expects forward slashes here - even on windows
Change-Id: Ia31727b703745e01d6def91237a0bc46ea37261a
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-11-09 17:35:51 +00:00
Eike Ziller
e101e83f84 Do not try to deploy QtQuick1 imports
We don't ship them with Qt Creator since a longer time now, and in Qt6
they are completely gone.

Change-Id: I7c6b1da1782cb641e17b2d1c7ff764dd81e15ee6
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-11-06 06:57:10 +00:00
Eike Ziller
30017685e7 build.py: add --add-module-path
Which prepends a path to CMAKE_MODULE_PATH which is required for branding.

Task-number: QTCREATORBUG-22488
Change-Id: I6b0015778d8ceec7183740e5b70eaafd220a3bdf
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-28 13:57:59 +00:00
Eike Ziller
3476b8aa67 Consolidate some options for build.py and build_plugin.py
Change-Id: Ic745231ed68296f8052e3b0897893ee8fce53b16
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-28 13:57:53 +00:00
Christian Stenger
ed678000a1 Scripts: Fix deploying assetimporters on macOS
Change-Id: If990ab8f5dcf482c671d8f39655f5372f8896fd3
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-28 13:13:07 +00:00
Friedemann Kleint
f0048ae951 shiboken2tasks.py: Fix for Windows
File names were not captured since ':' was excluded which can
appear in a file name on Windows.

Change-Id: I4bbf08c63faa12d3b76d73e927aef1457c09e02f
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
2020-10-28 09:08:53 +00:00
Cristian Adam
6c841dfbd0 GitHub Actions: Update to use Clang 11.0.0
Change-Id: I015a71a4f53ff3be8609a00bdef47c93161af882
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-26 12:47:46 +00:00
Tim Jenssen
d011e7df25 add some qmlpuppet cpp files to dev package
Since external plugins are interacting with the puppet
we need them in the dev package.

Change-Id: I871629ad80583a09b842bb60cd5b6fab5b512fae
Reviewed-by: Michael Winkelmann <michael.winkelmann@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-08-20 17:08:28 +00:00
Tim Jenssen
4fe5b923cd Merge remote-tracking branch 'origin/qds-1.59' into 4.13
Change-Id: Ic720f3adab305c5ef8cd10e713ccabf510eff0c0
2020-08-13 06:39:40 +00:00
Eike Ziller
715aa04d33 Fix clazy-standalone deployment on Linux
For some reason the RHEL build of LLVM has ClazyPlugin in 'lib64'
instead of just 'lib'.

Fixes: QTCREATORBUG-24344
Change-Id: Ibfca2aabd4c25ad4d80ea0e56de5ca8692b3c7ae
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-08-10 13:03:27 +00:00
Eike Ziller
ded5c64d53 Fix deployment of clazy-standalone
On Linux and macOS, clazy-standalone links against some dynamic
libraries which we need to ship.

Fixes: QTCREATORBUG-24344
Change-Id: I4946d2ae22fc9363445e6a3eecb8d9e40be5ef0e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-17 06:23:03 +00:00
Tim Jenssen
42d0c2b9f4 add litehtml to dev package
Change-Id: If33500eda8d095d1d9d63afe4ad8331109a22871
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-07-10 07:15:02 +00:00
Eike Ziller
bc4c2f8a15 Use the packaging script for the github action
Unifies a bit of what is done. For example this adds documentation and creates a disk image for
macOS. It will also make adding perfparser/elfutils and 32bit wininterrupt and qtcreatorcdbext
easier.

Adds Qt translations.
Adds some useful options to build.py and make it work with python3
Disables detection of debug vs release build in deployqt.py on Windows
if dumpbin is not there (for MinGW).

Change-Id: I3cc33144cad653823321209c219d220eb75093ec
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-06-25 16:37:28 +00:00
Eike Ziller
7c329e1902 Merge remote-tracking branch 'origin/4.12'
Change-Id: I4935b6afdb13627f32e850a4c8b536de0269bc4b
2020-06-25 09:28:57 +02:00
Friedemann Kleint
848054ce3c Add shiboken2tasks.py for converting Qt for Python's shiboken tool warnings
Add a tool for converting shiboken  warnings to task files to be
able to load them into the Issues pane of Qt Creator.

Task-number: PYSIDE-904
Change-Id: Ie28e93ad76a615e549594edf5bba60e134b46a88
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-06-24 09:03:00 +00:00
Eike Ziller
2e130acfd7 CMake build: Show build date in about dialog in packages
The default for non-packaging build is OFF.

Fixes: QTCREATORBUG-24128
Change-Id: Id422babe197e215d6cb33807a78ba1ee3aaabb32
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-06-15 11:32:22 +00:00
Eike Ziller
0f362115c1 CMake build: Deploy elfutils
Fixes: QTCREATORBUG-24131
Change-Id: Ibfe829492e86ce1563882cf3be6469f9e553812d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-06-05 17:34:51 +00:00
Eike Ziller
e2e50f80fa Deploy: Use argparse instead of gnuopt
It's the more modern variant that we use everywhere else.
Add -i/--ignore-errors as a dummy option since it wasn't used for much,
and all callers used it anyhow - always ignore the one error that it
applied to.

Change-Id: Iecb5b434b6c21fc555410565a8e63a80844228cc
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-06-05 17:34:40 +00:00
Eike Ziller
b3ffd8d1eb CMake build: Move documentation functions to re-usable location
Removes "install_..._docs" and "clean_docs" special targets.
Instead install documentation with "--install . --component qch_docs"
and "--install . --component html_docs" which have the advantage that
the install prefix can be specified later on with --prefix.
Also removes export of IDE_SOURCE_DIR, which is not used.

Change-Id: I4fce0b9aa8c7fc40b7e94e065777ddf4c0b76c41
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-05-25 11:31:06 +00:00
Eike Ziller
7051ba8498 Build script: Add option for passing arguments to build command
So one can pass e.g. -j3 when locally testing while still doing other things

Change-Id: I7a528884f19698290e49c372eb31030afe609d23
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-05-15 12:50:24 +00:00
Eike Ziller
f574f478eb build_plugin.py: Add option to pass additional arguments to CMake
Change-Id: Ifab717fdca9b8c5d4585146e552a60fc66c08d74
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-05-05 08:03:41 +00:00
Eike Ziller
5feec21cbd Packaging: Install documentation
Fixes: QTCREATORBUG-23912
Change-Id: I2e28c9f9000dca1216ec31bad307031937223e83
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-04-29 14:25:58 +00:00
Eike Ziller
05f746cfd0 Add script for building external plugins for packaging
Also turn off PCH for building Qt Creator and add some more options for
local testing.

Change-Id: Ic05099ef1dd8e8c78b174d7cd07a83b2f4a9cbb5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-04-28 11:21:19 +00:00
Tim Jenssen
081186811d qds: remove workaround when qdocconf was somewhere else
After moving the QtDesignStudio documentation to the QtCreator
repository there is no need for these extra files in the dev
packages.

Change-Id: I4e24946bb6752403a6ecafb0c474332ad2317b1a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2020-04-24 08:34:16 +00:00
Eike Ziller
9eceb46739 Fix link on commit sha in about dialog
Passing a URL via defines breaks when trying to "stringify" it.
It would always stop at the first slash.
Instead use a qmake variable directly. That has the additional advantage that
the value isn't passed on each and every compiler command line.

Change-Id: I97a297fbcdee5ea03eb6fa08181c95b1ad2de767
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-03-23 07:14:27 +00:00
Alessandro Portale
3a52269a1d scripts: build.py: Handle Null path in default_python3()
Change-Id: Ice6b269502a77f31a7af447429bba4332df026e9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-26 12:00:48 +00:00
Eike Ziller
fa59e02f89 Merge remote-tracking branch 'origin/4.11' into 4.12
Change-Id: I8cc80483cdb10309bf73aba5cfab52c1d90e1bbc
2020-02-26 08:14:47 +01:00
Eike Ziller
a8cca1b89a build.py: Remove unused 'temp' directory
Change-Id: I7b6a45aa2ac1d0851207512e2659f46f1940f628
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-26 07:01:23 +00:00