add MingwCcDirTask; more gcc fixes
fix few stray min()/max() => std::min()/std::max()
one more stray min()
more gcc fixes
can't forward-declare enums
more gcc fixes