Рассмотим ситуацию:
1. я распространаю свой проект под GPLv2 или под GPLv3, только в виде исходников, не компилируя его и не линкуя ни с чем, в проекте находится лишь конфиг для build-tool (apache maven) со списком необходимых зависимостей библиотек
2. юзер качает мои сорцы, запускает build-tool с моим конфигом и тот качает все необходимые зависимости из общедоступного репозитория(maven repo)
3. тот-же build-tool линкует либы для запуска тестов и собственно для самого приложения
4. при этом либы открытые, но несовместимые с GPLv2 и GPLv3 (JUnit например с CPLv1.0 несовместим с GPL)
Вопрос: имеет ли значение в данном случае несовместимость лицензий? С одной стороны мой код использует несовместимые либы, с другой я ничего не поставляю кроме моих сорцов и конфига, и выкачивание либов и их линковка происходит на стороне юзера, который только использует все это, а не распространяет дальше. Т.е. правильно ли утверждение что GPL в данном случае распространяется только на сорцы которые я поставляю, а что происходит по запуску сторонних build-tools уже проекта никак не касается. Тем более в самой лицензии черным по белому написано, что никаких гарантий не даю, используете на свой страх и риск. При этом лицензия вроде никак не нарушается еще и потому что юзер может менять, распространять дальше мои сорцы, т.е. свободное ПО остается свободным, он лишь не может скомпиленный проект дальше распространять из-за несовместимости лицензий библиотек.