<div dir="ltr">Ken,<div> Note that you have to explicitly configure the cmake build to compile the test suite by passing...</div><div><br></div><div><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">-DLIBCXX_INCLUDE_TESTS=ON</span></p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures"><br></span></p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">(if you want to test the matching libcxx anyway). Also in fink, we also pass -DLLVM_CONFIG_PATH=%b/../build/last/bin/llvm-config to LIBCXX_CMAKE_OPTIONS placeholder in our shell scripts. If you look at the files at...</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><br></p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><a href="https://sourceforge.net/p/fink/package-submissions/4933/">https://sourceforge.net/p/fink/package-submissions/4933/</a><br></p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><br></p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">you will see the current state of our 3-stage bootstrap with stage2/stage3 file comparison. The general process that we use is...</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><br></p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">1) build stage1 against the system libcxx and clang compiler</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">2) build stage1.5 libcxx with the stage1 compiler</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">3) build the stage2 compiler with the stage1 compiler against the stage1.5 libcxx</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">4) build the stage2.5 libcxx with the stage2 compiler</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">5) build the stage3 compiler against the stage2 compiler with the stage2.5 libcxx</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">6) perform an exhaustive stage2/stage3 object file comparison to detect any non-determinism that has crept in to the compiler.</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><br></p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">While a bit difficult to follow and maintain, I really like this build approach as upstream <a href="http://llvm.org">llvm.org</a> seems to be rather lax about doing proper 3-stage bootstraps with stage2/stage3 file comparison ala FSF gcc.</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><br></p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)">I've run into a couple of instances where upstream trunk had gone non-deterministic and the majority of the llvm developers were completely oblivious to it due to the absence of proper bootstrap testing on the buildbots.</p><p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"> Jack</p></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jun 29, 2017 at 8:33 PM, Ken Cunningham <span dir="ltr"><<a href="mailto:ken.cunningham.webuse@gmail.com" target="_blank">ken.cunningham.webuse@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I suspect only Jeremy or LarryV could answer this, but is it possible to run the llvm / clang compiler test suite from within the macports infrastructure?<br>
<br>
The clang build on macports is very heavily modified with patches and configuration settings - it seems overwhelming to try to duplicate that as a separate download in the usual way this might have been imagined.<br>
<br>
I can turn the llvm & clang tests on with the portfile configure switches easily enough -- and build the port without destrooting or installing it, I guess, to leave everything in place -- but then I suspect I'd be poking around for days trying to figure out how to make this work reliably.<br>
<br>
Given how many years clang / llvm has been part of macports, I suspect this has been sorted out -- has anyone already already been through this exercise?<br>
<br>
I have clang-3.8 running really quite reliably on ppc now - only exceptions are not working, and not many ports use exceptions. But I'd feel much better if I could run the test suite and see where we really are with it.<br>
<span class="HOEnZb"><font color="#888888"><br>
Ken</font></span></blockquote></div><br></div>