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},
|
variables \l{QMAKE_TARGET_COMPANY}, \l{QMAKE_TARGET_DESCRIPTION},
|
||||||
\l{QMAKE_TARGET_COPYRIGHT}, \l{QMAKE_TARGET_PRODUCT},
|
\l{QMAKE_TARGET_COPYRIGHT}, \l{QMAKE_TARGET_PRODUCT},
|
||||||
\l{QMAKE_TARGET_ORIGINAL_FILENAME}, \l{QMAKE_TARGET_INTERNALNAME},
|
\l{QMAKE_TARGET_ORIGINAL_FILENAME}, \l{QMAKE_TARGET_INTERNALNAME},
|
||||||
\l{QMAKE_TARGET_COMMENTS}, \l{QMAKE_TARGET_TRADEMARKS}, \l{RC_CODEPAGE},
|
\l{QMAKE_TARGET_COMMENTS}, \l{QMAKE_TARGET_TRADEMARKS}, \l{QMAKE_MANIFEST},
|
||||||
\l{RC_ICONS}, \l{RC_LANG} and \l{VERSION}.
|
\l{RC_CODEPAGE}, \l{RC_ICONS}, \l{RC_LANG} and \l{VERSION}.
|
||||||
|
|
||||||
If these elements are not sufficient, qmake has the two system variables
|
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
|
\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
|
\l{RC_ICONS} variable is set and the \l{RC_FILE} and \l{RES_FILE} variables
|
||||||
are not set.
|
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
|
\section1 QMAKE_TVOS_DEPLOYMENT_TARGET
|
||||||
|
|
||||||
\note This variable is used on the tvOS platform only.
|
\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);
|
return MakefileGenerator::escapeDependencyPath(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
QString MingwMakefileGenerator::getManifestFileForRcFile() const
|
|
||||||
{
|
|
||||||
return project->first("QMAKE_MANIFEST").toQString();
|
|
||||||
}
|
|
||||||
|
|
||||||
ProString MingwMakefileGenerator::fixLibFlag(const ProString &lib)
|
ProString MingwMakefileGenerator::fixLibFlag(const ProString &lib)
|
||||||
{
|
{
|
||||||
if (lib.startsWith("-l")) // Fallback for unresolved -l libs.
|
if (lib.startsWith("-l")) // Fallback for unresolved -l libs.
|
||||||
|
@ -41,7 +41,6 @@ protected:
|
|||||||
ProString fixLibFlag(const ProString &lib) override;
|
ProString fixLibFlag(const ProString &lib) override;
|
||||||
bool processPrlFileBase(QString &origFile, const QStringRef &origName,
|
bool processPrlFileBase(QString &origFile, const QStringRef &origName,
|
||||||
const QStringRef &fixedBase, int slashOff) override;
|
const QStringRef &fixedBase, int slashOff) override;
|
||||||
QString getManifestFileForRcFile() const override;
|
|
||||||
bool writeMakefile(QTextStream &) override;
|
bool writeMakefile(QTextStream &) override;
|
||||||
void init() override;
|
void init() override;
|
||||||
QString installRoot() const override;
|
QString installRoot() const override;
|
||||||
|
@ -301,7 +301,7 @@ void Win32MakefileGenerator::processRcFileVar()
|
|||||||
if (Option::qmake_mode == Option::QMAKE_GENERATE_NOTHING)
|
if (Option::qmake_mode == Option::QMAKE_GENERATE_NOTHING)
|
||||||
return;
|
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())
|
if (((!project->values("VERSION").isEmpty() || !project->values("RC_ICONS").isEmpty() || !manifestFile.isEmpty())
|
||||||
&& project->values("RC_FILE").isEmpty()
|
&& project->values("RC_FILE").isEmpty()
|
||||||
&& project->values("RES_FILE").isEmpty()
|
&& project->values("RES_FILE").isEmpty()
|
||||||
@ -878,11 +878,6 @@ QString Win32MakefileGenerator::cQuoted(const QString &str)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString Win32MakefileGenerator::getManifestFileForRcFile() const
|
|
||||||
{
|
|
||||||
return QString();
|
|
||||||
}
|
|
||||||
|
|
||||||
ProKey Win32MakefileGenerator::fullTargetVariable() const
|
ProKey Win32MakefileGenerator::fullTargetVariable() const
|
||||||
{
|
{
|
||||||
return "DEST_TARGET";
|
return "DEST_TARGET";
|
||||||
|
@ -63,7 +63,6 @@ protected:
|
|||||||
void fixTargetExt();
|
void fixTargetExt();
|
||||||
void processRcFileVar();
|
void processRcFileVar();
|
||||||
static QString cQuoted(const QString &str);
|
static QString cQuoted(const QString &str);
|
||||||
virtual QString getManifestFileForRcFile() const;
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
ProKey fullTargetVariable() const override;
|
ProKey fullTargetVariable() const override;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user