Why is that unacceptable ? After all, package authors do have access to the code and know their way around ;-) Better drop the old def-file stuff and move to more modern ways of intergrating the information into the code...
Well, what strikes me as unacceptable is:
1) it makes creating setup.py files for existing code impossible w/o modifying said code. This will make migration more difficult.
2) it introduces platform-dependencies related to compilers in the code, instead of in compiler-spefific metafiles, which seems wrong.
...and perhaps add this as backup solution. Note that the /EXPORT:symbol you need for every symbol may well fill up the available command line argument memory (not sure how much there is on WinXX).
I've never run into it, if it exists.