Você deve pedir ao compilador (ou melhor, ao pré-processador C) para fazer o trabalho para você:
gcc -M main.c
Isso produzirá uma dependência no estilo Makefile com todos os cabeçalhos incluídos por main.c
(incluindo os incluídos de forma transitiva). Ele manipulará corretamente comentários e outras diretivas de pré-processador ( #if
, #ifdef
e assim por diante).