Qt 6.8.3 with BlackBerry 10 (QNX 8 / ARMv7) patches
 
 
 
 
 
 
Go to file
Alexandru Croitor f69dbb0b41 CMake: Don't use std=gnu++11 when building Qt internal targets
The logic is a bit involved in qmake.

The Qt internal qt_common.prf adds CONFIG += strict_c++ which applies
to qt modules, qt plugins, qml plugins, qt helper libs, winmain and
qt_apps, qt_tools, but NOT tests (which is important because the tests
on Windows MinGW fail to build without the GNU extensions).

Then default_post.prf checks for the strict_c++ value and either uses
the strict or non-strict C++ standard flags. default_post.prf is
loaded for all qmake projects, not just the Qt internal ones.

Now CMake doesn't provide a transitive based option to disable C++
GNU extensions with a mechanism similar to target_compile_features.

It only provides the CXX_EXTENSIONS property and it's associated
CMAKE_CXX_EXTENSIONS variable. We can't set the variable at a
directory scope, because that is too coarse grained.

So we rely on setting the property via a function in every relevant
qt_add_<target> function.

Now the naming of the function is weird.
We name the function as qt_internal_<...>, because it's not meant to be
used by Qt users.

We prepend an underscore to the name because we need to place it in
Qt6CoreMacros, so that the function can be called by
qt_add_qml_module which IS a public function.
That's because in Qt5 load(qml_plugin) was private API, but in Qt 6 +
CMake we decided to make qt_add_qml_module() as public API.

Change-Id: Id014626b087d590e25cb46843f93d0c67fc36e44
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-08-05 09:03:15 +00:00
.github/workflows Update configure flags to the last fixes 2020-06-30 15:21:32 +02:00
bin Add OS-specific prelude to qt-cmake-standalone-test 2020-07-15 15:13:05 +00:00
cmake CMake: Don't use std=gnu++11 when building Qt internal targets 2020-08-05 09:03:15 +00:00
coin CMake: Use CMAKE_AUTOGEN_VERBOSE to see moc invocations 2020-07-24 17:33:17 +02:00
config.tests CMake: Skip regeneration of manual compile test project 2020-04-09 11:26:46 +02:00
dist Remove last remainings of Qt Quick 1 imports 2020-05-25 11:48:12 +02:00
doc Fix return of uninitialized pointer in guiloader example 2020-07-16 21:52:26 +02:00
examples Fix compiler warning about qsizetype/int mismatch 2020-08-04 13:28:33 +02:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
mkspecs Android: Install the qmldir files when configuring for a single abi 2020-08-03 16:47:31 +02:00
qmake iOS: Add a variable to customize where the launch image is taken from 2020-07-22 00:42:36 +02:00
src CMake: Don't use std=gnu++11 when building Qt internal targets 2020-08-05 09:03:15 +00:00
tests Privately introducing QDecompressHelper for network purposes 2020-08-05 09:17:11 +02:00
util Tidy up unicode table generation 2020-08-05 10:02:11 +02:00
.cmake.conf pro2cmake.py: Generate .cmake.conf files for versioning 2020-04-30 17:44:03 +00:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore git: Ignore CMakeLists.txt.user 2020-07-24 17:26:51 +02:00
.lgtm.yml Skip LGTM analysis for the bootstrap library and tools 2020-07-16 01:04:34 +02:00
.qmake.conf Bump version 2019-12-17 12:41:31 +01:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
CMakeLists.txt CMake: Protect against Qt toolchain file recursive inclusion 2020-06-04 23:21:27 +02:00
INSTALL INSTALL: Remove outdated reference to Windows CE 2019-02-13 13:01:57 +00:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPLv3 Remove LICENSE.GPLv3, LICENSE.LGPLv21, LGPL_EXCEPTION.txt 2018-04-16 11:02:14 +00:00
LICENSE.QT-LICENSE-AGREEMENT Update enterprise license agreement v4.2.1 2019-12-18 13:07:19 +02:00
config_help.txt Make -qtlibinfix affect the names of plugins by default 2020-07-13 20:30:18 +02:00
configure CMake: Fix top-level configure 2020-07-16 15:00:37 +02:00
configure.bat CMake: Fix top-level configure 2020-07-16 15:00:37 +02:00
configure.cmake Make -qtlibinfix affect the names of plugins by default 2020-07-13 20:30:18 +02:00
configure.json Make -qtlibinfix affect the names of plugins by default 2020-07-13 20:30:18 +02:00
configure.pri Treat -xplatform or -device-option as being a cross compilation 2020-07-08 19:18:09 +02:00
dependencies.yaml Re-add dependencies.yaml so repos outside qt5 can be built with Coin 2019-09-19 17:07:36 +00:00
header.BSD Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.FDL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL-EXCEPT Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-NOGPL2 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-ONLY Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3-COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.MIT qsimd: add support for new x86 CPU features 2018-05-05 06:20:07 +00:00
qtbase.pro nuke configure -host-option 2016-12-13 18:55:59 +00:00
sync.profile Remove last remaining bits of QtPlatformHeaders 2020-08-04 07:12:32 +02:00