summaryrefslogtreecommitdiffstats
path: root/tests/auto/cmake/test_QTP0003/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/cmake/test_QTP0003/CMakeLists.txt')
-rw-r--r--tests/auto/cmake/test_QTP0003/CMakeLists.txt66
1 files changed, 66 insertions, 0 deletions
diff --git a/tests/auto/cmake/test_QTP0003/CMakeLists.txt b/tests/auto/cmake/test_QTP0003/CMakeLists.txt
new file mode 100644
index 0000000000..8dda76fdb0
--- /dev/null
+++ b/tests/auto/cmake/test_QTP0003/CMakeLists.txt
@@ -0,0 +1,66 @@
+# Copyright (C) 2024 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
+
+cmake_minimum_required(VERSION 3.16)
+
+project(test_QTP0003)
+
+find_package(Qt6 COMPONENTS Core REQUIRED)
+
+if(QT6_IS_SHARED_LIBS_BUILD)
+ set(qt_build_type "SHARED_LIBRARY")
+else()
+ set(qt_build_type "STATIC_LIBRARY")
+endif()
+
+set(BUILD_SHARED_LIBS ON)
+qt6_add_library(MyLib source.cpp)
+get_target_property(type MyLib TYPE)
+if(NOT "${type}" STREQUAL "${qt_build_type}")
+ message(FATAL_ERROR "The library uses the default type different from Qt build type when"
+ "QTP0003 is not set")
+endif()
+
+set(BUILD_SHARED_LIBS OFF)
+qt6_add_library(MyLib2 source.cpp)
+get_target_property(type MyLib2 TYPE)
+if(NOT "${type}" STREQUAL "${qt_build_type}")
+ message(FATAL_ERROR "The library uses the default type different from Qt build type when"
+ "QTP0003 is not set")
+endif()
+
+set(BUILD_SHARED_LIBS ON)
+qt_policy(SET QTP0003 OLD)
+qt6_add_library(MyLib3 source.cpp)
+get_target_property(type MyLib3 TYPE)
+if(NOT "${type}" STREQUAL "${qt_build_type}")
+ message(FATAL_ERROR "The library uses the default type different from Qt build type when"
+ "QTP0003 is set to OLD")
+endif()
+
+set(BUILD_SHARED_LIBS OFF)
+qt_policy(SET QTP0003 OLD)
+qt6_add_library(MyLib4 source.cpp)
+get_target_property(type MyLib4 TYPE)
+if(NOT "${type}" STREQUAL "${qt_build_type}")
+ message(FATAL_ERROR "The library uses the default type different from Qt build type when"
+ "QTP0003 is set to OLD")
+endif()
+
+set(BUILD_SHARED_LIBS ON)
+qt_policy(SET QTP0003 NEW)
+qt6_add_library(MyLib5 source.cpp)
+get_target_property(type MyLib5 TYPE)
+if(NOT "${type}" STREQUAL "SHARED_LIBRARY")
+ message(FATAL_ERROR "The library doesn't consider the BUILD_SHARED_LIBS when"
+ "QTP0003 is set to NEW")
+endif()
+
+set(BUILD_SHARED_LIBS OFF)
+qt_policy(SET QTP0003 NEW)
+qt6_add_library(MyLib6 source.cpp)
+get_target_property(type MyLib6 TYPE)
+if(NOT "${type}" STREQUAL "STATIC_LIBRARY")
+ message(FATAL_ERROR "The library doesn't consider the BUILD_SHARED_LIBS when"
+ "QTP0003 is set to NEW")
+endif()