On Tue, Nov 8, 2011 at 8:02 AM, Don Williamson <don.williamson at yahoo.com> wrote:> > > OK, it's not that bad - it's even better than before :) > > The main issue is RWMutex.inc and the use of PSRWLOCK. This requires _WIN32_WINNT to be >= 0x0600, which is not true for VS2005 SP1. > > Rather than #define _WIN32_WINNT 0x0600 (the file notes that this should build on all Win32 variants), extending the copy/paste of winbase.h to this works fine: > > #if defined(__MINGW32__) || _WIN32_WINNT < 0x0600 > > I'm still getting random crashes running llvm-tblgen.exe which I think is a known issue (I only need clang libs to build successfully so this isn't fatal for me). >I am not aware of anyone who regularly build LLVM/clang with MSVC 2005 so you might run into some problems. I suggest you update to MSVC 2010 (or 2008 will do). There is a buildbot for MSVC 2010 so issues are generally fixed quite fast. Also LLVM compile just fine if you use the free MSVC Express edition so having to pay for a license should not be problem.
Hi Francois, I have all licensed versions of VS at my disposal (the benefits of being a former MS employee) but I'm currently using VS2005 due to specific technical reasons that I can't disclose. The "Getting Started" page states support of 2005 SP1 which, if it's not being maintained, is not true and should be updated. Cheers, - Don ----- Original Message ----- From: Francois Pichet <pichet2000 at gmail.com> To: Don Williamson <don.williamson at yahoo.com> Cc: "llvmdev at cs.uiuc.edu" <llvmdev at cs.uiuc.edu> Sent: Tuesday, November 8, 2011 1:30 PM Subject: Re: [LLVMdev] VS2005 compatibility On Tue, Nov 8, 2011 at 8:02 AM, Don Williamson <don.williamson at yahoo.com> wrote:> > > OK, it's not that bad - it's even better than before :) > > The main issue is RWMutex.inc and the use of PSRWLOCK. This requires _WIN32_WINNT to be >= 0x0600, which is not true for VS2005 SP1. > > Rather than #define _WIN32_WINNT 0x0600 (the file notes that this should build on all Win32 variants), extending the copy/paste of winbase.h to this works fine: > > #if defined(__MINGW32__) || _WIN32_WINNT < 0x0600 > > I'm still getting random crashes running llvm-tblgen.exe which I think is a known issue (I only need clang libs to build successfully so this isn't fatal for me). >I am not aware of anyone who regularly build LLVM/clang with MSVC 2005 so you might run into some problems. I suggest you update to MSVC 2010 (or 2008 will do). There is a buildbot for MSVC 2010 so issues are generally fixed quite fast. Also LLVM compile just fine if you use the free MSVC Express edition so having to pay for a license should not be problem.
On Tue, Nov 8, 2011 at 8:42 AM, Don Williamson <don.williamson at yahoo.com> wrote:> Hi Francois, > > I have all licensed versions of VS at my disposal (the benefits of being a former MS employee) but I'm currently using VS2005 due to specific technical reasons that I can't disclose. > > The "Getting Started" page states support of 2005 SP1 which, if it's not being maintained, is not true and should be updated.I don't know about VS support being deprecated, but I'm more curious as to what the issue is since you're using the latest Windows SDK. That code should compile only for Vista+ SDKs, and should fallback on the old critical section code for XP and lower. There's nothing compiler specific about it -- just platform SDK specific. At least, that was the intent. ~Aaron