[mono] Make some API functions public and private (#33736)
authorAleksey Kliger (λgeek) <alklig@microsoft.com>
Tue, 24 Mar 2020 13:29:45 +0000 (09:29 -0400)
committerGitHub <noreply@github.com>
Tue, 24 Mar 2020 13:29:45 +0000 (09:29 -0400)
* [mini] Move mono_install_load_aot_data_hook to a public header

It's already a MONO_API and it is used, for example, by Xamarin.iOS, but it
wasn't in a public header.

Mark it external only.  There are no uses of it inside the runtiem

* [gc] Make mono_gc_init_finalizer_thread a public API

It was already used by Xamarin.iOS but wasn't in a public header and required
compiling with --disable-visibility-hidden in order to dlsym the symbol.

If --with-lazy-gc-thread-creation is used, embedders must call this function to
create the finalizer therad.  Otherwise the function does nothing and the
runtime will create the finalizer thread automatically.

* [utils] Move mono_trace_init to a public header

It was already marked as MONO_API, but it was not in a public header.
It is used by embedders such as Xamarin.iOS

* Update ios sample

* Revert "[utils] Move mono_trace_init to a public header"

This reverts commit a0cc08768e97c7b630ccbf54e48020b06436f874.

* [utils] init mono_logger in all public API functions

Embedders don't need to call mono_trace_init before calling
mono_trace_set_log_handler, mono_trace_set_print_handler or mono_trace_set_printerr_handler

* [jit] Move mono_install_load_aot_data_hook to mono-private-unstable.h

We do not guarantee that this API will be stable

1  2 
src/mono/mono/mini/aot-runtime.c

Simple merge