Don't make Info.plist for debug framework bundles
We do so by setting a 'no_plist' config property. Can be overridden with 'force_debug_plist'. The debug version of Info.plist would overwrite the release version, and it also happens to contain invalid data. In particular, CFBundleExecutable would contain the _debug suffixed libname, which it shouldn't. See the entry about CFBundleExecutable on https://developer.apple.com/library/ios/documentation/general/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html Task-number: QTBUG-32894 Change-Id: Ideb018e4768a7c4e276e1b07d77937451f6db6a2 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
This commit is contained in:
parent
59e8d430e9
commit
10bd8e2104
@ -25,10 +25,13 @@ CONFIG(static, static|shared) {
|
||||
!macx-xcode: \
|
||||
addExclusiveBuilds(shared, static)
|
||||
|
||||
CONFIG(debug, debug|release): \
|
||||
CONFIG(debug, debug|release) {
|
||||
CONFIG -= release
|
||||
else: \
|
||||
!force_debug_plist:debug_and_release: \
|
||||
CONFIG += no_plist
|
||||
} else {
|
||||
CONFIG -= debug
|
||||
}
|
||||
|
||||
!macx-xcode {
|
||||
addExclusiveBuilds(debug, release)
|
||||
|
@ -725,6 +725,7 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
|
||||
t << "@touch " << resources << "\n\t\n";
|
||||
}
|
||||
//copy the plist
|
||||
if (!project->isActiveConfig("no_plist")) {
|
||||
QString info_plist = escapeFilePath(fileFixify(project->first("QMAKE_INFO_PLIST").toQString())),
|
||||
info_plist_out = escapeFilePath(project->first("QMAKE_INFO_PLIST_OUT").toQString());
|
||||
if (info_plist.isEmpty())
|
||||
@ -780,6 +781,7 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
|
||||
QString::fromLatin1("????") : project->first("QMAKE_PKGINFO_TYPEINFO").left(4)) << ",g\" "
|
||||
<< "" << info_plist << " >" << info_plist_out << endl;
|
||||
}
|
||||
} // project->isActiveConfig("no_plist")
|
||||
//copy other data
|
||||
if(!project->isEmpty("QMAKE_BUNDLE_DATA")) {
|
||||
const ProStringList &bundle_data = project->values("QMAKE_BUNDLE_DATA");
|
||||
@ -1267,7 +1269,7 @@ void UnixMakefileGenerator::init2()
|
||||
project->values("QMAKE_CXXFLAGS") += MD_flag;
|
||||
}
|
||||
|
||||
if(!project->isEmpty("QMAKE_BUNDLE")) {
|
||||
if (!project->isEmpty("QMAKE_BUNDLE") && !project->isActiveConfig("no_plist")) {
|
||||
QString plist = fileFixify(project->first("QMAKE_INFO_PLIST").toQString(), qmake_getpwd());
|
||||
if(plist.isEmpty())
|
||||
plist = specdir() + QDir::separator() + "Info.plist." + project->first("TEMPLATE");
|
||||
|
Loading…
x
Reference in New Issue
Block a user