Recipes for the goal are executed after any preconditions, so when executed allmake will go through $(PROGS)before starting mkdir.
build/release/objs , , . , , .
(. 2) , . .
CXXFLAGS := $(shell pkg-config --cflags --libs gtkmm-3.0)
CPPFLAGS := -Iclasses/
SRCS := $(wildcard classes/source/*.cc)
OBJS := $(SRCS:classes/source/%.cc=build/release/objs/%.o)
.PHONY: all
all: $(OBJS)
$(OBJS): build/release/objs/%.o: classes/source/%.cc | build/release/objs
$(COMPILE.cc) $(OUTPUT_OPTION) $<
build/release/objs: ; mkdir -p $@
: -libs gtkmm-3.0, , , libs .