include $(dir $(lastword $(MAKEFILE_LIST)))/config.mk include $(topsrcdir)/build-aux/Makefile.head.mk # these are the resulting packages pkgs=libretools librelib gitget xbs # and which directories they contain pkg.libretools=\ src \ src/abslibre-tools \ src/chroot-tools \ src/devtools \ src/librefetch \ src/toru pkg.librelib=src/lib pkg.gitget=src/gitget pkg.xbs=\ src/xbs \ src/xbs-abs \ src/xbs-abslibre define _pkg_rule %(verb)-%(pkg): $(addsuffix /%(verb),$(pkg.%(pkg))) .PHONY: %(verb)-%(pkg) endef $(eval $(foreach verb,$(nested.targets),$(foreach pkg,$(pkgs),\ $(subst %(verb),$(verb),$(subst %(pkg),$(pkg),$(value _pkg_rule)))$(at.nl)))) $(outdir)/check: cd $(@D)/test && ./testenv $(TESTENVFLAGS) roundup $(outdir)/shellcheck: private shellcheck.flags = --exclude=1090,1091,2016,2059,2064,2164,2191 $(outdir)/shellcheck: private shellcheck.prune = -false $(outdir)/shellcheck: private shellcheck.prune += -o -type d -name doc $(outdir)/shellcheck: private shellcheck.prune += -o -type d -name man $(outdir)/shellcheck: private shellcheck.prune += -o -type f -name indent $(outdir)/shellcheck: private shellcheck.prune += -o -type f -name Makefile $(outdir)/shellcheck: private shellcheck.prune += -o -type f -name makepkg.gen $(outdir)/shellcheck: private shellcheck.prune += -o -type f -name source.sh.gen $(outdir)/shellcheck: cd $(@D)/test && ./testenv $(TESTENVFLAGS) 'cd "$$TMPDIR/destdir" && find \( $(shellcheck.prune) \) -prune -o -not -type d -exec shellcheck $(shellcheck.flags) {} +' _po_rule = \ po/%(pkg).pot: $(addsuffix /everything.pot,$(pkg.%(pkg))); \ cat $^ | msguniq -Fi --to-code=UTF-8 > '$@' $(eval $(foreach pkg,$(pkgs),\ $(subst %(pkg),$(pkg),$(value _po_rule))$(at.nl))) libretools.out.mans = libretools.out.bins = libretools.out.libexecs = libretools.out.libs = libretools.out.docs = libretools.out.confs = libretools.out = $(foreach pkg,$(pkgs),po/$(pkg).pot) files.src.gen += .srcversion-libretools.mk .srcversion-devtools.mk nested.subdirs = $(foreach pkg,$(pkgs),$(pkg.$(pkg))) include $(topsrcdir)/build-aux/Makefile.tail.mk