summaryrefslogtreecommitdiffstats
path: root/qmake
Commit message (Collapse)AuthorAgeFilesLines
* Fail builds on Apple platforms with invalid Info.plistMaximilian Blochberger11 days1-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Information property lists (Info.plist) files are part of application bundles on Apple platforms and contain basic information about the application, such as the name of the application's executable. The Info.plist file can have multiple formats, such as binary or XML. Makefiles generated by qmake convert Info.plist files to XML by default, so that variables in the Info.plist can be substituted with values defined by qmake, such as the name of the application's executable. This is important if users use external tools such as Xcode for modifying the Info.plist file, which may save it in binary format. To convert the formats, the plutil tool shipped with macOS (or the Xcode command-line tools) is used. The Unix tool sed is then used to actually substitute variables. If the Info.plist file is invalid, e.g., due to an invalid tag name, the plutil invocation fails. However, the converted plist is piped into sed for variable substitution. The plutil command will simply write an error message to standard out and return with a non-zero exit code. Due to the pipe chain, make will not fail and the error message will end up in the Info.plist in the built application bundle. The application bundle is then invalid as well, as vital information such as the name of the executable of the application is missing. The change ensures that the pipe chain fails, if plutil exits with a non-zero exit code. The issue was introduced with my solution for QTBUG-45357. Beforehand, Info.plists and mistakes therein were simply copied into the application bundle. [ChangeLog][qmake] Fail builds on Apple platforms if the Info.plist is invalid instead of generating corrupt application bundles. Pick-to: 6.5 6.9 6.10 Change-Id: Ibdb2a18e9bbf35a654af8534aa61188f8389c55a Reviewed-by: Joerg Bornemann <[email protected]> Reviewed-by: Tor Arne Vestbø <[email protected]>
* Propagate minimum visionOS version to qmakeTor Arne Vestbø2025-06-201-0/+2
| | | | | | Pick-to: 6.10 6.9 6.8 Change-Id: I3dad6ba44a72399c95adbb78d186f78542a6db84 Reviewed-by: Christian Strømme <[email protected]>
* Doc: Fix broken link in qmake manualKai Köhne2025-05-161-1/+1
| | | | | | Pick-to: 6.8 6.9 Change-Id: I2d90f450fa9a8bb41a2517022546f561fd7feeeb Reviewed-by: Joerg Bornemann <[email protected]>
* QMake: Add ability to link against xcframeworks with XcodeJoerg Bornemann2025-03-131-3/+8
| | | | | | | | | | | | | | | | This adds rudimentary support for linking against xcframeworks. We can now do LIBS += /absolute/path/to/some.xcframework and this will end up in the frameworks section of the Xcode project. This is required for linking against the FFmpeg xcframeworks we're providing for iOS. Pick-to: 6.8 6.9 Task-number: QTBUG-86387 Task-number: QTBUG-129651 Change-Id: Id212700d3554689160d23eafb26d99ac43b91062 Reviewed-by: Alexandru Croitor <[email protected]>
* Android: bump Android target API level to 35Rami Potinkara2025-03-061-1/+1
| | | | | | | | | | | | This patch -updated target API level to 35 into build tools -updated target API level to 35 in build.gradle files Task-number: QTBUG-129461 Task-number: QTBUG-130284 Pick-to: 6.9 6.9.0 Change-Id: Iebdc99e6f607352652c3f0022f17de60eae97d58 Reviewed-by: Assam Boudjelthia <[email protected]>
* Docs: Create \Q4A macro for "Qt for Android" and replace instancesNicholas Bennett2025-02-281-1/+1
| | | | | | | | | | | | | | "Android" is trademarked and needs to be referenced in a certain way. The following steps were taken: -Created qdoc macro. -Updated "Qt Android" and "Qt for Android" to use \Q4A in qdoc files. The macro will need to be adopted in all documentation projects. Task-number: QAA-2836 Pick-to: 6.9 6.8 6.5 Change-Id: I4b52247a4ed52047242a06404e6d3aa19de9c16c Reviewed-by: Assam Boudjelthia <[email protected]>
* Docs: Move qmake-specific documentation out of Qt's documentationAlexei Cazacov2025-02-142-5/+135
| | | | | | | | | | | | This commit moves the third-party-libraries.html topic to the qmake documentation. The topic is renamed and links to it are corrected. See also: 623150 Task-number: QTBUG-132504 Pick-to: 6.9 Change-Id: I711400d887b7e4894021b0433eb1cd61dfdd5349 Reviewed-by: Joerg Bornemann <[email protected]>
* qmake: Find Apple ID via IDEProvisioningTeamByIdentifier for Xcode 16.2Tor Arne Vestbø2025-02-041-11/+8
| | | | | | | | | | | | The format of the Xcode preferences has changed, so we need to account for the new format when looking up the default development team. The account identifier (previously an email address) was not used by any consumers of the provisioningTeams() function, so it was left out. Pick-to: 6.9 6.8 6.5 Change-Id: I81a400000615594336e14c95db86ffa71a5c5ff9 Reviewed-by: Alexey Edelev <[email protected]>
* QString: toward UTF-8 arg() support [3½/4]: port unary arg() to QAnyStringViewMarc Mutz2024-12-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before porting multi-arg() to QAnyStringView, first port the unary arg() overloads for symmetry reasons (unlike the views, multi-arg() on QString is only considered for more than one argument(). This causes tension with the other arg() overloads, so finally make the overload set a sane one by using constrained templates instead of overloaded regular functions. This also solves the following problems: - that char16_t and char8_t didn't match the char-ish overloads, but the integer-ish ones, - that arg('a') matched the char overload (and therefore printed a character 'a') while arg('a', 2, 16) was ambiguous and arg('a', 2, 16, QChar('0')) called the integral overload, printing the numeric value instead, - that arg(qfloat16) was ambiguous when QFLOAT16_IS_NATIVE - that using u' ' as `fillChar` sometimes caused ambiguities (and you had to use ' '_L1 instead). Needed to explicitly exclude wchar_t from the is_string_like arg() overload, to at least keep existing behavior and not make matters worse by treating wchar_t as a string-like on Windows and as integer-like on Unix :( We'll hopefully still fix QTBUG-126054 before this is relased. [ChangeLog][QtCore][Potentially Source-Incompatible Changes] The QString::arg() overloads have been redesigned. Character-like types (char, char16_t, char8_t, wchar_t (still subject to QTBUG-126054 at the time of writing), char32_t) now always output the character, not its numeric value. In particular, char16_t and char arguments now match the string-ish arg() overload (and therefore don't provide a `base` argument anymore. A backwards-compatible fix is to cast char, char16_t, and wchar_t arguments to uint. This also fixes the ambiguity errors you may have seen when using a char16_t as `fillChar`. [ChangeLog][QtCore][QString] Unary arg() now accepts QAnyStringView (incl. QUtf8StringView). Fixes: QTBUG-125588 Fixes: QTBUG-126053 Fixes: QTBUG-126055 Task-number: QTBUG-126054 Change-Id: If0bfd92e15952738f3870a540f52a7cc470b047f Reviewed-by: Ivan Solovev <[email protected]>
* QFactoryLoader: fix the ability to load symlinks to pluginsThiago Macieira2024-10-172-2/+2
| | | | | | | | | | | | | | | Amends commit 7cf39bd785e8ba817960d48b120983cafcc539f3, which changed to use QDirListing but used FilesOnly. As documented, that does not include symlinks to files. I'm updating a few other uses of FilesOnly where they were ported from QDir::Files and it would be reasonable to expect that symlink to files would be included. That's why I've left QNetworkDiskCache alone. Fixes: QTBUG-130109 Pick-to: 6.8 Change-Id: I1fa195b42fd5e00be157fffd6c861f6ddb1eeed1 Reviewed-by: Ahmad Samir <[email protected]>
* Make per-repos WARNINGS_ARE_ERRORS workAlexey Edelev2024-09-121-1/+1
| | | | | | | | | | | | | | | | | | | | Add the WARNINGS_ARE_ERRORS flags unconditionally, so developers may control skipping per-target or per-repo. This allows setting the WARNINGS_ARE_ERRORS cmake option for each repo independently when configuring them. So qtbase might be built without the flag enabled and setting the WARNINGS_ARE_ERRORS to TRUE for the depending repo enables it for the internal Qt targets. Add the new internal function that controls the related internal flag. Keep qt_skip_warnings_are_errors for compatibility since it's used in qtwebengine. Combine qt_internal_set_skip_warnings_are_errors and qt_skip_warnings_are_errors_when_repo_unclean functionality in the new qt_internal_default_warnings_are_errors function. Change-Id: I1330c75cd67a24e6386f5e94a089e43fa2012bc4 Reviewed-by: Alexandru Croitor <[email protected]>
* Docs: Organize topics in the qtbase repoAlexei Cazacov2024-08-132-4/+37
| | | | | | | | | | This commit organizes the articles, so they: - have a reasonable tree structure - can be navigated through the topic tree in the Qt Creator help viewer Task-number: QTBUG-127046 Change-Id: I66f2b131b8aacc887b35a770e51c1425431dffb5 Reviewed-by: Topi Reiniö <[email protected]>
* Doc: Update \externalpage entries for Qt Creator documentationLeena Miettinen2024-08-021-1/+1
| | | | | | | | | | - The docs were restructured in v. 13.0 and 14.0, so most headings changed, some topics were removed and lots of topics were added - Use the macro \QC - Fix the broken links in qtbase Change-Id: Ic173a3e9a1c80322162c3feb277098de2a9f1cc6 Reviewed-by: Topi Reiniö <[email protected]>
* CMake: Only build QtLibraryInfo if we are building toolsAlexandru Croitor2024-07-191-45/+49
| | | | | | | | | | | It is a dependency for qmake and qtpaths. If neither of them are built, because building tools might be disabled, skip building the library as well. Pick-to: 6.8 Task-number: QTBUG-127334 Change-Id: I0f7d5bc9d9a4539a6d25f7c2d841e9b8978a83a3 Reviewed-by: Alexey Edelev <[email protected]>
* CMake: Allow building qmake docs in a documentation-only buildAlexandru Croitor2024-07-191-3/+13
| | | | | | | | | | | | | | | | | | | | | We never added the qmake subdirectory if we didn't build tools. Thus we never created a doc target to build qmake's documentation. Make sure we add the qmake subdirectory regardless of whether we build tools or not. qt_internal_add_tool can then make sure to skip building the tool if necessary. If the tool is not created though, create a fake qmake INTERFACE library target, so that qt_internal_add_docs has a target to work with. Amends 5c352f47b977c72db323bb8e7b6ac25e1a453202 Pick-to: 6.8 Fixes: QTBUG-127334 Change-Id: I41cc96fb6ad21e32e17d312ea474835dfa38528e Reviewed-by: Alexey Edelev <[email protected]> Reviewed-by: Joerg Bornemann <[email protected]>
* qmake: Add support for arm64 hosts on WindowsOliver Wolff2024-07-151-0/+5
| | | | | | | Pick-to: 6.8 Change-Id: I0096300fce870ef4411b071f074588a6420188e0 Reviewed-by: Alexey Edelev <[email protected]> Reviewed-by: Joerg Bornemann <[email protected]>
* qmake: Use utimensat on macOS when propagating mtime during installTor Arne Vestbø2024-07-081-4/+10
| | | | | | | | | | | | | | | | | | | | macOS only claims to conform to POSIX.1-2001, but has had utimensat since macOS 10.13. By enabling the utimensat code path, using stat.st_mtimespec as input, we get nanosecond precision when qmake installs files. Without this the tst_qmake::install_files tests fails due to the source file having a sub second timestamp -- 2023-07-31 15:58:12.468 -- while the installed does not: 2023-07-31 15:58:12.000. The reason this test passes in the CI right now is probably because the source file archive we use to pass test sources to the test machines does not support the same level of precision. Pick-to: 6.8 Change-Id: I6ca7a2a2f9e71981814cbf496aa55717b3a3f74f Reviewed-by: Thiago Macieira <[email protected]>
* QDirListing: add flags to handle entries filteringAhmad Samir2024-06-272-4/+3
| | | | | | | | | | | | | | | | | | By extending IteratorFlag so that it replaces both QDir::Filter and QDirIterator::IteratorFlag enums, but with better defaults (based on how QDir/Iterator is used in 15-20 years worth of code in Qt and KDE). Make the QDirListing(QDir ~~) ctor private, also change it to use QDirIterator::IteratatorFlags; it will be used to port existing code. If QDir is ported to use QDirListing::IteratorFlags, instead of QDir::Filters, a public QDirListing(QDir) constructor can then be added. Pick-to: 6.8 Fixes: QTBUG-125504 Task-number: QTBUG-125859 Change-Id: Ide4ff8279f554029ac30d0579b0e8373ed4337f7 Reviewed-by: Thiago Macieira <[email protected]>
* CMake: Annotate some targets with SBOM informationAlexandru Croitor2024-06-131-0/+4
| | | | | | | Pick-to: 6.8 Task-number: QTBUG-122899 Change-Id: I2eb70ca4d52e30c8e15ca7b350df6965d93732f8 Reviewed-by: Alexey Edelev <[email protected]>
* Move QT_DISABLE_DEPRECATED_UP_TO and QT_WARN_DEPRECATED_UP_TO to headerAlexey Edelev2024-05-221-3/+0
| | | | | | | | | | | | | | The new approach allows to imply the macro definitions for every Qt submodule and user project without the need of setting it explicitly from CMake. This also prevent users from introducing the incompatibility between Qt modules due to defining the QT_DISABLE_DEPRECATED_UP_TO version lower than qtbase was built with. Task-number: QTBUG-124765 Change-Id: I7ba481f62cb9073ae0343c400ffc26f239f080f1 Reviewed-by: Ivan Solovev <[email protected]> Reviewed-by: Alexandru Croitor <[email protected]>
* QMake: Fix generation of Visual Studio filter filesJoerg Bornemann2024-04-191-1/+1
| | | | | | | | | | This amends commit a0a990863fa54b52db5e97716b130f69de47fa52. We bailed out of writing the filter file if opening the file for writing was successful. The condition must be flipped. Change-Id: I24331c5374a25c5a1126c6f7f71d41d840e0e532 Reviewed-by: Oliver Wolff <[email protected]>
* QMake: make it error out if it cannot open output filesGiuseppe D'Angelo2024-03-272-3/+12
| | | | | Change-Id: I02c979e31f4208cbf9d590e043cf7f03eb4a39d6 Reviewed-by: Joerg Bornemann <[email protected]>
* Port to QDirListingAhmad Samir2024-03-032-16/+13
| | | | | | | | | | | Use QDirListing in the Bootstrap build instead of QDirIterator. Drive-by changes: - more const variables - use emplace_back() instead of append() where appropriate Change-Id: Ie1f0d03856e557c4bfabfff38a87edc7da86d091 Reviewed-by: Thiago Macieira <[email protected]>
* Doc: qmake manual: Fix links to 'Qt Widgets Designer'Topi Reinio2024-02-291-4/+6
| | | | | | | | | | | | 'Qt Designer', and related documentation links, were renamed to 'Qt Widgets Designer'. Amends 8aceccc7eb075cef442dfe725137068d90e40940. Task-number: QTBUG-122253 Change-Id: I38d8b221716de59fe8faefbd4928eb1007e19b81 Reviewed-by: Friedemann Kleint <[email protected]> Reviewed-by: Leena Miettinen <[email protected]>
* Doc: Further replace 'Qt Designer' with 'Qt Widgets Designer'Kai Köhne2024-02-291-2/+2
| | | | | | | | | | Use \QD macro wherever possible. Amends 8aceccc7eb075 Task-number: QTBUG-122253 Change-Id: I276dabd40fb81486f6380fd90cf9968990932a24 Reviewed-by: Joerg Bornemann <[email protected]>
* Correct doc snippet licenseLucie Gérard2024-02-281-1/+1
| | | | | | | | | | | | | | All file under doc/snippet should be license as Documentation snippets and according to QUIP-18 [1] this is LicenseRef-Qt-Commercial OR BSD-3-Clause [1]: https://contribute.qt-project.org/quips/18 Pick-to: 6.7 Task-number: QTBUG-121787 Change-Id: I76eedfb6b15c4091f726a5652e3530001d7cdaf7 Reviewed-by: Volker Hilsheimer <[email protected]>
* Fix the qtpath issue with lto enabledAlexey Edelev2024-02-281-1/+1
| | | | | | | | | | | | Move qtconfManualPath pointer to the unnamed namespace, so it's never exported. Add the static setQtconfManualPath method that sets the pointer at runtime. Fixes: QTBUG-122739 Pick-to: 6.5 6.6 6.7 Change-Id: Icfc631f9680ad5f484920b0fdf3e408b7657c108 Reviewed-by: Joerg Bornemann <[email protected]> Reviewed-by: Thiago Macieira <[email protected]>
* Correct license in qmake/Lucie Gérard2024-02-134-4/+4
| | | | | | | | | | | | | | The majority of files in qmake/ have non-LGPL licensing. Remove the mix of licenses and follow the majority. Not sure what is the type of the files in qmake/ according to QUIP-18 [1]. [1]: https://contribute.qt-project.org/quips/18 Pick-to: 6.7 Task-number: QTBUG-121787 Change-Id: I4003daada9e20b9ea4524de89ba49fbe0880ec23 Reviewed-by: Kai Köhne <[email protected]>
* qmake: use [[fallthrough]]Tim Blechmann2024-02-121-1/+1
| | | | | | | | | | | Since qt is on C++17, it's possible too use the [[fallthrough]] attribute instead of a // Fallthrough comment, that may be stripped by compiler launchers (ccache/icecc), causing -Wimplicit-fallthrough warnings. Pick-to: 6.7 Change-Id: Ic809cf4e95b2160fac591b3802fa123e705337cc Reviewed-by: Marc Mutz <[email protected]>
* qmake: make unity-buildableTim Blechmann2024-02-101-1/+3
| | | | | | | | | msvc_objectmodel.cpp and qmakeparser.cpp have symbols that may clash. Removing them from unity builds allows qmake to be unity-built. Pick-to: 6.7 6.6 6.5 Change-Id: I46443ec979142ab2ebb686f9444b37e1043f0af1 Reviewed-by: Marc Mutz <[email protected]>
* Remove extra semi-colonsTasuku Suzuki2024-02-061-1/+1
| | | | | Change-Id: I92fddb36cd136fd1bd627955f15d0559b9942d7e Reviewed-by: Allan Sandfeld Jensen <[email protected]>
* Change license of .pro fileLucie Gérard2024-02-011-1/+1
| | | | | | | | | | | According to QUIP-18 [1], all build system files should be BSD-3-Clause [1]: https://contribute.qt-project.org/quips/18 Pick-to: 6.7 Change-Id: Ifd2832708e0c8e0bde1cad4004839fecffe44e3c Reviewed-by: Kai Köhne <[email protected]>
* Remove build machine path that was baked into the qmake binaryJoerg Bornemann2023-12-131-4/+4
| | | | | | | | | | | | | Remove the __FILE__ preprocessor macro that contains the full path to the current source file. This is needed for reproducible builds. The macro was only used for two debug messages. It's enough to mention the file name - if at all. Fixes: QTBUG-96281 Pick-to: 6.5 6.6 6.7 Change-Id: I7940ec090b570ec0105196a881e4c73c279bd248 Reviewed-by: Alexandru Croitor <[email protected]>
* Android: bump Android target API level to 34Rami Potinkara2023-11-301-1/+1
| | | | | | | | Bumped on network related .gradle files too. Fixes: QTBUG-119145 Change-Id: I95f70e6cda1aad7a6bd7246c623eb6f143a829cb Reviewed-by: Assam Boudjelthia <[email protected]>
* clang-cl: remove unneeded workaroundYuhang Zhao2023-10-081-6/+0
| | | | | | | | | | This piece of code may be some old workaround, but anyway Qt doesn't need it anymore. Removing them doesn't cause any compilation errors or even warnings. We should not keep any workaround if they are not needed anymore. Change-Id: Ieae8c2b005fa5e556c838d78d839d498101f28ff Reviewed-by: Thiago Macieira <[email protected]>
* Doc: Fix link in QMake variable referenceJoerg Bornemann2023-10-041-1/+1
| | | | | | | | | In the description of the qt value of the CONFIG variable the link to the QT variable was broken. Pick-to: 6.5 6.6 Change-Id: I07dc1993ce0cefb7615d02aaefb9ad8391b1dd39 Reviewed-by: Leena Miettinen <[email protected]>
* Android: bump Android target API level to 33Assam Boudjelthia2023-09-231-1/+1
| | | | | | | | | To follow latest Play Store requirement. Pick-to: 6.6.0 6.6 6.5 Fixes: QTBUG-112637 Change-Id: I1ef4f8b639f4b0cc759a2363b7b9b9864b159509 Reviewed-by: Ville Voutilainen <[email protected]>
* Doc: Document TR_EXCLUDEJoerg Bornemann2023-08-252-0/+41
| | | | | | | Pick-to: 6.5 6.6 Change-Id: Ib2e06e46f44564a2c7581ff4d7f3d8a29d2756c9 Reviewed-by: Edward Welbourne <[email protected]> Reviewed-by: Kai Köhne <[email protected]>
* Doc: Add proj folders to antivirus exception listSafiyyah Moosa2023-08-171-0/+3
| | | | | | | | | | Add a note to state that Qt projects and user project build folders should be added to the antivirus exception list. Task-number: QTBUG-114928 Pick-to: 6.5 6.6 Change-Id: I4873dc75506d55a9e6c2a2614eb8f05c14f37142 Reviewed-by: Topi Reiniö <[email protected]>
* Allow to override build date with SOURCE_DATE_EPOCHBernhard M. Wiedemann2023-08-091-1/+4
| | | | | | | | | | | | | | | [ChangeLog][qmake] Allows to override _DATE_ with SOURCE_DATE_EPOCH to make builds reproducible. See https://reproducible-builds.org/ for why this is good and https://reproducible-builds.org/specs/source-date-epoch/ for the definition of this variable. Fixes: QTBUG-115737 Change-Id: I1964aa0a3d849628440618aa6f0a51af2017d824 Reviewed-by: Alexey Edelev <[email protected]> Reviewed-by: Alexandru Croitor <[email protected]> Reviewed-by: Joerg Bornemann <[email protected]>
* qtpaths: generate proper JSONGiuseppe D'Angelo2023-07-081-5/+10
| | | | | | | | | | | | | | | | | | The "manual" generation left a trailing comma in the object definition. This is illegal, as per RFC 8259: object = begin-object [ member *( value-separator member ) ] end-object Hence, the resulting JSON does not get accepted by any parser. Let's just not do that and use QJsonDocument. Change-Id: I882486e55f66c52d142638f37584088091bbc123 Pick-to: 6.2 6.5 6.6 Fixes: QTBUG-115124 Reviewed-by: Alexandru Croitor <[email protected]> Reviewed-by: Alexey Edelev <[email protected]>
* Doc: Document QMAKE_APPLE_DEVICE_ARCHSJoerg Bornemann2023-06-271-0/+14
| | | | | | | Pick-to: 5.15 6.5 6.6 Fixes: QTBUG-114847 Change-Id: I8211025d470cf2ef1d1755a5a18195f318661e69 Reviewed-by: Tor Arne Vestbø <[email protected]>
* Use a global value for warning limit when testing documentation in CITopi Reinio2023-06-271-3/+0
| | | | | | | | | | | | | | | | | | | The most common limit for the maximum number of allowed documentation warnings is zero. Use a global value for 'warninglimit', adopted by all Qt module documentation projects that include the configuration from qtbase/doc/global. This allows for a temporary increase of the limit across all modules as needed - for example, when updating the QDoc binary that the CI provisions to a version that introduces new types of documentation warnings. Increase this base limit temporarily to 10 to help re-enable documentation testing in CI as it's currently disabled. Task-number: QTBUG-113326 Change-Id: I8b66951ca9324bcfaec3b5a7ec2cff544c62feb0 Reviewed-by: Paul Wicking <[email protected]>
* Doc: Remove \target commands from the qmake manualTopi Reinio2023-06-211-194/+45
| | | | | | | | | | | | | | | | | | | | A \target defines a global doc linking target across all Qt modules, and they may interfere with link targets local to module documentation. As we no longer link as heavily to qmake manual after moving to CMake, remove the \target commands. The section titles remain as valid link targets; arguably, duplicating a \section1 title with an identical \target name was unnecessary in any case. Replace all \l command arguments that used the \target for linking with the actual section title. Pick-to: 6.6 6.5 Fixes: QTBUG-114073 Change-Id: I6e595a77268cbd6ddb5d004501bc6df178c3883d Reviewed-by: Andreas Eliasson <[email protected]> Reviewed-by: Paul Wicking <[email protected]> Reviewed-by: Joerg Bornemann <[email protected]>
* Re-fix QtLibraryInfo compilation issuesYuhang Zhao2023-06-091-9/+6
| | | | | | | | | | | | | After the "CMake: make compile options consistent for Qt created libraries" revert, this part of the code also get reverted, however, it's not related to the revert reason: the user project's deprecation behavior is changed. So restore this code. We need this code to make sure we use the same parameters when compiling QtLibraryInfo, otherwise some compilers may complain about it, such as clang-cl. Pick-to: 6.6 6.5 Change-Id: Ie50d4f820be3a2e950dd87902d794f1d2681b7a5 Reviewed-by: Alexey Edelev <[email protected]>
* Revert "CMake: make compile options consistent for Qt created libraries"Alexandru Croitor2023-06-081-6/+12
| | | | | | | | | | | | | | This reverts commit 389507a047e0ec0721535052df6ddf957fbb95b3. Reason for revert: The original patch unintentionally changes the deprecation warning behavior for user projects. Merging the current change will resurface the original static qt build bug until a new fix is developed. Pick-to: 6.6 Change-Id: I29b41b43fdd76b19bc46439470e04443dc2b8ddb Reviewed-by: Alexey Edelev <[email protected]> Reviewed-by: Yuhang Zhao <[email protected]>
* Add TRY_RUN to host toolsAmir Masoud Abdol2023-06-081-0/+1
| | | | | | | | | | | | On Windows, we will try to run our host tools after a successful build. If the build fails because of a missing DLL, we will be able to throw an error with some direction on what might be the cause, and how to resolve it. Pick-to: 6.5 6.6 Fixes: QTBUG-113273 Change-Id: Iba548829bc41fbee95cef288faaf7edca118ee33 Reviewed-by: Alexandru Croitor <[email protected]>
* CMake: make compile options consistent for Qt created librariesYuhang Zhao2023-05-311-12/+6
| | | | | | | | | | Currently some libraries created by Qt are lacking some compile definitions and compile options, and this issue is causing us troubles when building Qt statically. This patch tries to reduce the parameter difference when compiling Qt's own libraries. Change-Id: I3842943a874fab32ef90980e8aa29f5beb01feeb Reviewed-by: Alexey Edelev <[email protected]>
* QMake: fix build with clang-clYuhang Zhao2023-05-031-0/+2
| | | | | | | | We need to enable or disabled exception handling for this library explicitly when using clang-cl, otherwise clang-cl will throw an error and stop compiling. Pick-to: 6.5 Change-Id: I2b2a9e5eb009cb8ce264f2de58f8bb4fdb2339c1 Reviewed-by: Joerg Bornemann <[email protected]>
* qmake: Don't add dummy empty.lproj localization to macOS bundlesTor Arne Vestbø2023-04-201-1/+0
| | | | | | | | | | | | | | | | The original change from 2008 mentions that this was needed for preventing a crash when searching the native file dialog, but this has since been fixed. Nor is the file needed to get localized native file dialogs, as this is controlled by the combination of the app's supported localization or CFBundleAllowMixedLocalizations. And we don't do this for CMake projects. Pick-to: 6.5 Change-Id: I3c9e5aee4707c019f733920eb088f8d84f8e4ee1 Reviewed-by: Alexandru Croitor <[email protected]>