<div dir="ltr">Hi Folks,<br><div><br></div><div>An llvm-build chirurgal extraction was launched a few hours ago[1] and after an emergency action</div><div>for the ocaml bindings [2], I'm glad to announce that the transplant looks in good shape!</div><div></div><div><br></div><div>Although we did some intensive testing, given the size of the diff</div><div><br></div><div>```console</div><div>$  git diff 9218ff50^..9218ff50 --shortstat</div><div> 422 files changed, 1691 insertions(+), 7505 deletions(-)<br></div><div>```</div><div>side effects are *not* unexpected, please let me know through [1] if you spot anything unusual</div><div>related to LLVM components.<br></div><div><br></div><div>-- Serge</div><div><br></div><div>[1] <a href="https://reviews.llvm.org/D90848">https://reviews.llvm.org/D90848</a></div><div>[2] <a href="https://reviews.llvm.org/rG95537f450814c378fcb9d446dadcabc1385a5903">https://reviews.llvm.org/rG95537f450814c378fcb9d446dadcabc1385a5903</a></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Oct 9, 2020 at 6:51 PM Serge Guelton <<a href="mailto:sguelton@redhat.com">sguelton@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Folks,<br>
<br>
Although LLVM now relies on cmake for its build configuration, it still calls an<br>
external Python script, namely llvm-build, to manage component dependecies,<br>
activation or deactivation of target componenents and generating description for<br>
llvm-config.<br>
<br>
This system is documented in <a href="http://llvm.org/docs/CommandGuide/llvm-build.html" rel="noreferrer" target="_blank">http://llvm.org/docs/CommandGuide/llvm-build.html</a><br>
and <a href="https://llvm.org/docs/LLVMBuild.html" rel="noreferrer" target="_blank">https://llvm.org/docs/LLVMBuild.html</a>.<br>
<br>
Several features of the system are either undocumented, obsolete or redundant<br>
with the cmake description (sometimes all at once!). For instance the<br>
LLVMBuild.txt under tools/ don't seem relevant anymore. And the<br>
–write-make-fragment for Makefile comptibility no longer makes sense.<br>
<br>
The whole thing also adds a dependency on Python in our core Build system (leaving<br>
aside documentation, that is).<br>
<br>
I have a patch that seems to work for the default configuration, submited here:<br>
<br>
    <a href="https://reviews.llvm.org/D89142" rel="noreferrer" target="_blank">https://reviews.llvm.org/D89142</a><br>
<br>
It's basically a conversion of the Python script to plain cmake, with some<br>
(unused (?)) feature removed.<br>
<br>
It still require proper documentation, some cleaning and official doc update,<br>
but now that the approach is somehow validated technically, I'd like to know if<br>
people interact with llvm-build at all, have expectations etc, other than « LLVM<br>
builds ».<br>
<br>
<br>
</blockquote></div>