<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><div><br></div>I release the patches <div><a href="http://patch-configure.in/" target="_blank">patch-configure.in</a></div><div>patch-eglib_src_Makefile.am</div><div><span style="font-family: arial, sans-serif;">patch-mcs_class_System_System.IO_KeventWatcher.cs</span></div><div>patch-mono_dis_util.c</div><div>patch-mono_mini_mini-llvm.c</div><div><br></div><div>sent on mono-devel-list mailing list on On Wed, Jan 22, 2014 at 5:31 PM -0500<br><br>under the MIT License.</div><div><br></div><div>I would prefer the BSD License but if it suit the needs of mono developement I concent under MIT License.</div><div><br></div><div><p style="margin-top: 0.4em; margin-bottom: 0.5em; line-height: 1.5em; font-family: sans-serif; font-size: 12px;">Copyright (C) 2014 Bruno Lauze<br></p><p style="margin-top: 0.4em; margin-bottom: 0.5em; line-height: 1.5em; font-family: sans-serif; font-size: 12px;"><br>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:<br><br>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.<br><br>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p></div><div><br><div><hr id="stopSpelling">Date: Wed, 22 Jan 2014 18:17:22 -0500<br>Subject: Re: [Mono-dev] llvm issue<br>From: kumpera@gmail.com<br>To: brunolauze@msn.com<br><br><div dir="ltr">Hi Bruno,<div><br></div><div>Could you release you patches under the MIT license? We can't merge changes to the C runtime unless you do so.</div><div><br></div><div>To do so, just reply to your email on monodev stating that you release them under that license.</div>
<div>I'll ask the mono-llvm maintainer to review them once this is sorted out.</div><div><br></div><div><br></div><div><br></div><div>--</div><div>Rodrigo</div><div><br></div><div><br></div></div><div class="ecxgmail_extra">
<br><br><div class="ecxgmail_quote">On Wed, Jan 22, 2014 at 5:31 PM, Bruno Lauzé <span dir="ltr"><<a href="mailto:brunolauze@msn.com" target="_blank">brunolauze@msn.com</a>></span> wrote:<br><blockquote class="ecxgmail_quote" style="border-left:1px #ccc solid;padding-left:1ex;">



<div><div dir="ltr"><div><br></div><div>Here's the patches that makes everything works...</div><div><br></div><div><a href="http://patch-configure.in" target="_blank">patch-configure.in</a> : this fixes pthread at several places and ensure LLVM_ variables have a sed -e to replace lpthread to pthread </div>
<div><br></div><div>patch-eglib_src_Makefile.am : there's an issue with the NEED_VASPRINTF detection i commented the fix to keep foo.c  ;<span style="font-size:12pt;"> </span><span style="font-size:12pt;">definitively not the place ... </span></div>
<div><br></div><div><font face="arial, sans-serif">patch-mcs_class_System_System.IO_KeventWatcher.cs: old patch for keven from</font><span style="font-family:arial,sans-serif;font-size:13px;"> <a href="mailto:romain.tartiere@gmail.com" target="_blank">romain.tartiere@gmail.com</a> mono maintainer (bsd-sharp)</span></div>
<div><br></div>patch-mono_dis_util.c : there's a problem with <span style="font-size:12pt;">HAVE_ISINF detection ; flushed the pragma here... definitively not the place ... </span><div><br></div><div><br></div><div>patch-mono_mini_mini-llvm.c : The important patch - mini-llvm.c contains gsharevt code and libmono-llvm.so doesn't link it, since it's just returning false, i readded the functions locally... also mono_print_unwind_info is not linked from unwind.o and adding it pull up recursive dependency...</div>
<div><br></div><div>I am including romain tartiere to keep him in the loop if he wants to check those patches in bsd-sharp repo...</div><div><br></div><div>I don't say those patches are ok, to the contrary, i say those a hints at what is to be really fixed for FreeBSD...</div>
<div><br></div><div>there's still code pointing to libc.so instead of @LIBC@</div><div><br></div><div>but this fix the issues:</div><div><br></div><div>ln -s /lib/libc.so.7 /lib/libc.so</div><div><br></div><div>Here's the sys info :</div>
<div><br></div><div><br></div><div>uname -a:</div><div>FreeBSD pcbsd 11.0-CURRENT FreeBSD 11.0-CURRENT #10 r260825M: Thu Jan 16 13:29:53 CST 2014     root@pcbsd:/usr/obj/usr/src/sys/GENERIC  amd64</div><div><br></div><div>
mono --version</div><div><div>Mono JIT compiler version 3.2.7 (master/738f9c3 Wed Jan 22 14:21:09 CST 2014)</div><div>Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. <a href="http://www.mono-project.com" target="_blank">www.mono-project.com</a></div>
<div>        TLS:           __thread</div><div>        SIGSEGV:       altstack</div><div>        Notification:  kqueue</div><div>        Architecture:  amd64</div><div>        Disabled:      none</div><div>        Misc:          softdebug</div>
<div>        LLVM:          yes(3.4-mono-/)</div><div>        GC:            sgen</div></div><div><br></div><div>clang --version</div><div><div>Mono C# compiler version 3.2.7.0</div><div>root@pcbsd:/ # clang --version</div>
<div>FreeBSD clang version 3.4 (tags/RELEASE_34/final 197956) 20140101</div><div>Target: x86_64-unknown-freebsd11.0</div><div>Thread model: posix</div></div><div><br></div><div>llvm-config --version : 3.4-mono-/</div><div>
<br></div><div><br></div><div><br></div><div><br><div><hr>Date: Wed, 22 Jan 2014 13:10:25 -0500<div><div class="h5"><br>Subject: Re: [Mono-dev] llvm issue<br>From: <a href="mailto:kumpera@gmail.com" target="_blank">kumpera@gmail.com</a><br>
To: <a href="mailto:brunolauze@msn.com" target="_blank">brunolauze@msn.com</a><br><br><div dir="ltr">We'd love to merge such change for FreeBSD :)</div><div><br><br><div>On Wed, Jan 22, 2014 at 12:24 PM, Bruno Lauzé <span dir="ltr"><<a href="mailto:brunolauze@msn.com" target="_blank">brunolauze@msn.com</a>></span> wrote:<br>

