plan to stop supporting MSVC 2010/2012
#1
Hello All,

I think it is a great time to have a roadmap to drop those "old" compilers.

* XP has been EOL since nearly 1 year (around 12% of install on statcounter, I don't know if we have PCSX2 stats)
* WIN7 is now in extended support
* WIN10 will be release soon enough (my guess is before September)

We could drop MSVC 2010 either
* comming weeks/months
* WIN10 release
* at the end of the year (to give time for user to upgrade their OS)

On the MSVC2012 case, is it still used? As far as I understand there is a free version of MSVC2013, isn't it.

The global idea is to rely more on the "new" cross-platform feature of C++11:
* std::mutex for locking management
* std::chrono for time management
* std::atomic to replace volatile stuff
* (std::thread ? Maybe, it doesn't work well on GSdx).
* As a bonus: use syntaxical sugar stuff (for range loop, nullptr, auto, attribute)
Reply

Sponsored links

#2
I'm not sure what to think about this, I mean is it necessary to drop the support for "old" MSVC versions except for dragging the project files along?

Like are the mentioned features not supported by MSVC 2010/2012 (not sure to what extent they offer C++11 features) or is it too time consuming to keep maintaining 2-3 different project settings for each version (do they even change that much)?

I would at least like to see MSVC 2012 still being supported since I'm not too fond of newer Visual Studio versions.

I know that support will be dropped at some point but I would hope at least for a 5 year time period until it does (and that the Linux version will run as smooth as the Windows version at that point Tongue ).
Reply
#3
Could you describe the benefits which the new features have on PCSX2 in executable state ? I don't think we should dump of the winXP devs so fast, it would be better to wait a little bit for the devs to upgrade. Though, I think the new syntax will attract new devs to join the team. Smile
We're supposed to be working as a team, if we aren't helping and suggesting things to each other, we aren't working as a team.
- Refraction
Reply
#4
Support of C++11 by visual studio version

I think this discussion is mostly for developers. If you have XP you can still use the same pre-compiled builds. You can just not compile it yourself since you can not install VS 2013 (actually because of .net 4.5 and not c++). I guess there is no WinXP developer around so who cares?

VC redist 2013 is compatible to WinXP:
Quote:Supported Operating System
Windows 7 Service Pack 1, Windows 8, Windows 8.1, Windows Server 2003, Windows Server 2008 R2 SP1, Windows Server 2008 Service Pack 2, Windows Server 2012, Windows Server 2012 R2, Windows Vista Service Pack 2, Windows XP

And for non-developers that want to compile for whatever reason their own version: Just press compile. This will always be the same feature for all future VS....



I guess currently you are using some ifdef's to use c++11 features and keep compatibility and you would like to have cleaner code? I would say drop it. (But as I said it is a dev discussion so actually not for us)
Reply
#5
I think Willkuer made a nice summary Smile

So far the only reason to keep VS2012 is the interface ( it is the most critical criterion for a compiler ... Tongue2 )

I'm currently making some experimentation so ifdef is enough at the moment. The purpose of this thread is to define a condition/date in order to plan the future.
Reply
#6
If it only affects devs and no devs are using it - drop it.
[Image: XTe1j6J.png]
Gaming Rig: Intel i7 6700k @ 4.8Ghz | GTX 1070 TI | 32GB RAM | 960GB(480GB+480GB RAID0) SSD | 2x 1TB HDD
Reply
#7
^ yeah, if there's no dev using winXP then, you can drop it. Many developers are comfortable working on the latest syntax so, since you spoke of delay, I assume some of the current devs are on WinXP so, it would be best to wait atleast 3-4 weeks before the change. Smile
We're supposed to be working as a team, if we aren't helping and suggesting things to each other, we aren't working as a team.
- Refraction
Reply
#8
(03-12-2015, 08:14 PM)gregory Wrote: The purpose of this thread is to define a condition/date in order to plan the future.
Since no one complained about dropping MSVC 2010 so far I guess according to your options it would be fine to drop it in the coming weeks/months?

As for MSVC 2012, as I said I would at least hope for support until 2017 (5 year period) but if it needs to be dropped in the near future as well due to badly supported or unsupported C++11 features then I wouldn't be too sad about it.

If that happens then I guess I just need to get used to the Linux setup sooner than I anticipated, not that I'm an active developer for the project but from time to time I'd like to dig into some of the code out of curiosity and at the current point in time MSVC is just more convenient for that.
Reply
#9
You can still use 2013 Express(I think) which is free, but requires a few changes to get it to compile.
[Image: XTe1j6J.png]
Gaming Rig: Intel i7 6700k @ 4.8Ghz | GTX 1070 TI | 32GB RAM | 960GB(480GB+480GB RAID0) SSD | 2x 1TB HDD
Reply
#10
There is also a community edition available for free (which is equivalent of the professional level). Anyway we can wait for Visual 2012. I wasn't aware there was a GUI "issue" with Visual 2013.

Is it possible to install a recent runtime with an older Visual ? Most useful features (in short term) are in the runtime.
Reply




Users browsing this thread: 2 Guest(s)