Commit Graph

49499 Commits

Author SHA1 Message Date
Tor Arne Vestbø
58afadc624 Update setHighDpiScaleFactorRoundingPolicy docs
The default is now passthrough. And let's not mention the
environment variable overrides, as they are meant for internal
testing.

Pick-to: 6.0
Pick-to: 6.0.0
Change-Id: Ie2409e5411d4bdcdf041834cb5ca9e1215aa173a
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2020-11-27 12:26:51 +00:00
Allan Sandfeld Jensen
05bb9b1016 Also remove 0 initialization from QUrlTwoFlags
Was overlooked when removed from QFlags

Pick-to: 6.0 6.0.0
Change-Id: If65ff4a07e2f72589d2c32c2d24366ff9dc2405f
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-11-27 12:26:51 +00:00
Paul Olav Tvete
16fa6e2f62 RHI: Fix attribute instancing cleanup for OpenGL ES
The previous attribute instancing patch (6493b93) performed the
cleanup too late for the case where the command buffer ends with an
EndFrame command and core profile is used. Resetting the attribute
divisors needs to be done before the vertex array is unbound.
Otherwise the state will be wrong at the start of the next call
to executeCommandBuffer(), which is normally the start of the next
frame.

Change-Id: Ic76695b4d334ed1c1e816e747417d957c387a88b
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2020-11-27 13:26:51 +01:00
Andy Shaw
420e27c9ef Return an empty QStringList if the family string is empty
Since doing a split will create an empty entry, then we can save time
and just return an empty QStringList in this case

Change-Id: I86a6532e7243151493ea4021bfcc05e4c2a9cbf0
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2020-11-27 08:28:26 +01:00
Allan Sandfeld Jensen
c7a335817e Limit pen width to maximal 32767
Fixes oss-fuzz 25195

Pick-to: 5.12 5.15 6.0
Change-Id: I8c68cf71f6702d8b1b1a2ddda3284c14f02d7972
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2020-11-27 08:28:26 +01:00
Kai Koehne
efa05e0417 Doc: Consistently use book style capitalization for QString
Pick-to: 5.15 6.0
Change-Id: I2ab64fe58ad737b23f0829ed91591efaa0c22c6f
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-11-27 08:28:25 +01:00
Kai Koehne
90c3513f37 Doc: Linkify all mentionings of QT_NO_CAST_TO_ASCII
This way the user can directly click the link, instead of looking at the
'see also' section.

Pick-to: 6.0
Change-Id: I50b62fe0b376a3f6462c11abc46a001c334ba82a
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-11-27 08:28:25 +01:00
Kai Koehne
50873153a7 Doc: Improve *_CAST_FROM_ASCII documentation
Pick-to: 5.15 6.0
Change-Id: Iba73c0a38e2c4add740aab20036aa39c56eb4d98
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-11-27 08:28:25 +01:00
Florian Bruhin
300b8314f5 Fix broken \endcode marker in Qt 6 porting docs
Change-Id: I8dfd72f6a00a6c91a38bb201b14524b0bc7cf100
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit e723f0aceb7de3b52fb40de3ef1fe0259fce47a8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2020-11-27 07:28:25 +00:00
Volker Hilsheimer
27f78b9da5 Fix compiler warning from comparing signed to unsigned
std::vector::size returns size_t, which is unsigned.
Change-Id: I81ba3d58a1bd3a3c3d90c911263a5c0df0441b16
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
2020-11-27 07:28:25 +00:00
Volker Hilsheimer
c2dbc26893 Fix compiler warnings from deprecated method
QTextCharFormat::fontFamily is deprecated in favor of fontFamilies,
which returns a QStringList wrapped in a QVariant, whereas the setter
expects a QStringList.

Change-Id: I3333eaae4fc5ec3e3bdbec58047d6b3554b4a171
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2020-11-27 07:28:24 +00:00
Volker Hilsheimer
63c5d13885 Fix compiler warning from deprecated function
Change-Id: I34d6788fd5b9ab004b0e337933bea90c8f63717a
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2020-11-27 08:28:24 +01:00
Fabian Kosmale
5abe64928c QCache: Fix crash observed in tst_QAccessibility
Fixes a use-after-free which can reliably be observed under ASAN. In
QConfFileSettingsPrivate::~QConfFileSettingsPrivate we call
unusedCache->insert(conf_file->name, conf_file, ...)
Note that the key is a member of the object. Thus by deleting the object
before using the key, we dereference a dangling pointer.

