diff options
author | Fredrik Orderud <forderud@gmail.com> | 2016-08-08 22:39:00 +0200 |
---|---|---|
committer | Fredrik Orderud <forderud@gmail.com> | 2016-08-11 09:57:00 +0000 |
commit | b6f5b38f8c883f5c82d9dc0332f55521f59b70db (patch) | |
tree | 06f122b8ef54cf0e8d1734ff4c177524d9997275 /qmake/generators/win32 | |
parent | 0681e603803634f89f72b37b216b91cab2e085d1 (diff) |
Define _WINDLL when building a DLL
Visual Studio automatically defines _WINDLL when building a DLL,
regardless of project settings
(https://msdn.microsoft.com/en-us/library/8x480de8.aspx). This define
is therefore widely used to detect DLL vs. static library or executable
build target on Windows.
For makefiles, _WINDLL need to be manually defined, which QMake failed
to do so far.
Task-number: QTBUG-55183
Change-Id: Ic62201666c44e730e6881706d568ce9eaf22b7a4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Diffstat (limited to 'qmake/generators/win32')
-rw-r--r-- | qmake/generators/win32/msvc_nmake.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/qmake/generators/win32/msvc_nmake.cpp b/qmake/generators/win32/msvc_nmake.cpp index 31abed57ef..ae139c23be 100644 --- a/qmake/generators/win32/msvc_nmake.cpp +++ b/qmake/generators/win32/msvc_nmake.cpp @@ -426,6 +426,12 @@ void NmakeMakefileGenerator::init() if (!defines.contains("NDEBUG")) defines.append("NDEBUG"); } + + if (project->values("QMAKE_APP_FLAG").isEmpty() && project->isActiveConfig("dll")) { + ProStringList &defines = project->values("DEFINES"); + if (!defines.contains("_WINDLL")) + defines.append("_WINDLL"); + } } QStringList NmakeMakefileGenerator::sourceFilesForImplicitRulesFilter() |