Make the do-build, do-configure, do-install and do-test targets in bsd.port.mk iterate through all values in their respective WRKSRC variables, and adjust most .mk files in Mk and Mk/Uses accordingly. A few have been left out (e.g. bsd.ruby.mk, Uses/gem.mk, bsd.apache.mk) because it is not clear if it makes sense for them to support multiple directories at all.
This change allows us to remove or reduce the size of several post-* targets in ports which only needed to build and/or install additional directories, as can be seen from the non-Mk bits of this CL.
The only limitation so far is that ALL_TARGET and INSTALL_TARGET are passed to all BUILD_WRKSRC and INSTALL_WRKSRC directories respectively, as I could not think of a syntax that made sense that associated directories and target names. This means some post-build targets were not modified, as they do things such as make docs which need a different target name than all or whatever ALL_TARGET is set to.