<blockquote style="border-left:1px #ccc solid;padding-left:1ex;">


<div><div dir="ltr">Good news,  i figured out why it was hanging with llvm.<div><div><br></div><div>It's seems part of the code is missing -pthread and/or using -lpthread</div><div><br></div><div>CFLAGS+= -pthread</div>

<div>CXXFLAGS+= -pthread</div><div>LDFLAGS+= -pthread</div><div><br></div><div>it seems llvm-config output -lpthread and not -pthread</div><div>replace -lpthread to -pthread in  LLVM_CFLAGS</div><div>replace -lpthread<span style="font-size:12pt;"> </span><span style="font-size:12pt;">to -pthread</span><span style="font-size:12pt;"> in  LLVM_LIBS</span></div>

<div><br></div><div>I don't know if someone is willing to see this in mono source or to keep it as external patch?<br><br><div><hr>Date: Tue, 21 Jan 2014 14:16:37 -0500<br>Subject: Re: [Mono-dev] llvm issue<br>From: <a href="mailto:kumpera@gmail.com" target="_blank">kumpera@gmail.com</a><br>

To: <a href="mailto:brunolauze@msn.com" target="_blank">brunolauze@msn.com</a><br>CC: <a href="mailto:mono-devel-list@lists.ximian.com" target="_blank">mono-devel-list@lists.ximian.com</a><div><div><br><br><div dir="ltr">

LLVM was never tests on FreeBSD, you'll have to debug it.</div><div><br><br><div>On Tue, Jan 21, 2014 at 8:35 AM, Bruno Lauzé <span dir="ltr"><<a href="mailto:brunolauze@msn.com" target="_blank">brunolauze@msn.com</a>></span> wrote:<br>


<blockquote style="border-left:1px #ccc solid;padding-left:1ex;">


<div><div dir="ltr"><div style="line-height:21.30000114440918px;color:rgb(68,68,68);font-size:14.666666984558105px;">When I try to compile mono from git with llvm ; llvm installed from <a href="http://github.com/mono/llvm" target="_blank">github.com/mono/llvm</a></div>


<div style="line-height:21.30000114440918px;color:rgb(68,68,68);font-size:14.666666984558105px;">I'm on FreeBSD HEAD.</div><div style="line-height:21.30000114440918px;color:rgb(68,68,68);font-size:14.666666984558105px;">


Everything compiles smoothly but  now the mono-sgen process get stuck in "umtxn" state (kernel lock) on the first usage. (basic-profile-check.exe)</div><div style="line-height:21.30000114440918px;color:rgb(68,68,68);font-size:14.666666984558105px;">


Whenever i remove --enable-llvm everything is fine again. This was working before around october. Any ideas what could have change to cause this?</div><div style="line-height:21.30000114440918px;color:rgb(68,68,68);font-size:14.666666984558105px;">


Any suggestions where to look?</div><div style="line-height:21.30000114440918px;color:rgb(68,68,68);font-size:14.666666984558105px;"><br></div><div style="line-height:21.30000114440918px;color:rgb(68,68,68);font-size:14.666666984558105px;">


Thanks.</div>                                       </div></div>
<br>_______________________________________________<br>
Mono-devel-list mailing list<br>
<a href="mailto:Mono-devel-list@lists.ximian.com" target="_blank">Mono-devel-list@lists.ximian.com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
<br></blockquote></div><br></div></div></div></div></div></div>                                       </div></div>
</blockquote></div><br></div></div></div></div></div>                                     </div></div>
</blockquote></div><br></div></div></div>                                     </div></body>
</html>