<div dir="ltr"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span style="font-size:12.8px">This breaks mingw support on openSUSE :</span></blockquote>My first question is why on SUSE is clang installed in /opt while mingw-w64 in /usr?<div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span style="font-size:12.8px">x86_64-w64-mingw32-gcc is in $PATH, and this used to work fine before<br></span><span style="font-size:12.8px">this commit.</span></blockquote><div>It doesn't look for gcc on linux that is a windows host only thing.<br>It didn't do that before this commit also.<br>SUSE was just lucky because we hard coded /usr as the base path.<br><br>I don't like the idea of hard coding for just a single distro so I think<br>We could optionally do some search for "<span style="font-size:12.8px">x86_64-w64-mingw32-gcc" on non windows hosts </span></div><div><span style="font-size:12.8px">Just like we do for "gcc" on windows hosts.</span></div><div><span style="font-size:12.8px">This should fix SUSE while maintaining the new more reasonable search pattern.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">If Yaron approves this idea I will commit it with a test case for SUSE so we don't break it again :) <br></span>Yaron your thoughts?<br></div><div><br></div><div>Kind Regards</div><div>Martell</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Nov 24, 2015 at 12:02 AM, Ismail Donmez <span dir="ltr"><<a href="mailto:ismail@i10z.com" target="_blank">ismail@i10z.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<span class=""><br>
On Mon, Nov 23, 2015 at 8:59 PM, Martell Malone via cfe-commits<br>
<<a href="mailto:cfe-commits@lists.llvm.org">cfe-commits@lists.llvm.org</a>> wrote:<br>
> Author: martell<br>
> Date: Mon Nov 23 12:59:48 2015<br>
> New Revision: 253898<br>
><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=253898&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=253898&view=rev</a><br>
> Log:<br>
> Driver: fallback to the location of clang if no sysroot,<br>
><br>
> hard coding /usr makes little sense for mingw-w64.<br>
> If we have portable toolchains having /usr breaks that.<br>
> If the clang we use is in /usr/bin or /usr/sbin etc this will<br>
> still detect as though it was hard coded to /usr<br>
><br>
> This makes the most sense going forward for mingw-w64 toolchains<br>
> on both linux and mac<br>
<br>
</span>This breaks mingw support on openSUSE :<br>
<br>
λ cat hello.c<br>
#include <stdlib.h><br>
<br>
int main()<br>
{<br>
    return 0;<br>
}<br>
<br>
λ clang -v -target x86_64-w64-mingw32 hello.c<br>
clang version 3.8.0 (trunk 253903)<br>
Target: x86_64-w64-windows-gnu<br>
Thread model: posix<br>
InstalledDir: /opt/clang/bin<br>
 "/opt/clang/bin/clang-3.8" -cc1 -triple x86_64-w64-windows-gnu<br>
-emit-obj -mrelax-all -disable-free -main-file-name hello.c<br>
-mrelocation-model pic -pic-level 2 -mthread-model posix -fmath-errno<br>
-masm-verbose -mconstructor-aliases -munwind-tables -target-cpu x86-64<br>
-momit-leaf-frame-pointer -v -dwarf-column-info -resource-dir<br>
/opt/clang/bin/../lib64/clang/3.8.0 -internal-isystem<br>
/opt/clang/bin/../lib64/clang/3.8.0/include -internal-isystem include<br>
-internal-isystem /opt/clang/x86_64-w64-mingw32/sys-root/mingw/include<br>
-internal-isystem include-fixed -internal-isystem<br>
/opt/clang/x86_64-w64-mingw32/include -internal-isystem<br>
/opt/clang/include -fdebug-compilation-dir /home/ismail -ferror-limit<br>
19 -fmessage-length 127 -fno-use-cxa-atexit -fobjc-runtime=gcc<br>
-fdiagnostics-show-option -fcolor-diagnostics -o /tmp/hello-f129aa.o<br>
-x c hello.c<br>
clang -cc1 version 3.8.0 based upon LLVM 3.8.0svn default target<br>
x86_64-suse-linux<br>
ignoring nonexistent directory "include"<br>
ignoring nonexistent directory<br>
"/opt/clang/x86_64-w64-mingw32/sys-root/mingw/include"<br>
ignoring nonexistent directory "include-fixed"<br>
ignoring nonexistent directory "/opt/clang/x86_64-w64-mingw32/include"<br>
#include "..." search starts here:<br>
#include <...> search starts here:<br>
 /opt/clang/bin/../lib64/clang/3.8.0/include<br>
 /opt/clang/include<br>
End of search list.<br>
hello.c:1:10: fatal error: 'stdlib.h' file not found<br>
#include <stdlib.h><br>
         ^<br>
1 error generated.<br>
<br>
x86_64-w64-mingw32-gcc is in $PATH, and this used to work fine before<br>
this commit.<br>
</blockquote></div><br></div>