I want to define some macros only for some make targets. eg.
all : process1 process2
prcoess1: process1.c process.h
prcoess2: process2.c process.h
%.o:%.c
$(CC) $(CCOPTS) -o $@ $<
CCOPTS += -DEXTRA1
extra1 : clean all
CCOPTS += -DEXTRA2
extra2 : clean all
I want macro EXTRA1 to be defined only when I call make extra1. If I call make I don’t want EXTRA1 to be defined. How do I accomplish this?
See §6.11 Target-specific Variable Values from the GNU make manual.