[PATCH] D80677: [lld-macho] Handle framework search path, alongside library search path

Greg McGary via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 15 23:25:41 PDT 2020


gkm marked 5 inline comments as done.
gkm added inline comments.


================
Comment at: lld/MachO/Driver.cpp:103
+static void checkSearchDirs(StringRef option, std::vector<StringRef> &paths) {
+  for (const auto &path : paths) {
+    if (!fs::exists(path))
----------------
gkm wrote:
> gkm wrote:
> > int3 wrote:
> > > not a big deal, but how about erasing the invalid paths from the list?
> > > 
> > > though if we aren't doing that we should take `paths` by const ref at least
> > You are quite correct that it is bone-headed to keep excreta in the search path.
> You are quite correct that it is bone-headed to keep excreta in the search path. ld64 removes bogus paths.
> 
> Problem: in a Linux-hosted environment, the Appleish `/Library/Frameworks` and `/System/Library/Frameworks` do not exist. There is no benefit to keeping them, but issuing warnings about them seems rude. Moreover, there will be host-OS-specific deviation in expected test results. How do we handle that? There must be other corners of the toolchain that encounter these problems. I will dig.
I predicate Frameworks paths on host OS = Darwin: `Triple(sys::getProcessTriple()).isOSDarwin()`.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D80677/new/

https://reviews.llvm.org/D80677





More information about the llvm-commits mailing list