This is an archive of the discontinued LLVM Phabricator instance.

[libc++] Populated library dependencies recursively for linker script
Needs RevisionPublic

Authored by ismailp on Apr 13 2020, 11:18 AM.

Details

Reviewers
MikeDvorskiy
rodgert
ldionne
Group Reviewers
Restricted Project
Summary

When LIBCXX_ENABLE_PARALLEL_ALGORITHMS is set to ON, libc++ will try
to link with pstl::ParallelSTL. However, pstl::ParallelSTL is an
(alias to an) interface library, and OUTPUT_NAME property isn't white
listed on such targets. pstl::ParallelSTL uses TBB::tbb as an
interface library. Therefore, libc++ must link with whatever TBB::tbb
points at.

Diff Detail

Event Timeline

ismailp created this revision.Apr 13 2020, 11:18 AM
Herald added a project: Restricted Project. · View Herald Transcript
Herald added a reviewer: Restricted Project. · View Herald Transcript
Herald added a subscriber: mgorny. · View Herald Transcript
ldionne requested changes to this revision.Apr 13 2020, 1:25 PM

Would creating a non-interface library for the PSTL solve the problem? I think so, right? If so, this should be preferred as we're going to need some non header-only content anyway when implementing other backends.

This revision now requires changes to proceed.Apr 13 2020, 1:25 PM
ismail added a subscriber: ismail.Apr 27 2020, 9:13 AM