diff options
Diffstat (limited to 'man/mono-config.5')
-rw-r--r-- | man/mono-config.5 | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/man/mono-config.5 b/man/mono-config.5 new file mode 100644 index 00000000000..1229a104b21 --- /dev/null +++ b/man/mono-config.5 @@ -0,0 +1,89 @@ +.\" +.\" mono-config configuration page. +.\" (C) Ximian, Inc. +.\" Author: +.\" Miguel de Icaza (miguel@gnu.org) +.\" Paolo Molaro (lupus@ximian.com) +.\" +.TH Mono "Mono 1.0" +.SH NAME +mono-config \- Mono runtime file format configuration +.SH DESCRIPTION +The Mono runtime will load configuration data from the +installation prefix /etc/mono/config file, the ~/.mono/config or from +the file pointed by the MONO_CONFIG environment variable. +.PP +For each assembly loaded a config file with the name: +/path/to/the/assembly.exe.config is loaded, too. +.PP +This file controls the behavior of the runtime. +.PP +The file contains an XML-like file with various sections, all of them +contained inside a +.B<configuration> +section (It actually uses GMarkup +to parse the file). +.SH <dllmap> directive +You use the dllmap directive to map shared libraries referenced by +P/Invoke in your assemblies to a different shared library. +.PP +This is typically used to map Windows libraries to Unix library names. +The +.B dllmap +element takes two attributes: +.TP +.I dll +This should be the same string used in the DllImport attribute +.TP +.I target +This should be the name of the library where the function can be found: +this name should be suitable for use with the platform native shared library +loading routines (dlopen etc.), so you may want to check the manpages for that, too. +.SH <dllentry> directive +This directive can be used to map a specific dll/function pair to a different +library and also a different function name. It should appear inside a +.B dllmap +element with only the dll attribute specified. +.PP +The +.B dllentry +element takes 3 attributes: +.TP +.I dll +This is the target library, where the function can be found. +.TP +.I name +This is the name of the fuction as it appears in the metadata: it is the name +of the P/Invoke method. +.TP +.I target +This is the name of the function to lookup instead of the name specified in the +P/Invoke method. +.SH EXAMPLES +The following example maps references to the `cygwin1.dll' shared +library to the `libc.so.6' file. +.nf +<configuration> + <dllmap dll="cygwin1.dll" target="libc.so.6"/> +</configuration> +.fi +.PP +This one maps the following C# method: +.nf + [DllImport ("libc")] + static extern void somefunction (); +.fi +to +.B differentfunction +in +.B libdifferent.so. +.nf +<configuration> + <dllmap dll="libc"> + <dllentry dll="libdifferent.so" name="somefunction" target="differentfunction" /> + </dllmap> +</configuration> +.fi + +.SH SEE ALSO +.BR mono(1), monodis(1), mint(1) |