Make the synchronized wrappers static if the original method was static. Fixes shared-generic-synchronized.2.exe.
Remove the constraint checks from get_shared_inst (), it is no longer needed since we replace gsharedvt arguments with a vtype now. Fixes #12727.
Update after newline update
Bump mono to 3.1.1
Place the method_addresses symbol into the .text segment on mt, not rodata, since it is actually code.
[runtime] Don't return success on invalid parameters, raise an exception instead.
Update member access completion after e40775d0dcc0512c444b995e631880412177ed21
Update failing test
Equality structural comparer needs to do recursive comparisons. Fixes #13110
Update test name
Use the NI_MAXHOST constant to initialize the size of the hostname buffer.

The NI_MAXHOST constant should be used when creating the hostname buffer to avoid potential buffer overflows.
Print diagnostic messages for platform detection

Print some diagnostic messages when running 'make' on this file, so it's clear when a platform has not been explicitly specified and we're going to compile with a platform value which has been automatically selected.
Merge pull request #693 from jack-pappas/patch-3

Print diagnostic messages for platform detection
MIPS: Set USE_MUL to 0 by default (for now).

Setting it to 1 breaks on Loongson CPUs which are the most common
desktop MIPS CPUs supported by e.g. Debian.

This change can be reverted when more investigation is done to find
out why exactly this breaks.

Thanks to Jo Shields (@directhex) for lots of testing and debugging
and spotting this define that turned out to be the culprit.
Merge pull request #692 from jack-pappas/patch-2

Use the NI_MAXHOST constant to initialize the size of the hostname buffer.
Don't include pthread.h when it's not needed.

Fixes mingw-w64 build.

This commit is licensed under MIT/X11.
Fix the spec file; we don't create any .mdb's for the PCL Facades anymore.
[runtime]On install, symlink mono to the right binary.
[build] Add dep tracking between Makefile.am.in and Makefile.am when the extension module is disabled.
Change the way we do soft float to a fallback mechanism.

MONO_ARCH_SOFT_FLOAT previously meant that a back end was using
soft float unconditionally. It's now MONO_ARCH_SOFT_FLOAT_FALLBACK
and actually indicates whether the back end has a soft float
fallback compiled in - not necessarily that it's used.

A new port function has been added:

    gboolean mono_arch_is_soft_float (void) MONO_INTERNAL;

This function is what actually tells Mini whether the back end is
going to use soft float. If MONO_ARCH_SOFT_FLOAT_FALLBACK is not
defined, it must return FALSE. Otherwise, it should return TRUE or
FALSE depending on whether the back end determines that the hardware
supports floating point. Once mono_arch_init () has been called,
the value returned from this function must be constant for the rest
of the VM's lifetime.

For example, on ARM, we now try to detect VFP via /proc/self/auxv
or /proc/cpuinfo and, if found, return FALSE from the function. This
only applies to Linux and Android as iOS always has VFP.

It's important to note that if the runtime is built with the 'softfp'
or 'hard' ABIs, the soft float fallback is not compiled in, as the
runtime is assumed to only be executed on VFP-capable systems.

Finally, the ARM feature detection code has been moved from the
mono_arch_cpu_optimizations () function to mono_arch_init () so that
FPU detection/initialization is done in one place.