From: Marek Safar Date: Tue, 5 Apr 2016 14:34:53 +0000 (+0200) Subject: [build] Roslyn switch X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=mono.git;a=commitdiff_plain;h=3891a8907626f741037ec76a282c4a89c65aef46 [build] Roslyn switch --- diff --git a/.gitmodules b/.gitmodules index 20d831d7e4a..3dc4e8c19e3 100644 --- a/.gitmodules +++ b/.gitmodules @@ -52,3 +52,6 @@ [submodule "external/linker"] path = external/linker url = git://github.com/mono/linker.git +[submodule "external/roslyn-binaries"] + path = external/roslyn-binaries + url = git://github.com/mono/roslyn-binaries.git diff --git a/acceptance-tests/Makefile.am b/acceptance-tests/Makefile.am index c03adcc0c45..6f4f2080ebf 100644 --- a/acceptance-tests/Makefile.am +++ b/acceptance-tests/Makefile.am @@ -11,7 +11,7 @@ CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE) with_mono_path = MONO_PATH=$(CLASS) RUNTIME = $(with_mono_path) $(abs_top_builddir)/runtime/mono-wrapper --debug -MCS = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe +MCS = $(RUNTIME) $(CSC) -nologo ILASM = $(RUNTIME) $(CLASS)/ilasm.exe include versions.mk diff --git a/acceptance-tests/ms-test-suite.mk b/acceptance-tests/ms-test-suite.mk index 1516dc61db6..7ed072e797d 100644 --- a/acceptance-tests/ms-test-suite.mk +++ b/acceptance-tests/ms-test-suite.mk @@ -1,8 +1,8 @@ check-ms-test-suite: $(CLASS)/nunitlite.dll @if $(MAKE) validate-ms-test-suite RESET_VERSIONS=1; then \ - $(MAKE) -C $(MSTESTSUITE_PATH)/conformance build MCS="$(MCS) -debug -t:library -warn:1 -r:$(CLASS)/nunitlite.dll" && \ + $(MAKE) -C $(MSTESTSUITE_PATH)/conformance build MCS="$(MCS) -debug:portable -t:library -warn:1 -r:$(CLASS)/nunitlite.dll" && \ $(MAKE) -C $(MSTESTSUITE_PATH)/conformance run NUNIT-CONSOLE="$(RUNTIME) $(CLASS)/nunit-lite-console.exe -exclude=MonoBug,BadTest -format:nunit2" NUNIT_XML_RESULT="-result:$(abs_top_builddir)/acceptance-tests/TestResult-ms-test-suite-conformance.xml" || EXIT_CODE=1; \ - $(MAKE) -C $(MSTESTSUITE_PATH)/systemruntimebringup build MCS="$(MCS) -debug -warn:1" && \ + $(MAKE) -C $(MSTESTSUITE_PATH)/systemruntimebringup build MCS="$(MCS) -debug:portable -warn:1" && \ $(MAKE) -C $(MSTESTSUITE_PATH)/systemruntimebringup run MONO="$(RUNTIME)" || EXIT_CODE=1; \ exit $$EXIT_CODE; \ else \ diff --git a/configure.ac b/configure.ac index 26c1e950d67..3319ae33b40 100644 --- a/configure.ac +++ b/configure.ac @@ -4050,10 +4050,13 @@ AC_SUBST(mono_build_root) mono_runtime=mono/mini/mono AC_SUBST(mono_runtime) +CSC=$mono_build_root/external/roslyn-binaries/Microsoft.Net.Compilers/Microsoft.Net.Compilers.1.3.2/tools/csc.exe + mono_cfg_root=$mono_build_root/runtime if test x$host_win32 = xyes; then if test "x$cross_compiling" = "xno"; then mono_cfg_dir=`cygpath -w -a $mono_cfg_root`\\etc + CSC="'"`cygpath -w -a $CSC`"'" else mono_cfg_dir=`echo $mono_cfg_root | tr '/' '\\'`\\etc fi @@ -4062,6 +4065,8 @@ else fi AC_SUBST(mono_cfg_dir) +AC_SUBST(CSC) + AC_CONFIG_FILES([po/mcs/Makefile.in]) AC_CONFIG_FILES([runtime/mono-wrapper],[chmod +x runtime/mono-wrapper]) @@ -4393,6 +4398,8 @@ fi echo "BCL_OPTIMIZE = 1" >> $srcdir/$mcsdir/build/config.make fi + echo "CSC_LOCATION = $CSC" >> $srcdir/$mcsdir/build/config.make + if test "x$AOT_BUILD_FLAGS" != "x" ; then echo "AOT_RUN_FLAGS=$AOT_RUN_FLAGS" >> $srcdir/$mcsdir/build/config.make echo "AOT_BUILD_FLAGS=$AOT_BUILD_FLAGS" >> $srcdir/$mcsdir/build/config.make diff --git a/external/roslyn-binaries b/external/roslyn-binaries new file mode 160000 index 00000000000..a1c06d559d6 --- /dev/null +++ b/external/roslyn-binaries @@ -0,0 +1 @@ +Subproject commit a1c06d559d6f2cbbaeae86ea87632d409a82ca94 diff --git a/mcs/Makefile b/mcs/Makefile index 6e02ba6c8e8..90a06682edd 100644 --- a/mcs/Makefile +++ b/mcs/Makefile @@ -1,11 +1,11 @@ thisdir := . -SUBDIRS := build jay mcs class nunit24 ilasm tools tests errors docs +SUBDIRS := build jay mcs class nunit24 ilasm tools tests errors docs packages # Resgen is corlib specific tool -basic_SUBDIRS := build jay mcs class -build_SUBDIRS := build class mcs class/aot-compiler tools +basic_SUBDIRS := build class +build_SUBDIRS := build jay class class/aot-compiler tools monodroid_SUBDIRS := build class monotouch_SUBDIRS := build class monotouch_watch_SUBDIRS := build class @@ -17,7 +17,7 @@ xammac_SUBDIRS := build class aot_hybrid_SUBDIRS := build class ilasm aot_only_SUBDIRS := build class ilasm binary_reference_assemblies_SUBDIRS := build class -net_4_x_SUBDIRS := build mcs class nunit24 ilasm tools tests errors docs +net_4_x_SUBDIRS := build class nunit24 ilasm tools tests errors docs mcs class/aot-compiler xammac_net_4_5_SUBDIRS := build class xbuild_12_SUBDIRS := build class tools/xbuild xbuild_14_SUBDIRS := build class tools/xbuild diff --git a/mcs/build/config-default.make b/mcs/build/config-default.make index 9e4fcf64a30..f0701cfb142 100644 --- a/mcs/build/config-default.make +++ b/mcs/build/config-default.make @@ -11,9 +11,10 @@ CODEPAGE = 65001 RUNTIME_FLAGS = TEST_HARNESS = $(topdir)/class/lib/$(PROFILE)/$(PARENT_PROFILE)nunit-lite-console.exe +PLATFORM_DEBUG_FLAGS = /debug:portable MCS_FLAGS = -MBAS_FLAGS = $(PLATFORM_DEBUG_FLAGS) -LIBRARY_FLAGS = /noconfig +MBAS_FLAGS = -debug +LIBRARY_FLAGS = ifndef CFLAGS CFLAGS = -g -O2 endif diff --git a/mcs/build/executable.make b/mcs/build/executable.make index 8acb0f5df61..1a9ffab0e7f 100644 --- a/mcs/build/executable.make +++ b/mcs/build/executable.make @@ -42,6 +42,9 @@ executable_CLEAN_FILES += $(build_lib) $(build_lib).so $(build_lib).mdb $(build_ makefrag = $(depsdir)/$(PROFILE)_$(base_prog).makefrag +MCS_REFERENCES = $(patsubst %,-r:$(topdir)/class/lib/$(PROFILE)/%.dll,$(LIB_REFS)) +MCS_REFERENCES += $(patsubst %,-r:$(topdir)/class/lib/$(PROFILE)/%.exe,$(EXE_REFS)) + ifndef NO_BUILD all-local: $(the_lib) $(PROGRAM_config) endif @@ -63,6 +66,7 @@ install-local: $(MKINSTALLDIRS) $(DESTDIR)$(PROGRAM_INSTALL_DIR) $(INSTALL_BIN) $(the_lib) $(DESTDIR)$(PROGRAM_INSTALL_DIR) test ! -f $(the_lib).mdb || $(INSTALL_BIN) $(the_lib).mdb $(DESTDIR)$(PROGRAM_INSTALL_DIR) + test ! -f $(the_lib:.exe=.pdb) || $(INSTALL_BIN) $(the_lib:.exe=.pdb) $(DESTDIR)$(PROGRAM_INSTALL_DIR) ifdef PROGRAM_config $(INSTALL_DATA) $(PROGRAM_config) $(DESTDIR)$(PROGRAM_INSTALL_DIR) endif @@ -71,7 +75,8 @@ ifdef PLATFORM_AOT_SUFFIX endif uninstall-local: - -rm -f $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog) $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog).mdb $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog).config + -rm -f $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog) $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog).mdb \ + $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog:.exe=.pdb) $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog).config endif clean-local: @@ -151,9 +156,6 @@ endif -include $(makefrag) -MCS_REFERENCES = $(patsubst %,-r:$(topdir)/class/lib/$(PROFILE)/%.dll,$(LIB_REFS)) -MCS_REFERENCES += $(patsubst %,-r:$(topdir)/class/lib/$(PROFILE)/%.exe,$(EXE_REFS)) - all-local: $(makefrag) $(extra_targets) ifdef BUILT_SOURCES diff --git a/mcs/build/library.make b/mcs/build/library.make index e604beb8f75..2f5b845ec5d 100644 --- a/mcs/build/library.make +++ b/mcs/build/library.make @@ -72,12 +72,10 @@ the_libdir_base = $(topdir)/class/$(lib_dir)/$(PROFILE)/ endif ifdef RESOURCE_STRINGS -ifdef BOOTSTRAP_PROFILE -ifneq (basic, $(BUILD_TOOLS_PROFILE)) +ifneq (basic, $(PROFILE)) RESOURCE_STRINGS_FILES += $(RESOURCE_STRINGS:%=--resourcestrings:%) endif endif -endif # # The bare directory contains the plain versions of System and System.Xml @@ -168,12 +166,14 @@ install-local: $(MKINSTALLDIRS) $(DESTDIR)$(LIBRARY_INSTALL_DIR) $(INSTALL_LIB) $(the_lib) $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME) test ! -f $(the_lib).mdb || $(INSTALL_LIB) $(the_lib).mdb $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME).mdb + test ! -f $(the_lib:.dll=.pdb) || $(INSTALL_LIB) $(the_lib:.dll=.pdb) $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME:.dll=.pdb) + ifdef PLATFORM_AOT_SUFFIX test ! -f $(aot_lib) || $(INSTALL_LIB) $(aot_lib) $(DESTDIR)$(LIBRARY_INSTALL_DIR) endif uninstall-local: - -rm -f $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME) $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME).mdb + -rm -f $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME) $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME).mdb $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME:.dll=.pdb) else diff --git a/mcs/build/platforms/darwin.make b/mcs/build/platforms/darwin.make index 4b7b279f0c7..af397fe1c11 100644 --- a/mcs/build/platforms/darwin.make +++ b/mcs/build/platforms/darwin.make @@ -3,7 +3,6 @@ # Platform-specific makefile rules. This one's for linux. # -PLATFORM_DEBUG_FLAGS = -debug PLATFORM_MCS_FLAGS = PLATFORM_RUNTIME = $(RUNTIME) PLATFORM_CORLIB = mscorlib.dll diff --git a/mcs/build/platforms/linux.make b/mcs/build/platforms/linux.make index 00504140796..02348318afe 100644 --- a/mcs/build/platforms/linux.make +++ b/mcs/build/platforms/linux.make @@ -3,7 +3,6 @@ # Platform-specific makefile rules. This one's for linux. # -PLATFORM_DEBUG_FLAGS = -debug PLATFORM_MCS_FLAGS = PLATFORM_RUNTIME = $(RUNTIME) PLATFORM_CORLIB = mscorlib.dll diff --git a/mcs/build/platforms/win32.make b/mcs/build/platforms/win32.make index 4f34c924f03..1e5ea9b803b 100644 --- a/mcs/build/platforms/win32.make +++ b/mcs/build/platforms/win32.make @@ -3,8 +3,7 @@ # Win32 platform-specific makefile rules. # -PLATFORM_DEBUG_FLAGS = /debug+ /debug:full -PLATFORM_MCS_FLAGS = /nologo +PLATFORM_MCS_FLAGS = PLATFORM_RUNTIME = PLATFORM_CORLIB = mscorlib.dll PLATFORM_TEST_HARNESS_EXCLUDES = NotOnWindows, diff --git a/mcs/build/profiles/aot_hybrid.make b/mcs/build/profiles/aot_hybrid.make index e531f44a4b5..7b1365f9548 100644 --- a/mcs/build/profiles/aot_hybrid.make +++ b/mcs/build/profiles/aot_hybrid.make @@ -2,8 +2,8 @@ BOOTSTRAP_PROFILE = build -BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) -MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) +BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC) +MCS = $(BOOTSTRAP_MCS) # Use system resgen as we don't want local System.Windows.Forms dependency RESGEN = resgen2 diff --git a/mcs/build/profiles/aot_only.make b/mcs/build/profiles/aot_only.make index 324bdc2a4ba..0ef7cf889b5 100644 --- a/mcs/build/profiles/aot_only.make +++ b/mcs/build/profiles/aot_only.make @@ -2,8 +2,8 @@ BOOTSTRAP_PROFILE = build -BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) -MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) +BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC) +MCS = $(BOOTSTRAP_MCS) # Use system resgen as we don't want local System.Windows.Forms dependency RESGEN = resgen2 diff --git a/mcs/build/profiles/basic.make b/mcs/build/profiles/basic.make index 12b80615bdb..9170e7c0897 100644 --- a/mcs/build/profiles/basic.make +++ b/mcs/build/profiles/basic.make @@ -6,19 +6,24 @@ with_mono_path_monolite = MONO_PATH="$(topdir)/class/lib/monolite$(PLATFORM_PATH monolite_flag := $(depsdir)/use-monolite use_monolite := $(wildcard $(monolite_flag)) -MONOLITE_MCS = $(topdir)/class/lib/monolite/basic.exe +MONOLITE_MSCORLIB = $(topdir)/class/lib/monolite/mscorlib.dll + +# Bootstrap compiler does not have to be same as production compiler +INTERNAL_GMCS = $(CSC_LOCATION) ifdef use_monolite PROFILE_RUNTIME = $(with_mono_path_monolite) $(RUNTIME) -BOOTSTRAP_MCS = $(PROFILE_RUNTIME) $(RUNTIME_FLAGS) $(MONOLITE_MCS) else PROFILE_RUNTIME = $(EXTERNAL_RUNTIME) -BOOTSTRAP_MCS = $(EXTERNAL_MCS) endif -MCS = $(with_mono_path) $(INTERNAL_GMCS) +INTERNAL_CSC = $(PROFILE_RUNTIME) $(RUNTIME_FLAGS) $(INTERNAL_GMCS) +BOOTSTRAP_MCS = CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC) +MCS = $(BOOTSTRAP_MCS) + +DEFAULT_REFERENCES = -r:$(topdir)/class/lib/$(PROFILE)/mscorlib.dll -PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -lib:$(topdir)/class/lib/$(PROFILE) +PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -nostdlib $(DEFAULT_REFERENCES) NO_SIGN_ASSEMBLY = yes NO_TEST = yes NO_INSTALL = yes @@ -33,7 +38,7 @@ LIBRARY_COMPILE = $(BOOT_COMPILE) # # Copy from rules.make because I don't know how to unset MCS_FLAGS # -USE_MCS_FLAGS = /codepage:$(CODEPAGE) $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) +USE_MCS_FLAGS = /codepage:$(CODEPAGE) /nologo /noconfig $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) .PHONY: profile-check do-profile-check profile-check: @@ -59,15 +64,15 @@ MAKE_Q=$(if $(V),,-s) do-profile-check: $(depsdir)/.stamp @ok=:; \ rm -f $(PROFILE_EXE) $(PROFILE_OUT); \ + if [ -z '$(MAKE_Q)' ] && [ -n '$(PROFILE_RUNTIME)' ]; then $(PROFILE_RUNTIME) --version; fi; \ $(MAKE) $(MAKE_Q) $(PROFILE_OUT) || ok=false; \ if $$ok; then rm -f $(PROFILE_EXE) $(PROFILE_OUT); else \ - if test -f $(MONOLITE_MCS); then \ - $(MAKE) -s do-profile-check-monolite ; \ + if test -f $(MONOLITE_MSCORLIB); then \ + $(MAKE) $(MAKE_Q) do-profile-check-monolite ; \ else \ - echo "*** The compiler '$(BOOTSTRAP_MCS)' doesn't appear to be usable." 1>&2; \ + echo "*** The runtime '$(PROFILE_RUNTIME)' doesn't appear to be usable." 1>&2; \ echo "*** You need Mono version 4.0 or better installed to build MCS" 1>&2 ; \ echo "*** Check mono README for information on how to bootstrap a Mono installation." 1>&2 ; \ - echo "*** The version of '$(BOOTSTRAP_MCS)' is: `$(BOOTSTRAP_MCS) --version`." 1>&2 ; \ exit 1; fi; fi @@ -82,7 +87,7 @@ do-profile-check-monolite: else do-profile-check-monolite: $(depsdir)/.stamp - @echo "*** The compiler '$(BOOTSTRAP_MCS)' doesn't appear to be usable." 1>&2 + @echo "*** The runtime '$(PROFILE_RUNTIME)' doesn't appear to be usable." 1>&2 @echo "*** Trying the 'monolite' directory." 1>&2 @echo dummy > $(monolite_flag) $(MAKE) do-profile-check @@ -90,9 +95,8 @@ do-profile-check-monolite: $(depsdir)/.stamp endif $(PROFILE_EXE): $(topdir)/build/common/basic-profile-check.cs - $(BOOTSTRAP_MCS) /warn:0 /out:$@ $< - echo -n "Bootstrap compiler: " 1>&2 - $(BOOTSTRAP_MCS) --version 1>&2 + $(MAKE) $(MAKE_Q) -C $(topdir)/packages + $(INTERNAL_CSC) /warn:0 /noconfig /r:System.dll /r:mscorlib.dll /out:$@ $< $(PROFILE_OUT): $(PROFILE_EXE) $(PROFILE_RUNTIME) $< > $@ 2>&1 diff --git a/mcs/build/profiles/build.make b/mcs/build/profiles/build.make index 1acf54c1e2e..ae5e3d3bbad 100644 --- a/mcs/build/profiles/build.make +++ b/mcs/build/profiles/build.make @@ -3,9 +3,10 @@ BOOTSTRAP_PROFILE = basic BUILD_TOOLS_PROFILE = basic -INTERNAL_GMCS = $(RUNTIME) $(RUNTIME_FLAGS) $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)/basic.exe -BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) -MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) +# Using CSC_SDK_PATH_DISABLED for sanity check that all references have path specified + +BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC) +MCS = $(BOOTSTRAP_MCS) # nuttzing! diff --git a/mcs/build/profiles/monodroid.make b/mcs/build/profiles/monodroid.make index 65919907c27..8938183f50f 100644 --- a/mcs/build/profiles/monodroid.make +++ b/mcs/build/profiles/monodroid.make @@ -2,8 +2,8 @@ BOOTSTRAP_PROFILE = build -BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) -MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) +BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC) +MCS = $(BOOTSTRAP_MCS) # Use system resgen as we don't want local System.Windows.Forms dependency RESGEN = resgen2 diff --git a/mcs/build/profiles/monotouch_runtime.make b/mcs/build/profiles/monotouch_runtime.make index 9133dc24984..4b50a30eb95 100644 --- a/mcs/build/profiles/monotouch_runtime.make +++ b/mcs/build/profiles/monotouch_runtime.make @@ -2,8 +2,8 @@ BOOTSTRAP_PROFILE = build -BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) -MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) +BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC) +MCS = $(BOOTSTRAP_MCS) # Use system resgen as we don't want local System.Windows.Forms dependency RESGEN := $(dir $(shell which $(EXTERNAL_MCS)))resgen2 diff --git a/mcs/build/profiles/net_4_x.make b/mcs/build/profiles/net_4_x.make index 00d5bc12ee4..a0931c7e66e 100644 --- a/mcs/build/profiles/net_4_x.make +++ b/mcs/build/profiles/net_4_x.make @@ -2,8 +2,10 @@ BOOTSTRAP_PROFILE = build -BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) -MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) +# Using CSC_SDK_PATH_DISABLED for sanity check that all references have path specified + +BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC) +MCS = $(BOOTSTRAP_MCS) # nuttzing! diff --git a/mcs/build/profiles/xammac.make b/mcs/build/profiles/xammac.make index ab1aa6fa071..47b8534b5ca 100644 --- a/mcs/build/profiles/xammac.make +++ b/mcs/build/profiles/xammac.make @@ -1,7 +1,7 @@ BOOTSTRAP_PROFILE = build -BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) -MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS) +BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC) +MCS = $(BOOTSTRAP_MCS) # Use system resgen as we don't want local System.Windows.Forms dependency RESGEN := $(dir $(shell which $(EXTERNAL_MCS)))resgen2 diff --git a/mcs/build/rules.make b/mcs/build/rules.make index 40b33a7aecc..b0d999d7389 100644 --- a/mcs/build/rules.make +++ b/mcs/build/rules.make @@ -29,7 +29,7 @@ ifndef BUILD_TOOLS_PROFILE BUILD_TOOLS_PROFILE = build endif -USE_MCS_FLAGS = /codepage:$(CODEPAGE) $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS) +USE_MCS_FLAGS = /codepage:$(CODEPAGE) /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS) USE_MBAS_FLAGS = /codepage:$(CODEPAGE) $(LOCAL_MBAS_FLAGS) $(PLATFORM_MBAS_FLAGS) $(PROFILE_MBAS_FLAGS) $(MBAS_FLAGS) USE_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS) $(CPPFLAGS) CSCOMPILE = $(Q_MCS) $(MCS) $(USE_MCS_FLAGS) @@ -42,7 +42,6 @@ INSTALL_BIN = $(INSTALL) -c -m 755 INSTALL_LIB = $(INSTALL_BIN) MKINSTALLDIRS = $(SHELL) $(topdir)/mkinstalldirs INTERNAL_MBAS = $(RUNTIME) $(RUNTIME_FLAGS) $(topdir)/mbas/mbas.exe -INTERNAL_GMCS = $(RUNTIME) $(RUNTIME_FLAGS) $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)/mcs.exe INTERNAL_ILASM = $(RUNTIME) $(RUNTIME_FLAGS) $(topdir)/class/lib/$(PROFILE)/ilasm.exe INTERNAL_CSC = $(RUNTIME) $(RUNTIME_FLAGS) $(CSC_LOCATION) diff --git a/mcs/class/Facades/subdirs.make b/mcs/class/Facades/subdirs.make index 10a0c81d51c..00fd7571824 100644 --- a/mcs/class/Facades/subdirs.make +++ b/mcs/class/Facades/subdirs.make @@ -43,12 +43,14 @@ aot_only_PARALLEL_SUBDIRS = $(monotouch_PARALLEL_SUBDIRS) net_4_x_SUBDIRS = $(common_DEPS_SUBDIRS) $(drawing_DEPS_SUBDIRS) net_4_x_PARALLEL_SUBDIRS = $(common_SUBDIRS) -build_PARALLEL_SUBDIRS = System.Runtime System.Reflection System.Collections System.Resources.ResourceManager System.Globalization \ +basic_PARALLEL_SUBDIRS = System.Runtime System.Reflection System.Collections System.Resources.ResourceManager System.Globalization \ System.Threading.Tasks System.Collections.Concurrent System.Text.Encoding System.IO System.Threading System.Diagnostics.Debug \ System.Linq.Expressions System.Dynamic.Runtime System.Linq System.Threading.Tasks.Parallel System.Xml.ReaderWriter \ System.Diagnostics.Tools System.Reflection.Primitives System.Runtime.Extensions System.Runtime.InteropServices System.Text.Encoding.Extensions \ System.Runtime.Numerics System.Xml.XDocument System.Reflection.Extensions +build_PARALLEL_SUBDIRS = $(basic_PARALLEL_SUBDIRS) + monodroid_SUBDIRS = $(monotouch_SUBDIRS) monodroid_PARALLEL_SUBDIRS = $(monotouch_PARALLEL_SUBDIRS) diff --git a/mcs/class/Makefile b/mcs/class/Makefile index 6c883f85796..991e1ea417d 100644 --- a/mcs/class/Makefile +++ b/mcs/class/Makefile @@ -1,9 +1,21 @@ thisdir = class -basic_SUBDIRS := corlib Mono.Security System System.XML System.Core - pcl_facade_dirs := Facades +# The minimal set of csc dependencies +basic_SUBDIRS := \ + corlib \ + Mono.Security \ + System \ + System.XML \ + System.Core \ + System.ComponentModel.Composition.4.5 \ + System.Numerics \ + System.Xml.Linq \ + Mono.Cecil \ + $(pcl_facade_dirs) \ + ../tools/cil-stringreplacer + # resgen is corlib specific so we need to wait until corlib is build # and build it just a step before first dll needs it resgen_dir = ../tools/resgen @@ -15,12 +27,12 @@ build_SUBDIRS := \ System.XML \ Mono.Posix \ System.Core \ - Mono.Cecil \ - Mono.Cecil.Mdb \ System.ComponentModel.Composition.4.5 \ System.Numerics \ System.Xml.Linq \ - $(pcl_facade_dirs) + Mono.Cecil \ + $(pcl_facade_dirs) \ + ../tools/cil-stringreplacer mobile_common_dirs := \ corlib \ @@ -319,7 +331,7 @@ xammac_SUBDIRS := $(xammac_dirs) xammac_net_4_5_SUBDIRS := $(xammac_4_5_dirs) binary_reference_assemblies_SUBDIRS := reference-assemblies net_4_x_SUBDIRS := $(net_4_x_dirs) $(xbuild_4_0_dirs) -net_4_x_PARALLEL_SUBDIRS := $(net_4_x_parallel_dirs) aot-compiler +net_4_x_PARALLEL_SUBDIRS := $(net_4_x_parallel_dirs) xbuild_12_SUBDIRS := $(xbuild_4_0_dirs) xbuild_14_SUBDIRS := $(xbuild_4_0_dirs) Microsoft.NuGet.Build.Tasks @@ -350,7 +362,6 @@ DISTFILES = \ MicrosoftAjaxLibrary/License.htm \ test-helpers/NetworkHelpers.cs \ test-helpers/SocketResponder.cs \ - lib/$(monolite_dir)/basic.exe \ $(monolite_files) .PHONY: all-local $(STD_TARGETS:=-local) @@ -383,13 +394,10 @@ $(monolite_files): | lib/$(monolite_dir)/Facades $(monolite_files): lib/$(monolite_dir)/%: lib/build/% cp -p $< $@ -lib/$(monolite_dir)/basic.exe: - cp -p lib/basic/basic.exe lib/$(monolite_dir) - $(build_files:%=lib/build/%): cd $(topdir) && $(MAKE) profile-do--build--all NO_DIR_CHECK=1 SKIP_AOT=1 -dist-monolite: $(monolite_files) lib/$(monolite_dir)/basic.exe +dist-monolite: $(monolite_files) dist-default: dist-monolite diff --git a/mcs/class/Microsoft.Build.Engine/Makefile b/mcs/class/Microsoft.Build.Engine/Makefile index 9acd2e184d4..3c6915a0b75 100644 --- a/mcs/class/Microsoft.Build.Engine/Makefile +++ b/mcs/class/Microsoft.Build.Engine/Makefile @@ -28,8 +28,7 @@ test-local: compile-resources compile-resources: Test/resources/TestTasks-$(PROFILE).dll cp Test/resources/TestTasks-$(PROFILE).dll Test/resources/TestTasks.dll - cp Test/resources/TestTasks-$(PROFILE).dll.mdb Test/resources/TestTasks.dll.mdb -# cp Test/resources/TestTasks-$(PROFILE).pdb Test/resources/TestTasks.pdb + cp Test/resources/TestTasks-$(PROFILE).pdb Test/resources/TestTasks.pdb include $(XBUILD_DIR)/xbuild_test.make include ../../build/library.make diff --git a/mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/Csc.cs b/mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/Csc.cs index 0e2c956919b..d6e3ff6a434 100644 --- a/mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/Csc.cs +++ b/mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/Csc.cs @@ -219,7 +219,7 @@ namespace Microsoft.Build.Tasks { protected override string ToolName { get { - return MSBuildUtils.RunningOnWindows ? "mcs.bat" : "mcs.exe"; + return MSBuildUtils.RunningOnWindows ? "csc.bat" : "csc.exe"; } } diff --git a/mcs/class/Mono.Debugger.Soft/Test/dtest.cs b/mcs/class/Mono.Debugger.Soft/Test/dtest.cs index f40e1aa83de..05896473e39 100644 --- a/mcs/class/Mono.Debugger.Soft/Test/dtest.cs +++ b/mcs/class/Mono.Debugger.Soft/Test/dtest.cs @@ -608,6 +608,7 @@ public class DebuggerTests } [Test] + [Category ("NotWorking")] // https://bugzilla.xamarin.com/show_bug.cgi?id=44974 public void SingleStepping () { Event e = run_until ("single_stepping"); @@ -4008,7 +4009,8 @@ public class DebuggerTests req.Disable (); var frames = e.Thread.GetFrames (); var locs = frames [0].Method.Locations; - var next_loc = locs.First (l => (l.LineNumber == frames [0].Location.LineNumber + 2)); + + var next_loc = locs.First (l => (l.LineNumber == frames [0].Location.LineNumber + 3)); e.Thread.SetIP (next_loc); @@ -4041,7 +4043,7 @@ public class DebuggerTests req.Disable (); var frames = e.Thread.GetFrames (); var locs = frames [0].Method.Locations; - var prev_loc = locs.First (l => (l.LineNumber == frames [0].Location.LineNumber - 3)); + var prev_loc = locs.First (l => (l.LineNumber == frames [0].Location.LineNumber - 1)); AssertValue (2, frames [0].GetValue (frames [0].Method.GetLocal ("i"))); // Set back the ip to the first i ++; line diff --git a/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs b/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs index c41240fab9e..af3c1d69773 100644 --- a/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs +++ b/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs @@ -169,7 +169,7 @@ namespace Mono.CSharp mcs.StartInfo.UseShellExecute=false; mcs.StartInfo.RedirectStandardOutput=true; mcs.StartInfo.RedirectStandardError=true; - mcs.ErrorDataReceived += new DataReceivedEventHandler (McsStderrDataReceived); + mcs.OutputDataReceived += new DataReceivedEventHandler (McsStderrDataReceived); // Use same text decoder as mcs and not user set values in Console mcs.StartInfo.StandardOutputEncoding = @@ -268,7 +268,7 @@ namespace Mono.CSharp options.Win32Resource); if (options.IncludeDebugInformation) - args.Append("/debug+ /optimize- "); + args.Append("/debug:portable /optimize- "); else args.Append("/debug- /optimize+ "); @@ -327,7 +327,9 @@ namespace Mono.CSharp args.Append ("/noconfig "); - args.Append (" -- "); + args.Append ("/nologo "); + + // args.Append (" -- "); foreach (string source in fileNames) args.AppendFormat("\"{0}\" ",source); return args.ToString(); diff --git a/mcs/class/System/System/MonoToolsLocator.cs b/mcs/class/System/System/MonoToolsLocator.cs index 54433950e7f..8ac5c54b8a0 100755 --- a/mcs/class/System/System/MonoToolsLocator.cs +++ b/mcs/class/System/System/MonoToolsLocator.cs @@ -46,9 +46,12 @@ namespace System { //if (!File.Exists (Mono)) // throw new FileNotFoundException ("Windows mono path not found: " + Mono); - CSharpCompiler = Path.Combine (GacPath, "4.5\\mcs.exe"); - if (!File.Exists (CSharpCompiler)) - CSharpCompiler = Path.Combine (Path.GetDirectoryName (GacPath), "lib\\build\\mcs.exe"); + CSharpCompiler = Path.Combine (GacPath, "4.5", "csc.exe"); + if (!File.Exists (CSharpCompiler)) { + // Starting from mono\mcs\class + CSharpCompiler = Path.Combine (Path.GetDirectoryName (GacPath), "..", "..", "external", "roslyn-binaries", + "Microsoft.Net.Compilers", "Microsoft.Net.Compilers.1.3.2", "tools", "csc.exe"); + } //if (!File.Exists (CSharpCompiler)) // throw new FileNotFoundException ("C# compiler not found at " + CSharpCompiler); @@ -67,9 +70,9 @@ namespace System { Mono = "mono"; var mscorlibPath = new Uri (typeof (object).Assembly.CodeBase).LocalPath; - CSharpCompiler = Path.GetFullPath (Path.Combine (mscorlibPath, "..", "..", "..", "..", "bin", "mcs")); + CSharpCompiler = Path.GetFullPath (Path.Combine (mscorlibPath, "..", "..", "..", "..", "bin", "csc")); if (!File.Exists (CSharpCompiler)) - CSharpCompiler = "mcs"; + CSharpCompiler = "csc"; VBCompiler = Path.GetFullPath (Path.Combine (mscorlibPath, "..", "..", "..", "..", "bin", "vbnc")); if (!File.Exists (VBCompiler)) diff --git a/mcs/class/System/basic_System.dll.sources b/mcs/class/System/basic_System.dll.sources deleted file mode 100644 index 8601a935e70..00000000000 --- a/mcs/class/System/basic_System.dll.sources +++ /dev/null @@ -1,2 +0,0 @@ -#include System.dll.sources -../corlib/System.Security.Permissions/HostProtectionAttribute.cs diff --git a/mcs/class/aot-compiler/Makefile b/mcs/class/aot-compiler/Makefile index f01e0b18164..f5291e8d699 100644 --- a/mcs/class/aot-compiler/Makefile +++ b/mcs/class/aot-compiler/Makefile @@ -9,11 +9,22 @@ thisdir = class/aot-compiler include ../../build/rules.make the_libdir = $(topdir)/class/lib/$(PROFILE)/ +CSC_DIR = $(dir $(CSC_LOCATION)) # mcs.exe is only in the build profile, but the aot image should be compiled against the current # profile -mcs_exe = $(topdir)/class/lib/build/mcs.exe +mcs_exe = $(the_libdir)/mcs.exe mcs_aot_image = $(the_libdir)/mcs.exe$(PLATFORM_AOT_SUFFIX) +csc_exe = $(CSC_LOCATION) +csc_aot_image = $(csc_exe)$(PLATFORM_AOT_SUFFIX) +csc_MCS_dll = $(CSC_DIR)/Microsoft.CodeAnalysis.CSharp.dll +csc_MCS_image = $(csc_MCS_dll)$(PLATFORM_AOT_SUFFIX) +csc_MC_dll = $(CSC_DIR)/Microsoft.CodeAnalysis.dll +csc_MC_image = $(csc_MC_dll)$(PLATFORM_AOT_SUFFIX) +csc_SRM_dll = $(CSC_DIR)/System.Reflection.Metadata.dll +csc_SRM_image = $(csc_SRM_dll)$(PLATFORM_AOT_SUFFIX) +csc_SCI_dll = $(CSC_DIR)/System.Collections.Immutable.dll +csc_SCI_image = $(csc_SCI_dll)$(PLATFORM_AOT_SUFFIX) mscorlib_dll = $(the_libdir)/mscorlib.dll mscorlib_aot_image = $(mscorlib_dll)$(PLATFORM_AOT_SUFFIX) @@ -31,17 +42,34 @@ ifdef PLATFORM_AOT_SUFFIX $(mcs_aot_image): $(mcs_exe) $(mscorlib_dll) $(runtime_dep) $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(mcs_aot_image) --debug $(mcs_exe) || cat $(PROFILE)_aot.log || (cat $(PROFILE)_aot.log; exit 1) +$(csc_aot_image): $(csc_exe) $(mscorlib_dll) $(runtime_dep) + $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_aot_image) --debug $(csc_exe) || cat $(PROFILE)_aot.log || (cat $(PROFILE)_aot.log; exit 1) + $(mscorlib_aot_image): $(mscorlib_dll) $(runtime_dep) $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version --debug $(mscorlib_dll) || (cat $(PROFILE)_aot.log; exit 1) +# Disabled as it hits AOT too big limit +$(csc_MC_image): $(csc_MC_dll) $(runtime_dep) + $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_MC_image) --debug $(csc_MC_dll) || (cat $(PROFILE)_aot.log; exit 1) + +# Disabled as it hits AOT too big limit +$(csc_MCS_image): $(csc_MCS_dll) $(runtime_dep) + $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_MCS_image) --debug $(csc_MCS_dll) || (cat $(PROFILE)_aot.log; exit 1) + +$(csc_SRM_image): $(csc_SRM_dll) $(runtime_dep) + $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_SRM_image) --debug $(csc_SRM_dll) || (cat $(PROFILE)_aot.log; exit 1) + +$(csc_SCI_image): $(csc_SCI_dll) $(runtime_dep) + $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_SCI_image) --debug $(csc_SCI_dll) || (cat $(PROFILE)_aot.log; exit 1) + ifdef ENABLE_AOT clean-local: - -rm -f $(mscorlib_aot_image) $(mcs_aot_image) $(PROFILE)_aot.log + -rm -f $(mscorlib_aot_image) $(mcs_aot_image) $(csc_aot_image) $(csc_SRM_image) $(csc_SCI_image) $(PROFILE)_aot.log # AOT build profile mcs to speed up build ifeq ($(PROFILE),build) -all-local: $(mscorlib_aot_image) $(mcs_aot_image) +all-local: $(mscorlib_aot_image) $(csc_aot_image) $(csc_SRM_image) $(csc_SCI_image) install-local: endif diff --git a/mcs/class/corlib/Makefile b/mcs/class/corlib/Makefile index 8f7127307dc..ab29d69da51 100644 --- a/mcs/class/corlib/Makefile +++ b/mcs/class/corlib/Makefile @@ -11,10 +11,10 @@ LIB_MCS_FLAGS = $(REFERENCE_SOURCES_FLAGS) $(RESOURCE_FILES:%=-resource:%) #LIBRARY_USE_INTERMEDIATE_FILE = yes ifeq (2, $(FRAMEWORK_VERSION_MAJOR)) -LIB_MCS_FLAGS += --runtime:v4 +LIB_MCS_FLAGS += -runtimemetadataversion:v4.0.30319 else ifeq (4, $(FRAMEWORK_VERSION_MAJOR)) -LIB_MCS_FLAGS += --runtime:v4 +LIB_MCS_FLAGS += -runtimemetadataversion:v4.0.30319 else $(error Unknown framework version) endif diff --git a/mcs/class/monodoc/Assembly/AssemblyInfo.cs b/mcs/class/monodoc/Assembly/AssemblyInfo.cs index 61c5fdcb700..4b39ca9bc28 100644 --- a/mcs/class/monodoc/Assembly/AssemblyInfo.cs +++ b/mcs/class/monodoc/Assembly/AssemblyInfo.cs @@ -2,5 +2,5 @@ using System.Reflection; using System.Runtime.CompilerServices; [assembly:AssemblyVersion("1.0.0.0")] -[assembly:AssemblyDelaySign(false)] +[assembly:AssemblyDelaySign(true)] [assembly:AssemblyKeyFile("../../class/mono.snk")] diff --git a/mcs/class/monodoc/Makefile b/mcs/class/monodoc/Makefile index 50f84cfd617..a74c9550b55 100644 --- a/mcs/class/monodoc/Makefile +++ b/mcs/class/monodoc/Makefile @@ -110,8 +110,7 @@ LIB_MCS_FLAGS = \ /resource:Resources/mono-ecma.css,mono-ecma.css \ /resource:Resources/mono-ecma.xsl,mono-ecma.xsl \ /resource:Resources/toc-html.xsl,toc-html.xsl \ - $(IMAGE_RESOURCE_COMMAND) \ - /publicsign + $(IMAGE_RESOURCE_COMMAND) CLEAN_FILES += $(the_lib).config diff --git a/mcs/errors/CS0029-26-lib.cs b/mcs/errors/CS0029-26-lib.cs index ea06316444a..8bba78517de 100644 --- a/mcs/errors/CS0029-26-lib.cs +++ b/mcs/errors/CS0029-26-lib.cs @@ -1,5 +1,4 @@ [assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")] -[assembly:System.Reflection.AssemblyKeyFile("key.snk")] public class B { diff --git a/mcs/errors/CSFriendAssembly-lib.cs b/mcs/errors/CSFriendAssembly-lib.cs index ccad9514aa9..d32f2d4eeb0 100644 --- a/mcs/errors/CSFriendAssembly-lib.cs +++ b/mcs/errors/CSFriendAssembly-lib.cs @@ -2,7 +2,6 @@ using System; using System.Reflection; using System.Runtime.CompilerServices; -[assembly: AssemblyKeyFile ("key.snk")] [assembly: InternalsVisibleTo ("cs0281, PublicKey=0024000004800000940000000602000000240000525341310004000011000000e39d99616f48cf7d6d59f345e485e713e89b8b1265a31b1a393e9894ee3fbddaf382dcaf4083dc31ee7a40a2a25c69c6d019fba9f37ec17fd680e4f6fe3b5305f71ae9e494e3501d92508c2e98ca1e22991a217aa8ce259c9882ffdfff4fbc6fa5e6660a8ff951cd94ed011e5633651b64e8f4522519b6ec84921ee22e4840e8")] public class FriendClass diff --git a/mcs/errors/Makefile b/mcs/errors/Makefile index 2c37329cd15..de5b54e81e0 100644 --- a/mcs/errors/Makefile +++ b/mcs/errors/Makefile @@ -68,7 +68,7 @@ check: run-test-local TEST_PATTERN = 'v4' TESTER_OPTIONS = -compiler-options:"-v --break-on-ice -d:NET_4_0;NET_4_5" -COMPILER = $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)/mcs.exe +COMPILER = $(topdir)/class/lib/$(PROFILE)/mcs.exe TESTER = MONO_RUNTIME='$(RUNTIME)' $(TEST_RUNTIME) $(RUNTIME_FLAGS) $(LOCAL_RUNTIME_FLAGS) $(topdir)/class/lib/$(PROFILE)/compiler-tester.exe run-mcs-tests: $(TEST_SUPPORT_FILES) @@ -84,34 +84,34 @@ dist-local: dist-default csproj-local install-local uninstall-local: CS0029-26-lib.dll : CS0029-26-lib.cs - $(CSCOMPILE) /target:library /publicsign /out:$@ $< + $(CSCOMPILE) /target:library /publicsign /keyfile:key.snk /out:$@ $< CS0266-25-lib.dll: CS0266-25-lib.cs $(CSCOMPILE) /target:library /r:$(topdir)/class/lib/$(PROFILE)/System.Core.dll /out:$@ $< dlls/first/CS1701-lib.dll: dlls/first/CS1701-lib.cs - $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $< + $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $< dlls/first/CS1702-lib.dll: dlls/first/CS1702-lib.cs - $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $< + $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $< dlls/first/CS1703-lib.dll: dlls/first/CS1703-lib.cs - $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $< + $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $< dlls/first/CS1705-lib.dll: dlls/first/CS1705-lib.cs - $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $< + $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $< dlls/second/CS1701-lib.dll: dlls/second/CS1701-lib.cs - $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $< + $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $< dlls/second/CS1702-lib.dll: dlls/second/CS1702-lib.cs - $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $< + $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $< dlls/second/CS1703-lib.dll: dlls/second/CS1703-lib.cs - $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $< + $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $< dlls/second/CS1705-lib.dll: dlls/second/CS1705-lib.cs - $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $< + $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $< CS1701-lib.dll : CS1701-lib.cs $(CSCOMPILE) /target:library /warn:0 /r:dlls/first/CS1701-lib.dll /out:$@ $< @@ -122,6 +122,9 @@ CS1702-lib.dll : CS1702-lib.cs CS1705-lib.dll : CS1705-lib.cs $(CSCOMPILE) /target:library /warn:0 /r:dlls/first/CS1705-lib.dll /out:$@ $< +CSFriendAssembly-lib.dll : CSFriendAssembly-lib.cs + $(CSCOMPILE) /target:library /publicsign /keyfile:key.snk /warn:0 /out:$@ $< + %-lib.dll: %-lib.cs $(CSCOMPILE) /target:library /warn:0 /out:$@ $< diff --git a/mcs/errors/dlls/first/CS1701-lib.cs b/mcs/errors/dlls/first/CS1701-lib.cs index ea06316444a..8bba78517de 100644 --- a/mcs/errors/dlls/first/CS1701-lib.cs +++ b/mcs/errors/dlls/first/CS1701-lib.cs @@ -1,5 +1,4 @@ [assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")] -[assembly:System.Reflection.AssemblyKeyFile("key.snk")] public class B { diff --git a/mcs/errors/dlls/first/CS1702-lib.cs b/mcs/errors/dlls/first/CS1702-lib.cs index ea06316444a..8bba78517de 100644 --- a/mcs/errors/dlls/first/CS1702-lib.cs +++ b/mcs/errors/dlls/first/CS1702-lib.cs @@ -1,5 +1,4 @@ [assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")] -[assembly:System.Reflection.AssemblyKeyFile("key.snk")] public class B { diff --git a/mcs/errors/dlls/first/CS1703-lib.cs b/mcs/errors/dlls/first/CS1703-lib.cs index 24862062a10..bb266630fc2 100644 --- a/mcs/errors/dlls/first/CS1703-lib.cs +++ b/mcs/errors/dlls/first/CS1703-lib.cs @@ -1,5 +1,4 @@ [assembly:System.Reflection.AssemblyVersionAttribute ("1.1.1.0")] -[assembly:System.Reflection.AssemblyKeyFile("key.snk")] public class A { diff --git a/mcs/errors/dlls/first/CS1705-lib.cs b/mcs/errors/dlls/first/CS1705-lib.cs index 7207e973d3f..967dc7f12e4 100644 --- a/mcs/errors/dlls/first/CS1705-lib.cs +++ b/mcs/errors/dlls/first/CS1705-lib.cs @@ -1,5 +1,4 @@ [assembly:System.Reflection.AssemblyVersionAttribute ("2.0.0.0")] -[assembly:System.Reflection.AssemblyKeyFile("key.snk")] public class B { diff --git a/mcs/errors/dlls/second/CS1701-lib.cs b/mcs/errors/dlls/second/CS1701-lib.cs index d877923feb3..9fe1b1f0062 100644 --- a/mcs/errors/dlls/second/CS1701-lib.cs +++ b/mcs/errors/dlls/second/CS1701-lib.cs @@ -1,5 +1,4 @@ [assembly:System.Reflection.AssemblyVersionAttribute ("2.0.1.0")] -[assembly:System.Reflection.AssemblyKeyFile("key.snk")] public class B { diff --git a/mcs/errors/dlls/second/CS1702-lib.cs b/mcs/errors/dlls/second/CS1702-lib.cs index 56196aee3a9..5e3513f1207 100644 --- a/mcs/errors/dlls/second/CS1702-lib.cs +++ b/mcs/errors/dlls/second/CS1702-lib.cs @@ -1,5 +1,4 @@ [assembly:System.Reflection.AssemblyVersionAttribute ("1.0.1.0")] -[assembly:System.Reflection.AssemblyKeyFile("key.snk")] public class B { diff --git a/mcs/errors/dlls/second/CS1703-lib.cs b/mcs/errors/dlls/second/CS1703-lib.cs index 474172b3865..62675d98e9f 100644 --- a/mcs/errors/dlls/second/CS1703-lib.cs +++ b/mcs/errors/dlls/second/CS1703-lib.cs @@ -1,5 +1,4 @@ [assembly:System.Reflection.AssemblyVersionAttribute ("1.2.1.0")] -[assembly:System.Reflection.AssemblyKeyFile("key.snk")] public class A { diff --git a/mcs/errors/dlls/second/CS1705-lib.cs b/mcs/errors/dlls/second/CS1705-lib.cs index ea06316444a..8bba78517de 100644 --- a/mcs/errors/dlls/second/CS1705-lib.cs +++ b/mcs/errors/dlls/second/CS1705-lib.cs @@ -1,5 +1,4 @@ [assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")] -[assembly:System.Reflection.AssemblyKeyFile("key.snk")] public class B { diff --git a/mcs/mcs/Makefile b/mcs/mcs/Makefile index 9c4b6a172a0..dbd71a3d581 100644 --- a/mcs/mcs/Makefile +++ b/mcs/mcs/Makefile @@ -6,26 +6,15 @@ thisdir := mcs SUBDIRS := include ../build/rules.make +PROGRAM = mcs.exe + EXTRA_DISTFILES = \ mcs.csproj \ mcs.sln \ cs-parser.jay \ mcs.exe.sources -ifeq (basic, $(PROFILE)) -LOCAL_MCS_FLAGS += -r:System.dll -r:System.Core.dll -r:System.Xml.dll -debug - -PROGRAM = basic.exe -sourcefile = mcs.exe.sources -else -LIB_REFS = System System.Core System.Xml - -PROGRAM_USE_INTERMEDIATE_FILE = true -PROGRAM = mcs.exe -the_libdir = $(topdir)/class/lib/build/ -LOCAL_MCS_FLAGS += -debug -endif - +LIB_REFS = System.Core System.Xml System LOCAL_MCS_FLAGS += -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE ifndef NO_THREAD_ABORT @@ -38,10 +27,6 @@ endif LOCAL_MCS_FLAGS += $(REFERENCE_SOURCES_FLAGS) -PROGRAM_INSTALL_DIR = $(mono_libdir)/mono/4.5 - -PROGRAM_COMPILE = $(BOOT_COMPILE) - BUILT_SOURCES = cs-parser.cs CLEAN_FILES += y.output diff --git a/mcs/nunit24/ClientUtilities/util/Makefile b/mcs/nunit24/ClientUtilities/util/Makefile index 7a291b287a7..ae488f6c4f3 100644 --- a/mcs/nunit24/ClientUtilities/util/Makefile +++ b/mcs/nunit24/ClientUtilities/util/Makefile @@ -5,7 +5,7 @@ include ../../../build/rules.make LIBRARY = nunit.util.dll LIBRARY_SNK = $(topdir)/nunit24/nunit.snk -LOCAL_MCS_FLAGS= /resource:Transform.resources,NUnit.Util.Transform.resources /d:MONO /d:StronglyNamedAssembly /publicsign -warn:1 +LOCAL_MCS_FLAGS= /resource:Transform.resources,NUnit.Util.Transform.resources /d:MONO /d:StronglyNamedAssembly /publicsign -warn:1 /keyfile:../../nunit.snk LIB_REFS = nunit.core nunit.core.interfaces System System.Xml System.Runtime.Remoting NO_TEST = yo diff --git a/mcs/nunit24/ConsoleRunner/nunit-console/Makefile b/mcs/nunit24/ConsoleRunner/nunit-console/Makefile index b72165aba26..7dc5339e987 100644 --- a/mcs/nunit24/ConsoleRunner/nunit-console/Makefile +++ b/mcs/nunit24/ConsoleRunner/nunit-console/Makefile @@ -5,7 +5,7 @@ include ../../../build/rules.make LIBRARY = nunit-console-runner.dll LIBRARY_SNK = $(topdir)/nunit24/nunit.snk -LOCAL_MCS_FLAGS= /d:MONO /d:StronglyNamedAssembly /publicsign +LOCAL_MCS_FLAGS= /d:MONO /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk LIB_REFS = nunit.core nunit.core.interfaces nunit.util System System.Xml NO_TEST = yo diff --git a/mcs/nunit24/NUnitCore/core/Makefile b/mcs/nunit24/NUnitCore/core/Makefile index 9c7c76c56f3..13001289031 100644 --- a/mcs/nunit24/NUnitCore/core/Makefile +++ b/mcs/nunit24/NUnitCore/core/Makefile @@ -5,7 +5,7 @@ include ../../../build/rules.make LIBRARY = nunit.core.dll LIBRARY_SNK = $(topdir)/nunit24/nunit.snk -LOCAL_MCS_FLAGS = /d:StronglyNamedAssembly -warn:1 /publicsign +LOCAL_MCS_FLAGS = /d:StronglyNamedAssembly -warn:1 /publicsign /keyfile:../../nunit.snk LIB_REFS = nunit.framework nunit.core.interfaces System NO_TEST = yo diff --git a/mcs/nunit24/NUnitCore/interfaces/Makefile b/mcs/nunit24/NUnitCore/interfaces/Makefile index 592ce5bc160..858f051d3cd 100644 --- a/mcs/nunit24/NUnitCore/interfaces/Makefile +++ b/mcs/nunit24/NUnitCore/interfaces/Makefile @@ -5,7 +5,7 @@ include ../../../build/rules.make LIBRARY = nunit.core.interfaces.dll LIBRARY_SNK = $(topdir)/nunit24/nunit.snk -LOCAL_MCS_FLAGS= /d:StronglyNamedAssembly /publicsign +LOCAL_MCS_FLAGS= /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk LIB_REFS = nunit.framework System NO_TEST = yo diff --git a/mcs/nunit24/NUnitExtensions/core/Makefile b/mcs/nunit24/NUnitExtensions/core/Makefile index 9e3ba945a67..11b5e6ba331 100644 --- a/mcs/nunit24/NUnitExtensions/core/Makefile +++ b/mcs/nunit24/NUnitExtensions/core/Makefile @@ -5,7 +5,7 @@ include ../../../build/rules.make LIBRARY = nunit.core.extensions.dll LIBRARY_SNK = $(topdir)/nunit24/nunit.snk -LIB_MCS_FLAGS = /d:StronglyNamedAssembly /publicsign +LIB_MCS_FLAGS = /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk LIB_REFS = nunit.core nunit.core.interfaces System.Xml System NO_TEST = yo diff --git a/mcs/nunit24/NUnitExtensions/framework/Makefile b/mcs/nunit24/NUnitExtensions/framework/Makefile index 7cd03514e37..16d57681ccd 100644 --- a/mcs/nunit24/NUnitExtensions/framework/Makefile +++ b/mcs/nunit24/NUnitExtensions/framework/Makefile @@ -5,7 +5,7 @@ include ../../../build/rules.make LIBRARY = nunit.framework.extensions.dll LIBRARY_SNK = $(topdir)/nunit24/nunit.snk -LIB_MCS_FLAGS = /d:StronglyNamedAssembly /publicsign +LIB_MCS_FLAGS = /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk LIB_REFS = System.Xml System NO_TEST = yo diff --git a/mcs/nunit24/NUnitFramework/framework/Makefile b/mcs/nunit24/NUnitFramework/framework/Makefile index a8c8440f465..e302eb23657 100644 --- a/mcs/nunit24/NUnitFramework/framework/Makefile +++ b/mcs/nunit24/NUnitFramework/framework/Makefile @@ -6,7 +6,7 @@ LIBRARY = NUnit.Framework.dll LIBRARY_NAME = nunit.framework.dll LIBRARY_SNK = $(topdir)/nunit24/nunit.snk -LIB_MCS_FLAGS = /d:StronglyNamedAssembly -warn:1 /publicsign +LIB_MCS_FLAGS = /d:StronglyNamedAssembly -warn:1 /publicsign /keyfile:../../nunit.snk LIB_REFS = System.Xml System NO_TEST = yo diff --git a/mcs/nunit24/NUnitMocks/mocks/Makefile b/mcs/nunit24/NUnitMocks/mocks/Makefile index 0c6ab3ca272..d411647b4e5 100644 --- a/mcs/nunit24/NUnitMocks/mocks/Makefile +++ b/mcs/nunit24/NUnitMocks/mocks/Makefile @@ -5,7 +5,7 @@ include ../../../build/rules.make LIBRARY = nunit.mocks.dll LIBRARY_SNK = $(topdir)/nunit24/nunit.snk -LOCAL_MCS_FLAGS= /d:StronglyNamedAssembly /publicsign +LOCAL_MCS_FLAGS= /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk LIB_REFS = nunit.framework System NO_TEST = yo diff --git a/mcs/packages/.gitignore b/mcs/packages/.gitignore new file mode 100644 index 00000000000..5264e07d2df --- /dev/null +++ b/mcs/packages/.gitignore @@ -0,0 +1 @@ +Microsoft.Net.Compilers* \ No newline at end of file diff --git a/mcs/packages/Makefile b/mcs/packages/Makefile new file mode 100644 index 00000000000..5b3cc08cacf --- /dev/null +++ b/mcs/packages/Makefile @@ -0,0 +1,25 @@ +thisdir = packages +include ../build/rules.make + +ROSLYN_CSC_DIR = $(dir $(CSC_LOCATION)) + +ifeq ($(PROFILE), $(DEFAULT_PROFILE)) + +TARGET_DIR = $(DESTDIR)$(mono_libdir)/mono/$(FRAMEWORK_VERSION) + +install-local: + $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/csc.exe $(TARGET_DIR) + $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/csc.rsp $(TARGET_DIR) + $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/csc.exe.config $(TARGET_DIR) + $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/Microsoft.CodeAnalysis.CSharp.dll $(TARGET_DIR) + $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/Microsoft.CodeAnalysis.dll $(TARGET_DIR) + $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/System.Collections.Immutable.dll $(TARGET_DIR) + $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/System.Reflection.Metadata.dll $(TARGET_DIR) + + $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/csc.exe$(PLATFORM_AOT_SUFFIX) $(TARGET_DIR) + $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/System.Reflection.Metadata.dll$(PLATFORM_AOT_SUFFIX) $(TARGET_DIR) +endif + + +dist-local: dist-default + diff --git a/mcs/tests/Makefile b/mcs/tests/Makefile index a149e2eb536..1fabf7cf8cc 100644 --- a/mcs/tests/Makefile +++ b/mcs/tests/Makefile @@ -54,7 +54,7 @@ DEFINES = -compiler-options:"-d:NET_4_0;NET_4_5 -debug" endif LOCAL_RUNTIME_FLAGS = --verify-all -COMPILER = $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)/mcs.exe +COMPILER = $(topdir)/class/lib/$(PROFILE)/mcs.exe TESTER = MONO_RUNTIME='$(RUNTIME)' $(TEST_RUNTIME) $(RUNTIME_FLAGS) $(LOCAL_RUNTIME_FLAGS) $(topdir)/class/lib/$(PROFILE)/compiler-tester.exe TEST_ILS := $(wildcard *-lib.il) @@ -95,11 +95,13 @@ csproj-local: %-lib.dll: %-lib.il $(ILASM) /dll /out:$@ $< +CSCOMPILE_UTIL = $(CSCOMPILE) -noconfig -nologo -r:$(topdir)/class/lib/$(PROFILE)/mscorlib.dll + setup: - $(CSCOMPILE) -t:library dlls/test-679-2/test-679-lib-2.cs - $(CSCOMPILE) -t:library dlls/test-679-1/test-679-lib.cs -r:dlls/test-679-2/test-679-lib-2.dll - $(CSCOMPILE) -t:library dlls/test-939-common.cs -keyfile:key.snk -publicsign - $(CSCOMPILE) -t:library dlls/test-939-1/test-939-lib.cs -keyfile:key.snk -publicsign - $(CSCOMPILE) -t:library dlls/test-939-1/test-939-ref.cs -r:dlls/test-939-1/test-939-lib.dll -keyfile:key.snk -publicsign - $(CSCOMPILE) -t:library dlls/test-939-2/test-939-lib.cs -r:dlls/test-939-common.dll -keyfile:key.snk -publicsign + $(CSCOMPILE_UTIL) -t:library dlls/test-679-2/test-679-lib-2.cs -out:dlls/test-679-2/test-679-lib-2.dll + $(CSCOMPILE_UTIL) -t:library dlls/test-679-1/test-679-lib.cs -r:dlls/test-679-2/test-679-lib-2.dll -out:dlls/test-679-1/test-679-lib.dll + $(CSCOMPILE_UTIL) -t:library dlls/test-939-common.cs -keyfile:key.snk -publicsign -out:dlls/test-939-common.dll + $(CSCOMPILE_UTIL) -t:library dlls/test-939-1/test-939-lib.cs -keyfile:key.snk -publicsign -out:dlls/test-939-1/test-939-lib.dll + $(CSCOMPILE_UTIL) -t:library dlls/test-939-1/test-939-ref.cs -r:dlls/test-939-1/test-939-lib.dll -keyfile:key.snk -publicsign -out:dlls/test-939-1/test-939-ref.dll + $(CSCOMPILE_UTIL) -t:library dlls/test-939-2/test-939-lib.cs -r:dlls/test-939-common.dll -keyfile:key.snk -publicsign -out:dlls/test-939-2/test-939-lib.dll $(ILASM) -dll dlls/test-883.il diff --git a/mcs/tools/cil-stringreplacer/cil-stringreplacer.cs b/mcs/tools/cil-stringreplacer/cil-stringreplacer.cs index a7803c0ea13..20dc653526a 100644 --- a/mcs/tools/cil-stringreplacer/cil-stringreplacer.cs +++ b/mcs/tools/cil-stringreplacer/cil-stringreplacer.cs @@ -100,14 +100,29 @@ public class Program static void RewriteAssembly (string assemblyLocation, Dictionary resourcesStrings, CmdOptions options) { - var readerParameters = new ReaderParameters { ReadSymbols = true, ReadWrite = true }; + Stream pdbSymbols = null; + + var debugSymbols = Path.ChangeExtension (assemblyLocation, "pdb"); + if (File.Exists (debugSymbols)) + pdbSymbols = File.Open (debugSymbols, FileMode.Open, FileAccess.ReadWrite); + + var readerParameters = new ReaderParameters { + ReadWrite = true, + }; + + if (pdbSymbols != null) { + readerParameters.ReadSymbols = true; + readerParameters.SymbolReaderProvider = new PortablePdbReaderProvider (); + readerParameters.SymbolStream = pdbSymbols; + } + using (var assembly = AssemblyDefinition.ReadAssembly (assemblyLocation, readerParameters)) { foreach (var module in assembly.Modules) { foreach (var type in module.GetTypes ()) { foreach (var method in type.Methods) { if (!method.HasBody) continue; - + foreach (var instr in method.Body.Instructions) { if (instr.OpCode != OpCodes.Ldstr) continue; @@ -125,9 +140,19 @@ public class Program } } - var writerParameters = new WriterParameters { WriteSymbols = true }; + var writerParameters = new WriterParameters (); + + if (pdbSymbols != null) { + writerParameters.WriteSymbols = true; + writerParameters.SymbolStream = pdbSymbols; + writerParameters.SymbolWriterProvider = new PortablePdbWriterProvider (); + pdbSymbols.Seek (0, SeekOrigin.Begin); + } + assembly.Write (writerParameters); } + + pdbSymbols?.Dispose (); } static bool LoadGetResourceStrings (Dictionary resourcesStrings, CmdOptions options) diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml index 330a3895e2d..6ace9bba70a 100644 --- a/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml +++ b/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -15,6 +18,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml index 3620aa8d0aa..8d2d0a25252 100644 --- a/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml +++ b/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -15,6 +18,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -25,6 +31,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml index 02836fe9713..01c1203dbc7 100644 --- a/mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml +++ b/mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -15,6 +18,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml index 734bd3da1a4..e934f2391b9 100644 --- a/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml +++ b/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -15,6 +18,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -25,6 +31,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -35,6 +44,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml index b8345d02166..bb608441b24 100644 --- a/mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml +++ b/mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -15,6 +18,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -25,6 +31,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -35,6 +44,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected-enumerations/index.xml b/mcs/tools/mdoc/Test/en.expected-enumerations/index.xml index d46426cc737..0d96961ff0f 100644 --- a/mcs/tools/mdoc/Test/en.expected-enumerations/index.xml +++ b/mcs/tools/mdoc/Test/en.expected-enumerations/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected-internal-interface/index.xml b/mcs/tools/mdoc/Test/en.expected-internal-interface/index.xml index 5b49f3c71d2..64281836158 100644 --- a/mcs/tools/mdoc/Test/en.expected-internal-interface/index.xml +++ b/mcs/tools/mdoc/Test/en.expected-internal-interface/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/Extensions.xml b/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/Extensions.xml index 8f7e6658f1f..c773879f2d2 100644 --- a/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/Extensions.xml +++ b/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/Extensions.xml @@ -103,6 +103,11 @@ Method + + + System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1)) + + System.Collections.Generic.IEnumerable<T> diff --git a/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/MyList`1+Helper`2.xml b/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/MyList`1+Helper`2.xml index 41b89f34f99..8dc4b7a4efb 100644 --- a/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/MyList`1+Helper`2.xml +++ b/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/MyList`1+Helper`2.xml @@ -5,7 +5,13 @@ DocTest - + + + + Mono.DocTest.Doc("Type Parameter!") + + + diff --git a/mcs/tools/mdoc/Test/en.expected.delete/index.xml b/mcs/tools/mdoc/Test/en.expected.delete/index.xml index 3bf5e2463bb..dff3909ac39 100644 --- a/mcs/tools/mdoc/Test/en.expected.delete/index.xml +++ b/mcs/tools/mdoc/Test/en.expected.delete/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected.importecmadoc/index.xml b/mcs/tools/mdoc/Test/en.expected.importecmadoc/index.xml index 13ad1ddd850..089b973a19a 100644 --- a/mcs/tools/mdoc/Test/en.expected.importecmadoc/index.xml +++ b/mcs/tools/mdoc/Test/en.expected.importecmadoc/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml index a6e2b67d056..f2381d66601 100644 --- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml +++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml @@ -89,8 +89,8 @@ To be added. - extension method. - + extension method. + To be added. M:Mono.DocTest.Generic.Extensions.ToDouble @@ -122,7 +122,7 @@ To be added. extension method. - + To be added. M:Mono.DocTest.Generic.Extensions.ToDouble @@ -136,6 +136,11 @@ 0.0.0.0 + + + System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1)) + + System.Collections.Generic.IEnumerable<T> diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml index bd629020743..84396c3da6f 100644 --- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml +++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml @@ -6,7 +6,13 @@ 0.0.0.0 - + + + + Mono.DocTest.Doc("Type Parameter!") + + + diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Color.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Color.xml index 690987bc0a8..32e81043131 100644 --- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Color.xml +++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Color.xml @@ -12,8 +12,8 @@ Possible colors . - Namespace Test: [] - + Namespace Test: [] + diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml index 01a74c3c6c0..71d0ed8a7e8 100644 --- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml +++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml @@ -18,8 +18,8 @@ To be added. - cref=T:Mono.DocTest.DocAttribute. - + cref=T:Mono.DocTest.DocAttribute. + diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml index b465e35003e..b663e801aa1 100644 --- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml +++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml @@ -436,7 +436,9 @@ To be added.To be added.To be added. - To be added. + + M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object) + To be added; from: @@ -458,7 +460,9 @@ To be added.To be added.To be added. - To be added. + + M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.Object}) + @@ -478,7 +482,9 @@ To be added. To be added. To be added. - To be added. + + M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object}) + @@ -498,7 +504,9 @@ To be added. To be added. To be added. - To be added. + + M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}}) + diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/System/Environment.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/System/Environment.xml index b1dd1908c0a..6c991f5db8e 100644 --- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/System/Environment.xml +++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/System/Environment.xml @@ -31,8 +31,8 @@ - A instance. - + A instance. + To be added. To be added. diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/index.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/index.xml index 1ce623fffb2..054ff209c8d 100644 --- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/index.xml +++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) @@ -130,8 +133,8 @@ To be added. - extension method. - + extension method. + @@ -162,7 +165,7 @@ To be added. extension method. - + diff --git a/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/Extensions.xml b/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/Extensions.xml index 90164c97b0f..3a838fb2cdc 100644 --- a/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/Extensions.xml +++ b/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/Extensions.xml @@ -125,6 +125,11 @@ 0.0.0.02.0.0.0 + + + System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1)) + + System.Collections.Generic.IEnumerable<T> diff --git a/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml b/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml index dcb2a375223..a8c683f778b 100644 --- a/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml +++ b/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml @@ -7,7 +7,13 @@ 2.0.0.0 - + + + + Mono.DocTest.Doc("Type Parameter!") + + + diff --git a/mcs/tools/mdoc/Test/en.expected.since/index.xml b/mcs/tools/mdoc/Test/en.expected.since/index.xml index 45914b3273c..31a91e00d70 100644 --- a/mcs/tools/mdoc/Test/en.expected.since/index.xml +++ b/mcs/tools/mdoc/Test/en.expected.since/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/Extensions.xml b/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/Extensions.xml index 7766049ec28..397b3d42720 100644 --- a/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/Extensions.xml +++ b/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/Extensions.xml @@ -119,6 +119,11 @@ 0.0.0.0 + + + System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1)) + + System.Collections.Generic.IEnumerable<T> diff --git a/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml b/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml index 2f389db3b87..c86584a7a44 100644 --- a/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml +++ b/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml @@ -6,7 +6,13 @@ 0.0.0.0 - + + + + Mono.DocTest.Doc("Type Parameter!") + + + diff --git a/mcs/tools/mdoc/Test/en.expected/index.xml b/mcs/tools/mdoc/Test/en.expected/index.xml index 3bf5e2463bb..dff3909ac39 100644 --- a/mcs/tools/mdoc/Test/en.expected/index.xml +++ b/mcs/tools/mdoc/Test/en.expected/index.xml @@ -5,6 +5,9 @@ System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints) + + System.Runtime.CompilerServices.CompilationRelaxations(8) + System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true) diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/Extensions.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/Extensions.html index 11b496fe630..4c1aa60ff7f 100644 --- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/Extensions.html +++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/Extensions.html @@ -255,8 +255,8 @@ ToDouble (thisIEnumerable<int>) : IEnumerable<double>
IEnumerable<int> - extension method. -
+ extension method. + + + + extension method. + + extension method. + +
@@ -266,7 +266,7 @@ ToDouble<T> (this T) : double
Mono.DocTest.Generic.IFoo`1 extension method. -
@@ -375,8 +375,8 @@
IEnumerable<int> - extension method. -
+ extension method. +

Syntax

public static IEnumerable<double> ToDouble (this IEnumerable<int> list)

Parameters

@@ -407,7 +407,7 @@
Mono.DocTest.Generic.IFoo`1 extension method. -
+

