CDDL:* требование выпускать исходные тексты изменений под лицензией с открытым исходным текстом;
это ближе к GPL.
* возможность распространять исполнимые модули под другой лицензией;
Это ближе к BSD. Лицензнию поменять не могу, но и показывать никому не обязан.
Беру код, делаю патч в коде с CDDL (пусть смотрит любой желающий;)), вызовы функций и т.д. из исходного кода под любой закрытой лицензией. Компиляю статически и вуаля. Никто не придерется - лицензия соблюдена.
BSD:
Беру код под BSD делаю патч и никому его не показываю. Но ведь исходный изначальный код по прежнему открыт. Компиляю статически.
GPL:
Беру код под GPL. Делаю патч и показываю его кому угодно. Компиляю и динамически подключаю либу. Так работает тот же проприетарный драйвер NVIDIA или ATI.
Не такая уж и большая разница как кажется на первый взгляд. И мой код по прежнему скрыт, если этого захочу:)
Важнее распространение свободного софта, а не его лицензия.