diff options
Diffstat (limited to 'qmake/generators')
-rw-r--r-- | qmake/generators/win32/msvc_nmake.cpp | 18 | ||||
-rw-r--r-- | qmake/generators/win32/msvc_vcproj.cpp | 18 |
2 files changed, 22 insertions, 14 deletions
diff --git a/qmake/generators/win32/msvc_nmake.cpp b/qmake/generators/win32/msvc_nmake.cpp index 740c8c4d13..daa356c8b0 100644 --- a/qmake/generators/win32/msvc_nmake.cpp +++ b/qmake/generators/win32/msvc_nmake.cpp @@ -354,14 +354,18 @@ void NmakeMakefileGenerator::init() project->values("QMAKE_LFLAGS").append(QString("/DEF:") + escapeFilePath(defFileName)); } - if(!project->values("VERSION").isEmpty()) { - ProString version = project->values("VERSION")[0]; - int firstDot = version.indexOf("."); - QString major = version.left(firstDot).toQString(); - QString minor = version.right(version.length() - firstDot - 1).toQString(); - minor.replace(".", ""); - project->values("QMAKE_LFLAGS").append("/VERSION:" + major + "." + minor); + // set /VERSION for EXE/DLL header + ProString major_minor = project->first("VERSION_PE_HEADER"); + if (major_minor.isEmpty()) { + ProString version = project->first("VERSION"); + if (!version.isEmpty()) { + int firstDot = version.indexOf("."); + int secondDot = version.indexOf(".", firstDot + 1); + major_minor = version.left(secondDot); + } } + if (!major_minor.isEmpty()) + project->values("QMAKE_LFLAGS").append("/VERSION:" + major_minor); if (project->isEmpty("QMAKE_LINK_O_FLAG")) project->values("QMAKE_LINK_O_FLAG").append("/OUT:"); diff --git a/qmake/generators/win32/msvc_vcproj.cpp b/qmake/generators/win32/msvc_vcproj.cpp index 3222030018..9dbeeb38b5 100644 --- a/qmake/generators/win32/msvc_vcproj.cpp +++ b/qmake/generators/win32/msvc_vcproj.cpp @@ -787,14 +787,18 @@ void VcprojGenerator::init() processVars(); - if(!project->values("VERSION").isEmpty()) { - QString version = project->values("VERSION")[0].toQString(); - int firstDot = version.indexOf("."); - QString major = version.left(firstDot); - QString minor = version.right(version.length() - firstDot - 1); - minor.replace(QRegExp("\\."), ""); - project->values("QMAKE_LFLAGS").append("/VERSION:" + major + "." + minor); + // set /VERSION for EXE/DLL header + ProString major_minor = project->first("VERSION_PE_HEADER"); + if (major_minor.isEmpty()) { + ProString version = project->first("VERSION"); + if (!version.isEmpty()) { + int firstDot = version.indexOf("."); + int secondDot = version.indexOf(".", firstDot + 1); + major_minor = version.left(secondDot); + } } + if (!major_minor.isEmpty()) + project->values("QMAKE_LFLAGS").append("/VERSION:" + major_minor); MakefileGenerator::init(); |