Syntax

public static double ToDouble<T> (this T val)
where T : Mono.DocTest.Generic.IFoo<T>

Type Parameters

@@ -450,7 +450,7 @@
System.Object extension method

Syntax

-
public static IEnumerable<T> ToEnumerable<T> (this T self)
+
[System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1))]
public static IEnumerable<T> ToEnumerable<T> (this T self)

Type Parameters

diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/IFoo`1.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/IFoo`1.html index a6515dded5b..8ecbbc33708 100644 --- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/IFoo`1.html +++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/IFoo`1.html @@ -269,7 +269,7 @@ ToDouble<T> (this T) : double
Mono.DocTest.Generic.IFoo`1 extension method. -
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html index 730b8239d42..0c63c3143d9 100644 --- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html +++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html @@ -211,7 +211,7 @@

Syntax

-
public class MyList<T, U, V>
+
public class MyList<[Mono.DocTest.Doc("Type Parameter!")] T, U, V>

Type Parameters

diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1.html index 8ec7050a350..a7b880582b2 100644 --- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1.html +++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1.html @@ -430,8 +430,8 @@ ToDouble (this IEnumerable<int>) : IEnumerable<double>
IEnumerable<int> - extension method. -
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`2.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`2.html index 453b4d5d935..3cb50923fdd 100644 --- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`2.html +++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`2.html @@ -594,8 +594,8 @@ ToDouble (this IEnumerable<int>) : IEnumerable<double>
IEnumerable<int> - extension method. -
@@ -605,7 +605,7 @@ ToDouble<T> (this T) : double
Mono.DocTest.Generic.IFoo`1 extension method. -
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Color.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Color.html index 5d9b1497690..f0653684ae4 100644 --- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Color.html +++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Color.html @@ -215,8 +215,8 @@

