←back to thread

Be Aware of the Makefile Effect

(blog.yossarian.net)
431 points thunderbong | 1 comments | | HN request time: 0.267s | source
Show context
silasdavis ◴[] No.42668536[source]
Someone remind me, is it $@ or $< ?
replies(2): >>42668582 #>>42669227 #
1. spc476 ◴[] No.42669227[source]
In a given rule:

    foo.o : foo.c
            $(CC) $(CFLAGS) -o $@ $<
The "$@" is the output (or target, think of @ as a bullseye on a target), and the "$<" is the input (think redirection). The only other commonly used variable is "$^":

    foo : foo.o util.o other.o
            $(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS)
In this case, "$^" means "all inputs".