Merge mingw build scripts

(cherry picked from commit e2f520e0017c1254931bfd96f4b239d64017e84b)
Add jenkins-ci-build.sh

(cherry picked from commit 3ffefb663cf1a5df226481ed0635e20eca093bb3)
Fix cross-make-mingw.sh when no ARCH is supplied

(cherry picked from commit ef0364e5c94075dafe362b2d50ac9b4bcded3b6a)
Fix comment grammar (and test jenkins)

(cherry picked from commit bba199e795e77c6a2a958a18ac405c996dce2439)
Ditch 'historical compatibility' and use 'logic' instead

(cherry picked from commit 8d70929d12aa11e2b01238d7636d960d79358196)
Add DEBUG_MAKEFILE to... debug the Makefile

(cherry picked from commit e4151c1d55fca67dd6edb00bd812ce47b9e5b475)
Move cross-make-mingw.sh's functionality to the Makefile and remove it

(cherry picked from commit b720b6029597c606da96145b69aff4ded22e4615)
Fix travis build

(cherry picked from commit 95da5477113f1d50c126ff41978ee05bc423d89d)
(Hopefully) fix the Jenkins build

(cherry picked from commit 615581667234ded004a9f681418bd680ce852e0f)
Fix it more

(cherry picked from commit 02a625a1b312902a6005c76fe7a59b3f5df17413)
Make travis silent

(cherry picked from commit 5d862d222e3065ea88bd86fefe33c302017ea624)
Use distclean for jenkins builds

(cherry picked from commit d50338fb5788ea4a6375bee44835f12c9e8e4006)
(bug #5904) Fix OpenBSD and Solaris builds

(cherry picked from commit cae7ae9ce611fd6c84b1f118fda080a550d8f24b)
Enable building QVMs when cross-compiling

(cherry picked from commit 4f452fcfed27ffc1d9d46c3812635dcee4961b58)
s/enum/typedef enum/g on uniform_t for glorious fix of mac build. h/t MAN-AT-ARMS

(cherry picked from commit 01efc266541a1b43330fea3442002c105f490606)
Cross compiling for OS X

(cherry picked from commit 352cd151e03fbf6dbf3979c413abedd41928a38c)
Fix some of the things clang --analyze flagged

(cherry picked from commit 98360bcd578cbd60f910c42bc0fa1a9bb698def8)