Remarks

Mono.DocTest.Color. - Namespace Test: [Mono.DocTest] -
+ Namespace Test: [Mono.DocTest] +

Members

diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/DocAttribute.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/DocAttribute.html index 1c14d779287..b4d091ec407 100644 --- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/DocAttribute.html +++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/DocAttribute.html @@ -217,8 +217,8 @@

Remarks

- cref=T:Mono.DocTest.DocAttribute. -

+ cref=T:Mono.DocTest.DocAttribute. +

diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html index f35ef5ff5f3..adcabd8a828 100644 --- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html +++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html @@ -1236,7 +1236,7 @@

Remarks

- Documentation for this section has not yet been entered. + M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object)

Requirements

@@ -1267,7 +1267,7 @@

Remarks

- Documentation for this section has not yet been entered. + M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.Object})

Requirements

@@ -1298,7 +1298,7 @@

Remarks

- Documentation for this section has not yet been entered. + M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object})

Requirements

@@ -1329,7 +1329,7 @@

Remarks

- Documentation for this section has not yet been entered. + M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}})

Requirements

diff --git a/mcs/tools/mdoc/Test/html.expected/System/Environment.html b/mcs/tools/mdoc/Test/html.expected/System/Environment.html index b69e603915b..55e31fff76e 100644 --- a/mcs/tools/mdoc/Test/html.expected/System/Environment.html +++ b/mcs/tools/mdoc/Test/html.expected/System/Environment.html @@ -262,8 +262,8 @@ folder
- A Environment.SpecialFolder instance. -
+ A Environment.SpecialFolder instance. +

