Ver código fonte

CMake: Disable incremental linking on Windows

Not compatible with /OPT:REF, and caused warnings.
jpark37 5 anos atrás
pai
commit
f3e6bfdc59
1 arquivos alterados com 5 adições e 3 exclusões
  1. 5 3
      CMakeLists.txt

+ 5 - 3
CMakeLists.txt

@@ -163,9 +163,11 @@ if(MSVC)
 		set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /SAFESEH:NO")
 	endif()
 
-	set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /OPT:REF")
-	set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /OPT:REF")
-	set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /OPT:REF")
+	foreach(t EXE SHARED MODULE)
+		set(CMAKE_${t}_LINKER_FLAGS "${CMAKE_${t}_LINKER_FLAGS} /OPT:REF")
+		set(CMAKE_${t}_LINKER_FLAGS_DEBUG "${CMAKE_${t}_LINKER_FLAGS_DEBUG} /INCREMENTAL:NO")
+		set(CMAKE_${t}_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_${t}_LINKER_FLAGS_RELWITHDEBINFO} /INCREMENTAL:NO")
+	endforeach()
 else()
 	if(MINGW)
 		set(CMAKE_WIDL "widl" CACHE STRING "wine IDL header file generation program")