Cómo generar un Makefile con fuente en subdirectorios usando solo un makefile

Tengo fuente en un montón de subdirectorios como:

src/widgets/apple.cpp
src/widgets/knob.cpp
src/tests/blend.cpp
src/ui/flash.cpp

En la raíz del proyecto quiero generar un único Makefile usando una regla como:

%.o: %.cpp
   $(CC) -c 
%.o: %.cpp
   $(CC) -c $<

build/test.exe: build/widgets/apple.o build/widgets/knob.o build/tests/blend.o src/ui/flash.o
   $(LD) build/widgets/apple.o .... build/ui/flash.o -o build/test.exe
lt; build/test.exe: build/widgets/apple.o build/widgets/knob.o build/tests/blend.o src/ui/flash.o $(LD) build/widgets/apple.o .... build/ui/flash.o -o build/test.exe

Cuando intento esto, no encuentra una regla para build / widgets / apple.o. ¿Puedo cambiar algo para que se use% .o:% .cpp cuando se necesita hacer build / widgets / apple.o?

Respuestas a la pregunta(7)

Su respuesta a la pregunta