1RUST_CHANNEL ?= nightly 2 3CRATES = matches show text_writer triable return_if_ok ref_filter_map 4 5ifeq "$(RUST_CHANNEL)" "nightly" 6 CRATES += zip_longest 7endif 8 9# Unmaintained: mod_path 10 11.PHONY: default 12default: test 13 14define ALL 15 16.PHONY: $(1) 17$(1): $(addprefix $(1)-,$(CRATES)) 18$(foreach crate,$(CRATES),$(eval $(call ONE,$(1),$(crate)))) 19 20endef 21 22define ONE 23 24.PHONY: $(1)-$(2) 25$(1)-$(2): 26 cargo $(1) --manifest-path $(2)/Cargo.toml 27 28endef 29 30$(foreach command,test build clean publish,$(eval $(call ALL,$(command)))) 31