This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGac835ecb5fea: [Fuchsia] Set /winsysroot in Windows runtimes linker flags (authored by haowei).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143960/new/ https://reviews.llvm.org/D143960 Files: clang/cmake/caches/Fuchsia-stage2.cmake Index: clang/cmake/caches/Fuchsia-stage2.cmake =================================================================== --- clang/cmake/caches/Fuchsia-stage2.cmake +++ clang/cmake/caches/Fuchsia-stage2.cmake @@ -88,14 +88,13 @@ ${LLVM_WINSYSROOT}) string(REPLACE ";" " " WINDOWS_COMPILER_FLAGS "${WINDOWS_COMPILER_FLAGS}") set(WINDOWS_LINK_FLAGS - /vfsoverlay:${LLVM_VFSOVERLAY} - # TODO: On Windows, linker is invoked by cmake instead of the clang-cl driver, - # so we have to manually set the libpath. We use clang-cl driver if we can - # and remove these libpath flags. - -libpath:"${LLVM_WINSYSROOT}/VC/Tools/MSVC/14.34.31933/lib/x64" - -libpath:"${LLVM_WINSYSROOT}/VC/Tools/MSVC/14.34.31933/atlmfc/lib/x64" - -libpath:"${LLVM_WINSYSROOT}/Windows Kits/10/Lib/10.0.19041.0/ucrt/x64" - -libpath:"${LLVM_WINSYSROOT}/Windows Kits/10/Lib/10.0.19041.0/um/x64") + # TODO: lld-link has a bug that it cannot infer the machine type + # correctly when /winsysroot is set while Windows libraries search paths + # are not explicitly defined. + # Explicitly set the machine type for now. + /machine:X64 + /vfsoverlay:${LLVM_VFSOVERLAY} + /winsysroot:${LLVM_WINSYSROOT}) string(REPLACE ";" " " WINDOWS_LINK_FLAGS "${WINDOWS_LINK_FLAGS}") endif()
Index: clang/cmake/caches/Fuchsia-stage2.cmake =================================================================== --- clang/cmake/caches/Fuchsia-stage2.cmake +++ clang/cmake/caches/Fuchsia-stage2.cmake @@ -88,14 +88,13 @@ ${LLVM_WINSYSROOT}) string(REPLACE ";" " " WINDOWS_COMPILER_FLAGS "${WINDOWS_COMPILER_FLAGS}") set(WINDOWS_LINK_FLAGS - /vfsoverlay:${LLVM_VFSOVERLAY} - # TODO: On Windows, linker is invoked by cmake instead of the clang-cl driver, - # so we have to manually set the libpath. We use clang-cl driver if we can - # and remove these libpath flags. - -libpath:"${LLVM_WINSYSROOT}/VC/Tools/MSVC/14.34.31933/lib/x64" - -libpath:"${LLVM_WINSYSROOT}/VC/Tools/MSVC/14.34.31933/atlmfc/lib/x64" - -libpath:"${LLVM_WINSYSROOT}/Windows Kits/10/Lib/10.0.19041.0/ucrt/x64" - -libpath:"${LLVM_WINSYSROOT}/Windows Kits/10/Lib/10.0.19041.0/um/x64") + # TODO: lld-link has a bug that it cannot infer the machine type + # correctly when /winsysroot is set while Windows libraries search paths + # are not explicitly defined. + # Explicitly set the machine type for now. + /machine:X64 + /vfsoverlay:${LLVM_VFSOVERLAY} + /winsysroot:${LLVM_WINSYSROOT}) string(REPLACE ";" " " WINDOWS_LINK_FLAGS "${WINDOWS_LINK_FLAGS}") endif()
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits