[PATCH] D105765: Prepare Compiler-RT for GnuInstallDirs, matching libcxx, document all

Alex Lorenz via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Dec 8 14:24:05 PST 2021


arphaman added inline comments.


================
Comment at: compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake:509
     set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
-      ${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
+      ${COMPILER_RT_OUTPUT_LIBRARY_DIR}/macho_embedded)
     set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
----------------
arphaman wrote:
> Ericson2314 wrote:
> > arphaman wrote:
> > > It looks like this change broke the `macho_embedded` layout for Darwin's compiler-rt build, so now the clang driver isn unable to find these libraries.
> > > 
> > > I will commit a change that uses `COMPILER_RT_OUTPUT_DIR` again for the `macho_embedded` libraries.
> > Can you help me understand this better? `COMPILER_RT_OUTPUT_LIBRARY_DIR` should be defined to be the same thing unless target-specific directories are used, Is the problem in the latter case?
> The problem is that Darwin was emitting `macho_embedded` libraries under `usr/lib/clang/<version>/lib/darwin/macho_embedded`, but this change moved them to `usr/lib/clang/<version>/lib/macho_embedded`, so now the clang driver isn't able to find them.
> 
> I think using `COMPILER_RT_OUTPUT_LIBRARY_DIR` is the right thing, but we still want to be compatible with the existing layout unless we change the driver. I think changing the driver might be a better approach though, so I will try that.
Sorry, I meant to say that Darwin was emitting macho_embedded libraries under `usr/lib/clang/<version>/lib/macho_embedded`, but this change moved them to `usr/lib/clang/<version>/lib/darwin/macho_embedded`, so now the clang driver isn't able to find them.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D105765



More information about the cfe-commits mailing list