Only create the Qt5::WinMain target if it doesn't exist yet.
authorStephen Kelly <stephen.kelly@kdab.com>
Wed, 11 Jul 2012 12:13:15 +0000 (14:13 +0200)
committerQt by Nokia <qt-info@nokia.com>
Fri, 13 Jul 2012 10:09:42 +0000 (12:09 +0200)
Multiple calls to find_package(Qt5Core) would otherwise attempt to
create multiple targets of the same name.

Change-Id: I5639671fec66d4dd62dcce018dea5d18dcfd3dc3
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
src/corelib/Qt5CoreConfigExtras.cmake.in

index fd8c4aa..4f91869 100644 (file)
@@ -41,29 +41,31 @@ set(QT_LIBINFIX \"$${QT_LIBINFIX}\")
 !!IF !isEmpty(CMAKE_WINDOWS_BUILD)
 set(Qt5Core_QTMAIN_LIBRARIES Qt5::WinMain)
 
-add_library(Qt5::WinMain STATIC IMPORTED)
+if (NOT TARGET Qt5::WinMain)
+    add_library(Qt5::WinMain STATIC IMPORTED)
 
 !!IF !isEmpty(CMAKE_DEBUG_TYPE)
-set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
-set_target_properties(Qt5::WinMain PROPERTIES
+    set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+    set_target_properties(Qt5::WinMain PROPERTIES
 !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-    IMPORTED_LOCATION_DEBUG \"${_qt5_corelib_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\"
+        IMPORTED_LOCATION_DEBUG \"${_qt5_corelib_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\"
 !!ELSE
-    IMPORTED_LOCATION_DEBUG \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\"
+        IMPORTED_LOCATION_DEBUG \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\"
 !!ENDIF
-)
+    )
 !!ENDIF
 
 !!IF !isEmpty(CMAKE_RELEASE_TYPE)
-set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
-set_target_properties(Qt5::WinMain PROPERTIES
+    set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+    set_target_properties(Qt5::WinMain PROPERTIES
 !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-    IMPORTED_LOCATION_RELEASE \"${_qt5_corelib_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\"
+        IMPORTED_LOCATION_RELEASE \"${_qt5_corelib_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\"
 !!ELSE
-    IMPORTED_LOCATION_RELEASE \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\"
+        IMPORTED_LOCATION_RELEASE \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\"
 !!ENDIF
-)
+    )
 !!ENDIF
+endif()
 !!ENDIF
 
 get_filename_component(_Qt5CoreConfigDir ${CMAKE_CURRENT_LIST_FILE} PATH)