Nothing prevents you from licensing your code BSD while using GPL-licensed software. You can use what ever library or software out there which is GPL and if you always use BSD or MIT license, you can share your code that you wrote with whoever and for whatever purpose. People who receive it can then use your code for what ever, and only need to follow the GPL if that also use the code which you have not written.
That doesn't make any sense. If people could take GPL code and switch it to MIT license then GPL would be meaningless:
1. Take the GPL project you want
2. Add a comment somewhere, publish the resulting derivative under MIT
3. Use it however you want, while flipping off Gnu
Sure, I can (and do) use GPL software, personally. But I can't use GPL sourcecode in projects I publicly release. If I did, that part of my sourcecode would have to be GPLed.
* Which means it couldn't be used by anyone (set A) who can't use GPL.
* Which means it couldn't be used by anyone (set B) who wants to share with people in set A.
* Which means it couldn't be used by anyone (set C) who wants to share with people in set B.
>That doesn't make any sense. If people could take GPL code and switch it to MIT license then GPL would be meaningless
He never said that, he said you can you can combine your permissively licensed code with GPL licensed code and _your_ code will still be available as permissive.
You stated that you wanted to share _your_ code with 'everyone', nothing prevents you from doing that.
Someone else's GPL licensed code is NOT _your_ code just because you decide to use it.
Those people in Set A and so on have made their own choice, that they do not wish to share with their users. The only people preventing them from using GPL software is themselves.