This is an archive of the discontinued LLVM Phabricator instance.

[libc++] Default to vcruntime when targeting MSVC
ClosedPublic

Authored by smeenai on Apr 20 2017, 4:02 PM.

Details

Summary

libc++abi is never the right option for LIBCXX_TARGETING_MSVC, since it
targets the Itanium ABI, whereas MSVC uses the Microsoft ABI. Make the
default ABI be vcruntime when targeting MSVC even if libc++abi is
present in the tree.

Diff Detail

Repository
rL LLVM

Event Timeline

smeenai created this revision.Apr 20 2017, 4:02 PM
EricWF accepted this revision.Apr 20 2017, 4:30 PM

LGTM.

CMakeLists.txt
119 ↗(On Diff #96042)

Nit: I would rather see this be

elseif ((NOT LIBCXX_STANDALONE_BUILD OR HAVE_LIBCXXABI) AND
        IS_DIRECTORY "${LIBCXX_LIBCXXABI_INCLUDES_INTERNAL}")

That way we can avoid a level of nesting.

This revision is now accepted and ready to land.Apr 20 2017, 4:30 PM
smeenai added inline comments.Apr 20 2017, 4:32 PM
CMakeLists.txt
119 ↗(On Diff #96042)

Sounds good; will change before committing.

smeenai updated this revision to Diff 96055.Apr 20 2017, 4:40 PM

Reduce nesting (address comments)

This revision was automatically updated to reflect the committed changes.