The following is what one
resembles. ‘defs.h’
is given as a dependency of all the object files; ‘command.h’
and ‘buffer.h’
are dependencies of the specific object files listed for them.
edit : $(objects)
cc -o edit $(objects)
$(objects) : defs.h
kbd.o command.o files.o : command.h
display.o insert.o search.o
files.o : buffer.h
Whether this is better is a matter of taste: it is more compact, but some people dislike it because they find it clearer to put all the information about each target in one place.