<div dir="ltr">+ Maxim<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">вт, 7 дек. 2021 г. в 00:32, Siva Chandra <<a href="mailto:sivachandra@google.com">sivachandra@google.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">On Mon, Dec 6, 2021 at 1:19 PM Кирилл Забелин via libc-dev <<a href="mailto:libc-dev@lists.llvm.org" target="_blank">libc-dev@lists.llvm.org</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hello, everybody</div><div><br></div><div>I have some questions regarding Bazel rules for llvm targets. <br></div><div>In our project we plan to build llvm-project via Bazel. Currently only rules for clang, llvm, libunwind, lld and mlir are presented in the llvm tree. But we also plan to build libc and libcxx targets via Bazel, the rules for these targets aren't in llvm tree yet. As far as I know they exist only in internal Google monorepo.</div><div><br></div><div><b>So, my questions:</b> <br>* Are there any plans to add Bazel rules for libc and libcxx to the llvm tree under llvm-projects/utils/bazel/llvm-project-overlay?<br></div></div></blockquote><div><br></div><div>As pointed out on the github discussion you linked below, we are currently working on putting them in place.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>* And if they are, then is it an ongoing task or only plans for now? Are there any thoughts on when such rules could become available?<br></div></div></blockquote><div><br></div><div>As <a class="gmail_plusreply" id="gmail-m_2520101907970772398plusReplyChip-0" href="mailto:gchatelet@google.com" target="_blank">+Guillaume Chatelet</a> explained on the github discussion, we are evaluating a few possible directions we can take. We will share them publicly as soon as we can.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div><div>* Or there aren't such plans? Or they wound't be implemented soon and we better start writing these rules by ourselves?<br></div></div></blockquote><div><br></div><div>I would say, wait for a few weeks and we should be able to provide you with concrete plans and procedures to start using libc's Bazel rules. You also see patches for this soon.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>From the short discussion in github here - <a href="https://github.com/llvm/llvm-project/commit/693a95a69416e23a31e46d3d2c81e854688e606e" target="_blank">https://github.com/llvm/llvm-project/commit/693a95a69416e23a31e46d3d2c81e854688e606e</a> (probably not really suitable place to start such discussion, I should had write it here at the beginning) it seems that there are such plans, but it isn't clear for me if somebody working on this now.<br></div><div><br></div><div><strong><a href="https://github.com/sivachandra" target="_blank">@sivachandra</a></strong><strong> </strong>also<strong> </strong>pointed out some design goal for these rules:<br><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><ul dir="auto"><li>We want the individual functions to be mutually exclusive. So, we ideally want a separate target for every libc function.</li><li>What actually is in a user's libc will be left up to the user. That 
is, the users are free to pick-and-choose what they want from LLVM libc 
and get the rest from another libc if they so choose to. Hence, we 
ideally <em>do not</em> want to provide a Bazel target for the final 
libc. The users will list the cc_library targets of the individual 
functions of their interest as deps to the actual libc target.</li></ul></blockquote><b>Another question: </b>Would it be the same for libcxx? Or libcxx is completely different topic to discuss?<br></div></div></blockquote><div><br></div><div>Yes, libcxx is a completely different topic and discussions related to it should be taken up on a libcxx specific forum.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div><div><br></div><div>I would really appreciate any help :)<br></div><div><br></div><div>Best regards,<br></div><div>Kirill Zabelin<br></div><div><strong><a href="https://github.com/sivachandra" target="_blank"><br></a></strong></div></div>
_______________________________________________<br>
libc-dev mailing list<br>
<a href="mailto:libc-dev@lists.llvm.org" target="_blank">libc-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/libc-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/libc-dev</a><br>
</blockquote></div></div>
</blockquote></div>