On Wed, 14 May 2025 10:28:39 -0700 (PDT)
Jeremy Drake wrote:
> On Wed, 14 May 2025, Takashi Yano via Cygwin-apps wrote:
> 
> > I pushed updated llvm, clang, libcxx, libcxxabi, compiler-rt,
> > libunwind, and lld packages.
> 
> For the lld push, you did not include the added patch file.  But I suspect
> that I would be against it.  The issue is that lld does not have the
> ability to differentiate a Cygwin vs MinGW target, so any prior attempts I
> have made to try to adapt defaults to Cygwin has broken MinGW.
> Specifically, a prior patch in MSYS2 to add win32api lib resulted in
> libraries from that path getting mixed into cross MinGW links.  It seems
> like that should be able to be dealt with somehow (it must have some way
> to know not to put /usr/lib in the search path in such cases) so maybe you
> figured out a better solution in that patch.

The patch missig from repository I have added is as attached.
I thought we should add /usr/lib/w32ap at the same place
where /usr/lib is added. But I could not find.

-- 
Takashi Yano <takashi.y...@nifty.ne.jp>
--- origsrc/lld-20.1.4.src/MinGW/Driver.cpp     2025-05-06 14:46:22.679452100 
+0900
+++ src/lld-20.1.4.src/MinGW/Driver.cpp 2025-05-14 15:40:37.968617300 +0900
@@ -556,6 +556,8 @@ bool link(ArrayRef<const char *> argsArr
     add("-exclude-symbols:" + StringRef(a->getValue()));
 
   std::vector<StringRef> searchPaths;
+  if (Triple(sys::getProcessTriple()).isWindowsCygwinEnvironment())
+    searchPaths.push_back("/usr/lib/w32api");
   for (auto *a : args.filtered(OPT_L)) {
     searchPaths.push_back(a->getValue());
     add("-libpath:" + StringRef(a->getValue()));

Reply via email to