This is an archive of the discontinued LLVM Phabricator instance.

[runtimes] Generalize how we reorder projects
ClosedPublic

Authored by ldionne on May 6 2022, 12:45 PM.

Details

Reviewers
phosek
jdoerfert
Group Reviewers
Restricted Project
Restricted Project
Commits
rG06400a0142af: [runtimes] Generalize how we reorder projects
Summary

This way, we could use it for LLVM_ENABLE_PROJECTS too if desired.

Diff Detail

Event Timeline

ldionne created this revision.May 6 2022, 12:45 PM
Herald added a project: Restricted Project. · View Herald TranscriptMay 6 2022, 12:45 PM
Herald added a subscriber: mgorny. · View Herald Transcript
ldionne requested review of this revision.May 6 2022, 12:45 PM
Herald added projects: Restricted Project, Restricted Project. · View Herald Transcript
Herald added a reviewer: Restricted Project. · View Herald Transcript
Herald added a reviewer: Restricted Project. · View Herald Transcript
phosek added inline comments.May 6 2022, 4:53 PM
runtimes/CMakeLists.txt
16

I searched for if(TARGET asan) and we don't seem to use that anywhere so I'm not sure if this comment is still true. It's possible that this is outdated and we no longer need to do this.

compiler-rt can depend on libcxx so I think it would make more sense to put compiler-rt after libcxx, we just need to check that nothing breaks if we do that.

19

I think that libc and libunwind should come before libcxxabi and libcxx since that matches how these libraries are layered.

ldionne updated this revision to Diff 428678.May 11 2022, 8:36 AM
ldionne marked 2 inline comments as done.

Address review comments.

ldionne updated this revision to Diff 429231.May 13 2022, 7:12 AM

Rebase onto main (should fix CI)

ldionne updated this revision to Diff 429330.May 13 2022, 12:46 PM

Rebase onto main for CI.

phosek accepted this revision.May 13 2022, 2:53 PM

LGTM

ldionne accepted this revision as: Restricted Project.May 16 2022, 5:55 AM
This revision is now accepted and ready to land.May 16 2022, 5:55 AM
This revision was landed with ongoing or failed builds.May 16 2022, 5:55 AM
This revision was automatically updated to reflect the committed changes.
cjdb added a subscriber: cjdb.Jun 17 2022, 10:50 AM
cjdb added inline comments.
runtimes/CMakeLists.txt
25

This patch makes it impossible to build llvm-libgcc because LLVM_ALL_RUNTIMES deliberately doesn't include llvm-libgcc. I think this can be fixed by changing the first parameter to "${LLVM_ALL_RUNTIMES};llvm-libgcc", or by adding a variable that genuinely has all the runtimes (in reality, that would be spelt LLVM_ALL_RUNTIMES, and the current LLVM_ALL_RUNTIMES becomes LLVM_USER_ALL_RUNTIMES).