syzygy wrote:But I think it's still fine. I see no reason why some library that maybe does not even exist or that may not be uniquely identifiable would somehow become part of "the entire work".
Because it's dynamically linked AND shares data structures. This is exactly what the GPL defines, and that is part of the point of the GPL.
Maybe I have an advanced proprietary version of the library that I sell for good money and a toy version that I give away for free including the GPL'd source.
You can sell GPL'ed software, too.
Would the fact that the proprietary version exists suddenly change the "entire work" that has to be licensed under the GPL?
It doesn't change it. It has always been that way.
What if that proprietary version is not even written by me but by someone else?
Then he has the same problem. The point of the GPL is to prevent people from taking free SW, tacking proprietary stuff on top of it and making it non-free. Dynamic linking is not exempted under the GPL. Authors use the GPL to explicitely prevent that kind of circumventing. If they had wanted to allow that, they could have chosen e.g. BSD or MIT instead.
Stockfish can no longer be distributed unless that new library is GPL'd?
Stockfish can, of course, but the library designed to run with Stockfish can't. And if there is only the closed lib, then the modified Stockfish version can't be distributed either - except by the authors who can chose dual-licencing, of course.