Amends f08492c6fd.

Change-Id: I3a550fc73446b72dd46456232e85f6d206d64c01
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
(cherry picked from commit 5283ee71040dc2f3a762e9cc5e807fb17587e9b7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2020-11-27 07:28:24 +00:00
Friedemann Kleint
d3caea04dc Windows QPA: Pass device for synthesized touch/tablet events
Add the overloads for mouse events with device/without timestamp
and pass the active tablet or touch device.

Task-number: QTBUG-88678
Task-number: QTBUG-46412
Pick-to: 6.0
Change-Id: I8695b493540d0cbf50e9c72afe870a7633de3ab9
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2020-11-27 08:28:24 +01:00
Friedemann Kleint
21fa38b6ad QtWidgets: Propagate event device when translating mouse events
There are a few places left over, for example the QTextEdit
creating mouse events in a timer and notably QGraphicsView.

Task-number: QTBUG-88678
Task-number: QTBUG-46412
Pick-to: 6.0
Change-Id: I7ed23911be3b86b4b39fb478b947ec3b7a60761f
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2020-11-27 08:28:24 +01:00
Fabio Falsini
88ab9e1800 Change android target SDK version to 29
Play Store now accept only app with target
SDK version set to 29 or above

Pick-to: 6.0
Change-Id: If38f20c88fd6b0e6f29939cdf3d2eb793c0e1489
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2020-11-26 20:05:41 +01:00
Joerg Bornemann
032c536644 qmake: Sync back changes from qttools
Copy back changes to qmake internals that were done in qttools.
This makes it easier to keep the qmakelib copies in sync.

The code guarded by PROEVALUATOR_CUMULATIVE is not used by qmake itself,
but only by lupdate and Qt Creator. It seems to be sensible to have the
same behavior with regards to feature file evaluation in both
projects. It was originally introduced in qttools for QTBUG-62478.

The change regarding QT_BOOTSTRAPPED is safe, because the 'process'
feature is available and off in the boostrapped case.

Change-Id: I030ca8b093c017040a9ff9f4bb09a7cca4aa8964
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-11-26 20:05:41 +01:00
Xiang Xiaojun
6269438af9 QPushButton: fix support of style sheet rule for text alignment
Fixes: QTBUG-86857
Pick-to: 5.15 6.0
Change-Id: I7e3e2b5323b1e46f572cacfddae20cb6e7882a47
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-11-26 14:43:20 +01:00
Zou Ya
5b93f6cae6 Reduce the scope of variables in exec() and fetchNext()
The scope of the variable 'currBind' can be reduced if the variable 'r'
is not 0. So declare the variable when the variable 'r' is 0. The local
variable 'i' shadows outer variable in fetchNext(), so move it to the
front of switch.

Don't declare 'res' until we need and initialize it.

Change-Id: Idfb220b96cfbcd4088fd7858ed9392d0a3e10aea
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-11-26 14:43:20 +01:00
Volker Hilsheimer
6cb36d825d Rename Application Example
Prefix it with "Qt Widgets -" to make it a bit clearer in the list of
highlighted examples which module this one is about.

Pick-to: 6.0 6.0.0
Change-Id: I0bf65b02db72173f1adfe0bcf8657be7905dbd6c
Reviewed-by: Tuukka Turunen <tuukka.turunen@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-11-26 14:43:20 +01:00
Giuseppe D'Angelo
5771591fbc QString/QByteArray: add erase() for iterators
Otherwise they're not usable with iterator-based algorithms
that e.g. remove, partition and the like.

[ChangeLog][QtCore][QString] Added erase().

[ChangeLog][QtCore][QByteArray] Added erase().

Change-Id: I78829b1a5365dd53b6b6423ceedbc52edeafbc63
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
2020-11-26 14:43:20 +01:00
Giuseppe D'Angelo
b475c3e67e QVLA: modernize some code
Use if constexpr instead of plain if; use C++17 algorithms
instead of hand-rolled loops.

Change-Id: Ifa092f892199b9b21bad04b2d72d5e3117a1b377
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
2020-11-26 14:43:20 +01:00
Giuseppe D'Angelo
e6e67f31c1 QVLA: always use new to create new objects
Even for non-complex types, it makes no sense to use the assignment
operator instead of placement new when constructing new objects.

Pick-to: 6.0 5.15
Change-Id: I5f15fe4b3397cf52d1d35e6c4dcc513b94b3cf14
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
2020-11-26 14:43:20 +01:00
Maks Naumov
cc1c40c2de QEventDispatcherWin32Private: Get rid of TimerInfo struct list
It was redundant with the timer info dictionary, and was even used
where using the dictionary would have been more efficient.

Change-Id: Ia656bf9b56c61e23df9f8743d8f8efbf65d37574
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com>
2020-11-26 08:36:44 +02:00
Christian Ehrlicher
9a090875c0 QTextDocument: allow css border-style of table collapsed cell borders
8664ee610d added support for collapsed
borders but set the style to solid no matter what border-style defined.
Fix it by properly setting the desired border style.

Task-number: QTBUG-36152
Change-Id: Ie527511f831e7f62ab7064d4958b35ddbf1a9403
Pick-to: 5.12
Reviewed-by: Nils Jeisecke <nils.jeisecke@saltation.com>
Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
2020-11-26 07:36:43 +01:00
Paul Olav Tvete
6493b93b48 RHI: Reset attribute instancing properly for OpenGL ES
Enabling instanced drawing will set glVertexAttribDivisor to 1 for the
PerInstance attributes. This is of course a persistent state, because
GL, so it will apply to all subsequent draw calls that uses attributes
with the same location number, introducing weird and wonderful randomness.

Therefore, make sure we set the divisor back to 0 for non-instanced attributes.

Change-Id: I2d9115369fa24e8d57396d2a5f88d1435fe98971
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2020-11-26 03:38:11 +01:00
Marcel Krems
5023c0beb5 Remove deprecated algorithms from documentation
Change-Id: Ie1eff48696c62ed23fedda1a9e711aeb8264432f
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2020-11-26 03:38:11 +01:00
Alexandru Croitor
69d9b2b6fd CMake: Use cmake_language(DEFER) when available for scope finalizers
If CMake version is 3.19 or greater, use cmake_language(DEFER CALL)
for Qt internal scope finalizers, instead of the homegrown
implementation.

Apart from not depending on the hacky homegrown solution, it
significantly improves the readability of --trace-redirect logs.

Pick-to: 6.0
Task-number: QTBUG-77377
Change-Id: I5ce374bb313865662c536826e86052bc762438b9
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-11-25 22:08:10 +01:00
Joerg Bornemann
89b49e5231 CMake: Fix value of QMAKE_PRL_TARGET in generated .prl files
On DLL platforms, the value of QMAKE_PRL_TARGET should be the import
library (foo.lib), not the actual DLL (foo.dll). The genex
TARGET_LINKER_FILE_NAME provides exactly that.

Fixes: QTBUG-88864
Pick-to: 6.0
Change-Id: I553930bb840007772fe8f4612f95e0e320f54107
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-25 22:08:10 +01:00
Alexandru Croitor
9b84ea6b47 CMake: Fix headersclean interaction with header only modules
Before CMake 3.19, we are not allowed to query non INTERFACE_ prefixed
property names from INTERFACE libraries. And it was the wrong thing
to do as well. Prefix the properties with INTERFACE_ as appropriate.

Don't try to add INTERFACE_COMPILE_DEFINITIONS from header only
modules to the headerclean compile commands. This causes configuration
issues with UiPlugin in qttools. Fortunately it seems that qmake
doesn't do that for 'header_module's either.

Finally don't query for the FRAMEWORK property on the passed target
(INTERFACE libs can't be frameworks). Instead just query if the whole
Qt build itself is a framework build.

An issue was discovered regarding QT_NO_ENTRYPOINT genexes breaking
headersclean add_custom_commands for UiPlugin in qttools. To avoid
this the property was renamed to all lower case in
6ca66de9120537134b63d42de6c53c6e5834e8f3. This avoided the immediate
issue, but it's possible it might resurface in the future with a
different property name that wasn't renamed. In particular I thought
it might happen with QT_NO_UTF8_SOURCE but it didn't.

In case something like that happens again, the two possible solutions
are to bump minimum CMake version requirement to 3.19 (where upper
case property names are allowed to be queried from INTERFACE libs) or
to implement recursive include directory fetching similar to our
qt_internal_walk_libs implementation.

Pick-to: 6.0
Task-number: QTBUG-86053
Task-number: QTBUG-82615
Change-Id: I7815d555ec9ea049a8fd40f2a2f072dcb9f5e9c3
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-11-25 22:08:10 +01:00
Alexandru Croitor
a9d687c63c CMake: Allow generating documentation for INTERFACE targets
Query the include dirs from the INTERFACE_INCLUDE_DIRECTORIES property
when generating docs for an INTERFACE library.

Amends 2db41fefa0

Pick-to: 6.0
Task-number: QTBUG-88838
Change-Id: Ic8a454ba66b2dbc59bad883e1e0d38ebb26d0370
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-25 22:08:10 +01:00
Assam Boudjelthia
97b914b3e7 Android: fix tst_android test
Fixes: QTBUG-88506
Pick-to: 6.0
Change-Id: I938de388fce8ec393b03b2f0f42ddfe9094e6a5e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-25 21:08:10 +00:00
Assam Boudjelthia
c7dec2faca Android: exclude faulty qfilesystemwatcher test
Task-number: QTBUG-88508
Pick-to: 6.0
Change-Id: I11b845e74e599d3bdae4f9490a591893531bc77b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-25 23:08:09 +02:00
Assam Boudjelthia
63934f1338 Android: exclude faulty tst_selftests
This test was failing but was returning a pass because of a bug
in androidtestrunner.

Task-number: QTBUG-88507
Task-number: QTBUG-88508
Pick-to: 6.0
Change-Id: I4fda7c2ddf8cd1e6858617e7bb447078c5768a75
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-25 23:08:09 +02:00
Marc Mutz
3f8896d77e QSet: add missing insert-with-hint
Since QHash is missing the overload, too, just ignore the hint for
now, but provide the STL-compatible signature so generic code can use
QSet as a normal sequential container.

[ChangeLog][QtCore][QSet] Added insert() overload taking an insertion
hint, for STL compatibility.

Change-Id: I9fe41877343ebff721b650fb7b9cd4e06b6608d8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
2020-11-25 22:08:09 +01:00
Volker Hilsheimer
61436f24cb Remove some examples from highlighted list
The Local Fortune examples and the JSON Save Game don't need to be
highlighted in Qt Creator.

Pick-to: 6.0 6.0.0
Change-Id: I7c7c9997e9a1cfb61f94309f16be65c810b42e14
Reviewed-by: Tuukka Turunen <tuukka.turunen@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
2020-11-25 22:08:09 +01:00
Volker Hilsheimer
78cbb25b9d Use event cloning rather than copying
Fixes: QTBUG-88834
Pick-to: 6.0 6.0.0
Change-Id: I8c21b07c9d8491f26589f29b04d552835b3cbd11
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-25 22:08:09 +01:00
Volker Hilsheimer
cd2f29891f Fix compiler warning from deprecated function
Make the string into a list and call setFontFamilies.

Pick-to: 6.0
Change-Id: I1b70db784fd6e495b48917141d07bacd1e883882
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2020-11-25 22:08:09 +01:00
Friedemann Kleint
45c623c42a Output source in debug operator of QMouseEvent
Task-number: QTBUG-88678
Task-number: QTBUG-46412
Pick-to: 6.0
Change-Id: If9282f5b845ef16ff7e7ce523f78e3b8adfbef90
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2020-11-25 08:26:18 +00:00
Volker Hilsheimer
60870ca68c Document removal of QEvent copying
Pick-to: 6.0 6.0.0
Change-Id: Ia4681fe5c5ae0953ba75f4ab24da4eec7461c719
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-11-25 03:48:09 +01:00
Volker Hilsheimer
df1a62fe61 Fix link to Qt OpenGL C++ classes
Pick-to: 6.0 6.0.0
Change-Id: Ia8d71cf48b2d0c3d0f6d3de81335c263eb5466c4
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-11-25 03:48:09 +01:00
Giuseppe D'Angelo
bfe77a21fb QVLA: do not include QtTest
The right include is QTest, QtTest drags in all of QtCore.

Change-Id: Icc2964ccdb85fe1bfc9fe8f43351a4605a34329b
Pick-to: 6.0 5.15
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-11-25 03:48:09 +01:00
Alexey Edelev
7f1e145f7e CMake: Restore QT_STAGING_PREFIX in qt-cmake-standalone-test generation
Restore 'QT_STAGING_PREFIX' logic when generating
'qt-cmake-standalone-test'. Relative paths now calculating depend on
'QT_STAGING_PREFIX'. For prefix builds QT_STAGING_PREFIX should be
prepend to '__qt_cmake_standalone_test_path'

Fixes: QTBUG-88764
Pick-to: 6.0
Change-Id: I655c60847f2ab872948cfe9aedc27835e5cc4fb5
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-24 20:51:41 +00:00
Joerg Bornemann
0274daf307 CMake: Rename QtBuildInternalsAndroid.cmake to QtAndroidHelpers.cmake
...and include it in QtBuild.cmake.

Commit e8d8b1a5e4 added two different code paths to include
QtBuildInternalsAndroid.cmake.

This was needed, because:

In a top-level build, we must not include files that are not yet
installed.  We have the source tree available, and
"${QT_SOURCE_TREE}/cmake" is in CMAKE_MODULE_PATH.
We can use the "module syntax" of the include() command.

In a per-repository build, when building against an installed qtbase, we
must not include files of the source tree, because that's not guaranteed
to be available.  However, Qt6BuildInternalsConfig.cmake is installed,
and we can directly include QtBuildInternalsAndroid.cmake, which is
right next to it.

We can circumvent this whole issue by moving the Android-related
functions out of the Qt6BuildInternals package and including it in
QtBuild.cmake.

Pick-to: 6.0
Task-number: QTBUG-88718
Change-Id: I5192ba19bb77952505c20d053d7285f798d16ac5
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-24 21:51:34 +01:00
Alexey Edelev
2548438e32 CMake: Change generated resources naming
Align generated resources .qrc file naming to qmake naming.
Update tests.

Fixes: QTBUG-88581
Pick-to: 6.0
Change-Id: Id8a2f91f23c257e5b8bd371748c2151ec54a6418
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-24 21:51:29 +01:00
Andreas Buhr
824de3850e Fix tst_qfiledialog2 in case directory ~/foo exists
One test in tst_qfiledialog2 only succeeded if the directory "~/foo"
did not exist. This patch changes the path used to "~/Vugiu1co"
which has hopefully a much lower probability of existing.
The string "Vugiu1co" is taken from a call to "pwgen".

Pick-to: 6.0
Change-Id: Ia82b07902a91eb908a74aa90cdbdf4761d432d9a
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
2020-11-24 21:50:55 +01:00
Andreas Buhr
1dff26dd95 Fix tst_qlibrary after rebuild
tst_qlibrary depends on a library (targets mylib and mylib2) to be
built. They create a library with the same name, in two versions.
This is done in order to test versioned library loading.
However, those two libraries were fighting over the creation of
"libmylib.so". In a fresh build, mylib2 wins, as intended. But after
a rebuild, mylib won, which led to failing unit tests.
This patch changes the situation. With this change, mylib no longer
tries to create "libmylib.so". Thus no fighting and no problem.

Pick-to: 6.0
Change-Id: Id89baa5503c9f078a8737ff0b8616edf09044f72
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-11-24 21:50:46 +01:00
Alexandru Croitor
47435572fb Blacklist authenticationCacheAfterCancel on Ubuntu 20.04
It flaky fails integrations.

Amends 2b49b01aa3

Task-number: QTBUG-88417
Change-Id: I6aad6ee7a70e580da64e75f69e8c9cab1cb78cd7
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
(cherry picked from commit 143d619ba33c693fbbf9fbc3587921a44ae87435)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2020-11-24 20:50:42 +00:00
Alexandru Croitor
25dcf5ede6 CMake: Use lower cased property name for entrypoint library opt-out
We need this to enable headersclean functionality to work with CMake
<=3.18 which is our minimum required CMake version to build
Qt (it's not a problem for 3.19).

Otherwise we hit a configuration error while trying to evaluate
generator expressions for INTERFACE only libraries for which we need
to do the headersclean check (e.g. UiPlugin in qttools).

Sample error message:

 INTERFACE_LIBRARY targets may only have whitelisted properties.  The
  property "QT_NO_ENTRYPOINT" is not allowed.

More info:

 https://gitlab.kitware.com/cmake/cmake/-/issues/21484

Naming it lower case avoids the issue, but is inconsistent with all
our other public property names.

Furthermore if we do this change, it should probably go to 6.0.0 due
to it being a property that a user is meant to set in their project.

Task-number: QTBUG-82615
Change-Id: I1f1439f1e5cbc816010eba7301605a8f60b88fd1
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 6ca66de9120537134b63d42de6c53c6e5834e8f3)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2020-11-24 20:50:21 +00:00
Andy Shaw
8302ca22f4 Return a QString() if the families list is empty
Fixes: QTBUG-88781
Change-Id: Iafed2be29e2e0c3029e832986ba58d19446214eb
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2020-11-24 21:49:54 +01:00