https://bugzilla.tianocore.org/show_bug.cgi?id=582
Don't enable this option in the default setting, because it may cause VS2015
linker crash. Platform can enable this option in PlatformPkg.dsc like below:
[BuildOptions]
*_*_*_DLINK2_FLAGS = /WHOLEARCHIVE
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com>
$(DEBUG_DIR)(+)$(MODULE_NAME).dll\r
\r
<Command.MSFT, Command.INTEL>\r
$(DEBUG_DIR)(+)$(MODULE_NAME).dll\r
\r
<Command.MSFT, Command.INTEL>\r
+ "$(DLINK)" /OUT:${dst} $(DLINK_FLAGS) $(DLINK2_FLAGS) $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST)\r
"$(DLINK)" /OUT:${dst} $(DLINK_FLAGS) $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST)\r
\r
<Command.GCC>\r
"$(DLINK)" /OUT:${dst} $(DLINK_FLAGS) $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST)\r
\r
<Command.GCC>\r
# Intel(r) ACPI Compiler (iasl.exe) from\r
# https://acpica.org/downloads\r
# VS2015x86 -win64- Requires:\r
# Intel(r) ACPI Compiler (iasl.exe) from\r
# https://acpica.org/downloads\r
# VS2015x86 -win64- Requires:\r
-# Microsoft Visual Studio 2015 (x86) Professional Edition\r
+# Microsoft Visual Studio 2015 (x86) Update 2 or above\r
# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830\r
# Optional:\r
# Required to build platforms or ACPI tables:\r
# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830\r
# Optional:\r
# Required to build platforms or ACPI tables:\r
*_VS2015_*_APP_FLAGS = /nologo /E /TC\r
*_VS2015_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
*_VS2015_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
*_VS2015_*_APP_FLAGS = /nologo /E /TC\r
*_VS2015_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
*_VS2015_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
+*_VS2015_*_DLINK2_FLAGS =\r
\r
*_VS2015_*_ASM16_PATH = DEF(VS2015_BIN)\ml.exe\r
\r
\r
*_VS2015_*_ASM16_PATH = DEF(VS2015_BIN)\ml.exe\r
\r
*_VS2015xASL_*_APP_FLAGS = /nologo /E /TC\r
*_VS2015xASL_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
*_VS2015xASL_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
*_VS2015xASL_*_APP_FLAGS = /nologo /E /TC\r
*_VS2015xASL_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
*_VS2015xASL_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
+*_VS2015xASL_*_DLINK2_FLAGS =\r
\r
*_VS2015xASL_*_ASM16_PATH = DEF(VS2015_BIN)\ml.exe\r
\r
\r
*_VS2015xASL_*_ASM16_PATH = DEF(VS2015_BIN)\ml.exe\r
\r
*_VS2015x86_*_APP_FLAGS = /nologo /E /TC\r
*_VS2015x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
*_VS2015x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
*_VS2015x86_*_APP_FLAGS = /nologo /E /TC\r
*_VS2015x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
*_VS2015x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
+*_VS2015x86_*_DLINK2_FLAGS =\r
\r
*_VS2015x86_*_ASM16_PATH = DEF(VS2015x86_BIN)\ml.exe\r
\r
\r
*_VS2015x86_*_ASM16_PATH = DEF(VS2015x86_BIN)\ml.exe\r
\r
*_VS2015x86xASL_*_APP_FLAGS = /nologo /E /TC\r
*_VS2015x86xASL_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
*_VS2015x86xASL_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
*_VS2015x86xASL_*_APP_FLAGS = /nologo /E /TC\r
*_VS2015x86xASL_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
*_VS2015x86xASL_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
+*_VS2015x86xASL_*_DLINK2_FLAGS =\r
\r
*_VS2015x86xASL_*_ASM16_PATH = DEF(VS2015x86_BIN)\ml.exe\r
\r
\r
*_VS2015x86xASL_*_ASM16_PATH = DEF(VS2015x86_BIN)\ml.exe\r
\r