Для nmake:  # Src example layout:
# ..\src\app\app1.c
# ..\src\app\app2.c
# ..\src\bsp\bsp1.c
# ..\src\bsp\bsp2.c
OBJ      = ..\build
SRC      = ..\src
APPSRC  = $(SRC)\app
BSPSRC  = $(SRC)\bsp
APPS = $(OBJ)\app1.o \
       $(OBJ)\app2.o \
BSPS = $(OBJ)\bsp1.o \
       $(OBJ)\bsp2.o \
$(APPS) $(BSPS) : {$(APPSRC);$(BSPSRC);}$(@B).c 
   $(CC) %s -o $(OBJ)\%|fF.o
ALLSUBS = $(APPS) $(BSPS)
main.elf: $(ALLSUBS)
   $(LD) $(ALLSUBS) -o main.elf