I recently set up a minimal (70mb packed, ~500mb unpacked) cygwin-x86 for compiling ml and its tools from anywhere w/o fuzz. I see no reason not to share it, but let me know if there's any problem with redistributing this. It's just a copy of cygwin + arm-gcc + exiftool + dcraw with non-en locales and non-eos arm targets removed for convenience. I hope it works for you, I really didn't test it that much in different environments...
https://bitbucket.org/Marsu42/ml-pull/downloads/cw-armgcc-ml.7z1. unpack (or see below) archive to c:\
2. in c:\cygwin click "Cygwin Terminal" link
3. uncomment the rst2latex.py line in /ml/Makefile.user & adjust other paths there if needed
4. edit /ml/mlmake.sh to match your camera's type and platform directory
5. run /ml/mlget.sh ... your compiled ml will end up in /ml/ml-dist, copy that to card (& run eoscard)
6. from now on only run /ml/mlupdate.sh
To place the cygwin directory somewhere else change the shortcuts/.sh/.bat in the root directory or just create a junction c:\cygwin to the real directory. To update cygwin edit/import the .reg to match your path, run /cygports.sh and select "exp" in the top right for the newest version of the packages. To update gcc-arm get the newest one from launchpad and replace it in /opt.
Let me know if it fails catastrophically :-p so I can make some changes if required.