It's universal that you can't both have and eat the cake. 99% of problems with GPL arise from the fact that companies and individuals want exactly that.
GPL is more indifferent to many real-world aspects than people assume it is.
It is an idealistic license and it only cares about the right to use the program and the availability of source code, to ensure free use and reuse of the program. This ideal is rather neutral towards any commercial and business aspects: it only conflicts with some of the established practices and beliefs of the current business world.
GPL does not intend to compete or lock-out other software while that may indeed happen if you're playing a different game and holding tightly on to contradicting views of what you think is important.
In reality, there are no other limitations in GPL than that effectively no single author or distributor can't enforce control over or killing the software.
For companies, there are two possible outcomes:
1) secrecy of the company source code is more valuable. Conclusion: there's no rational reason to even consider incorporating GPL code in the company. What's the problem?
2) benefits from reusing GPL'ed software is more valuable. Conclusion: GPL your stuff as well to gain the benefits and avoid any legal problems. What's the problem?
Otherwise the company is holding on to the belief that they can have and eat the cake, and effectively just wasting their own time.
GPL is more indifferent to many real-world aspects than people assume it is.
It is an idealistic license and it only cares about the right to use the program and the availability of source code, to ensure free use and reuse of the program. This ideal is rather neutral towards any commercial and business aspects: it only conflicts with some of the established practices and beliefs of the current business world.
GPL does not intend to compete or lock-out other software while that may indeed happen if you're playing a different game and holding tightly on to contradicting views of what you think is important.
In reality, there are no other limitations in GPL than that effectively no single author or distributor can't enforce control over or killing the software.
For companies, there are two possible outcomes:
1) secrecy of the company source code is more valuable. Conclusion: there's no rational reason to even consider incorporating GPL code in the company. What's the problem?
2) benefits from reusing GPL'ed software is more valuable. Conclusion: GPL your stuff as well to gain the benefits and avoid any legal problems. What's the problem?
Otherwise the company is holding on to the belief that they can have and eat the cake, and effectively just wasting their own time.