IANAL, ma ecco la mia opinione su ciò che è consentito nei limiti di GPL:
distribuire il lavoro combinato "A - B" in pubblico: bene, può essere fatto con qualsiasi licenza proprietaria
creare un lib wrapper D per C di Y: bene, questo non implica che A debba essere messo sotto GPL
usa il prodotto combinato "A - D - C" internamente da Y: anche bene, GPL non richiede di aprire la sorgente A fintanto che la combinazione non è distribuita al pubblico
distribuire in pubblico l'opera combinata "A - D - C": ciò richiederà che A sia di provenienza aperta e sia posto sotto GPL (e non importa se X o Y hanno distribuito questa combinazione; inoltre, se Y vuole fare questo che, richiederebbero una licenza di distribuzione per A da X, ovviamente)
La domanda interessante ora è: D&C può essere distribuito separatamente come open source sotto GPL, A&B (o solo A senza B) può essere distribuito con una licenza proprietaria e l'utente finale sostituisce B con D&C da solo?
Qui la modifica finale a "AB" che rende A dipendente dalle librerie D e C viene effettuata dall'utente finale - dopo la distribuzione . Quindi si potrebbe sostenere che la modifica finale viene eseguita solo internamente dall'utente finale. E sembra che ciò sia effettivamente possibile senza violare la GPL - e quello che ottieni è una combinazione funzionante di "AC&D" in cui A è sotto licenza proprietaria e C&D sotto GPL.
Naturalmente, un avvocato o un giudice può avere un'opinione diversa su questo. Per ottenere una risposta definitiva, penso che tu debba aspettare fino a quando qualcuno lo proverà e un secondo lo farà causa.
Immagino per la maggior parte dei sistemi, sarà difficile creare una tale costellazione senza progettare "A" dall'inizio in un modo in modo che funzioni perfettamente con B o C. E in questo caso, si potrebbe arrivare al sospetto che A è stato in qualche modo derivato da C.
EDIT: pensando a questo proposito, mi è venuta in mente una situazione simile: scrivere e distribuire plugin con licenza GPL per applicazioni a sorgente chiuso. Prendiamo ad esempio Photoshop. Non penso che qualcuno proverebbe seriamente a imporre ad Adobe di Photoshop open source solo perché esistono alcuni plugin GPL di fornitori di terze parti. Qui, non è nemmeno necessaria una "lib wrapper" poiché esiste un'interfaccia ben definita. Tuttavia, cambierebbe la situazione se Photoshop incorporasse alcune delle sue funzioni centrali da un plug-in di terze parti GPL? Penso che per un caso del genere possa diventare davvero difficile decidere dove tracciare la linea, a quel punto il prodotto a sorgente chiuso è un lavoro "basato" sulla lib GPL.
EDIT2: sono disponibili librerie a doppia licenza, con una licenza GPL per uso non commerciale e una licenza proprietaria per uso commerciale come questa, ad esempio. Quindi la tua "scappatoia" significherebbe sviluppare un prodotto basato su tale lib (usando la versione commerciale, quindi GPL non si applica al tuo prodotto), consegnare il tuo prodotto come open-source senza la lib al pubblico e lasciare che il fine- l'utente ottiene e installa la versione GPL da solo. In tal caso, immagino che il venditore della libreria abbia buone probabilità di denunciarti con successo per violazione della licenza (se non paghi per la sua libreria, ovviamente). Ne vale la pena? Probabilmente no. Soprattutto nell'esempio che ho collegato, dovresti acquistare anche la lib, poiché il prezzo non dipende dalla frequenza con cui vendi il tuo prodotto, ma solo da quanti sviluppatori usano la lib durante lo sviluppo.
Infine, a causa di tali rischi legali, se intendo utilizzare librerie open source all'interno di un prodotto a sorgente chiuso, eviterei le librerie GPL, se possibile, e non tenterei di utilizzare questa "scappatoia". LGPL o GPL con l'eccezione del collegamento è molto più sicuro o qualsiasi tipo di licenza del sistema operativo non virale.