_ := $(MAKEFILE_LIST) d := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST)))) generate := $(generate) $d/interface_backend.go $d/func_handlerequest.go $d/util/struct_null_backend.go secondary := $d/requests.txt ifeq (,$(filter clean,$(MAKECMDGOALS))) -include $d/enumerator-list.mk endif ifeq (1,$(words $_)) all: generate .PHONY: all generate: $(generate) .PHONY: generate clean: rm -f -- $(generate) $(secondary) .PHONY: clean .DELETE_ON_ERROR: .SECONDARY: endif $d/requests.txt: $d/nslcd_h.go $d/Makefile < $< grep -Eo '\btype Request_([^_ ]+)(_\S+)?' | sed 's/^type Request_//' > $@ %.go: %.go.sh ./$^ > $@ $d/interface_backend.go: $d/requests.txt $d/func_handlerequest.go: $d/requests.txt $d/util/struct_null_backend.go: $d/interface_backend.go