diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf index 4b40451c96..b53617ba2a 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -122,7 +122,7 @@ for(ever) { QMAKE_FRAMEWORKPATH *= $$MODULE_FRAMEWORKS !isEmpty(MODULE_MODULE) { contains(MODULE_CONFIG, lib_bundle) { - LIBS$$var_sfx += -framework $$MODULE_MODULE + LIBS$$var_sfx += -framework $${MODULE_MODULE}$$qtFrameworkPlatformTargetSuffix() } else { !isEmpty(MODULE_LIBS_ADD): \ LIBS$$var_sfx += -L$$MODULE_LIBS_ADD diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf index b2c2507807..88467e89ba 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf @@ -13,6 +13,16 @@ defineReplace(qtPlatformTargetSuffix) { return($$suffix) } +# suffix for the -framework linker flag when the exectuable's name +# differs from the bundle's, for example -framework QtCore,_debug +# links to QtCore.framework/QtCore_debug +defineReplace(qtFrameworkPlatformTargetSuffix) { + suffix = $$qtPlatformTargetSuffix() + !isEmpty(suffix): \ + suffix = ,$$suffix + return($$suffix) +} + defineReplace(qtLibraryTarget) { LIBRARY_NAME = $$1 CONFIG(shared, static|shared):contains(QT_CONFIG, qt_framework) {