[llvm-dev] [RFC] LLVM Directory Structure Changes (was Re: [PATCH] D20992: [CMake] Add LLVM runtimes directory)

Renato Golin via llvm-dev llvm-dev at lists.llvm.org
Thu Jun 9 12:43:00 PDT 2016

On 9 June 2016 at 20:26, Stephen Hines <srhines at google.com> wrote:
> Eh, the build system for Android existed before people were using cmake in
> LLVM (i.e. it was based on the old autotools version for LLVM builds).

Sorry, I meant "ended up using their own build system". Though, that's
also not the same thing, since you guys use your build system for
pretty much anything, right?

It may work for most other Android dependencies, but LLVM has a lot of
internal cross dependency and idiosyncratic build system, making
back-porting very hard if we disagree on how to build things.

> I concluded that because everyone else is mostly cross-compiling
> Android targets incorrectly, that I don't particularly feel compelled to
> conform to a truly clean upstream build for compiler-rt right now.

AFAIK, no one has a good solution, and we definitely don't have a
universal one. But I believe whatever Chris is planning to has a high
potential of being that "one true way" (tm).

I don't like that the sanitizers are in RT in the same way I didn't
like the unwinder was there. The sanitizers cross-depend on Clang,
which the builtins don't have to. Unwind depends on libc++abi, while
neither of the other two do.

But the builtins are weird on their own, and how they pick optimised
versions inside targets directories is the kind of idea that probably
sounded brilliant before implementation, and everyone sighed
afterwards. :)

Even if Android doesn't build LLVM in the upstream way now, knowing
how the plans are progressing will allow you guys to plan for the
future and share concerns, so that both sides know all issues before
agreeing on a long term plan.


More information about the llvm-dev mailing list