aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/install-qt.sh
Commit message (Collapse)AuthorAgeFilesLines
* Add docker image focal-android-650 and workaround armv7 packageRaphael Cotty2023-05-191-1/+2
| | | | | Change-Id: I2a0be7bf2102f738be3fd6b184d21982b359f3b8 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Merge 2.0 into masterChristian Kandeler2023-05-031-0/+7
|\ | | | | | | Change-Id: I521dd5baab4b4374f9221a163ba8e83531edf8bb
| * install-qt.sh: Support Qt6 iOSIvan Komissarov2023-05-021-0/+7
| | | | | | | | | | Change-Id: I32bfea051b52e96a60bc4410dd89a72fd7bb286e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Add docker image focal-android-642 and workaround armv7 packageRaphael Cotty2023-03-051-1/+7
|/ | | | | | | | | Add docker image focal-android-642 and corresponding github action. Add workaround QTBUG-111713 to correct Qt 6.4.2 android armv7 package. Change-Id: I8f7c5fd566237d4c490fb6014b0a4efbb6f04a53 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* install-qt.sh: fix mingw install dirIvan Komissarov2023-02-141-2/+6
| | | | | | | | The installation directory for mingw 9.0 was detected incorrectly which lead to the fact we used the wrong compiler in CI. Change-Id: I4635dde0cf68eacc8436e6393609162e15add418 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Switch JavaScript back-endChristian Kandeler2023-02-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Newer clang versions seem to expose serious bugs in QtScript, whose complexity makes it difficult to track them down. We therefore switch to the more light-weight QuickJS, which offers all the features we need (most notably property access interception), as well as good performance. To save some porting effort, we removed the long-deprecated loadFile() and loadExtension() functions. During the porting procedure, we noticed and fixed thread safety issues in artifact access from JS commands. We consider this change important enough to bump the major version, so the next release will be 2.0. Detailed benchmarking data is below. In summary, we see a modest speed- up at the cost of a similarly modest increase in memory consumption (with the exception of project resolving on macOS, which has become a bit slower). Importantly, the increase does not rise with project size, as the comparison of qbs vs Qt Creator shows. Output of qbs_benchmarker on Linux with qbs as test project: ========== Performance data for Resolving ========== Old instruction count: 12870602895 New instruction count: 11923459780 Relative change: -8 % Old peak memory usage: 61775848 Bytes New peak memory usage: 67583424 Bytes Relative change: +9 % ========== Performance data for Rule Execution ========== Old instruction count: 4074062223 New instruction count: 3887473574 Relative change: -5 % Old peak memory usage: 35123704 Bytes New peak memory usage: 38398392 Bytes Relative change: +9 % ========== Performance data for Null Build ========== Old instruction count: 1104417596 New instruction count: 1011033948 Relative change: -9 % Old peak memory usage: 24461824 Bytes New peak memory usage: 25325920 Bytes Relative change: +3 % Output of qbs_benchmarker on Linux with Qt Creator as test project: ========== Performance data for Resolving ========== Old instruction count: 67166450352 New instruction count: 60772791018 Relative change: -10 % Old peak memory usage: 327011616 Bytes New peak memory usage: 343724176 Bytes Relative change: +5 % ========== Performance data for Rule Execution ========== Old instruction count: 71684351183 New instruction count: 67051936965 Relative change: -7 % Old peak memory usage: 374913688 Bytes New peak memory usage: 387790992 Bytes Relative change: +3 % ========== Performance data for Null Build ========== Old instruction count: 8383156078 New instruction count: 7930705668 Relative change: -6 % Old peak memory usage: 180468360 Bytes New peak memory usage: 182490384 Bytes Relative change: +1 % Real-world data building Qt Creator (using qbs --log-time, several runs, removing outliers): macOS: Resolving: 43s -> 47s Rule execution: 17s -> 14s Windows: Resolving: 18s -> 16s Rule execution: 22s -> 17s Fixes: QBS-913 Fixes: QBS-1103 Fixes: QBS-1126 Fixes: QBS-1227 Fixes: QBS-1684 Change-Id: Ie5088155026e85bbd1e303f1c67addb15810a3cb Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* Github actions: Update mingwChristian Kandeler2022-10-141-1/+1
| | | | | | | | | 8.1 has a bug that we run into when compiling quickjs (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86048). Change-Id: I1df7e7f3e2e0d39f44d1c8636f74c3333167db0d Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix install-qt.shIvan Komissarov2022-07-271-2/+2
| | | | | | | | | The condition should not affect ios This amends 59e983d5d998d62930e590264ff70314b84f3a90. Change-Id: I6c1912d43d455188476976712be0a6b4989e128a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Docker/github action: update mirrors and use Qtc 5.0.3Raphael Cotty2021-12-101-1/+0
| | | | | | | Update available mirrors which all provide Qtc 5.0.3. Change-Id: I9315c607bbdfd6a7fdb8a8e00f99df41aba8b97f Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* install-qt.sh: A number of small fixesThorbjørn Lindeijer2021-09-221-2/+4
| | | | | | | | | | | | * Starting with Qt 6.1.2, Qt for macOS is installed to a subdirectory called "macos" instead of "clang_64". * Fixed the version variable used in Android related condition. * Fixed the path printed for 32-bit MinGW installations. Change-Id: I87d339caab8fa549efff3963f75416a06b4e9923 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Don't use download.qt.io by defaultIvan Komissarov2021-06-241-1/+1
| | | | | Change-Id: I8f12950125a7e9b5d79ef732ce306895170e61ea Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Use 64bit QtC version instead of 32-bit oneIvan Komissarov2021-05-061-0/+5
| | | | | Change-Id: I34347e51eecb076872181ef71094a1189f436407 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* GitHub actions: Add MinGW build and tests on WindowsIvan Komissarov2021-05-061-0/+13
| | | | | Change-Id: I50944a7ad0a1f4f2fc09bcaab43fc88044107ff9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* install-qt.sh: Skip modules that are not existent in requested versionIvan Komissarov2021-03-021-0/+16
| | | | | Change-Id: I1d918c8c56891e980aa862c005eb0b0a6114626a Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* qt6: fix install-qt.sh to support the qt5compat moduleIvan Komissarov2021-02-151-0/+1
| | | | | Change-Id: I2d2ba4ce54b4099b44c2f3124128ec87ac422e93 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix installation directory for the QtCreator componentIvan Komissarov2021-02-151-9/+16
| | | | | | | | | | We have several places (e.g. in docker files) that assume that QtCreator is installed into /opt/Qt/Tools/QtCreator This amends 7f1ee5c871699f89e7fdd741fcd1f0b2167a203b Change-Id: Ifb122c105b95acd18c6e938009fd87529791d16d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Make use of mirrors to download QtRichard Weickelt2021-01-211-2/+18
| | | | | | | The list is just a random selection. Change-Id: I0835f93bf2b83eb16aa6daee54c40f34dcc58bb4 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Install qtcreator from the official release packagesRichard Weickelt2020-11-211-8/+6
| | | | | | | | | | Previously the script used the packages of the online installer. Since all old QtCreator releases have been removed from that repository, we switch to the official release packages which provide .7z files containing prebuilt binaries as well. Change-Id: I5ebf3420ffa25043796f09403ea47cd7f026b602 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Android: Update for Qt 6Raphaël Cotty2020-11-171-4/+18
| | | | | | | | | | Manage the new directory layout of Qt6. Update generation of the input file for androiddeployqt. Fixes: QBS-1613 Fixes: QBS-1609 Change-Id: Ie633fad467f310bfc4cd42e9c32d9cfc2e734582 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Initial support for GitHub ActionsIvan Komissarov2020-09-011-2/+6
| | | | | | | | | | This commit adds jobs similar to what we have in Travis. Some tests are disabled when running on GitHub since they do not pass for various reasons. Note that those tests are usually skipped on Travis due to missing dependencies. Change-Id: Icec96dc22e2939d12568d2de1f1a4537c35977ad Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Use md5 tool on macOSRichard Weickelt2020-05-251-2/+3
| | | | | | | | | The md5sum tool is not available on macOS by default. Travis has it, but most systems do not. There is a md5 tool instead, which can produce compatible output. Change-Id: I64c205757effda85920d10a717ecc70e0dad6c91 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Do not reinstall Qt if already installedRichard Weickelt2020-05-111-1/+29
| | | | | | | | | | | The server download.qt.io is frequently overloaded. Instead of re-installing Qt every time, try to check if the desired packages are already installed. Utilize Travis' caching meachanism for Qt installations. Change-Id: I4ff1c05b93fd1f0224a7ea4e4869998a21478bfc Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Prepare install-qt script for Qt 5.14 Android multi-abi packagesRichard Weickelt2019-11-071-42/+27
| | | | | | | | In order to avoid even more if clauses I took the chance and refactored the URL tests. Change-Id: I66df65020f11d62fd737ebb1cadcd27f0aedf73b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Switch to Qt installer script in Docker containerRichard Weickelt2019-08-231-0/+7
| | | | | | | | | | | Use the official packages instead of compiling Qt ourselves. This simplifies the Docker image a lot. For accessing the script folder, the Docker context needs to change to the root directory. Thus, we need a .dockerignore file to keep the size of the context low. Change-Id: I58ec8f364feba955518f1eaf5bff234332ae8dec Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Minimal Qt installer scriptRichard Weickelt2019-08-131-0/+298
One of the main problems in virtual environments like Travis CI is how to install Qt and QtCreator. The official installer provided by the Qt Company is almost unusable from command line. It is even harder to select only certain components (especially QtScript). Luckily, all components are available online under http://download.qt.io. This script installs components from the official Qt package repository. It can be used in any bash environment to simplify the setup procedure and supports every valid combination of host OS, target platform (desktop, android, ios) as well as toolchains. Dependencies: - bash - curl - 7z Change-Id: Ia2080cb80df98551332eb02c85c5933fd3bdaa4e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>