On Saturday, October 28, 2017 03:45:02 evilrat via Digitalmars-d wrote: > On Saturday, 28 October 2017 at 03:00:16 UTC, Jonathan M Davis > > wrote: > > ... I rewrote our build stuff so that it was all generated with > > cmake. Then editing the build was the same on both platforms, > > and building was _almost_ the same. I didn't even need to open > > up VS anymore - for configuration or for building. It was > > glorious. > > > > I expect that it's the sort of thing that would annoy many > > Windows devs though, because the fact that the VS files were > > generated meant that you couldn't make changes in VS and have > > it stick (which from my perspective was great, but for a > > hardcore Windows person, probably not so much). > > Never heard of anyone who is annoyed by cmake/vs combo. Quite the > opposite, there is an issue with "true" hardcore Linux devs who > cannot into cmake. They stuck with autotools, which is not an > option on Windows. This especially true for any C projects, and > also the fact that we stuck with C89 on Windows. And another side > of the problem is commercial middleware carp which distributed as > VS projects only and only supports some "ancient" VS version, > though I can't remember such examples.
The problem would be Windows devs who wanted to change any settings inside of VS. I don't think that it would have even worked to retain the file that's specific to the user, since it sits next to the normal VS project files, which were in a directory that would be deleted whenever a full rebuild was done. So, as long as you didn't need to configure any aspect of VS where the settings were saved in a file in that directory, you'd be fine, but something like your local debug settings for the project would probably be lost on a regular basis. So, while someone who's more of a Linux dev is likely to be very much in favor of using cmake to control everything, a hardcore Windows dev who uses VS on a regular basis might not view it the same way. Personally, I think that most anyone dealing with VS would be better off using cmake to generate its project files than using VS to control that stuff (it is _so_ easy to do stuff like make it so that the debug and release builds are not in sync if you're configuring VS directly), but I wouldn't have dared to suggest it at my last job, which was a Windows-only shop. The folks there were too Windows-centric and too set in their ways for that to have gone over well at all, even though it likely would have fixed a number of our build-related problems. - Jonathan M Davis
