У меня есть большая кодовая база с источниками, написанными на нескольких языках. Система сборки использует GNU make. Я хочу включить источники golang, которые используют новую структуру модуля, но я хочу избежать сборки, чтобы целевой исполняемый файл не перестраивался, если источники не изменились, и я хочу сборку вне источника.
Используя go 1.12, я могу получить сборку вне исходного кода, создав новый каталог сборки и вставив символическую ссылку обратно в исходный каталог, но это ужасно. И я не могу найти способ избежать перестройки, если исходные тексты не изменились, поскольку я просто не могу сказать, каков полный список источников (другие локальные модули могут или не могут быть включены в сборку)