Make 규칙을 사용하여 다른 규칙 호출

Make 규칙을 사용하여 다른 규칙 호출

저는 makefile을 사용하여 LaTeX 프로젝트를 작성하고 있습니다. 중복된 LaTeX 파일을 정리하는 깔끔한 기능이 있습니다.

.PHONY: clean
clean:
    \rm *.aux *.blg *.out *.bbl *.log

하지만 어떤 경우에는 PDF 파일뿐만 아니라 생성된 파일도 삭제해야 할 때가 있습니다. 나는 다음을 사용해 보았습니다.

.PHONY: clean_all
clean_all:
        $(clean) \rm *.pdf

PDF 파일만 삭제하므로 작동하지 않습니다.

clean내 질문은 규칙 내에서 규칙을 어떻게 호출합니까 clean_all?

답변1

clean_all목표를 기반으로 목표 설정 clean:

.PHONY: clean_all clean

clean:
        rm -f *.aux *.blg *.out *.bbl *.log

clean_all: clean
        rm -f *.pdf

존재하지 않는 파일이 규칙에서 오류를 생성하지 않도록(예: 명령을 두 번 실행하는 경우) -f추가 했습니다 .rm

(그런데 난 이런 얘기를 들어본 적이 없어.규칙함수라고 부르면 용어를 다시 확인하고 makefile에 대한 인터넷 검색에 더 성공할 수 있습니다.

관련 정보