It's amazing when your makefile cross compiles your go program the very first time. This is particularly nice when implementing continuous integration.
However there is one big failure that one tends to forget. Continuous integration like Travis and drone only compile on Linux machines. Which means if you have test cases that exercise your Windows programs then you need a different strategy.
Strike one for simple cross compilers.