나도 주어진 directiories에서 모든 파일을 팩 gnumake 또는 makepp와 실행 Makefile을 수행하고 싶은 디렉토리의 모든 파일에 따라 다릅니다메이크 :
DIRS:=$(shell find . -mindepth 2 -maxdepth 2 -not -name mp3 -not -name ".*" -type d)
PACKAGES = $(DIRS:%=%.npk)
all: packages
packages: $(PACKAGES)
%.npk: %/*
npack c [email protected] @^
.PHONY: all packages
문제는 그런 거기에 없다는 것입니다 종속성에서 %/*로 표시됩니다. 디렉토리 (X.npk)가 디렉토리 X의 모든 파일에 의존해야하지만 Makefile을 쓸 때 파일이 무엇인지 알지 못합니다. 왜냐하면 나중에 생성되기 때문입니다.
는 예 :./dirA/x
./dirA/y
./dirB/e
./dirB/f
내가 ./dirA.npk (X에 따라, y)를 생성하고 싶습니다 ./dirB.npk (예는, F) 내가 알고 어디에도 없습니다 dirs 또는 파일을 제외하고는 모든 행을 찾습니다. wildcard
지시어를 사용하여
시도 : % .npk : $ (와일드 카드 %/*)하지만 작동하지 않습니다. 나는 또한 semafor에 대해서 생각했지만 target_dir/*에 의존 할 필요가있는 같은 문제를 겪었다. – Gavriel