CFLAGS nos makefiles do kernel Linux: qual deles é usado quando?

3

Eu não estou familiarizado com Makefiles, eu posso entendê-los, mas com o kernel Linux eu tenho uma pergunta.

(Usando o 3.7.1, Patched com BFS para que os números de linha fiquem um pouco fora)

Na linha 248

HOSTCFLAGS   = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer

Isso é passado para todos os Makefiles?

Em seguida, nas Linhas 349 e 352, Respectivamente

CFLAGS_MODULE   =
....
CFLAGS_KERNEL   =
....
CFLAGS_GCOV = -fprofile-arcs -ftest-coverage

Eu estou supondo CFLAGS_MODULE é passado para coisas construídas como um módulo, e o próximo é específico para o próprio kernel? E CFLAGS_GCOV é para depuração e criação de perfil?

Depois, há um monte de KBUILD_CFLAGS

KBUILD_CFLAGS += $(call cc-option, -fno-stack-protector)

Eu estou supondo que a linha anterior remove essas opções, e a próxima linha adiciona?

KBUILD_CFLAGS   += -fno-omit-frame-pointer -fno-optimize-sibling-calls

Eu também não encontrei um bom tutorial sobre isso.

    
por John 28.12.2012 / 17:14

0 respostas