Makefile:使所有'.c'文件生效的有效方法取决于具有相同名称的头文件?

Sie*_*geX 6 c makefile header

我有一个包含50个.c源文件的目录,这些.c文件中的每一个都依赖于.h具有相同名称的文件和公共头文件.

例:

foo.c depends on foo.h and common.h
bar.c depends on bar.h and common.h
baz.c depends on baz.h and common.h
Run Code Online (Sandbox Code Playgroud)

是否可以设置此依赖项而无需为每个.c文件创建单独的目标?

如果重要,这个Makefile的最终输出将是一个libfoo.a包含这些.o文件的库.

编辑

如果可能的话,我想用gnu make语法做这个,并且没有针对每个文件的目标,无论该目标是手动创建还是通过类似的方式创建makedepend.

hou*_*oft 10

据我所知,这应该足够了.

%.o: %.c %.h common.h
\tgcc -c $<
Run Code Online (Sandbox Code Playgroud)

\ t是一个标签,gcc -c $<当然只是一个例子.