You're conflating two issues - copyright over the API, which has been widely presumed not to exist until recently, and copyright over the library the API provides access to.
You're forgetting that in the case of dynamically linked libraries and the GPL, the two issues become the same thing. An executable using dynamic linking contains no code from a linked library to make it a derived work other than the API (and in the case of discoverable interfaces not even that - MS OLE for instance), and it may link with _any_ library that provides the same API. The only point at which a derived work is arguably created is at runtime, under the control of the user, at which point the GPL explicitly disclaims all control or restriction.
Any claim (IMO) that the GPL restricts dynamically linked libraries essentially reduces to an API copyright claim.
Example: a patch (not an executable or a source distribution, a patch) that simply modified a few function calls in an open source (but not GPL program) to give said program the _option_ of linking to a GPL library was held by rms/FSF to be a GPL violation. No executable was ever distributed, no source distribution included GPL code, just the function names and calling conventions that happened to be used in a GPL library - what is that if not the API?
I can't think of any instances offhand where an open source project has objected to anyone re-implementing a library by cloning the API. They have however very often objected to closed-source projects actually linking/including their library. Basically - clone the API if you like, but if you use any of the actual code, either by inking or cut-n-paste, then you'd better adhere to the license.
Use the same function names and calling conventions as a GPL library in your code and get told your code is must be under the GPL as a result. Actually cloning the library can get you round that by allowing you to claim that there are multiple implementations of the same API so the GPL one cannot therefore claim sole copyright on the API, even if some implementations are so dysfunctional no sane person would use them. Of course "getting round" the GPL attracts objections from some quarters...
[Aside: Open-source clones-of / replacements-for GPL programs have also attracted objections simply on the basis that one undermines the GPL-world by replicating bits of it outside the GPL - see rms on clang / LLVM vs gcc, for instance.]
All this was discussed to death (notably on gnu.misc.discuss) some time last century, and for all I know is still discussed there today - I gave up following it long ago, concluding that the GPL basically works for what it was designed for, i.e. statically-linked C executables on unix. Outside of that it always breaks, sometimes in subtle and interesting ways.