Родилась такая мысль:
Linux Kernel конфигурируется через make menuconfig.
А есть ли возможность получить минимальные исходники, соответствующие конфигу?
(то есть без "лишних" файлов, а то и без "лишних" (неиспользуемых) функций, дефайнов, enum и пр.)
Конечно, идея может показаться ненужной, но хотя бы just for fun?
Здравствуйте, Mike, Вы писали:
M>А есть ли возможность получить минимальные исходники, соответствующие конфигу? M>(то есть без "лишних" файлов, а то и без "лишних" (неиспользуемых) функций, дефайнов, enum и пр.)
M>Конечно, идея может показаться ненужной, но хотя бы just for fun?
Для этого вам потребуется clang и несклолько лет времени.
Здравствуйте, Слава, Вы писали:
С>Для этого вам потребуется clang и несклолько лет времени.
Зачем? make x86_64_defconfig, собрать, посмотреть что скомпилилось, и из этого оставить только те папки в сырцах (можно ограничиться для начала только drivers/fs/arch, потому что с KVM и include не пройдет), от которых остались следы в виде .o. Будет весьма и весьма компактный результат.
M>Родилась такая мысль: M>Linux Kernel конфигурируется через make menuconfig. M>А есть ли возможность получить минимальные исходники, соответствующие конфигу? M>(то есть без "лишних" файлов
Ну промониторь к каким файлам обращаются при сборке.
(Для минимизации докеровских образов, например, есть тулзы которые мониторят какие файлы реально используются при работе контейнера и потом собирают образ только с этими файлами)