Aaron Ballman
2015-Feb-09 15:44 UTC
[LLVMdev] [cfe-dev] [RFC] Raising LLVM minimum required MSVC version to 2013 for trunk
On Mon, Feb 9, 2015 at 8:36 AM, Greg Bedwell <gregbedwell at gmail.com> wrote:> We've just encountered an issue with ninja and VS2013 when using versions of > CMake prior to 2.8.12.1. This isn't a combination that we typically use so > we've not run into it previously in our own builds. It isn't specifically > tied to upgrading the minimum version as it's a problem that already exists > but I figure we'll hit it sooner or later on one of the bots as people start > to use 2013 so best to deal with it sooner. Essentially, when building any > configuration through ninja with debug data enabled with anything more than > -j1 we'll hit an error like: > > C:\work\public_svn\llvm\lib\Support\APInt.cpp : fatal error C1041: cannot > open program database > 'c:\work\public_svn\build-vs2013-native-ninja\lib\llvmsupport.pdb'; if > multiple CL.EXE write to the same .PDB file, please use /FS > > Here's the relevant CMake tracker which shows the fix going into 2.8.12.1: > http://www.cmake.org/Bug/view.php?id=14492 > > I think our options are to either require CMake 2.8.12.1 for VS2013/ninja > builds (but I don't know how feasible this is) or we can put our own > workaround into our CMakelists to push the /FS switch when using Ninja and > Visual Studio, unless someone has any better ideas? > > Any thoughts? Is this a blocker for updating the minimum version?I'm not certain I see it as a blocker since upgrading CMake should not be too difficult (2.8.12.1 was released in Nov 2013). Whether we want to require 2.8.12.1 is a different ball of wax, but for just the Ninja + MSVC build, I don't think that's too onerous (then again, I don't use Ninja for my builds, either). ~Aaron
Chris Bieneman
2015-Feb-09 18:07 UTC
[LLVMdev] [cfe-dev] [RFC] Raising LLVM minimum required MSVC version to 2013 for trunk
I agree with Aaron, this should not be a blocker because the workaround is simple. I'm also not opposed to raising the minimum CMake version all the way to 3.0. CMake 3 is 6 months old and CMake 3.1 is already out. I think most (if not all) our internal users are on 3.0 now, and those that may not be are either on old branches of LLVM or have no excuse not to update. I can start a separate thread with that proposal. -Chris Sent from my iPad> On Feb 9, 2015, at 7:44 AM, Aaron Ballman <aaron at aaronballman.com> wrote: > >> On Mon, Feb 9, 2015 at 8:36 AM, Greg Bedwell <gregbedwell at gmail.com> wrote: >> We've just encountered an issue with ninja and VS2013 when using versions of >> CMake prior to 2.8.12.1. This isn't a combination that we typically use so >> we've not run into it previously in our own builds. It isn't specifically >> tied to upgrading the minimum version as it's a problem that already exists >> but I figure we'll hit it sooner or later on one of the bots as people start >> to use 2013 so best to deal with it sooner. Essentially, when building any >> configuration through ninja with debug data enabled with anything more than >> -j1 we'll hit an error like: >> >> C:\work\public_svn\llvm\lib\Support\APInt.cpp : fatal error C1041: cannot >> open program database >> 'c:\work\public_svn\build-vs2013-native-ninja\lib\llvmsupport.pdb'; if >> multiple CL.EXE write to the same .PDB file, please use /FS >> >> Here's the relevant CMake tracker which shows the fix going into 2.8.12.1: >> http://www.cmake.org/Bug/view.php?id=14492 >> >> I think our options are to either require CMake 2.8.12.1 for VS2013/ninja >> builds (but I don't know how feasible this is) or we can put our own >> workaround into our CMakelists to push the /FS switch when using Ninja and >> Visual Studio, unless someone has any better ideas? >> >> Any thoughts? Is this a blocker for updating the minimum version? > > I'm not certain I see it as a blocker since upgrading CMake should not > be too difficult (2.8.12.1 was released in Nov 2013). Whether we want > to require 2.8.12.1 is a different ball of wax, but for just the Ninja > + MSVC build, I don't think that's too onerous (then again, I don't > use Ninja for my builds, either). > > ~Aaron
Chris Bieneman
2015-Feb-13 23:27 UTC
[LLVMdev] [cfe-dev] [RFC] Raising LLVM minimum required MSVC version to 2013 for trunk
I have moved onto the next phase and committed r229185, which makes VS2013 our minimum version. I will revert if issues arise, and we can rinse and repeat as necessary. Once it sticks for a bit I’ll update the docs too. -Chris> On Feb 9, 2015, at 10:07 AM, Chris Bieneman <beanz at apple.com> wrote: > > I agree with Aaron, this should not be a blocker because the workaround is simple. I'm also not opposed to raising the minimum CMake version all the way to 3.0. CMake 3 is 6 months old and CMake 3.1 is already out. > > I think most (if not all) our internal users are on 3.0 now, and those that may not be are either on old branches of LLVM or have no excuse not to update. I can start a separate thread with that proposal. > > -Chris > > Sent from my iPad > >> On Feb 9, 2015, at 7:44 AM, Aaron Ballman <aaron at aaronballman.com> wrote: >> >>> On Mon, Feb 9, 2015 at 8:36 AM, Greg Bedwell <gregbedwell at gmail.com> wrote: >>> We've just encountered an issue with ninja and VS2013 when using versions of >>> CMake prior to 2.8.12.1. This isn't a combination that we typically use so >>> we've not run into it previously in our own builds. It isn't specifically >>> tied to upgrading the minimum version as it's a problem that already exists >>> but I figure we'll hit it sooner or later on one of the bots as people start >>> to use 2013 so best to deal with it sooner. Essentially, when building any >>> configuration through ninja with debug data enabled with anything more than >>> -j1 we'll hit an error like: >>> >>> C:\work\public_svn\llvm\lib\Support\APInt.cpp : fatal error C1041: cannot >>> open program database >>> 'c:\work\public_svn\build-vs2013-native-ninja\lib\llvmsupport.pdb'; if >>> multiple CL.EXE write to the same .PDB file, please use /FS >>> >>> Here's the relevant CMake tracker which shows the fix going into 2.8.12.1: >>> http://www.cmake.org/Bug/view.php?id=14492 >>> >>> I think our options are to either require CMake 2.8.12.1 for VS2013/ninja >>> builds (but I don't know how feasible this is) or we can put our own >>> workaround into our CMakelists to push the /FS switch when using Ninja and >>> Visual Studio, unless someone has any better ideas? >>> >>> Any thoughts? Is this a blocker for updating the minimum version? >> >> I'm not certain I see it as a blocker since upgrading CMake should not >> be too difficult (2.8.12.1 was released in Nov 2013). Whether we want >> to require 2.8.12.1 is a different ball of wax, but for just the Ninja >> + MSVC build, I don't think that's too onerous (then again, I don't >> use Ninja for my builds, either). >> >> ~Aaron > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Maybe Matching Threads
- [LLVMdev] [cfe-dev] [RFC] Raising LLVM minimum required MSVC version to 2013 for trunk
- [LLVMdev] [cfe-dev] [RFC] Raising LLVM minimum required MSVC version to 2013 for trunk
- [LLVMdev] [cfe-dev] [RFC] Raising LLVM minimum required MSVC version to 2013 for trunk
- [LLVMdev] [RFC] Raising LLVM minimum required MSVC version to 2013 for trunk
- [LLVMdev] [RFC] Raise minimum required CMake version to 3.0