This is an archive of the discontinued LLVM Phabricator instance.

[CMake][LLVM] Remove duplicated library mask. Broken clang linking against clangShared
ClosedPublic

Authored by iid_iunknown on Jul 31 2017, 3:32 PM.

Details

Summary

The LLVM${c}Info mask is listed twice in LLVM-Config.cmake. This results in the libraries such as LLVMARMInfo, LLVMAArch4Info, etc appearing twice in extract_symbols.py command line while building clangShared. Extract_symbols.py does not work well in such a case and completely ignores the symbols from the duplicated libraries. Thus, the LLVM(...)Info symbols do not get exported from clangShared and linking clang against it fails with unresolved dependencies.

Seems to be a mere copy-paste mistake.

Diff Detail

Repository
rL LLVM

Event Timeline

iid_iunknown created this revision.Jul 31 2017, 3:32 PM
chapuni accepted this revision.Aug 1 2017, 1:58 AM
chapuni added a subscriber: chapuni.

I think matchers may be sorted alphabetically.

cmake/modules/LLVM-Config.cmake
188

Could we remove it?

This revision is now accepted and ready to land.Aug 1 2017, 1:58 AM
chapuni requested changes to this revision.Aug 1 2017, 2:00 AM

Excuse me, I supposed to cancel "Accept". At first, I looked into it and thought LGTM.

This revision now requires changes to proceed.Aug 1 2017, 2:00 AM

Yes, keeping them sorted is a good idea. I will update the patch.
Thanks!

iid_iunknown edited edge metadata.

Sort the matchers

chapuni accepted this revision.Aug 1 2017, 6:45 PM

Thanks!

This revision is now accepted and ready to land.Aug 1 2017, 6:45 PM

Thanks for the review!

This revision was automatically updated to reflect the committed changes.