Вы также можете попробовать:
SOURCES=$(shell ls *.cpp)
OBJECTS=$(SOURCES:%.cpp=%.o)
%.o: %.cpp
g++ -c %< -o $@
Таким образом, вам не нужно указывать имена cpp. Любые новые исходные файлы, которые вы добавите, будут автоматически выбраны. Однако это будет работать только в оболочках Unix.