summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorStephen Kelly <stephen.kelly@kdab.com>2012-06-24 19:36:27 +0200
committerQt by Nokia <qt-info@nokia.com>2012-07-16 16:30:55 +0200
commite6abbe68a2126fe02b1f304ac356570568958099 (patch)
tree5bfb252cf3878a0a8f74eff5b2a040c533f2556a /mkspecs
parent10848dd58259e618526d3e5b3779b880fa23e2aa (diff)
Create imported targets if the library files exist
Handle the cases where the user does ./configure -debug make make install make release make release_install Thereby making the installed configuration different to the 'configured' configuration. Change-Id: Ib351d8a84c4333ebcbd305d68a37c16f86869559 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Brad King <brad.king@kitware.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/cmake/Qt5BasicConfig.cmake.in26
-rw-r--r--mkspecs/features/create_cmake.prf1
2 files changed, 27 insertions, 0 deletions
diff --git a/mkspecs/cmake/Qt5BasicConfig.cmake.in b/mkspecs/cmake/Qt5BasicConfig.cmake.in
index 212a186a41..6f19f5f411 100644
--- a/mkspecs/cmake/Qt5BasicConfig.cmake.in
+++ b/mkspecs/cmake/Qt5BasicConfig.cmake.in
@@ -150,10 +150,36 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!IF !isEmpty(CMAKE_DEBUG_TYPE)
_populate_imported_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+
+!!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
+!!IF isEmpty(CMAKE_RELEASE_TYPE)
+!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+ if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" AND EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+!!ELSE
+ if (EXISTS \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" AND EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+!!ENDIF
+ _populate_imported_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+ endif()
+!!ENDIF // CMAKE_RELEASE_TYPE
+!!ENDIF // CMAKE_FIND_OTHER_LIBRARY_BUILD
+
!!ENDIF // CMAKE_DEBUG_TYPE
!!IF !isEmpty(CMAKE_RELEASE_TYPE)
_populate_imported_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+
+!!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
+!!IF isEmpty(CMAKE_DEBUG_TYPE)
+!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+ if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" AND EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+!!ELSE
+ if (EXISTS \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" AND EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+!!ENDIF
+ _populate_imported_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+ endif()
+!!ENDIF // CMAKE_DEBUG_TYPE
+!!ENDIF // CMAKE_FIND_OTHER_LIBRARY_BUILD
+
!!ENDIF // CMAKE_RELEASE_TYPE
endif()
diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
index 7cace8116e..266c80429a 100644
--- a/mkspecs/features/create_cmake.prf
+++ b/mkspecs/features/create_cmake.prf
@@ -76,6 +76,7 @@ macx {
}
} else:win32 {
CMAKE_WINDOWS_BUILD = "true"
+ CMAKE_FIND_OTHER_LIBRARY_BUILD = "true"
CMAKE_BIN_SUFFIX = ".exe"
CMAKE_LIB_FILE_LOCATION_DEBUG = Qt$${CMAKE_MODULE_NAME}$${QT_LIBINFIX}d$$eval(QT.$${MODULE}.MAJOR_VERSION).dll