What I do is that I have a portable code base which can be compiled as a native desktop application in VStudio on Windows or in Xcode for OSX. Most of my development happens there, compiling, testing and debugging the native application in VStudio or Xcode. For emscripten and some other target platforms (NaCl, Android...) I compile on the command line. Most bugs happen in the platform-agnostic code and are already found and fix while debugging the native application.
As jj writes, cmake is a good meta-build system for this approach since it generates project files for VStudio or Xcode, as well as Makefiles for command line compilation.
Also, let me shamelessly plug my own cmake wrapper build system 'fips' which makes this switching between target platforms even easier:
http://floooh.github.io/fips/Check out the progress videos in the github project videos to get an idea how it is used:
https://github.com/floooh/fips/And my 'weekend 3D engine' using fips as build system:
https://github.com/floooh/oryolCheers,
-Floh.