0
Makefile에서 전제 조건 목록의 대상 이름을 참조하고 그 중 일부를 빌드하고 싶습니다. 형태의 뭔가 : 그래서전제 조건 목록에서 대상 이름 참조하기
%.foo: $(addsuffix .bar, $(DATA_%))
@echo $<
즉, 가정하면, 당신은 :
DATA_test = 1 2 3
당신이로 호출 할 때 :
make test
즉 확장됩니다에 :
1.bar 2.bar 3.bar
어떻게 든 가능합니까? 문제에 대한 더 나은 접근 방법은 무엇입니까?
두 번째 확장이 완벽하게 작동합니다! 감사! 나는 전에 그것을 실제로 시도했지만 addsuffix 앞에 $를 두 배로 늘리지는 않았다. 이것은 훨씬 잘 작동하고 완벽하게 이해됩니다. –
2 차 확장 및 평가판을 사용할 수있는 옛날에 그것을 수행하는 방법은 make의 자동으로 다시 만들어진 makefile 기능을 활용하는 것이 었습니다. 생성 된 타겟을 포함하는 메이크 파일 스 니펫을 생성하는 규칙을 작성한 다음 해당 스 니펫을 포함시킵니다. 다소 효율적이지는 않지만 디버그하기가 까다로울 수도 있지만 eval은 동일한 문제가 있습니다. 적어도 자동으로 생성 된 makefile은 무언가가 옆으로 가면 makefile 출력을 보게됩니다. – MadScientist