Автоматическая дистанция с символическими источниками

Я поддерживаю «мастер» makefile для проекта со многими подмодулями, каждый из которых имеет свою собственную структуру автотюсков. Этот проект протестирован в нескольких конфигурациях (например, построен на основе сторонних версий) и может быть построен на разных платформах / архитектурах, используя один и тот же домашний каталог через NFS или с помощью кросс-компиляторов. Все это обрабатывается путем использования текущего исходного кода (git repo clone), «клонирования (*)» источника в отдельный каталог для текущей сборки сборки и configure / autogen , клон источников (так что не загрязнение оригинальной проверки) , и, наконец, построив его вне дерева, как хорошо поддерживаемый autotools.

Часть («) клонирования» (*) реализована несколькими способами, такими как cp / tar копирование исходного рабочего пространства в «исходный клон» или путем создания структуры каталогов в клоне, заполненной относительными символическими ссылками, в исходные файлы в основное рабочее пространство. А вот драконы 🙂

Исходный клон, заполненный естественными файлами, является самодостаточным и прекрасно передает задания автомата и, в частности, distdistcheck ) – в отличие от «symlink clone», где make dist видимому, архивирует относительные символические ссылки «как есть», они не указывают смысла.

Поверхность символических ссылок заключается в том, что разработчик может редактировать файлы в рабочей области и перестраивать все платформы за одно заклинание, не сводя их к git и т. Д. – ускорение циклов итераций dev (по крайней мере, до тех пор, пока новые файлы не добавляются – просто повторно – «сделать» отредактированных существующих). Это также значительно меньше затрат времени на хранение и время, чем много копирование одинаковых файлов.

Поэтому возникает вопрос: возможно ли «сделать dist» каталогом, заполненным относительными символическими ссылками, в исходные источники? Возможно, какой-то «dist hook» или другие способы переопределить способ создания tarball? (было бы приемлемо, если бы процедура dist создавала реальные файлы в своем выделенном подкаталоге, например, путем разыменования исходных-символьных символических ссылок)

Или это просто не выполнимо, и мы не можем оба есть торт и есть его? 🙂

(Для справки, «главный» Makefile находится на https://github.com/42ity/FTY/ )

Linux и Unix - лучшая ОС в мире.