[cfe-dev] MinGW include directories [RFC]

Rafael Avila de Espindola rafael.espindola at gmail.com
Sun Mar 23 05:10:24 PDT 2014



Sent from my iPhone

> On Mar 23, 2014, at 6:54, Reid Kleckner <rnk at google.com> wrote:
> 
> That makes total sense, given that (I think) we do roughly the same on Linux.
> 

We do a search in the driver and pass the result down. Doing the same for mingw would be nice.


> Sent from phone
> 
>> On Mar 23, 2014 5:40 AM, "Yaron Keren" <yaron.keren at gmail.com> wrote:
>> Hi,
>> 
>> The current setup of MinGW include directories in InitHeaderSearch.cpp has several problems:
>> 
>> * New versions are added manually to the code.
>> * All existing versions of MinGW directories are added regardless of what is actually installed (and pruned later), wasted work.
>> * Two MinGW.org C includes are missing.
>> * If multiple MinGW versions are installed clang will add directories for all of them leading to unpredictable results.
>> 
>> I'd like to suggest that clang will add include directories only for the gcc.exe which is on the system PATH based on the list below for both distributions. 
>> This way:
>> * clang will not add include diectories for every possible version, only for this one.
>> * clang  will correctly hanlde multiple based on the dveloper choice which gcc.exe is on the path
>> * We won't have to manually update new versions in InitHeaderSearch.cpp.
>> 
>> What do you think?
>> 
>> Yaron
>> 
>> mingw.org
>> ---------
>> gcc location
>> BASEPATH\bin\gcc.exe
>> 
>> C32 includes
>> BASEPATH\lib\gcc\mingw32\X.Y.Z\include
>> BASEPATH\lib\gcc\mingw32\X.Y.Z\include-fixed
>> BASEPATH\include
>>  
>> C++32 includes
>> BASEPATH\lib\gcc\mingw32\X.Y.Z\include\c++
>> BASEPATH\lib\gcc\mingw32\X.Y.Z\include\c++\mingw32
>> BASEPATH\lib\gcc\mingw32\X.Y.Z\include\c++\backward
>> 
>> mingw-w64
>> ---------
>> gcc includes
>> BASEPATH\bin\gcc.exe
>> 
>> C32 includes
>> BASEPATH\lib\gcc\i686-w64-mingw32\X.Y.Z\include
>> BASEPATH\lib\gcc\i686-w64-mingw32\X.Y.Z\include-fixed
>> BASEPATH\i686-w64-mingw32\include
>> 
>> C64 includes
>> BASEPATH\lib\gcc\x86_64-w64-mingw32\X.Y.Z\include
>> BASEPATH\lib\gcc\x86_64-w64-mingw32\X.Y.Z\include-fixed
>> BASEPATH\x86_64-w64-mingw32\include
>> 
>> C++32 includes
>> BASEPATH\i686-w64-mingw32\include\c++
>> 
>> C++64 includes
>> BASEPATH\x86_64-w64-mingw32\include\c++
>> 
>> 
>> 
>> 
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20140323/65a4c05c/attachment.html>


More information about the cfe-dev mailing list