"vytvořím nějaký SW, nějaký SW, ve kterém použiju, např. non-GPL ..." + "tak svůj SW nemohu distribuovat pod GPL, i když jsem víceméně jeho autor"
- Tyto dvě věty mohou být v rozporu. Záleží například, jakým způsobem je onen non-GPL použit. Může to znamenat, že ty NEJSI autorem toho, co nazýváš "svůj SW" - že autorem jsi Ty a autoři těch "ovladačů", pokud to vydáš jako celek.
To platí obecně, např. i pro C runtime knihovny.
Abys Ty mohl užít cizí kusy, musíš k tomu mít licenci. Proto se, obvykle, věci jako ovladače, konkrétní standardní knihovny jazyka a podobně, vydávají pod licencí, která Ti dává široké možnosti běhu programu. Obvykle. (GPL s tím má problém právě proto, že omezuje styl užití a vynucuje si /licenčně/ věci navíc, ne nutně potřebné pouze pro vlastní běh programu, ale týkající se i zdrojáků).
Takže problém je pouze, pokud si Ty pro svůj kód zvolíš licenci, která dává (určuje) i práva nad rámec cizího díla, ke kterým nemáš dostatečné oprávnění. Pokud si vybereš, pro svůj kód, třeba public domain like, nebo GPL, jsi to _TY_ kdo musí zajistit, abys měl dostatečná práva k veškerému použitému kódu tak, aby vyhovovala _TVOJÍ_ vybrané licenci. Řešením je:
- vybrat svůj kód pod takovou licencí, aby vyhovovala všem stávajícím licencím použitých cizích děl
- požádat autory cizích děl, zda Ti jej neposkytnou (ať už za úplatu či jinak) pod takovou licencí, která by byla vyhovovala té Tvé vysněné