[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
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
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 \
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
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])
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
--- /dev/null
+Subproject commit a1c06d559d6f2cbbaeae86ea87632d409a82ca94
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
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
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
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
$(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
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:
-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
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
$(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
# Platform-specific makefile rules. This one's for linux.
#
-PLATFORM_DEBUG_FLAGS = -debug
PLATFORM_MCS_FLAGS =
PLATFORM_RUNTIME = $(RUNTIME)
PLATFORM_CORLIB = mscorlib.dll
# Platform-specific makefile rules. This one's for linux.
#
-PLATFORM_DEBUG_FLAGS = -debug
PLATFORM_MCS_FLAGS =
PLATFORM_RUNTIME = $(RUNTIME)
PLATFORM_CORLIB = mscorlib.dll
# 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,
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
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
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
#
# 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:
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
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
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
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!
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
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
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!
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
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)
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)
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)
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
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 \
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
MicrosoftAjaxLibrary/License.htm \
test-helpers/NetworkHelpers.cs \
test-helpers/SocketResponder.cs \
- lib/$(monolite_dir)/basic.exe \
$(monolite_files)
.PHONY: all-local $(STD_TARGETS:=-local)
$(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
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
protected override string ToolName {
get {
- return MSBuildUtils.RunningOnWindows ? "mcs.bat" : "mcs.exe";
+ return MSBuildUtils.RunningOnWindows ? "csc.bat" : "csc.exe";
}
}
}
[Test]
+ [Category ("NotWorking")] // https://bugzilla.xamarin.com/show_bug.cgi?id=44974
public void SingleStepping () {
Event e = run_until ("single_stepping");
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);
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
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 =
options.Win32Resource);
if (options.IncludeDebugInformation)
- args.Append("/debug+ /optimize- ");
+ args.Append("/debug:portable /optimize- ");
else
args.Append("/debug- /optimize+ ");
args.Append ("/noconfig ");
- args.Append (" -- ");
+ args.Append ("/nologo ");
+
+ // args.Append (" -- ");
foreach (string source in fileNames)
args.AppendFormat("\"{0}\" ",source);
return args.ToString();
//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);
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))
+++ /dev/null
-#include System.dll.sources
-../corlib/System.Security.Permissions/HostProtectionAttribute.cs
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)
$(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
#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
using System.Runtime.CompilerServices;
[assembly:AssemblyVersion("1.0.0.0")]
-[assembly:AssemblyDelaySign(false)]
+[assembly:AssemblyDelaySign(true)]
[assembly:AssemblyKeyFile("../../class/mono.snk")]
/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
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
using System.Reflection;
using System.Runtime.CompilerServices;
-[assembly: AssemblyKeyFile ("key.snk")]
[assembly: InternalsVisibleTo ("cs0281, PublicKey=0024000004800000940000000602000000240000525341310004000011000000e39d99616f48cf7d6d59f345e485e713e89b8b1265a31b1a393e9894ee3fbddaf382dcaf4083dc31ee7a40a2a25c69c6d019fba9f37ec17fd680e4f6fe3b5305f71ae9e494e3501d92508c2e98ca1e22991a217aa8ce259c9882ffdfff4fbc6fa5e6660a8ff951cd94ed011e5633651b64e8f4522519b6ec84921ee22e4840e8")]
public class FriendClass
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)
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:$@ $<
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:$@ $<
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
[assembly:System.Reflection.AssemblyVersionAttribute ("1.1.1.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class A
{
[assembly:System.Reflection.AssemblyVersionAttribute ("2.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
[assembly:System.Reflection.AssemblyVersionAttribute ("2.0.1.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.1.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
[assembly:System.Reflection.AssemblyVersionAttribute ("1.2.1.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class A
{
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
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
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
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
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
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
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
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
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
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
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
--- /dev/null
+Microsoft.Net.Compilers*
\ No newline at end of file
--- /dev/null
+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
+
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)
%-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
static void RewriteAssembly (string assemblyLocation, Dictionary<string, string> 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;
}
}
- 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<string, string> resourcesStrings, CmdOptions options)
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<MemberSignature Language="C#" Value="public static System.Collections.Generic.IEnumerable<T> ToEnumerable<T> (this T self);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Collections.Generic.IEnumerable`1<!!T> ToEnumerable<T>(!!T self) cil managed" />
<MemberType>Method</MemberType>
+ <Attributes>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1))</AttributeName>
+ </Attribute>
+ </Attributes>
<ReturnValue>
<ReturnType>System.Collections.Generic.IEnumerable<T></ReturnType>
</ReturnValue>
<AssemblyName>DocTest</AssemblyName>
</AssemblyInfo>
<TypeParameters>
- <TypeParameter Name="T" />
+ <TypeParameter Name="T">
+ <Attributes>
+ <Attribute>
+ <AttributeName>Mono.DocTest.Doc("Type Parameter!")</AttributeName>
+ </Attribute>
+ </Attributes>
+ </TypeParameter>
<TypeParameter Name="U" />
<TypeParameter Name="V" />
</TypeParameters>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<param name="list">To be added.</param>
<summary>
<see cref="T:System.Collections.Generic.IEnumerable{System.Int32}" />
- extension method.
- </summary>
+ extension method.
+ </summary>
<returns>To be added.</returns>
<remarks>
<c>M:Mono.DocTest.Generic.Extensions.ToDouble</c>
<param name="val">To be added.</param>
<summary>
<see cref="T:Mono.DocTest.Generic.IFoo`1" /> extension method.
- </summary>
+ </summary>
<returns>To be added.</returns>
<remarks>
<c>M:Mono.DocTest.Generic.Extensions.ToDouble</c>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
+ <Attributes>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1))</AttributeName>
+ </Attribute>
+ </Attributes>
<ReturnValue>
<ReturnType>System.Collections.Generic.IEnumerable<T></ReturnType>
</ReturnValue>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<TypeParameters>
- <TypeParameter Name="T" />
+ <TypeParameter Name="T">
+ <Attributes>
+ <Attribute>
+ <AttributeName>Mono.DocTest.Doc("Type Parameter!")</AttributeName>
+ </Attribute>
+ </Attributes>
+ </TypeParameter>
<TypeParameter Name="U" />
<TypeParameter Name="V" />
</TypeParameters>
<summary>Possible colors</summary>
<remarks>
<see cref="T:Mono.DocTest.Color" />.
- Namespace Test: [<see cref="N:Mono.DocTest" />]
- </remarks>
+ Namespace Test: [<see cref="N:Mono.DocTest" />]
+ </remarks>
</Docs>
<Members>
<Member MemberName="AnotherGreen">
<summary>To be added.</summary>
<remarks>
<para>
- cref=<c>T:Mono.DocTest.DocAttribute</c>.
- </para>
+ cref=<c>T:Mono.DocTest.DocAttribute</c>.
+ </para>
<format type="text/html">
<table width="100%">
<tr>
<param name="b">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object)</c>
+ </remarks>
<exception cref="T:System.ArgumentException">To be added; from:
<see cref="M:System.Linq.Expressions.Error.TypeMustBeDerivedFromSystemDelegate" /></exception>
</Docs>
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.Object})</c>
+ </remarks>
</Docs>
</Member>
<Member MemberName="Dynamic2">
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object})</c>
+ </remarks>
</Docs>
</Member>
<Member MemberName="Dynamic3">
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}})</c>
+ </remarks>
</Docs>
</Member>
<Member MemberName="DynamicE1">
</Parameters>
<Docs>
<param name="folder">
- A <see cref="T:System.Environment+SpecialFolder" /> instance.
- </param>
+ A <see cref="T:System.Environment+SpecialFolder" /> instance.
+ </param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<param name="list">To be added.</param>
<summary>
<see cref="T:System.Collections.Generic.IEnumerable{System.Int32}" />
- extension method.
- </summary>
+ extension method.
+ </summary>
</Docs>
<Link Type="Mono.DocTest.Generic.Extensions" Member="M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32})" />
</Member>
<param name="val">To be added.</param>
<summary>
<see cref="T:Mono.DocTest.Generic.IFoo`1" /> extension method.
- </summary>
+ </summary>
</Docs>
<Link Type="Mono.DocTest.Generic.Extensions" Member="M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0)" />
</Member>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
+ <Attributes>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1))</AttributeName>
+ </Attribute>
+ </Attributes>
<ReturnValue>
<ReturnType>System.Collections.Generic.IEnumerable<T></ReturnType>
</ReturnValue>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<TypeParameters>
- <TypeParameter Name="T" />
+ <TypeParameter Name="T">
+ <Attributes>
+ <Attribute>
+ <AttributeName>Mono.DocTest.Doc("Type Parameter!")</AttributeName>
+ </Attribute>
+ </Attributes>
+ </TypeParameter>
<TypeParameter Name="U" />
<TypeParameter Name="V" />
</TypeParameters>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
+ <Attributes>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1))</AttributeName>
+ </Attribute>
+ </Attributes>
<ReturnValue>
<ReturnType>System.Collections.Generic.IEnumerable<T></ReturnType>
</ReturnValue>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<TypeParameters>
- <TypeParameter Name="T" />
+ <TypeParameter Name="T">
+ <Attributes>
+ <Attribute>
+ <AttributeName>Mono.DocTest.Doc("Type Parameter!")</AttributeName>
+ </Attribute>
+ </Attributes>
+ </TypeParameter>
<TypeParameter Name="U" />
<TypeParameter Name="V" />
</TypeParameters>
<Attribute>
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
<Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
<b>
<a href="#M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32})">ToDouble</a>
</b>(<i>this</i> <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<int></a>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<double></a></nobr><blockquote><a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<int></a>
- extension method.
- </blockquote></td>
+ extension method.
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
<b>
<a href="#M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0)">ToDouble<T></a>
</b>(<i>this</i> <i title="To be added.">T</i>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Double">double</a></nobr><blockquote><a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo`1</a> extension method.
- </blockquote></td>
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
<blockquote id="M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32}):member">
<div class="msummary">
<a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<int></a>
- extension method.
- </div>
+ extension method.
+ </div>
<h2>Syntax</h2>
<div class="Signature">public static <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<double></a> <b>ToDouble</b> (<i>this</i> <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<int></a> list)</div>
<h4 class="Subsection">Parameters</h4>
<blockquote id="M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0):member">
<div class="msummary">
<a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo`1</a> extension method.
- </div>
+ </div>
<h2>Syntax</h2>
<div class="Signature">public static <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Double">double</a> <b>ToDouble<T></b> (<i>this</i> <i title="To be added.">T</i> val)<br /> where T : <a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo<T></a></div>
<h4 class="Subsection">Type Parameters</h4>
<div class="msummary">
<tt>System.Object</tt> extension method</div>
<h2>Syntax</h2>
- <div class="Signature">public static <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<T></a> <b>ToEnumerable<T></b> (<i>this</i> <i title="To be added.">T</i> self)</div>
+ <div class="Signature">[System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/<ToEnumerable>d__0`1))]<br />public static <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<T></a> <b>ToEnumerable<T></b> (<i>this</i> <i title="To be added.">T</i> self)</div>
<h4 class="Subsection">Type Parameters</h4>
<blockquote class="SubsectionBox" id="M:Mono.DocTest.Generic.Extensions.ToEnumerable``1(``0):Type Parameters">
<dl>
<b>
<a href="../Mono.DocTest.Generic/Extensions.html#M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0)">ToDouble<T></a>
</b>(<i>this</i> <a href="javascript:alert("Documentation not found.")">T</a>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Double">double</a></nobr><blockquote><a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo`1</a> extension method.
- </blockquote></td>
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
</p>
<div>
<h2>Syntax</h2>
- <div class="Signature" id="T:Mono.DocTest.Generic.MyList`1.Helper`2:Signature">public class <b>MyList<T, U, V></b></div>
+ <div class="Signature" id="T:Mono.DocTest.Generic.MyList`1.Helper`2:Signature">public class <b>MyList<[Mono.DocTest.Doc("Type Parameter!")] T, U, V></b></div>
</div>
<div class="Remarks" id="T:Mono.DocTest.Generic.MyList`1.Helper`2:Docs">
<h4 class="Subsection">Type Parameters</h4>
<b>
<a href="../Mono.DocTest.Generic/Extensions.html#M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32})">ToDouble</a>
</b>(<i>this</i> <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<int></a>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<double></a></nobr><blockquote><a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<int></a>
- extension method.
- </blockquote></td>
+ extension method.
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
<b>
<a href="../Mono.DocTest.Generic/Extensions.html#M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32})">ToDouble</a>
</b>(<i>this</i> <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<int></a>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<double></a></nobr><blockquote><a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable<int></a>
- extension method.
- </blockquote></td>
+ extension method.
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
<b>
<a href="../Mono.DocTest.Generic/Extensions.html#M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0)">ToDouble<T></a>
</b>(<i>this</i> <i title="To be added.">T</i>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Double">double</a></nobr><blockquote><a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo`1</a> extension method.
- </blockquote></td>
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="T:Mono.DocTest.Color:Docs:Remarks">
<a href="../Mono.DocTest/Color.html">Mono.DocTest.Color</a>.
- Namespace Test: [<a href="../Mono.DocTest/index.html">Mono.DocTest</a>]
- </div>
+ Namespace Test: [<a href="../Mono.DocTest/index.html">Mono.DocTest</a>]
+ </div>
<h2 class="Section">Members</h2>
<div class="SectionBox" id="T:Mono.DocTest.Color:Docs:Members">
<table class="Enumeration">
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="T:Mono.DocTest.DocAttribute:Docs:Remarks">
<p>
- cref=<tt>T:Mono.DocTest.DocAttribute</tt>.
- </p>
+ cref=<tt>T:Mono.DocTest.DocAttribute</tt>.
+ </p>
<table width="100%">
<tr>
<td style="color:red">red</td>
</blockquote>
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object):Remarks">
- <span class="NotEntered">Documentation for this section has not yet been entered.</span>
+ <tt>M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object)</tt>
</div>
<h2 class="Section">Requirements</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object):Version Information">
</blockquote>
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.String}):Remarks">
- <span class="NotEntered">Documentation for this section has not yet been entered.</span>
+ <tt>M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.Object})</tt>
</div>
<h2 class="Section">Requirements</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.String}):Version Information">
</blockquote>
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object}):Remarks">
- <span class="NotEntered">Documentation for this section has not yet been entered.</span>
+ <tt>M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object})</tt>
</div>
<h2 class="Section">Requirements</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object}):Version Information">
</blockquote>
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}}):Remarks">
- <span class="NotEntered">Documentation for this section has not yet been entered.</span>
+ <tt>M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}})</tt>
</div>
<h2 class="Section">Requirements</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}}):Version Information">
<i>folder</i>
</dt>
<dd>
- A <a href="../System/Environment+SpecialFolder.html">Environment.SpecialFolder</a> instance.
- </dd>
+ A <a href="../System/Environment+SpecialFolder.html">Environment.SpecialFolder</a> instance.
+ </dd>
</dl>
</blockquote>
<h4 class="Subsection">Returns</h4>
<summary>Possible colors</summary>
<remarks>
<see cref="T:Mono.DocTest.Color" />.
- Namespace Test: [<see cref="N:Mono.DocTest" />]
- </remarks>
+ Namespace Test: [<see cref="N:Mono.DocTest" />]
+ </remarks>
</member>
<member name="F:Mono.DocTest.Color.AnotherGreen">
<summary>To be added.</summary>
<summary>To be added.</summary>
<remarks>
<para>
- cref=<c>T:Mono.DocTest.DocAttribute</c>.
- </para>
+ cref=<c>T:Mono.DocTest.DocAttribute</c>.
+ </para>
<format type="text/html">
<table width="100%">
<tr>
<param name="b">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object)</c>
+ </remarks>
<exception cref="T:System.ArgumentException">To be added; from:
<see cref="M:System.Linq.Expressions.Error.TypeMustBeDerivedFromSystemDelegate" /></exception>
</member>
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.Object})</c>
+ </remarks>
</member>
<member name="M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object})">
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object})</c>
+ </remarks>
</member>
<member name="M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}})">
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}})</c>
+ </remarks>
</member>
<member name="E:Mono.DocTest.Widget.DynamicE1">
<summary>To be added.</summary>
<param name="list">To be added.</param>
<summary>
<see cref="T:System.Collections.Generic.IEnumerable{System.Int32}" />
- extension method.
- </summary>
+ extension method.
+ </summary>
<returns>To be added.</returns>
<remarks>
<c>M:Mono.DocTest.Generic.Extensions.ToDouble</c>
<param name="val">To be added.</param>
<summary>
<see cref="T:Mono.DocTest.Generic.IFoo`1" /> extension method.
- </summary>
+ </summary>
<returns>To be added.</returns>
<remarks>
<c>M:Mono.DocTest.Generic.Extensions.ToDouble</c>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
- <member name="M:Mono.DocTest.Generic.MyList`1.Helper`2.UseT(```210T`2``21`2```210`2``21`2,```210U`2``21`2```210`2``21`2,```210V`2``21`2```210`2``21`2)">
+ <member name="M:Mono.DocTest.Generic.MyList`1.Helper`2.UseT(``21T`2``21`2,``21U`2``21`2,``21V`2``21`2)">
<param name="a">Ako</param>
<param name="b">bko</param>
<param name="c">cko</param>
</member>
<member name="M:System.Environment.GetFolderPath(System.Environment+SpecialFolder)">
<param name="folder">
- A <see cref="T:System.Environment+SpecialFolder" /> instance.
- </param>
+ A <see cref="T:System.Environment+SpecialFolder" /> instance.
+ </param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>
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
at StackTraceDumper.Main () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:9
System.Exception: Stacktrace with 2 frames
- at StackTraceDumper.<Main>m__0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16
+ at StackTraceDumper+<>c.<Main>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.<Main>m__0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16
+ at StackTraceDumper+<>c.<Main>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.<Main>m__1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18
+ at StackTraceDumper+<>c.<Main>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.<Main>m__1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18
+ at StackTraceDumper+<>c.<Main>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.<Main>m__2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20
+ at StackTraceDumper+<>c.<Main>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.<Main>m__2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20
+ at StackTraceDumper+<>c.<Main>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.<Main>m__3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24
+ at StackTraceDumper+<>c.<Main>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.<Main>m__3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24
+ at StackTraceDumper+<>c.<Main>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.<Main>m__4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29
+ at StackTraceDumper+<>c.<Main>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.<Main>m__4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29
+ at StackTraceDumper+<>c.<Main>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.<Main>m__5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32
+ at StackTraceDumper+<>c.<Main>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.<Main>m__5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32
+ at StackTraceDumper+<>c.<Main>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.<Main>m__6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34
+ at StackTraceDumper+<>c.<Main>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.<Main>m__6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34
+ at StackTraceDumper+<>c.<Main>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.<Main>m__7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36
+ at StackTraceDumper+<>c.<Main>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.<Main>m__7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36
+ at StackTraceDumper+<>c.<Main>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.<Main>m__8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38
+ at StackTraceDumper+<>c.<Main>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.<Main>m__8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38
+ at StackTraceDumper+<>c.<Main>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.<Main>m__9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40
+ at StackTraceDumper+<>c.<Main>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.<Main>m__9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40
+ at StackTraceDumper+<>c.<Main>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.<Main>m__A () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42
+ at StackTraceDumper+<>c.<Main>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.<Main>m__A () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42
+ at StackTraceDumper+<>c.<Main>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.<Main>m__B () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44
+ at StackTraceDumper+<>c.<Main>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.<Main>m__B () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44
+ at StackTraceDumper+<>c.<Main>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.<Main>m__C () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46
+ at StackTraceDumper+<>c.<Main>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.<Main>m__C () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46
+ at StackTraceDumper+<>c.<Main>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.<Main>m__D () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48
+ at StackTraceDumper+<>c.<Main>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.<Main>m__D () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48
+ at StackTraceDumper+<>c.<Main>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.
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.<Main>m__E () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52
+ at StackTraceDumper+<>c.<Main>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.<Main>m__E () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52
+ at StackTraceDumper+<>c.<Main>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
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
// .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)
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
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:$@ $<
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 \
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
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
$(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
/sgen
/sgen1
/signcode
-/smcs
+/csc
/sn
/soapsuds
/sqlmetal
mono-test-install \
peverify \
mcs \
+ csc \
mono-package-runtime \
mono-heapviz \
$(scripts_mono_configuration_crypto)
xbuild.in \
update_submodules \
mcs.in \
+ csc.in \
dmcs.in \
mono-package-runtime \
mono-test-install \
$(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 $@
--- /dev/null
+#!/bin/sh
+exec @bindir@/mono $MONO_OPTIONS @mono_instdir@/4.5/csc.exe "$@"