msvc-desktop.conf 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. #
  2. # qmake configuration for Microsoft Visual Studio C/C++ Compiler
  3. # This mkspec is used for all win32-msvcXXXX specs
  4. #
  5. isEmpty(MSC_VER)|isEmpty(MSVC_VER): error("Source mkspec must set both MSC_VER and MSVC_VER.")
  6. #
  7. # Baseline: Visual Studio 2005 (8.0), VC++ 14.0
  8. #
  9. include(angle.conf)
  10. MAKEFILE_GENERATOR = MSVC.NET
  11. QMAKE_PLATFORM = win32
  12. QMAKE_COMPILER = msvc
  13. CONFIG += incremental flat precompile_header autogen_precompile_source debug_and_release debug_and_release_target embed_manifest_dll embed_manifest_exe
  14. DEFINES += UNICODE WIN32
  15. QMAKE_COMPILER_DEFINES += _MSC_VER=$$MSC_VER _WIN32
  16. contains(QMAKE_TARGET.arch, x86_64) {
  17. DEFINES += WIN64
  18. QMAKE_COMPILER_DEFINES += _WIN64
  19. }
  20. QMAKE_CC = cl
  21. QMAKE_LEX = flex
  22. QMAKE_LEXFLAGS =
  23. QMAKE_YACC = bison -y
  24. QMAKE_YACCFLAGS = -d
  25. QMAKE_CFLAGS = -nologo -Zc:wchar_t
  26. QMAKE_CFLAGS_WARN_ON = -W3
  27. QMAKE_CFLAGS_WARN_OFF = -W0
  28. QMAKE_CFLAGS_RELEASE = -O2 -MD
  29. QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi
  30. QMAKE_CFLAGS_DEBUG = -Zi -MDd
  31. QMAKE_CFLAGS_YACC =
  32. QMAKE_CFLAGS_LTCG = -GL
  33. contains(QMAKE_TARGET.arch, x86_64) {
  34. # SSE2 is mandatory on 64-bit mode, so skip the option. It triggers:
  35. # cl : Command line warning D9002 : ignoring unknown option '-arch:SSE2'
  36. QMAKE_CFLAGS_SSE2 =
  37. } else {
  38. QMAKE_CFLAGS_SSE2 = -arch:SSE2
  39. }
  40. QMAKE_CFLAGS_SSE3 = $$QMAKE_CFLAGS_SSE2
  41. QMAKE_CFLAGS_SSSE3 = $$QMAKE_CFLAGS_SSE2
  42. QMAKE_CFLAGS_SSE4_1 = $$QMAKE_CFLAGS_SSE2
  43. QMAKE_CFLAGS_SSE4_2 = $$QMAKE_CFLAGS_SSE2
  44. QMAKE_CXX = $$QMAKE_CC
  45. QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
  46. QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON -w34100 -w34189 -w44996
  47. QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
  48. QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
  49. QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
  50. QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
  51. QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
  52. QMAKE_CXXFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG
  53. QMAKE_CXXFLAGS_STL_ON = -EHsc
  54. QMAKE_CXXFLAGS_STL_OFF =
  55. QMAKE_CXXFLAGS_RTTI_ON = -GR
  56. QMAKE_CXXFLAGS_RTTI_OFF =
  57. QMAKE_CXXFLAGS_EXCEPTIONS_ON = -EHsc
  58. QMAKE_CXXFLAGS_EXCEPTIONS_OFF =
  59. QMAKE_INCDIR =
  60. QMAKE_RUN_CC = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$obj $src
  61. QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$@ $<
  62. QMAKE_RUN_CC_IMP_BATCH = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$@ @<<
  63. QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo$obj $src
  64. QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo$@ $<
  65. QMAKE_RUN_CXX_IMP_BATCH = $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo$@ @<<
  66. QMAKE_LINK = link
  67. QMAKE_LFLAGS = /NOLOGO /DYNAMICBASE /NXCOMPAT
  68. QMAKE_LFLAGS_RELEASE = /INCREMENTAL:NO
  69. QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO = /DEBUG /OPT:REF /INCREMENTAL:NO
  70. QMAKE_LFLAGS_DEBUG = /DEBUG
  71. QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:CONSOLE
  72. QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS
  73. QMAKE_LFLAGS_EXE = \"/MANIFESTDEPENDENCY:type=\'win32\' name=\'Microsoft.Windows.Common-Controls\' version=\'6.0.0.0\' publicKeyToken=\'6595b64144ccf1df\' language=\'*\' processorArchitecture=\'*\'\"
  74. QMAKE_LFLAGS_DLL = /DLL
  75. QMAKE_LFLAGS_LTCG = /LTCG
  76. QMAKE_PREFIX_SHLIB =
  77. QMAKE_EXTENSION_SHLIB = dll
  78. QMAKE_PREFIX_STATICLIB =
  79. QMAKE_EXTENSION_STATICLIB = lib
  80. QMAKE_LIBS_CORE = kernel32.lib user32.lib shell32.lib uuid.lib ole32.lib advapi32.lib ws2_32.lib
  81. QMAKE_LIBS_GUI = gdi32.lib comdlg32.lib oleaut32.lib imm32.lib winmm.lib ws2_32.lib ole32.lib user32.lib advapi32.lib
  82. QMAKE_LIBS_NETWORK = ws2_32.lib
  83. QMAKE_LIBS_OPENGL = glu32.lib opengl32.lib gdi32.lib user32.lib
  84. QMAKE_LIBS_OPENGL_ES2 = $${LIBEGL_NAME}.lib $${LIBGLESV2_NAME}.lib gdi32.lib user32.lib
  85. QMAKE_LIBS_OPENGL_ES2_DEBUG = $${LIBEGL_NAME}d.lib $${LIBGLESV2_NAME}d.lib gdi32.lib user32.lib
  86. QMAKE_LIBS_COMPAT = advapi32.lib shell32.lib comdlg32.lib user32.lib gdi32.lib ws2_32.lib
  87. QMAKE_LIBS_QT_ENTRY = -lqtmain
  88. QMAKE_IDL = midl
  89. QMAKE_LIB = lib /NOLOGO
  90. QMAKE_RC = rc
  91. VCPROJ_EXTENSION = .vcproj
  92. VCSOLUTION_EXTENSION = .sln
  93. VCPROJ_KEYWORD = Qt4VSv1.0
  94. include(msvc-base.conf)
  95. unset(MSC_VER)