qmake: Fix handling of manifest file of msvc
Setting the QMAKE_MANIFEST variable doesn't have any effect for MSVC. This commit fixes that. If the developer is setting this variable, he/she will definitely use CONFIG-=embed_manifest_exe or CONFIG-=embed_manifest_dll at the same time, so I think there is no need to check this. Change-Id: Ie32b7e0cded71efcf14bf4c0eecab5ab1944fa2c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This commit is contained in:
parent
a1ccedeb44
commit
ef8640596c
@ -796,8 +796,8 @@
|
||||
variables \l{QMAKE_TARGET_COMPANY}, \l{QMAKE_TARGET_DESCRIPTION},
|
||||
\l{QMAKE_TARGET_COPYRIGHT}, \l{QMAKE_TARGET_PRODUCT},
|
||||
\l{QMAKE_TARGET_ORIGINAL_FILENAME}, \l{QMAKE_TARGET_INTERNALNAME},
|
||||
\l{QMAKE_TARGET_COMMENTS}, \l{QMAKE_TARGET_TRADEMARKS}, \l{RC_CODEPAGE},
|
||||
\l{RC_ICONS}, \l{RC_LANG} and \l{VERSION}.
|
||||
\l{QMAKE_TARGET_COMMENTS}, \l{QMAKE_TARGET_TRADEMARKS}, \l{QMAKE_MANIFEST},
|
||||
\l{RC_CODEPAGE}, \l{RC_ICONS}, \l{RC_LANG} and \l{VERSION}.
|
||||
|
||||
If these elements are not sufficient, qmake has the two system variables
|
||||
\l{RC_FILE} and \l{RES_FILE} that point directly to an externally created
|
||||
@ -2784,6 +2784,14 @@
|
||||
\l{RC_ICONS} variable is set and the \l{RC_FILE} and \l{RES_FILE} variables
|
||||
are not set.
|
||||
|
||||
\target QMAKE_MANIFEST
|
||||
\section1 QMAKE_MANIFEST
|
||||
|
||||
Windows only. Specifies the manifest file for the project target.
|
||||
This is only utilized if the \l{RC_FILE} and \l{RES_FILE} variables are not set.
|
||||
Don't forget to remove embed_manifest_exe and embed_manifest_dll from
|
||||
the CONFIG variable, otherwise it will conflict with the compiler generated one.
|
||||
|
||||
\section1 QMAKE_TVOS_DEPLOYMENT_TARGET
|
||||
|
||||
\note This variable is used on the tvOS platform only.
|
||||
|
@ -45,11 +45,6 @@ QString MingwMakefileGenerator::escapeDependencyPath(const QString &path) const
|
||||
return MakefileGenerator::escapeDependencyPath(ret);
|
||||
}
|
||||
|
||||
QString MingwMakefileGenerator::getManifestFileForRcFile() const
|
||||
{
|
||||
return project->first("QMAKE_MANIFEST").toQString();
|
||||
}
|
||||
|
||||
ProString MingwMakefileGenerator::fixLibFlag(const ProString &lib)
|
||||
{
|
||||
if (lib.startsWith("-l")) // Fallback for unresolved -l libs.
|
||||
|
@ -41,7 +41,6 @@ protected:
|
||||
ProString fixLibFlag(const ProString &lib) override;
|
||||
bool processPrlFileBase(QString &origFile, const QStringRef &origName,
|
||||
const QStringRef &fixedBase, int slashOff) override;
|
||||
QString getManifestFileForRcFile() const override;
|
||||
bool writeMakefile(QTextStream &) override;
|
||||
void init() override;
|
||||
QString installRoot() const override;
|
||||
|
@ -301,7 +301,7 @@ void Win32MakefileGenerator::processRcFileVar()
|
||||
if (Option::qmake_mode == Option::QMAKE_GENERATE_NOTHING)
|
||||
return;
|
||||
|
||||
const QString manifestFile = getManifestFileForRcFile();
|
||||
const QString manifestFile = project->first("QMAKE_MANIFEST").toQString();
|
||||
if (((!project->values("VERSION").isEmpty() || !project->values("RC_ICONS").isEmpty() || !manifestFile.isEmpty())
|
||||
&& project->values("RC_FILE").isEmpty()
|
||||
&& project->values("RES_FILE").isEmpty()
|
||||
@ -878,11 +878,6 @@ QString Win32MakefileGenerator::cQuoted(const QString &str)
|
||||
return ret;
|
||||
}
|
||||
|
||||
QString Win32MakefileGenerator::getManifestFileForRcFile() const
|
||||
{
|
||||
return QString();
|
||||
}
|
||||
|
||||
ProKey Win32MakefileGenerator::fullTargetVariable() const
|
||||
{
|
||||
return "DEST_TARGET";
|
||||
|
@ -63,7 +63,6 @@ protected:
|
||||
void fixTargetExt();
|
||||
void processRcFileVar();
|
||||
static QString cQuoted(const QString &str);
|
||||
virtual QString getManifestFileForRcFile() const;
|
||||
|
||||
public:
|
||||
ProKey fullTargetVariable() const override;
|
||||
|
Loading…
x
Reference in New Issue
Block a user