<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Aug 6, 2021 at 3:54 AM Rob Landley <<a href="mailto:rob@landley.net">rob@landley.net</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">Huh, forgot to click "send" on this window...<br>
<br>
On 8/3/21 6:53 PM, scsijon wrote:<br>
>> And, um... huh. Well, clang-rt is part of llvm-project so...<br>
>><br>
>> <a href="https://android.googlesource.com/toolchain/llvm-project/+/refs/heads/master" rel="noreferrer" target="_blank">https://android.googlesource.com/toolchain/llvm-project/+/refs/heads/master</a><br>
>><br>
>> Last updated in 2019?<br>
>><br>
>> Am I looking in the wrong place?<br>
> <br>
> do you mean<br>
> <br>
> <a href="https://compiler-rt.llvm.org/" rel="noreferrer" target="_blank">https://compiler-rt.llvm.org/</a><br>
<br>
No, I read that when I was looking for how to build JUST the builtins dir<br>
without the 8 gazillion electric fence variants.<br>
<br>
> and<br>
> <br>
> <a href="https://github.com/llvm/llvm-project/releases/tag/llvmorg-12.0.1" rel="noreferrer" target="_blank">https://github.com/llvm/llvm-project/releases/tag/llvmorg-12.0.1</a><br>
<br>
<a href="https://lists.nongnu.org/archive/html/qemu-devel/2021-07/msg04610.html" rel="noreferrer" target="_blank">https://lists.nongnu.org/archive/html/qemu-devel/2021-07/msg04610.html</a><br>
<br>
> ?<br>
> or do you need to look under<br>
> <br>
> <a href="https://android.googlesource.com/toolchain/llvm-project/+/refs/heads/main" rel="noreferrer" target="_blank">https://android.googlesource.com/toolchain/llvm-project/+/refs/heads/main</a><br>
> <br>
> and not master<br>
<br>
Cool, thanks. Hmmm...<br>
<br>
<a href="https://android.googlesource.com/platform/external/toybox/+/refs/heads/main" rel="noreferrer" target="_blank">https://android.googlesource.com/platform/external/toybox/+/refs/heads/main</a><br>
<br>
Not a consistent policy, it seems?<br></blockquote><div><br></div><div><a href="https://github.com/github/renaming">https://github.com/github/renaming</a><br></div><div><br></div><div>or more specifically for llvm: <a href="https://foundation.llvm.org/docs/branch-rename/">https://foundation.llvm.org/docs/branch-rename/</a></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">
So where's the build invocation? What is the command line that invokes cmake<br>
and/or ninja on this package when building the NDK? That directory has<br>
CONTRIBUTING, a README, and some dotfiles. The compiler-rt directory has a<br>
CMakeLists.txt but that's like having a Makefile or an autoconf "configure"<br>
file: it doesn't say how a given build invokes it. (I was spoiled by<br>
<a href="https://android.googlesource.com/platform/external/toybox/+/refs/heads/master/Android.bp" rel="noreferrer" target="_blank">https://android.googlesource.com/platform/external/toybox/+/refs/heads/master/Android.bp</a><br>
and assumed most AOSP packages work something like that: apparently not.)<br></blockquote><div><br></div><div>that "platform/" versus "toolchain/" is meaningful. if there's a "platform/" it's the kind of build you're used to. if there's a "toolchain/", it's a prebuilt input to the build. (toybox is weird because it's used in both. there's a shell script in prebuilts/build-tools/ to take a new prebuilt to bridge that gap.)</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">
I just read<br>
<a href="https://src.fedoraproject.org/fork/tstellar/rpms/clang/c/dea2413c6822cc7aa7a08ebe73d10abf8216259f?branch=clang-minimal" rel="noreferrer" target="_blank">https://src.fedoraproject.org/fork/tstellar/rpms/clang/c/dea2413c6822cc7aa7a08ebe73d10abf8216259f?branch=clang-minimal</a><br>
to try to figure out how Trilby is building llvm, and the trick in that<br>
particular link is -DCLANG_LINK_CLANG_DYLIB:BOOL=OFF helps get a properly<br>
host-static toolchain. (Toolchain builds are hard to google for because there's<br>
input/output confusion. I want the compiler binary itself to be statically<br>
linked so I can tar it up and extract it on an arbitrary system and have it<br>
work, but to have shared libraries in its lib dir so it can create dynamic<br>
linked binaries if necessary. The NDK has sort of managed that, but if you<br>
google for quite a number of variants of "ndk build" it says how to build things<br>
WITH the NDK, not how the NDK itself got created...)<br></blockquote><div><br></div><div><a href="https://android.googlesource.com/platform/ndk/+/master/docs/Building.md">https://android.googlesource.com/platform/ndk/+/master/docs/Building.md</a><br></div><div><br></div><div>(similar instructions for LLVM itself [which is a *prebuilt* input to the NDK build] are currently only internal afaik, but we are working on tidying up the internal docs and making them public.)</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">
I got linked TO that because the kernel guys were recently arguing about how<br>
llvm/clang is built/packaged terribly by various distros:<br>
<br>
<a href="http://lkml.iu.edu/hypermail/linux/kernel/2105.0/00127.html" rel="noreferrer" target="_blank">http://lkml.iu.edu/hypermail/linux/kernel/2105.0/00127.html</a></blockquote><div><br></div><div>yeah, there's a plan there too, but not much to show for it yet: <a href="https://android.googlesource.com/platform/external/musl/+/refs/heads/master">https://android.googlesource.com/platform/external/musl/+/refs/heads/master</a></div><div><br></div><div>(for anyone reading this long after, and seeing actual content there, note that at the time of posting the link led to a page saying "Initial empty repository" :-) )</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"><br>
I'm sure Debian has an llvm build invocation somewhere too, but given that even<br>
AFTER I updated Devuan from Arsenic to Beryllium the repo still only has llvm 7<br>
(released in 2018) and the one I built for hexagon is a git snapshot of pre-13,<br>
that's not high on my todo list...<br>
<br>
Rob<br>
_______________________________________________<br>
Toybox mailing list<br>
<a href="mailto:Toybox@lists.landley.net" target="_blank">Toybox@lists.landley.net</a><br>
<a href="http://lists.landley.net/listinfo.cgi/toybox-landley.net" rel="noreferrer" target="_blank">http://lists.landley.net/listinfo.cgi/toybox-landley.net</a><br>
</blockquote></div></div>