Yes, my github repo should work with windows (we fixed a few minor things recently), but I'm not personally testing VS that often (or ever).
The plan would be to have nightly builds on all supported platforms.
Do not send any more patches for this, since I have already applied this one (with a bit of manual changes) (unless you have to make corrections).
We should have done it via pull-requests to start with, where I allow you to make additional commits until the the changes are ready to be merged.
So, the price to pay for this, is that now both repos (yours and mine) now has different changes, is that a merge is *not* advised (there would have duplicated changes, and probably a lot of ugly merge conflicts).
Side note: sending patches (which is still a good way if you only plan on making a single change) stems more from the old SVN days, where you couldn't make any commits if you weren't granted access. Now, with distributed version control, everyone can work on their own copy, and then the maintainer merges changes regurlarly.
The best thing you could do now, is to do a fresh clone of my github repo (any repo would have worked, but I have only merged your patches into my github repo yet), and if you have other changes, copy over those files and make a new commits for those changes again. From here on out, we'll stick to pull requests.
The main problem is that of CMakeLists.txt changes you had to do for PETSc. I could selectively avoid pulling in those changes, but a better solution would be to solve this in a satisfactory way once and for all.
The easiest way is to fork from my github account (so that you can send pull requests). You can on your local machine add however many repositories you want. I have my github repo, and the oofem.org repo added to my local repos, so that I can pull in changes from either easily.