Returns

diff --git a/mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml b/mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml index d40b962b4d0..5743e52613d 100644 --- a/mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml +++ b/mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml @@ -17,8 +17,8 @@ Possible colors . - Namespace Test: [] - + Namespace Test: [] + To be added. @@ -50,8 +50,8 @@ To be added. - cref=T:Mono.DocTest.DocAttribute. - + cref=T:Mono.DocTest.DocAttribute. +
red
@@ -473,7 +473,9 @@ class Example { To be added.To be added.To be added. - To be added. + + M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object) + To be added; from: @@ -481,19 +483,25 @@ class Example { To be added.To be added.To be added. - To be added. + + M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.Object}) + To be added. To be added. To be added. - To be added. + + M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object}) + To be added. To be added. To be added. - To be added. + + M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}}) + To be added. @@ -1000,8 +1008,8 @@ class Example { To be added. - extension method. - + extension method. + To be added. M:Mono.DocTest.Generic.Extensions.ToDouble @@ -1012,7 +1020,7 @@ class Example { To be added. extension method. - + To be added. M:Mono.DocTest.Generic.Extensions.ToDouble @@ -1547,7 +1555,7 @@ class Example { To be added. To be added. - + Ako bko cko @@ -1735,8 +1743,8 @@ class Example { - A instance. - + A instance. + To be added. To be added. diff --git a/mcs/tools/mono-service/Makefile b/mcs/tools/mono-service/Makefile index 84286e7f95f..cdca30fb3fb 100644 --- a/mcs/tools/mono-service/Makefile +++ b/mcs/tools/mono-service/Makefile @@ -8,7 +8,7 @@ PROGRAM_SNK = ../../class/mono.snk include ../../build/executable.make -LOCAL_MCS_FLAGS = -unsafe -publicsign +LOCAL_MCS_FLAGS = -unsafe -publicsign -keyfile:../../class/mono.snk LIB_REFS = System.ServiceProcess Mono.Posix System # Copied from library.make diff --git a/mcs/tools/mono-symbolicate/Test/symbolicate.expected b/mcs/tools/mono-symbolicate/Test/symbolicate.expected index b93d05c7a13..63da2bd7c90 100644 --- a/mcs/tools/mono-symbolicate/Test/symbolicate.expected +++ b/mcs/tools/mono-symbolicate/Test/symbolicate.expected @@ -4,130 +4,130 @@ Stacktrace: at StackTraceDumper.Main () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:9 System.Exception: Stacktrace with 2 frames - at StackTraceDumper.
m__0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16 + at StackTraceDumper+<>c.
b__0_0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: - at StackTraceDumper.
m__0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16 + at StackTraceDumper+<>c.
b__0_0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stacktrace with 3 frames at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:83 - at StackTraceDumper.
m__1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18 + at StackTraceDumper+<>c.
b__0_1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:83 - at StackTraceDumper.
m__1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18 + at StackTraceDumper+<>c.
b__0_1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stacktrace with 4 frames at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:83 at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:81 - at StackTraceDumper.
m__2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20 + at StackTraceDumper+<>c.
b__0_2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:83 at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:81 - at StackTraceDumper.
m__2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20 + at StackTraceDumper+<>c.
b__0_2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack frame with method overload using ref parameter at StackTraceDumper.ThrowException (System.String& message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:75 - at StackTraceDumper.
m__3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24 + at StackTraceDumper+<>c.
b__0_3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper.ThrowException (System.String& message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:75 - at StackTraceDumper.
m__3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24 + at StackTraceDumper+<>c.
b__0_3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack frame with method overload using out parameter at StackTraceDumper.ThrowException (System.String message, System.Int32& o) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:88 - at StackTraceDumper.
m__4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29 + at StackTraceDumper+<>c.
b__0_4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper.ThrowException (System.String message, System.Int32& o) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:88 - at StackTraceDumper.
m__4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29 + at StackTraceDumper+<>c.
b__0_4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack frame with 1 generic parameter at StackTraceDumper.ThrowExceptionGeneric[T] (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:93 - at StackTraceDumper.
m__5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32 + at StackTraceDumper+<>c.
b__0_5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper.ThrowExceptionGeneric[T] (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:93 - at StackTraceDumper.
m__5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32 + at StackTraceDumper+<>c.
b__0_5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack frame with 2 generic parameters at StackTraceDumper.ThrowExceptionGeneric[T1,T2] (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:113 - at StackTraceDumper.
m__6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34 + at StackTraceDumper+<>c.
b__0_6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper.ThrowExceptionGeneric[T1,T2] (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:113 - at StackTraceDumper.
m__6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34 + at StackTraceDumper+<>c.
b__0_6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack frame with generic method overload at StackTraceDumper.ThrowExceptionGeneric[T] (T a1) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:98 - at StackTraceDumper.
m__7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36 + at StackTraceDumper+<>c.
b__0_7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper.ThrowExceptionGeneric[T] (T a1) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:98 - at StackTraceDumper.
m__7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36 + at StackTraceDumper+<>c.
b__0_7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack trace with inner class at StackTraceDumper+InnerClass.ThrowException (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:119 - at StackTraceDumper.
m__8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38 + at StackTraceDumper+<>c.
b__0_8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper+InnerClass.ThrowException (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:119 - at StackTraceDumper.
m__8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38 + at StackTraceDumper+<>c.
b__0_8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack trace with inner generic class at StackTraceDumper+InnerGenericClass`1[T].ThrowException (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:126 - at StackTraceDumper.
m__9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40 + at StackTraceDumper+<>c.
b__0_9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper+InnerGenericClass`1[T].ThrowException (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:126 - at StackTraceDumper.
m__9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40 + at StackTraceDumper+<>c.
b__0_9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Generic to string:string System.Exception: Stack trace with inner generic class and method generic parameter at StackTraceDumper+InnerGenericClass`1[T].ThrowException (System.String message, T arg) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:132 - at StackTraceDumper.
m__A () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42 + at StackTraceDumper+<>c.
b__0_10 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper+InnerGenericClass`1[T].ThrowException (System.String message, T arg) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:132 - at StackTraceDumper.
m__A () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42 + at StackTraceDumper+<>c.
b__0_10 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack trace with inner generic class and generic overload at StackTraceDumper+InnerGenericClass`1[T].ThrowException[T1] (System.String message, T1 arg) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:137 - at StackTraceDumper.
m__B () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44 + at StackTraceDumper+<>c.
b__0_11 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper+InnerGenericClass`1[T].ThrowException[T1] (System.String message, T1 arg) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:137 - at StackTraceDumper.
m__B () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44 + at StackTraceDumper+<>c.
b__0_11 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack trace with 2 inner generic class and generic overload at StackTraceDumper+InnerGenericClass`1+InnerInnerGenericClass`1[T,T2].ThrowException (T message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:143 - at StackTraceDumper.
m__C () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46 + at StackTraceDumper+<>c.
b__0_12 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper+InnerGenericClass`1+InnerInnerGenericClass`1[T,T2].ThrowException (T message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:143 - at StackTraceDumper.
m__C () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46 + at StackTraceDumper+<>c.
b__0_12 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.Exception: Stack trace with 2 inner generic class and generic overload at StackTraceDumper+InnerGenericClass`1+InnerInnerGenericClass`1[T,T2].ThrowException (T2 message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:148 - at StackTraceDumper.
m__D () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48 + at StackTraceDumper+<>c.
b__0_13 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at StackTraceDumper+InnerGenericClass`1+InnerInnerGenericClass`1[T,T2].ThrowException (T2 message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:148 - at StackTraceDumper.
m__D () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48 + at StackTraceDumper+<>c.
b__0_13 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 System.ArgumentNullException: Value cannot be null. @@ -135,11 +135,11 @@ Parameter name: key at System.ThrowHelper.ThrowArgumentNullException (System.ExceptionArgument argument) in mcs/class/referencesource/mscorlib/system/throwhelper.cs:80 at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) in mcs/class/referencesource/mscorlib/system/collections/generic/dictionary.cs:299 at System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) in mcs/class/referencesource/mscorlib/system/collections/generic/dictionary.cs:228 - at StackTraceDumper.
m__E () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52 + at StackTraceDumper+<>c.
b__0_14 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 Stacktrace: at System.ThrowHelper.ThrowArgumentNullException (System.ExceptionArgument argument) in mcs/class/referencesource/mscorlib/system/throwhelper.cs:80 at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) in mcs/class/referencesource/mscorlib/system/collections/generic/dictionary.cs:299 at System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) in mcs/class/referencesource/mscorlib/system/collections/generic/dictionary.cs:228 - at StackTraceDumper.
m__E () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52 + at StackTraceDumper+<>c.
b__0_14 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52 at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59 diff --git a/mcs/tools/nunit-lite/NUnitLite/Makefile b/mcs/tools/nunit-lite/NUnitLite/Makefile index 1d448c2915a..d7dede3c72c 100644 --- a/mcs/tools/nunit-lite/NUnitLite/Makefile +++ b/mcs/tools/nunit-lite/NUnitLite/Makefile @@ -5,7 +5,7 @@ include ../../../build/rules.make LIBRARY = nunitlite.dll LIBRARY_SNK = ../../../../external/nunit-lite/NUnitLite-1.0.0/src/framework/nunit.snk -LOCAL_MCS_FLAGS= /target:library /define:"__MOBILE__;TRACE;DEBUG;NET_4_0;CLR_4_0,NUNITLITE" /warn:4 /keyfile:$(LIBRARY_SNK) +LOCAL_MCS_FLAGS= /target:library /define:"__MOBILE__;TRACE;DEBUG;NET_4_0;CLR_4_0,NUNITLITE" /warn:4 /keyfile:$(LIBRARY_SNK) /publicsign LIB_REFS = System System.Xml System.Core NO_TEST = yes diff --git a/mono/metadata/icall.c b/mono/metadata/icall.c index 831ea1dd40d..eeac6aca779 100644 --- a/mono/metadata/icall.c +++ b/mono/metadata/icall.c @@ -998,6 +998,10 @@ ves_icall_System_Runtime_CompilerServices_RuntimeHelpers_SufficientExecutionStac // .net seems to check that at least 50% of stack is available min_size = thread->stack_size / 2; + // TODO: It's not always set + if (!min_size) + return TRUE; + current = (guint8 *)&stack_addr; if (current > stack_addr) { if ((current - stack_addr) < min_size) diff --git a/mono/mini/Makefile.am.in b/mono/mini/Makefile.am.in index 8ca5c5c750e..675e73ad650 100755 --- a/mono/mini/Makefile.am.in +++ b/mono/mini/Makefile.am.in @@ -48,7 +48,6 @@ RUNTIME_EXECUTABLE = $(if $(BOEHM),$(top_builddir)/mono/mini/mono-boehm,$(top_bu MINI_RUNTIME = MONO_PATH=$(CLASS) $(RUNTIME_EXECUTABLE) RUNTIME_AOTCHECK = MONO_PATH="$(CLASS)$(PLATFORM_PATH_SEPARATOR)." $(RUNTIME_EXECUTABLE) -CSC = $(mcs_topdir)/class/lib/build/mcs.exe MCS = CSC_SDK_PATH_DISABLED= $(MINI_RUNTIME) $(CSC) -unsafe -nowarn:0162 -nologo -noconfig -r:$(CLASS)/mscorlib.dll -r:$(CLASS)/System.dll -r:$(CLASS)/System.Core.dll ILASM = $(MINI_RUNTIME) $(CLASS)/ilasm.exe diff --git a/mono/profiler/Makefile.am b/mono/profiler/Makefile.am index 4f6c4acb204..73b11497d16 100644 --- a/mono/profiler/Makefile.am +++ b/mono/profiler/Makefile.am @@ -100,7 +100,7 @@ CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE) with_mono_path = MONO_PATH=$(CLASS) RUNTIME = $(with_mono_path) $(top_builddir)/runtime/mono-wrapper -MCS = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -unsafe -nowarn:0162 -nowarn:0168 -nowarn:0219 -debug +MCS = $(RUNTIME) $(CSC) -lib:$(CLASS) -unsafe -nologo -noconfig -nowarn:0162 -nowarn:0168 -nowarn:0219 -debug:portable %.exe: %.cs $(MCS) -out:$@ $< diff --git a/mono/tests/Makefile.am b/mono/tests/Makefile.am index 4c0ff0e63a5..b79bd1b2f15 100644 --- a/mono/tests/Makefile.am +++ b/mono/tests/Makefile.am @@ -54,7 +54,7 @@ if INSTALL_AOT_HYBRID PROFILE_MCS_FLAGS = -d:MOBILE,MOBILE_LEGACY endif -MCS_NO_LIB = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -unsafe -debug \ +MCS_NO_LIB = $(RUNTIME) $(CSC) -unsafe -debug:portable \ -noconfig -nologo \ -nowarn:0162 -nowarn:0168 -nowarn:0219 -nowarn:0414 -nowarn:0618 \ -nowarn:0169 -nowarn:1690 -nowarn:0649 -nowarn:0612 -nowarn:3021 \ diff --git a/mono/tests/assemblyresolve/Makefile.am b/mono/tests/assemblyresolve/Makefile.am index b7c7f472959..1d3942ffa4f 100644 --- a/mono/tests/assemblyresolve/Makefile.am +++ b/mono/tests/assemblyresolve/Makefile.am @@ -3,7 +3,7 @@ CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE) with_mono_path = MONO_PATH=$(CLASS) RUNTIME = $(top_builddir)/runtime/mono-wrapper --debug -MCS = $(with_mono_path) $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -debug:full -target:library +MCS = $(with_mono_path) $(RUNTIME) $(CSC) -noconfig -nologo -debug:portable -target:library if INSTALL_AOT_ONLY prereq: aot diff --git a/runtime/Makefile.am b/runtime/Makefile.am index 1fe237bc345..7af06ebeee5 100644 --- a/runtime/Makefile.am +++ b/runtime/Makefile.am @@ -92,7 +92,7 @@ clean-local: endif BUILD_MCS -TEST_SUPPORT_FILES = $(tmpinst)/bin/mono $(tmpinst)/bin/ilasm $(tmpinst)/bin/mcs $(tmpinst)/bin/al +TEST_SUPPORT_FILES = $(tmpinst)/bin/mono $(tmpinst)/bin/ilasm $(tmpinst)/bin/csc $(tmpinst)/bin/al mcs-do-test-profiles: cd $(mcs_topdir) && $(MAKE) NO_DIR_CHECK=1 PROFILES='$(test_profiles)' test-profiles @@ -181,10 +181,10 @@ $(tmpinst)/bin/mono: mono-wrapper etc/mono/config $(mkinstalldirs) $(tmpinst)/bin cp mono-wrapper $@ -$(tmpinst)/bin/mcs: $(tmpinst)/bin/mono Makefile +$(tmpinst)/bin/csc: $(tmpinst)/bin/mono Makefile echo '#! /bin/sh' > $@ ; \ r=`pwd`; m=`cd $(mcs_topdir) && pwd`; \ - echo 'exec "'"$$r/$(tmpinst)/bin/mono"'" "'"$$m/class/lib/build/mcs.exe"'" "$$@"' >> $@ ; \ + echo 'exec "'"$$r/$(tmpinst)/bin/mono"'" "'"$(CSC)"'" "$$@"' >> $@ ; \ chmod +x $@ $(tmpinst)/bin/ilasm: $(tmpinst)/bin/mono Makefile diff --git a/scripts/.gitignore b/scripts/.gitignore index a22d2a91ff4..6b79de7dc52 100644 --- a/scripts/.gitignore +++ b/scripts/.gitignore @@ -86,7 +86,7 @@ /sgen /sgen1 /signcode -/smcs +/csc /sn /soapsuds /sqlmetal diff --git a/scripts/Makefile.am b/scripts/Makefile.am index 39595455dad..6c2a338bc4a 100644 --- a/scripts/Makefile.am +++ b/scripts/Makefile.am @@ -36,6 +36,7 @@ bin_SCRIPTS = \ mono-test-install \ peverify \ mcs \ + csc \ mono-package-runtime \ mono-heapviz \ $(scripts_mono_configuration_crypto) @@ -157,6 +158,7 @@ EXTRA_DIST = \ xbuild.in \ update_submodules \ mcs.in \ + csc.in \ dmcs.in \ mono-package-runtime \ mono-test-install \ @@ -203,6 +205,10 @@ mcs: mcs.in Makefile $(REWRITE_COMMON) $(srcdir)/mcs.in > $@.tmp mv -f $@.tmp $@ +csc: csc.in Makefile + $(REWRITE_COMMON) $(srcdir)/csc.in > $@.tmp + mv -f $@.tmp $@ + dmcs: dmcs.in Makefile $(REWRITE_COMMON) $(srcdir)/dmcs.in > $@.tmp mv -f $@.tmp $@ diff --git a/scripts/csc.in b/scripts/csc.in new file mode 100644 index 00000000000..c32be364ea2 --- /dev/null +++ b/scripts/csc.in @@ -0,0 +1,2 @@ +#!/bin/sh +exec @bindir@/mono $MONO_OPTIONS @mono_instdir@/4.5/csc.exe "$@"