diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2021-04-06 13:06:11 +0200 |
---|---|---|
committer | Alexandru Croitor <alexandru.croitor@qt.io> | 2021-04-07 10:10:55 +0200 |
commit | d0c2425d791edd75e35cce65ddbcfaab9a7f16ed (patch) | |
tree | e3b3f1e16da3176216bd5f790ce359dd09efb634 /tests/auto/cmake/CMakeLists.txt | |
parent | ae70011377900d0d459a6f5cecb3d8d9608f7113 (diff) |
CMake: Choose better defaults for qt_add_plugin STATIC/SHARED
There was a recent behavior change where the public CMake API
qt_add_plugin API took into account the value of BUILD_SHARED_LIBS
to decide whether the plugin should be a static or shared library.
Instead, use the following new behavior
- If no explicit option STATIC / SHARED option is passed, default to
whatever flavor Qt was built as.
Aka if Qt was configured with -shared, qt_add_plugin defaults
to creating shared plugins. If it's a -static Qt, create static
plugins.
- If an explicit STATIC / SHARED option is set, override the default
computed value with the given value.
As a result BUILD_SHARED_LIBS does not affect Qt plugins anymore. This
is more in line with Qt expectations.
Add SHARED as a new valid option to pass to qt_add_plugin (it wasn't
before).
Add tests to check for the above behavior.
Amends aa4a1006cbccbc180c600f9b4dc9e882bb5ed5ca
Pick-to: 6.1
Fixes: QTBUG-92361
Task-number: QTBUG-88763
Change-Id: Iae806024ddd5cf10cfe58ddbcebd2818084b0bd7
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'tests/auto/cmake/CMakeLists.txt')
-rw-r--r-- | tests/auto/cmake/CMakeLists.txt | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/tests/auto/cmake/CMakeLists.txt b/tests/auto/cmake/CMakeLists.txt index 317541f984..b43aa8f0a6 100644 --- a/tests/auto/cmake/CMakeLists.txt +++ b/tests/auto/cmake/CMakeLists.txt @@ -226,3 +226,5 @@ _qt_internal_test_expect_pass(test_versionless_targets) _qt_internal_test_expect_pass(test_add_resources_binary_generated BINARY test_add_resources_binary_generated) + +include(test_plugin_shared_static_flavor.cmake) |