Hi, what are the goals of VS2005 support for building LLVM? I'm syncing to the v3 branch and while the branch compiles perfectly with VS2008, there are a significant amount of compile errors and warnings with VS2005 SP1 (8.0.50727.867 with KB926601 SP1, to be precise). I also have the latest WSDK installed. A few months back there were only a few minor issues that I managed to clear up. I'm going to try and fix up my local copy but is it worth my time - should I just move to VS2008 and accept that VS2005 support is being slowly deprecated? Thanks, - Don
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). Cheers, - Don ----- Original Message ----- From: Don Williamson <don.williamson at yahoo.com> To: "llvmdev at cs.uiuc.edu" <llvmdev at cs.uiuc.edu> Cc: Sent: Tuesday, November 8, 2011 12:34 PM Subject: [LLVMdev] VS2005 compatibility Hi, what are the goals of VS2005 support for building LLVM? I'm syncing to the v3 branch and while the branch compiles perfectly with VS2008, there are a significant amount of compile errors and warnings with VS2005 SP1 (8.0.50727.867 with KB926601 SP1, to be precise). I also have the latest WSDK installed. A few months back there were only a few minor issues that I managed to clear up. I'm going to try and fix up my local copy but is it worth my time - should I just move to VS2008 and accept that VS2005 support is being slowly deprecated? Thanks, - Don _______________________________________________ LLVM Developers mailing list LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
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.