Imported Upstream version 6.0.0.278

Former-commit-id: 8e546554fb8a6a1589c359278da385ff24d70cc3
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2019-06-05 08:38:53 +00:00
parent 8bc755c196
commit 4ed14e5c30
314 changed files with 1281 additions and 714 deletions

View File

@@ -31,13 +31,15 @@ ifndef BUILD_TOOLS_PROFILE
BUILD_TOOLS_PROFILE = build
endif
ifeq ("$(ENABLE_COMPILER_SERVER)","1")
COMPILER_SERVER_ARGS=/shared:$(COMPILER_SERVER_PIPENAME)
CSC_LOCATION=$(SERVER_CSC_LOCATION)
else
COMPILER_SERVER_ARGS:=
CSC_LOCATION=$(STANDALONE_CSC_LOCATION)
endif
# NOTE: We have to use conditional functions to branch on the state of ENABLE_COMPILER_SERVER
# because the value of this flag can change after rules.make is evaluated. If we use regular ifeq
# statements our builds will opt to use or not use the compiler server seemingly at random because
# we include rules.make many times and the last observed value from rules.make does not match the
# value used when actually executing csc. you can observe this by adding an $ ( info here and an
# echo above the csc invocation and printing the values.
COMPILER_SERVER_ENABLED_ARGS = /shared:$(COMPILER_SERVER_PIPENAME)
COMPILER_SERVER_ARGS = $(if $(findstring 1,$(ENABLE_COMPILER_SERVER)),$(COMPILER_SERVER_ENABLED_ARGS),)
CSC_LOCATION = $(if $(findstring 1,$(ENABLE_COMPILER_SERVER)),$(SERVER_CSC_LOCATION),$(STANDALONE_CSC_LOCATION))
USE_MCS_FLAGS = $(COMPILER_SERVER_ARGS) /codepage:$(CODEPAGE) /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
USE_MBAS_FLAGS = $(COMPILER_SERVER_ARGS) /codepage:$(CODEPAGE) $(LOCAL_MBAS_FLAGS) $(PLATFORM_MBAS_FLAGS) $(PROFILE_MBAS_FLAGS) $(MBAS_FLAGS)