I understand your concern, but on the other hand the current method
also has a downside. The creator of the cygport file has to specify
the runtime name including the ABI version as a fixed string. First
of all, there's a chance that the package creator just doesn't know
beforehand which ABI version will be generated by the package. And
second, since the ABI version is just hardcoded in the cygport file,
there's also a chance that the package maintainer misses the ABI version
bump and creates a package "libfoo1", while the DLL in the package is
called cygfoo-2.dll.
I think that, either way, you have to rely on the diligence of the
maintainer. Allowing to automate the package naming and dependency
generation in the package stage, rather than in the install stage,
would at least ease the job, IMHO.