
Estou compilando um kernel e tenho módulos de kernel fora da árvore fornecidos por um fornecedor de dispositivos. Originalmente o kernel foi construído, depois o módulo funcionou bem.
Agora estou tentando habilitar o initramfs no kernel. O módulo do kernel precisa ser incluído na imagem initramfs. Isso causa uma dependência circular:
- O kernel depende do arquivo de imagem initramfs (definido em
CONFIG_INITRAMFS_SOURCE
) - O arquivo de imagem initramfs depende do módulo do kernel fora da árvore
- O módulo do kernel fora da árvore depende do kernel que está sendo construído
A melhor solução alternativa que tenho é:
- crie um arquivo vazio para a imagem rootfs do initramfs
- Construa o kernel
- Construa o módulo
- Construa a imagem real do initramfs
- Reconstrua o kernel
No entanto, isso interrompe o make
rastreamento de dependências e causa muitas reconstruções desnecessárias durante o ciclo normal de desenvolvimento. Existe um alvo de construção do kernel que irá construir as ferramentas necessárias para um módulo fora da árvore sem realmente construir o kernel inteiro?