aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/build.py
Commit message (Collapse)AuthorAgeFilesLines
* build.py: Add an option to create additional archive for cmdbridgeEike Ziller11 days1-0/+13
| | | | | | | | | | The cmdbridge executables are part of the qtcreator.7z, but it is interesting to have them available separately for download (e.g. for people who for some reason have a Qt Creator configured without golang and therefore no cmdbridges) Change-Id: I6e37915559e6f1f801fc1a55891889b3a47eb850 Reviewed-by: hjk <hjk@qt.io>
* Build/GitHub: Build sdktoolEike Ziller2025-11-061-1/+2
| | | | | | | | As a direct component of the Qt Creator build. Fixes: QTCREATORBUG-33353 Change-Id: Id03d1525a026667ede944ad2e6f9a73a68e48a2e Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Merge remote-tracking branch 'origin/17.0'Eike Ziller2025-08-271-0/+1
|\ | | | | | | Change-Id: If7920935f5392f89bc7a70345db66df9e506f226
| * Build.py: Don't build sdktoollib if not neededEike Ziller2025-08-211-0/+1
| | | | | | | | | | | | | | | | | | Doesn't make sense to build sdktoollib if sdktool is not built. Amends c246caf7a96b1d689ee03d900f6bc503e00a4b02 Change-Id: Iafdb80f290a5d9c31e9313fc93973afcc15a37e8 Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* | build.py: Generate SBOM by defaultEike Ziller2025-07-231-4/+15
|/ | | | | | | | | But disable it for the OldestQt in the PRECHECK, since that doesn't support it. Change-Id: I1f3a34225e5c09dc22827657e3b81ca0602eda56 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* LibArchive: Allow using system libarchiveMarcus Tillmanns2025-03-201-3/+1
| | | | | | Fixes: QTCREATORBUG-32624 Change-Id: I4e76cbc44c97801ee2b0a2875c7f13bc9aa0b50f Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* KArchive: Add creator specific changesMarcus Tillmanns2024-12-101-0/+3
| | | | | Change-Id: I8227bffd0e83d69d456e49a9d5f66a5ef00ba60e Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Build: Unify archive creationEike Ziller2024-11-111-6/+1
| | | | | | | | | Between building Qt Creator, extra plugins, and sdktool. This adds avoiding arm-specific 7zip methods to the sdktool build, which cannot be extracted with p7zip on Linux. Change-Id: Ibc8a18967b6c4e7869a4a86680da9005f70d498b Reviewed-by: David Schulz <david.schulz@qt.io>
* Build: Fix zipping of dev package on LinuxEike Ziller2024-11-071-1/+4
| | | | | | | | | | | | Official 7zip normally checks for the existence of symlink targets, and fails if they do not. That can be avoided with a command line flag. This is important for the dev packages on Linux, where the libFoo.so is a symlink to the actual library, and the symlink is part of the dev package, but the actual library part of the non-dev package. Change-Id: Ibd5855c4e106c96058a693d87e84d0f2d8f93365 Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: Patrik Teivonen <patrik.teivonen@qt.io>
* COIN: Make independent from internal scriptsEike Ziller2024-10-281-10/+3
| | | | | | | | | The coin scripts may no longer access the repository with the internal build scripts. Move (adapted versions of) the needed scripts into the repository itself. Change-Id: I0515b8d66bd917e32eaabf64a1c76cc852fbe5df Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* Build: Fix archive creation on ARM WindowsEike Ziller2024-09-241-21/+21
| | | | | | | | | Prevent 7z from using the "arm executable" compression algorithm, that cannot be extracted by pk7zip Task-number: QTCREATORBUG-31331 Change-Id: I1c6358bad90f4fc0f8e065cdda802c72a97bd129 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* build.py: Avoid ARM 7z compression filterEike Ziller2024-06-101-3/+6
| | | | | | | | | Which fails to extract with (older?) p7zip from Linux distributions, which is used for building online repositories. Change-Id: Ia9032293841cf192b9b2e0ff820ca4a8b7f47763 Reviewed-by: Patrik Teivonen <patrik.teivonen@qt.io> Reviewed-by: David Schulz <david.schulz@qt.io>
* Merge remote-tracking branch 'origin/qds/dev'Tim Jenssen2024-01-181-2/+5
|\ | | | | | | Change-Id: I5d593fc74785958886453dc0b452c25356a8c65f
| * scripts: add build sdk_tool optionTim Jenßen2024-01-171-2/+5
| | | | | | | | | | Change-Id: I1bfbcb1baead5fe351a785b126540c60bc5db3c3 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* | qtcreatorcdbext: Deploy lldb on WindowsCristian Adam2023-11-151-1/+4
|/ | | | | | | | | | | | | Starting with LLVM 17.0.1 we include lldb in the list of packages compiled on Windows. This commit deploys lldb.exe and its Python required machinery. Fixes: QTCREATORBUG-14539 Change-Id: I7f44c537cbaf31bf2f065762bdc9a48dd5efc64d Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* build.py: Apply additional config to all buildsEike Ziller2023-10-101-2/+2
| | | | | | | | | Not only Qt Creator but also cdbextension & wininterrupt. Otherwise there is no way to pass additional configuration to these. Change-Id: I2bd4894f212df9795e1d66577bb25a26b29224a4 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Build: Optionally sign on WindowsEike Ziller2023-04-111-0/+11
| | | | | | | | | | | Add an argument to the build script that takes a signing command (path to sign is added at the end, run in cwd) Task-number: QTCREATORBUG-25740 Task-number: QTCREATORBUG-28909 Change-Id: I6d3bdf7bd9fab0ea1fc129da08cf77c9a5448b31 Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* Merge remote-tracking branch 'origin/9.0' into 10.0Eike Ziller2023-02-141-1/+1
|\ | | | | | | Change-Id: Ib01e191652168b2c38e80678f2f804bb95143cc5
| * Let Debian packages install to /opt/qt-creatorEike Ziller2023-02-141-1/+1
| | | | | | | | | | | | | | | | | | instead of /opt directly. Seems to be more conventional Change-Id: I6d3b0b973684b6f72c096eeb4f2b572012f30351 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: hjk <hjk@qt.io>
* | Replace GPL-3.0 with GPL-3.0-onlyKai Köhne2023-01-101-1/+1
|/ | | | | | | | | | | | | GPL-3.0 is deprecated by SPDX. Change done by find . -type f -exec perl -pi -e 's/LicenseRef-Qt-Commercial OR GPL-3.0(?!-)/LicenseRef-Qt-Commercial OR GPL-3.0-only/g' {} \; Change-Id: If316a498e3f27d2030b86d4e7743b3237ce09939 Reviewed-by: Lucie Gerard <lucie.gerard@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* build.py/CPack: Install to /opt from .deb packagesEike Ziller2022-10-131-0/+2
| | | | | | | | | Default is /usr/local, and that is also the default when installing self-built versions, so avoid a conflict. Change-Id: I92879baa4afd1b90b7de6addfbcd7ec361b396cc Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* build.py: Add option to call cpackEike Ziller2022-10-071-2/+25
| | | | | | | | | | | | Adds --with-cpack option. - macOS: does nothing (we already create a better, signed disk image) - Linux: creates qtcreator.deb in build directory - Windows: Checks for NSIS and WIX installation, creates qtcreator.exe and qtcreator.msi as appropriate Change-Id: Ie7816d04cb2e01e90795481e1519b0a6645f5cd3 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Scripts: Fix permissionsChristian Stenger2022-08-291-0/+0
| | | | | | | Broke with a7956df3ca45. Change-Id: I072ea34183aedf2fd693af1bb589660aa06b9e1c Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Use SPDX license identifiersLucie Gérard2022-08-261-27/+2
| | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Task-number: QTBUG-67283 Change-Id: I708fd1f9f2b73d60f57cc3568646929117825813 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Move build scripts to Python3Eike Ziller2022-04-201-1/+1
| | | | | | | | | On newer macOS versions there even is no unversioned python executable anymore, so we need to make it explicit Change-Id: Ic2260a06b859e949a42f7dc34f1ff4dd582ce635 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Linux: (Optionally) Enforce XCB backend if QT_QPA_PLATFORM is not setEike Ziller2022-02-161-0/+1
| | | | | | | | | | | | | | | | | | | | Especially on older distributions, Qt/Wayland works worse than Qt/ XCB(XWayland). On Ubuntu 20.04, starting Qt Creator with Wayland can even crash the Wayland session (https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/1958684/). We still want to ship the plugins, and allow forcing the usage of Wayland, since on the other hand Wayland works better in HiDPI environments for newer distributions. Behavior is enabled when configuring with -DQTC_FORCE_XCB=ON Task-number: QTCREATORBUG-26867 Change-Id: I623f001412f809381208b6cb3ec5b3fcfdb86011 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Robert Löhning <robert.loehning@qt.io>
* Fix finding python development package for cdb extensionEike Ziller2022-02-091-6/+2
| | | | | | | | | | | Amends e9f3f8cc641a773078ca17c5110587d5c3b717f7 We switched to find_package(Python3 ...) and that doesn't use PYTHON_LIBRARY and PYTHON_INCLUDE_DIR. Simply provide the root path for find_package(Python3 ...). Change-Id: If862151c095af358be5f35d3d8002d77dcd17aa6 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Merge remote-tracking branch 'origin/6.0'Eike Ziller2022-01-121-8/+22
|\ | | | | | | Change-Id: I642abb110bb120e20af11a5d55244c03e6c48caa
| * Build.py/macOS: Add a signed bundleEike Ziller2022-01-101-8/+22
| | | | | | | | | | | | | | | | | | | | If a signing identity is given, create a signed install, and zip it up (if zip files are wanted). Can be used to directly add a signed app to an installer. Change-Id: Ib575d7c907eea74c247407107884f29a526d5d1c Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* | Merge remote-tracking branch 'origin/6.0'Eike Ziller2021-12-091-0/+4
|\| | | | | | | | | | | | | | | | | Conflicts: cmake/QtCreatorIDEBranding.cmake qbs/modules/qtc/qtc.qbs qtcreator_ide_branding.pri Change-Id: I32991a77e52831dd2e24cf4a51ec252998c2d743
| * Do not link packages against libGLX and libOpenGLEike Ziller2021-12-061-0/+4
| | | | | | | | | | | | | | | | | | Work around QTBUG-89754 Fixes: QTCREATORBUG-26652 Change-Id: I9fb7ba2127a93460184154a9eb2d4c053f8fc22d Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Add option to build QtCreator with sanitizerJoerg Kreuzberger2021-11-051-0/+7
|/ | | | | | | Fixes: QTCREATORBUG-26318 Change-Id: I44589b5bb39958eda2329b444e4857e8f61823bf Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Merge remote-tracking branch 'origin/5.0'Eike Ziller2021-09-131-3/+0
|\ | | | | | | | | | | | | | | | | Conflicts: src/plugins/clangtools/clangtoolssettings.cpp src/plugins/clangtools/executableinfo.cpp src/plugins/clangtools/executableinfo.h Change-Id: Id8caf63e3e594792467d3447870086bd2d8f73b9
| * build.py: Remove --app-target optionEike Ziller2021-09-131-3/+0
| | | | | | | | | | | | | | It was no longer used since d04355dfb0aa444f5f6352d1b7126a0278807b78 Change-Id: I048d8566babec1e926cbf32916c4d88d474d8ef8 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | Move shortening of revision string to build scriptAlp Öz2021-09-091-1/+1
| | | | | | | | | | | | | | This is to allow setting a longer IDE_REVISION_STR which is not necessarily a SHA256 value. Change-Id: Iad61e87fcd92e1b96a2066a3c6a6ae51d452b9b7 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | Do not build Qbs by defaultEike Ziller2021-09-071-7/+10
|/ | | | | | | | | | | | | | Compiling Qbs takes time and is not strictly necessary for the Qbs integration in Qt Creator. We still want to build it for the release, but let's not build it by default anymore. [ChangeLog][Building from Sources] Qbs is not built anymore by default. Pass -DBUILD_QBS=ON on the CMake command line to enable it. Change-Id: Ic5793e26c7f6a7ac92931777e5d77cef2c8bf888 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* build.py: Only zip the .app on macOSEike Ziller2021-08-181-1/+9
| | | | | | | | Not the full contents of the folder containing the app. Works around QTBUG-95845 Change-Id: Id515142b99891e89d0f4db5dae009c481939811f Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* build.py: Add option for 7z multi-threading behaviorEike Ziller2021-04-211-5/+8
| | | | | | Fixes: QTCREATORBUG-25590 Change-Id: I4234928cfd4e2d76afe5acf76cd53eb1d67fa5a0 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* GitHub Actions: Build without PCHCristian Adam2021-03-261-0/+6
| | | | | | | ccache is not working very well when pch is enabled. Change-Id: I2922d2261bf4040ccd2837b2cc5c505ec2881207 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* build.py: Do not enforce building without PCHEike Ziller2021-03-251-3/+0
| | | | | | | | We have a guard for the CMake version in QtCreatorAPIInternal since a while. Change-Id: Ie76010b39e33d57c77b993db375a7821687145ea Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* build.py: Make it possible to skip building Qt CreatorEike Ziller2021-02-241-22/+31
| | | | | | | | 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>
* build.py: Build wininterrupt and qtcreatorcdbext separatelyEike Ziller2021-02-231-39/+53
| | | | | | | | | | | | 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>
* cmake build: Make separate debug info optionalEike Ziller2020-12-221-0/+2
| | | | | | | | | 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>
* qbs: fix installing doc dependenices on macOS and WindowsIvan Komissarov2020-12-141-0/+1
| | | | | | | | 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>
* cmake build: Re-add a "Dependencies" component that runs deploy scriptEike Ziller2020-11-241-12/+3
| | | | | | | And use that from the build script. Change-Id: I97d5b593cf703bb8e51556240f37c80aad654732 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Integrate deployqtHelp_mac.sh into deployqt.pyEike Ziller2020-11-241-24/+9
| | | | | | | | | | | 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>
* cmake build: Create DebugInfo component with separate debug infoEike Ziller2020-11-171-3/+15
| | | | | | | | | | | 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>
* Build in release mode on GitHubEike Ziller2020-11-121-3/+3
| | | | | | | | | | | | 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 b1640074e3630fff8d510c0f96efdfcfeedb93a1 Change-Id: Ibba6e60d4e9b2eee24e789bfd28bddffb1e782f6 Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* scripts: make release with debug info defaultTim Jenssen2020-11-111-1/+1
| | | | | Change-Id: If08eeb64bfda42780f6ba9223c3394ce8daf6a6b Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Build scripts: Fix path format for cmake callsEike Ziller2020-11-101-2/+3
| | | | | | | | | | | 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 fceaff1a6fba4a99d07a45ec07142898d7a0fca3 Change-Id: I1c8445f9c298a17115bca6b42f099a99e33d6de2 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>