Мультиархитектурная система сборки - PullRequest
0 голосов
/ 01 августа 2020

Я пытаюсь понять систему сборки на основе multiarch Makefile, которую можно найти в проектах с открытым исходным кодом, таких как linux kernel , glib c и так далее. Во всех этих проектах исходный код организован в виде модулей C / C ++ (например, файловая система, сеть, ведение журналов) и c, общие c заголовки, такие как include /, а затем дерево каталогов c (arch / { x86, mips, arm}) et c. Я хочу понять, как формируется макет таких проектов, какие специфические языковые конструкции и методы c используются для отображения подпрограмм высокого уровня C на их специфические c реализации. Я попытался осмотреть inte rnet и не нашел информации, касающейся именно этого предмета или введения того, как компоновка и проектирование Make-файлов, организация C и сборка, чтобы система сборки правильно создавала сборку.

В качестве конкретного примера давайте рассмотрим glib c, который использует макрос HP_TIMING_NOW , реализация которого отличается для разных архитектур ( x86_64 , powerp c ...).

Я понимаю, что вся система сборки работает за счет рекурсивного вызова make, но, возможно, понимание этого процесса поверхностное, и я ищу какое-то конкретное объяснение в виде ресурсов или ответов чтобы осветить эту тему. Заранее спасибо

...