<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Ken,<div class=""><br class=""></div><div class="">Yes please! I’ve lost count of how many ports I have had patch this fix into.</div><div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Jul 3, 2017, at 12:07 PM, Ken Cunningham <<a href="mailto:ken.cunningham.webuse@gmail.com" class="">ken.cunningham.webuse@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; " class="">So the last 10 or so tickets in trac seem like they are all for basically the same issue - a few missing symbols from libc prior to 10.7.<div class=""><br class=""></div><div class="">It is easy enough, but time consuming, to patch each individual source file that is missing the definition (there might be several, also, so you might have to do it multiple times in different files).</div><div class=""><br class=""></div><div class="">With this library of these missing functions <<a href="https://github.com/kencu/snowleopardfixes" class="">https://github.com/kencu/snowleopardfixes</a>>, all of them from the Apple open source website IIRC, all you need to do is the following in the Portfile:</div><div class=""><br class=""></div><div class=""><pre class=""><font class="Apple-style-span" face="Geneva"><span class="Apple-style-span" style="font-size: 11px;"><span class="Apple-style-span" style="white-space: normal; "><span class="pl-k">if</span></span><span class="Apple-style-span" style="white-space: normal; "> {</span><span class="Apple-style-span" style="white-space: normal; "><span class="pl-smi">${os.platform}</span></span><span class="Apple-style-span" style="white-space: normal; "> eq </span><span class="Apple-style-span" style="white-space: normal; "><span class="pl-s"><span class="pl-pds">"</span>darwin<span class="pl-pds">"</span></span></span><span class="Apple-style-span" style="white-space: normal; "> && </span><span class="Apple-style-span" style="white-space: normal; "><span class="pl-smi">${os.major}</span></span><span class="Apple-style-span" style="white-space: normal; "> < 11} </span><code class=""> {
        depends_lib-append          port:snowleopardfixes
        configure.ldflags-append   -lsnowleopardfixes
}
</code></span></font></pre><div class=""><div class="">It could be better named, perhaps libcfixes, as it applies to 10.4 to 10.6, not just SnowLeopard. </div><div class=""><br class=""></div><div class="">It works for wine, and all the other ports that have had this issue. It takes 10 seconds to do, and no patching.</div></div></div><div class=""><br class=""></div><div class="">Is it time for this? Or shall we continue as we are?</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Best,</div><div class=""><br class=""></div><div class="">Ken</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Addendum 1</div><div class=""><br class=""></div><div class="">I have a header in there as well to provide the function definitions, but that header can cause trouble by bringing in other #defines, and it seems that no port actually needs the header. Perhaps the header idea can be improved by someone with more knowledge of #include_next, etc, or more specific defines.</div><div class=""><div class=""><br class=""></div><div class="">Addendum 2</div><div class=""><br class=""></div><div class="">As we have said before (last year) this library could be automatically linked in by base. That would cause trouble with the ports that have already patched in a def, tho.</div></div><div class=""><br class=""></div></div></div></blockquote></div><br class=""><div class="">
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">Marius</div><div class="">--</div><div class="">Marius Schamschula</div><div class=""><br class=""></div></div><br class="Apple-interchange-newline"><br class="Apple-interchange-newline">

</div>
<br class=""></div></body></html>