forked from pool/mono-core
2157dd9f08
Update to mono 4.4.0.182, new major release v4.4.
Fix possible bug with incorrect $mono_libdir substitution for libMonoPosixHelper.so, see my explanation below:
It seems that recent changes in mono-config.c and config.in (6b5f6dd043
) is not entirely correct for situations when mono installed in different location than native libraries for current system arch.
Fox example, on x86_64 builds, dllmap_start function in mono-config.c, somehow, expands $mono_libdir in config file to /usr/lib. I think, that line 283 in mono-config.c do this job: const char *libdir = mono_assembly_getrootdir ();
So, when native library installed in libdir (/usr/lib64) that differs from mono install dir (/usr/lib), $mono_libdir expands to incorrect location (/usr/lib). I think, this leads us to this error for libMonoPosixHelper library (for example, when starting monodevelop) : http://pastebin.com/gRDkgR4V .
For now, i rollback changes only in config.in files for libMonoPosixHelper.so native library, so search path will be hardcoded in config file as in previous mono 4.2 build. I think we should inbestigate this problem further (test mono-core package from official mono repo?) and maybe fill a bug report to upstream. Or, maybe, something gone wrong only with my build - i'm doing something wrong or do not understand yet... Whatever it is, this temporary patch for config.in file should not brake anything.
OBS-URL: https://build.opensuse.org/request/show/401391
OBS-URL: https://build.opensuse.org/package/show/Mono:Factory/mono-core?expand=0&rev=170
13 lines
816 B
Diff
13 lines
816 B
Diff
diff -uprN mono-4.4.0.old/data/config.in mono-4.4.0.new/data/config.in
|
|
--- mono-4.4.0.old/data/config.in 2016-06-09 18:01:54.000000000 +0300
|
|
+++ mono-4.4.0.new/data/config.in 2016-03-15 14:31:53.000000000 +0300
|
|
@@ -10,7 +10,7 @@
|
|
<dllmap dll="i:odbc32.dll" target="libiodbc.dylib" os="osx"/>
|
|
<dllmap dll="oci" target="libclntsh@libsuffix@" os="!windows"/>
|
|
<dllmap dll="db2cli" target="libdb2_36@libsuffix@" os="!windows"/>
|
|
- <dllmap dll="MonoPosixHelper" target="$mono_libdir/libMonoPosixHelper@libsuffix@" os="!windows" />
|
|
+ <dllmap dll="MonoPosixHelper" target="@prefix@/@reloc_libdir@/libMonoPosixHelper@libsuffix@" os="!windows" />
|
|
<dllmap dll="i:msvcrt" target="@LIBC@" os="!windows"/>
|
|
<dllmap dll="i:msvcrt.dll" target="@LIBC@" os="!windows"/>
|
|
<dllmap dll="sqlite" target="@SQLITE@" os="!windows"/>
|