Подтвердить что ты не робот

Рекурсивное отключение зависимостей CONFIG от сборки ядра Linux

При настройке ядра Linux я обычно начинаю с моего конфигурационного файла дистрибутива. Я часто хочу отключить некоторые записи, но они иногда неизменяемы, потому что включены другие параметры CONFIG, которые зависят от него.

Я могу вручную искать зависимости, которые часто имеют собственные зависимости. Это может быть довольно много времени для всех, особенно если вы пытаетесь отключить что-то вроде CONFIG_KALLSYMS.

Вопрос: Есть ли способ указать параметр CONFIG, который вы хотите удалить, и имеете ли все зависимые автоматически выбранные/отмененные как nessisary для вас? Я просмотрел все параметры make и в каталоге скриптов и не видел ничего доступного для этого.

UPDATE. Кто-то ответил, что make oldconfig должен выполнить задание после удаления (удаления) необходимых параметров CONFIG из файла .config, но это не сработало (его ответ затем исчез):

$ make oldconfig
scripts/kconfig/conf -o arch/x86/Kconfig
*
* Restart config...
*
*
* Configure standard kernel features (for small systems)
*
Configure standard kernel features (for small systems) (EMBEDDED) [N/y/?] n
  Load all symbols for debugging/ksymoops (KALLSYMS) [Y/?] (NEW) y
    Include all symbols in kallsyms (KALLSYMS_ALL) [Y/?] (NEW) y
    Do an extra kallsyms pass (KALLSYMS_EXTRA_PASS) [N/y/?] (NEW) 

Он автоматически сказал "y" два первых двух, и я пытаюсь найти автоматизированный способ их удаления и оставить их.

4b9b3361

Ответ 1

Похоже, что Kconfiglib, Ульф Магнуссон, позволит вам проверить конфигурационные зависимости в Python и изменить настройки конфигурации: http://lwn.net/Articles/426013 - кроме того, я нашел обсуждение проблемы, но не решил.

Некоторые полезные элементы для Kconfiglib:

Ответ 2

Для тех, кто может наткнуться на это, Kconfiglib теперь живет в https://github.com/ulfalizer/Kconfiglib и был отполирован и обновлен для последней версии Kconfig как (Linux 3.7.0-rc8). Установка также была значительно упрощена.

Update:

Теперь Kconfiglib обновлен для Linux v4.0-rc3, а тестовый набор проходит в режиме обсессивно. Добавлена ​​новая опция option allnoconfig_y (для оставления определенных символов как y в течение make allnoconfig), которая была включена.

Извините, что некоторое время оставил Krotfllib bitrot!:/

Не стесняйтесь публиковать любые связанные с Kconfig вопросы (не обязательно связанные с Kconfiglib), которые у вас могут быть, и связать их здесь (или уведомить меня каким-либо другим способом). Kconfig имеет много неясных углов.