Adapt project/make.sh for Windows builds

Fixes:
- link `-H windows` is not compatible with `-linkmode external`
- under Cygwin go does not play well with cygdrive type paths (i.e.: `/cygdrive/e/src/...`)

These issues were encountered while examining the required work for proper integration tests on client only platforms (#9217).
Interesting.  It's _documented_ that they're not supposed to be equivalent in the double-bracket case, but apparently they are in practice:

```console
$ [[ abc = a* ]] && echo yes || echo no
yes
$ [[ abc == a* ]] && echo yes || echo no
yes
```

However, I think it'd be safer for us overall to stick to documented behavior wherever possible, especially in case it's version sensitive which behavior gets used.